public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/build2/
Date: Wed, 20 Dec 2023 03:44:52 +0000 (UTC)	[thread overview]
Message-ID: <1703043848.be3984ef50b0c59df17d6202f6bd20334f963735.sam@gentoo> (raw)

commit:     be3984ef50b0c59df17d6202f6bd20334f963735
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 20 03:21:35 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Dec 20 03:44:08 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=be3984ef

dev-util/build2: add 0.16.0

Closes: https://bugs.gentoo.org/916146
Closes: https://bugs.gentoo.org/914425
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-util/build2/Manifest             |   1 +
 dev-util/build2/build2-0.16.0.ebuild | 143 +++++++++++++++++++++++++++++++++++
 2 files changed, 144 insertions(+)

diff --git a/dev-util/build2/Manifest b/dev-util/build2/Manifest
index 6b2a52834c2d..025ba8f3b810 100644
--- a/dev-util/build2/Manifest
+++ b/dev-util/build2/Manifest
@@ -1,2 +1,3 @@
 DIST build2-toolchain-0.13.0.tar.xz 4218940 BLAKE2B ed27290df21e5db843325b3e42c43c6934ce8f2b9b157538b921f9cfe3a7dccc3b56e261053373553cbd7fbff39e912ffe2282f812d0e6f158749ed5748d5e33 SHA512 0485872acd40beb700739b2995f76efcc9811dd52a38ee049576e45fcb5a7d7ae9c718beca8aeab9ab3f1c5e0270d3946f2335f88ec19476577c195417c2dbd4
 DIST build2-toolchain-0.14.0.tar.xz 4687616 BLAKE2B 98b2ec93c18027cbb3294650b3ad5d3dc97c1f06a6580437eac2db0297d3517cf327179f3a7c6efc611bffed5d028a034382d408ca58a976311d50a26534323c SHA512 d238a4ddfce8506b51b3b775738e818e7e0b36961a09ae0912c0c8688057b8393afebd4c0a28c6e6827c2e72ad5b82bc5e1231f798a66c2bb86b2b1e4ece73ef
+DIST build2-toolchain-0.16.0.tar.xz 5545392 BLAKE2B daefa8745cd342b0de7d74c3b66e3811b95fec9b8c14b29b1fd030d796a31586e0ef401b296cdae5a2d27cf9c337092b707e5fb0673356edff35800bb4be5004 SHA512 f926f3be07287ae8d0ff44e04fdee8c80982db2fa9e33012afb3fe21ee6973d771a3df33a7b976cc714c905d443020501dc96ea3546c76600760c3574e6ae625

