Annotation of /smage/trunk/include/alx-split.sminc
Parent Directory | Revision Log
Revision 14407 -
(hide annotations)
(download)
Mon Jul 13 10:21:42 2020 UTC (4 years, 2 months ago) by niro
File size: 5910 byte(s)
Mon Jul 13 10:21:42 2020 UTC (4 years, 2 months ago) by niro
File size: 5910 byte(s)
-fixed evaluation errors: when *.* was evuluated in SYSROOT, the new bash/busybox evaluates this to filenames and do not stick to *.*
1 | niro | 1667 | # $Id$ |
2 | # alx split packages | ||
3 | |||
4 | sminclude alx cleanutils | ||
5 | |||
6 | # global split defines | ||
7 | : ${SPLIT_PACKAGES="${PNAME} ${PNAME}-dev"} | ||
8 | |||
9 | niro | 6984 | # honor empty SDEPEND |
10 | if [[ ! -z ${ALX_DEV_DEPEND} ]] && [[ -z ${SDEPEND} ]] | ||
11 | then | ||
12 | SDEPEND="${ALX_DEV_DEPEND}" | ||
13 | fi | ||
14 | |||
15 | niro | 1667 | # some basics defines: |
16 | |||
17 | # zap in normal packages | ||
18 | ALX_ZAPMOST_OPTS="" | ||
19 | |||
20 | niro | 3607 | # delete from normal packages |
21 | niro | 1667 | 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 | niro | 4693 | usr/include" |
30 | niro | 1667 | |
31 | niro | 4693 | # zap in dev packages |
32 | niro | 1667 | ALX_DEV_ZAPMOST_OPTS="" |
33 | |||
34 | # delete from dev packages | ||
35 | niro | 4693 | ALX_DEV_RM_OPTS="" |
36 | niro | 1667 | |
37 | niro | 3775 | # be backward compatible |
38 | niro | 3779 | 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 | niro | 3775 | |
53 | niro | 1667 | # alx keeps |
54 | niro | 3775 | if [[ ! -z ${ALX_PKG_KEEP} ]] |
55 | niro | 1667 | then |
56 | niro | 3775 | ALX_ZAPMOST_OPTS+=" ${ALX_PKG_KEEP}" |
57 | ALX_DEV_RM_OPTS+=" ${ALX_PKG_KEEP}" | ||
58 | niro | 4693 | else |
59 | niro | 4818 | ALX_RM_OPTS+=" $(mlibdir)/*.so |
60 | niro | 4693 | usr/$(mlibdir)/*.so |
61 | $([[ $(mlibdir) != lib ]] && echo 'lib/*.so usr/lib/*.so')" | ||
62 | niro | 1667 | fi |
63 | |||
64 | # alx dev keeps | ||
65 | niro | 3775 | if [[ ! -z ${ALX_DEV_PKG_KEEP} ]] |
66 | niro | 1667 | then |
67 | niro | 3775 | ALX_DEV_ZAPMOST_OPTS+=" ${ALX_DEV_PKG_KEEP}" |
68 | ALX_RM_OPTS+=" ${ALX_DEV_PKG_KEEP}" | ||
69 | niro | 4693 | else |
70 | niro | 4818 | ALX_DEV_RM_OPTS+=" $(mlibdir)/*.so.* |
71 | niro | 4693 | usr/$(mlibdir)/*.so.* |
72 | $([[ $(mlibdir) != lib ]] && echo 'lib/*.so.* usr/lib/*.so.*')" | ||
73 | niro | 1667 | fi |
74 | |||
75 | alx-split_generate_split_info() | ||
76 | { | ||
77 | eval "split_info_${PNAME}() | ||
78 | { | ||
79 | DESCRIPTION=\"${DESCRIPTION}\" | ||
80 | DEPEND=\"${DEPEND}\" | ||
81 | niro | 6074 | if [[ ! -z \${ALX_DEPEND} ]] |
82 | niro | 6072 | then |
83 | niro | 6074 | DEPEND=\"\${DEPEND} |
84 | \${ALX_DEPEND}\" | ||
85 | niro | 6072 | fi |
86 | niro | 11568 | if [[ ! -z \${ALX_PROVIDE} ]] |
87 | then | ||
88 | PROVIDE=\"\${PROVIDE} | ||
89 | \${ALX_PROVIDE}\" | ||
90 | fi | ||
91 | niro | 2075 | _PNAME=\"${PNAME}\" |
92 | niro | 1667 | }" |
93 | } | ||
94 | |||
95 | alx-split_generate_split_info_dev() | ||
96 | { | ||
97 | eval "split_info_${PNAME}-dev() | ||
98 | { | ||
99 | niro | 3835 | DESCRIPTION=\"Development files for ${PCAT}/${PNAME}-${PVER}-${PBUILD}.\" |
100 | DEPEND=\"== ${PCAT}/${PNAME}-${PVER}\" | ||
101 | niro | 6074 | if [[ ! -z \${ALX_DEV_DEPEND} ]] |
102 | niro | 6072 | then |
103 | niro | 6074 | DEPEND=\"\${DEPEND} |
104 | \${ALX_DEV_DEPEND}\" | ||
105 | niro | 6072 | fi |
106 | niro | 11568 | if [[ ! -z \${ALX_DEV_PROVIDE} ]] |
107 | then | ||
108 | PROVIDE=\"\${PROVIDE} | ||
109 | \${ALX_DEV_PROVIDE}\" | ||
110 | fi | ||
111 | niro | 2075 | _PNAME=\"${PNAME}\" |
112 | niro | 1667 | }" |
113 | } | ||
114 | |||
115 | niro | 6979 | # 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 | niro | 6981 | old_alx_src_install=old_alx_$(typeset -f src_install) |
122 | niro | 6979 | 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 | niro | 1667 | alx-split_generate_src_install_dev() |
132 | { | ||
133 | eval "alx-split_src_install_${PNAME}-dev() | ||
134 | { | ||
135 | niro | 14407 | if [[ \${MULTILIB_BUILD} = true ]] |
136 | then | ||
137 | cd \${BUILDDIR} | ||
138 | else | ||
139 | cd \${SRCDIR} | ||
140 | fi | ||
141 | niro | 1667 | 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 | niro | 6001 | echo find \${BINDIR}/\$(dirname \${i}) -maxdepth 1 -name \"\$(basename \${i})\" | xargs --no-run-if-empty rm |
168 | niro | 3571 | find \${BINDIR}/\$(dirname \${i}) -maxdepth 1 -name \"\$(basename \${i})\" | xargs --no-run-if-empty rm |
169 | niro | 1667 | fi |
170 | ;; | ||
171 | *) | ||
172 | if [[ -e \${BINDIR}/\${i} ]] | ||
173 | then | ||
174 | niro | 6001 | echo rm -r \${BINDIR}/\${i} |
175 | niro | 1667 | rm -r \${BINDIR}/\${i} || die |
176 | niro | 6001 | # 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 | niro | 1667 | 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 | niro | 14407 | if [[ \${MULTILIB_BUILD} = true ]] |
199 | then | ||
200 | cd \${BUILDDIR} | ||
201 | else | ||
202 | cd \${SRCDIR} | ||
203 | fi | ||
204 | niro | 1667 | 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 | niro | 6001 | echo find \${BINDIR}/\$(dirname \${i}) -maxdepth 1 -name \"\$(basename \${i})\" | xargs --no-run-if-empty rm |
231 | niro | 3571 | find \${BINDIR}/\$(dirname \${i}) -maxdepth 1 -name \"\$(basename \${i})\" | xargs --no-run-if-empty rm |
232 | niro | 1667 | fi |
233 | ;; | ||
234 | *) | ||
235 | if [[ -e \${BINDIR}/\${i} ]] | ||
236 | then | ||
237 | niro | 6001 | echo rm -r \${BINDIR}/\${i} |
238 | niro | 1667 | rm -r \${BINDIR}/\${i} || die |
239 | niro | 6001 | # 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 | niro | 1667 | 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 | niro | 3646 | export_inherits alx-split src_install_${PNAME} src_install_${PNAME}-dev |