You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Michael Schout <ms...@gkg.net> on 2014/11/04 21:30:11 UTC
Re: FreeBSD 10, Apache2.2, mod_perl, perl
On 9/18/14 4:16 PM, Bernard T. Higonnet wrote:
> Hello,
>
> Can someone indicate a version of the following that work
>
> Apache 2.2.x
> perl 5.x
> mod_perl 2.0.x
>
> all under FreeBSD 10.0-RELEASE #0
I'm late in replying to this, but a major problem on FreeBSD 10 is the
fact that programs ship with a libtool script that incorrectly
identifies it as FreeBSD 1.x, and thus disables building of shared
libraries. I am guessing this is the problem you are running into.
This is not really apache, perl, or mod_perl's fault. You have to patch
libtool so that it does not incorrectly identify it as FreeBSD 1.x.
I use the following in my own makefiles, adapted from FreeBSD ports
tree, which also applies this fix:
> -@for f in `find $(CURDIR) -type f \( -name config.libpath -o \
> -name config.rpath -o -name configure -o -name libtool.m4 -o \
> -name ltconfig -o -name libtool -o -name aclocal.m4 -o \
> -name acinclude.m4 \)` ; do \
> sed -i.fbsd10bak \
> -e 's|freebsd1\*)|freebsd1.\*)|g' \
> -e 's|freebsd\[12\]\*)|freebsd[12].*)|g' \
> -e 's|freebsd\[123\]\*)|freebsd[123].*)|g' \
> -e 's|freebsd\[\[12\]\]\*)|freebsd[[12]].*)|g' \
> -e 's|freebsd\[\[123\]\]\*)|freebsd[[123]].*)|g' \
> $${f} ; \
> touch -f -mr $${f}.fbsd10bak $${f} ; \
> rm -f $${f}.fbsd10bak ; \
> echo "===> FreeBSD 10 autotools fix applied to $${f}"; \
> done
> @find $(CURDIR) \( -name configure -or -name ltconfig \) \
> -type f | while read i; do sed -i.bak \
> -e '/dragonfly\*/!s/^ *freebsd\*[ )]/dragonfly* | &/' \
> -e '/gcc_dir=\\`/s/gcc /$$CC /' \
> -e '/gcc_ver=\\`/s/gcc /$$CC /' \
> -e '/link_all_deplibs[0-9A-Z_]*=/s/=unknown/=no/' \
> -e '/objformat=/s/echo aout/echo elf/' \
> -e "/freebsd-elf\\*)/,/;;/ { \
> /deplibs_check_method=/s/=.*/=pass_all/; }" \
> $${i} && touch -mr $${i}.bak $${i}; done
>
> @find $(CURDIR) -type f -name ltmain.sh | \
> xargs sed -i.bak \
> -e '/if.*linkmode.*prog.*mode.*!= relink/s/if.*;/if :;/'\
> -e '/if.*linkmode.*prog.*mode.* = relink/s/||.*;/;/' \
> -e 's/|-p|-pg|/|-B*|-p|-pg|/'
Regards,
Michael Schout