A=${P}.tar.gz S=${WORKDIR}/${P} DESCRIPTION="Embed Perl code in HTML documents" SRC_URI="http://cpan.valueclick.com/modules/by- category/15_World_Wide_Web_HTML_HTTP_CGI/HTML/${A}" HOMEPAGE="http://cpan.valueclick.com/modules/by- category/15_World_Wide_Web_HTML_HTTP_CGI/HTML/${P}.readme" DEPEND=">=sys-devel/perl-5 dev-perl/libwww-perl dev-perl/HTML-Parser net-www/apache dev-perl/mod_perl" src_compile() { export EPHTTPD=/usr/sbin/apache echo -e "/usr/lib/apache\n/usr/lib/apache- extramodules\n/usr/lib/apache\n" \ | perl Makefile.PL /usr/include/apache } src_install () { try make PREFIX=${D}/usr INSTALLMAN1DIR=${D}/usr/share/man/man1 INSTALLMAN3DIR=${D}/usr/share/man/man3 install dodoc MANIFEST README TODO }
Created attachment 2379 [details] ebuild file
Created attachment 2737 [details] removed references to ${D}
The thaw is on! Working on this ebuild right now. Needs some massaging, it's asking questions during the configure process...
This ebuild will not work. There are 4 points where it asks the user questions during installation. I can work on this if you would like, but it will not be up in portage soon (relies on my having free time to see how to mod the Makefile.PL).
the lines: export EPHTTPD=/usr/sbin/apache echo -e "/usr/lib/apache\n/usr/lib/apache-extramodules\n/usr/lib/apache\n" \ | perl Makefile.PL /usr/include/apache in src_compile() should take care of the questions. But i can also provide a patch for the Makefile.PL if you prefere it.
Nope. Goes into an endless loop looking for apache (which is installed) Look at Look at /src Look at ./src Apache source not found, enter path name or q to quit []Searching for Apache sources... Look at Look at /src Look at ./src Apache source not found, enter path name or q to quit []Searching for Apache sources...
Created attachment 4944 [details, diff] patch for Makefile.PL Okey, now i have an patch for the Makefile.PL which searches in the gentoo directories for the required files. Maybe the export statements are not working (probably if you choose a other shell) in my ebuild. But the patch should work, without setting env variables. Can you please try this one, if it works on your system? Thank you very much.
Just so you know, on and off again I've played with this ebuild to no success. I'm still hacking at it, it's just slow going since it either bombs or loops infinitely with your patch.
Created attachment 6835 [details] contains .ebuild, digest and patch Okey, here is a new version of the ebuild. There should be some changes which should avoid the looping (at least at my system it works :-)). The environment variable is not used anymore. Hope this solves the problem with looping.
Created attachment 22381 [details] new attempt at ebuild Here is another attempt at an ebuild for 2.0b9. I can't get the self-test to work under either apache1 or 2, but for different reasons. Need to talk to the web apps folks, or if anybody following this bug that actually uses Embperl can give some help, that would be great also. Until I can get it to pass self-test, I'm not real confident that it's been built correctly, and I'm hesitant to commit it.
Just wondering if anyone has had any more progress with this bug. Embperl is the only thing missing from my newly converted to gentoo server :(
Created attachment 25920 [details] new HTML-Embperl ebuild @Alan: Do you use the 1.3.x Version of HTML-Embperl or the 2.0bx Version of Embperl? Because on my system the mod_perl-1.99 does not compile, so i focus on 1.3.x. If you are using the 1.3.x Version, it would be nice, if you could try out my ebuild and tell me, if it works on your machine :-)
Markus Compiles and installs fine on my system, sorry for the delay in getting back to you. I get a segfault when editing my apache config in place and doing a reload, but a full stop / start makes things start nicely. Hope this makes it into the main tree. This is with apache 1.3.31-r1 btw.
It seems that something in embperl (not sure if it's directly related to your ebuild or just something with the setup I Have) causes segfaults when doing a reload: /sbin/runscript.sh: line 534: 4939 Segmentation fault /usr/sbin/apache -t ${APACHE_OPTS} >&/dev/null [Sun Aug 15 03:03:36 2004] Cwd.pm: [4952]SES: Embperl Session management enabled () Warning: DocumentRoot [/home/ufwebring/public_html] does not exist Warning: DocumentRoot [/var/www/p2p] does not exist Warning: DocumentRoot [/home/cips/public_html] does not exist Warning: DocumentRoot [/home/fred/ubb] does not exist Syntax OK /sbin/runscript.sh: line 534: 4952 Segmentation fault /usr/sbin/apache -t ${APACHE_OPTS} error running shared postrotate script for /var/log/apache/*.log I have all the ifdef DAV, ifdef PERL stuff commented out in my apache.conf file, and I can run apachectl reload and apachectl start/stop fine, just not from the /etc/init.d/apache script.
Little bit more info on this. If I put PerlModule HTML::Embperl in my apache.conf or use HTML::Embperl in my startup.pl apache segfaults on apache -t Take it out and I can reload just fine. Strace is as follows: close(4) = 0 munmap(0x403a4000, 4096) = 0 chmod("/var/cache/apache-mm/mm.2079.sem", 0600) = 0 chown32("/var/cache/apache-mm/mm.2079.sem", 81, -1) = 0 write(2, "Syntax OK\n", 10Syntax OK ) = 10 stat64("/usr/lib/perl5/vendor_perl/5.8.2/i686-linux/auto/DBI/DESTROY.al", 0x413ed120) = -1 ENOENT (No such file or directory) open("/usr/lib/perl5/5.8.2/i686-linux/auto/DBI/DESTROY.al", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib/perl5/5.8.2/auto/DBI/DESTROY.al", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib/perl5/site_perl/5.8.2/i686-linux/auto/DBI/DESTROY.al", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib/perl5/site_perl/5.8.2/auto/DBI/DESTROY.al", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib/perl5/site_perl/5.8.0/i686-linux/auto/DBI/DESTROY.al", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib/perl5/site_perl/5.8.0/auto/DBI/DESTROY.al", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib/perl5/site_perl/auto/DBI/DESTROY.al", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib/perl5/vendor_perl/5.8.2/i686-linux/auto/DBI/DESTROY.al", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib/perl5/vendor_perl/5.8.2/auto/DBI/DESTROY.al", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib/perl5/vendor_perl/5.8.0/i686-linux/auto/DBI/DESTROY.al", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib/perl5/vendor_perl/5.8.0/auto/DBI/DESTROY.al", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/usr/lib/perl5/vendor_perl/auto/DBI/DESTROY.al", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("./auto/DBI/DESTROY.al", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/etc/apache//auto/DBI/DESTROY.al", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/etc/apache/lib/perl/auto/DBI/DESTROY.al", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) munmap(0x41454000, 89612) = 0 munmap(0x4146a000, 10764) = 0 munmap(0x4146d000, 158616) = 0 munmap(0x41494000, 15756) = 0 munmap(0x41498000, 13608) = 0 munmap(0x4149c000, 18656) = 0 munmap(0x414a1000, 64496) = 0 --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV +++ master libperl # Looks like it's missing the DESTROY.al from somewhere, and it is indeed not on my system. I'm going to upgrade to the latest perl release (5.8.4 from .2) and see if that does anything.
in portage, www-apache/Embperl