Contents of /branches/R11-stable/core/util-linux/util-linux-2.24-r2.smage2
Parent Directory | Revision Log
Revision 20417 -
(show annotations)
(download)
Thu Jan 2 07:58:08 2014 UTC (10 years, 8 months ago) by niro
File size: 6906 byte(s)
Thu Jan 2 07:58:08 2014 UTC (10 years, 8 months ago) by niro
File size: 6906 byte(s)
-release branches/R11-stable
1 | # $Id$ |
2 | |
3 | PNAME="util-linux" |
4 | PVER="2.24" |
5 | PBUILD="r2" |
6 | |
7 | SPLIT_PACKAGES="libuuid libblkid 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-5.9 |
15 | >= sys-fs/libudev-208" |
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.bz2" |
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' | lasttarball" |
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_libmount-python() |
61 | { |
62 | DESCRIPTION="Python bindings for libmount." |
63 | DEPEND="== sys-libs/libmount-${PVER} |
64 | ${PYTHON_DEPEND}" |
65 | PCAT="dev-python" |
66 | } |
67 | |
68 | split_info_util-linux() |
69 | { |
70 | DESCRIPTION="Various useful Linux utilities." |
71 | DEPEND="== sys-libs/libuuid-${PVER} |
72 | == sys-libs/libblkid-${PVER} |
73 | == sys-libs/libmount-${PVER} |
74 | ${UTIL_DEPEND}" |
75 | PROVIDE="virtual/eject" |
76 | } |
77 | |
78 | split_info_uuidd() |
79 | { |
80 | DESCRIPTION="Helper daemon to guarantee uniqueness of time-based UUIDs." |
81 | DEPEND="== sys-libs/libuuid-${PVER} |
82 | ${COMMON_DEPEND}" |
83 | } |
84 | |
85 | src_prepare() |
86 | { |
87 | munpack ${SRCFILE} || die |
88 | |
89 | # fhs compatibility |
90 | all-abis sed -i 's:etc/adjtime:var/lib/hwclock/adjtime:' \ |
91 | include/pathnames.h \ |
92 | sys-utils/hwclock.c sys-utils/hwclock.8 \ |
93 | sys-utils/rtcwake.c sys-utils/rtcwake.8 || die |
94 | |
95 | # satisfy usr-move |
96 | all-abis sed -i \ |
97 | -e "s:sbindir=/sbin:sbindir=/usr/sbin:" \ |
98 | -e "s:bindir=/bin:bindir=/usr/bin:" \ |
99 | -e "s:libdir=/lib:libdir=/usr/lib:" \ |
100 | -e 's:localstatedir=\${prefix}/\${localstatedir}:localstatedir=\${localstatedir}:' \ |
101 | configure.ac || die |
102 | |
103 | # regen configure |
104 | mautoreconf || die |
105 | } |
106 | |
107 | src_compile() |
108 | { |
109 | # enabled libmount-mount to utilize mount with a mtab symlink |
110 | # which is needed by systemd |
111 | |
112 | # we are using blkid from util linux now (--with-fsprobe=built --enable-fsck) |
113 | # which merges the old blkid from e2fsprogs and udevs libvolume |
114 | # see: http://lists.freedesktop.org/archives/hal-commit/2009-May/004936.html |
115 | mconfigure \ |
116 | --localstatedir=/run \ |
117 | --exec-prefix=/usr \ |
118 | --with-systemdsystemunitdir=$(mget-systemd-unit-dir) \ |
119 | --enable-nls \ |
120 | --enable-agetty \ |
121 | --enable-cramfs \ |
122 | --enable-partx \ |
123 | --enable-raw \ |
124 | --enable-rename \ |
125 | --enable-schedutils \ |
126 | --enable-write \ |
127 | --disable-reset \ |
128 | --disable-login \ |
129 | --disable-su \ |
130 | --disable-sulogin \ |
131 | --disable-kill \ |
132 | --disable-last \ |
133 | --disable-mesg \ |
134 | --disable-wall \ |
135 | --enable-fsck \ |
136 | --enable-libmount \ |
137 | --disable-silent-rules \ |
138 | --enable-socket-activation \ |
139 | --with-python=2 \ |
140 | || die |
141 | |
142 | mmake || die |
143 | } |
144 | |
145 | src_install_libuuid() |
146 | { |
147 | mmake -j1 DESTDIR=${BINDIR} install || die |
148 | zapmost ${BINDIR} \ |
149 | usr/include/uuid \ |
150 | usr/$(mlibdir)/libuuid.\* usr/$(mlibdir)/pkgconfig/uuid.pc \ |
151 | $([[ $(mlibdir) != lib ]] && echo "usr/lib/libuuid.* usr/lib/pkgconfig/uuid.pc") \ |
152 | || die |
153 | } |
154 | |
155 | src_install_libblkid() |
156 | { |
157 | mmake -j1 DESTDIR=${BINDIR} install || die |
158 | zapmost ${BINDIR} \ |
159 | usr/include/blkid \ |
160 | usr/$(mlibdir)/libblkid.\* usr/$(mlibdir)/pkgconfig/blkid.pc \ |
161 | $([[ $(mlibdir) != lib ]] && echo "usr/lib/libblkid.* usr/lib/pkgconfig/blkid.pc") \ |
162 | || die |
163 | } |
164 | |
165 | src_install_libmount() |
166 | { |
167 | mmake -j1 DESTDIR=${BINDIR} install || die |
168 | zapmost ${BINDIR} \ |
169 | usr/include/libmount \ |
170 | usr/$(mlibdir)/libmount.\* usr/$(mlibdir)/pkgconfig/mount.pc \ |
171 | $([[ $(mlibdir) != lib ]] && echo "usr/lib/libmount.* usr/lib/pkgconfig/mount.pc") \ |
172 | || die |
173 | } |
174 | |
175 | src_install_libmount-python() |
176 | { |
177 | mmake -j1 DESTDIR=${BINDIR} install || die |
178 | zapmost ${BINDIR} \ |
179 | $(get_python_libdir | sed 's:/::') \ |
180 | $([[ $(mlibdir) != lib ]] && echo $(MULTILIB_VERBOSE=false abi-m32 get_python_libdir | sed 's:/::')) \ |
181 | || die |
182 | } |
183 | |
184 | src_install_util-linux() |
185 | { |
186 | # needed directories |
187 | mkeepdir /var/lib/hwclock || die |
188 | |
189 | mmake -j1 DESTDIR=${BINDIR} install || die |
190 | |
191 | # remove files owned by other packages |
192 | mdelete -r /usr/include/uuid || die |
193 | mdelete -r /usr/include/blkid || die |
194 | mdelete -r /usr/include/libmount || die |
195 | rm ${BINDIR}/usr/$(mlibdir)/libuuid.* || die |
196 | rm ${BINDIR}/usr/$(mlibdir)/libblkid.* || die |
197 | rm ${BINDIR}/usr/$(mlibdir)/libmount.* || die |
198 | mdelete /usr/$(mlibdir)/pkgconfig/uuid.pc || die |
199 | mdelete /usr/$(mlibdir)/pkgconfig/blkid.pc || die |
200 | mdelete /usr/$(mlibdir)/pkgconfig/mount.pc || die |
201 | |
202 | mdelete -r $(get_python_libdir) || die |
203 | if [[ $(mlibdir) != lib ]] |
204 | then |
205 | rm ${BINDIR}/usr/lib/libuuid.* || die |
206 | rm ${BINDIR}/usr/lib/libblkid.* || die |
207 | rm ${BINDIR}/usr/lib/libmount.* || die |
208 | mdelete /usr/lib/pkgconfig/uuid.pc || die |
209 | mdelete /usr/lib/pkgconfig/blkid.pc || die |
210 | mdelete /usr/lib/pkgconfig/mount.pc || die |
211 | mdelete -r $(MULTILIB_VERBOSE=false abi-m32 get_python_libdir) || die |
212 | fi |
213 | mdelete /usr/sbin/uuidd || die |
214 | mdelete /usr/share/man/man8/uuidd.8 || die |
215 | mdelete -r /usr/lib/systemd/system || die |
216 | |
217 | minstalldocs AUTHORS COPYING ChangeLog DECRECATED NEWS README* TODO || die |
218 | } |
219 | |
220 | src_install_uuidd() |
221 | { |
222 | mmake -j1 DESTDIR=${BINDIR} install || die |
223 | zapmost ${BINDIR} \ |
224 | usr/share/man/man8/uuidd.8 \ |
225 | usr/sbin/uuidd \ |
226 | /usr/lib/systemd/system \ |
227 | || die |
228 | |
229 | mkeepdir /var/lib/libuuid || die |
230 | mchown uuidd:uuidd /var/lib/libuuid || die |
231 | mchmod 2755 /var/lib/libuuid || die |
232 | |
233 | mkeepdir /run/uuidd || die |
234 | mchown uuidd:uuidd /run/uuidd || die |
235 | mchmod 2755 /run/uuidd || die |
236 | |
237 | # add systemd files |
238 | minstalltmp uuidd.tmpfilesd uuidd.conf || die |
239 | } |
240 | |
241 | preinstall_util-linux() |
242 | { |
243 | if [[ ! -z $(magequery -n linux32) ]] |
244 | then |
245 | echo -e ${COLRED} |
246 | echo -e "Error: dev-util/linux32 is installed!!" |
247 | echo -e "linux32 is now provided by util-linux and doesn't need an extra package anymore." |
248 | echo -e "Please uninstall dev-util/linux32 first!" |
249 | echo -e ${COLDEFAULT} |
250 | die "dev-util/linux32 found!" |
251 | fi |
252 | if [[ ! -z $(magequery -n eject) ]] |
253 | then |
254 | echo -e ${COLRED} |
255 | echo -e "Error: sys-apps/eject is installed!!" |
256 | echo -e "eject is now provided by util-linux and doesn't need an extra package anymore." |
257 | echo -e "Please uninstall sys-apps/eject first!" |
258 | echo -e ${COLDEFAULT} |
259 | die "sys-apps/eject found!" |
260 | fi |
261 | } |
262 | |
263 | preinstall_uuidd() |
264 | { |
265 | ${MLIBDIR}/mgroupadd uuidd |
266 | ${MLIBDIR}/museradd -o "-g uuidd -d /var/lib/libuuid -s /sbin/nologin" uuidd |
267 | } |
268 | |
269 | postinstall_uuidd() |
270 | { |
271 | mstartunit uuidd.service |
272 | } |
273 | |
274 | postremove_uuidd() |
275 | { |
276 | mstopunit uuidd.service |
277 | } |