diff --git a/dev-util/build2/build2-0.16.0.ebuild b/dev-util/build2/build2-0.16.0.ebuild
new file mode 100644
index 000000000000..e823b9f35655
--- /dev/null
+++ b/dev-util/build2/build2-0.16.0.ebuild
@@ -0,0 +1,143 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN=build2-toolchain
+MY_P="${MY_PN}-${PV}"
+
+inherit toolchain-funcs multiprocessing
+
+DESCRIPTION="Cross-platform toolchain for building and packaging C++ code"
+HOMEPAGE="https://build2.org"
+SRC_URI="https://download.build2.org/${PV}/${MY_P}.tar.xz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+	~dev-cpp/libodb-2.5.0_beta25
+	~dev-cpp/libodb-sqlite-2.5.0_beta25
+	dev-db/sqlite:3
+"
+BDEPEND="virtual/pkgconfig"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-0.14.0-update-for-install.patch
+)
+
+b() {
+	local myargs=(
+		--jobs $(makeopts_jobs)
+		--verbose 3
+	)
+	export LD_LIBRARY_PATH="${S}/libbutl/libbutl:${S}/build2/libbuild2:${S}/build2/libbuild2/bash:${S}/build2/libbuild2/in:${S}/build2/libbuild2/bin:${S}/build2/libbuild2/c:${S}/build2/libbuild2/cc:${S}/build2/libbuild2/cxx:${S}/build2/libbuild2/version:${S}/libpkgconf/libpkgconf:${LD_LIBRARY_PATH}"
+	set -- "${S}"/build2/build2/b-boot "${@}" "${myargs[@]}"
+	echo "${@}"
+	"${@}" || die "${@} failed"
+}
+
+src_prepare() {
+	# Unbundle dev-cpp/libodb and dev-cpp/libodb-sqlite
+	printf 'cxx.libs += %s\ncxx.poptions += %s\n' \
+		"-L${EPREFIX}/usr/$(get_libdir) $($(tc-getPKG_CONFIG) sqlite3 --libs)" \
+		"$($(tc-getPKG_CONFIG) sqlite3 --cflags)" >> \
+		libodb-sqlite/buildfile \
+		|| die
+	sed -i \
+		-e 's:libsqlite3[/]\?::' \
+		buildfile build/bootstrap.build \
+		|| die
+	for i in build2/build2/buildfile build2/libbuild2/buildfile; do
+		printf 'cxx.libs += %s\ncxx.poptions += %s\n' \
+			   "$($(tc-getPKG_CONFIG) libodb --libs)" \
+			   "$($(tc-getPKG_CONFIG) libodb --cflags)" >> \
+			   "${i}" \
+			|| die
+		printf 'cxx.libs += %s\ncxx.poptions += %s\n' \
+			   "$($(tc-getPKG_CONFIG) libodb-sqlite --libs)" \
+			   "$($(tc-getPKG_CONFIG) libodb-sqlite --cflags)" >> \
+			   "${i}" \
+			|| die
+	done
+	sed -i \
+		-e 's:libodb-sqlite[/]\?::' \
+		-e 's:libodb[/]\?::' \
+		buildfile build/bootstrap.build \
+		|| die
+
+	if has_version dev-util/pkgconf; then
+		for i in build2/build2/buildfile build2/libbuild2/buildfile; do
+			printf 'cxx.libs += %s\ncxx.poptions += %s\n' \
+				"$($(tc-getPKG_CONFIG) libpkgconf --libs)" \
+				"$($(tc-getPKG_CONFIG) libpkgconf --cflags)" >> \
+				"${i}" \
+				|| die
+		done
+		sed \
+			-e 's:libpkgconf[/]\?::' \
+			-i buildfile build/bootstrap.build \
+			|| die
+	fi
+
+	default
+}
+
+src_configure() {
+	emake -C build2 -f bootstrap.gmake \
+		CXX=$(tc-getCXX) \
+		CXXFLAGS="${CXXFLAGS}" \
+		LDFLAGS="${LDFLAGS}"
+
+	b configure \
+		config.cxx="$(tc-getCXX)" \
+		config.cxx.coptions="${CXXFLAGS}" \
+		config.cxx.loptions="${LDFLAGS}" \
+		config.c="$(tc-getCC)" \
+		config.cc.coptions="${CFLAGS}" \
+		config.cc.loptions="${LDFLAGS}" \
+		config.bin.ar="$(tc-getAR)" \
+		config.bin.ranlib="$(tc-getRANLIB)" \
+		config.bin.lib=shared \
+		config.install.root="${EPREFIX}"/usr \
+		config.install.lib="${EPREFIX}"/usr/$(get_libdir) \
+		config.install.doc="${EPREFIX}"/usr/share/doc/${PF}
+}
+
+src_compile() {
+	b update-for-install
+	use test && b update-for-test
+}
+
+src_test() {
+	b test
+}
+
+src_install() {
+	b install: build2/ bpkg/ bdep/ libbuild2-kconfig/ \
+		config.install.chroot="${D}"
+	rm -rf "${ED}"/usr/include/odb \
+	   "${ED}"/usr/include/pkgconf/libpkgconf \
+		|| die
+	rm -f "${ED}"/usr/include/sqlite3.h \
+	   "${ED}"/usr/include/sqlite3ext.h \
+	   "${ED}"/usr/$(get_libdir)/libodb.so \
+	   "${ED}"/usr/$(get_libdir)/libodb-*.so \
+	   "${ED}"/usr/$(get_libdir)/libodb-sqlite.so \
+	   "${ED}"/usr/$(get_libdir)/libodb-sqlite-*.so \
+	   "${ED}"/usr/$(get_libdir)/libpkgconf.so \
+	   "${ED}"/usr/$(get_libdir)/libsqlite3.so \
+	   "${ED}"/usr/$(get_libdir)/pkgconfig/libodb-sqlite.pc \
+	   "${ED}"/usr/$(get_libdir)/pkgconfig/libodb.shared.pc \
+	   "${ED}"/usr/$(get_libdir)/pkgconfig/libodb-sqlite.shared.pc \
+	   "${ED}"/usr/$(get_libdir)/pkgconfig/libpkgconf.pc \
+	   "${ED}"/usr/$(get_libdir)/pkgconfig/libodb.pc \
+	   || die
+	mkdir -p "${ED}"/usr/share/doc/${PF}/html || die
+	mv -f "${ED}"/usr/share/doc/${PF}/*.xhtml "${ED}"/usr/share/doc/${PF}/html || die
+}


             reply	other threads:[~2023-12-20  3:44 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-20  3:44 Sam James [this message]
  -- strict thread matches above, loose matches on Subject: below --
2020-07-27  6:26 [gentoo-commits] repo/gentoo:master commit in: dev-util/build2/ Mark Wright
2020-07-21 10:56 Mark Wright
2020-07-21 10:56 Mark Wright
2020-07-21  3:08 Mark Wright

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1703043848.be3984ef50b0c59df17d6202f6bd20334f963735.sam@gentoo \
    --to=sam@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox