Tue Dec 18 09:24:33 2018 UTC ()
nasm: updated to 2.14

Version 2.14

Changed -I option semantics by adding a trailing path separator unconditionally.

Fixed null dereference in corrupted invalid single line macros.

Fixed division by zero which may happen if source code is malformed.

Fixed out of bound access in processing of malformed segment override.

Fixed out of bound access in certain EQU parsing.

Fixed buffer underflow in float parsing.

Added SGX (Intel Software Guard Extensions) instructions.

Added +n syntax for multiple contiguous registers.

Fixed subsections_via_symbols for macho object format.

Added the --gprefix, --gpostfix, --lprefix, and --lpostfix command line options, to allow command line base symbol renaming. See section 2.1.28.

Allow label renaming to be specified by %pragma in addition to from the command line. See section 6.9.

Supported generic %pragma namespaces, output and debug. See section 6.10.

Added the --pragma command line option to inject a %pragma directive. See section 2.1.29.

Added the --before command line option to accept preprocess statement before input. See section 2.1.30.

Added AVX512 VBMI2 (Additional Bit Manipulation), VNNI (Vector Neural Network), BITALG (Bit Algorithm), and GFNI (Galois Field New Instruction) instructions.

Added the STATIC directive for local symbols that should be renamed using global-symbol rules. See section 6.8.

Allow a symbol to be defined as EXTERN and then later overridden as GLOBAL or COMMON. Furthermore, a symbol declared EXTERN and then defined will be treated as GLOBAL. See section 6.5.

The GLOBAL directive no longer is required to precede the definition of the symbol.

Support private_extern as macho specific extension to the GLOBAL directive. See section 7.8.5.

Updated UD0 encoding to match with the specification

Added the --limit-X command line option to set execution limits. See section 2.1.31.

Updated the Codeview version number to be aligned with MASM.

Added the --keep-all command line option to preserve output files. See section 2.1.32.

Added the --include command line option, an alias to -P (section 2.1.18).

Added the --help command line option as an alias to -h (section 3.1).

Added -W, -D, and -Q suffix aliases for RET instructions so the operand sizes of these instructions can be encoded without using o16, o32 or o64.


(adam)
diff -r1.59 -r1.60 pkgsrc/devel/nasm/Makefile
diff -r1.30 -r1.31 pkgsrc/devel/nasm/distinfo
diff -r1.2 -r1.3 pkgsrc/devel/nasm/patches/patch-Makefile.in
diff -r1.2 -r1.3 pkgsrc/devel/nasm/patches/patch-doc_Makefile.in
diff -r1.1 -r0 pkgsrc/devel/nasm/patches/patch-include_nasmlib.h

cvs diff -r1.59 -r1.60 pkgsrc/devel/nasm/Makefile (expand / switch to unified diff)

--- pkgsrc/devel/nasm/Makefile 2018/11/12 14:40:21 1.59
+++ pkgsrc/devel/nasm/Makefile 2018/12/18 09:24:33 1.60
@@ -1,25 +1,28 @@ @@ -1,25 +1,28 @@
1# $NetBSD: Makefile,v 1.59 2018/11/12 14:40:21 jperkin Exp $ 1# $NetBSD: Makefile,v 1.60 2018/12/18 09:24:33 adam Exp $
2 2
3DISTNAME= nasm-2.13.03 3DISTNAME= nasm-2.14
4PKGREVISION= 1 
5CATEGORIES= devel lang 4CATEGORIES= devel lang
6MASTER_SITES= http://www.nasm.us/pub/nasm/releasebuilds/${PKGVERSION_NOREV}/ 5MASTER_SITES= http://www.nasm.us/pub/nasm/releasebuilds/${PKGVERSION_NOREV}/
7EXTRACT_SUFX= .tar.xz 6EXTRACT_SUFX= .tar.xz
8 7
9MAINTAINER= pkgsrc-users@NetBSD.org 8MAINTAINER= pkgsrc-users@NetBSD.org
10HOMEPAGE= http://www.nasm.us/ 9HOMEPAGE= http://www.nasm.us/
11COMMENT= General-purpose x86 assembler 10COMMENT= General-purpose x86 assembler
12LICENSE= 2-clause-bsd 11LICENSE= 2-clause-bsd
13 12
 13BUILD_DEPENDS+= asciidoc-[0-9]*:../../textproc/asciidoc
 14BUILD_DEPENDS+= xmlto-[0-9]*:../../textproc/xmlto
 15
