Gentoo Archives: gentoo-commits

From: "Robin H. Johnson" <robbat2@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-apps/linux-misc-apps/
Date: Wed, 31 Oct 2018 22:21:45
Message-Id: 1541024488.c458bc8077bb2e24441e19271e73399e0d1127a1.robbat2@gentoo
1 commit: c458bc8077bb2e24441e19271e73399e0d1127a1
2 Author: Robin H. Johnson <robbat2 <AT> gentoo <DOT> org>
3 AuthorDate: Wed Oct 31 22:20:31 2018 +0000
4 Commit: Robin H. Johnson <robbat2 <AT> gentoo <DOT> org>
5 CommitDate: Wed Oct 31 22:21:28 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c458bc80
7
8 sys-apps/linux-misc-apps: bump
9
10 Update based on 4.4-r1 ebuild; does not add new tools, just ensures same
11 tools still build.
12
13 Fixes: https://bugs.gentoo.org/634614
14 Signed-off-by: Robin H. Johnson <robbat2 <AT> gentoo.org>
15 Package-Manager: Portage-2.3.49, Repoman-2.3.10
16
17 sys-apps/linux-misc-apps/Manifest | 1 +
18 .../linux-misc-apps/linux-misc-apps-4.19.ebuild | 216 +++++++++++++++++++++
19 2 files changed, 217 insertions(+)
20
21 diff --git a/sys-apps/linux-misc-apps/Manifest b/sys-apps/linux-misc-apps/Manifest
22 index 882f4bba53d..c041cc20d3c 100644
23 --- a/sys-apps/linux-misc-apps/Manifest
24 +++ b/sys-apps/linux-misc-apps/Manifest
25 @@ -1,3 +1,4 @@
26 DIST linux-3.18.tar.xz 80934708 BLAKE2B cf796fa1eb24276470b51bd3754f02932e57c6469e45959893b3714457ba33f0081ff04137990f228e1aae6d42a05073478a3ef932df468af7cd02bf8c8836c4 SHA512 2f0b72466e9bc538a675738aa416573d41bbbd7e3e2ffd5b5b127afde609ebc278cec5a3c37e73479607e957c13f1b4ed9782a3795e0dcc2cf8e550228594009
27 DIST linux-3.6.tar.bz2 82296001 BLAKE2B 454e1c86dd5b7d2f9ff8ba777feda3743b620ecf4325c06b7270b2b1f60d2af2797836b509252e7140980ab0ba620d8fc98dd5d3968d19f8101c9327af262eef SHA512 cbaefc2c4c8ab2251c3345b7b2c88d55a49e3468d8b177b05dd6d96a802efa9a052b1a1ecab8b71298bac97f45259516d88253838332b4fdb4307780ebcddce9
28 +DIST linux-4.19.tar.xz 103117552 BLAKE2B 1dbf16cf410867412d17568fe42bc1e90c034183b654d270b650621ff7664a321950943d0639205bc1ee7ef6210be170c1f2c785a042ed8a4ec5e3a486d890e0 SHA512 ab67cc746b375a8b135e8b23e35e1d6787930d19b3c26b2679787d62951cbdbc3bb66f8ededeb9b890e5008b2459397f9018f1a6772fdef67780b06a4cb9f6f4
29 DIST linux-4.4.tar.xz 87295988 BLAKE2B f260f1858994f5d481fd078c86e51bddbc958f7c5d1586f60dced772e1b1107ecf3aae0558c3e6f39c36f7d3aa1e6cd1e5c64ec9d6f2218f47b98413da6466fb SHA512 13c8459933a8b80608e226a1398e3d1848352ace84bcfb7e6a4a33cb230bbe1ab719d4b58e067283df91ce5311be6d2d595fc8c19e2ae6ecc652499415614b3e
30
31 diff --git a/sys-apps/linux-misc-apps/linux-misc-apps-4.19.ebuild b/sys-apps/linux-misc-apps/linux-misc-apps-4.19.ebuild
32 new file mode 100644
33 index 00000000000..cd2873bba20
34 --- /dev/null
35 +++ b/sys-apps/linux-misc-apps/linux-misc-apps-4.19.ebuild
36 @@ -0,0 +1,216 @@
37 +# Copyright 1999-2018 Gentoo Foundation
38 +# Distributed under the terms of the GNU General Public License v2
39 +
40 +EAPI=5
41 +
42 +inherit versionator eutils toolchain-funcs linux-info autotools flag-o-matic
43 +
44 +DESCRIPTION="Misc tools bundled with kernel sources"
45 +HOMEPAGE="https://kernel.org/"
46 +
47 +LICENSE="GPL-2"
48 +SLOT="0"
49 +KEYWORDS="~amd64 ~ppc ~x86"
50 +IUSE="static-libs tcpd usbip"
51 +
52 +MY_PV="${PV/_/-}"
53 +MY_PV="${MY_PV/-pre/-git}"
54 +
55 +LINUX_V=$(get_version_component_range 1-2)
56 +
57 +if [ ${PV/_rc} != ${PV} ]; then
58 + LINUX_VER=$(get_version_component_range 1-2).$(($(get_version_component_range 3)-1))
59 + PATCH_VERSION=$(get_version_component_range 1-3)
60 + LINUX_PATCH=patch-${PV//_/-}.xz
61 + SRC_URI="mirror://kernel/linux/kernel/v3.x/testing/${LINUX_PATCH}
62 + mirror://kernel/linux/kernel/v3.x/testing/v${PATCH_VERSION}/${LINUX_PATCH}"
63 +elif [ $(get_version_component_count) == 4 ]; then
64 + # stable-release series
65 + LINUX_VER=$(get_version_component_range 1-3)
66 + LINUX_PATCH=patch-${PV}.xz
67 + SRC_URI="mirror://kernel/linux/kernel/v3.x/${LINUX_PATCH}"
68 +else
69 + LINUX_VER=${PV}
70 +fi
71 +
72 +LINUX_SOURCES=linux-${LINUX_VER}.tar.xz
73 +SRC_URI="${SRC_URI} mirror://kernel/linux/kernel/v3.x/${LINUX_SOURCES}"
74 +
75 +# pmtools also provides turbostat
76 +# usbip available in seperate package now
77 +RDEPEND="sys-apps/hwids
78 + >=dev-libs/glib-2.6
79 + >=sys-kernel/linux-headers-$(get_version_component_range 1-2)
80 + usbip? (
81 + !net-misc/usbip
82 + tcpd? ( sys-apps/tcp-wrappers )
83 + virtual/libudev
84 + )
85 + !sys-power/pmtools"
86 +DEPEND="${RDEPEND}
87 + virtual/pkgconfig"
88 +
89 +S="${WORKDIR}/linux-${LINUX_VER}"
90 +
91 +# All of these are integrated with the kernel build system,
92 +# No make install, and ideally build with with the root Makefile
93 +TARGETS_SIMPLE=(
94 + samples/watchdog/watchdog-simple.c
95 + tools/accounting/getdelays.c
96 + tools/cgroup/cgroup_event_listener.c
97 + tools/laptop/freefall/freefall.c
98 + tools/testing/selftests/networking/timestamping/timestamping.c
99 + tools/vm/slabinfo.c
100 + usr/gen_init_cpio.c
101 + # Broken:
102 + #tools/lguest/lguest.c # fails to compile
103 + #tools/vm/page-types.c # page-types.c:(.text+0xe2b): undefined reference to `debugfs__mount', not defined anywhere
104 + #tools/net/bpf_jit_disasm.c # /usr/include/x86_64-pc-linux-gnu/bfd.h:35:2: error: #error config.h must be included before this header
105 +)
106 +# tools/vm/page-types.c - broken, header path issue
107 +# tools/hv/hv_kvp_daemon.c - broken in 3.7 by missing linux/hyperv.h userspace
108 +# Documentation/networking/ifenslave.c - obsolete
109 +# Documentation/ptp/testptp.c - pending linux-headers-3.0
110 +
111 +# These have a broken make install, no DESTDIR
112 +TARGET_MAKE_SIMPLE=(
113 + samples/mei:mei-amt-version
114 + tools/firewire:nosy-dump
115 + tools/iio:iio_event_monitor
116 + tools/iio:iio_generic_buffer
117 + tools/iio:lsiio
118 + tools/laptop/dslm:dslm
119 + tools/power/x86/turbostat:turbostat
120 + tools/power/x86/x86_energy_perf_policy:x86_energy_perf_policy
121 + tools/thermal/tmon:tmon
122 +)
123 +# tools/perf - covered by dev-utils/perf
124 +# tools/usb - testcases only
125 +# tools/virtio - testcaes only
126 +
127 + #for _pattern in {Documentation,scripts,tools,usr,include,lib,"arch/*/include",Makefile,Kbuild,Kconfig}; do
128 +src_unpack() {
129 + unpack ${LINUX_SOURCES}
130 +
131 + MY_A=
132 + for _AFILE in ${A}; do
133 + [[ ${_AFILE} == ${LINUX_SOURCES} ]] && continue
134 + [[ ${_AFILE} == ${LINUX_PATCH} ]] && continue
135 + MY_A="${MY_A} ${_AFILE}"
136 + done
137 + [[ -n ${MY_A} ]] && unpack ${MY_A}
138 +}
139 +
140 +src_prepare() {
141 + if [[ -n ${LINUX_PATCH} ]]; then
142 + epatch "${DISTDIR}"/${LINUX_PATCH}
143 + fi
144 +
145 + pushd tools/usb/usbip/ >/dev/null &&
146 + sed -i 's/-Werror[^ ]* //g' configure.ac &&
147 + eautoreconf -i -f -v &&
148 + popd >/dev/null || die "usbip"
149 +
150 + sed -i \
151 + -e '/^nosy-dump.*LDFLAGS/d' \
152 + -e '/^nosy-dump.*CFLAGS/d' \
153 + -e '/^nosy-dump.*CPPFLAGS/s,CPPFLAGS =,CPPFLAGS +=,g' \
154 + "${S}"/tools/firewire/Makefile
155 +}
156 +
157 +kernel_asm_arch() {
158 + a="${1:${ARCH}}"
159 + case ${a} in
160 + # Merged arches
161 + x86|amd64) echo x86 ;;
162 + ppc*) echo powerpc ;;
163 + # Non-merged
164 + alpha|arm|ia64|m68k|mips|sh|sparc*) echo ${1} ;;
165 + *) die "TODO: Update the code for your asm-ARCH symlink" ;;
166 + esac
167 +}
168 +
169 +src_configure() {
170 + if use usbip; then
171 + pushd tools/usb/usbip/ || die
172 + econf \
173 + $(use_enable static-libs static) \
174 + $(use tcpd || echo --without-tcp-wrappers) \
175 + --with-usbids-dir=/usr/share/misc
176 + popd
177 + fi
178 +}
179 +
180 +src_compile() {
181 + local karch=$(kernel_asm_arch "${ARCH}")
182 + # This is the minimal amount needed to start building host binaries.
183 + #emake allmodconfig ARCH=${karch}
184 + #emake prepare modules_prepare ARCH=${karch}
185 + #touch Module.symvers
186 +
187 + # Now we can start building
188 + append-cflags -I./tools/lib
189 + for s in ${TARGETS_SIMPLE[@]} ; do
190 + dir=$(dirname $s) src=$(basename $s) bin=${src%.c}
191 + einfo "Building $s => $bin"
192 + emake -f /dev/null M=${dir} ARCH=${karch} ${s%.c}
193 + done
194 +
195 + for t in ${TARGET_MAKE_SIMPLE[@]} ; do
196 + dir=${t/:*} target_binfile=${t#*:}
197 + target=${target_binfile/:*} binfile=${target_binfile/*:}
198 + [ -z "${binfile}" ] && binfile=$target
199 + einfo "Building $dir => $binfile (via emake $target)"
200 + emake -C $dir ARCH=${karch} $target
201 + done
202 +
203 + if use usbip; then
204 + emake -C tools/usb/usbip
205 + fi
206 +}
207 +
208 +src_install() {
209 + into /usr
210 + for s in ${TARGETS_SIMPLE[@]} ; do
211 + dir=$(dirname $s) src=$(basename $s) bin=${src%.c}
212 + einfo "Installing $s => $bin"
213 + dosbin ${dir}/${bin}
214 + done
215 +
216 + for t in ${TARGET_MAKE_SIMPLE[@]} ; do
217 + dir=${t/:*} target_binfile=${t#*:}
218 + target=${target_binfile/:*} binfile=${target_binfile/*:}
219 + [ -z "${binfile}" ] && binfile=$target
220 + einfo "Installing $dir => $binfile"
221 + dosbin ${dir}/${binfile}
222 + done
223 +
224 + if use usbip; then
225 + pushd tools/usb/usbip/ >/dev/null || die "usbip"
226 + emake DESTDIR="${D}" install
227 + newdoc README README.usbip
228 + newdoc AUTHORS AUTHORS.usbip
229 + popd >/dev/null
230 + dodoc drivers/usb/usbip/usbip_protocol.txt
231 + fi
232 +
233 + mv -f "${D}"/usr/sbin/{,iio_}generic_buffer
234 +
235 + newconfd "${FILESDIR}"/freefall.confd freefall
236 + newinitd "${FILESDIR}"/freefall.initd freefall
237 + prune_libtool_files
238 +}
239 +
240 +pkg_postinst() {
241 + echo
242 + elog "The cpupower utility is maintained separately at sys-power/cpupower"
243 + elog "The lguest utility no longer builds, and has been dropped."
244 + elog "The hpfall tool has been renamed by upstream to freefall; update your config if needed"
245 + if find /etc/runlevels/ -name hpfall ; then
246 + ewarn "You must change hpfall to freefall in your runlevels!"
247 + fi
248 + if use usbip; then
249 + elog "For using USB/IP you need to enable USBIP_VHCI_HCD in the client"
250 + elog "machine's kernel config and USBIP_HOST on the server."
251 + fi
252 +}