commit:     12d392710984ee1d107824136f8080ab0c351fd7
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Fri Nov  4 16:48:57 2022 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sun Nov 20 08:30:36 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=12d39271

dev-util/kbuild: add 0.1.9998.3572

Add this unkeyworded, needs more testing.

It can be used to compile virtualbox-7+, but fails for 6.x

Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 dev-util/kbuild/Manifest                           |  1 +
 .../files/kbuild-0.1.9998.3572-fix-bison.patch     | 15 +++++
 .../files/kbuild-0.1.9998.3572-fix-lto.patch       | 11 ++++
 dev-util/kbuild/kbuild-0.1.9998.3572.ebuild        | 66 ++++++++++++++++++++++
 4 files changed, 93 insertions(+)

diff --git a/dev-util/kbuild/Manifest b/dev-util/kbuild/Manifest
index 2b1360cda901..bcd3da9adc45 100644
--- a/dev-util/kbuild/Manifest
+++ b/dev-util/kbuild/Manifest
@@ -1,2 +1,3 @@
 DIST kbuild-0.1.9998.3407-src.tar.xz 2351596 BLAKE2B 
ed562a739831c465ba66b2c357b1ab52cb072e61fa597d96d9e66e1b57a7f790c7e37fc82ef7ff49114b0cb4cb623e558d96864e98ca36bd42fe16e58e863dc7
 SHA512 
0a1fddff595f7ccfdb65a1a660c82860f132796b42149b8b40808d0df489312dcd96402236150c8ec5ec32c1cc142ce7af1150e10fdb83bf798e4d690dd64314
 DIST kbuild-0.1.9998.3499-src.tar.xz 2371580 BLAKE2B 
847c5c67ded37ca87228ff7164d6c7f2f670a57f2fd94d6d0bf4f8896266e7fe5442666c03dbda016564a52dc91d10be83f0d4b0ef5093db0f5210ac8d5f3aaa
 SHA512 
eebdcd1d2fa71313edd764d45a4aa3580078af22d7c5fed32d3d139a4f41c4e028282fdfdda0ee9b617ed0e8e63b8f5d065b3cf6647f08fe446560938b7577fc
+DIST kbuild-0.1.9998.3572-src.tar.xz 3973848 BLAKE2B 
103e42d719fd77bc5c55aea48bdfd01c8ad136529cc76cc8c1297f87e21e5d4e2e7149f9321c5174808613a84331dbea8bb4c0a7662eb2de9e1045c8ad365047
 SHA512 
96bb5e1759990bf3acaca4b0ba7c02926c6607b0cd94f7fca222b13eee5c3364c64b35e3473c5cee45fa094cb2b851ac9f3a3a9fe60cff894baf46238ccb4006

diff --git a/dev-util/kbuild/files/kbuild-0.1.9998.3572-fix-bison.patch 
b/dev-util/kbuild/files/kbuild-0.1.9998.3572-fix-bison.patch
new file mode 100644
index 000000000000..822194b1c98b
--- /dev/null
+++ b/dev-util/kbuild/files/kbuild-0.1.9998.3572-fix-bison.patch
@@ -0,0 +1,15 @@
+--- a/src/kash/Makefile.kmk    2022-11-12 16:42:14.195927909 +0200
++++ b/src/kash/Makefile.kmk    2022-11-12 17:09:46.212159615 +0200
+@@ -210,8 +210,11 @@
+ kash_USES = lex yacc
+ kash_LEXTOOL = FLEX
+ kash_LEXFLAGS = -8
+-#kash_YACCTOOL = BISON
++ifneq (,$(shell bison -V))
++kash_YACCTOOL = BISON
++else
+ kash_YACCTOOL = YACC
++endif
+ kash_YACCFLAGS = -ld
+ kash_SOURCES += \
+       arith.y \

diff --git a/dev-util/kbuild/files/kbuild-0.1.9998.3572-fix-lto.patch 
b/dev-util/kbuild/files/kbuild-0.1.9998.3572-fix-lto.patch
new file mode 100644
index 000000000000..94eb14ee6cb6
--- /dev/null
+++ b/dev-util/kbuild/files/kbuild-0.1.9998.3572-fix-lto.patch
@@ -0,0 +1,11 @@
+--- a/src/kmk/remake.c
++++ b/src/kmk/remake.c
+@@ -417,7 +417,7 @@
+       if (!keep_going_flag && file->parent == 0)
+         {
+           const char *msg_joke = 0;
+-          extern struct dep *goals;
++          extern struct goaldep *goals;
+ 
+           /* classics */
+           if (!strcmp (file->name, "fire")

diff --git a/dev-util/kbuild/kbuild-0.1.9998.3572.ebuild 
b/dev-util/kbuild/kbuild-0.1.9998.3572.ebuild
new file mode 100644
index 000000000000..185af8e39997
--- /dev/null
+++ b/dev-util/kbuild/kbuild-0.1.9998.3572.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools toolchain-funcs
+
+DESCRIPTION="A makefile framework for writing simple makefiles for complex 
tasks"
+HOMEPAGE="https://trac.netlabs.org/kbuild/wiki";
+SRC_URI="https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${P}-src.tar.xz";
+
+LICENSE="GPL-3+"
+SLOT="0"
+#KEYWORDS="~amd64 ~x86"        # for testing only.  This version is buggy
+IUSE=""
+
+BDEPEND="
+       sys-apps/texinfo
+       sys-devel/flex
+       sys-devel/gettext
+       virtual/pkgconfig
+       virtual/yacc
+"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-0.1.9998.3407-unknown_configure_opt.patch"
+       "${FILESDIR}/${PN}-0.1.5-gentoo-docdir.patch"
+       "${FILESDIR}/${PN}-0.1.9998_pre20120806-qa.patch"
+       "${FILESDIR}/${PN}-0.1.9998_pre20110817-kash-link-pthread.patch"
+       "${FILESDIR}/${PN}-0.1.9998.3572-fix-bison.patch"
+       "${FILESDIR}/${PN}-0.1.9998.3572-fix-lto.patch"
+)
+
+pkg_setup() {
+       # Package fails with distcc (bug #255371)
+       export DISTCC_DISABLE=1
+}
+
+src_prepare() {
+       default
+
+       # Add a file with the svn revision this package was pulled from
+       printf '%s\n' "KBUILD_SVN_REV := $(ver_cut 4)" \
+               > SvnInfo.kmk || die
+
+       cd "${S}/src/kmk" || die
+       eautoreconf
+       cd "${S}/src/sed" || die
+       eautoreconf
+
+       sed -e "s@_LDFLAGS\.$(tc-arch)*.*=@& ${LDFLAGS}@g" \
+               -e "s@_CFLAGS\.$(tc-arch)*.*=@& ${CFLAGS}@g" \
+               -e "s@_CXXFLAGS\.$(tc-arch)*.*=@& ${CXXFLAGS}@g" \
+               -i "${S}"/Config.kmk || die #332225
+       tc-export CC PKG_CONFIG RANLIB #AR does not work here
+}
+
+src_compile() {
+       kBuild/env.sh --full emake -f bootstrap.gmk AUTORECONF=true 
AR="$(tc-getAR)" \
+               || die "bootstrap failed"
+}
+
+src_install() {
+       kBuild/env.sh kmk NIX_INSTALL_DIR=/usr PATH_INS="${D}" install \
+               || die "install failed"
+}

Reply via email to