From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 685B8159C9B for ; Sun, 11 Aug 2024 23:19:37 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 967AAE2AA2; Sun, 11 Aug 2024 23:18:25 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 0A5A9E2A9F for ; Sun, 11 Aug 2024 23:18:25 +0000 (UTC) From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= To: gentoo-dev@lists.gentoo.org Cc: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= Subject: [gentoo-dev] [RFC HELP WANTED 5/9] dev-build/make: switch to new guile mechanism Date: Mon, 12 Aug 2024 00:22:50 +0200 Message-ID: <20240811231742.942813-6-arsen@gentoo.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240811231742.942813-1-arsen@gentoo.org> References: <20240811231742.942813-1-arsen@gentoo.org> Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Archives-Salt: 3fbc5587-c9f3-4783-b8c7-2f5cecc16912 X-Archives-Hash: 18a2138dc6aefc033dc5e07ed496c092 Signed-off-by: Arsen Arsenović --- dev-build/make/make-4.4.1-r100.ebuild | 102 ++++++++++++++++++++++++++ dev-build/make/make-9999.ebuild | 14 +++- profiles/package.mask | 1 + 3 files changed, 115 insertions(+), 2 deletions(-) create mode 100644 dev-build/make/make-4.4.1-r100.ebuild diff --git a/dev-build/make/make-4.4.1-r100.ebuild b/dev-build/make/make-4.4.1-r100.ebuild new file mode 100644 index 000000000000..560e26a4ef50 --- /dev/null +++ b/dev-build/make/make-4.4.1-r100.ebuild @@ -0,0 +1,102 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/make.asc +GUILE_COMPAT=( 3-0 2-2 2-0 1-8 ) +inherit flag-o-matic unpacker verify-sig guile-single + +DESCRIPTION="Standard tool to compile source trees" +HOMEPAGE="https://www.gnu.org/software/make/make.html" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/make.git" + inherit autotools git-r3 +elif [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then + SRC_URI="https://alpha.gnu.org/gnu/make/${P}.tar.lz" + SRC_URI+=" verify-sig? ( https://alpha.gnu.org/gnu/make/${P}.tar.lz.sig )" +else + SRC_URI="mirror://gnu/make/${P}.tar.lz" + SRC_URI+=" verify-sig? ( mirror://gnu/make/${P}.tar.lz.sig )" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-3+" +SLOT="0" +IUSE="doc guile nls static test" +RESTRICT="!test? ( test )" +REQUIRED_USE="guile? ( ${GUILE_REQUIRED_USE} )" + +DEPEND=" + guile? ( ${GUILE_DEPS} ) +" +RDEPEND=" + ${DEPEND} + nls? ( virtual/libintl ) +" +BDEPEND=" + $(unpacker_src_uri_depends) + doc? ( virtual/texi2dvi ) + nls? ( sys-devel/gettext ) + verify-sig? ( sec-keys/openpgp-keys-make ) + test? ( dev-lang/perl ) +" + +DOCS="AUTHORS NEWS README*" + +PATCHES=( + "${FILESDIR}"/${PN}-4.4-default-cxx.patch +) + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + + cd "${S}" || die + ./bootstrap || die + else + use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${P}.tar.lz{,.sig} + unpacker ${P}.tar.lz + fi +} + +src_prepare() { + default + + if [[ ${PV} == 9999 ]] ; then + eautoreconf + fi + + if use guile; then + guile-single_src_prepare + fi +} + +pkg_setup() { + if use guile; then + guile-single_pkg_setup + fi +} + +src_configure() { + use static && append-ldflags -static + local myeconfargs=( + --program-prefix=g + $(use_with guile) + $(use_enable nls) + ) + econf "${myeconfargs[@]}" +} + +src_compile() { + emake all $(usev doc 'pdf html') +} + +src_install() { + use doc && HTML_DOCS=( doc/make.html/. ) DOCS="$DOCS doc/make.pdf" + default + + dosym gmake /usr/bin/make + dosym gmake.1 /usr/share/man/man1/make.1 + guile_unstrip_ccache +} diff --git a/dev-build/make/make-9999.ebuild b/dev-build/make/make-9999.ebuild index 6ed0e9b00642..8ef172a0adf5 100644 --- a/dev-build/make/make-9999.ebuild +++ b/dev-build/make/make-9999.ebuild @@ -4,7 +4,8 @@ EAPI=8 VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/make.asc -inherit flag-o-matic unpacker verify-sig +GUILE_COMPAT=( 3-0 2-2 2-0 1-8 ) +inherit flag-o-matic unpacker verify-sig guile-single DESCRIPTION="Standard tool to compile source trees" HOMEPAGE="https://www.gnu.org/software/make/make.html" @@ -24,8 +25,11 @@ LICENSE="GPL-3+" SLOT="0" IUSE="doc guile nls static test" RESTRICT="!test? ( test )" +REQUIRED_USE="guile? ( ${GUILE_REQUIRED_USE} )" -DEPEND="guile? ( >=dev-scheme/guile-1.8:= )" +DEPEND=" + guile? ( ${GUILE_DEPS} ) +" RDEPEND=" ${DEPEND} nls? ( virtual/libintl ) @@ -64,6 +68,12 @@ src_prepare() { fi } +pkg_setup() { + if use guile; then + guile-single_pkg_setup + fi +} + src_configure() { use static && append-ldflags -static local myeconfargs=( diff --git a/profiles/package.mask b/profiles/package.mask index 31ac05aee52b..aa2ba7f10877 100644 --- a/profiles/package.mask +++ b/profiles/package.mask @@ -39,6 +39,7 @@ # Masked until the whole Guile ecosystem is updated. dev-scheme/guile:2.2 dev-scheme/guile:3.0 +>=sys-devel/make-4.4.1-r100 # James Le Cuirot (2024-07-29) # Superseded by media-libs/libv4l[utils]. -- 2.45.2