Here is an update to nasm 3.01.

https://www.nasm.us/docs/3.01/nasmac.html

Run through a bulk build on amd64 and i386.


Index: Makefile
===================================================================
RCS file: /cvs/ports/devel/nasm/Makefile,v
retrieving revision 1.54
diff -u -p -u -p -r1.54 Makefile
--- Makefile    26 Jul 2024 12:02:01 -0000      1.54
+++ Makefile    19 Feb 2026 02:36:53 -0000
@@ -1,6 +1,6 @@
 COMMENT=       general-purpose multi-platform x86 assembler
 
-VERSION=       2.16.03
+VERSION=       3.01
 DISTNAME=      nasm-${VERSION}
 CATEGORIES=    devel lang
 SITES=         ${HOMEPAGE}/pub/nasm/releasebuilds/${VERSION}/
@@ -8,12 +8,12 @@ EXTRACT_SUFX= .tar.xz
 
 HOMEPAGE=      https://www.nasm.us/
 
-MAINTAINER =   Jasper Lievisse Adriaanse <[email protected]>
+MAINTAINER=    Jasper Lievisse Adriaanse <[email protected]>
 
 # BSD
 PERMIT_PACKAGE=        Yes
 
-WANTLIB=       c
+WANTLIB=       c z
 
 USE_GMAKE=     Yes
 CONFIGURE_STYLE= gnu
@@ -25,6 +25,6 @@ INSTALL_TARGET=       install_everything
 
 NO_TEST=       Yes
 
-DEBUG_PACKAGES =${BUILD_PACKAGES}
+DEBUG_PACKAGES=        ${BUILD_PACKAGES}
 
 .include <bsd.port.mk>
Index: distinfo
===================================================================
RCS file: /cvs/ports/devel/nasm/distinfo,v
retrieving revision 1.28
diff -u -p -u -p -r1.28 distinfo
--- distinfo    26 Jul 2024 12:02:01 -0000      1.28
+++ distinfo    19 Feb 2026 02:36:53 -0000
@@ -1,2 +1,2 @@
-SHA256 (nasm-2.16.03.tar.xz) = FBKhx2C70F2wJrbA0WV6/9ZjHNCmPN229zzG1KphYUg=
-SIZE (nasm-2.16.03.tar.xz) = 1032388
+SHA256 (nasm-3.01.tar.xz) = tzJMvobnZ7ZfJvRn7YsSrYDhJOPMuJB2hVyY5Dqe3dQ=
+SIZE (nasm-3.01.tar.xz) = 1499136
Index: patches/patch-doc_Makefile_in
===================================================================
RCS file: /cvs/ports/devel/nasm/patches/patch-doc_Makefile_in,v
retrieving revision 1.7
diff -u -p -u -p -r1.7 patch-doc_Makefile_in
--- patches/patch-doc_Makefile_in       26 Jul 2024 12:02:01 -0000      1.7
+++ patches/patch-doc_Makefile_in       19 Feb 2026 02:36:53 -0000
@@ -1,7 +1,7 @@
 Index: doc/Makefile.in
 --- doc/Makefile.in.orig
 +++ doc/Makefile.in
-@@ -28,7 +28,7 @@ MKDIR_P              = @MKDIR_P@
+@@ -42,7 +42,7 @@ MKDIR_P              = @MKDIR_P@
  RM_F          = rm -f
  RM_RF         = rm -rf
  CP_F          = cp -f
@@ -10,29 +10,25 @@ Index: doc/Makefile.in
  
  # Optional tools
  XZ            = @XZ@
-@@ -40,7 +40,7 @@ XZFILES         = @XZFILES@
- HTMLAUX               = nasmdoc.css local.css nasmlogw.png
+@@ -62,7 +62,7 @@ SRCS         = nasmdoc.src
+ # All input files (except auto-dependencies)
+ ALLSRCS               = $(SRCS) $(GENSRC)
  