14USE_TOOLS+= gmake makeinfo perl 16USE_TOOLS+= gmake makeinfo perl
15GNU_CONFIGURE= yes 17GNU_CONFIGURE= yes
 18CONFIGURE_ARGS+= --docdir=${PREFIX}/share/doc/nasm
 19CONFIGURE_ARGS+= --htmldir=${PREFIX}/share/doc/nasm/html
16 20
17BUILD_TARGET= everything 21BUILD_TARGET= everything
18INSTALL_TARGET= install_everything 22INSTALL_TARGET= install_everything
19 23
20INSTALL_ENV+= INSTALLROOT=${DESTDIR} 
21MAKE_ENV+= PERL5=${PERL5:Q} 24MAKE_ENV+= PERL5=${PERL5:Q}
22 25
23CTF_SUPPORTED= no # https://smartos.org/bugview/OS-6510 26CTF_SUPPORTED= no # https://smartos.org/bugview/OS-6510
24 27
25.include "../../mk/bsd.pkg.mk" 28.include "../../mk/bsd.pkg.mk"

cvs diff -r1.30 -r1.31 pkgsrc/devel/nasm/distinfo (expand / switch to unified diff)

--- pkgsrc/devel/nasm/distinfo 2018/05/20 16:36:03 1.30
+++ pkgsrc/devel/nasm/distinfo 2018/12/18 09:24:33 1.31
@@ -1,9 +1,8 @@ @@ -1,9 +1,8 @@
1$NetBSD: distinfo,v 1.30 2018/05/20 16:36:03 jakllsch Exp $ 1$NetBSD: distinfo,v 1.31 2018/12/18 09:24:33 adam Exp $
2 2
3SHA1 (nasm-2.13.03.tar.xz) = 1338ae8832bdbabd00a2b7ee3e39b8fd2f923ea0 3SHA1 (nasm-2.14.tar.xz) = 02c59169d7977846eac851b6c742fb235dd102c9
4RMD160 (nasm-2.13.03.tar.xz) = 6ddd260f553e79d87f1642c9f9c7abfc1c6ec16d 4RMD160 (nasm-2.14.tar.xz) = 12ce766abe1dceeaf0c735000affb2225880632f
5SHA512 (nasm-2.13.03.tar.xz) = 24e6c72b80a878453baf3b525c1bad607431ff672a927f73e742379fa833b3f5d3fa4479addfcec6d96f354aa90a45905ff9c76ab5217c3bcb7091107b32e2b5 5SHA512 (nasm-2.14.tar.xz) = 0f7f1b8b0cd4ac62df1dc203789b74670ebe10f3be10af9984331b1c348745ed31a43aca77c5c771016a718fa2c7c8805c1c9edfdd6b0fe83ee0937cb0dd3d23
6Size (nasm-2.13.03.tar.xz) = 806636 bytes 6Size (nasm-2.14.tar.xz) = 824780 bytes
7SHA1 (patch-Makefile.in) = a85054afeb827b61b0db3352825088454e3013d4 7SHA1 (patch-Makefile.in) = d16a4aecb10006463efa6fa564d4d1300225f140
8SHA1 (patch-doc_Makefile.in) = 20bb04e4fb00ec14d1e2bb31a3fe2497673132ef 8SHA1 (patch-doc_Makefile.in) = ddf0738421f3160fb9db143f631ecf5ea8ed4a89
9SHA1 (patch-include_nasmlib.h) = 2ec6f98dcb7a7583e5f8cd1051a97f70eae223f5 

