pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/devel/nasm nasm: updated to 2.14



details:   https://anonhg.NetBSD.org/pkgsrc/rev/9cd810d984c7
branches:  trunk
changeset: 316769:9cd810d984c7
user:      adam <adam%pkgsrc.org@localhost>
date:      Tue Dec 18 09:24:33 2018 +0000

description:
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.

diffstat:

 devel/nasm/Makefile                        |  11 +++++--
 devel/nasm/distinfo                        |  15 +++++-----
 devel/nasm/patches/patch-Makefile.in       |  32 +++++++++++-----------
 devel/nasm/patches/patch-doc_Makefile.in   |  41 +++++++++++------------------
 devel/nasm/patches/patch-include_nasmlib.h |  15 ----------
 5 files changed, 46 insertions(+), 68 deletions(-)

diffs (199 lines):

diff -r 1c4363ec151f -r 9cd810d984c7 devel/nasm/Makefile
--- a/devel/nasm/Makefile       Tue Dec 18 06:49:12 2018 +0000
+++ b/devel/nasm/Makefile       Tue Dec 18 09:24:33 2018 +0000
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.59 2018/11/12 14:40:21 jperkin Exp $
+# $NetBSD: Makefile,v 1.60 2018/12/18 09:24:33 adam Exp $
 
-DISTNAME=      nasm-2.13.03
-PKGREVISION=   1
+DISTNAME=      nasm-2.14
 CATEGORIES=    devel lang
 MASTER_SITES=  http://www.nasm.us/pub/nasm/releasebuilds/${PKGVERSION_NOREV}/
 EXTRACT_SUFX=  .tar.xz
@@ -11,13 +10,17 @@
 COMMENT=       General-purpose x86 assembler
 LICENSE=       2-clause-bsd
 
+BUILD_DEPENDS+=        asciidoc-[0-9]*:../../textproc/asciidoc
+BUILD_DEPENDS+=        xmlto-[0-9]*:../../textproc/xmlto
+
 USE_TOOLS+=            gmake makeinfo perl
 GNU_CONFIGURE=         yes
+CONFIGURE_ARGS+=       --docdir=${PREFIX}/share/doc/nasm
+CONFIGURE_ARGS+=       --htmldir=${PREFIX}/share/doc/nasm/html
 
 BUILD_TARGET=          everything
 INSTALL_TARGET=                install_everything
 
-INSTALL_ENV+=  INSTALLROOT=${DESTDIR}
 MAKE_ENV+=     PERL5=${PERL5:Q}
 
 CTF_SUPPORTED= no # https://smartos.org/bugview/OS-6510
diff -r 1c4363ec151f -r 9cd810d984c7 devel/nasm/distinfo
--- a/devel/nasm/distinfo       Tue Dec 18 06:49:12 2018 +0000
+++ b/devel/nasm/distinfo       Tue Dec 18 09:24:33 2018 +0000
@@ -1,9 +1,8 @@
-$NetBSD: distinfo,v 1.30 2018/05/20 16:36:03 jakllsch Exp $
+$NetBSD: distinfo,v 1.31 2018/12/18 09:24:33 adam Exp $
 
-SHA1 (nasm-2.13.03.tar.xz) = 1338ae8832bdbabd00a2b7ee3e39b8fd2f923ea0
-RMD160 (nasm-2.13.03.tar.xz) = 6ddd260f553e79d87f1642c9f9c7abfc1c6ec16d
-SHA512 (nasm-2.13.03.tar.xz) = 24e6c72b80a878453baf3b525c1bad607431ff672a927f73e742379fa833b3f5d3fa4479addfcec6d96f354aa90a45905ff9c76ab5217c3bcb7091107b32e2b5
-Size (nasm-2.13.03.tar.xz) = 806636 bytes
-SHA1 (patch-Makefile.in) = a85054afeb827b61b0db3352825088454e3013d4
-SHA1 (patch-doc_Makefile.in) = 20bb04e4fb00ec14d1e2bb31a3fe2497673132ef
-SHA1 (patch-include_nasmlib.h) = 2ec6f98dcb7a7583e5f8cd1051a97f70eae223f5
+SHA1 (nasm-2.14.tar.xz) = 02c59169d7977846eac851b6c742fb235dd102c9
+RMD160 (nasm-2.14.tar.xz) = 12ce766abe1dceeaf0c735000affb2225880632f
+SHA512 (nasm-2.14.tar.xz) = 0f7f1b8b0cd4ac62df1dc203789b74670ebe10f3be10af9984331b1c348745ed31a43aca77c5c771016a718fa2c7c8805c1c9edfdd6b0fe83ee0937cb0dd3d23
+Size (nasm-2.14.tar.xz) = 824780 bytes
+SHA1 (patch-Makefile.in) = d16a4aecb10006463efa6fa564d4d1300225f140
+SHA1 (patch-doc_Makefile.in) = ddf0738421f3160fb9db143f631ecf5ea8ed4a89
diff -r 1c4363ec151f -r 9cd810d984c7 devel/nasm/patches/patch-Makefile.in
--- a/devel/nasm/patches/patch-Makefile.in      Tue Dec 18 06:49:12 2018 +0000
+++ b/devel/nasm/patches/patch-Makefile.in      Tue Dec 18 09:24:33 2018 +0000
@@ -1,10 +1,10 @@
-$NetBSD: patch-Makefile.in,v 1.2 2017/05/18 21:44:42 adam Exp $
+$NetBSD: patch-Makefile.in,v 1.3 2018/12/18 09:24:33 adam Exp $
 
 Use correct tools.
 
