[BACK]Return to Makefile CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / pkgsrc / devel / nasm

File: [cvs.NetBSD.org] / pkgsrc / devel / nasm / Makefile (download)

Revision 1.64, Sat Aug 8 18:35:10 2020 UTC (3 years, 8 months ago) by nia
Branch: MAIN
Changes since 1.63: +7 -6 lines

nasm: Update to 2.15.03

C.1.1 Version 2.15.03

     * Add instructions from the Intel Instruction Set Extensions and
       Future Features Programming Reference, June 2020. This includes
       AVX5512 bfloat16, AVX512 mask intersect, and Intel Advanced Matrix
       Extensions (AMX).
     * Support for bfloat16 floating-point constants. See [5]section 3.4.6
       and [6]section 6.3.
     * Properly display warnings in preprocess-only mode.
     * Fix copy-and-paste of examples from the PDF documentation.
     * Debug information now properly reflect the line numbers of macro
       invocations (unless declared .nolist).
     * Fix excessive alignment of sections in the coff/win32/win64 output
       formats when the user-specified alignment is less than the default
       alignment for the section or section type.
     * Fix explicit token pasting (%+, [7]section 4.1.4) for the cases
       where one or more parts result from empty token expansion,
       resulting in %+ tokens at the beginning or end, or multiple ones in
       a row.
     * Fix macro label capture (%00, [8]section 4.3.7).
     * Much better documentation for the MASM compatiblity package, %use
       masm (see [9]section 6.5).
     * Fix LEA without square brackets, for MASM compatibility.
     * Portability fixes.

C.1.2 Version 2.15.02

     * Fix miscompilation when building with clang.
     * Add db-empty warning class, see [10]section 2.1.26.
     * Fix the dependencies in the MSVC NMAKE makefile (Mkfiles/msvc.mak).
     * Some documentation improvements and cleanups.
     * Fix the handling of macro parameter ranges (%{:}), including with
       brace-enclosed original arguments.

C.1.3 Version 2.15.01

     * Fix building the documentation from the release archive. For 2.15,
       the user has to do make warnings manually in the main directory in
       order to be able to build the documentation, which means Perl needs
       to be installed on the system.
     * Add instructions for Intel Control Flow Enforcement Technology
       (CET).

C.1.4 Version 2.15

     * The comparison and booleanizing operators can now be used in any
       expression context, not just %if. See [11]section 3.5.
     * New operator ? ... :. See [12]section 3.5.1.
     * Signed shift operators <<< and >>>. See [13]section 3.5.9.
     * The MASM DUP syntax for data definitions is now supported, in a
       somewhat enhanced form. See [14]section 3.2.1.
     * Warn for strange legacy behavior regarding empty arguments in
       multi-line macro expansion, but try to match legacy behavior in
       most cases. Legacy behavior can be disabled with the directive
       %pragma preproc sane_empty_expansion, see [15]section 4.3 and
       [16]section 4.10.1.
     * A much more sensible limit to expression evaluation depth. The
       previously defined limit would rarely trigger before NASM died with
       a stack overrun error on most systems. See [17]section 2.1.31.
     * The state of warnings can now be saved and restored via the
       [WARNING PUSH] and [WARNING POP] directives. See [18]section 7.13.
     * The sectalign on|off switch does not affect an explicit directive.
       See [19]section 5.10.2.
     * Added configure option to enable building with profiling
       (--enable-profiling).
     * Attempt to support of long path names, up to 32767 of UTF-16
       characters, on Windows.
     * Fixed 'mismatch in operand sizes' error in the MOVDDUP, CMPXCHG8B
       and CMPXCHG16B instructions.
     * Improved error messages in the string transformation routine.
     * Removed obsolete gnu-elf-extensions warning about 8- and 16-bit
       relocation generation. See [20]section 8.9.8
     * Added group aliases for all prefixed warnings. See [21]section
       2.1.26.
     * Allowed building with MSVC versions older than 1700.
     * Added implicitly sized versions of the K... instructions, which
       allows the K... instructions to be specified without a size suffix
       as long as the operands are sized.
     * Added -L option for additional listing information. See [22]section
       2.1.4.
     * Added some warnings for obsolete instructions for a specified CPU.
     * Deprecated -hf and -y options. Use -h instead.
     * Made DWARF as the default debug format for ELF.
     * Added %pragma list options... to set or clear listing options (see
       opt-L).
     * Allowed immediate syntax for LEA instruction (ignore operand size
       completely).
     * Added limited functionality MASM compatibility package. See
       [23]section 6.5.
     * Add single-line macros aliases using %defalias or %idefalias. These
       behave like a kind of "symbolic links" for single-line macros. See
       [24]section 4.1.10 and clear.
     * Added support for stringify, nostrip, evaluating, and greedy
       single-line macro arguments. See [25]section 4.1.1.
     * Unused single-line macro arguments no longer need to have a
       specified name. See [26]section 4.1.1.
     * Added conditional comma operator %,. See [27]section 4.1.11.
     * Changed private namespace from __foo__ to __?foo?__, so a user
       namespace starting from underscore is now clean from symbols. For
       backwards compatibility, the previous names are defined as aliases;
       see [28]section 4.1.10, [29]section 4.11.3 and [30]chapter 5.
     * Added support of ELF weak symbols and external references. See
       [31]section 8.9.5.
     * Changed the behavior of the EXTERN keyword and introduced REQUIRED
       keyword. See [32]section 7.6.
     * Added %ifusable and %ifusing directives. See [33]chapter 6.
     * Made various performance improvements and stability fixes in macro
       preprocessor engine.
     * Improved NASM error handling and cleaned up error messages.
     * Many, many bug fixes.

# $NetBSD: Makefile,v 1.64 2020/08/08 18:35:10 nia Exp $

DISTNAME=	nasm-2.15.03
CATEGORIES=	devel lang
MASTER_SITES=	http://www.nasm.us/pub/nasm/releasebuilds/${PKGVERSION_NOREV}/
EXTRACT_SUFX=	.tar.xz

MAINTAINER=	pkgsrc-users@NetBSD.org
HOMEPAGE=	https://www.nasm.us/
COMMENT=	General-purpose x86 assembler
LICENSE=	2-clause-bsd

TOOL_DEPENDS+=	asciidoc-[0-9]*:../../textproc/asciidoc
TOOL_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
TEST_TARGET=		test

MAKE_FLAGS+=	PERL5=${PERL5:Q}
MAKE_FLAGS+=	INSTALL_DATA=${INSTALL_DATA:Q}
MAKE_FLAGS+=	INSTALL_PROGRAM=${INSTALL_PROGRAM:Q}

CTF_SUPPORTED=	no # https://smartos.org/bugview/OS-6510

.include "../../mk/bsd.pkg.mk"