Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log


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