---- Makefile.in.orig   2017-05-02 05:18:51.000000000 +0000
+--- Makefile.in.orig   2018-11-07 21:44:06.000000000 +0000
 +++ Makefile.in
-@@ -35,7 +35,7 @@ AR           = @AR@
+@@ -36,7 +36,7 @@ AR           = @AR@
  RANLIB                = @RANLIB@
  STRIP         = @STRIP@
  
@@ -13,22 +13,22 @@
  PERLFLAGS     = -I$(srcdir)/perllib -I$(srcdir)
  RUNPERL         = $(PERL) $(PERLFLAGS)
  
-@@ -334,12 +334,12 @@ nsis: nsis/nasm.nsi nsis/arch.nsh nsis/v
+@@ -344,12 +344,12 @@ nsis: nsis/nasm.nsi nsis/arch.nsh nsis/v
  manpages: nasm.1 ndisasm.1
  
  install: nasm$(X) ndisasm$(X)
--      $(MKDIR) -p $(INSTALLROOT)$(bindir)
--      $(INSTALL_PROGRAM) nasm$(X) $(INSTALLROOT)$(bindir)/nasm$(X)
--      $(INSTALL_PROGRAM) ndisasm$(X) $(INSTALLROOT)$(bindir)/ndisasm$(X)
--      $(MKDIR) -p $(INSTALLROOT)$(mandir)/man1
--      $(INSTALL_DATA) $(srcdir)/nasm.1 $(INSTALLROOT)$(mandir)/man1/nasm.1
--      $(INSTALL_DATA) $(srcdir)/ndisasm.1 $(INSTALLROOT)$(mandir)/man1/ndisasm.1
-+      $(BSD_INSTALL_PROGRAM_DIR) $(INSTALLROOT)$(bindir)
-+      $(BSD_INSTALL_PROGRAM) nasm$(X) $(INSTALLROOT)$(bindir)/nasm$(X)
-+      $(BSD_INSTALL_PROGRAM) ndisasm$(X) $(INSTALLROOT)$(bindir)/ndisasm$(X)
-+      $(BSD_INSTALL_MAN_DIR) $(INSTALLROOT)$(mandir)/man1
-+      $(BSD_INSTALL_MAN) $(srcdir)/nasm.1 $(INSTALLROOT)$(mandir)/man1/nasm.1
-+      $(BSD_INSTALL_MAN) $(srcdir)/ndisasm.1 $(INSTALLROOT)$(mandir)/man1/ndisasm.1
+-      $(MKDIR) $(DESTDIR)$(bindir)
+-      $(INSTALL_PROGRAM) nasm$(X) $(DESTDIR)$(bindir)/nasm$(X)
+-      $(INSTALL_PROGRAM) ndisasm$(X) $(DESTDIR)$(bindir)/ndisasm$(X)
+-      $(MKDIR) $(DESTDIR)$(mandir)/man1
+-      $(INSTALL_DATA) $(srcdir)/nasm.1 $(DESTDIR)$(mandir)/man1/nasm.1
+-      $(INSTALL_DATA) $(srcdir)/ndisasm.1 $(DESTDIR)$(mandir)/man1/ndisasm.1
++      $(BSD_INSTALL_PROGRAM_DIR) $(DESTDIR)$(bindir)
++      $(BSD_INSTALL_PROGRAM) nasm$(X) $(DESTDIR)$(bindir)/nasm$(X)
++      $(BSD_INSTALL_PROGRAM) ndisasm$(X) $(DESTDIR)$(bindir)/ndisasm$(X)
++      $(BSD_INSTALL_MAN_DIR) $(DESTDIR)$(mandir)/man1
++      $(BSD_INSTALL_MAN) $(srcdir)/nasm.1 $(DESTDIR)$(mandir)/man1/nasm.1
++      $(BSD_INSTALL_MAN) $(srcdir)/ndisasm.1 $(DESTDIR)$(mandir)/man1/ndisasm.1
  
  clean:
        for d in . $(SUBDIRS) $(XSUBDIRS); do \
diff -r 1c4363ec151f -r 9cd810d984c7 devel/nasm/patches/patch-doc_Makefile.in
--- a/devel/nasm/patches/patch-doc_Makefile.in  Tue Dec 18 06:49:12 2018 +0000
+++ b/devel/nasm/patches/patch-doc_Makefile.in  Tue Dec 18 09:24:33 2018 +0000
@@ -1,22 +1,12 @@
-$NetBSD: patch-doc_Makefile.in,v 1.2 2017/05/18 21:44:42 adam Exp $
+$NetBSD: patch-doc_Makefile.in,v 1.3 2018/12/18 09:24:33 adam Exp $
 
 Use correct paths and tools.
 Do not build nasmdoc.pdf.
 Avoid cp -u, it is not portable.
 
