Annotation of /smage/trunk/include/alx-split.sminc
Parent Directory | Revision Log
Revision 3607 -
(hide annotations)
(download)
Tue Jul 10 14:07:54 2012 UTC (12 years, 2 months ago) by niro
File size: 4310 byte(s)
Tue Jul 10 14:07:54 2012 UTC (12 years, 2 months ago) by niro
File size: 4310 byte(s)
-support multilib systems and keep *.so files in dev packages
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 | 3607 | usr/include |
24 | $(mlibdir)/*.so | ||
25 | usr/$(mlibdir)/*.so | ||
26 | $([[ $(mlibdir) != lib ]] && echo 'lib/*.so usr/lib/*.so')" | ||
27 | niro | 1667 | |
28 | # zap in normal packages | ||
29 | ALX_DEV_ZAPMOST_OPTS="" | ||
30 | |||
31 | # delete from dev packages | ||
32 | niro | 3607 | ALX_DEV_RM_OPTS="$(mlibdir)/*.so.* |
33 | usr/$(mlibdir)/*.so.* | ||
34 | $([[ $(mlibdir) != lib ]] && echo 'lib/*.so.* usr/lib/*.so.*')" | ||
35 | niro | 1667 | |
36 | # alx keeps | ||
37 | if [[ ! -z ${ALX_ONLY_KEEP} ]] | ||
38 | then | ||
39 | ALX_ZAPMOST_OPTS+=" ${ALX_ONLY_KEEP}" | ||
40 | ALX_DEV_RM_OPTS+=" ${ALX_ONLY_KEEP}" | ||
41 | fi | ||
42 | |||
43 | # alx dev keeps | ||
44 | if [[ ! -z ${ALX_DEV_ONLY_KEEP} ]] | ||
45 | then | ||
46 | ALX_DEV_ZAPMOST_OPTS+=" ${ALX_DEV_ONLY_KEEP}" | ||
47 | ALX_RM_OPTS+=" ${ALX_DEV_ONLY_KEEP}" | ||
48 | fi | ||
49 | |||
50 | SPECIAL_FUNCTIONS="${SPECIAL_FUNCTIONS} alx-split_postinstall" | ||
51 | |||
52 | alx-split_postinstall() | ||
53 | { | ||
54 | local target | ||
55 | |||
56 | niro | 1670 | case ${REMOVE_DEPRECATED_MAGE_TARGETS} in |
57 | niro | 1667 | 1|yes|true|TRUE) |
58 | for target in ${DEPRECATED_MAGE_TARGETS} | ||
59 | do | ||
60 | # first try to remove split_package_base target | ||
61 | if [[ ! -z $(magequery -n ${SPLIT_PACKAGE_BASE}-${target}) ]] | ||
62 | then | ||
63 | echo "removing deprecated mage-target '${SPLIT_PACKAGE_BASE}-${target}'" | ||
64 | mage uninstall ${SPLIT_PACKAGE_BASE}-${target} || die | ||
65 | fi | ||
66 | |||
67 | # then try to remove pname target | ||
68 | niro | 2065 | if [[ ! -z $(magequery -n ${_PNAME}-${target}) ]] |
69 | niro | 1667 | then |
70 | niro | 2065 | echo "removing deprecated mage-target '${_PNAME}-${target}'" |
71 | mage uninstall ${_PNAME}-${target} || die | ||
72 | niro | 1667 | fi |
73 | done | ||
74 | ;; | ||
75 | esac | ||
76 | } | ||
77 | |||
78 | alx-split_generate_split_info() | ||
79 | { | ||
80 | eval "split_info_${PNAME}() | ||
81 | { | ||
82 | DESCRIPTION=\"${DESCRIPTION}\" | ||
83 | DEPEND=\"${DEPEND}\" | ||
84 | niro | 2075 | _PNAME=\"${PNAME}\" |
85 | niro | 1667 | }" |
86 | } | ||
87 | |||
88 | alx-split_generate_split_info_dev() | ||
89 | { | ||
90 | eval "split_info_${PNAME}-dev() | ||
91 | { | ||
92 | DESCRIPTION=\"Development files for ${PCATEGORIE}/${PNAME}-${PVER}-${PBUILD}.\" | ||
93 | DEPEND=\"== ${PCATEGORIE}/${PNAME}-${PVER}\" | ||
94 | niro | 2075 | _PNAME=\"${PNAME}\" |
95 | niro | 1667 | }" |
96 | } | ||
97 | |||
98 | alx-split_generate_src_install_dev() | ||
99 | { | ||
100 | eval "alx-split_src_install_${PNAME}-dev() | ||
101 | { | ||
102 | cd \${SRCDIR} | ||
103 | if [[ ! -z \$(typeset -f alx_generic_src_install) ]] | ||
104 | then | ||
105 | alx_generic_src_install | ||
106 | else | ||
107 | mmake DESTDIR=\${BINDIR} install || die | ||
108 | |||
109 | local i | ||
110 | for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \ | ||
111 | FAQ LICENSE NEWS README TODO | ||
112 | do | ||
113 | if [ -f \${SRCDIR}/\${i} ] | ||
114 | then | ||
115 | minstalldocs \${i} || die | ||
116 | fi | ||
117 | done | ||
118 | fi | ||
119 | |||
120 | if [[ ! -z \${ALX_DEV_RM_OPTS} ]] | ||
121 | then | ||
122 | local i | ||
123 | for i in \${ALX_DEV_RM_OPTS} | ||
124 | do | ||
125 | case \${i} in | ||
126 | *\**|*\\\**) | ||
127 | if [[ -e \${BINDIR}/\$(dirname \${i}) ]] | ||
128 | then | ||
129 | niro | 3571 | find \${BINDIR}/\$(dirname \${i}) -maxdepth 1 -name \"\$(basename \${i})\" | xargs --no-run-if-empty rm |
130 | niro | 1667 | fi |
131 | ;; | ||
132 | *) | ||
133 | if [[ -e \${BINDIR}/\${i} ]] | ||
134 | then | ||
135 | rm -r \${BINDIR}/\${i} || die | ||
136 | fi | ||
137 | ;; | ||
138 | esac | ||
139 | done | ||
140 | fi | ||
141 | |||
142 | if [[ ! -z \${ALX_DEV_ZAPMOST_OPTS} ]] | ||
143 | then | ||
144 | zapmost \${BINDIR} \${ALX_DEV_ZAPMOST_OPTS} || die | ||
145 | fi | ||
146 | }" | ||
147 | } | ||
148 | |||
149 | alx-split_generate_src_install() | ||
150 | { | ||
151 | eval "alx-split_src_install_${PNAME}() | ||
152 | { | ||
153 | cd \${SRCDIR} | ||
154 | if [[ ! -z \$(typeset -f alx_generic_src_install) ]] | ||
155 | then | ||
156 | alx_generic_src_install | ||
157 | else | ||
158 | mmake DESTDIR=\${BINDIR} install || die | ||
159 | |||
160 | local i | ||
161 | for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \ | ||
162 | FAQ LICENSE NEWS README TODO | ||
163 | do | ||
164 | if [ -f \${SRCDIR}/\${i} ] | ||
165 | then | ||
166 | minstalldocs \${i} || die | ||
167 | fi | ||
168 | done | ||
169 | fi | ||
170 | |||
171 | if [[ ! -z \${ALX_RM_OPTS} ]] | ||
172 | then | ||
173 | local i | ||
174 | for i in \${ALX_RM_OPTS} | ||
175 | do | ||
176 | case \${i} in | ||
177 | *\**|*\\\**) | ||
178 | if [[ -e \${BINDIR}/\$(dirname \${i}) ]] | ||
179 | then | ||
180 | niro | 3571 | find \${BINDIR}/\$(dirname \${i}) -maxdepth 1 -name \"\$(basename \${i})\" | xargs --no-run-if-empty rm |
181 | niro | 1667 | fi |
182 | ;; | ||
183 | *) | ||
184 | if [[ -e \${BINDIR}/\${i} ]] | ||
185 | then | ||
186 | rm -r \${BINDIR}/\${i} || die | ||
187 | fi | ||
188 | ;; | ||
189 | esac | ||
190 | done | ||
191 | fi | ||
192 | |||
193 | if [[ ! -z \${ALX_ZAPMOST_OPTS} ]] | ||
194 | then | ||
195 | zapmost \${BINDIR} \${ALX_ZAPMOST_OPTS} || die | ||
196 | fi | ||
197 | }" | ||
198 | } | ||
199 | |||
200 | alx-split_generate_split_info | ||
201 | alx-split_generate_split_info_dev | ||
202 | |||
203 | alx-split_generate_src_install_dev | ||
204 | alx-split_generate_src_install | ||
205 | |||
206 | niro | 1672 | export_inherits alx-split src_install_${PNAME} src_install_${PNAME}-dev postinstall |