Magellan Linux

Contents of /smage/trunk/core/util-linux/util-linux-2.25.2-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 6462 - (show annotations) (download)
Fri May 15 12:48:32 2015 UTC (9 years ago) by niro
File size: 9023 byte(s)
-state disabled
1 # $Id$
2
3 PNAME="util-linux"
4 PVER="2.25.2"
5 PBUILD="r1"
6
7 STATE="disabled"
8 SPLIT_PACKAGES="libuuid libuuid-dev libblkid libblkid-dev libmount libmount-dev util-linux util-linux-dev uuidd"
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-218"
17
18 SDEPEND="${COMMON_DEPEND}
19 ${UTIL_DEPEND}
20 >= virtual/kernel-headers
21 >= virtual/sed
22 >= sys-dev/gettext-0.18
23 >= sys-libs/ncurses-dev-5.9
24 >= sys-fs/libudev-dev-218"
25
26 SRCFILE="${PNAME}-${PVER/_/-}.tar.xz"
27 SRCDIR="${BUILDDIR}/${PNAME}-${PVER/_/-}"
28
29 sminclude mtools multilib 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_libuuid-dev()
48 {
49 DESCRIPTION="Development files for libuuid."
50 DEPEND="== sys-libs/libuuid-${PVER}"
51 PCAT="sys-libs"
52 }
53
54 split_info_libblkid()
55 {
56 DESCRIPTION="Block device ID library."
57 DEPEND="${COMMON_DEPEND}"
58 PCAT="sys-libs"
59 }
60
61 split_info_libblkid-dev()
62 {
63 DESCRIPTION="Development files for libblkid."
64 DEPEND="== sys-libs/libblkid-${PVER}"
65 PCAT="sys-libs"
66 }
67
68 split_info_libmount()
69 {
70 DESCRIPTION="Device mounting library."
71 DEPEND="${COMMON_DEPEND}"
72 PCAT="sys-libs"
73 }
74
75 split_info_libmount-dev()
76 {
77 DESCRIPTION="Development files for libmount."
78 DEPEND="== sys-libs/libmount-${PVER}"
79 PCAT="sys-libs"
80 }
81
82 split_info_util-linux()
83 {
84 DESCRIPTION="Various useful Linux utilities."
85 DEPEND="== sys-libs/libuuid-${PVER}
86 == sys-libs/libblkid-${PVER}
87 == sys-libs/libmount-${PVER}
88 ${UTIL_DEPEND}"
89 PROVIDE="virtual/eject"
90 }
91
92 split_info_util-linux()
93 {
94 DESCRIPTION="Various useful Linux utilities."
95 DEPEND="== sys-libs/libuuid-${PVER}
96 == sys-libs/libblkid-${PVER}
97 == sys-libs/libmount-${PVER}
98 ${UTIL_DEPEND}"
99 PROVIDE="virtual/eject"
100 }
101
102 split_info_util-linux-dev()
103 {
104 DESCRIPTION="Development files for util-linux."
105 DEPEND="== sys-apps/util-linux-${PVER}
106 == sys-libs/libuuid-dev-${PVER}
107 == sys-libs/libblkid-dev-${PVER}
108 == sys-libs/libmount-dev-${PVER}"
109 }
110
111 split_info_uuidd()
112 {
113 DESCRIPTION="Helper daemon to guarantee uniqueness of time-based UUIDs."
114 DEPEND="== sys-libs/libuuid-${PVER}
115 ${COMMON_DEPEND}"
116 }
117
118 pkg_setup()
119 {
120 preinstall_uuidd
121 }
122
123 src_prepare()
124 {
125 munpack ${SRCFILE} || die
126
127 # fhs compatibility
128 all-abis sed -i 's:etc/adjtime:var/lib/hwclock/adjtime:' \
129 include/pathnames.h \
130 sys-utils/hwclock.c sys-utils/hwclock.8 \
131 sys-utils/rtcwake.c sys-utils/rtcwake.8 || die
132
133 # satisfy usr-move
134 all-abis sed -i \
135 -e "s:sbindir=/sbin:sbindir=/usr/sbin:" \
136 -e "s:bindir=/bin:bindir=/usr/bin:" \
137 -e "s:libdir=/lib:libdir=/usr/lib:" \
138 -e 's:localstatedir=\${prefix}/\${localstatedir}:localstatedir=\${localstatedir}:' \
139 configure.ac || die
140
141 # regen configure
142 mautoreconf || die
143 }
144
145 src_compile()
146 {
147 # enabled libmount-mount to utilize mount with a mtab symlink
148 # which is needed by systemd
149
150 # we are using blkid from util linux now (--with-fsprobe=built --enable-fsck)
151 # which merges the old blkid from e2fsprogs and udevs libvolume
152 # see: http://lists.freedesktop.org/archives/hal-commit/2009-May/004936.html
153 mconfigure \
154 --localstatedir=/run \
155 --exec-prefix=/usr \
156 --with-systemdsystemunitdir=$(mget-systemd-unit-dir) \
157 --disable-nls \
158 --enable-agetty \
159 --enable-cramfs \
160 --enable-partx \
161 --enable-raw \
162 --enable-rename \
163 --enable-schedutils \
164 --enable-write \
165 --disable-reset \
166 --disable-login \
167 --disable-su \
168 --disable-sulogin \
169 --disable-kill \
170 --disable-last \
171 --disable-mesg \
172 --disable-wall \
173 --enable-fsck \
174 --enable-libmount \
175 --disable-silent-rules \
176 --enable-socket-activation \
177 || die
178
179 mmake || die
180 }
181
182 src_install_libuuid()
183 {
184 mmake -j1 DESTDIR=${BINDIR} install || die
185 zapmost ${BINDIR} \
186 usr/$(mlibdir)/libuuid.so.\* \
187 $([[ $(mlibdir) != lib ]] && echo "usr/lib/libuuid.so.*") \
188 || die
189 }
190
191 src_install_libuuid-dev()
192 {
193 mmake -j1 DESTDIR=${BINDIR} install || die
194 zapmost ${BINDIR} \
195 usr/include/uuid \
196 usr/$(mlibdir)/libuuid.so \
197 usr/$(mlibdir)/libuuid.la \
198 usr/$(mlibdir)/libuuid.a \
199 usr/$(mlibdir)/pkgconfig/uuid.pc \
200 $([[ $(mlibdir) != lib ]] && echo "usr/lib/libuuid.so usr/lib/libuuid.a usr/lib/libuuid.la usr/lib/pkgconfig/uuid.pc") \
201 || die
202 }
203
204 src_install_libblkid()
205 {
206 mmake -j1 DESTDIR=${BINDIR} install || die
207 zapmost ${BINDIR} \
208 usr/$(mlibdir)/libblkid.so.\* \
209 $([[ $(mlibdir) != lib ]] && echo "usr/lib/libblkid.so.*") \
210 || die
211 }
212
213 src_install_libblkid-dev()
214 {
215 mmake -j1 DESTDIR=${BINDIR} install || die
216 zapmost ${BINDIR} \
217 usr/include/blkid \
218 usr/$(mlibdir)/libblkid.so \
219 usr/$(mlibdir)/libblkid.la \
220 usr/$(mlibdir)/libblkid.a \
221 usr/$(mlibdir)/pkgconfig/blkid.pc \
222 $([[ $(mlibdir) != lib ]] && echo "usr/lib/libblkid.so usr/lib/libblkid.la usr/lib/libblkid.a usr/lib/pkgconfig/blkid.pc") \
223 || die
224 }
225
226 src_install_libmount()
227 {
228 mmake -j1 DESTDIR=${BINDIR} install || die
229 zapmost ${BINDIR} \
230 usr/$(mlibdir)/libmount.so.\* \
231 $([[ $(mlibdir) != lib ]] && echo "usr/lib/libmount.so.*") \
232 || die
233 }
234
235 src_install_libmount-dev()
236 {
237 mmake -j1 DESTDIR=${BINDIR} install || die
238 zapmost ${BINDIR} \
239 usr/include/libmount \
240 usr/$(mlibdir)/libmount.so \
241 usr/$(mlibdir)/libmount.la \
242 usr/$(mlibdir)/libmount.a \
243 usr/$(mlibdir)/pkgconfig/mount.pc \
244 $([[ $(mlibdir) != lib ]] && echo "usr/lib/libmount.so usr/lib/libmount.la usr/lib/libmount.a usr/lib/pkgconfig/mount.pc") \
245 || die
246 }
247
248 src_install_util-linux()
249 {
250 mmake -j1 DESTDIR=${BINDIR} install || die
251
252 # keep fullfeatured /sbin/blkid for better fstype guessing and uuid handling
253 # mcookie is needed by xorg's startx
254 # keep fullfeatured mount/umount for systemd
255 # mountpoint is required by mage update-tarball / maybe using busbox version?
256 zapmost ${BINDIR} \
257 usr/bin/mount \
258 usr/bin/umount \
259 usr/bin/findmnt \
260 usr/sbin/fsck \
261 usr/sbin/cfdisk \
262 usr/sbin/sfdisk \
263 usr/sbin/blkid \
264 usr/bin/mcookie \
265 || die
266 }
267
268 src_install_util-linux-dev()
269 {
270 # needed directories
271 mkeepdir /var/lib/hwclock || die
272
273 mmake -j1 DESTDIR=${BINDIR} install || die
274
275 # remove files owned by other packages
276 mdelete -r /usr/include/uuid || die
277 mdelete -r /usr/include/blkid || die
278 mdelete -r /usr/include/libmount || die
279 mdelete /usr/$(mlibdir)/libuuid.\* || die
280 mdelete /usr/$(mlibdir)/libblkid.\* || die
281 mdelete /usr/$(mlibdir)/libmount.\* || die
282 mdelete /usr/$(mlibdir)/pkgconfig/uuid.pc || die
283 mdelete /usr/$(mlibdir)/pkgconfig/blkid.pc || die
284 mdelete /usr/$(mlibdir)/pkgconfig/mount.pc || die
285 if [[ $(mlibdir) != lib ]]
286 then
287 mdelete /usr/lib/libuuid.\* || die
288 mdelete /usr/lib/libblkid.\* || die
289 mdelete /usr/lib/libmount.\* || die
290 mdelete /usr/lib/pkgconfig/uuid.pc || die
291 mdelete /usr/lib/pkgconfig/blkid.pc || die
292 mdelete /usr/lib/pkgconfig/mount.pc || die
293 fi
294 mdelete /usr/sbin/uuidd || die
295 mdelete /usr/share/man/man8/uuidd.8 || die
296 mdelete -r /usr/lib/systemd/system || die
297
298 # alx
299 mdelete /usr/bin/mount || die
300 mdelete /usr/bin/umount || die
301 mdelete /usr/sbin/fsck || die
302 mdelete /usr/sbin/cfdisk || die
303 mdelete /usr/sbin/sfdisk || die
304 mdelete /usr/sbin/blkid || die
305 mdelete /usr/bin/mcookie || die
306
307 # provided by busybox
308 mdelete /usr/bin/mountpoint || die
309 mdelete /usr/sbin/agetty || die
310
311 minstalldocs AUTHORS COPYING ChangeLog DECRECATED NEWS README* TODO || die
312 }
313
314 src_install_uuidd()
315 {
316 mmake -j1 DESTDIR=${BINDIR} install || die
317 zapmost ${BINDIR} \
318 usr/share/man/man8/uuidd.8 \
319 usr/sbin/uuidd \
320 /usr/lib/systemd/system \
321 || die
322
323 mkeepdir /var/lib/libuuid || die
324 mchown uuidd:uuidd /var/lib/libuuid || die
325 mchmod 2755 /var/lib/libuuid || die
326
327 mkeepdir /run/uuidd || die
328 mchown uuidd:uuidd /run/uuidd || die
329 mchmod 2755 /run/uuidd || die
330
331 # add systemd files
332 minstalltmp uuidd.tmpfilesd uuidd.conf || die
333 }
334
335 preinstall_util-linux()
336 {
337 if [[ ! -z $(magequery -n linux32) ]]
338 then
339 echo -e ${COLRED}
340 echo -e "Error: dev-util/linux32 is installed!!"
341 echo -e "linux32 is now provided by util-linux and doesn't need an extra package anymore."
342 echo -e "Please uninstall dev-util/linux32 first!"
343 echo -e ${COLDEFAULT}
344 die "dev-util/linux32 found!"
345 fi
346 if [[ ! -z $(magequery -n eject) ]]
347 then
348 echo -e ${COLRED}
349 echo -e "Error: sys-apps/eject is installed!!"
350 echo -e "eject is now provided by util-linux and doesn't need an extra package anymore."
351 echo -e "Please uninstall sys-apps/eject first!"
352 echo -e ${COLDEFAULT}
353 die "sys-apps/eject found!"
354 fi
355 }
356
357 preinstall_uuidd()
358 {
359 mgroupadd uuidd
360 museradd -o "-g uuidd -d /var/lib/libuuid -s /sbin/nologin" uuidd
361 }
362
363 postinstall_uuidd()
364 {
365 mstartunit uuidd.service
366 }
367
368 postremove_uuidd()
369 {
370 mstopunit uuidd.service
371 }