summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjlam <jlam@pkgsrc.org>2003-08-23 09:45:53 +0000
committerjlam <jlam@pkgsrc.org>2003-08-23 09:45:53 +0000
commit69fb592c89979f16ba1da620dfcc8669f9591126 (patch)
treeb67be5f448e3f79184c0bf3a853b34742d509e9d
parent736713be83f4cba2b53df3b6d9f10d97c8f7a5c4 (diff)
downloadpkgsrc-69fb592c89979f16ba1da620dfcc8669f9591126.tar.gz
Sync to HEAD.
-rw-r--r--mk/bsd.pkg.mk70
-rw-r--r--mk/bsd.prefs.mk4
-rw-r--r--mk/bulk/bsd.bulk-pkg.mk4
-rw-r--r--mk/defs.Darwin.mk3
-rw-r--r--mk/defs.SunOS.mk4
-rw-r--r--mk/gcc.buildlink2.mk6
-rw-r--r--mk/install/install-info7
7 files changed, 59 insertions, 39 deletions
diff --git a/mk/bsd.pkg.mk b/mk/bsd.pkg.mk
index 9cf807968a2..d5d3ed1fd28 100644
--- a/mk/bsd.pkg.mk
+++ b/mk/bsd.pkg.mk
@@ -1,4 +1,4 @@
-# $NetBSD: bsd.pkg.mk,v 1.1216.2.30 2003/08/23 09:35:30 jlam Exp $
+# $NetBSD: bsd.pkg.mk,v 1.1216.2.31 2003/08/23 09:45:53 jlam Exp $
#
# This file is in the public domain.
#
@@ -2601,7 +2601,7 @@ real-su-install: ${MESSAGE}
do-shlib-handling:
.if ${SHLIB_HANDLING} == "YES"
${_PKG_SILENT}${_PKG_DEBUG} \
- sos=`${EGREP} -h -x '.*/lib[^/]+\.so\.[0-9]+(\.[0-9]+)+' ${PLIST} || ${TRUE}`; \
+ sos=`${EGREP} -h -x '.*/lib[^/]+\.so' ${PLIST} || ${TRUE}`; \
if [ "$$sos" != "" ]; then \
shlib_type=`${MAKE} ${MAKEFLAGS} show-shlib-type`; \
if [ "${SHLIB_PLIST_MODE}" = "0" ]; then \
@@ -2648,7 +2648,7 @@ do-shlib-handling:
} \
{ lines[NR] = $$0 } \
END { \
- for (i = 1 ; i <= linkc ; i++) \
+ for (i = 0 ; i <= linkc ; i++) \
for (j = 1 ; j < NR ; j++) \
if (lines[j] == links[i]) \
lines[j] = "@comment " lines[j]; \
@@ -2741,7 +2741,7 @@ do-shlib-handling:
} \
{ lines[NR] = $$0 } \
END { \
- for (i = 1 ; i <= linkc ; i++) \
+ for (i = 0 ; i <= linkc ; i++) \
for (j = 1 ; j <= NR ; j++) \
if (lines[j] == links[i]) \
lines[j] = "@comment " lines[j]; \
@@ -2803,24 +2803,28 @@ check-shlibs:
bins=`${PKG_INFO} -qL ${PKGNAME} | { ${EGREP} -h '/(bin|sbin|libexec)/' || ${TRUE}; }`; \
if [ "${OBJECT_FMT}" = "ELF" ]; then \
shlibs=`${PKG_INFO} -qL ${PKGNAME} | { ${EGREP} -h '/lib/lib.*.so' || ${TRUE}; }`; \
+ elif [ "${OBJECT_FMT}" = "Mach-O" ]; then \
+ shlibs=`${PKG_INFO} -qL ${PKGNAME} | { ${EGREP} -h '/lib/lib.*.dylib' || ${TRUE}; }`; \
else \
shlibs=""; \
fi; \
- if [ X${LDD} = X ]; then \
- ldd=`${TYPE} ldd | ${AWK} '{ print $$NF }'`; \
+ if [ "X${LDD}" = X ]; then \
+ ldd=`${TYPE} ldd 2>/dev/null | ${AWK} '{ print $$NF }'`;\
else \
ldd="${LDD}"; \
fi; \
- for i in $${bins} $${shlibs}; do \
- err=`{ $$ldd $$i 2>&1 || ${TRUE}; } | { ${GREP} "not found" || ${TRUE}; }`; \
- if [ "${PKG_VERBOSE}" != "" ]; then \
- ${ECHO} "$$ldd $$i"; \
- fi; \
- if [ "$$err" != "" ]; then \
- ${ECHO} "$$i: $$err"; \
- error=1; \
- fi; \
- done; \
+ if [ -x "$$ldd" ]; then \
+ for i in $${bins} $${shlibs}; do \
+ err=`{ $$ldd $$i 2>&1 || ${TRUE}; } | { ${GREP} "not found" || ${TRUE}; }`; \
+ if [ "${PKG_VERBOSE}" != "" ]; then \
+ ${ECHO} "$$ldd $$i"; \
+ fi; \
+ if [ "$$err" != "" ]; then \
+ ${ECHO} "$$i: $$err"; \
+ error=1; \
+ fi; \
+ done; \
+ fi; \
if [ "$$error" = 1 ]; then \
${ECHO} "*** The above programs/libs will not find the listed shared libraries"; \
${ECHO} " at runtime. Please fix the package (add -Wl,-R.../lib in the right places)!"; \
@@ -4473,26 +4477,32 @@ fake-pkg: ${PLIST} ${DESCR} ${MESSAGE}
. endif
. if ${CHECK_SHLIBS} == "YES"
${_PKG_SILENT}${_PKG_DEBUG} \
+ case "${LDD}" in \
+ "") ldd=`${TYPE} ldd 2>/dev/null | ${AWK} '{ print $$NF }'`;; \
+ *) ldd="${LDD}"; \
+ esac; \
case "${OBJECT_FMT}" in \
ELF) bins=`${SETENV} PREFIX=${PREFIX} ${AWK} '/^(bin|sbin|libexec)\// { print ENVIRON["PREFIX"] "/" $$0 }' ${PLIST} || ${TRUE}`; \
libs=`${SETENV} PREFIX=${PREFIX} ${AWK} '/^lib\/lib.*\.so\.[0-9]+$$/ { print ENVIRON["PREFIX"] "/" $$0 }' ${PLIST} || ${TRUE}`; \
- for i in "" $$libs; do \
- ${TEST} "$$i" = "" && continue; \
- ${ECHO} "PROVIDES=$$i" >> ${BUILD_INFO_FILE}; \
- done; \
- case "${LDD}" in \
- "") ldd=`${TYPE} ldd | ${AWK} '{ print $$NF }'`;; \
- *) ldd="${LDD}"; \
- esac; \
if ${TEST} "$$bins" != "" -o "$$libs" != ""; then \
requires=`($$ldd $$bins $$libs 2>/dev/null || ${TRUE}) | ${AWK} 'NF == 3 { print $$3 }' | ${SORT} -u`; \
- for req in "" $$requires; do \
- ${TEST} "$$req" = "" && continue; \
- ${ECHO} "REQUIRES=$$req" >> ${BUILD_INFO_FILE}; \
- done; \
fi; \
- ;; \
- esac
+ ;; \
+ Mach-O) bins=`${SETENV} PREFIX=${PREFIX} ${AWK} '/^(bin|sbin|libexec)\// { print ENVIRON["PREFIX"] "/" $$0 }' ${PLIST} || ${TRUE}`; \
+ libs=`${SETENV} PREFIX=${PREFIX} ${AWK} '/^lib\/lib.*\.dylib/ { print ENVIRON["PREFIX"] "/" $$0 }' ${PLIST} || ${TRUE}`; \
+ if ${TEST} "$$bins" != "" -o "$$libs" != ""; then \
+ requires=`($$ldd $$bins $$libs 2>/dev/null || ${TRUE}) | ${AWK} 'NF > 1 { print $$1 }' | ${SORT} -u`; \
+ fi; \
+ ;; \
+ esac; \
+ for i in "" $$libs; do \
+ ${TEST} "$$i" = "" && continue; \
+ ${ECHO} "PROVIDES=$$i" >> ${BUILD_INFO_FILE}; \
+ done; \
+ for req in "" $$requires; do \
+ ${TEST} "$$req" = "" && continue; \
+ ${ECHO} "REQUIRES=$$req" >> ${BUILD_INFO_FILE}; \
+ done
. endif
${_PKG_SILENT}${_PKG_DEBUG} \
${ECHO} "_PKGTOOLS_VER=${PKGTOOLS_VERSION}" >> ${BUILD_INFO_FILE}
diff --git a/mk/bsd.prefs.mk b/mk/bsd.prefs.mk
index e55dd7b57c4..75854cbb5e7 100644
--- a/mk/bsd.prefs.mk
+++ b/mk/bsd.prefs.mk
@@ -1,4 +1,4 @@
-# $NetBSD: bsd.prefs.mk,v 1.118.2.11 2003/08/22 07:15:46 jlam Exp $
+# $NetBSD: bsd.prefs.mk,v 1.118.2.12 2003/08/23 09:45:55 jlam Exp $
#
# Make file, included to get the site preferences, if any. Should
# only be included by package Makefiles before any .if defined()
@@ -335,6 +335,8 @@ SCRIPTDIR?= ${.CURDIR}/scripts
FILESDIR?= ${.CURDIR}/files
PKGDIR?= ${.CURDIR}
+_PKGSRC_DEPS?= # empty
+
# If WRKOBJDIR is set, use that tree to build
.if defined(WRKOBJDIR)
BUILD_DIR?= ${WRKOBJDIR}/${PKGPATH}
diff --git a/mk/bulk/bsd.bulk-pkg.mk b/mk/bulk/bsd.bulk-pkg.mk
index 34436c42e15..bb8606830bc 100644
--- a/mk/bulk/bsd.bulk-pkg.mk
+++ b/mk/bulk/bsd.bulk-pkg.mk
@@ -1,4 +1,4 @@
-# $NetBSD: bsd.bulk-pkg.mk,v 1.45.2.6 2003/08/21 02:06:17 jlam Exp $
+# $NetBSD: bsd.bulk-pkg.mk,v 1.45.2.7 2003/08/23 09:45:55 jlam Exp $
#
# Copyright (c) 1999, 2000 Hubert Feyrer <hubertf@netbsd.org>
@@ -170,7 +170,7 @@ bulk-check-uptodate:
if [ -z "$$pkg" ]; then \
${ECHO_MSG} >&2 "BULK> Required binary package $$dep does not exist, rebuilding... " ; \
uptodate=0 ; \
- elif [ "$$pkg" -nt "${REF}" ]; then \
+ elif [ -n "$$(find \"$$pkg\" -prune -newer \"${REF}\")" ]; then \
${ECHO_MSG} >&2 "BULK> Required binary package $$dep (`basename $$pkg`) is newer, rebuilding... " ; \
uptodate=0 ; \
else \
diff --git a/mk/defs.Darwin.mk b/mk/defs.Darwin.mk
index 741401e42dc..146bfe2f930 100644
--- a/mk/defs.Darwin.mk
+++ b/mk/defs.Darwin.mk
@@ -1,4 +1,4 @@
-# $NetBSD: defs.Darwin.mk,v 1.50 2003/04/15 05:29:46 grant Exp $
+# $NetBSD: defs.Darwin.mk,v 1.50.2.1 2003/08/23 09:45:55 jlam Exp $
#
# Variable definitions for the Darwin operating system.
@@ -32,6 +32,7 @@ HEAD?= /usr/bin/head
HOSTNAME_CMD?= /bin/hostname
ID?= /usr/bin/id
LDCONFIG?= /sbin/ldconfig
+LDD?= /usr/bin/otool -L
LN?= /bin/ln
LS?= /bin/ls
M4?= /usr/bin/m4
diff --git a/mk/defs.SunOS.mk b/mk/defs.SunOS.mk
index 39316efb58b..f189fb6379a 100644
--- a/mk/defs.SunOS.mk
+++ b/mk/defs.SunOS.mk
@@ -1,4 +1,4 @@
-# $NetBSD: defs.SunOS.mk,v 1.62.2.3 2003/07/24 22:00:11 jlam Exp $
+# $NetBSD: defs.SunOS.mk,v 1.62.2.4 2003/08/23 09:45:55 jlam Exp $
#
# Variable definitions for the SunOS/Solaris operating system.
@@ -15,7 +15,7 @@ DATE?= /usr/xpg4/bin/date
DC?= /usr/bin/dc
DIRNAME?= /usr/bin/dirname
ECHO?= /usr/ucb/echo
-EGREP?= /usr/xpg4/bin/egrep
+EGREP?= /usr/xpg4/bin/grep -E
EXPR?= /usr/xpg4/bin/expr
FALSE?= /usr/bin/false
FGREP?= /usr/xpg4/bin/fgrep
diff --git a/mk/gcc.buildlink2.mk b/mk/gcc.buildlink2.mk
index ea6dc578cdb..b3a274fe32f 100644
--- a/mk/gcc.buildlink2.mk
+++ b/mk/gcc.buildlink2.mk
@@ -1,4 +1,4 @@
-# $NetBSD: gcc.buildlink2.mk,v 1.2.4.2 2003/08/01 19:00:32 jlam Exp $
+# $NetBSD: gcc.buildlink2.mk,v 1.2.4.3 2003/08/23 09:45:55 jlam Exp $
#
# USE_GCC2
# If defined, use gcc from lang/gcc.
@@ -11,9 +11,9 @@ GCC_BUILDLINK2_MK= # defined
.include "../../mk/bsd.prefs.mk"
-.if defined(USE_GCC3) && empty(PKGPATH:Mlang/gcc3)
+.if defined(USE_GCC3) && empty(PKGPATH:Mlang/gcc3) && empty(_PKGSRC_DEPS:Mgcc-3.*)
. include "../lang/gcc3/buildlink2.mk"
-.elif defined(USE_GCC2) && empty(PKGPATH:Mlang/gcc)
+.elif defined(USE_GCC2) && empty(PKGPATH:Mlang/gcc) && empty(_PKGSRC_DEPS:Mgcc-2.*)
. include "../lang/gcc/buildlink2.mk"
.endif
diff --git a/mk/install/install-info b/mk/install/install-info
index b4c5522a8a5..4d739c36a8f 100644
--- a/mk/install/install-info
+++ b/mk/install/install-info
@@ -9,6 +9,13 @@ INFO_DIR="@INFO_DIR@"
case ${STAGE} in
POST-INSTALL|VIEW-INSTALL)
+ if [ -f ${PKG_PREFIX}/${INFO_DIR}/dir ]; then
+ _nentries="`${GREP} -c '^\*' ${PKG_PREFIX}/${INFO_DIR}/dir 2>/dev/null`"
+ if [ x"${_nentries}" != x -a "${_nentries}" -lt 1 ]; then
+ ${RM} ${PKG_PREFIX}/${INFO_DIR}/dir
+ fi
+
+ fi
for f in ${INFO_FILES}; do
${INSTALL_INFO} --delete --info-dir=${PKG_PREFIX}/${INFO_DIR} \
${PKG_PREFIX}/${INFO_DIR}/${f} 1>/dev/null 2>&1