- SRCS          = nasmdoc.src inslist.src changes.src warnings.src version.src
 -OUT           = html nasmdoc.txt nasmdoc.pdf $(XZFILES)
 +OUT           = html nasmdoc.txt # nasmdoc.pdf $(XZFILES)
  XZOUT           = nasmdoc.pdf.xz
  
- # Don't delete intermediate files
-@@ -109,7 +109,6 @@ nasmdoc.pdf.xz: nasmdoc-raw.pdf
-       $(XZ) -9e < $< > $@
+ # Use "make install PDFZ=.xz" to install pdf.xz
+@@ -158,7 +158,11 @@ install_pdf: nasmdoc.pdf$(PDFZ)
+       $(MKDIR_P) $(DESTDIR)$(pdfdir)
+       $(INSTALL_DATA) nasmdoc.pdf$(PDFZ) $(DESTDIR)$(pdfdir)
  
- clean:
--      -$(RM_F) *.rtf *.hpj *.texi *.gid *.ipf *.dip
-       -$(RM_F) *.aux *.cp *.fn *.ky *.pg *.log *.toc *.tp *.vr
-       -$(RM_F) inslist.src version.src fontpath Fontmap
-       -$(RM_F) nasmdoc*.ps nasmdoc-raw.pdf
-@@ -122,7 +121,7 @@ install: all
-       $(MKDIR_P) $(DESTDIR)$(htmldir)
-       $(INSTALL_DATA) html/* $(DESTDIR)$(htmldir)
-       $(MKDIR_P) $(DESTDIR)$(docdir)
--      $(INSTALL_DATA) nasmdoc.pdf nasmdoc.txt $(DESTDIR)$(docdir)
-+      $(INSTALL_DATA) internal.doc nasmdoc.txt $(DESTDIR)$(docdir)
+-install: install_html install_pdf
++install_doc: internal.doc
++      $(MKDIR_P) $(DESTDIR)$(docdir)
++      $(INSTALL_DATA) internal.doc $(DESTDIR)$(docdir)
++
++install: install_html install_doc
  
  #
  # Dummy rules that changes make behavior
Index: patches/patch-include_compiler_h
===================================================================
RCS file: patches/patch-include_compiler_h
diff -N patches/patch-include_compiler_h
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-include_compiler_h    19 Feb 2026 02:36:53 -0000
@@ -0,0 +1,62 @@
+- compiler.h: drop the stupid C++-style cast-to-bool hack
+  44e89ba9b650b5e1533bca43682e167f51a3511f
+- compiler.h: the test for "neither C++ nor C23" still wrong
+  746e7c9efa37cec9a44d84a1e96b8c38f385cc1f
+
+Index: include/compiler.h
+--- include/compiler.h.orig
++++ include/compiler.h
+@@ -181,19 +181,10 @@ size_t strlcpy(char *, const char *, size_t);
+ char * pure_func strrchrnul(const char *, int);
+ #endif
+ 
+-#if !defined(__cplusplus) || (__STDC_VERSION >= 202311L)
+ /* C++ and C23 have bool, false, and true as proper keywords */
++#if !defined(__cplusplus) && (__STDC_VERSION__ < 202311L)
+ # ifdef HAVE_STDBOOL_H
+-/* If <stdbool.h> exists, include it explicitly to prevent it from
+-   begin included later, causing the "bool" macro to be defined. */
+ #  include <stdbool.h>
+-#  ifdef bool
+-/* Force bool to be a typedef instead of a macro. What a "clever" hack
+-   this is... */
+-    typedef bool                /* The macro definition of bool */
+-#  undef bool
+-        bool;                   /* No longer the macro definition */
+-#  endif
+ # elif defined(HAVE___BOOL)
+    typedef _Bool bool;
+ #  define false 0
+@@ -201,14 +192,10 @@ char * pure_func strrchrnul(const char *, int);
+ # else
+ /* This is a bit dangerous, because casting to this ersatz bool
+    will not produce the same result as the standard (bool) cast.
+-   Instead, use the bool() constructor-style macro defined below. */
++   Instead, use the explicit construct !!x instead of relying on
++   implicit conversions or casts. */
+ typedef enum bool { false, true } bool;
+ # endif
+-/* This amounts to a C++-style conversion cast to bool.  This works
+-   because C ignores an argument-taking macro when used without an
+-   argument and because bool was redefined as a typedef if it previously
+-   was defined as a macro (see above.) */
+-# define bool(x) ((bool)!!(x))
+ #endif
+ 
+ /* Create a NULL pointer of the same type as the address of
+@@ -321,11 +308,11 @@ static inline void *mempset(void *dst, int c, size_t n
+  * less likely to be taken.
+  */
+ #ifdef HAVE___BUILTIN_EXPECT
+-# define likely(x)    __builtin_expect(bool(x), true)
+-# define unlikely(x)  __builtin_expect(bool(x), false)
++# define likely(x)    __builtin_expect(!!(x), true)
++# define unlikely(x)  __builtin_expect(!!(x), false)
+ #else
+-# define likely(x)    bool(x)
+-# define unlikely(x)  bool(x)
++# define likely(x)    (!!(x))
++# define unlikely(x)  (!!(x))
+ #endif
+ 
+ #ifdef HAVE___BUILTIN_PREFETCH
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/devel/nasm/pkg/PLIST,v
retrieving revision 1.17
diff -u -p -u -p -r1.17 PLIST
--- pkg/PLIST   23 May 2023 09:56:52 -0000      1.17
+++ pkg/PLIST   19 Feb 2026 02:36:53 -0000
@@ -5,28 +5,31 @@
 share/doc/nasm/
 share/doc/nasm/html/
 share/doc/nasm/html/local.css
