Magellan Linux

Annotation of /smage/trunk/include/alx-split.sminc

Parent Directory Parent Directory | Revision Log Revision Log


Revision 6979 - (hide annotations) (download)
Thu Jul 30 15:49:15 2015 UTC (8 years, 9 months 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