Magellan Linux

Contents of /branches/R11-stable/core/util-linux/util-linux-2.23.1-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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