PERFORCE change 179153 for review
Garrett Cooper
gcooper at FreeBSD.org
Thu Jun 3 19:05:29 UTC 2010
http://p4web.freebsd.org/@@179153?ac=10
Change 179153 by gcooper at gcooper-bayonetta on 2010/06/03 19:05:24
Experiment in reordering the dependencies in order to resolve the race
condition between libpkg and libarchive.
DO NOT INTEGRATE THIS CHANGE. I REPEAT... DO NOT INTEGRATE THIS CHANGE.
Affected files ...
.. //depot/projects/soc2007/gcooper-pkg_install-enhancements-simplified/Makefile.inc1#7 edit
.. //depot/projects/soc2007/gcooper-pkg_install-enhancements-simplified/lib/Makefile#4 edit
Differences ...
==== //depot/projects/soc2007/gcooper-pkg_install-enhancements-simplified/Makefile.inc1#7 (text+ko) ====
@@ -1177,10 +1177,6 @@
lib/libfetch__L lib/libradius__L: lib/libmd__L
.endif
-.if ${MK_PKGTOOLS} != "no"
-_prebuild_libs+= lib/libarchive lib/libfetch
-.endif
-
.for _lib in ${_prereq_libs}
${_lib}__PL: .PHONY
.if exists(${.CURDIR}/${_lib})
==== //depot/projects/soc2007/gcooper-pkg_install-enhancements-simplified/lib/Makefile#4 (text+ko) ====
@@ -6,12 +6,15 @@
# To satisfy shared library or ELF linkage when only the libraries being
# built are visible:
#
+# libarchive must be built before libpackage.
+# libbz2 must be built before libarchive.
# csu must be built before all shared libaries for ELF.
# libc must be built before all other shared libraries.
# libbsm must be built before ibauditd.
# libcom_err must be built before libpam.
# libcrypt must be built before libpam.
# libkvm must be built before libdevstat.
+# liblzma must be built before libarchive.
# msun must be built before libg++ and libstdc++.
# libmd must be built before libatm, libopie, libradius, and libtacplus.
# ncurses must be built before libdialog, libedit and libreadline.
@@ -23,13 +26,15 @@
# libtacplus must be built before libpam.
# libutil must be built before libpam.
# libypclnt must be built before libpam.
-# libgssapi must be built before librpcsec_gss
+# libgssapi must be built before librpcsec_gss.
+# libz must be built before libarchive and libstand.
#
# Otherwise, the SUBDIR list should be in alphabetical order.
#
# Except it appears bind needs to be compiled last
SUBDIR_ORDERED= ${_csu} \
+ ${_libbz2} \
libc \
libbsm \
libauditd \
@@ -37,6 +42,7 @@
libcrypt \
libelf \
libkvm \
+ liblzma \
msun \
libmd \
ncurses \
@@ -46,7 +52,8 @@
libsbuf \
libtacplus \
libutil \
- ${_libypclnt}
+ ${_libypclnt} \
+ libz
SUBDIR= ${SUBDIR_ORDERED} \
libalias \
@@ -55,7 +62,6 @@
libbegemot \
${_libbluetooth} \
${_libbsnmp} \
- libbz2 \
libcalendar \
libcam \
libcompat \
@@ -76,7 +82,6 @@
${_libipx} \
libjail \
libkiconv \
- liblzma \
libmagic \
libmemstat \
${_libmilter} \
@@ -107,7 +112,6 @@
${_libvgl} \
libwrap \
liby \
- libz \
${_bind}
.if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf)
@@ -128,6 +132,16 @@
_bind= bind
.endif
+_libarchive_deps=liblzma libz
+_libstand_deps= liblzma libz
+
+.if ${MK_BZIP2} != "no"
+_libbz2= libbz2
+
+_libarchive_deps+=libbz2
+_libstand_deps+=libbz2
+.endif
+
.if ${MK_BLUETOOTH} != "no"
_libbluetooth= libbluetooth
_libsdp= libsdp
@@ -201,6 +215,7 @@
.if ${MK_PKGTOOLS} != "no"
_libpkg= libpkg
+_libpkg_deps+= libfetch libmd libarchive
.endif
.if ${MK_SENDMAIL} != "no"
@@ -219,4 +234,9 @@
_libusb= libusb
.endif
+libarchive: ${_libarchive_deps}
+libmagic: libz
+libpkg: ${_libpkg_deps}
+libstand: ${_libstand_deps}
+
.include <bsd.subdir.mk>
More information about the p4-projects
mailing list