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