mirror of
https://github.com/flatcar/scripts.git
synced 2025-11-29 22:42:10 +01:00
dev-util/b2: Sync with Gentoo
It's from Gentoo commit 93eefe41527dc757171f76dd9f3c32b8ad925ea4.
This commit is contained in:
parent
cfd78f9121
commit
7dac0dfd65
@ -1,3 +1 @@
|
||||
DIST b2-4.9.3.tar.gz 975934 BLAKE2B 8d16e7227676786408f0d84efb577806e304a9181b89656dad1243b5b0b48e67d4226fa51ea97d4ea10110e4ea86f3ae2884d711fa4b04e36bdaa68dff0a4710 SHA512 8f861074a50720ad5469277a469523ef5f87ef2aab65d745f4c5e6af0ed8f40af91c43cd42b7845982c065974026ce1ecc77a831cd0c698c7e22fa848cc81009
|
||||
DIST b2-4.9.5.tar.gz 977680 BLAKE2B 9025554e4c68257a8d12af9db22c3c3e4c13a5244c7ca474fb935a76fb8fdf2a0a7778756a7b022de90d6585edb758e8dbc54e012f2340ab055b1294709625e8 SHA512 398398e1437554aad0dc123bbf30bd61b26266058b872eb18dd84941cccf3bbc8903944c09add7bf5f05fb8424539fd4358e9b1bcdd4dbfbc84d4f41710e92e6
|
||||
DIST b2-4.9.6.tar.gz 977724 BLAKE2B 15ce459d7051be037bdb477432591baccb4e5339a16385a63205c19815766406f631879f0e1f986e184640466f5b6af5ade72d248975731528032a8e735e483e SHA512 a3dc9dccbf1221971607a15df642d4ad9029c1acaf329e419f363a6e6ddb6062a8ef595aa49810dc2ff3a3f333bfbaed7384819a143cc5847a95daf6fd48ccb1
|
||||
|
||||
@ -1,67 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit edo flag-o-matic toolchain-funcs
|
||||
|
||||
MY_PV="$(ver_rs 1- _)"
|
||||
|
||||
DESCRIPTION="A system for large project software construction, simple to use and powerful"
|
||||
HOMEPAGE="https://www.bfgroup.xyz/b2/"
|
||||
SRC_URI="https://github.com/bfgroup/b2/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${P}/src"
|
||||
|
||||
LICENSE="Boost-1.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="examples"
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="!dev-util/boost-build"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-4.9.2-disable_python_rpath.patch
|
||||
"${FILESDIR}"/${PN}-4.9.2-darwin-gentoo-toolchain.patch
|
||||
"${FILESDIR}"/${PN}-4.9.2-add-none-feature-options.patch
|
||||
"${FILESDIR}"/${PN}-4.9.2-no-implicit-march-flags.patch
|
||||
"${FILESDIR}"/${PN}-4.9.2-odr.patch
|
||||
"${FILESDIR}"/${PN}-4.9.3-fix-apple-m1-crash-by-explicit-pointer-cast.patch
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
# need to enable LFS explicitly for 64-bit offsets on 32-bit hosts (#761100)
|
||||
append-lfs-flags
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cd engine || die
|
||||
|
||||
# upstream doesn't want separate flags for CPPFLAGS/LDFLAGS
|
||||
# https://github.com/bfgroup/b2/pull/187#issuecomment-1335688424
|
||||
edo ${CONFIG_SHELL:-${BASH}} ./build.sh cxx --cxx="$(tc-getCXX)" --cxxflags="${CXXFLAGS} ${CPPFLAGS} ${LDFLAGS}" -d+2 --without-python
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Forget tests, b2 is a lost cause
|
||||
:
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin engine/b2
|
||||
|
||||
insinto /usr/share/b2/src
|
||||
doins -r "${FILESDIR}/site-config.jam" \
|
||||
bootstrap.jam build-system.jam ../example/user-config.jam \
|
||||
build kernel options tools util
|
||||
|
||||
find "${ED}"/usr/share/b2/src -iname '*.py' -delete || die
|
||||
|
||||
dodoc ../notes/{changes,release_procedure,build_dir_option,relative_source_paths}.txt
|
||||
|
||||
if use examples; then
|
||||
docinto examples
|
||||
dodoc -r ../example/.
|
||||
docompress -x /usr/share/doc/${PF}/examples
|
||||
fi
|
||||
}
|
||||
@ -1,66 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit edo flag-o-matic toolchain-funcs
|
||||
|
||||
MY_PV="$(ver_rs 1- _)"
|
||||
|
||||
DESCRIPTION="A system for large project software construction, simple to use and powerful"
|
||||
HOMEPAGE="https://www.bfgroup.xyz/b2/"
|
||||
SRC_URI="https://github.com/bfgroup/b2/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${P}/src"
|
||||
|
||||
LICENSE="Boost-1.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="examples"
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="!dev-util/boost-build"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-4.9.2-disable_python_rpath.patch
|
||||
"${FILESDIR}"/${PN}-4.9.2-darwin-gentoo-toolchain.patch
|
||||
"${FILESDIR}"/${PN}-4.9.2-add-none-feature-options.patch
|
||||
"${FILESDIR}"/${PN}-4.9.2-no-implicit-march-flags.patch
|
||||
"${FILESDIR}"/${PN}-4.9.2-odr.patch
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
# need to enable LFS explicitly for 64-bit offsets on 32-bit hosts (#761100)
|
||||
append-lfs-flags
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cd engine || die
|
||||
|
||||
# upstream doesn't want separate flags for CPPFLAGS/LDFLAGS
|
||||
# https://github.com/bfgroup/b2/pull/187#issuecomment-1335688424
|
||||
edo ${CONFIG_SHELL:-${BASH}} ./build.sh cxx --cxx="$(tc-getCXX)" --cxxflags="${CXXFLAGS} ${CPPFLAGS} ${LDFLAGS}" -d+2 --without-python
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Forget tests, b2 is a lost cause
|
||||
:
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin engine/b2
|
||||
|
||||
insinto /usr/share/b2/src
|
||||
doins -r "${FILESDIR}/site-config.jam" \
|
||||
bootstrap.jam build-system.jam ../example/user-config.jam \
|
||||
build kernel options tools util
|
||||
|
||||
find "${ED}"/usr/share/b2/src -iname '*.py' -delete || die
|
||||
|
||||
dodoc ../notes/{changes,release_procedure,build_dir_option,relative_source_paths}.txt
|
||||
|
||||
if use examples; then
|
||||
docinto examples
|
||||
dodoc -r ../example/.
|
||||
docompress -x /usr/share/doc/${PF}/examples
|
||||
fi
|
||||
}
|
||||
@ -1,66 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit edo flag-o-matic toolchain-funcs
|
||||
|
||||
MY_PV="$(ver_rs 1- _)"
|
||||
|
||||
DESCRIPTION="A system for large project software construction, simple to use and powerful"
|
||||
HOMEPAGE="https://www.bfgroup.xyz/b2/"
|
||||
SRC_URI="https://github.com/bfgroup/b2/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${P}/src"
|
||||
|
||||
LICENSE="Boost-1.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="examples"
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="!dev-util/boost-build"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-4.9.2-disable_python_rpath.patch
|
||||
"${FILESDIR}"/${PN}-4.9.2-darwin-gentoo-toolchain.patch
|
||||
"${FILESDIR}"/${PN}-4.9.2-add-none-feature-options.patch
|
||||
"${FILESDIR}"/${PN}-4.9.2-no-implicit-march-flags.patch
|
||||
"${FILESDIR}"/${PN}-4.9.2-odr.patch
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
# need to enable LFS explicitly for 64-bit offsets on 32-bit hosts (#761100)
|
||||
append-lfs-flags
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cd engine || die
|
||||
|
||||
# upstream doesn't want separate flags for CPPFLAGS/LDFLAGS
|
||||
# https://github.com/bfgroup/b2/pull/187#issuecomment-1335688424
|
||||
edo ${CONFIG_SHELL:-${BASH}} ./build.sh cxx --cxx="$(tc-getCXX)" --cxxflags="${CXXFLAGS} ${CPPFLAGS} ${LDFLAGS}" -d+2 --without-python
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Forget tests, b2 is a lost cause
|
||||
:
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin engine/b2
|
||||
|
||||
insinto /usr/share/b2/src
|
||||
doins -r "${FILESDIR}/site-config.jam" \
|
||||
bootstrap.jam build-system.jam ../example/user-config.jam \
|
||||
build kernel options tools util
|
||||
|
||||
find "${ED}"/usr/share/b2/src -iname '*.py' -delete || die
|
||||
|
||||
dodoc ../notes/{changes,release_procedure,build_dir_option,relative_source_paths}.txt
|
||||
|
||||
if use examples; then
|
||||
docinto examples
|
||||
dodoc -r ../example/.
|
||||
docompress -x /usr/share/doc/${PF}/examples
|
||||
fi
|
||||
}
|
||||
@ -14,7 +14,7 @@ S="${WORKDIR}/${P}/src"
|
||||
|
||||
LICENSE="Boost-1.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="examples"
|
||||
RESTRICT="test"
|
||||
|
||||
|
||||
@ -1,55 +0,0 @@
|
||||
https://github.com/bfgroup/b2/issues/152
|
||||
https://github.com/bfgroup/b2/pull/214
|
||||
https://bugs.gentoo.org/895524
|
||||
|
||||
From 62dc6ff74a0b9717b4a8dd61ce06770e6fb7c177 Mon Sep 17 00:00:00 2001
|
||||
From: Yifeng Li <tomli@tomli.me>
|
||||
Date: Mon, 20 Feb 2023 09:52:32 +0000
|
||||
Subject: [PATCH] Fix #152 crash on Apple M1 by casting 0 to (OBJECT *)
|
||||
explicitly.
|
||||
|
||||
Currently, when the NULL-terminated variadic function call_rule()
|
||||
is invoked, the value "0" is passed as the last argument to act
|
||||
as a terminator. However, this is an integer value, which is
|
||||
incompatible with the pointer data type expected by call_rule().
|
||||
|
||||
This is undefined behavior in C, correct operation is not
|
||||
guaranteed. In fact, it causes b2 to crash on Apple M1 when GCC
|
||||
is used - the loop is not terminated when it should, instead, it
|
||||
keeps running, creating the following error:
|
||||
|
||||
> lol_add failed due to reached limit of 19 elements
|
||||
|
||||
In some cases, it can even corrupt the internal state of the program,
|
||||
creating an infinite loop.
|
||||
|
||||
This commit fixes the problem by explicitly casting the value 0 to
|
||||
the correct pointer type (OBJECT *).
|
||||
|
||||
Signed-off-by: Yifeng Li <tomli@tomli.me>
|
||||
---
|
||||
src/engine/modules/property-set.cpp | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/engine/modules/property-set.cpp b/src/engine/modules/property-set.cpp
|
||||
index 6e190a7639..b0d3c2dab8 100644
|
||||
--- src/engine/modules/property-set.cpp
|
||||
+++ src/engine/modules/property-set.cpp
|
||||
@@ -162,7 +162,7 @@ LIST * property_set_create( FRAME * frame, int flags )
|
||||
OBJECT * rulename = object_new( "new" );
|
||||
OBJECT * varname = object_new( "self.raw" );
|
||||
LIST * val = call_rule( rulename, frame,
|
||||
- list_new( object_new( "property-set" ) ), 0 );
|
||||
+ list_new( object_new( "property-set" ) ), (OBJECT *) 0 );
|
||||
LISTITER iter, end;
|
||||
object_free( rulename );
|
||||
pos->value = object_copy( list_front( val ) );
|
||||
@@ -183,7 +183,7 @@ LIST * property_set_create( FRAME * frame, int flags )
|
||||
import_module( imports, frame->module );
|
||||
rulename = object_new( "errors.error" );
|
||||
call_rule( rulename, frame,
|
||||
- list_new( object_new( message->value ) ), 0 );
|
||||
+ list_new( object_new( message->value ) ), (OBJECT *) 0 );
|
||||
/* unreachable */
|
||||
string_free( message );
|
||||
list_free( imports );
|
||||
Loading…
x
Reference in New Issue
Block a user