| @@ -1,14 +1,14 @@ | | | @@ -1,14 +1,14 @@ |
1 | # $NetBSD: metadata.mk,v 1.35 2010/09/24 01:30:54 chs Exp $ | | 1 | # $NetBSD: metadata.mk,v 1.36 2010/12/02 11:15:10 reed Exp $ |
2 | | | 2 | |
3 | ###################################################################### | | 3 | ###################################################################### |
4 | ### The targets below are all PRIVATE. | | 4 | ### The targets below are all PRIVATE. |
5 | ###################################################################### | | 5 | ###################################################################### |
6 | | | 6 | |
7 | ###################################################################### | | 7 | ###################################################################### |
8 | ### | | 8 | ### |
9 | ### Temporary package meta-data directory. The contents of this directory | | 9 | ### Temporary package meta-data directory. The contents of this directory |
10 | ### are copied directly into the real package meta-data directory. | | 10 | ### are copied directly into the real package meta-data directory. |
11 | ### | | 11 | ### |
12 | PKG_DB_TMPDIR= ${WRKDIR}/.pkgdb | | 12 | PKG_DB_TMPDIR= ${WRKDIR}/.pkgdb |
13 | | | 13 | |
14 | unprivileged-install-hook: ${PKG_DB_TMPDIR} | | 14 | unprivileged-install-hook: ${PKG_DB_TMPDIR} |
| @@ -54,52 +54,51 @@ ${_BUILD_INFO_FILE}: plist | | | @@ -54,52 +54,51 @@ ${_BUILD_INFO_FILE}: plist |
54 | ${RUN}${ECHO} "SUPERSEDES=${SUPERSEDES}" >> ${.TARGET}.tmp | | 54 | ${RUN}${ECHO} "SUPERSEDES=${SUPERSEDES}" >> ${.TARGET}.tmp |
55 | .endif | | 55 | .endif |
56 | ${RUN}${ECHO} "BUILD_DATE=${_BUILD_DATE_cmd:sh}" >> ${.TARGET}.tmp | | 56 | ${RUN}${ECHO} "BUILD_DATE=${_BUILD_DATE_cmd:sh}" >> ${.TARGET}.tmp |
57 | ${RUN}${ECHO} "BUILD_HOST=${_BUILD_HOST_cmd:sh}" >> ${.TARGET}.tmp | | 57 | ${RUN}${ECHO} "BUILD_HOST=${_BUILD_HOST_cmd:sh}" >> ${.TARGET}.tmp |
58 | .if !empty(CHECK_SHLIBS_SUPPORTED:M[yY][eE][sS]) | | 58 | .if !empty(CHECK_SHLIBS_SUPPORTED:M[yY][eE][sS]) |
59 | ${RUN} \ | | 59 | ${RUN} \ |
60 | case ${LDD:Q}"" in \ | | 60 | case ${LDD:Q}"" in \ |
61 | "") ldd=`${TYPE} ldd 2>/dev/null | ${AWK} '{ print $$NF }'` ;; \ | | 61 | "") ldd=`${TYPE} ldd 2>/dev/null | ${AWK} '{ print $$NF }'` ;; \ |
62 | *) ldd=${LDD:Q} ;; \ | | 62 | *) ldd=${LDD:Q} ;; \ |
63 | esac; \ | | 63 | esac; \ |
64 | bins=`${AWK} '/(^|\/)(bin|sbin|libexec)\// { print "${DESTDIR}${PREFIX}/" $$0 } END { exit 0 }' ${_PLIST_NOKEYWORDS}`; \ | | 64 | bins=`${AWK} '/(^|\/)(bin|sbin|libexec)\// { print "${DESTDIR}${PREFIX}/" $$0 } END { exit 0 }' ${_PLIST_NOKEYWORDS}`; \ |
65 | case ${OBJECT_FMT:Q}"" in \ | | 65 | case ${OBJECT_FMT:Q}"" in \ |
66 | ELF) \ | | 66 | ELF) \ |
67 | libs=`${AWK} '/(^|\/)lib\/lib.*\.so(\.[0-9]+)?$$/ { print "${DESTDIR}${PREFIX}/" $$0 } END { exit 0 }' ${_PLIST_NOKEYWORDS}`; \ | | 67 | libs=`${AWK} '/\/lib.*\.so(\.[0-9]+)*$$/ { print "${DESTDIR}${PREFIX}/" $$0 } END { exit 0 }' ${_PLIST_NOKEYWORDS}`; \ |
68 | if ${TEST} -n "$$bins" -o -n "$$libs"; then \ | | 68 | if ${TEST} -n "$$bins" -o -n "$$libs"; then \ |
69 | requires=`($$ldd $$bins $$libs 2>/dev/null || ${TRUE}) | ${AWK} '$$2 == "=>" && $$3 ~ "/" { print $$3 }' | ${SORT} -u`; \ | | 69 | requires=`($$ldd $$bins $$libs 2>/dev/null || ${TRUE}) | ${AWK} '$$2 == "=>" && $$3 ~ "/" { print $$3 }' | ${SORT} -u`; \ |
70 | fi; \ | | 70 | fi; \ |
71 | linklibs=`${AWK} '/.*\.so(\.[0-9]+)?$$/ { print "${DESTDIR}${PREFIX}/" $$0 }' ${_PLIST_NOKEYWORDS}`; \ | | 71 | linklibs=`${AWK} '/.*\.so(\.[0-9]+)*$$/ { print "${DESTDIR}${PREFIX}/" $$0 }' ${_PLIST_NOKEYWORDS}`; \ |
72 | for i in $$linklibs; do \ | | 72 | for i in $$linklibs; do \ |
73 | if ${TEST} -r $$i -a ! -x $$i -a ! -h $$i; then \ | | 73 | if ${TEST} -r $$i -a ! -x $$i -a ! -h $$i; then \ |
74 | ${TEST} ${PKG_DEVELOPER:Uno:Q}"" = "no" || \ | | 74 | ${TEST} ${PKG_DEVELOPER:Uno:Q}"" = "no" || \ |
75 | ${ECHO} "$$i: installed without execute permission; fixing (should use [BSD_]INSTALL_LIB)"; \ | | 75 | ${ECHO} "$$i: installed without execute permission; fixing (should use [BSD_]INSTALL_LIB)"; \ |
76 | ${CHMOD} +x $$i; \ | | 76 | ${CHMOD} +x $$i; \ |
77 | fi; \ | | 77 | fi; \ |
78 | done; \ | | 78 | done; \ |
79 | ;; \ | | 79 | ;; \ |
80 | Mach-O) \ | | 80 | Mach-O) \ |
81 | libs=`${AWK} '/(^|\/)lib\/lib.*\.dylib/ { print "${DESTDIR}${PREFIX}/" $$0 } END { exit 0 }' ${_PLIST_NOKEYWORDS}`; \ | | 81 | libs=`${AWK} '/\/lib.*\.dylib/ { print "${DESTDIR}${PREFIX}/" $$0 } END { exit 0 }' ${_PLIST_NOKEYWORDS}`; \ |
82 | if ${TEST} "$$bins" != "" -o "$$libs" != ""; then \ | | 82 | if ${TEST} "$$bins" != "" -o "$$libs" != ""; then \ |
83 | requires=`($$ldd $$bins $$libs 2>/dev/null || ${TRUE}) | ${AWK} '/compatibility version/ { print $$1 }' | ${SORT} -u`; \ | | 83 | requires=`($$ldd $$bins $$libs 2>/dev/null || ${TRUE}) | ${AWK} '/compatibility version/ { print $$1 }' | ${SORT} -u`; \ |
84 | fi; \ | | 84 | fi; \ |
85 | ;; \ | | 85 | ;; \ |
86 | esac; \ | | 86 | esac; \ |
87 | requires=`{ for i in $$requires $$requires; do echo $$i; done; \ | | 87 | requires=`{ for i in $$requires $$requires; do echo $$i; done; \ |
88 | ${AWK} '{ print "${PREFIX}/" $$0 }' ${_PLIST_NOKEYWORDS}; } | \ | | 88 | ${AWK} '{ print "${PREFIX}/" $$0 }' ${_PLIST_NOKEYWORDS}; } | \ |
89 | ${SORT} | uniq -c | awk '$$1 == 2 {print $$2}'`; \ | | 89 | ${SORT} | uniq -c | awk '$$1 == 2 {print $$2}'`; \ |
90 | for i in "" $$libs; do \ | | 90 | for i in "" $$libs; do \ |
91 | ${TEST} "$$i" != "" || continue; \ | | 91 | ${TEST} "$$i" != "" || continue; \ |
92 | ${TEST} -h "$$i" && echo "$$i" | grep '[.]so$$' > /dev/null && continue; \ | | | |
93 | ${ECHO} "PROVIDES=$${i}"; \ | | 92 | ${ECHO} "PROVIDES=$${i}"; \ |
94 | done | ${SED} -e 's,^PROVIDES=${DESTDIR},PROVIDES=,' \ | | 93 | done | ${SED} -e 's,^PROVIDES=${DESTDIR},PROVIDES=,' \ |
95 | >> ${.TARGET}.tmp; \ | | 94 | >> ${.TARGET}.tmp; \ |
96 | for req in "" $$requires; do \ | | 95 | for req in "" $$requires; do \ |
97 | ${TEST} "$$req" != "" || continue; \ | | 96 | ${TEST} "$$req" != "" || continue; \ |
98 | ${ECHO} "REQUIRES=$$req" >> ${.TARGET}.tmp; \ | | 97 | ${ECHO} "REQUIRES=$$req" >> ${.TARGET}.tmp; \ |
99 | done | | 98 | done |
100 | .endif | | 99 | .endif |
101 | ${RUN} \ | | 100 | ${RUN} \ |
102 | rm -f ${.TARGET}; \ | | 101 | rm -f ${.TARGET}; \ |
103 | sort ${.TARGET}.tmp > ${.TARGET}; \ | | 102 | sort ${.TARGET}.tmp > ${.TARGET}; \ |
104 | rm -f ${.TARGET}.tmp | | 103 | rm -f ${.TARGET}.tmp |
105 | | | 104 | |