---- doc/Makefile.in.orig       2017-05-02 05:18:37.000000000 +0000
+--- doc/Makefile.in.orig       2018-11-07 21:44:06.000000000 +0000
 +++ doc/Makefile.in
-@@ -9,7 +9,8 @@ prefix         = @prefix@
- exec_prefix   = @exec_prefix@
- bindir                = @bindir@
- mandir                = @mandir@
--docdir                = $(prefix)/doc/nasm
-+docdir                = $(prefix)/share/doc/nasm
-+htmldocdir    = $(docdir)/html
- infodir               = @infodir@
- datarootdir   = @datarootdir@
- 
-@@ -17,7 +18,7 @@ INSTALL              = @INSTALL@
+@@ -18,7 +18,7 @@ INSTALL              = @INSTALL@
  INSTALL_PROGRAM       = @INSTALL_PROGRAM@
  INSTALL_DATA  = @INSTALL_DATA@
  
@@ -25,32 +15,33 @@
  
  PDFOPT                = @PDFOPT@
  
-@@ -30,7 +31,7 @@ CP_UF                = cp -ufv
+@@ -32,7 +32,7 @@ CP_UF                = cp -ufv
  HTMLAUX               = nasmdoc.css local.css nasmlogw.png
  
  SRCS          = nasmdoc.src inslist.src changes.src version.src
 -OUT           = html nasmdoc.txt nasmdoc.pdf
 +OUT           = html nasmdoc.txt
  
+ .SUFFIXES:
  .SUFFIXES: .pfa .ph
- 
-@@ -42,7 +43,7 @@ inslist.src: inslist.pl ../x86/insns.dat
+@@ -45,7 +45,7 @@ inslist.src: inslist.pl ../x86/insns.dat
  .PHONY: html
  html: $(HTMLAUX)
-       mkdir -p html
+       $(MKDIR) -p html
 -      for f in $(HTMLAUX); do $(CP_UF) "$(srcdir)/$$f" html/; done
 +      for f in $(HTMLAUX); do $(CP_F) "$(srcdir)/$$f" html/; done
        $(MAKE) html/nasmdoc0.html
  
  RDSRC = $(PERL) $(srcdir)/rdsrc.pl -I$(srcdir)/
-@@ -81,6 +82,7 @@ spotless: clean
+@@ -84,7 +84,7 @@ spotless: clean
        -$(RM_F) *.hlp nasmdoc.txt *.inf *.pdf *.dvi
  
  install: all
--      mkdir -p $(INSTALLROOT)$(docdir)/html
--      $(INSTALL_DATA) html/* $(INSTALLROOT)$(docdir)/html
--      $(INSTALL_DATA) nasmdoc.pdf nasmdoc.txt $(INSTALLROOT)$(docdir)
-+      $(BSD_INSTALL_DATA_DIR) $(INSTALLROOT)$(docdir)
-+      $(BSD_INSTALL_DATA_DIR) $(INSTALLROOT)$(htmldocdir)
-+      $(BSD_INSTALL_DATA) html/* $(INSTALLROOT)$(htmldocdir)
-+      $(BSD_INSTALL_DATA) nasmdoc.txt $(INSTALLROOT)$(docdir)
+-      $(MKDIR) -p $(DESTDIR)$(htmldir)
+-      $(INSTALL_DATA) html/* $(DESTDIR)$(htmldir)
+-      $(MKDIR) -p $(DESTDIR)$(docdir)
+-      $(INSTALL_DATA) nasmdoc.pdf nasmdoc.txt $(DESTDIR)$(docdir)
++      $(BSD_INSTALL_DATA_DIR) $(DESTDIR)$(htmldir)
++      $(BSD_INSTALL_DATA) html/* $(DESTDIR)$(htmldir)
++      $(BSD_INSTALL_DATA_DIR) $(DESTDIR)$(docdir)
++      $(BSD_INSTALL_DATA) nasmdoc.txt $(DESTDIR)$(docdir)
diff -r 1c4363ec151f -r 9cd810d984c7 devel/nasm/patches/patch-include_nasmlib.h
--- a/devel/nasm/patches/patch-include_nasmlib.h        Tue Dec 18 06:49:12 2018 +0000
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-$NetBSD: patch-include_nasmlib.h,v 1.1 2018/05/20 16:36:04 jakllsch Exp $
-
-error: 'pure' attribute on function returning 'void'
-
---- include/nasmlib.h.orig     2018-02-07 21:40:15.000000000 +0000
-+++ include/nasmlib.h
-@@ -191,7 +191,7 @@ int64_t readstrnum(char *str, int length
-  * seg_init: Initialise the segment-number allocator.
-  * seg_alloc: allocate a hitherto unused segment number.
-  */
--void pure_func seg_init(void);
-+void seg_init(void);
- int32_t pure_func seg_alloc(void);
- 
- /*



Home | Main Index | Thread Index | Old Index