[MacPorts] #46764: mod_perl: obsolete outdated/unmaintained port, not compatible with perl5.16+
MacPorts
noreply at macports.org
Wed Feb 4 16:21:49 PST 2015
#46764: mod_perl: obsolete outdated/unmaintained port, not compatible with
perl5.16+
----------------------+--------------------------------
Reporter: devans@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Keywords: | Port: mod_perl
----------------------+--------------------------------
mod_perl (version 1.x) fails to build with perl5.16 as follows
{{{
/usr/bin/clang -O3 -I/opt/local/lib/perl5/5.16.3/darwin-thread-multi-
2level/CORE -pipe -Os -fno-common -DPERL_DARWIN -I/opt/local/include
-fno-strict-aliasing -fstack-protector -I/opt/local/include
-DMOD_PERL_VERSION=\"1.31\" -DMOD_PERL_STRING_VERSION=\"mod_perl/1.31\"
-DMOD_PERL_PREFIX=\"/opt/local/lib/perl5/site_perl/5.16.3/darwin-thread-
multi-2level\" -I/opt/local/include/httpd -DMOD_PERL -DDARWIN
-DUSE_HSREGEX -pipe -Os -std=c89 -arch x86_64 -c perlio.c && mv perlio.o
perlio.lo
/usr/bin/clang -O3 -I/opt/local/lib/perl5/5.16.3/darwin-thread-multi-
2level/CORE -pipe -Os -fno-common -DPERL_DARWIN -I/opt/local/include
-fno-strict-aliasing -fstack-protector -I/opt/local/include
-DMOD_PERL_VERSION=\"1.31\" -DMOD_PERL_STRING_VERSION=\"mod_perl/1.31\"
-DMOD_PERL_PREFIX=\"/opt/local/lib/perl5/site_perl/5.16.3/darwin-thread-
multi-2level\" -I/opt/local/include/httpd -DMOD_PERL -DDARWIN
-DUSE_HSREGEX -pipe -Os -std=c89 -arch x86_64 -c mod_perl_opmask.c && mv
mod_perl_opmask.o mod_perl_opmask.lo
perl_util.c:673:5: error: use of undeclared identifier 'PL_uid'
uid = (int)getuid();
^
./perl_PL.h:68:13: note: expanded from macro 'uid'
#define uid PL_uid
^
perl_util.c:674:5: error: use of undeclared identifier 'PL_euid'
euid = (int)geteuid();
^
./perl_PL.h:47:14: note: expanded from macro 'euid'
#define euid PL_euid
^
perl_util.c:675:5: error: use of undeclared identifier 'PL_gid'
gid = (int)getgid();
^
./perl_PL.h:50:13: note: expanded from macro 'gid'
#define gid PL_gid
^
perl_util.c:676:5: error: use of undeclared identifier 'PL_egid'
egid = (int)getegid();
^
./perl_PL.h:38:14: note: expanded from macro 'egid'
#define egid PL_egid
^
perl_util.c:761:mod_perl.c:525:28: warning: 34: warning: invalid
conversion specifier '_' [-Wformat-invalid-specifier]
invalid conversion specifier '_' [-Wformat-invalid-specifier]
sv_catpvf(fake, " at %_ line ", GvSV(CopFILEGV(curcop)));
~^
fprintf(stderr, "%s", form("%_ is version %_\n",
~^
mod_perl.c:525:48: warning: invalid conversion specifier '_' [-Wformat-
invalid-specifier]
fprintf(stderr, "%s", form("%_ is version %_\n",
~^
mod_perl.c:536:22: warning: invalid conversion specifier '_' [-Wformat-
invalid-specifier]
sv_setpvf(namesv, "%_/Apache.pm", dir);
~^
1 warning and 4 errors generated.
mod_perl.c:562:31: warning: invalid conversion specifier 'v' [-Wformat-
invalid-specifier]
char *version = form("Perl/v%vd", PL_patchlevel);
~^
make[1]: *** [perl_util.lo] Error 1
make[1]: *** Waiting for unfinished jobs....
mod_perl.c:788:15: error: expression is not assignable
GvCV(exitgp) = perl_get_cv("Apache::exit", TRUE);
~~~~~~~~~~~~ ^
perl_config.c:1723:22: error: expression is not assignable
CvGV(cv) = gv;
~~~~~~~~ ^
1 error generated.
make[1]: Entering directory
`/opt/local/var/macports/build/_opt_macports_trunk_dports_www_mod_perl/mod_perl/work/mod_perl-1.31/Apache'
make[1]: *** [perl_config.lo] Error 1
4 warnings and 1 error generated.
}}}
The undeclared identifiers mentioned were removed from perl in perl5.16.
See [https://rt.cpan.org/Public/Bug/Display.html?id=77129 upstream bug
report RT #77129] for this problem against mod_perl 2.0.6. Although a
patch
was proposed to fix the problem and incorporated into mod_perl 2.x, it was
never backported to mod_perl 1.x.
I've tried the patch as given against mod_perl, but it fixes only a
portion of the problems associated with these missing identifiers.
Unless there is someone who really needs this port and is willing to take
maintainership and make it work with current perl versions, I see no point
in carrying it further and propose to remove it and it sole dependency
p5-libapr and remove optional support for it in other ports such as p5
-html-mason.
Mavericks build log attached.
--
Ticket URL: <https://trac.macports.org/ticket/46764>
MacPorts <https://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list