Magellan Linux

Contents of /trunk/core/util-linux/util-linux-2.31.1-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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