mirror of
https://github.com/flatcar/scripts.git
synced 2025-11-29 14:31:46 +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
|
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"
|
LICENSE="Boost-1.0"
|
||||||
SLOT="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"
|
IUSE="examples"
|
||||||
RESTRICT="test"
|
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