Magellan Linux

Annotation of /branches/R11-unstable/core/util-linux/util-linux-2.26.2-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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