diff options
| author | root <root@alpha.trunkmasters.com> | 2026-06-17 03:01:54 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-06-17 03:01:54 -0500 |
| commit | 704b2332929c5ee3a704315e1b371a864f9f463e (patch) | |
| tree | 5112e7a1a49250008a19bd1c18e2142a8a5ed3f3 /dev-build | |
| parent | 7c679258085e25fd48f6bc6a44d6554b82d83c09 (diff) | |
| download | baldeagleos-repo-704b2332929c5ee3a704315e1b371a864f9f463e.tar.gz baldeagleos-repo-704b2332929c5ee3a704315e1b371a864f9f463e.tar.xz baldeagleos-repo-704b2332929c5ee3a704315e1b371a864f9f463e.zip | |
Adding metadata
Diffstat (limited to 'dev-build')
| -rw-r--r-- | dev-build/b2/b2-5.4.2-r1.ebuild | 73 | ||||
| -rw-r--r-- | dev-build/b2/files/b2-5.4.2-fix-crash-with-empty-string.patch | 50 | ||||
| -rw-r--r-- | dev-build/bazelisk/bazelisk-1.29.0.ebuild | 2 |
3 files changed, 124 insertions, 1 deletions
diff --git a/dev-build/b2/b2-5.4.2-r1.ebuild b/dev-build/b2/b2-5.4.2-r1.ebuild new file mode 100644 index 000000000000..4494de986366 --- /dev/null +++ b/dev-build/b2/b2-5.4.2-r1.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2026 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 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-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}-5.4.2-no-implicit-march-flags.patch + "${FILESDIR}"/${PN}-5.4.2-fix-crash-with-empty-string.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 + + # don't call windres since it leads to broken relocations + export B2_DONT_EMBED_MANIFEST=1 + + # 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="-pthread ${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" \ + build-system.jam ../example/user-config.jam \ + build contrib options tools util + + find "${ED}"/usr/share/b2/src -iname '*.py' -delete || die + + dodoc ../notes/relative_source_paths.txt + + if use examples; then + docinto examples + dodoc -r ../example/. + docompress -x /usr/share/doc/${PF}/examples + fi +} diff --git a/dev-build/b2/files/b2-5.4.2-fix-crash-with-empty-string.patch b/dev-build/b2/files/b2-5.4.2-fix-crash-with-empty-string.patch new file mode 100644 index 000000000000..5b5fe372ac28 --- /dev/null +++ b/dev-build/b2/files/b2-5.4.2-fix-crash-with-empty-string.patch @@ -0,0 +1,50 @@ +https://github.com/bfgroup/b2/commit/708353cdeb6006757e7c6971283efb53f718ae25 +https://bugs.gentoo.org/970330 +Fixed patch path to accommodate $S. + +From: zyk2507 <93830642+zyk2507@users.noreply.github.com> +Date: Sun, 1 Feb 2026 12:36:17 +0800 +Subject: [PATCH] Fix crash in var_defines when define string is empty (#535) +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +* Fix crash in var_defines when define string is empty + +b2 aborts in var_defines on empty define + +* Redo no-value error fix to keep previous flow. + +Still avoid errors for empty variables, but do so while not early continue, and to keep the use of string_view. + +--------- + +Co-authored-by: René Ferdinand Rivera Morell <grafikrobot@gmail.com> +--- a/engine/variable.cpp ++++ b/engine/variable.cpp +@@ -78,8 +78,14 @@ void var_defines(struct module_t * module, const char * const * e, int preproces + for (; *e; ++e) + { + ::b2::string_view def(*e); +- ::b2::string_view var(def.begin(), def.find('=')); +- ::b2::string_view val(def.begin() + var.size() + 1); ++ ::b2::string_view var = def; ++ ::b2::string_view val; ++ auto eq = def.find('='); ++ if (eq != ::b2::string_view::npos) ++ { ++ var = ::b2::string_view(def.begin(), eq); ++ val = ::b2::string_view(def.begin() + eq + 1); ++ } + b2::jam::variable jam_var { module, + std::string { var.begin(), var.end() }.c_str() }; + // std::printf(">> var_defines: *e = %s\n", *e); +@@ -89,7 +95,7 @@ void var_defines(struct module_t * module, const char * const * e, int preproces + // } + + // No value to set var with. +- if (var.size() == def.size()) continue; ++ if (val.empty()) continue; + + // Skip pre-processing, to just set the raw value. + if (preprocess == 0) diff --git a/dev-build/bazelisk/bazelisk-1.29.0.ebuild b/dev-build/bazelisk/bazelisk-1.29.0.ebuild index e3a64c3ca084..4f0dbabc4a35 100644 --- a/dev-build/bazelisk/bazelisk-1.29.0.ebuild +++ b/dev-build/bazelisk/bazelisk-1.29.0.ebuild @@ -16,7 +16,7 @@ SRC_URI=" LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="~amd64 ~arm64" +KEYWORDS="amd64 arm64" IUSE="+bazel-symlink" DOCS=( CONTRIBUTING.md README.md ) |
