aboutsummaryrefslogtreecommitdiff
blob: 03d1f88fe802e5eeec8250b7b39a4e552e6e9e7a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# Copyright 2019-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

# distcc is known to fail compiling boost and will fallback
# to local processing; Even when using distcc pump mode.
DISABLE_DISTCC=yes

MY_PV="${PV//./_}"
S="${WORKDIR}/boost_${MY_PV}/tools/build/src"
QA_IGNORE_DYNAMICALLY_LINKED_PROGRAM='(bjam|b2)$'

src_compile() {
	cd engine || die "Failed to chdir to '${S}/engine'!"

	# Using BUILD CXX here because the host system
	# building the initramfs must be able to execute created b2 program
	local myargs=(
		./build.sh
		cxx
		--cxx="$(tc-getBUILD_CXX)"
		--cxxflags="${CXXFLAGS}"
		-d+2
		--without-python
	)

	gkexec "${myargs[*]}"
}

src_install() {
	mkdir -p "${D}"/usr/bin \
		|| die "Failed to create '${D}/usr/bin'!"

	cp --target-directory="${D}/usr/bin" engine/{bjam,b2} \
		|| die "Failed to install 'engine/{bjam,b2}' to '${D}/usr/bin'!"

	mkdir -p "${D}"/usr/share/boost-build \
		|| die "Failed to create '${D}/usr/share/boost-build'!"

	cp \
		--recursive \
		--target-directory="${D}/usr/share/boost-build" \
		../boost-build.jam \
		bootstrap.jam \
		build-system.jam \
		../example/user-config.jam \
		build \
		kernel \
		options \
		tools \
		util \
		|| die "Failed to copy *.jam files to '${D}/usr/share/boost-build'!"

	find "${D}/usr/share/boost-build" -iname "*.py" -delete \
		|| die "Failed to remove python files"

	echo 'variant gentoorelease : release : <optimization>none <debug-symbols>none <runtime-link>shared ;' > "${D}/usr/share/boost-build/site-config.jam" \
		|| die "Failed to create '${D}/usr/share/boost-build/site-config.jam'!"
}