tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Changes to lang/perl5



Hi,

I made some changes to lang/perl5 to get at least 2 thing:
1) full support for all 64-bit modes perl's configure allow
2) support for perl's memory debugging (won't work on all
   platforms/systems - but some do :))

joerg@ told me, the best is to discuss is on tech-pkg.

What do you think - would it be better to have less perl options which work
almost everywhere or some more to support exotic configurations, too?

Best regards,
Jens
? lang/perl5/patches/patch-zz
Index: lang/perl5/Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/lang/perl5/Makefile,v
retrieving revision 1.151
diff -u -r1.151 Makefile
--- lang/perl5/Makefile 19 May 2009 08:59:19 -0000      1.151
+++ lang/perl5/Makefile 21 May 2009 15:48:12 -0000
@@ -71,7 +71,6 @@
 CONFIGURE_ARGS+=       -Dcc=${CC:Q}
 CONFIGURE_ARGS+=       -Doptimize=${CFLAGS:M*:Q}
 CONFIGURE_ARGS+=       -Ui_malloc
-CONFIGURE_ARGS+=       -Uusemymalloc
 CONFIGURE_ARGS+=       -Uinstallusrbinperl
 MAKE_ENV+=             LC_ALL="C"
 MAKE_JOBS_SAFE=                no
@@ -170,7 +169,7 @@
 LIBSWANTED.NetBSD=     m crypt
 LIBSWANTED.OpenBSD=    m crypt
 LIBSWANTED.SunOS=      m crypt dl socket nsl
-LIBSWANTED.AIX=                m crypt dl socket nsl bind c
+LIBSWANTED.AIX=        m crypt dl socket nsl bind c
 LIBSWANTED=            ${LIBSWANTED.${OPSYS}}
 
 # Nail down the directories in which the system libraries may be found.
@@ -199,19 +198,8 @@
 #
 .if ${OBJECT_FMT} == "a.out"
 LOCLIBRPATHFLAGS=      ${LOCLIBPATH:S/^/${LINKER_RPATH_FLAG} /g}
-.elif ${OBJECT_FMT} == "ELF"
-LOCLIBRPATHFLAGS=      ${LOCLIBPATH:S/^/${COMPILER_RPATH_FLAG}/g}
-.elif ${OBJECT_FMT} == "XCOFF"
+.elif ${OBJECT_FMT} == "ELF" || ${OBJECT_FMT} == "XCOFF"
 LOCLIBRPATHFLAGS=      ${LOCLIBPATH:S/^/${COMPILER_RPATH_FLAG}/g}
-.  if !empty(PKG_OPTIONS:Mthreads)
-LOCLIBRPATHFLAGS+= \
-       
${COMPILER_RPATH_FLAG}${PERL5_PRIVLIB}/${MACHINE_ARCH}-${LOWER_OPSYS}-thread-multi-64all/CORE
 \
-       
${COMPILER_RPATH_FLAG}${PERL5_PRIVLIB}/${MACHINE_ARCH}-${LOWER_OPSYS}-thread-multi/CORE
-.  else
-LOCLIBRPATHFLAGS+= \
-       
${COMPILER_RPATH_FLAG}${PERL5_PRIVLIB}/${MACHINE_ARCH}-${LOWER_OPSYS}-multi-64all/CORE
 \
-       
${COMPILER_RPATH_FLAG}${PERL5_PRIVLIB}/${MACHINE_ARCH}-${LOWER_OPSYS}-multi/CORE
-.  endif
 .else
 LOCLIBRPATHFLAGS=      # empty
 .endif
@@ -241,9 +229,11 @@
 .endif
 
 PKG_OPTIONS_VAR=               PKG_OPTIONS.perl
-PKG_SUPPORTED_OPTIONS=         debug threads
+PKG_OPTIONS_REQUIRED_GROUPS=   perlbits
+PKG_OPTIONS_GROUP.perlbits=    64bitauto 64bitint 64bitmore 64bitall 64bitnone
+PKG_SUPPORTED_OPTIONS=         debug threads mstats
 .if !empty(PERL5_BUILD_THREADS_SUPPORT:M[yY][eE][sS])
-PKG_SUGGESTED_OPTIONS=         threads
+PKG_SUGGESTED_OPTIONS=         threads 64bitauto
 .endif
 
 .include "../../mk/bsd.options.mk"
