Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 17797 - (hide annotations) (download)
Wed Jun 26 12:32:54 2013 UTC (11 years ago) by niro
File size: 6274 byte(s)
-release branches/R11-stable
1 niro 17097 # $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     }