Hi, Dominic Hargreaves wrote: > This package FTBFS with perl 5.22, in experimental: > > epnames.h:329:21: error: 'PL_sv_objcount' undeclared (first use in this > function) > #define sv_objcount PL_sv_objcount
This happens because PL_sv_objcount has been removed from Perl 5.22 (deprecated since 5.20). See e.g. http://www.gossamer-threads.com/lists/perl/porters/311420 or https://rt.perl.org/Public/Bug/Display.html?id=121876 Removing all occurrences of PL_sv_objcount and sv_objcount as well as the according "-OBJs: %d" format strings from Embperl's source suffices to make it build against 5.22. Unfortunately the test suite fails afterwards. Anyways, here's the patch to make the upstream code build again: Index: libembperl-perl/epmain.c =================================================================== --- libembperl-perl.orig/epmain.c 2014-10-13 23:44:08.653839074 +0200 +++ libembperl-perl/epmain.c 2016-01-14 02:02:20.330219409 +0100 @@ -1506,8 +1506,8 @@ #ifdef DMALLOC /* unsigned long mark, int not_freed_b, int freed_b, int details_b */ dmalloc_log_changed (nMemCheckpoint, 1, 0, 1) ; - dmalloc_message ( "[%d]Request freed. Exit-SVs: %d -OBJs: %d\n", getpid(), - sv_count, sv_objcount) ; + dmalloc_message ( "[%d]Request freed. Exit-SVs: %d\n", getpid(), + sv_count) ; if (nMemCheckpoint2) { dmalloc_message ( "***TO PREVIOUS REQUEST***\n") ; Index: libembperl-perl/epnames.h =================================================================== --- libembperl-perl.orig/epnames.h 2014-10-13 23:44:08.653839074 +0200 +++ libembperl-perl/epnames.h 2016-01-14 02:01:27.702358491 +0100 @@ -325,9 +325,6 @@ #ifndef sv_count #define sv_count PL_sv_count #endif -#ifndef sv_objcount -#define sv_objcount PL_sv_objcount -#endif #ifndef op_mask #define op_mask PL_op_mask #endif Index: libembperl-perl/Old.xs =================================================================== --- libembperl-perl.orig/Old.xs 2014-10-13 23:44:08.641839222 +0200 +++ libembperl-perl/Old.xs 2016-01-14 02:03:06.254101118 +0100 @@ -252,7 +252,7 @@ tReq * r char * sText CODE: - lprintf (r->pApp,"[%d]MEM: %s: SVs: %d OBJs: %d\n", r->pThread->nPid, sText, sv_count, sv_objcount) ; + lprintf (r->pApp,"[%d]MEM: %s: SVs: %d\n", r->pThread->nPid, sText, sv_count) ; SV * embperl_Escape(r, str, mode) And here's the currently resultung test suite failure: → perl -Iblib/lib -Iblib/arch test.pl loading... ok Testing offline mode... #0 ascii... ok #1 pure.htm... ok #2 nooutput.htm... ok #3 nooutput.htm... ok #4 plain.htm... Error in Line 23 Is: >HASH%a=num=<BR>< Should: >HASH%a=num=0<BR>< Input: test/html/plain.htm Output: test/tmp/out.htm Compared to: test/cmp/plain.htm Log: test/tmp/test.log Testparameter: repeat = 3 ERRORS detected! NOT all tests have been passed successfully cat: test/tmp/httpd.pid: No such file or directory Not marking as pending or as with patch for now, as the solution is still incomplete. Regards, Axel -- ,''`. | Axel Beckert <a...@debian.org>, http://people.debian.org/~abe/ : :' : | Debian Developer, ftp.ch.debian.org Admin `. `' | 4096R: 2517 B724 C5F6 CA99 5329 6E61 2FF9 CD59 6126 16B5 `- | 1024D: F067 EA27 26B9 C3FC 1486 202E C09E 1D89 9593 0EDE