-
Notifications
You must be signed in to change notification settings - Fork 52
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #2110 from flatcar/tormath1/nasm
dev-lang/nasm: sync with the upstream
- Loading branch information
Showing
11 changed files
with
508 additions
and
44 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
- nasm ([CVE-2019-6290](https://nvd.nist.gov/vuln/detail/CVE-2019-6290), [CVE-2019-6291](https://nvd.nist.gov/vuln/detail/CVE-2019-6291), [CVE-2019-8343](https://nvd.nist.gov/vuln/detail/CVE-2019-8343), [CVE-2020-21528](https://nvd.nist.gov/vuln/detail/CVE-2020-21528), [CVE-2021-33450](https://nvd.nist.gov/vuln/detail/CVE-2021-33450), [CVE-2021-33452](https://nvd.nist.gov/vuln/detail/CVE-2021-33452), [CVE-2022-44368](https://nvd.nist.gov/vuln/detail/CVE-2022-44368), [CVE-2022-44369](https://nvd.nist.gov/vuln/detail/CVE-2022-44369), [CVE-2022-44370](https://nvd.nist.gov/vuln/detail/CVE-2022-44370)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
- SDK: nasm ([2.16.01](https://github.com/netwide-assembler/nasm/releases/tag/nasm-2.16.01)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
4 changes: 3 additions & 1 deletion
4
sdk_container/src/third_party/portage-stable/dev-lang/nasm/Manifest
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,3 @@ | ||
DIST nasm-2.15.05.tar.xz 995732 BLAKE2B a41434965c2125577b762d907a0a3c251c75d9f9beac230fba4099182c7f7beb08c6d2c05c2432b0dc8ba829f24077f44c3096faea9bd0a533250e6dbbfaef35 SHA512 512f90a2584f1c5811429274b97c64a2cedf37b9fdeffb1bcd0ea64afd9ecc19a2d7877ca8f1e05393aa324153fc9f39ea51dacbf8d25a7d5a2d7728c925dba7 | ||
DIST nasm-2.16.01.tar.xz 1017732 BLAKE2B 0f7e96648e3db6fa4a8e10a89885f61cab7d79af25adbcc9d4706b3af61206c3cae024b7f873d636f5c1b2cb34ce5e7fbecc16af9b59086e9a1f49fb37c59670 SHA512 51fccb5639ce019d9c423c0f279750ffbd74c64cd41dd3b185d1aa1a1aaed79c5d3cd8d4bebbc13ee249a375ed27457ea2abde1a4dbb24d354598fffd1254833 | ||
DIST nasm-2.16.02.tar.xz 1044824 BLAKE2B daa3585e9aef3c388e3b577a52453b31aaa7f13942e621c21bbe6ec744ff30bf2692e853dda193b30006989cb10e40dcc1cf0107176e31fd5ee096baad28c7a1 SHA512 9ccafb4cd9064fb21f6551309d35ba7461de8da138b1239d76c2ea0c070a1a767f1019d5d705088375d625cfb73eebbfd9dfa3588107793b95354d89dcfd22c3 | ||
DIST nasm-2.16.03.tar.xz 1032388 BLAKE2B 742cbf330341fde9f778d8ca13e8c06199f48796d47028ac973d39e3d9e434450cdfebe89f6ab248d372bdaeb0c88a25eb7153a39b66fc05e770523d4c9e11e9 SHA512 0c706e41a9c33e1ac3bad5056e8bf8cbcd51785b551a6e34ce7d0d723df8eaab8603a033e89b3dcda1004b558f9e9ef3196691500f10d8201bf47a323a516f84 |
241 changes: 241 additions & 0 deletions
241
...r/src/third_party/portage-stable/dev-lang/nasm/files/nasm-2.16-autoconf-macro-fixes.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,241 @@ | ||
From 5a2d629501d57301fe1d85fe6b2576e318f523d1 Mon Sep 17 00:00:00 2001 | ||
From: "H. Peter Anvin" <[email protected]> | ||
Date: Sun, 19 Feb 2023 21:26:15 -0800 | ||
Subject: [PATCH] autoconf: a much of macro fixes... not sure how this ever | ||
worked? | ||
|
||
Exposed a bunch of problems with the autoconf m4 macro | ||
library. Hopefulyy fix it, and tidy it up in the process. | ||
|
||
Signed-off-by: H. Peter Anvin <[email protected]> | ||
--- /dev/null | ||
+++ b/autoconf/m4/pa_add_cppflags.m4 | ||
@@ -0,0 +1,9 @@ | ||
+dnl -------------------------------------------------------------------------- | ||
+dnl PA_ADD_CPPFLAGS(variable, flag [,actual_flag [,success [,failure]]]]) | ||
+dnl | ||
+dnl Attempt to add the given option to xFLAGS, if it doesn't break | ||
+dnl compilation. If the option to be tested is different than the | ||
+dnl option that should actually be added, add the option to be | ||
+dnl actually added as a second argument. | ||
+dnl -------------------------------------------------------------------------- | ||
+AC_DEFUN([PA_ADD_CPPFLAGS], [PA_ADD_FLAGS(CPPFLAGS, [$1], [$2], [$3], [$4])]) | ||
--- a/autoconf/m4/pa_add_flags.m4 | ||
+++ b/autoconf/m4/pa_add_flags.m4 | ||
@@ -1,23 +1,39 @@ | ||
dnl -------------------------------------------------------------------------- | ||
-dnl PA_ADD_FLAGS(variable, flag [,actual_flag [,success [,failure]]]) | ||
+dnl PA_ADD_FLAGS(flagvar, flags) | ||
dnl | ||
-dnl Attempt to add the given option to CPPFLAGS, if it doesn't break | ||
-dnl compilation. If the option to be tested is different than the | ||
-dnl option that should actually be added, add the option to be | ||
-dnl actually added as a second argument. | ||
+dnl Add [flags] to the variable [flagvar] if and only if it is accepted | ||
+dnl by all languages affected by [flagvar], if those languages have | ||
+dnl been previously seen in the script. | ||
dnl -------------------------------------------------------------------------- | ||
AC_DEFUN([PA_ADD_FLAGS], | ||
-[AC_MSG_CHECKING([if $CC accepts $2]) | ||
- pa_add_flags__old_flags="$$1" | ||
- $1="$$1 $2" | ||
- AC_LINK_IFELSE( | ||
- [AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT], | ||
- [printf("Hello, World!\n");])], | ||
- [AC_MSG_RESULT([yes]) | ||
- $1="$pa_add_flags__old_flags ifelse([$3],[],[$2],[$3])" | ||
- AC_DEFINE(PA_SYM([$1_],[$2]), 1, | ||
- [Define to 1 if compiled with the `$2' compiler flag]) | ||
+[ | ||
+ AS_VAR_PUSHDEF([old], [_$0_$1_orig]) | ||
+ AS_VAR_PUSHDEF([ok], [_$0_$1_ok]) | ||
+ AS_VAR_PUSHDEF([flags], [$1]) | ||
+ | ||
+ AS_VAR_COPY([old], [flags]) | ||
+ AS_VAR_SET([flags], ["$flags $2"]) | ||
+ AS_VAR_SET([ok], [yes]) | ||
+ | ||
+ PA_LANG_FOREACH(PA_FLAGS_LANGLIST($1), | ||
+ [AS_VAR_IF([ok], [yes], | ||
+ [AC_MSG_CHECKING([if $]_AC_CC[ accepts $2]) | ||
+ PA_BUILD_IFELSE([], | ||
+ [AC_MSG_RESULT([yes])], | ||
+ [AC_MSG_RESULT([no]) | ||
+ AS_VAR_SET([ok], [no])])]) | ||
+ ]) | ||
+ | ||
+ AS_VAR_IF([ok], [yes], | ||
+ [m4_ifnblank([$3],[AS_VAR_SET([flags], ["$old $3"])]) | ||
+ m4_foreach_w([_pa_add_flags_flag], [m4_ifblank([$3],[$2],[$3])], | ||
+ [AC_DEFINE(PA_SYM([$1_]_pa_add_flags_flag), 1, | ||
+ [Define to 1 if compiled with the ]_pa_add_flags_flag[ compiler flag])]) | ||
$4], | ||
- [AC_MSG_RESULT([no]) | ||
- $1="$pa_add_flags__old_flags" | ||
- $5])]) | ||
+ [AS_VAR_SET([flags], ["$old"]) | ||
+ $5]) | ||
+ | ||
+ AS_VAR_POPDEF([flags]) | ||
+ AS_VAR_POPDEF([ok]) | ||
+ AS_VAR_POPDEF([old]) | ||
+]) | ||
--- /dev/null | ||
+++ b/autoconf/m4/pa_build_ifelse.m4 | ||
@@ -0,0 +1,16 @@ | ||
+dnl -------------------------------------------------------------------------- | ||
+dnl PA_BUILD_IFELSE(input [,success [,failure]]) | ||
+dnl | ||
+dnl Same as AC_LINK_IFELSE for languages where linking is applicable, | ||
+dnl otherwise AC_COMPILE_IFELSE. | ||
+dnl | ||
+dnl If the first argument is empty, use _AC_LANG_IO_PROGRAM. | ||
+dnl -------------------------------------------------------------------------- | ||
+m4_defun([_PA_BUILD_IFELSE], | ||
+[m4_case(_AC_LANG, | ||
+ [Erlang], [AC_COMPILE_IFELSE($@)], | ||
+ [AC_LINK_IFELSE($@)])]) | ||
+ | ||
+AC_DEFUN([PA_BUILD_IFELSE], | ||
+[_PA_BUILD_IFELSE([m4_ifblank([$1],[AC_LANG_SOURCE(_AC_LANG_IO_PROGRAM)], | ||
+ [$1])],[$2],[$3])]) | ||
--- /dev/null | ||
+++ b/autoconf/m4/pa_flags_langlist.m4 | ||
@@ -0,0 +1,19 @@ | ||
+dnl -------------------------------------------------------------------------- | ||
+dnl PA_FLAGS_LANGLIST(flagvar) | ||
+dnl | ||
+dnl Return a list of languages affected by the variable flagvar. | ||
+dnl If flagvar is unknown, assume it affects the current language. | ||
+dnl -------------------------------------------------------------------------- | ||
+AC_DEFUN([PA_FLAGS_LANGLIST], | ||
+[m4_dquote(m4_case([$1], | ||
+ [CPPFLAGS], [[C],[C++],[Objective C],[Objective C++]], | ||
+ [CFLAGS], [[C]], | ||
+ [CXXFLAGS], [[C++]], | ||
+ [FFLAGS], [[Fortran 77]], | ||
+ [FCFLAGS], [[Fortran]], | ||
+ [ERLCFLAGS], [[Erlang]], | ||
+ [OBJCFLAGS], [[Objective C]], | ||
+ [OBJCXXFLAGS], [[Objective C++]], | ||
+ [GOFLAGS], [[Go]], | ||
+ [LDFLAGS], [[C],[C++],[Fortran 77],[Fortran],[Objective C],[Objective C++],[Go]], | ||
+ m4_dquote(_AC_LANG)))]) | ||
--- /dev/null | ||
+++ b/autoconf/m4/pa_lang_foreach.m4 | ||
@@ -0,0 +1,15 @@ | ||
+dnl -------------------------------------------------------------------------- | ||
+dnl PA_LANG_FOREACH(subset, body) | ||
+dnl | ||
+dnl Expand [body] for each language encountered in the configure script also | ||
+dnl present in [subset], or all if [subset] is empty | ||
+dnl -------------------------------------------------------------------------- | ||
+AC_DEFUN([_PA_LANG_DO],dnl | ||
+[AC_LANG([$2])dnl | ||
+$1]) | ||
+ | ||
+AC_DEFUN([PA_LANG_FOREACH],dnl | ||
+[m4_pushdef([_pa_lang_foreach_current],[_AC_LANG])dnl | ||
+m4_map_args([m4_curry([_PA_LANG_DO],[$2])],m4_unquote(PA_LANG_SEEN_LIST($1)))dnl | ||
+AC_LANG(_pa_lang_foreach_current)dnl | ||
+m4_popdef([_pa_lang_foreach_current])]) | ||
--- /dev/null | ||
+++ b/autoconf/m4/pa_lang_seen_list.m4 | ||
@@ -0,0 +1,20 @@ | ||
+dnl -------------------------------------------------------------------------- | ||
+dnl PA_LANG_SEEN_LIST(subset) | ||
+dnl | ||
+dnl List of the language lang has been used in the configuration | ||
+dnl script so far, possibly subset by [subset]. | ||
+dnl | ||
+dnl This relies on overriding _AC_LANG_SET(from, to), | ||
+dnl the internal implementation of _AC_LANG. | ||
+dnl -------------------------------------------------------------------------- | ||
+m4_ifndef([_PA_LANG_SET], | ||
+[m4_rename([_AC_LANG_SET], [_PA_LANG_SET])dnl | ||
+m4_defun([_AC_LANG_SET], [m4_set_add([_PA_LANG_SEEN_SET],[$2])dnl | ||
+_PA_LANG_SET($@)])]) | ||
+ | ||
+AC_DEFUN([PA_LANG_SEEN_LIST], | ||
+[m4_set_delete([_pa_lang_seen_subset])dnl | ||
+m4_pushdef([_pa_lang_seen_subset_list],m4_ifnblank([$1],[$1],m4_dquote(m4_set_list([_PA_LANG_SEEN_SET]))))dnl | ||
+m4_set_add_all([_pa_lang_seen_subset],_pa_lang_seen_subset_list)dnl | ||
+m4_cdr(m4_set_intersection([_pa_lang_seen_subset],[_PA_LANG_SEEN_SET]))dnl | ||
+m4_popdef([_pa_lang_seen_subset_list])]) | ||
--- a/configure.ac | ||
+++ b/configure.ac | ||
@@ -12,9 +12,6 @@ dnl start; this is used to generate config/unconfig.h. | ||
AH_BOTTOM([ | ||
/* Begin unconfig.h */]) | ||
|
||
-dnl Save initial CFLAGS, to see if -g -O2 came from configure or not | ||
-pa_init_cflags="$CFLAGS" | ||
- | ||
dnl This prevents us from running Wine and thinking we are not | ||
dnl cross-compiling when in fact we are; running Wine here is at | ||
dnl the best very slow and doesn't buy us a single thing at all. | ||
@@ -27,35 +24,29 @@ AC_CANONICAL_HOST | ||
dnl Enable any available C extensions | ||
AC_PROG_CC | ||
AC_USE_SYSTEM_EXTENSIONS | ||
-AC_SYS_LARGEFILE | ||
-PA_ADD_CFLAGS([-std=c17], [], [], | ||
-[PA_ADD_CFLAGS([-std=c11], [], [], | ||
- [PA_ADD_CFLAGS([-std=c99])])]) | ||
- | ||
-dnl If the user did not specify a CFLAGS default, change default | ||
-dnl to -O0 for debugging | ||
-PA_ARG_DISABLED([optimization], | ||
- [compile without optimization (-O0) to help debugging], | ||
- [pa_no_optimize=true]) | ||
+PA_ADD_CPPFLAGS([-std=c17], [], [], | ||
+[PA_ADD_CPPFLAGS([-std=c11], [], [], | ||
+ [PA_ADD_CPPFLAGS([-std=c99])])]) | ||
|
||
-dnl Other programs | ||
-pa_no_optimize=false | ||
- | ||
-dnl Compile and link with dwarf debug | ||
+dnl Compile and link with gdb debug extensions | ||
PA_ARG_ENABLED([gdb], | ||
- [disable optimization and compile with extra debug information for GDB debugger], | ||
- [PA_ADD_CFLAGS([-ggdb3]) | ||
- pa_no_optimize=true]) | ||
+ [compile with extra debug information for GDB debugger], | ||
+ [PA_ADD_CFLAGS([-ggdb3])]) | ||
|
||
-AS_IF([$pa_no_optimize], | ||
- [PA_ADD_CFLAGS([-O0]) | ||
- PA_ADD_CFLAGS([-fno-omit-frame-pointer])]) | ||
+dnl Disable optimization | ||
+PA_ARG_DISABLED([optimization], | ||
+ [compile without optimization (-O0) to help debugging], | ||
+ [PA_ADD_CFLAGS([-O0]) | ||
+ PA_ADD_CFLAGS([-fno-omit-frame-pointer])]) | ||
|
||
dnl Profiling | ||
PA_ARG_ENABLED([profiling], | ||
[compile with profiling (-pg option)], | ||
[PA_ADD_CFLAGS([-pg])]) | ||
|
||
+dnl Large files | ||
+AC_SYS_LARGEFILE | ||
+ | ||
dnl Abort on panic | ||
PA_ARG_ENABLED([panic-abort], | ||
[call abort() on panic to trap in the debugger], | ||
@@ -104,10 +95,10 @@ AC_PROG_MAKE_SET | ||
AC_PROG_INSTALL | ||
AC_PROG_MKDIR_P | ||
|
||
-AC_CHECK_PROGS(NROFF, nroff, false) | ||
-AC_CHECK_PROGS(ASCIIDOC, asciidoc, false) | ||
-AC_CHECK_PROGS(XMLTO, xmlto, false) | ||
-AC_CHECK_PROGS(XZ, xz, false) | ||
+AC_CHECK_PROGS([NROFF], nroff, false) | ||
+AC_CHECK_PROGS([ASCIIDOC], asciidoc, false) | ||
+AC_CHECK_PROGS([XMLTO], xmlto, false) | ||
+AC_CHECK_PROGS([XZ], xz, false) | ||
|
||
dnl Check for progs needed for manpage generation | ||
MANPAGES=manpages |
11 changes: 11 additions & 0 deletions
11
sdk_container/src/third_party/portage-stable/dev-lang/nasm/files/nasm-2.16.02-unconfig.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
--- a/Makefile.in 2024-04-05 07:51:48.394437050 -0000 | ||
+++ b/Makefile.in 2024-04-05 07:52:38.731388961 -0000 | ||
@@ -214,7 +214,7 @@ | ||
INSDEP = x86/insns.dat x86/insns.pl x86/insns-iflags.ph x86/iflags.ph | ||
|
||
config/unconfig.h: config/config.h.in | ||
- $(RUNPERL) $(tools)/unconfig.pl \ | ||
+ $(RUNPERL) $(top_srcdir)/autoconf/unconfig.pl \ | ||
'$(srcdir)' config/config.h.in config/unconfig.h | ||
|
||
x86/iflag.c: $(INSDEP) |
42 changes: 0 additions & 42 deletions
42
sdk_container/src/third_party/portage-stable/dev-lang/nasm/nasm-2.15.05.ebuild
This file was deleted.
Oops, something went wrong.
72 changes: 72 additions & 0 deletions
72
sdk_container/src/third_party/portage-stable/dev-lang/nasm/nasm-2.16.01-r1.ebuild
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
# Copyright 1999-2023 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 ~ia64 ~loong ppc64 ~riscv x86 ~amd64-linux ~x86-linux" | ||
IUSE="doc" | ||
|
||
QA_CONFIG_IMPL_DECL_SKIP=( | ||
_BitScanReverse | ||
_BitScanReverse64 | ||
__cpu_to_le16 | ||
__cpu_to_le32 | ||
__cpu_to_le64 | ||
_byteswap_uint64 | ||
_byteswap_ulong | ||
_byteswap_ushort | ||
cpu_to_le16 | ||
cpu_to_le32 | ||
cpu_to_le64 | ||
) | ||
|
||
# [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 | ||
"${FILESDIR}"/${PN}-2.16-autoconf-macro-fixes.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_compile() { | ||
default | ||
use doc && emake doc | ||
} | ||
|
||
src_install() { | ||
default | ||
emake DESTDIR="${D}" install $(usex doc install_doc '') | ||
} |
Oops, something went wrong.