-share/doc/nasm/html/nasmdo10.html
-share/doc/nasm/html/nasmdo11.html
-share/doc/nasm/html/nasmdo12.html
-share/doc/nasm/html/nasmdo13.html
+share/doc/nasm/html/nasm00.html
+share/doc/nasm/html/nasm01.html
+share/doc/nasm/html/nasm02.html
+share/doc/nasm/html/nasm03.html
+share/doc/nasm/html/nasm04.html
+share/doc/nasm/html/nasm05.html
+share/doc/nasm/html/nasm06.html
+share/doc/nasm/html/nasm07.html
+share/doc/nasm/html/nasm08.html
+share/doc/nasm/html/nasm09.html
+share/doc/nasm/html/nasm10.html
+share/doc/nasm/html/nasm11.html
+share/doc/nasm/html/nasm12.html
+share/doc/nasm/html/nasm13.html
+share/doc/nasm/html/nasm14.html
+share/doc/nasm/html/nasmaa.html
+share/doc/nasm/html/nasmab.html
+share/doc/nasm/html/nasmac.html
+share/doc/nasm/html/nasmad.html
+share/doc/nasm/html/nasmae.html
+share/doc/nasm/html/nasmaf.html
 share/doc/nasm/html/nasmdoc.css
-share/doc/nasm/html/nasmdoc0.html
-share/doc/nasm/html/nasmdoc1.html
-share/doc/nasm/html/nasmdoc2.html
-share/doc/nasm/html/nasmdoc3.html
-share/doc/nasm/html/nasmdoc4.html
-share/doc/nasm/html/nasmdoc5.html
-share/doc/nasm/html/nasmdoc6.html
-share/doc/nasm/html/nasmdoc7.html
-share/doc/nasm/html/nasmdoc8.html
-share/doc/nasm/html/nasmdoc9.html
-share/doc/nasm/html/nasmdoca.html
-share/doc/nasm/html/nasmdocb.html
-share/doc/nasm/html/nasmdocc.html
-share/doc/nasm/html/nasmdocd.html
-share/doc/nasm/html/nasmdoce.html
-share/doc/nasm/html/nasmdocf.html
-share/doc/nasm/html/nasmdoci.html
+share/doc/nasm/html/nasmix.html
 share/doc/nasm/html/nasmlogw.png
 share/doc/nasm/internal.doc
-share/doc/nasm/nasmdoc.txt
+share/nasm/
+share/nasm/nasmtok.el
+share/nasm/nasmtok.json

Reply via email to