- Update to version 2.14.02:

OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/nasm?expand=0&rev=40
This commit is contained in:
Martin Pluskal 2019-03-05 15:23:08 +00:00 committed by Git OBS Bridge
parent 46771d9353
commit 227e469137
5 changed files with 54 additions and 56 deletions

View File

@ -1,41 +0,0 @@
commit 9f45a77f46829e666b35530939b9237cf978d4dc
Author: Cyrill Gorcunov <gorcunov@gmail.com>
Date: Sat Feb 10 00:40:46 2018 +0300
nasmlib: Drop pure_func attrib from seg_alloc
It not only reads static variable but writes it back as well.
https://bugzilla.nasm.us/show_bug.cgi?id=3392461
Reported-by: Michael Šimáček <msimacek@redhat.com>
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
commit 5eb1838b4d3752fd863d19442943983a2a5ee87c
Author: Cyrill Gorcunov <gorcunov@gmail.com>
Date: Sat Feb 10 00:33:41 2018 +0300
nasmlib: Drop unused seg_init
The helper has been eliminated in 2c4a4d5810d0a59b033a07876a2648ef5d4c2859
https://bugzilla.nasm.us/show_bug.cgi?id=3392461
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Index: nasm-2.13.03/include/nasmlib.h
===================================================================
--- nasm-2.13.03.orig/include/nasmlib.h
+++ nasm-2.13.03/include/nasmlib.h
@@ -188,11 +188,9 @@ int64_t readnum(char *str, bool *error);
int64_t readstrnum(char *str, int length, bool *warn);
/*
- * seg_init: Initialise the segment-number allocator.
* seg_alloc: allocate a hitherto unused segment number.
*/
-void pure_func seg_init(void);
-int32_t pure_func seg_alloc(void);
+int32_t seg_alloc(void);
/*
* many output formats will be able to make use of this: a standard

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:812ecfb0dcbc5bd409aaa8f61c7de94c5b8752a7b00c632883d15b2ed6452573
size 806636

3
nasm-2.14.02.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e24ade3e928f7253aa8c14aa44726d1edf3f98643f87c9d72ec1df44b26be8f5
size 827620

View File

@ -1,3 +1,47 @@
-------------------------------------------------------------------
Tue Mar 5 15:11:25 UTC 2019 - Martin Pluskal <mpluskal@suse.com>
- Update to version 2.14.02:
* Fix crash due to multiple errors or warnings during the code generation pass if a list file is specified.
* Create all system-defined macros defore processing command-line given preprocessing directives (-p, -d, -u, --pragma, --before).
* If debugging is enabled, define a __DEBUG_FORMAT__ predefined macro. See section 4.11.7.
* Fix an assert for the case in the obj format when a SEG operator refers to an EXTERN symbol declared further down in the code.
* Fix a corner case in the floating-point code where a binary, octal or hexadecimal floating-point having at least 32, 11, or 8 mantissa digits could produce slightly incorrect results under very specific conditions.
* Support -MD without a filename, for gcc compatibility. -MF can be used to set the dependencies output filename. See section 2.1.7.
* Fix -E in combination with -MD. See section 2.1.21.
* Fix missing errors on redefined labels; would cause convergence failure instead which is very slow and not easy to debug.
* Duplicate definitions of the same label with the same value is now explicitly permitted (2.14 would allow it in some circumstances.)
* Add the option --no-line to ignore %line directives in the source. See section 2.1.33 and section 4.10.1.
* 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.
- Drop no longer needed 9f45a77f4.patch
- Enable LTO
- Cleanup spec file
------------------------------------------------------------------- -------------------------------------------------------------------
Thu Mar 15 09:06:17 UTC 2018 - mpluskal@suse.com Thu Mar 15 09:06:17 UTC 2018 - mpluskal@suse.com

View File

@ -1,7 +1,7 @@
# #
# spec file for package nasm # spec file for package nasm
# #
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -12,19 +12,18 @@
# license that conforms to the Open Source Definition (Version 1.9) # license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative. # published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/ # Please submit bugfixes or comments via https://bugs.opensuse.org/
# #
Name: nasm Name: nasm
Version: 2.13.03 Version: 2.14.02
Release: 0 Release: 0
Summary: Netwide Assembler (An x86 Assembler) Summary: Netwide Assembler (An x86 Assembler)
License: BSD-2-Clause License: BSD-2-Clause
Group: Development/Languages/Other Group: Development/Languages/Other
URL: http://www.nasm.us/ URL: http://www.nasm.us/
Source: http://www.nasm.us/pub/nasm/releasebuilds/%{version}/nasm-%{version}.tar.xz Source: http://www.nasm.us/pub/nasm/releasebuilds/%{version}/nasm-%{version}.tar.xz
Patch1: 9f45a77f4.patch
BuildRequires: fdupes BuildRequires: fdupes
%description %description
@ -32,19 +31,15 @@ NASM is a prototype general-purpose x86 assembler. It can currently output
several binary formats, including ELF, a.out, Win32, and OS/2. several binary formats, including ELF, a.out, Win32, and OS/2.
%prep %prep
%autosetup -p1 %autosetup
%build %build
touch -r ./version.h ./version.h.stamp %configure \
TS=$(LC_ALL=C date -u -r %{_sourcedir}/%{name}.changes '+%%b %%e %%Y') --enable-lto
sed -i "s/__DATE__/\"$TS\"/g" version.h
touch -r ./version.h.stamp ./version.h
%configure
make %{?_smp_mflags} all make %{?_smp_mflags} all
%install %install
make INSTALLROOT=%{buildroot} install rdf_install %make_install rdf_install
%fdupes %{buildroot}%{_mandir} %fdupes %{buildroot}%{_mandir}
%check %check