commit: f991589ceb5b3596bab7a2c52cd47f4f6d94ca8a Author: Viorel Munteanu <ceamac <AT> gentoo <DOT> org> AuthorDate: Sun Nov 13 08:15:40 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=f991589c
dev-util/kbuild: fix lto, cflags, dependencies Fix compilation with bison, lto and custom cflags Closes: https://bugs.gentoo.org/734354 Closes: https://bugs.gentoo.org/448862 Closes: https://bugs.gentoo.org/858386 Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org> dev-util/kbuild/kbuild-0.1.9998.3499.ebuild | 41 +++++++-------------------- dev-util/kbuild/kbuild-9999.ebuild | 43 ++++++++--------------------- 2 files changed, 21 insertions(+), 63 deletions(-) diff --git a/dev-util/kbuild/kbuild-0.1.9998.3499.ebuild b/dev-util/kbuild/kbuild-0.1.9998.3499.ebuild index ef85feb53592..2954327d377c 100644 --- a/dev-util/kbuild/kbuild-0.1.9998.3499.ebuild +++ b/dev-util/kbuild/kbuild-0.1.9998.3499.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -7,7 +7,7 @@ inherit autotools toolchain-funcs MY_P="${P}-src" DESCRIPTION="A makefile framework for writing simple makefiles for complex tasks" -HOMEPAGE="http://svn.netlabs.org/kbuild/wiki" +HOMEPAGE="https://trac.netlabs.org/kbuild/wiki" #SRC_URI="ftp://ftp.netlabs.org/pub/${PN}/${MY_P}.tar.gz" SRC_URI="https://dev.gentoo.org/~polynomial-c/${MY_P}.tar.xz" @@ -16,20 +16,13 @@ SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="" -# We cannot depend on virtual/yacc until bug #734354 has been fixed -DEPEND=" +BDEPEND=" sys-apps/texinfo sys-devel/flex sys-devel/gettext virtual/pkgconfig - || ( - dev-util/byacc - dev-util/yacc - <sys-devel/bison-3.7 - ) + virtual/yacc " -RDEPEND="" -BDEPEND="virtual/pkgconfig" PATCHES=( "${FILESDIR}/${PN}-0.1.9998.3407-unknown_configure_opt.patch" @@ -40,6 +33,9 @@ PATCHES=( # Please check on version bumps if this can be removed "${FILESDIR}/${PN}-0.1.9998.3499-kash-no_separate_parser_allocator.patch" + + "${FILESDIR}/${PN}-0.1.9998.3572-fix-bison.patch" + "${FILESDIR}/${PN}-0.1.9998.3572-fix-lto.patch" ) pkg_setup() { @@ -60,31 +56,14 @@ src_prepare() { 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() { - if [[ -z ${YACC} ]] ; then - # If the user hasn't picked one, let's prefer byacc > yacc > old bison for now. - # See bug #734354 - bison doesn't work here. - # We can remove this once Bison works again! - if has_version -b "dev-util/byacc" ; then - export YACC=byacc - elif has_version -b "dev-util/yacc" ; then - export YACC=yacc - elif has_version -b "<sys-devel/bison-3.7" ; then - export YACC=bison - else - die "This case shouldn't be possible; no suitable YACC impl installed." - fi - - einfo "Chosen YACC=${YACC} for build..." - else - einfo "Chosen user-provided YACC=${YACC} for build..." - fi - - kBuild/env.sh --full emake -f bootstrap.gmk AUTORECONF=true AR="$(tc-getAR)" YACC="${YACC}" \ + kBuild/env.sh --full emake -f bootstrap.gmk AUTORECONF=true AR="$(tc-getAR)" \ || die "bootstrap failed" } diff --git a/dev-util/kbuild/kbuild-9999.ebuild b/dev-util/kbuild/kbuild-9999.ebuild index b4bfd88222e3..15625b4196bf 100644 --- a/dev-util/kbuild/kbuild-9999.ebuild +++ b/dev-util/kbuild/kbuild-9999.ebuild @@ -1,12 +1,12 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 inherit autotools toolchain-funcs DESCRIPTION="A makefile framework for writing simple makefiles for complex tasks" -HOMEPAGE="http://svn.netlabs.org/kbuild/wiki" +HOMEPAGE="https://trac.netlabs.org/kbuild/wiki" if [[ "${PV}" == *9999 ]] ; then inherit subversion ESVN_REPO_URI="http://svn.netlabs.org/repos/kbuild/trunk" @@ -20,19 +20,13 @@ LICENSE="GPL-3+" SLOT="0" IUSE="" -# We cannot depend on virtual/yacc until bug #734354 has been fixed -DEPEND=" +BDEPEND=" sys-apps/texinfo sys-devel/flex sys-devel/gettext - || ( - dev-util/byacc - dev-util/yacc - <sys-devel/bison-3.7 - ) + virtual/pkgconfig + virtual/yacc " -RDEPEND="" -BDEPEND="virtual/pkgconfig" PATCHES=( "${FILESDIR}/${PN}-0.1.9998.3407-unknown_configure_opt.patch" @@ -40,6 +34,8 @@ PATCHES=( "${FILESDIR}/${PN}-0.1.9998_pre20120806-qa.patch" "${FILESDIR}/${PN}-0.1.9998_pre20110817-kash-link-pthread.patch" #"${FILESDIR}/${PN}-0.1.9998.3407-gold.patch" + "${FILESDIR}/${PN}-0.1.9998.3572-fix-bison.patch" + "${FILESDIR}/${PN}-0.1.9998.3572-fix-lto.patch" ) pkg_setup() { @@ -62,31 +58,14 @@ src_prepare() { 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() { - if [[ -z ${YACC} ]] ; then - # If the user hasn't picked one, let's prefer byacc > yacc > old bison for now. - # See bug #734354 - bison doesn't work here. - # We can remove this once Bison works again! - if has_version -b "dev-util/byacc" ; then - export YACC=byacc - elif has_version -b "dev-util/yacc" ; then - export YACC=yacc - elif has_version -b "<sys-devel/bison-3.7" ; then - export YACC=bison - else - die "This case shouldn't be possible; no suitable YACC impl installed." - fi - - einfo "Chosen YACC=${YACC} for build..." - else - einfo "Chosen user-provided YACC=${YACC} for build..." - fi - - kBuild/env.sh --full emake -f bootstrap.gmk AUTORECONF=true AR="$(tc-getAR)" YACC="${YACC}" \ + kBuild/env.sh --full emake -f bootstrap.gmk AUTORECONF=true AR="$(tc-getAR)" \ || die "bootstrap failed" }