| @@ -1,407 +1,410 @@ | | | @@ -1,407 +1,410 @@ |
1 | # $NetBSD: metadata.mk,v 1.31 2009/05/02 16:14:37 reed Exp $ | | 1 | # $NetBSD: metadata.mk,v 1.32 2009/07/24 06:54:37 joerg 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} |
15 | ${PKG_DB_TMPDIR}: | | 15 | ${PKG_DB_TMPDIR}: |
16 | ${RUN}${MKDIR} ${.TARGET} | | 16 | ${RUN}${MKDIR} ${.TARGET} |
17 | | | 17 | |
18 | ###################################################################### | | 18 | ###################################################################### |
19 | ### | | 19 | ### |
20 | ### +BUILD_INFO - Package build environment and settings information | | 20 | ### +BUILD_INFO - Package build environment and settings information |
21 | ### | | 21 | ### |
22 | _BUILD_INFO_FILE= ${PKG_DB_TMPDIR}/+BUILD_INFO | | 22 | _BUILD_INFO_FILE= ${PKG_DB_TMPDIR}/+BUILD_INFO |
23 | _BUILD_DATE_cmd= ${DATE} "+%Y-%m-%d %H:%M:%S %z" | | 23 | _BUILD_DATE_cmd= ${DATE} "+%Y-%m-%d %H:%M:%S %z" |
24 | _BUILD_HOST_cmd= ${UNAME} -a | | 24 | _BUILD_HOST_cmd= ${UNAME} -a |
25 | _METADATA_TARGETS+= ${_BUILD_INFO_FILE} | | 25 | _METADATA_TARGETS+= ${_BUILD_INFO_FILE} |
26 | | | 26 | |
27 | ${_BUILD_INFO_FILE}: plist | | 27 | ${_BUILD_INFO_FILE}: plist |
28 | ${RUN}${MKDIR} ${.TARGET:H} | | 28 | ${RUN}${MKDIR} ${.TARGET:H} |
29 | ${RUN}${RM} -f ${.TARGET}.tmp | | 29 | ${RUN}${RM} -f ${.TARGET}.tmp |
30 | ${RUN} (${_BUILD_DEFS:NPATH:@v@${ECHO} ${v}=${${v}:Q} ;@}) \ | | 30 | ${RUN} (${_BUILD_DEFS:NPATH:@v@${ECHO} ${v}=${${v}:Q} ;@}) \ |
31 | > ${.TARGET}.tmp | | 31 | > ${.TARGET}.tmp |
32 | .if !empty(USE_LANGUAGES) | | 32 | .if !empty(USE_LANGUAGES) |
33 | ${RUN}${ECHO} "CC_VERSION=${CC_VERSION}" >> ${.TARGET}.tmp | | 33 | ${RUN}${ECHO} "CC_VERSION=${CC_VERSION}" >> ${.TARGET}.tmp |
34 | .endif | | 34 | .endif |
35 | .if !empty(USE_TOOLS:Mperl\:run) | | 35 | .if !empty(USE_TOOLS:Mperl\:run) |
36 | ${RUN}${ECHO} "PERL=`${PERL5} --version 2>/dev/null | ${GREP} 'This is perl'`" >> ${.TARGET}.tmp | | 36 | ${RUN}${ECHO} "PERL=`${PERL5} --version 2>/dev/null | ${GREP} 'This is perl'`" >> ${.TARGET}.tmp |
37 | .endif | | 37 | .endif |
38 | .if !empty(USE_TOOLS:Mgmake) | | 38 | .if !empty(USE_TOOLS:Mgmake) |
39 | ${RUN}${ECHO} "GMAKE=`${GMAKE} --version | ${GREP} Make`" >> ${.TARGET}.tmp | | 39 | ${RUN}${ECHO} "GMAKE=`${GMAKE} --version | ${GREP} Make`" >> ${.TARGET}.tmp |
40 | .endif | | 40 | .endif |
41 | ${RUN}${ECHO} "PKGTOOLS_VERSION=${PKGTOOLS_VERSION}" >> ${.TARGET}.tmp | | 41 | ${RUN}${ECHO} "PKGTOOLS_VERSION=${PKGTOOLS_VERSION}" >> ${.TARGET}.tmp |
42 | .if defined(HOMEPAGE) | | 42 | .if defined(HOMEPAGE) |
43 | ${RUN}${ECHO} "HOMEPAGE=${HOMEPAGE}" >> ${.TARGET}.tmp | | 43 | ${RUN}${ECHO} "HOMEPAGE=${HOMEPAGE}" >> ${.TARGET}.tmp |
44 | .endif | | 44 | .endif |
45 | ${RUN}${ECHO} "CATEGORIES=${CATEGORIES}" >> ${.TARGET}.tmp | | 45 | ${RUN}${ECHO} "CATEGORIES=${CATEGORIES}" >> ${.TARGET}.tmp |
46 | ${RUN}${ECHO} "MAINTAINER=${MAINTAINER}" >> ${.TARGET}.tmp | | 46 | ${RUN}${ECHO} "MAINTAINER=${MAINTAINER}" >> ${.TARGET}.tmp |
47 | .if defined(OWNER) | | 47 | .if defined(OWNER) |
48 | ${RUN}${ECHO} "OWNER=${OWNER}" >> ${.TARGET}.tmp | | 48 | ${RUN}${ECHO} "OWNER=${OWNER}" >> ${.TARGET}.tmp |
49 | .endif | | 49 | .endif |
50 | .if defined(PREV_PKGPATH) | | 50 | .if defined(PREV_PKGPATH) |
51 | ${RUN}${ECHO} "PREV_PKGPATH=${PREV_PKGPATH}" >> ${.TARGET}.tmp | | 51 | ${RUN}${ECHO} "PREV_PKGPATH=${PREV_PKGPATH}" >> ${.TARGET}.tmp |
52 | .endif | | 52 | .endif |
53 | .if defined(SUPERSEDES) | | 53 | .if defined(SUPERSEDES) |
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\/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\/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 | for i in "" $$libs; do \ | | 87 | for i in "" $$libs; do \ |
88 | ${TEST} "$$i" != "" || continue; \ | | 88 | ${TEST} "$$i" != "" || continue; \ |
89 | ${ECHO} "PROVIDES=$${i}"; \ | | 89 | ${ECHO} "PROVIDES=$${i}"; \ |
90 | done | ${SED} -e 's,^PROVIDES=${DESTDIR},PROVIDES=,' \ | | 90 | done | ${SED} -e 's,^PROVIDES=${DESTDIR},PROVIDES=,' \ |
91 | >> ${.TARGET}.tmp; \ | | 91 | >> ${.TARGET}.tmp; \ |
92 | for req in "" $$requires; do \ | | 92 | for req in "" $$requires; do \ |
93 | ${TEST} "$$req" != "" || continue; \ | | 93 | ${TEST} "$$req" != "" || continue; \ |
94 | ${ECHO} "REQUIRES=$$req" >> ${.TARGET}.tmp; \ | | 94 | ${ECHO} "REQUIRES=$$req" >> ${.TARGET}.tmp; \ |
95 | done | | 95 | done |
96 | .endif | | 96 | .endif |
97 | ${RUN} \ | | 97 | ${RUN} \ |
98 | rm -f ${.TARGET}; \ | | 98 | rm -f ${.TARGET}; \ |
99 | sort ${.TARGET}.tmp > ${.TARGET}; \ | | 99 | sort ${.TARGET}.tmp > ${.TARGET}; \ |
100 | rm -f ${.TARGET}.tmp | | 100 | rm -f ${.TARGET}.tmp |
101 | | | 101 | |
102 | ###################################################################### | | 102 | ###################################################################### |
103 | ### | | 103 | ### |
104 | ### +BUILD_VERSION - Package build files versioning information | | 104 | ### +BUILD_VERSION - Package build files versioning information |
105 | ### | | 105 | ### |
106 | ### We extract the ident strings from all of the important pkgsrc files | | 106 | ### We extract the ident strings from all of the important pkgsrc files |
107 | ### involved in building the package, i.e. Makefile and patches. | | 107 | ### involved in building the package, i.e. Makefile and patches. |
108 | ### | | 108 | ### |
109 | _BUILD_VERSION_FILE= ${PKG_DB_TMPDIR}/+BUILD_VERSION | | 109 | _BUILD_VERSION_FILE= ${PKG_DB_TMPDIR}/+BUILD_VERSION |
110 | _METADATA_TARGETS+= ${_BUILD_VERSION_FILE} | | 110 | _METADATA_TARGETS+= ${_BUILD_VERSION_FILE} |
111 | | | 111 | |
112 | ${_BUILD_VERSION_FILE}: | | 112 | ${_BUILD_VERSION_FILE}: |
113 | ${RUN}${MKDIR} ${.TARGET:H} | | 113 | ${RUN}${MKDIR} ${.TARGET:H} |
114 | ${RUN}${RM} -f ${.TARGET}.tmp | | 114 | ${RUN}${RM} -f ${.TARGET}.tmp |
115 | ${RUN} \ | | 115 | ${RUN} \ |
116 | exec 1>>${.TARGET}.tmp; \ | | 116 | exec 1>>${.TARGET}.tmp; \ |
117 | for f in ${.CURDIR}/Makefile ${FILESDIR}/* ${PKGDIR}/*; do \ | | 117 | for f in ${.CURDIR}/Makefile ${FILESDIR}/* ${PKGDIR}/*; do \ |
118 | ${TEST} ! -f "$$f" || ${ECHO} "$$f"; \ | | 118 | ${TEST} ! -f "$$f" || ${ECHO} "$$f"; \ |
119 | done | | 119 | done |
120 | ${RUN} \ | | 120 | ${RUN} \ |
121 | exec 1>>${.TARGET}.tmp; \ | | 121 | exec 1>>${.TARGET}.tmp; \ |
122 | ${TEST} -f ${DISTINFO_FILE:Q} || exit 0; \ | | 122 | ${TEST} -f ${DISTINFO_FILE:Q} || exit 0; \ |
123 | ${CAT} ${DISTINFO_FILE} | \ | | 123 | ${CAT} ${DISTINFO_FILE} | \ |
124 | ${AWK} 'NF == 4 && $$3 == "=" { gsub("[()]", "", $$2); print $$2 }' | \ | | 124 | ${AWK} 'NF == 4 && $$3 == "=" { gsub("[()]", "", $$2); print $$2 }' | \ |
125 | while read file; do \ | | 125 | while read file; do \ |
126 | ${TEST} ! -f "${PATCHDIR}/$$file" || \ | | 126 | ${TEST} ! -f "${PATCHDIR}/$$file" || \ |
127 | ${ECHO} "${PATCHDIR}/$$file"; \ | | 127 | ${ECHO} "${PATCHDIR}/$$file"; \ |
128 | done | | 128 | done |
129 | ${RUN} \ | | 129 | ${RUN} \ |
130 | exec 1>>${.TARGET}.tmp; \ | | 130 | exec 1>>${.TARGET}.tmp; \ |
131 | ${TEST} -d ${PATCHDIR} || exit 0; \ | | 131 | ${TEST} -d ${PATCHDIR} || exit 0; \ |
132 | cd ${PATCHDIR}; for f in *; do \ | | 132 | cd ${PATCHDIR}; for f in *; do \ |
133 | case "$$f" in \ | | 133 | case "$$f" in \ |
134 | "*"|*.orig|*.rej|*~) ;; \ | | 134 | "*"|*.orig|*.rej|*~) ;; \ |
135 | patch-*) ${ECHO} "${PATCHDIR}/$$f" ;; \ | | 135 | patch-*) ${ECHO} "${PATCHDIR}/$$f" ;; \ |
136 | esac; \ | | 136 | esac; \ |
137 | done | | 137 | done |
138 | ${RUN} \ | | 138 | ${RUN} \ |
139 | ${CAT} ${.TARGET}.tmp | \ | | 139 | ${CAT} ${.TARGET}.tmp | \ |
140 | while read file; do \ | | 140 | while read file; do \ |
141 | ${GREP} '\$$NetBSD' $$file 2>/dev/null | \ | | 141 | ${GREP} '\$$NetBSD' $$file 2>/dev/null | \ |
142 | ${SED} -e "s|^|$$file:|"; \ | | 142 | ${SED} -e "s|^|$$file:|"; \ |
143 | done | \ | | 143 | done | \ |
144 | ${AWK} '{ sub("^${PKGSRCDIR}/", ""); \ | | 144 | ${AWK} '{ sub("^${PKGSRCDIR}/", ""); \ |
145 | sub(":.*[$$]NetBSD", ": $$NetBSD"); \ | | 145 | sub(":.*[$$]NetBSD", ": $$NetBSD"); \ |
146 | sub("[$$][^$$]*$$", "$$"); \ | | 146 | sub("[$$][^$$]*$$", "$$"); \ |
147 | print; }' | \ | | 147 | print; }' | \ |
148 | ${SORT} -u > ${.TARGET} && ${RM} -f ${.TARGET}.tmp | | 148 | ${SORT} -u > ${.TARGET} && ${RM} -f ${.TARGET}.tmp |
149 | | | 149 | |
150 | ###################################################################### | | 150 | ###################################################################### |
151 | ### | | 151 | ### |
152 | ### +COMMENT - Package comment file | | 152 | ### +COMMENT - Package comment file |
153 | ### | | 153 | ### |
154 | ### This file contains the one-line description of the package. | | 154 | ### This file contains the one-line description of the package. |
155 | ### | | 155 | ### |
156 | _COMMENT_FILE= ${PKG_DB_TMPDIR}/+COMMENT | | 156 | _COMMENT_FILE= ${PKG_DB_TMPDIR}/+COMMENT |
157 | _METADATA_TARGETS+= ${_COMMENT_FILE} | | 157 | _METADATA_TARGETS+= ${_COMMENT_FILE} |
158 | | | 158 | |
159 | ${_COMMENT_FILE}: | | 159 | ${_COMMENT_FILE}: |
160 | ${RUN}${MKDIR} ${.TARGET:H} | | 160 | ${RUN}${MKDIR} ${.TARGET:H} |
161 | ${RUN}${ECHO} ${COMMENT:Q} > ${.TARGET} | | 161 | ${RUN}${ECHO} ${COMMENT:Q} > ${.TARGET} |
162 | | | 162 | |
163 | ###################################################################### | | 163 | ###################################################################### |
164 | ### | | 164 | ### |
165 | ### +DESC - Package description file | | 165 | ### +DESC - Package description file |
166 | ### | | 166 | ### |
167 | ### This file contains the paragraph description of the package. | | 167 | ### This file contains the paragraph description of the package. |
168 | ### | | 168 | ### |
169 | _DESCR_FILE= ${PKG_DB_TMPDIR}/+DESC | | 169 | _DESCR_FILE= ${PKG_DB_TMPDIR}/+DESC |
170 | _METADATA_TARGETS+= ${_DESCR_FILE} | | 170 | _METADATA_TARGETS+= ${_DESCR_FILE} |
171 | | | 171 | |
172 | ${_DESCR_FILE}: ${DESCR_SRC} | | 172 | ${_DESCR_FILE}: ${DESCR_SRC} |
173 | ${RUN}${MKDIR} ${.TARGET:H} | | 173 | ${RUN}${MKDIR} ${.TARGET:H} |
174 | ${RUN}${RM} -f ${.TARGET} | | 174 | ${RUN}${RM} -f ${.TARGET} |
175 | ${RUN}${CAT} ${.ALLSRC} > ${.TARGET} | | 175 | ${RUN}${CAT} ${.ALLSRC} > ${.TARGET} |
176 | .if defined(HOMEPAGE) | | 176 | .if defined(HOMEPAGE) |
177 | ${RUN}${ECHO} >> ${.TARGET} | | 177 | ${RUN}${ECHO} >> ${.TARGET} |
178 | ${RUN}${ECHO} "Homepage:" >> ${.TARGET} | | 178 | ${RUN}${ECHO} "Homepage:" >> ${.TARGET} |
179 | ${RUN}${ECHO} ""${HOMEPAGE:Q} >> ${.TARGET} | | 179 | ${RUN}${ECHO} ""${HOMEPAGE:Q} >> ${.TARGET} |
180 | .endif | | 180 | .endif |
181 | | | 181 | |
182 | ###################################################################### | | 182 | ###################################################################### |
183 | ### | | 183 | ### |
184 | ### +DISPLAY - Package message file | | 184 | ### +DISPLAY - Package message file |
185 | ### | | 185 | ### |
186 | ### This file contains important messages which apply to this package, | | 186 | ### This file contains important messages which apply to this package, |
187 | ### and are shown during installation. | | 187 | ### and are shown during installation. |
188 | ### | | 188 | ### |
189 | .if !defined(MESSAGE_SRC) | | 189 | .if !defined(MESSAGE_SRC) |
190 | . if exists(${PKGDIR}/MESSAGE) | | 190 | . if exists(${PKGDIR}/MESSAGE) |
191 | MESSAGE_SRC= ${PKGDIR}/MESSAGE | | 191 | MESSAGE_SRC= ${PKGDIR}/MESSAGE |
192 | . else | | 192 | . else |
193 | . if exists(${PKGDIR}/MESSAGE.common) | | 193 | . if exists(${PKGDIR}/MESSAGE.common) |
194 | MESSAGE_SRC= ${PKGDIR}/MESSAGE.common | | 194 | MESSAGE_SRC= ${PKGDIR}/MESSAGE.common |
195 | . endif | | 195 | . endif |
196 | . if exists(${PKGDIR}/MESSAGE.${OPSYS}) | | 196 | . if exists(${PKGDIR}/MESSAGE.${OPSYS}) |
197 | MESSAGE_SRC+= ${PKGDIR}/MESSAGE.${OPSYS} | | 197 | MESSAGE_SRC+= ${PKGDIR}/MESSAGE.${OPSYS} |
198 | . endif | | 198 | . endif |
199 | . if exists(${PKGDIR}/MESSAGE.${MACHINE_ARCH:C/i[3-6]86/i386/g}) | | 199 | . if exists(${PKGDIR}/MESSAGE.${MACHINE_ARCH:C/i[3-6]86/i386/g}) |
200 | MESSAGE_SRC+= ${PKGDIR}/MESSAGE.${MACHINE_ARCH:C/i[3-6]86/i386/g} | | 200 | MESSAGE_SRC+= ${PKGDIR}/MESSAGE.${MACHINE_ARCH:C/i[3-6]86/i386/g} |
201 | . endif | | 201 | . endif |
202 | . if exists(${PKGDIR}/MESSAGE.${OPSYS}-${MACHINE_ARCH:C/i[3-6]86/i386/g}) | | 202 | . if exists(${PKGDIR}/MESSAGE.${OPSYS}-${MACHINE_ARCH:C/i[3-6]86/i386/g}) |
203 | MESSAGE_SRC+= ${PKGDIR}/MESSAGE.${OPSYS}-${MACHINE_ARCH:C/i[3-6]86/i386/g} | | 203 | MESSAGE_SRC+= ${PKGDIR}/MESSAGE.${OPSYS}-${MACHINE_ARCH:C/i[3-6]86/i386/g} |
204 | . endif | | 204 | . endif |
205 | . endif | | 205 | . endif |
206 | .endif | | 206 | .endif |
207 | | | 207 | |
208 | .if defined(MESSAGE_SRC) | | 208 | .if defined(MESSAGE_SRC) |
209 | _MESSAGE_FILE= ${PKG_DB_TMPDIR}/+DISPLAY | | 209 | _MESSAGE_FILE= ${PKG_DB_TMPDIR}/+DISPLAY |
210 | _METADATA_TARGETS+= ${_MESSAGE_FILE} | | 210 | _METADATA_TARGETS+= ${_MESSAGE_FILE} |
211 | | | 211 | |
212 | # Set MESSAGE_SUBST to substitute "${variable}" to "value" in MESSAGE | | 212 | # Set MESSAGE_SUBST to substitute "${variable}" to "value" in MESSAGE |
213 | MESSAGE_SUBST+= PKGNAME=${PKGNAME} \ | | 213 | MESSAGE_SUBST+= PKGNAME=${PKGNAME} \ |
214 | PKGBASE=${PKGBASE} \ | | 214 | PKGBASE=${PKGBASE} \ |
215 | PREFIX=${PREFIX} \ | | 215 | PREFIX=${PREFIX} \ |
216 | LOCALBASE=${LOCALBASE} \ | | 216 | LOCALBASE=${LOCALBASE} \ |
217 | X11PREFIX=${X11PREFIX} \ | | 217 | X11PREFIX=${X11PREFIX} \ |
218 | X11BASE=${X11BASE} \ | | 218 | X11BASE=${X11BASE} \ |
219 | PKG_SYSCONFDIR=${PKG_SYSCONFDIR} \ | | 219 | PKG_SYSCONFDIR=${PKG_SYSCONFDIR} \ |
220 | ROOT_GROUP=${ROOT_GROUP} \ | | 220 | ROOT_GROUP=${ROOT_GROUP} \ |
221 | ROOT_USER=${ROOT_USER} | | 221 | ROOT_USER=${ROOT_USER} |
222 | | | 222 | |
223 | _MESSAGE_SUBST_SED= ${MESSAGE_SUBST:S/=/}!/:S/$/!g/:S/^/ -e s!\\\${/} | | 223 | _MESSAGE_SUBST_SED= ${MESSAGE_SUBST:S/=/}!/:S/$/!g/:S/^/ -e s!\\\${/} |
224 | | | 224 | |
225 | ${_MESSAGE_FILE}: ${MESSAGE_SRC} | | 225 | ${_MESSAGE_FILE}: ${MESSAGE_SRC} |
226 | ${RUN}${MKDIR} ${.TARGET:H} | | 226 | ${RUN}${MKDIR} ${.TARGET:H} |
227 | ${RUN}${CAT} ${.ALLSRC} | \ | | 227 | ${RUN}${CAT} ${.ALLSRC} | \ |
228 | ${SED} ${_MESSAGE_SUBST_SED} > ${.TARGET} | | 228 | ${SED} ${_MESSAGE_SUBST_SED} > ${.TARGET} |
229 | | | 229 | |
230 | # Display MESSAGE file and optionally mail the contents to | | 230 | # Display MESSAGE file and optionally mail the contents to |
231 | # PKGSRC_MESSAGE_RECIPIENTS. | | 231 | # PKGSRC_MESSAGE_RECIPIENTS. |
232 | # | | 232 | # |
233 | .PHONY: install-display-message | | 233 | .PHONY: install-display-message |
234 | _flavor-register: install-display-message | | 234 | _flavor-register: install-display-message |
235 | install-display-message: ${_MESSAGE_FILE} | | 235 | install-display-message: ${_MESSAGE_FILE} |
236 | @${STEP_MSG} "Please note the following:" | | 236 | @${STEP_MSG} "Please note the following:" |
237 | @${ECHO_MSG} "" | | 237 | @${ECHO_MSG} "" |
238 | @${CAT} ${_MESSAGE_FILE} | | 238 | @${CAT} ${_MESSAGE_FILE} |
239 | @${ECHO_MSG} "" | | 239 | @${ECHO_MSG} "" |
240 | . if !empty(PKGSRC_MESSAGE_RECIPIENTS) | | 240 | . if !empty(PKGSRC_MESSAGE_RECIPIENTS) |
241 | ${RUN} \ | | 241 | ${RUN} \ |
242 | (${ECHO} "The ${PKGNAME} package was installed on `${HOSTNAME_CMD}` at `date`"; \ | | 242 | (${ECHO} "The ${PKGNAME} package was installed on `${HOSTNAME_CMD}` at `date`"; \ |
243 | ${ECHO} ""; \ | | 243 | ${ECHO} ""; \ |
244 | ${ECHO} "Please note the following:"; \ | | 244 | ${ECHO} "Please note the following:"; \ |
245 | ${ECHO} ""; \ | | 245 | ${ECHO} ""; \ |
246 | ${CAT} ${_MESSAGE_FILE}; \ | | 246 | ${CAT} ${_MESSAGE_FILE}; \ |
247 | ${ECHO} "") | \ | | 247 | ${ECHO} "") | \ |
248 | ${MAIL_CMD} -s"Package ${PKGNAME} installed on `${HOSTNAME_CMD}`" ${PKGSRC_MESSAGE_RECIPIENTS} | | 248 | ${MAIL_CMD} -s"Package ${PKGNAME} installed on `${HOSTNAME_CMD}`" ${PKGSRC_MESSAGE_RECIPIENTS} |
249 | . endif | | 249 | . endif |
250 | .endif # MESSAGE_SRC | | 250 | .endif # MESSAGE_SRC |
251 | | | 251 | |
252 | ###################################################################### | | 252 | ###################################################################### |
253 | ### | | 253 | ### |
254 | ### +PRESERVE - Package preserve file | | 254 | ### +PRESERVE - Package preserve file |
255 | ### | | 255 | ### |
256 | ### The existence of this file prevents pkg_delete from removing this | | 256 | ### The existence of this file prevents pkg_delete from removing this |
257 | ### package unless one "force-deletes" the package. | | 257 | ### package unless one "force-deletes" the package. |
258 | ### | | 258 | ### |
259 | .if defined(PKG_PRESERVE) | | 259 | .if defined(PKG_PRESERVE) |
260 | _PRESERVE_FILE= ${PKG_DB_TMPDIR}/+PRESERVE | | 260 | _PRESERVE_FILE= ${PKG_DB_TMPDIR}/+PRESERVE |
261 | _METADATA_TARGETS+= ${_PRESERVE_FILE} | | 261 | _METADATA_TARGETS+= ${_PRESERVE_FILE} |
262 | | | 262 | |
263 | ${_PRESERVE_FILE}: | | 263 | ${_PRESERVE_FILE}: |
264 | ${RUN}${MKDIR} ${.TARGET:H} | | 264 | ${RUN}${MKDIR} ${.TARGET:H} |
265 | ${RUN}${DATE} > ${.TARGET} | | 265 | ${RUN}${DATE} > ${.TARGET} |
266 | .endif | | 266 | .endif |
267 | | | 267 | |
268 | ###################################################################### | | 268 | ###################################################################### |
269 | ### | | 269 | ### |
270 | ### +SIZE_ALL - Package size-of-dependencies file | | | |
271 | ### | | | |
272 | ### This is the total size of the dependencies that this package was | | | |
273 | ### built against. | | | |
274 | ### | | | |
275 | _SIZE_ALL_FILE= ${PKG_DB_TMPDIR}/+SIZE_ALL | | | |
276 | _METADATA_TARGETS+= ${_SIZE_ALL_FILE} | | | |
277 | | | | |
278 | ${_SIZE_ALL_FILE}: ${_RDEPENDS_FILE} | | | |
279 | ${RUN}${MKDIR} ${.TARGET:H} | | | |
280 | ${RUN} \ | | | |
281 | ${_FULL_DEPENDS_CMD} | ${SORT} -u | \ | | | |
282 | ${XARGS} -n 256 ${PKG_INFO} -qs | \ | | | |
283 | ${AWK} 'BEGIN { s = 0 } /^[0-9]+$$/ { s += $$1 } END { print s }' \ | | | |
284 | > ${.TARGET} | | | |
285 | | | | |
286 | ###################################################################### | | | |
287 | ### | | | |
288 | ### +SIZE_PKG - Package size file | | 270 | ### +SIZE_PKG - Package size file |
289 | ### | | 271 | ### |
290 | ### This is the total size of the files contained in the package. | | 272 | ### This is the total size of the files contained in the package. |
291 | ### | | 273 | ### |
292 | _SIZE_PKG_FILE= ${PKG_DB_TMPDIR}/+SIZE_PKG | | 274 | _SIZE_PKG_FILE= ${PKG_DB_TMPDIR}/+SIZE_PKG |
293 | _METADATA_TARGETS+= ${_SIZE_PKG_FILE} | | 275 | _METADATA_TARGETS+= ${_SIZE_PKG_FILE} |
294 | | | 276 | |
295 | ${_SIZE_PKG_FILE}: plist | | 277 | ${_SIZE_PKG_FILE}: plist |
296 | ${RUN}${MKDIR} ${.TARGET:H} | | 278 | ${RUN}${MKDIR} ${.TARGET:H} |
297 | ${RUN} \ | | 279 | ${RUN} \ |
298 | ${CAT} ${PLIST} | \ | | 280 | ${CAT} ${PLIST} | \ |
299 | ${AWK} 'BEGIN { base = "${PREFIX}/" } \ | | 281 | ${AWK} 'BEGIN { base = "${PREFIX}/" } \ |
300 | /^@cwd/ { base = $$2 "/" } \ | | 282 | /^@cwd/ { base = $$2 "/" } \ |
301 | /^@/ { next } \ | | 283 | /^@/ { next } \ |
302 | { print base $$0 }' | \ | | 284 | { print base $$0 }' | \ |
303 | ${SORT} -u | \ | | 285 | ${SORT} -u | \ |
304 | ${SED} -e "s,^/,${DESTDIR}/," -e "s/'/'\\\\''/g" -e "s/.*/'&'/" | \ | | 286 | ${SED} -e "s,^/,${DESTDIR}/," -e "s/'/'\\\\''/g" -e "s/.*/'&'/" | \ |
305 | ${XARGS} -n 256 ${LS} -ld 2>/dev/null | \ | | 287 | ${XARGS} -n 256 ${LS} -ld 2>/dev/null | \ |
306 | ${AWK} 'BEGIN { s = 0 } { s += $$5 } END { print s }' \ | | 288 | ${AWK} 'BEGIN { s = 0 } { s += $$5 } END { print s }' \ |
307 | > ${.TARGET} | | 289 | > ${.TARGET} |
308 | | | 290 | |
309 | ###################################################################### | | 291 | ###################################################################### |
310 | ### | | 292 | ### |
| | | 293 | ### +SIZE_ALL - Package size-of-dependencies file |
| | | 294 | ### |
| | | 295 | ### This is the total size of the dependencies that this package was |
| | | 296 | ### built against and the package itself. |
| | | 297 | ### |
| | | 298 | _SIZE_ALL_FILE= ${PKG_DB_TMPDIR}/+SIZE_ALL |
| | | 299 | _METADATA_TARGETS+= ${_SIZE_ALL_FILE} |
| | | 300 | |
| | | 301 | ${_SIZE_ALL_FILE}: ${_RDEPENDS_FILE} ${_SIZE_PKG_FILE} |
| | | 302 | ${RUN}${MKDIR} ${.TARGET:H} |
| | | 303 | ${RUN} \ |
| | | 304 | { \ |
| | | 305 | ${CAT} ${_SIZE_PKG_FILE} && \ |
| | | 306 | ${_FULL_DEPENDS_CMD} | ${SORT} -u | \ |
| | | 307 | ${XARGS} -n 256 ${PKG_INFO} -qs; \ |
| | | 308 | } | \ |
| | | 309 | ${AWK} 'BEGIN { s = 0 } /^[0-9]+$$/ { s += $$1 } END { print s }' \ |
| | | 310 | > ${.TARGET} |
| | | 311 | |
| | | 312 | ###################################################################### |
| | | 313 | ### |
311 | ### +CONTENTS - Package manifest file | | 314 | ### +CONTENTS - Package manifest file |
312 | ### | | 315 | ### |
313 | ### This file contains the list of files and checksums, along with | | 316 | ### This file contains the list of files and checksums, along with |
314 | ### any special "@" commands, e.g. @dirrm. | | 317 | ### any special "@" commands, e.g. @dirrm. |
315 | ### | | 318 | ### |
316 | _CONTENTS_FILE= ${PKG_DB_TMPDIR}/+CONTENTS | | 319 | _CONTENTS_FILE= ${PKG_DB_TMPDIR}/+CONTENTS |
317 | _METADATA_TARGETS+= ${_CONTENTS_FILE} | | 320 | _METADATA_TARGETS+= ${_CONTENTS_FILE} |
318 | | | 321 | |
319 | _DEPENDS_PLIST= ${WRKDIR}/.PLIST_deps | | 322 | _DEPENDS_PLIST= ${WRKDIR}/.PLIST_deps |
320 | | | 323 | |
321 | ${_DEPENDS_PLIST}: ${PLIST} | | 324 | ${_DEPENDS_PLIST}: ${PLIST} |
322 | ${RUN} { \ | | 325 | ${RUN} { \ |
323 | ${ECHO} "@name ${PKGNAME}"; \ | | 326 | ${ECHO} "@name ${PKGNAME}"; \ |
324 | ${AWK} '$$1 == "full" { printf "@blddep %s\n@pkgdep %s\n", $$3, $$2; }' < ${_RDEPENDS_FILE}; \ | | 327 | ${AWK} '$$1 == "full" { printf "@blddep %s\n@pkgdep %s\n", $$3, $$2; }' < ${_RDEPENDS_FILE}; \ |
325 | ${AWK} '$$1 == "bootstrap" || $$1 == "build" { printf "@blddep %s\n", $$3; }' < ${_RDEPENDS_FILE}; \ | | 328 | ${AWK} '$$1 == "bootstrap" || $$1 == "build" { printf "@blddep %s\n", $$3; }' < ${_RDEPENDS_FILE}; \ |
326 | ${CAT} ${PLIST}; } > ${.TARGET} | | 329 | ${CAT} ${PLIST}; } > ${.TARGET} |
327 | | | 330 | |
328 | _PKG_CREATE_ARGS+= -l -U | | 331 | _PKG_CREATE_ARGS+= -l -U |
329 | _PKG_CREATE_ARGS+= -B ${_BUILD_INFO_FILE} | | 332 | _PKG_CREATE_ARGS+= -B ${_BUILD_INFO_FILE} |
330 | _PKG_CREATE_ARGS+= -b ${_BUILD_VERSION_FILE} | | 333 | _PKG_CREATE_ARGS+= -b ${_BUILD_VERSION_FILE} |
331 | _PKG_CREATE_ARGS+= -c ${_COMMENT_FILE} | | 334 | _PKG_CREATE_ARGS+= -c ${_COMMENT_FILE} |
332 | _PKG_CREATE_ARGS+= ${_MESSAGE_FILE:D -D ${_MESSAGE_FILE}} | | 335 | _PKG_CREATE_ARGS+= ${_MESSAGE_FILE:D -D ${_MESSAGE_FILE}} |
333 | _PKG_CREATE_ARGS+= -d ${_DESCR_FILE} | | 336 | _PKG_CREATE_ARGS+= -d ${_DESCR_FILE} |
334 | _PKG_CREATE_ARGS+= -f ${_DEPENDS_PLIST} | | 337 | _PKG_CREATE_ARGS+= -f ${_DEPENDS_PLIST} |
335 | _PKG_CREATE_ARGS+= ${PKG_PRESERVE:D -n ${_PRESERVE_FILE}} | | 338 | _PKG_CREATE_ARGS+= ${PKG_PRESERVE:D -n ${_PRESERVE_FILE}} |
336 | _PKG_CREATE_ARGS+= -S ${_SIZE_ALL_FILE} | | 339 | _PKG_CREATE_ARGS+= -S ${_SIZE_ALL_FILE} |
337 | _PKG_CREATE_ARGS+= -s ${_SIZE_PKG_FILE} | | 340 | _PKG_CREATE_ARGS+= -s ${_SIZE_PKG_FILE} |
338 | _PKG_CREATE_ARGS+= ${CONFLICTS:D -C ${CONFLICTS:Q}} | | 341 | _PKG_CREATE_ARGS+= ${CONFLICTS:D -C ${CONFLICTS:Q}} |
339 | _PKG_CREATE_ARGS+= ${INSTALL_FILE:D ${_INSTALL_ARG_cmd:sh}} | | 342 | _PKG_CREATE_ARGS+= ${INSTALL_FILE:D ${_INSTALL_ARG_cmd:sh}} |
340 | _PKG_CREATE_ARGS+= ${DEINSTALL_FILE:D ${_DEINSTALL_ARG_cmd:sh}} | | 343 | _PKG_CREATE_ARGS+= ${DEINSTALL_FILE:D ${_DEINSTALL_ARG_cmd:sh}} |
341 | | | 344 | |
342 | _PKG_ARGS_INSTALL+= ${_PKG_CREATE_ARGS} | | 345 | _PKG_ARGS_INSTALL+= ${_PKG_CREATE_ARGS} |
343 | .if ${_USE_DESTDIR} == "no" | | 346 | .if ${_USE_DESTDIR} == "no" |
344 | _PKG_ARGS_INSTALL+= -p ${PREFIX} | | 347 | _PKG_ARGS_INSTALL+= -p ${PREFIX} |
345 | .else | | 348 | .else |
346 | _PKG_ARGS_INSTALL+= -I ${PREFIX} -p ${DESTDIR}${PREFIX} | | 349 | _PKG_ARGS_INSTALL+= -I ${PREFIX} -p ${DESTDIR}${PREFIX} |
347 | .endif | | 350 | .endif |
348 | | | 351 | |
349 | _DEINSTALL_ARG_cmd= if ${TEST} -f ${DEINSTALL_FILE}; then \ | | 352 | _DEINSTALL_ARG_cmd= if ${TEST} -f ${DEINSTALL_FILE}; then \ |
350 | ${ECHO} "-k "${DEINSTALL_FILE:Q}; \ | | 353 | ${ECHO} "-k "${DEINSTALL_FILE:Q}; \ |
351 | else \ | | 354 | else \ |
352 | ${ECHO}; \ | | 355 | ${ECHO}; \ |
353 | fi | | 356 | fi |
354 | _INSTALL_ARG_cmd= if ${TEST} -f ${INSTALL_FILE}; then \ | | 357 | _INSTALL_ARG_cmd= if ${TEST} -f ${INSTALL_FILE}; then \ |
355 | ${ECHO} "-i "${INSTALL_FILE:Q}; \ | | 358 | ${ECHO} "-i "${INSTALL_FILE:Q}; \ |
356 | else \ | | 359 | else \ |
357 | ${ECHO}; \ | | 360 | ${ECHO}; \ |
358 | fi | | 361 | fi |
359 | | | 362 | |
360 | _CONTENTS_TARGETS+= ${_BUILD_INFO_FILE} | | 363 | _CONTENTS_TARGETS+= ${_BUILD_INFO_FILE} |
361 | _CONTENTS_TARGETS+= ${_BUILD_VERSION_FILE} | | 364 | _CONTENTS_TARGETS+= ${_BUILD_VERSION_FILE} |
362 | _CONTENTS_TARGETS+= ${_COMMENT_FILE} | | 365 | _CONTENTS_TARGETS+= ${_COMMENT_FILE} |
363 | _CONTENTS_TARGETS+= ${_DEPENDS_FILE} | | 366 | _CONTENTS_TARGETS+= ${_DEPENDS_FILE} |
364 | _CONTENTS_TARGETS+= ${_DESCR_FILE} | | 367 | _CONTENTS_TARGETS+= ${_DESCR_FILE} |
365 | _CONTENTS_TARGETS+= ${_MESSAGE_FILE} | | 368 | _CONTENTS_TARGETS+= ${_MESSAGE_FILE} |
366 | _CONTENTS_TARGETS+= ${_DEPENDS_PLIST} | | 369 | _CONTENTS_TARGETS+= ${_DEPENDS_PLIST} |
367 | _CONTENTS_TARGETS+= plist | | 370 | _CONTENTS_TARGETS+= plist |
368 | _CONTENTS_TARGETS+= ${_PRESERVE_FILE} | | 371 | _CONTENTS_TARGETS+= ${_PRESERVE_FILE} |
369 | _CONTENTS_TARGETS+= ${_SIZE_ALL_FILE} | | 372 | _CONTENTS_TARGETS+= ${_SIZE_ALL_FILE} |
370 | _CONTENTS_TARGETS+= ${_SIZE_PKG_FILE} | | 373 | _CONTENTS_TARGETS+= ${_SIZE_PKG_FILE} |
371 | | | 374 | |
372 | ${_CONTENTS_FILE}: ${_CONTENTS_TARGETS} | | 375 | ${_CONTENTS_FILE}: ${_CONTENTS_TARGETS} |
373 | ${RUN}${MKDIR} ${.TARGET:H} | | 376 | ${RUN}${MKDIR} ${.TARGET:H} |
374 | ${RUN}${PKG_CREATE} ${_PKG_ARGS_INSTALL} -O ${PKGFILE:T} > ${.TARGET} | | 377 | ${RUN}${PKG_CREATE} ${_PKG_ARGS_INSTALL} -O ${PKGFILE:T} > ${.TARGET} |
375 | | | 378 | |
376 | ###################################################################### | | 379 | ###################################################################### |
377 | ### _flavor-generate-metadata (PRIVATE) | | 380 | ### _flavor-generate-metadata (PRIVATE) |
378 | ###################################################################### | | 381 | ###################################################################### |
379 | ### _flavor-generate-metadata is a convenience target for generating | | 382 | ### _flavor-generate-metadata is a convenience target for generating |
380 | ### all of the pkgsrc binary package meta-data files. It populates | | 383 | ### all of the pkgsrc binary package meta-data files. It populates |
381 | ### ${PKG_DB_TMPDIR} with the following files: | | 384 | ### ${PKG_DB_TMPDIR} with the following files: |
382 | ### | | 385 | ### |
383 | ### +BUILD_INFO | | 386 | ### +BUILD_INFO |
384 | ### +BUILD_VERSION | | 387 | ### +BUILD_VERSION |
385 | ### +COMMENT | | 388 | ### +COMMENT |
386 | ### +CONTENTS | | 389 | ### +CONTENTS |
387 | ### +DESC | | 390 | ### +DESC |
388 | ### +DISPLAY | | 391 | ### +DISPLAY |
389 | ### +PRESERVE | | 392 | ### +PRESERVE |
390 | ### +SIZE_ALL | | 393 | ### +SIZE_ALL |
391 | ### +SIZE_PKG | | 394 | ### +SIZE_PKG |
392 | ### | | 395 | ### |
393 | ### See the targets above for descriptions of each of those files. | | 396 | ### See the targets above for descriptions of each of those files. |
394 | ### | | 397 | ### |
395 | .PHONY: _flavor-generate-metadata | | 398 | .PHONY: _flavor-generate-metadata |
396 | _flavor-generate-metadata: ${_METADATA_TARGETS} | | 399 | _flavor-generate-metadata: ${_METADATA_TARGETS} |
397 | | | 400 | |
398 | ###################################################################### | | 401 | ###################################################################### |
399 | ### _flavor-clean-metadata (PRIVATE) | | 402 | ### _flavor-clean-metadata (PRIVATE) |
400 | ###################################################################### | | 403 | ###################################################################### |
401 | ### _flavor-clean-metadata is a convenience target for removing the | | 404 | ### _flavor-clean-metadata is a convenience target for removing the |
402 | ### package meta-data files. This is essentially the reverse action | | 405 | ### package meta-data files. This is essentially the reverse action |
403 | ### of _flavor-generate-metadata. | | 406 | ### of _flavor-generate-metadata. |
404 | ### | | 407 | ### |
405 | .PHONY: _flavor-clean-metadata | | 408 | .PHONY: _flavor-clean-metadata |
406 | _flavor-clean-metadata: | | 409 | _flavor-clean-metadata: |
407 | ${RUN}${RM} -f ${_METADATA_TARGETS} | | 410 | ${RUN}${RM} -f ${_METADATA_TARGETS} |