cvs diff -r1.2 -r1.3 pkgsrc/devel/nasm/patches/patch-Makefile.in (expand / switch to unified diff)

--- pkgsrc/devel/nasm/patches/patch-Makefile.in 2017/05/18 21:44:42 1.2
+++ pkgsrc/devel/nasm/patches/patch-Makefile.in 2018/12/18 09:24:33 1.3
@@ -1,34 +1,34 @@ @@ -1,34 +1,34 @@
1$NetBSD: patch-Makefile.in,v 1.2 2017/05/18 21:44:42 adam Exp $ 1$NetBSD: patch-Makefile.in,v 1.3 2018/12/18 09:24:33 adam Exp $
2 2
3Use correct tools. 3Use correct tools.
4 4
5--- Makefile.in.orig 2017-05-02 05:18:51.000000000 +0000 5--- Makefile.in.orig 2018-11-07 21:44:06.000000000 +0000
6+++ Makefile.in 6+++ Makefile.in
7@@ -35,7 +35,7 @@ AR = @AR@ 7@@ -36,7 +36,7 @@ AR = @AR@
8 RANLIB = @RANLIB@ 8 RANLIB = @RANLIB@
9 STRIP = @STRIP@ 9 STRIP = @STRIP@
10  10
11-PERL = perl 11-PERL = perl
12+PERL = ${PERL5} 12+PERL = ${PERL5}
13 PERLFLAGS = -I$(srcdir)/perllib -I$(srcdir) 13 PERLFLAGS = -I$(srcdir)/perllib -I$(srcdir)
14 RUNPERL = $(PERL) $(PERLFLAGS) 14 RUNPERL = $(PERL) $(PERLFLAGS)
15  15
16@@ -334,12 +334,12 @@ nsis: nsis/nasm.nsi nsis/arch.nsh nsis/v 16@@ -344,12 +344,12 @@ nsis: nsis/nasm.nsi nsis/arch.nsh nsis/v
17 manpages: nasm.1 ndisasm.1 17 manpages: nasm.1 ndisasm.1
18  18
19 install: nasm$(X) ndisasm$(X) 19 install: nasm$(X) ndisasm$(X)
20- $(MKDIR) -p $(INSTALLROOT)$(bindir) 20- $(MKDIR) $(DESTDIR)$(bindir)
21- $(INSTALL_PROGRAM) nasm$(X) $(INSTALLROOT)$(bindir)/nasm$(X) 21- $(INSTALL_PROGRAM) nasm$(X) $(DESTDIR)$(bindir)/nasm$(X)
22- $(INSTALL_PROGRAM) ndisasm$(X) $(INSTALLROOT)$(bindir)/ndisasm$(X) 22- $(INSTALL_PROGRAM) ndisasm$(X) $(DESTDIR)$(bindir)/ndisasm$(X)
23- $(MKDIR) -p $(INSTALLROOT)$(mandir)/man1 23- $(MKDIR) $(DESTDIR)$(mandir)/man1
24- $(INSTALL_DATA) $(srcdir)/nasm.1 $(INSTALLROOT)$(mandir)/man1/nasm.1 24- $(INSTALL_DATA) $(srcdir)/nasm.1 $(DESTDIR)$(mandir)/man1/nasm.1
25- $(INSTALL_DATA) $(srcdir)/ndisasm.1 $(INSTALLROOT)$(mandir)/man1/ndisasm.1 25- $(INSTALL_DATA) $(srcdir)/ndisasm.1 $(DESTDIR)$(mandir)/man1/ndisasm.1
26+ $(BSD_INSTALL_PROGRAM_DIR) $(INSTALLROOT)$(bindir) 26+ $(BSD_INSTALL_PROGRAM_DIR) $(DESTDIR)$(bindir)
27+ $(BSD_INSTALL_PROGRAM) nasm$(X) $(INSTALLROOT)$(bindir)/nasm$(X) 27+ $(BSD_INSTALL_PROGRAM) nasm$(X) $(DESTDIR)$(bindir)/nasm$(X)
28+ $(BSD_INSTALL_PROGRAM) ndisasm$(X) $(INSTALLROOT)$(bindir)/ndisasm$(X) 28+ $(BSD_INSTALL_PROGRAM) ndisasm$(X) $(DESTDIR)$(bindir)/ndisasm$(X)
29+ $(BSD_INSTALL_MAN_DIR) $(INSTALLROOT)$(mandir)/man1 29+ $(BSD_INSTALL_MAN_DIR) $(DESTDIR)$(mandir)/man1
30+ $(BSD_INSTALL_MAN) $(srcdir)/nasm.1 $(INSTALLROOT)$(mandir)/man1/nasm.1 30+ $(BSD_INSTALL_MAN) $(srcdir)/nasm.1 $(DESTDIR)$(mandir)/man1/nasm.1
31+ $(BSD_INSTALL_MAN) $(srcdir)/ndisasm.1 $(INSTALLROOT)$(mandir)/man1/ndisasm.1 31+ $(BSD_INSTALL_MAN) $(srcdir)/ndisasm.1 $(DESTDIR)$(mandir)/man1/ndisasm.1
32  32
33 clean: 33 clean:
34 for d in . $(SUBDIRS) $(XSUBDIRS); do \ 34 for d in . $(SUBDIRS) $(XSUBDIRS); do \