@@ -253,14 +243,54 @@
 CONFIGURE_ARGS+=       -Duseithreads
 CFLAGS+=               ${PTHREAD_CFLAGS}
 LIBSWANTED+=           ${PTHREAD_LIBS:M-l*:S/^-l//}
+.  if ${OBJECT_FMT} == "XCOFF"
+PERL5_RPATH_THREAD=-thread
+.  endif
 .else
 CONFIGURE_ARGS+=       -Uuseithreads
+.  if ${OBJECT_FMT} == "XCOFF"
+PERL5_RPATH_THREAD=
+.  endif
 .endif
 
 .if !empty(PKG_OPTIONS:Mdebug)
 CFLAGS+=               -DDEBUGGING
 .endif
 
+.if !empty(PKG_OPTIONS:Mmstats)
+CFLAGS+=               -DPERL_DEBUGGING_MSTATS
+CONFIGURE_ARGS+=       -Dusemymalloc
+.else
+CONFIGURE_ARGS+=       -Uusemymalloc
+.endif
+
+.if !empty(PKG_OPTIONS:M64bitint)
+CONFIGURE_ARGS+=       -Duse64bitint
+.if ${OBJECT_FMT} == "XCOFF"
+LOCLIBRPATHFLAGS+=     
${COMPILER_RPATH_FLAG}${PERL5_PRIVLIB}/${MACHINE_ARCH}-${LOWER_OPSYS}${PERL5_RPATH_THREAD}-multi-64int/CORE
+.endif
+.elif !empty(PKG_OPTIONS:M64bitmore)
+CONFIGURE_ARGS+=       -Dusemorebits
+.if ${OBJECT_FMT} == "XCOFF"
+LOCLIBRPATHFLAGS+=     
${COMPILER_RPATH_FLAG}${PERL5_PRIVLIB}/${MACHINE_ARCH}-${LOWER_OPSYS}${PERL5_RPATH_THREAD}-multi-64int-ld/CORE
+.endif
+.elif !empty(PKG_OPTIONS:M64bitall)
+CONFIGURE_ARGS+=       -Duse64bitall
+.if ${OBJECT_FMT} == "XCOFF"
+LOCLIBRPATHFLAGS+=     
${COMPILER_RPATH_FLAG}${PERL5_PRIVLIB}/${MACHINE_ARCH}-${LOWER_OPSYS}${PERL5_RPATH_THREAD}-multi-64all/CORE
+.endif
+.elif !empty(PKG_OPTIONS:M64bitnone)
+CONFIGURE_ARGS+=       -Uuse64bitall -Uusemorebits -Uuse64bitint
+.if ${OBJECT_FMT} == "XCOFF"
+LOCLIBRPATHFLAGS+=     
${COMPILER_RPATH_FLAG}${PERL5_PRIVLIB}/${MACHINE_ARCH}-${LOWER_OPSYS}${PERL5_RPATH_THREAD}-multi/CORE
+.endif
+.else
+.if ${OBJECT_FMT} == "XCOFF"
+BROKEN=                XCOFF targets need the path specified where libperl.a 
resides.\
+Please choose on of 64bitint 64bitmore 64bitall or 64bitnone to allow this.
+.endif
+.endif
+
 .if !empty(LIBSWANTED)
 CONFIGURE_ARGS+=       -Dlibswanted=${LIBSWANTED:Q}
 .endif
Index: lang/perl5/distinfo
===================================================================
RCS file: /cvsroot/pkgsrc/lang/perl5/distinfo,v
retrieving revision 1.59
diff -u -r1.59 distinfo
--- lang/perl5/distinfo 2 May 2009 19:23:44 -0000       1.59
+++ lang/perl5/distinfo 21 May 2009 15:48:12 -0000
@@ -23,3 +23,4 @@
 SHA1 (patch-ta) = 60d9ef72db56b9f149f3995b3f526fc32a352bd7
 SHA1 (patch-zc) = a23002397ffaebb243f7683c95c8fb227af90f49
 SHA1 (patch-zd) = ee67148b8f44fb3826273574abb62ad9ca4ffa7f
+SHA1 (patch-zz) = 21cb09176f2aa117ae810a177dcc31fc2e512ba6


Home | Main Index | Thread Index | Old Index