Magellan Linux

Annotation of /branches/R11-stable/core/util-linux/util-linux-2.25.2-r2.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 22619 - (hide annotations) (download)
Mon Oct 27 10:03:51 2014 UTC (9 years, 8 months ago) by niro
Original Path: trunk/core/util-linux/util-linux-2.25.2-r2.smage2
File size: 7761 byte(s)
-split libsmartcols
1 niro 22619 # $Id$
2    
3     PNAME="util-linux"
4     PVER="2.25.2"
5     PBUILD="r2"
6    
7     SPLIT_PACKAGES="libuuid libblkid libmount libsmartcols libmount-python util-linux uuidd"
8    
9    
10     PCAT="sys-apps"
11     HOMEPAGE="http://www.kernel.org/pub/linux/utils/util-linux/"
12    
13     COMMON_DEPEND=">= virtual/glibc"
14    
15     UTIL_DEPEND=">= sys-libs/ncurses-5.9
16     >= sys-fs/libudev-216"
17    
18     PYTHON_DEPEND=">= dev-lang/python-2.7"
19    
20     SDEPEND="${COMMON_DEPEND}
21     ${UTIL_DEPEND}
22     >= virtual/kernel-headers
23     >= virtual/sed
24     >= sys-dev/gettext-0.18"
25    
26     SRCFILE="${PNAME}-${PVER/_/-}.tar.xz"
27     SRCDIR="${BUILDDIR}/${PNAME}-${PVER/_/-}"
28    
29     sminclude mtools multilib python systemd cleanutils
30    
31     SRC_URI=(
32     http://www.kernel.org/pub/linux/utils/${PNAME}/v${PVER%.?}/${SRCFILE}
33     http://www.kernel.org/pub/linux/utils/${PNAME}/v${PVER/%_*/}/${SRCFILE}
34     mirror://${PNAME}/${SRCFILE}
35     mirror://${PNAME}/uuidd.tmpfilesd
36     )
37    
38     UP2DATE="updatecmd \"${HOMEPAGE}/v\$(updatecmd ${HOMEPAGE} | grep v.*/ | sed -n 's/.*v\(.*\)\/.*/\1/;$ p')/?C=M;O=A\" | grep -v 'rc' | highesttarball xz"
39    
40     split_info_libuuid()
41     {
42     DESCRIPTION="Universally unique ID library."
43     DEPEND="${COMMON_DEPEND}"
44     PCAT="sys-libs"
45     }
46    
47     split_info_libblkid()
48     {
49     DESCRIPTION="Block device ID library."
50     DEPEND="${COMMON_DEPEND}"
51     PCAT="sys-libs"
52     }
53    
54     split_info_libmount()
55     {
56     DESCRIPTION="Device mounting library."
57     DEPEND="${COMMON_DEPEND}"
58     PCAT="sys-libs"
59     }
60    
61     split_info_libsmartcols()
62     {
63     DESCRIPTION="Formatting library for ls-like programs."
64     DEPEND="${COMMON_DEPEND}"
65     PCAT="sys-libs"
66     }
67    
68     split_info_libmount-python()
69     {
70     DESCRIPTION="Python bindings for libmount."
71     DEPEND="== sys-libs/libmount-${PVER}
72     ${PYTHON_DEPEND}"
73     PCAT="dev-python"
74     }
75    
76     split_info_util-linux()
77     {
78     DESCRIPTION="Various useful Linux utilities."
79     DEPEND="== sys-libs/libuuid-${PVER}
80     == sys-libs/libblkid-${PVER}
81     == sys-libs/libmount-${PVER}
82     == sys-libs/libsmartcols-${PVER}
83     ${UTIL_DEPEND}"
84     PROVIDE="virtual/eject"
85     }
86    
87     split_info_uuidd()
88     {
89     DESCRIPTION="Helper daemon to guarantee uniqueness of time-based UUIDs."
90     DEPEND="== sys-libs/libuuid-${PVER}
91     ${COMMON_DEPEND}"
92     }
93    
94     pkg_setup()
95     {
96     preinstall_uuidd
97     }
98    
99     src_prepare()
100     {
101     munpack ${SRCFILE} || die
102    
103     # fhs compatibility
104     all-abis sed -i 's:etc/adjtime:var/lib/hwclock/adjtime:' \
105     include/pathnames.h \
106     sys-utils/hwclock.c sys-utils/hwclock.8 \
107     sys-utils/rtcwake.c sys-utils/rtcwake.8 || die
108    
109     # satisfy usr-move
110     all-abis sed -i \
111     -e "s:sbindir=/sbin:sbindir=/usr/sbin:" \
112     -e "s:bindir=/bin:bindir=/usr/bin:" \
113     -e "s:libdir=/lib:libdir=/usr/lib:" \
114     -e 's:localstatedir=\${prefix}/\${localstatedir}:localstatedir=\${localstatedir}:' \
115     configure.ac || die
116    
117     # regen configure
118     mautoreconf || die
119     }
120    
121     src_compile()
122     {
123     # enabled libmount-mount to utilize mount with a mtab symlink
124     # which is needed by systemd
125    
126     # we are using blkid from util linux now (--with-fsprobe=built --enable-fsck)
127     # which merges the old blkid from e2fsprogs and udevs libvolume
128     # see: http://lists.freedesktop.org/archives/hal-commit/2009-May/004936.html
129     mconfigure \
130     --localstatedir=/run \
131     --exec-prefix=/usr \
132     --with-systemdsystemunitdir=$(mget-systemd-unit-dir) \
133     --enable-nls \
134     --enable-agetty \
135     --enable-cramfs \
136     --enable-partx \
137     --enable-raw \
138     --enable-rename \
139     --enable-schedutils \
140     --enable-write \
141     --disable-reset \
142     --disable-login \
143     --disable-su \
144     --enable-sulogin \
145     --disable-kill \
146     --enable-last \
147     --enable-mesg \
148     --enable-wall \
149     --enable-fsck \
150     --enable-libmount \
151     --disable-silent-rules \
152     --enable-socket-activation \
153     --with-python=2 \
154     || die
155    
156     mmake || die
157     }
158    
159     src_install_libuuid()
160     {
161     mmake -j1 DESTDIR=${BINDIR} install || die
162     zapmost ${BINDIR} \
163     usr/include/uuid \
164     usr/$(mlibdir)/libuuid.\* usr/$(mlibdir)/pkgconfig/uuid.pc \
165     $([[ $(mlibdir) != lib ]] && echo "usr/lib/libuuid.* usr/lib/pkgconfig/uuid.pc") \
166     || die
167     }
168    
169     src_install_libblkid()
170     {
171     mmake -j1 DESTDIR=${BINDIR} install || die
172     zapmost ${BINDIR} \
173     usr/include/blkid \
174     usr/$(mlibdir)/libblkid.\* usr/$(mlibdir)/pkgconfig/blkid.pc \
175     $([[ $(mlibdir) != lib ]] && echo "usr/lib/libblkid.* usr/lib/pkgconfig/blkid.pc") \
176     || die
177     }
178    
179     src_install_libmount()
180     {
181     mmake -j1 DESTDIR=${BINDIR} install || die
182     zapmost ${BINDIR} \
183     usr/include/libmount \
184     usr/$(mlibdir)/libmount.\* usr/$(mlibdir)/pkgconfig/mount.pc \
185     $([[ $(mlibdir) != lib ]] && echo "usr/lib/libmount.* usr/lib/pkgconfig/mount.pc") \
186     || die
187     }
188    
189     src_install_libsmartcols()
190     {
191     mmake -j1 DESTDIR=${BINDIR} install || die
192     zapmost ${BINDIR} \
193     usr/include/libsmartcols \
194     usr/$(mlibdir)/libsmartcols.\* usr/$(mlibdir)/pkgconfig/smartcols.pc \
195     $([[ $(mlibdir) != lib ]] && echo "usr/lib/libsmartcols.* usr/lib/pkgconfig/smartcols.pc") \
196     || die
197     }
198    
199     src_install_libmount-python()
200     {
201     mmake -j1 DESTDIR=${BINDIR} install || die
202     zapmost ${BINDIR} \
203     $(mget-python-libdir | sed 's:/::') \
204     $([[ $(mlibdir) != lib ]] && echo $(MULTILIB_VERBOSE=false abi-m32 mget-python-libdir | sed 's:/::')) \
205     || die
206     }
207    
208     src_install_util-linux()
209     {
210     # needed directories
211     mkeepdir /var/lib/hwclock || die
212    
213     mmake -j1 DESTDIR=${BINDIR} install || die
214    
215     # remove files owned by other packages
216     mdelete -r /usr/include/uuid || die
217     mdelete -r /usr/include/blkid || die
218     mdelete -r /usr/include/libmount || die
219     mdelete /usr/$(mlibdir)/libuuid.\* || die
220     mdelete /usr/$(mlibdir)/libblkid.\* || die
221     mdelete /usr/$(mlibdir)/libmount.\* || die
222     mdelete /usr/$(mlibdir)/pkgconfig/uuid.pc || die
223     mdelete /usr/$(mlibdir)/pkgconfig/blkid.pc || die
224     mdelete /usr/$(mlibdir)/pkgconfig/mount.pc || die
225    
226     mdelete -r $(mget-python-libdir) || die
227     if [[ $(mlibdir) != lib ]]
228     then
229     mdelete /usr/lib/libuuid.\* || die
230     mdelete /usr/lib/libblkid.\* || die
231     mdelete /usr/lib/libmount.\* || die
232     mdelete /usr/lib/pkgconfig/uuid.pc || die
233     mdelete /usr/lib/pkgconfig/blkid.pc || die
234     mdelete /usr/lib/pkgconfig/mount.pc || die
235     mdelete -r $(MULTILIB_VERBOSE=false abi-m32 mget-python-libdir) || die
236     fi
237     mdelete /usr/sbin/uuidd || die
238     mdelete /usr/share/man/man8/uuidd.8 || die
239     mdelete -r /usr/lib/systemd/system || die
240    
241     minstalldocs AUTHORS COPYING ChangeLog DECRECATED NEWS README* TODO || die
242     }
243    
244     src_install_uuidd()
245     {
246     mmake -j1 DESTDIR=${BINDIR} install || die
247     zapmost ${BINDIR} \
248     usr/share/man/man8/uuidd.8 \
249     usr/sbin/uuidd \
250     /usr/lib/systemd/system \
251     || die
252    
253     mkeepdir /var/lib/libuuid || die
254     mchown uuidd:uuidd /var/lib/libuuid || die
255     mchmod 2755 /var/lib/libuuid || die
256    
257     mkeepdir /run/uuidd || die
258     mchown uuidd:uuidd /run/uuidd || die
259     mchmod 2755 /run/uuidd || die
260    
261     # add systemd files
262     minstalltmp uuidd.tmpfilesd uuidd.conf || die
263     }
264    
265     preinstall_util-linux()
266     {
267     if [[ ! -z $(magequery -n linux32) ]]
268     then
269     echo -e ${COLRED}
270     echo -e "Error: dev-util/linux32 is installed!!"
271     echo -e "linux32 is now provided by util-linux and doesn't need an extra package anymore."
272     echo -e "Please uninstall dev-util/linux32 first!"
273     echo -e ${COLDEFAULT}
274     die "dev-util/linux32 found!"
275     fi
276     if [[ ! -z $(magequery -n eject) ]]
277     then
278     echo -e ${COLRED}
279     echo -e "Error: sys-apps/eject is installed!!"
280     echo -e "eject is now provided by util-linux and doesn't need an extra package anymore."
281     echo -e "Please uninstall sys-apps/eject first!"
282     echo -e ${COLDEFAULT}
283     die "sys-apps/eject found!"
284     fi
285    
286     if [[ ! -z $(magequery -n sysvinit-tools) ]]
287     then
288     echo -e ${COLRED}
289     echo -e "Error: sys-apps/sysvinit-tools is installed!!"
290     echo -e "sysvinit-tools are now provided by procps and util-linux and doesn't need an extra package anymore."
291     echo -e "Please uninstall sys-apps/sysvinit-tools first!"
292     echo -e ${COLDEFAULT}
293     die "sys-apps/sysvinit-tools found!"
294     fi
295     }
296    
297     preinstall_uuidd()
298     {
299     mgroupadd uuidd
300     museradd -o "-g uuidd -d /var/lib/libuuid -s /sbin/nologin" uuidd
301     }
302    
303     postinstall_uuidd()
304     {
305     mstartunit uuidd.service
306     }
307    
308     postremove_uuidd()
309     {
310     mstopunit uuidd.service
311     }