cvs diff -r1.2 -r1.3 pkgsrc/devel/nasm/patches/patch-doc_Makefile.in (expand / switch to unified diff)

--- pkgsrc/devel/nasm/patches/patch-doc_Makefile.in 2017/05/18 21:44:42 1.2
+++ pkgsrc/devel/nasm/patches/patch-doc_Makefile.in 2018/12/18 09:24:33 1.3
@@ -1,56 +1,47 @@ @@ -1,56 +1,47 @@
1$NetBSD: patch-doc_Makefile.in,v 1.2 2017/05/18 21:44:42 adam Exp $ 1$NetBSD: patch-doc_Makefile.in,v 1.3 2018/12/18 09:24:33 adam Exp $
2 2
3Use correct paths and tools. 3Use correct paths and tools.
4Do not build nasmdoc.pdf. 4Do not build nasmdoc.pdf.
5Avoid cp -u, it is not portable. 5Avoid cp -u, it is not portable.
6 6
7--- doc/Makefile.in.orig 2017-05-02 05:18:37.000000000 +0000 7--- doc/Makefile.in.orig 2018-11-07 21:44:06.000000000 +0000
8+++ doc/Makefile.in 8+++ doc/Makefile.in
9@@ -9,7 +9,8 @@ prefix = @prefix@ 9@@ -18,7 +18,7 @@ INSTALL = @INSTALL@
10 exec_prefix = @exec_prefix@ 
11 bindir = @bindir@ 
12 mandir = @mandir@ 
13-docdir = $(prefix)/doc/nasm 
14+docdir = $(prefix)/share/doc/nasm 
15+htmldocdir = $(docdir)/html 
16 infodir = @infodir@ 
17 datarootdir = @datarootdir@ 
18  
19@@ -17,7 +18,7 @@ INSTALL = @INSTALL@ 
20 INSTALL_PROGRAM = @INSTALL_PROGRAM@ 10 INSTALL_PROGRAM = @INSTALL_PROGRAM@
21 INSTALL_DATA = @INSTALL_DATA@ 11 INSTALL_DATA = @INSTALL_DATA@
22  12
23-PERL = perl -I$(srcdir) 13-PERL = perl -I$(srcdir)
24+PERL = ${PERL5} -I$(srcdir) 14+PERL = ${PERL5} -I$(srcdir)
25  15
26 PDFOPT = @PDFOPT@ 16 PDFOPT = @PDFOPT@
27  17
28@@ -30,7 +31,7 @@ CP_UF = cp -ufv 18@@ -32,7 +32,7 @@ CP_UF = cp -ufv
29 HTMLAUX = nasmdoc.css local.css nasmlogw.png 19 HTMLAUX = nasmdoc.css local.css nasmlogw.png
30  20
31 SRCS = nasmdoc.src inslist.src changes.src version.src 21 SRCS = nasmdoc.src inslist.src changes.src version.src
32-OUT = html nasmdoc.txt nasmdoc.pdf 22-OUT = html nasmdoc.txt nasmdoc.pdf
33+OUT = html nasmdoc.txt 23+OUT = html nasmdoc.txt
34  24
 25 .SUFFIXES:
35 .SUFFIXES: .pfa .ph 26 .SUFFIXES: .pfa .ph
36  27@@ -45,7 +45,7 @@ inslist.src: inslist.pl ../x86/insns.dat
37@@ -42,7 +43,7 @@ inslist.src: inslist.pl ../x86/insns.dat 
38 .PHONY: html 28 .PHONY: html
39 html: $(HTMLAUX) 29 html: $(HTMLAUX)
40 mkdir -p html 30 $(MKDIR) -p html
41- for f in $(HTMLAUX); do $(CP_UF) "$(srcdir)/$$f" html/; done 31- for f in $(HTMLAUX); do $(CP_UF) "$(srcdir)/$$f" html/; done
42+ for f in $(HTMLAUX); do $(CP_F) "$(srcdir)/$$f" html/; done 32+ for f in $(HTMLAUX); do $(CP_F) "$(srcdir)/$$f" html/; done
43 $(MAKE) html/nasmdoc0.html 33 $(MAKE) html/nasmdoc0.html
44  34
45 RDSRC = $(PERL) $(srcdir)/rdsrc.pl -I$(srcdir)/ 35 RDSRC = $(PERL) $(srcdir)/rdsrc.pl -I$(srcdir)/
46@@ -81,6 +82,7 @@ spotless: clean 36@@ -84,7 +84,7 @@ spotless: clean
47 -$(RM_F) *.hlp nasmdoc.txt *.inf *.pdf *.dvi 37 -$(RM_F) *.hlp nasmdoc.txt *.inf *.pdf *.dvi
48  38
49 install: all 39 install: all
50- mkdir -p $(INSTALLROOT)$(docdir)/html 40- $(MKDIR) -p $(DESTDIR)$(htmldir)
51- $(INSTALL_DATA) html/* $(INSTALLROOT)$(docdir)/html 41- $(INSTALL_DATA) html/* $(DESTDIR)$(htmldir)
52- $(INSTALL_DATA) nasmdoc.pdf nasmdoc.txt $(INSTALLROOT)$(docdir) 42- $(MKDIR) -p $(DESTDIR)$(docdir)
53+ $(BSD_INSTALL_DATA_DIR) $(INSTALLROOT)$(docdir) 43- $(INSTALL_DATA) nasmdoc.pdf nasmdoc.txt $(DESTDIR)$(docdir)
54+ $(BSD_INSTALL_DATA_DIR) $(INSTALLROOT)$(htmldocdir) 44+ $(BSD_INSTALL_DATA_DIR) $(DESTDIR)$(htmldir)
55+ $(BSD_INSTALL_DATA) html/* $(INSTALLROOT)$(htmldocdir) 45+ $(BSD_INSTALL_DATA) html/* $(DESTDIR)$(htmldir)
56+ $(BSD_INSTALL_DATA) nasmdoc.txt $(INSTALLROOT)$(docdir) 46+ $(BSD_INSTALL_DATA_DIR) $(DESTDIR)$(docdir)
 47+ $(BSD_INSTALL_DATA) nasmdoc.txt $(DESTDIR)$(docdir)

File Deleted: pkgsrc/devel/nasm/patches/Attic/patch-include_nasmlib.h