summaryrefslogtreecommitdiff
path: root/dev-lang/yasm
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-04 16:47:34 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-04 16:47:34 -0500
commitdda948891d3731927b821ce31f9d9a2d03ba20c5 (patch)
tree99cd40be4cbb0606260da212cd81b8ab2db9da9b /dev-lang/yasm
parenta3ceca1b4c0d9bdb550dc23f06ffbb5a8e033bc7 (diff)
downloadbaldeagleos-repo-dda948891d3731927b821ce31f9d9a2d03ba20c5.tar.gz
baldeagleos-repo-dda948891d3731927b821ce31f9d9a2d03ba20c5.tar.xz
baldeagleos-repo-dda948891d3731927b821ce31f9d9a2d03ba20c5.zip
Adding metadata
Diffstat (limited to 'dev-lang/yasm')
-rw-r--r--dev-lang/yasm/Manifest1
-rw-r--r--dev-lang/yasm/files/yasm-1.3.0-fix-modern-c.patch87
-rw-r--r--dev-lang/yasm/metadata.xml12
-rw-r--r--dev-lang/yasm/yasm-1.3.0-r2.ebuild79
4 files changed, 179 insertions, 0 deletions
diff --git a/dev-lang/yasm/Manifest b/dev-lang/yasm/Manifest
new file mode 100644
index 000000000000..8b3f187a1f95
--- /dev/null
+++ b/dev-lang/yasm/Manifest
@@ -0,0 +1 @@
+DIST yasm-1.3.0.tar.gz 1492156 BLAKE2B e419a4f9912eb244e9503462dbf0c5e5c95bdfa49583ee205dc4708b42710df8dd2056b2e36e04de04474f4af900916cb64c14a623db1346c3e1cb46a8cc34a5 SHA512 572d3b45568b10f58e48f1188c2d6bcbdd16429c8afaccc8c6d37859b45635e106885d679e41d0bee78c23822108c7ae75aa7475eed5ba58057e0a6fe1b68645
diff --git a/dev-lang/yasm/files/yasm-1.3.0-fix-modern-c.patch b/dev-lang/yasm/files/yasm-1.3.0-fix-modern-c.patch
new file mode 100644
index 000000000000..61f1e88634f0
--- /dev/null
+++ b/dev-lang/yasm/files/yasm-1.3.0-fix-modern-c.patch
@@ -0,0 +1,87 @@
+https://github.com/yasm/yasm/commit/f79f5e37f0e4b06d5dc303cc219929d7359dd7df
+From: Biswapriyo Nath <nathbappai@gmail.com>
+Date: Thu, 18 May 2023 03:53:32 +0530
+Subject: [PATCH] Fix function declaration warnings with clang (#226)
+
+This fixes the following compiler warnings with clang
+
+tools/genperf/perfect.c:65:6: warning: a function definition without a prototype
+is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
+
+frontends/yasm/yasm.c:1379:23: warning: a function declaration without a prototype
+is deprecated in all versions of C [-Wstrict-prototypes]
+
+modules/objfmts/elf/elf.c:225:18: warning: a function declaration without a prototype
+is deprecated in all versions of C [-Wstrict-prototypes]
+--- a/frontends/tasm/tasm.c
++++ b/frontends/tasm/tasm.c
+@@ -817,7 +817,7 @@ opt_exe_handler(char *cmd, /*@unused@*/ char *param, int extra)
+ }
+
+ static void
+-apply_preproc_builtins()
++apply_preproc_builtins(void)
+ {
+ char *predef;
+
+@@ -853,7 +853,7 @@ apply_preproc_standard_macros(const yasm_stdmac *stdmacs)
+ }
+
+ static void
+-apply_preproc_saved_options()
++apply_preproc_saved_options(void)
+ {
+ constcharparam *cp, *cpnext;
+
+--- a/frontends/yasm/yasm.c
++++ b/frontends/yasm/yasm.c
+@@ -1376,7 +1376,7 @@ opt_plugin_handler(/*@unused@*/ char *cmd, char *param,
+ #endif
+
+ static void
+-apply_preproc_builtins()
++apply_preproc_builtins(void)
+ {
+ char *predef;
+
+@@ -1409,7 +1409,7 @@ apply_preproc_standard_macros(const yasm_stdmac *stdmacs)
+ }
+
+ static void
+-apply_preproc_saved_options()
++apply_preproc_saved_options(void)
+ {
+ constcharparam *cp, *cpnext;
+
+--- a/modules/objfmts/elf/elf.c
++++ b/modules/objfmts/elf/elf.c
+@@ -222,7 +222,7 @@ elf_strtab_entry_set_str(elf_strtab_entry *entry, const char *str)
+ }
+
+ elf_strtab_head *
+-elf_strtab_create()
++elf_strtab_create(void)
+ {
+ elf_strtab_head *strtab = yasm_xmalloc(sizeof(elf_strtab_head));
+ elf_strtab_entry *entry = yasm_xmalloc(sizeof(elf_strtab_entry));
+@@ -373,7 +373,7 @@ elf_ssym_symtab_entry_print(void *data, FILE *f, int indent_level)
+ }
+
+ elf_symtab_head *
+-elf_symtab_create()
++elf_symtab_create(void)
+ {
+ elf_symtab_head *symtab = yasm_xmalloc(sizeof(elf_symtab_head));
+ elf_symtab_entry *entry = yasm_xmalloc(sizeof(elf_symtab_entry));
+--- a/tools/genperf/perfect.c
++++ b/tools/genperf/perfect.c
+@@ -62,8 +62,7 @@ Find the mapping that will produce a perfect hash
+ */
+
+ /* return the ceiling of the log (base 2) of val */
+-ub4 phash_log2(val)
+-ub4 val;
++ub4 phash_log2(ub4 val)
+ {
+ ub4 i;
+ for (i=0; ((ub4)1<<i) < val; ++i)
diff --git a/dev-lang/yasm/metadata.xml b/dev-lang/yasm/metadata.xml
new file mode 100644
index 000000000000..1db4add2eed7
--- /dev/null
+++ b/dev-lang/yasm/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:tortall:yasm</remote-id>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-lang/yasm/yasm-1.3.0-r2.ebuild b/dev-lang/yasm/yasm-1.3.0-r2.ebuild
new file mode 100644
index 000000000000..0fba699ca4cf
--- /dev/null
+++ b/dev-lang/yasm/yasm-1.3.0-r2.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dot-a flag-o-matic toolchain-funcs
+
+if [[ ${PV} == 9999* ]] ; then
+ EGIT_REPO_URI="https://github.com/yasm/yasm.git"
+ inherit autotools git-r3
+else
+ SRC_URI="https://www.tortall.net/projects/yasm/releases/${P}.tar.gz"
+ KEYWORDS="amd64 arm64 ~ppc64 ~riscv x86 ~arm64-macos ~x64-macos ~x64-solaris"
+fi
+
+DESCRIPTION="An assembler for x86 and x86_64 instruction sets"
+HOMEPAGE="https://yasm.tortall.net/"
+
+LICENSE="BSD-2 BSD || ( Artistic GPL-2 LGPL-2 )"
+SLOT="0"
+IUSE="nls"
+
+BDEPEND="
+ nls? ( sys-devel/gettext )
+"
+DEPEND="
+ nls? ( virtual/libintl )
+"
+RDEPEND="${DEPEND}
+"
+
+if [[ ${PV} == 9999* ]]; then
+ BDEPEND+="
+ app-text/xmlto
+ app-text/docbook-xml-dtd:4.1.2
+ dev-lang/python
+ "
+fi
+
+PATCHES=(
+ "${FILESDIR}"/${P}-fix-modern-c.patch
+)
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == 9999* ]]; then
+ eautoreconf
+ python modules/arch/x86/gen_x86_insn.py || die
+ fi
+}
+
+src_configure() {
+ lto-guarantee-fat
+
+ # bug #943747
+ append-flags -std=gnu17
+
+ local myconf=(
+ CC_FOR_BUILD="$(tc-getBUILD_CC)"
+ CCLD_FOR_BUILD="$(tc-getBUILD_CC)"
+ --disable-warnerror
+ --disable-python
+ --disable-python-bindings
+ $(use_enable nls)
+ )
+
+ econf "${myconf[@]}"
+}
+
+src_test() {
+ # https://bugs.gentoo.org/718870
+ emake -j1 check
+}
+
+src_install() {
+ default
+ strip-lto-bytecode
+}