Gentoo Archives: gentoo-commits

From: "Mike Frysinger (vapier)" <vapier@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in sys-apps/busybox: busybox-1.22.0.ebuild ChangeLog
Date: Wed, 01 Jan 2014 17:18:45
Message-Id: 20140101171840.E845F2004C@flycatcher.gentoo.org
1 vapier 14/01/01 17:18:40
2
3 Modified: ChangeLog
4 Added: busybox-1.22.0.ebuild
5 Log:
6 Version bump.
7
8 (Portage version: 2.2.7/cvs/Linux x86_64, signed Manifest commit with key D2E96200)
9
10 Revision Changes Path
11 1.363 sys-apps/busybox/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-apps/busybox/ChangeLog?rev=1.363&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-apps/busybox/ChangeLog?rev=1.363&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-apps/busybox/ChangeLog?r1=1.362&r2=1.363
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/sys-apps/busybox/ChangeLog,v
20 retrieving revision 1.362
21 retrieving revision 1.363
22 diff -u -r1.362 -r1.363
23 --- ChangeLog 29 Sep 2013 00:55:52 -0000 1.362
24 +++ ChangeLog 1 Jan 2014 17:18:40 -0000 1.363
25 @@ -1,6 +1,11 @@
26 # ChangeLog for sys-apps/busybox
27 -# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/busybox/ChangeLog,v 1.362 2013/09/29 00:55:52 vapier Exp $
29 +# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
30 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/busybox/ChangeLog,v 1.363 2014/01/01 17:18:40 vapier Exp $
31 +
32 +*busybox-1.22.0 (01 Jan 2014)
33 +
34 + 01 Jan 2014; Mike Frysinger <vapier@g.o> +busybox-1.22.0.ebuild:
35 + Version bump.
36
37 29 Sep 2013; Mike Frysinger <vapier@g.o>
38 +files/busybox-1.21.1-trylink-only-prefix-libs-with-l.patch,
39
40
41
42 1.1 sys-apps/busybox/busybox-1.22.0.ebuild
43
44 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-apps/busybox/busybox-1.22.0.ebuild?rev=1.1&view=markup
45 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-apps/busybox/busybox-1.22.0.ebuild?rev=1.1&content-type=text/plain
46
47 Index: busybox-1.22.0.ebuild
48 ===================================================================
49 # Copyright 1999-2014 Gentoo Foundation
50 # Distributed under the terms of the GNU General Public License v2
51 # $Header: /var/cvsroot/gentoo-x86/sys-apps/busybox/busybox-1.22.0.ebuild,v 1.1 2014/01/01 17:18:40 vapier Exp $
52
53 # See `man savedconfig.eclass` for info on how to use USE=savedconfig.
54
55 EAPI="4"
56 inherit eutils flag-o-matic savedconfig toolchain-funcs multilib
57
58 DESCRIPTION="Utilities for rescue and embedded systems"
59 HOMEPAGE="http://www.busybox.net/"
60 if [[ ${PV} == "9999" ]] ; then
61 MY_P=${PN}
62 EGIT_REPO_URI="git://busybox.net/busybox.git"
63 inherit git-2
64 else
65 MY_P=${PN}-${PV/_/-}
66 SRC_URI="http://www.busybox.net/downloads/${MY_P}.tar.bz2"
67 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
68 fi
69
70 LICENSE="GPL-2"
71 SLOT="0"
72
73 IUSE="ipv6 livecd make-symlinks math mdev -pam selinux sep-usr +static syslog systemd"
74 RESTRICT="test"
75
76 RDEPEND="!static? ( selinux? ( sys-libs/libselinux ) )
77 pam? ( sys-libs/pam )"
78 DEPEND="${RDEPEND}
79 static? ( selinux? ( sys-libs/libselinux[static-libs(+)] ) )
80 >=sys-kernel/linux-headers-2.6.39"
81
82 S=${WORKDIR}/${MY_P}
83
84 busybox_config_option() {
85 local flag=$1 ; shift
86 if [[ ${flag} != [yn] ]] ; then
87 busybox_config_option $(usex ${flag} y n) "$@"
88 return
89 fi
90 while [[ $# -gt 0 ]] ; do
91 if [[ ${flag} == "y" ]] ; then
92 sed -i -e "s:.*\<CONFIG_$1\>.*set:CONFIG_$1=y:g" .config
93 else
94 sed -i -e "s:CONFIG_$1=y:# CONFIG_$1 is not set:g" .config
95 fi
96 einfo $(grep "CONFIG_$1[= ]" .config || echo Could not find CONFIG_$1 ...)
97 shift
98 done
99 }
100
101 busybox_config_enabled() {
102 local val=$(sed -n "/^CONFIG_$1=/s:^[^=]*=::p" .config)
103 case ${val} in
104 "") return 1 ;;
105 y) return 0 ;;
106 *) echo "${val}" | sed -r 's:^"(.*)"$:\1:' ;;
107 esac
108 }
109
110 src_prepare() {
111 unset KBUILD_OUTPUT #88088
112 append-flags -fno-strict-aliasing #310413
113 use ppc64 && append-flags -mminimal-toc #130943
114
115 # patches go here!
116 epatch "${FILESDIR}"/${PN}-1.19.0-bb.patch
117 #epatch "${FILESDIR}"/${P}-*.patch
118 cp "${FILESDIR}"/ginit.c init/ || die
119
120 # flag cleanup
121 sed -i -r \
122 -e 's:[[:space:]]?-(Werror|Os|falign-(functions|jumps|loops|labels)=1|fomit-frame-pointer)\>::g' \
123 Makefile.flags || die
124 #sed -i '/bbsh/s:^//::' include/applets.h
125 sed -i '/^#error Aborting compilation./d' applets/applets.c || die
126 use elibc_glibc && sed -i 's:-Wl,--gc-sections::' Makefile
127 sed -i \
128 -e "/^CROSS_COMPILE/s:=.*:= ${CHOST}-:" \
129 -e "/^AR\>/s:=.*:= $(tc-getAR):" \
130 -e "/^CC\>/s:=.*:= $(tc-getCC):" \
131 -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
132 -e "/^PKG_CONFIG\>/s:=.*:= $(tc-getPKG_CONFIG):" \
133 Makefile || die
134 sed -i \
135 -e 's:-static-libgcc::' \
136 Makefile.flags || die
137 }
138
139 src_configure() {
140 # check for a busybox config before making one of our own.
141 # if one exist lets return and use it.
142
143 restore_config .config
144 if [ -f .config ]; then
145 yes "" | emake -j1 oldconfig > /dev/null
146 return 0
147 else
148 ewarn "Could not locate user configfile, so we will save a default one"
149 fi
150
151 # setup the config file
152 emake -j1 allyesconfig > /dev/null
153 # nommu forces a bunch of things off which we want on #387555
154 busybox_config_option n NOMMU
155 sed -i '/^#/d' .config
156 yes "" | emake -j1 oldconfig >/dev/null
157
158 # now turn off stuff we really don't want
159 busybox_config_option n DMALLOC
160 busybox_config_option n FEATURE_SUID_CONFIG
161 busybox_config_option n BUILD_AT_ONCE
162 busybox_config_option n BUILD_LIBBUSYBOX
163 busybox_config_option n FEATURE_CLEAN_UP
164 busybox_config_option n MONOTONIC_SYSCALL
165 busybox_config_option n USE_PORTABLE_CODE
166 busybox_config_option n WERROR
167
168 # If these are not set and we are using a uclibc/busybox setup
169 # all calls to system() will fail.
170 busybox_config_option y ASH
171 busybox_config_option n HUSH
172
173 # disable ipv6 applets
174 if ! use ipv6; then
175 busybox_config_option n FEATURE_IPV6
176 busybox_config_option n TRACEROUTE6
177 busybox_config_option n PING6
178 fi
179
180 if use static && use pam ; then
181 ewarn "You cannot have USE='static pam'. Assuming static is more important."
182 fi
183 busybox_config_option $(usex static n pam) PAM
184 busybox_config_option static STATIC
185 busybox_config_option syslog {K,SYS}LOGD LOGGER
186 busybox_config_option systemd FEATURE_SYSTEMD
187 busybox_config_option math FEATURE_AWK_LIBM
188
189 # all the debug options are compiler related, so punt them
190 busybox_config_option n DEBUG
191 busybox_config_option y NO_DEBUG_LIB
192 busybox_config_option n DMALLOC
193 busybox_config_option n EFENCE
194
195 busybox_config_option selinux SELINUX
196
197 # this opt only controls mounting with <linux-2.6.23
198 busybox_config_option n FEATURE_MOUNT_NFS
199
200 # default a bunch of uncommon options to off
201 local opt
202 for opt in \
203 ADD_SHELL \
204 BEEP BOOTCHARTD \
205 CRONTAB \
206 DC DEVFSD DNSD DPKG{,_DEB} \
207 FAKEIDENTD FBSPLASH FOLD FSCK_MINIX FTP{GET,PUT} \
208 FEATURE_DEVFS \
209 HOSTID HUSH \
210 INETD INOTIFYD IPCALC \
211 LOCALE_SUPPORT LOGNAME LPD \
212 MAKEMIME MKFS_MINIX MSH \
213 OD \
214 RDEV READPROFILE REFORMIME REMOVE_SHELL RFKILL RUN_PARTS RUNSV{,DIR} \
215 SLATTACH SMEMCAP SULOGIN SV{,LOGD} \
216 TASKSET TCPSVD \
217 RPM RPM2CPIO \
218 UDPSVD UUDECODE UUENCODE
219 do
220 busybox_config_option n ${opt}
221 done
222
223 emake -j1 oldconfig > /dev/null
224 }
225
226 src_compile() {
227 unset KBUILD_OUTPUT #88088
228 export SKIP_STRIP=y
229
230 emake V=1 busybox
231 }
232
233 src_install() {
234 unset KBUILD_OUTPUT #88088
235 save_config .config
236
237 into /
238 dodir /bin
239 if use sep-usr ; then
240 # install /ginit to take care of mounting stuff
241 exeinto /
242 newexe busybox_unstripped ginit
243 dosym /ginit /bin/bb
244 dosym bb /bin/busybox
245 else
246 newbin busybox_unstripped busybox
247 dosym busybox /bin/bb
248 fi
249 if use mdev ; then
250 dodir /$(get_libdir)/mdev/
251 use make-symlinks || dosym /bin/bb /sbin/mdev
252 cp "${S}"/examples/mdev_fat.conf "${ED}"/etc/mdev.conf
253
254 exeinto /$(get_libdir)/mdev/
255 doexe "${FILESDIR}"/mdev/*
256
257 newinitd "${FILESDIR}"/mdev.rc.1 mdev
258 fi
259 if use livecd ; then
260 dosym busybox /bin/vi
261 fi
262
263 # add busybox daemon's, bug #444718
264 if busybox_config_enabled FEATURE_NTPD_SERVER; then
265 newconfd "${FILESDIR}/ntpd.confd" "busybox-ntpd"
266 newinitd "${FILESDIR}/ntpd.initd" "busybox-ntpd"
267 fi
268 if busybox_config_enabled SYSLOGD; then
269 newconfd "${FILESDIR}/syslogd.confd" "busybox-syslogd"
270 newinitd "${FILESDIR}/syslogd.initd" "busybox-syslogd"
271 fi
272 if busybox_config_enabled KLOGD; then
273 newconfd "${FILESDIR}/klogd.confd" "busybox-klogd"
274 newinitd "${FILESDIR}/klogd.initd" "busybox-klogd"
275 fi
276 if busybox_config_enabled WATCHDOG; then
277 newconfd "${FILESDIR}/watchdog.confd" "busybox-watchdog"
278 newinitd "${FILESDIR}/watchdog.initd" "busybox-watchdog"
279 fi
280 if busybox_config_enabled UDHCPC; then
281 local path=$(busybox_config_enabled UDHCPC_DEFAULT_SCRIPT)
282 exeinto "${path%/*}"
283 newexe examples/udhcp/simple.script "${path##*/}"
284 fi
285 if busybox_config_enabled UDHCPD; then
286 insinto /etc
287 doins examples/udhcp/udhcpd.conf
288 fi
289
290 # bundle up the symlink files for use later
291 emake DESTDIR="${ED}" install
292 rm _install/bin/busybox
293 # for compatibility, provide /usr/bin/env
294 mkdir -p _install/usr/bin
295 ln -s /bin/env _install/usr/bin/env
296 tar cf busybox-links.tar -C _install . || : #;die
297 insinto /usr/share/${PN}
298 use make-symlinks && doins busybox-links.tar
299
300 dodoc AUTHORS README TODO
301
302 cd docs
303 docinto txt
304 dodoc *.txt
305 docinto pod
306 dodoc *.pod
307 dohtml *.html
308
309 cd ../examples
310 docinto examples
311 dodoc inittab depmod.pl *.conf *.script undeb unrpm
312 }
313
314 pkg_preinst() {
315 if use make-symlinks && [[ ! ${VERY_BRAVE_OR_VERY_DUMB} == "yes" ]] && [[ ${ROOT} == "/" ]] ; then
316 ewarn "setting USE=make-symlinks and emerging to / is very dangerous."
317 ewarn "it WILL overwrite lots of system programs like: ls bash awk grep (bug 60805 for full list)."
318 ewarn "If you are creating a binary only and not merging this is probably ok."
319 ewarn "set env VERY_BRAVE_OR_VERY_DUMB=yes if this is really what you want."
320 die "silly options will destroy your system"
321 fi
322
323 if use make-symlinks ; then
324 mv "${ED}"/usr/share/${PN}/busybox-links.tar "${T}"/ || die
325 fi
326 }
327
328 pkg_postinst() {
329 savedconfig_pkg_postinst
330
331 if use make-symlinks ; then
332 cd "${T}" || die
333 mkdir _install
334 tar xf busybox-links.tar -C _install || die
335 cp -vpPR _install/* "${ROOT}"/ || die "copying links for ${x} failed"
336 fi
337
338 if use sep-usr ; then
339 elog "In order to use the sep-usr support, you have to update your"
340 elog "kernel command line. Add the option:"
341 elog " init=/ginit"
342 elog "To launch a different init than /sbin/init, use:"
343 elog " init=/ginit /sbin/yourinit"
344 elog "To get a rescue shell, you may boot with:"
345 elog " init=/ginit bb"
346 fi
347 }