Contents of /smage/branches/alx07x-unstable/include/alx-split.sminc
Parent Directory | Revision Log
Revision 14477 -
(show annotations)
(download)
Tue Aug 4 11:05:04 2020 UTC (4 years, 1 month ago) by niro
File size: 5910 byte(s)
Tue Aug 4 11:05:04 2020 UTC (4 years, 1 month ago) by niro
File size: 5910 byte(s)
-release unstable
1 | # $Id$ |
2 | # alx split packages |
3 | |
4 | sminclude alx cleanutils |
5 | |
6 | # global split defines |
7 | : ${SPLIT_PACKAGES="${PNAME} ${PNAME}-dev"} |
8 | |
9 | # honor empty SDEPEND |
10 | if [[ ! -z ${ALX_DEV_DEPEND} ]] && [[ -z ${SDEPEND} ]] |
11 | then |
12 | SDEPEND="${ALX_DEV_DEPEND}" |
13 | fi |
14 | |
15 | # some basics defines: |
16 | |
17 | # zap in normal packages |
18 | ALX_ZAPMOST_OPTS="" |
19 | |
20 | # delete from normal packages |
21 | ALX_RM_OPTS="usr/$(mlibdir)/*.a |
22 | usr/$(mlibdir)/*.la |
23 | usr/$(mlibdir)/pkgconfig |
24 | usr/share/aclocal |
25 | usr/share/doc |
26 | usr/share/info |
27 | usr/share/locale |
28 | usr/share/man |
29 | usr/include" |
30 | |
31 | # zap in dev packages |
32 | ALX_DEV_ZAPMOST_OPTS="" |
33 | |
34 | # delete from dev packages |
35 | ALX_DEV_RM_OPTS="" |
36 | |
37 | # be backward compatible |
38 | if [[ ! -z ${ALX_ONLY_KEEP} ]] |
39 | then |
40 | ALX_PKG_KEEP="${ALX_ONLY_KEEP}" |
41 | echo -e "${COLYELLOW}Warning: 'ALX_ONLY_KEEP' is deprecated and gets removed in the future.${COLDEFAULT}" |
42 | echo -e "${COLYELLOW} Please modify this smage2 script to use the 'ALX_PKG_KEEP' variable.${COLDEFAULT}" |
43 | unset ALX_ONLY_KEEP |
44 | fi |
45 | if [[ ! -z ${ALX_DEV_ONLY_KEEP} ]] |
46 | then |
47 | ALX_DEV_PKG_KEEP="${ALX_DEV_ONLY_KEEP}" |
48 | echo -e "${COLYELLOW}Warning: 'ALX_DEV_ONLY_KEEP' is deprecated and gets removed in the future.${COLDEFAULT}" |
49 | echo -e "${COLYELLOW} Please modify this smage2 script to use the 'ALX_DEV_PKG_KEEP' variable.${COLDEFAULT}" |
50 | unset ALX_DEV_ONLY_KEEP |
51 | fi |
52 | |
53 | # alx keeps |
54 | if [[ ! -z ${ALX_PKG_KEEP} ]] |
55 | then |
56 | ALX_ZAPMOST_OPTS+=" ${ALX_PKG_KEEP}" |
57 | ALX_DEV_RM_OPTS+=" ${ALX_PKG_KEEP}" |
58 | else |
59 | ALX_RM_OPTS+=" $(mlibdir)/*.so |
60 | usr/$(mlibdir)/*.so |
61 | $([[ $(mlibdir) != lib ]] && echo 'lib/*.so usr/lib/*.so')" |
62 | fi |
63 | |
64 | # alx dev keeps |
65 | if [[ ! -z ${ALX_DEV_PKG_KEEP} ]] |
66 | then |
67 | ALX_DEV_ZAPMOST_OPTS+=" ${ALX_DEV_PKG_KEEP}" |
68 | ALX_RM_OPTS+=" ${ALX_DEV_PKG_KEEP}" |
69 | else |
70 | ALX_DEV_RM_OPTS+=" $(mlibdir)/*.so.* |
71 | usr/$(mlibdir)/*.so.* |
72 | $([[ $(mlibdir) != lib ]] && echo 'lib/*.so.* usr/lib/*.so.*')" |
73 | fi |
74 | |
75 | alx-split_generate_split_info() |
76 | { |
77 | eval "split_info_${PNAME}() |
78 | { |
79 | DESCRIPTION=\"${DESCRIPTION}\" |
80 | DEPEND=\"${DEPEND}\" |
81 | if [[ ! -z \${ALX_DEPEND} ]] |
82 | then |
83 | DEPEND=\"\${DEPEND} |
84 | \${ALX_DEPEND}\" |
85 | fi |
86 | if [[ ! -z \${ALX_PROVIDE} ]] |
87 | then |
88 | PROVIDE=\"\${PROVIDE} |
89 | \${ALX_PROVIDE}\" |
90 | fi |
91 | _PNAME=\"${PNAME}\" |
92 | }" |
93 | } |
94 | |
95 | alx-split_generate_split_info_dev() |
96 | { |
97 | eval "split_info_${PNAME}-dev() |
98 | { |
99 | DESCRIPTION=\"Development files for ${PCAT}/${PNAME}-${PVER}-${PBUILD}.\" |
100 | DEPEND=\"== ${PCAT}/${PNAME}-${PVER}\" |
101 | if [[ ! -z \${ALX_DEV_DEPEND} ]] |
102 | then |
103 | DEPEND=\"\${DEPEND} |
104 | \${ALX_DEV_DEPEND}\" |
105 | fi |
106 | if [[ ! -z \${ALX_DEV_PROVIDE} ]] |
107 | then |
108 | PROVIDE=\"\${PROVIDE} |
109 | \${ALX_DEV_PROVIDE}\" |
110 | fi |
111 | _PNAME=\"${PNAME}\" |
112 | }" |
113 | } |
114 | |
115 | # honor multilib builds |
116 | if [[ ${MULTILIB_BUILD} = true ]] |
117 | then |
118 | if [[ ! -z $(typeset -f src_install) ]] |
119 | then |
120 | # rename the old one |
121 | old_alx_src_install=old_alx_$(typeset -f src_install) |
122 | eval "${old_alx_src_install}" |
123 | |
124 | alx_generic_src_install() |
125 | { |
126 | old_alx_src_install || die |
127 | } |
128 | fi |
129 | fi |
130 | |
131 | alx-split_generate_src_install_dev() |
132 | { |
133 | eval "alx-split_src_install_${PNAME}-dev() |
134 | { |
135 | if [[ \${MULTILIB_BUILD} = true ]] |
136 | then |
137 | cd \${BUILDDIR} |
138 | else |
139 | cd \${SRCDIR} |
140 | fi |
141 | if [[ ! -z \$(typeset -f alx_generic_src_install) ]] |
142 | then |
143 | alx_generic_src_install |
144 | else |
145 | mmake DESTDIR=\${BINDIR} install || die |
146 | |
147 | local i |
148 | for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \ |
149 | FAQ LICENSE NEWS README TODO |
150 | do |
151 | if [ -f \${SRCDIR}/\${i} ] |
152 | then |
153 | minstalldocs \${i} || die |
154 | fi |
155 | done |
156 | fi |
157 | |
158 | if [[ ! -z \${ALX_DEV_RM_OPTS} ]] |
159 | then |
160 | local i |
161 | for i in \${ALX_DEV_RM_OPTS} |
162 | do |
163 | case \${i} in |
164 | *\**|*\\\**) |
165 | if [[ -e \${BINDIR}/\$(dirname \${i}) ]] |
166 | then |
167 | echo find \${BINDIR}/\$(dirname \${i}) -maxdepth 1 -name \"\$(basename \${i})\" | xargs --no-run-if-empty rm |
168 | find \${BINDIR}/\$(dirname \${i}) -maxdepth 1 -name \"\$(basename \${i})\" | xargs --no-run-if-empty rm |
169 | fi |
170 | ;; |
171 | *) |
172 | if [[ -e \${BINDIR}/\${i} ]] |
173 | then |
174 | echo rm -r \${BINDIR}/\${i} |
175 | rm -r \${BINDIR}/\${i} || die |
176 | # busybox does not detect symlinks with -e if the reference does not exists |
177 | elif [[ -L \${BINDIR}/\${i} ]] |
178 | then |
179 | echo rm -r \${BINDIR}/\${i} |
180 | rm -r \${BINDIR}/\${i} || die |
181 | fi |
182 | ;; |
183 | esac |
184 | done |
185 | fi |
186 | |
187 | if [[ ! -z \${ALX_DEV_ZAPMOST_OPTS} ]] |
188 | then |
189 | zapmost \${BINDIR} \${ALX_DEV_ZAPMOST_OPTS} || die |
190 | fi |
191 | }" |
192 | } |
193 | |
194 | alx-split_generate_src_install() |
195 | { |
196 | eval "alx-split_src_install_${PNAME}() |
197 | { |
198 | if [[ \${MULTILIB_BUILD} = true ]] |
199 | then |
200 | cd \${BUILDDIR} |
201 | else |
202 | cd \${SRCDIR} |
203 | fi |
204 | if [[ ! -z \$(typeset -f alx_generic_src_install) ]] |
205 | then |
206 | alx_generic_src_install |
207 | else |
208 | mmake DESTDIR=\${BINDIR} install || die |
209 | |
210 | local i |
211 | for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \ |
212 | FAQ LICENSE NEWS README TODO |
213 | do |
214 | if [ -f \${SRCDIR}/\${i} ] |
215 | then |
216 | minstalldocs \${i} || die |
217 | fi |
218 | done |
219 | fi |
220 | |
221 | if [[ ! -z \${ALX_RM_OPTS} ]] |
222 | then |
223 | local i |
224 | for i in \${ALX_RM_OPTS} |
225 | do |
226 | case \${i} in |
227 | *\**|*\\\**) |
228 | if [[ -e \${BINDIR}/\$(dirname \${i}) ]] |
229 | then |
230 | echo find \${BINDIR}/\$(dirname \${i}) -maxdepth 1 -name \"\$(basename \${i})\" | xargs --no-run-if-empty rm |
231 | find \${BINDIR}/\$(dirname \${i}) -maxdepth 1 -name \"\$(basename \${i})\" | xargs --no-run-if-empty rm |
232 | fi |
233 | ;; |
234 | *) |
235 | if [[ -e \${BINDIR}/\${i} ]] |
236 | then |
237 | echo rm -r \${BINDIR}/\${i} |
238 | rm -r \${BINDIR}/\${i} || die |
239 | # busybox does not detect symlinks with -e if the reference does not exists |
240 | elif [[ -L \${BINDIR}/\${i} ]] |
241 | then |
242 | echo rm -r \${BINDIR}/\${i} |
243 | rm -r \${BINDIR}/\${i} || die |
244 | fi |
245 | ;; |
246 | esac |
247 | done |
248 | fi |
249 | |
250 | if [[ ! -z \${ALX_ZAPMOST_OPTS} ]] |
251 | then |
252 | zapmost \${BINDIR} \${ALX_ZAPMOST_OPTS} || die |
253 | fi |
254 | }" |
255 | } |
256 | |
257 | alx-split_generate_split_info |
258 | alx-split_generate_split_info_dev |
259 | |
260 | alx-split_generate_src_install_dev |
261 | alx-split_generate_src_install |
262 | |
263 | export_inherits alx-split src_install_${PNAME} src_install_${PNAME}-dev |