commit:     54c0a107a9532efea43e9dd2681d899d201a58ee
Author:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Oct  4 16:03:27 2025 +0000
Commit:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Oct  4 16:03:27 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=54c0a107

dev-lang/nasm: add 3.00

Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>

 dev-lang/nasm/Manifest         |  1 +
 dev-lang/nasm/nasm-3.00.ebuild | 91 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 92 insertions(+)

diff --git a/dev-lang/nasm/Manifest b/dev-lang/nasm/Manifest
index 0f491497c9ce..230d53d423f3 100644
--- a/dev-lang/nasm/Manifest
+++ b/dev-lang/nasm/Manifest
@@ -1 +1,2 @@
 DIST nasm-2.16.03.tar.xz 1032388 BLAKE2B 
742cbf330341fde9f778d8ca13e8c06199f48796d47028ac973d39e3d9e434450cdfebe89f6ab248d372bdaeb0c88a25eb7153a39b66fc05e770523d4c9e11e9
 SHA512 
0c706e41a9c33e1ac3bad5056e8bf8cbcd51785b551a6e34ce7d0d723df8eaab8603a033e89b3dcda1004b558f9e9ef3196691500f10d8201bf47a323a516f84
+DIST nasm-3.00.tar.xz 1476960 BLAKE2B 
9cfb8debdc4623cbd5dee2dbc8f4c52bedbf6bee6aa9165bf0abc31658e969ad54446e327ee3b65978396640dce5bb2dfe1ba2314afc0e5eb32b918d90d66a4e
 SHA512 
a8d4003af352a3cd6d2426b3375d1f0279723821be130f5ef397c153e4e15e99451f549d8d4608c8003d68bb84d59e574e9080939a373a591b42356f8cbf4def

diff --git a/dev-lang/nasm/nasm-3.00.ebuild b/dev-lang/nasm/nasm-3.00.ebuild
new file mode 100644
index 000000000000..e15966772d42
--- /dev/null
+++ b/dev-lang/nasm/nasm-3.00.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="groovy little assembler"
+HOMEPAGE="https://www.nasm.us/";
+SRC_URI="https://www.nasm.us/pub/nasm/releasebuilds/${PV/_}/${P/_}.tar.xz";
+S=${WORKDIR}/${P/_}
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc"
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+       # Windows.
+       _BitScanReverse
+       _BitScanReverse64
+
+       # Linux headers that are not included.
+       __cpu_to_le16
+       __cpu_to_le32
+       __cpu_to_le64
+       _byteswap_uint64
+       _byteswap_ulong
+       _byteswap_ushort
+       cpu_to_le16
+       cpu_to_le32
+       cpu_to_le64
+
+       # __typeof as gnu extensions are not enabled
+       typeof
+
+       # musl doesn't define __bswap_N in endian.h (it's named _bswapN
+       # instead). could be fixed to call this instead, or to include
+       # musl's byteswap.h instead, but it is much easier to fall back on
+       # __builtin_bswapN. Bug #928848
+       __bswap_16
+       __bswap_32
+       __bswap_64
+)
+
+# [fonts note] doc/psfonts.ph defines ordered list of font preference.
+# Currently 'media-fonts/source-pro' is most preferred and is able to
+# satisfy all 6 font flavours: tilt, chapter, head, etc.
+BDEPEND="
+       dev-lang/perl
+       doc? (
+               app-text/ghostscript-gpl
+               dev-perl/Font-TTF
+               dev-perl/Sort-Versions
+               media-fonts/source-code-pro
+               media-fonts/source-sans:3
+               virtual/perl-File-Spec
+       )
+"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-2.15-bsd-cp-doc.patch
+)
+
+src_prepare() {
+       default
+
+       # https://bugs.gentoo.org/870214
+       # During the split of media-fonts/source-pro, the source-sans files
+       # were renamed. Currently depend on media-fonts/source-sans:3 which 
works
+       # with this sed.
+       sed -i 's/SourceSansPro/SourceSans3/g' doc/psfonts.ph || die
+
+       AT_M4DIR="${S}/autoconf/m4" eautoreconf
+}
+
+src_configure() {
+       # --enable-lto just appends -flto to *FLAGS
+       # so let users just use lto through normal make.conf *FLAGS
+       econf
+}
+
+src_compile() {
+       default
+       use doc && emake doc
+}
+
+src_install() {
+       default
+       emake DESTDIR="${D}" install $(usex doc install_doc '')
+}

Reply via email to