Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F147676926
D16457.id45876.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
8 KB
Referenced Files
None
Subscribers
None
D16457.id45876.diff
View Options
Index: Mk/bsd.port.mk
===================================================================
--- Mk/bsd.port.mk
+++ Mk/bsd.port.mk
@@ -2219,6 +2219,7 @@
_PKGMESSAGES+= ${PKGMESSAGE}
TMPPLIST?= ${WRKDIR}/.PLIST.mktmp
+_PLIST?= ${WRKDIR}/.PLIST
.if defined(PKG_NOCOMPRESS)
PKG_SUFX?= .tar
@@ -2608,20 +2609,34 @@
PKGREPOSITORYSUBDIR?= All
PKGREPOSITORY?= ${PACKAGES}/${PKGREPOSITORYSUBDIR}
-.if exists(${PACKAGES})
-PACKAGES:= ${PACKAGES:S/:/\:/g}
-_HAVE_PACKAGES= yes
-PKGFILE?= ${PKGREPOSITORY}/${PKGNAME}${PKG_SUFX}
-.else
-PKGFILE?= ${.CURDIR}/${PKGNAME}${PKG_SUFX}
-.endif
-WRKDIR_PKGFILE= ${WRKDIR}/pkg/${PKGNAME}${PKG_SUFX}
# The "latest version" link -- ${PKGNAME} minus everthing after the last '-'
PKGLATESTREPOSITORY?= ${PACKAGES}/Latest
PKGBASE?= ${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}
PKGLATESTFILE= ${PKGLATESTREPOSITORY}/${PKGBASE}${PKG_SUFX}
+_PKGS= ${PKGBASE}
+.for p in ${SUBPACKAGES}
+_PKGS+= ${PKGBASE}-${p}
+.endfor
+
+.if exists(${PACKAGES})
+-PACKAGES:= ${PACKAGES:S/:/\:/g}
+_HAVE_PACKAGES= yes
+_PKGDIR= ${PKGREPOSITORY}
+.else
+_PKGDIR= ${.CURDIR}
+.endif
+. for p in ${_PKGS}
+${p}_PKGFILE= ${_PKGDIR}/${p}-${PKGVERSION}${PKG_SUFX}
+# FIXME: This should go away at one point
+PKGFILE?= ${${p}_PKGFILE}
+. endfor
+_EXTRA_PACKAGE_TARGET_DEP+= ${_PKGDIR}
+.for p in ${_PKGS}
+${p}_WRKDIR_PKGFILE= ${WRKDIR}/pkg/${p}-${PKGVERSION}${PKG_SUFX}
+.endfor
+
CONFIGURE_SCRIPT?= configure
CONFIGURE_CMD?= ./${CONFIGURE_SCRIPT}
CONFIGURE_TARGET?= ${HOSTARCH}-portbld-${OPSYS:tl}${OSREL}
@@ -3402,10 +3417,6 @@
_EXTRA_PACKAGE_TARGET_DEP+= ${PKGFILE}
_PORTS_DIRECTORIES+= ${PKGREPOSITORY}
-${PKGFILE}: ${WRKDIR_PKGFILE} ${PKGREPOSITORY}
- @${LN} -f ${WRKDIR_PKGFILE} ${PKGFILE} 2>/dev/null \
- || ${CP} -f ${WRKDIR_PKGFILE} ${PKGFILE}
-
. if ${PKGORIGIN} == "ports-mgmt/pkg" || ${PKGORIGIN} == "ports-mgmt/pkg-devel"
_EXTRA_PACKAGE_TARGET_DEP+= ${PKGLATESTREPOSITORY}
_PORTS_DIRECTORIES+= ${PKGLATESTREPOSITORY}
@@ -3413,20 +3424,37 @@
${PKGLATESTFILE}: ${PKGFILE} ${PKGLATESTREPOSITORY}
${INSTALL} -l rs ${PKGFILE} ${PKGLATESTFILE}
+
+.for p in ${_PKGS}
+
+.endfor
. endif
.endif
-# from here this will become a loop for subpackages
-${WRKDIR_PKGFILE}: ${TMPPLIST} create-manifest ${WRKDIR}/pkg
- @if ! ${SETENV} ${PKG_ENV} FORCE_POST="${_FORCE_POST_PATTERNS}" ${PKG_CREATE} ${PKG_CREATE_ARGS} -m ${METADIR} -p ${TMPPLIST} -f ${PKG_SUFX:S/.//} -o ${WRKDIR}/pkg ${PKGNAME}; then \
+.for p in ${_PKGS}
+${_PLIST}.${p}: ${TMPPLIST}
+ @if [ "${PKGBASE}" = "${.TARGET:T:S/.PLIST.//}" ]; then \
+ ${GREP} -Fv -e"@comment " -e"@@" ${TMPPLIST} > ${.TARGET} ; \
+ else \
+ ${SED} -n "s/@@${.TARGET:T:S/.PLIST.${PKGBASE}-//}@@//p" ${TMPPLIST} > ${.TARGET} ; \
+ fi
+
+${${p}_WRKDIR_PKGFILE}: ${_PLIST}.${p} create-manifest.${p} ${WRKDIR}/pkg
+ @echo "===> Building ${p}-${PKGVERSION}"
+ @if ! ${SETENV} ${PKG_ENV} FORCE_POST="${_FORCE_POST_PATTERNS}" ${PKG_CREATE} ${PKG_CREATE_ARGS} -m ${METADIR}.${p} -p ${_PLIST}.${p} -f ${PKG_SUFX:S/.//} -o ${WRKDIR}/pkg ${PKGNAME}; then \
cd ${.CURDIR} && eval ${MAKE} delete-package >/dev/null; \
exit 1; \
fi
- #
-# Temporary will be later dynamically added per subpackages
-_EXTRA_PACKAGE_TARGET_DEP+= ${WRKDIR_PKGFILE}
-# This will be the end of the loop
+
+_EXTRA_PACKAGE_TARGET_DEP+= ${${p}_WRKDIR_PKGFILE}
+
+${${p}_PKGFILE}: ${${p}_WRKDIR_PKGFILE}
+ @${LN} -f ${${p}_WRKDIR_PKGFILE} ${${p}_PKGFILE} \
+ || ${CP} -f ${${p}_WRKDIR_PKGFILE} ${${p}_PKGFILE}
+
+_EXTRA_PACKAGE_TARGET_DEP+= ${${p}_PKGFILE}
+.endfor
.if !target(do-package)
PKG_CREATE_ARGS= -r ${STAGEDIR}
@@ -3652,7 +3680,7 @@
test-message:
@${ECHO_MSG} "===> Testing for ${PKGNAME}"
package-message:
- @${ECHO_MSG} "===> Building package for ${PKGNAME}"
+ @${ECHO_MSG} "===> Building packages for ${PKGNAME}"
# Empty pre-* and post-* targets
@@ -3978,7 +4006,7 @@
repackage: pre-repackage package
pre-repackage:
- @${RM} ${PACKAGE_COOKIE}
+ @${RM} ${PACKAGE_COOKIE} ${TMPPLIST}*
.endif
# Build a package but don't check the cookie for installation, also don't
@@ -4278,7 +4306,8 @@
PKG_NOTES_ENV+= dp_PKG_NOTE_${note}=${PKG_NOTE_${note}:Q}
.endfor
-create-manifest:
+.for p in ${_PKGS}
+create-manifest.${p}:
@${SETENV} \
dp_SCRIPTSDIR='${SCRIPTSDIR}' \
dp_ACTUAL_PACKAGE_DEPENDS='${ACTUAL-PACKAGE-DEPENDS}' \
@@ -4292,9 +4321,9 @@
dp_LICENSE='${LICENSE:u:S/$/,/}' \
dp_LICENSE_COMB='${LICENSE_COMB}' \
dp_MAINTAINER='${MAINTAINER}' \
- dp_METADIR='${METADIR}' \
+ dp_METADIR='${METADIR}.${p}' \
dp_NO_ARCH='${NO_ARCH}' \
- dp_PKGBASE='${PKGBASE}' \
+ dp_PKGBASE='${p}' \
dp_PKGDEINSTALL='${PKGDEINSTALL}' \
dp_PKGINSTALL='${PKGINSTALL}' \
dp_PKGMESSAGES='${_PKGMESSAGES}' \
@@ -4316,6 +4345,7 @@
dp_WWW='${WWW}' \
${PKG_NOTES_ENV} \
${SH} ${SCRIPTSDIR}/create-manifest.sh
+.endfor
# Print out package names.
@@ -4703,6 +4733,9 @@
STAGE_ARGS= -i ${STAGEDIR}
.if !defined(NO_PKG_REGISTER)
+.for p in ${_PKGS}
+fake-pkg: create-manifest.${p}
+.endfor
fake-pkg:
.if defined(INSTALLS_DEPENDS)
@${ECHO_MSG} "===> Registering installation for ${PKGNAME} as automatic"
@@ -5292,7 +5325,6 @@
_INSTALL_DEP= stage
_INSTALL_SEQ= 100:install-message \
200:check-already-installed \
- 300:create-manifest
_INSTALL_SUSEQ= 400:fake-pkg 500:security-check
_PACKAGE_DEP= stage
Index: lang/perl5-devel/Makefile
===================================================================
--- lang/perl5-devel/Makefile
+++ lang/perl5-devel/Makefile
@@ -27,6 +27,8 @@
#DEPRECATED= Support end three years after .0 release, please upgrade to a more recent version of Perl
#EXPIRATION_DATE=<Release date of .0 + 3 years>
+SUBPACKAGES= gdbm
+
TEST_TARGET= test_harness
TEST_ENV= ${MAKE_ENV} TEST_JOBS=${MAKE_JOBS_NUMBER} \
LD_LIBRARY_PATH=${WRKSRC}
@@ -37,7 +39,7 @@
GH_PROJECT= perl5
GH_TAGNAME= v5.29.1-29-g3d50648cc4
-OPTIONS_DEFINE= DEBUG GDBM PERL_64BITINT MULTIPLICITY SITECUSTOMIZE \
+OPTIONS_DEFINE= DEBUG PERL_64BITINT MULTIPLICITY SITECUSTOMIZE \
THREADS PERL_MALLOC DTRACE DOT_INC
OPTIONS_DEFAULT= PERL_64BITINT THREADS MULTIPLICITY DTRACE
@@ -51,7 +53,6 @@
.endfor
EXCLUSIVE_DESC= Exclusive OPTIONS
-GDBM_DESC= GDBM_File extension
PERL_MALLOC_DESC= Use Perl malloc
PERL_64BITINT_DESC= Use 64 bit integers (on i386)
THREADS_DESC= Build threaded perl
@@ -64,9 +65,6 @@
DEBUG_CONFIGURE_OFF= -Doptimize="${CFLAGS}"
DTRACE_CONFIGURE_ON= -Dusedtrace
DTRACE_CONFIGURE_OFF= -Uusedtrace
-GDBM_CONFIGURE_ON= -Di_gdbm
-GDBM_CONFIGURE_OFF= -Ui_gdbm
-GDBM_LIB_DEPENDS= libgdbm.so:databases/gdbm
PERL_64BITINT_CONFIGURE_ON= -Duse64bitint
MULTIPLICITY_CONFIGURE_ON= -Dusemultiplicity=y
MULTIPLICITY_CONFIGURE_OFF= -Dusemultiplicity=n
@@ -126,6 +124,9 @@
-Alddlflags='-L${WRKSRC} -L${PREFIX}/${_ARCH_LIB}/CORE -lperl' \
-Dshrpldflags='$$(LDDLFLAGS:N-L${WRKSRC}:N-L${PREFIX}/${_ARCH_LIB}/CORE:N-lperl) -Wl,-soname,$$(LIBPERL)'
+CONFIGURE_ARGS+= -Di_gdbm
+LIB_DEPENDS+= libgdbm.so:databases/gdbm
+
# Give a hint of where libperl.so can be found.
USE_LDCONFIG= ${PREFIX}/${_ARCH_LIB}/CORE
Index: lang/perl5-devel/pkg-plist
===================================================================
--- lang/perl5-devel/pkg-plist
+++ lang/perl5-devel/pkg-plist
@@ -833,7 +833,7 @@
%%ARCH_LIB%%/File/Spec/VMS.pm
%%ARCH_LIB%%/File/Spec/Win32.pm
%%ARCH_LIB%%/Filter/Util/Call.pm
-%%GDBM%%%%ARCH_LIB%%/GDBM_File.pm
+@@gdbm@@%%ARCH_LIB%%/GDBM_File.pm
%%ARCH_LIB%%/Hash/Util.pm
%%ARCH_LIB%%/Hash/Util/FieldHash.pm
%%ARCH_LIB%%/I18N/Langinfo.pm
@@ -905,7 +905,7 @@
%%ARCH_LIB%%/auto/File/DosGlob/DosGlob.so
%%ARCH_LIB%%/auto/File/Glob/Glob.so
%%ARCH_LIB%%/auto/Filter/Util/Call/Call.so
-%%GDBM%%%%ARCH_LIB%%/auto/GDBM_File/GDBM_File.so
+@@gdbm@@%%ARCH_LIB%%/auto/GDBM_File/GDBM_File.so
%%ARCH_LIB%%/auto/Hash/Util/FieldHash/FieldHash.so
%%ARCH_LIB%%/auto/Hash/Util/Util.so
%%ARCH_LIB%%/auto/I18N/Langinfo/Langinfo.so
@@ -1366,7 +1366,7 @@
%%MAN3%%/Filter::Simple.3.gz
%%MAN3%%/Filter::Util::Call.3.gz
%%MAN3%%/FindBin.3.gz
-%%GDBM%%%%MAN3%%/GDBM_File.3.gz
+@@gdbm@@%%MAN3%%/GDBM_File.3.gz
%%MAN3%%/Getopt::Long.3.gz
%%MAN3%%/Getopt::Std.3.gz
%%MAN3%%/HTTP::Tiny.3.gz
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Fri, Mar 13, 8:23 PM (12 h, 58 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29635022
Default Alt Text
D16457.id45876.diff (8 KB)
Attached To
Mode
D16457: Subpackages. (deal with it.)
Attached
Detach File
Event Timeline
Log In to Comment