summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYaakov Selkowitz <yselkowi@redhat.com>2021-08-26 17:36:14 -0400
committerYaakov Selkowitz <yselkowi@redhat.com>2021-08-26 17:36:14 -0400
commit5efe1d4b60cfc4ba60e2c641d3ffd8d960891e93 (patch)
treee644939d5799d55aca2f2943d65c1f0af6bf9920
parenta9bf03e3ec0a624e553e5a099c440fe85a8cfcf4 (diff)
downloadcygwin-binutils-5efe1d4b60cfc4ba60e2c641d3ffd8d960891e93.tar.gz
cygwin-binutils-5efe1d4b60cfc4ba60e2c641d3ffd8d960891e93.tar.xz
cygwin-binutils-5efe1d4b60cfc4ba60e2c641d3ffd8d960891e93.zip
cygwin-binutils 2.37
-rw-r--r--.gitignore1
-rw-r--r--0001-PR25447.patch35
-rw-r--r--0002-PR24511.patch32
-rw-r--r--binutils-2.37-cygwin-config-rpath.patch19
-rw-r--r--binutils-2.37-cygwin-peflags.patch31
-rw-r--r--binutils-textdomain.patch12
-rw-r--r--cygwin-binutils.spec9
-rw-r--r--sources2
8 files changed, 64 insertions, 77 deletions
diff --git a/.gitignore b/.gitignore
index e8b2898..578cc01 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
/binutils-2.34.tar.xz
+/binutils-2.37.tar.xz
diff --git a/0001-PR25447.patch b/0001-PR25447.patch
deleted file mode 100644
index 9f24939..0000000
--- a/0001-PR25447.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 82f439d028c65663a0baf0a17ef5c4a2ea5c84a7 Mon Sep 17 00:00:00 2001
-From: Nick Clifton <nickc@redhat.com>
-Date: Tue, 11 Feb 2020 15:55:25 +0000
-Subject: [PATCH] Import a fix from the mainline sources that prevents a
- potential illegal memory access when parsing PE binaries.
-
- PR 25447
- * coffgen.c (_bfd_coff_close_and_cleanup): Do not clear the keep
- syms and keep strings flags as these may have been set in order to
- prevent a bogus call to free.
----
- bfd/ChangeLog | 9 +++++++++
- bfd/coffgen.c | 6 ++++--
- 2 files changed, 13 insertions(+), 2 deletions(-)
-
-diff --git a/bfd/coffgen.c b/bfd/coffgen.c
-index 2bfcf1a6b14..3ddd2d89a83 100644
---- a/bfd/coffgen.c
-+++ b/bfd/coffgen.c
-@@ -3175,8 +3175,10 @@ _bfd_coff_close_and_cleanup (bfd *abfd)
- && bfd_family_coff (abfd)
- && coff_data (abfd) != NULL)
- {
-- obj_coff_keep_syms (abfd) = FALSE;
-- obj_coff_keep_strings (abfd) = FALSE;
-+ /* PR 25447:
-+ Do not clear the keep_syms and keep_strings flags.
-+ These may have been set by pe_ILF_build_a_bfd() indicating
-+ that the syms and strings pointers are not to be freed. */
- if (!_bfd_coff_free_symbols (abfd))
- return FALSE;
- }
---
-2.18.2
-
diff --git a/0002-PR24511.patch b/0002-PR24511.patch
deleted file mode 100644
index a763d41..0000000
--- a/0002-PR24511.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 40bfb9762747f8336b17c70a0173d10200fa62eb Mon Sep 17 00:00:00 2001
-From: Alan Modra <amodra@gmail.com>
-Date: Thu, 27 Feb 2020 17:28:47 +1030
-Subject: [PATCH] Re: PR24511, nm should not mark symbols in .init_array as "t"
-
- PR 24511
- * syms.c (bfd_decode_symclass): Reverse order of coff_section_type
- and decode_section_type calls.
----
- bfd/ChangeLog | 6 ++++++
- bfd/syms.c | 4 ++--
- 2 files changed, 8 insertions(+), 2 deletions(-)
-
-diff --git a/bfd/syms.c b/bfd/syms.c
-index 128cf191453..8a8b74f3f92 100644
---- a/bfd/syms.c
-+++ b/bfd/syms.c
-@@ -705,9 +705,9 @@ bfd_decode_symclass (asymbol *symbol)
- c = 'a';
- else if (symbol->section)
- {
-- c = decode_section_type (symbol->section);
-+ c = coff_section_type (symbol->section->name);
- if (c == '?')
-- c = coff_section_type (symbol->section->name);
-+ c = decode_section_type (symbol->section);
- }
- else
- return '?';
---
-2.18.2
-
diff --git a/binutils-2.37-cygwin-config-rpath.patch b/binutils-2.37-cygwin-config-rpath.patch
new file mode 100644
index 0000000..1fe0b1b
--- /dev/null
+++ b/binutils-2.37-cygwin-config-rpath.patch
@@ -0,0 +1,19 @@
+--- a/config.rpath
++++ b/config.rpath
+@@ -438,7 +438,14 @@
+ bsdi4*)
+ ;;
+ cygwin* | mingw* | pw32*)
+- shrext=.dll
++ case "$TOOLCHAIN_TARGET" in
++ i686-w64-mingw32 | x86_64-w64-mingw32)
++ shrext=.dll.a
++ ;;
++ *)
++ shrext=.dll
++ ;;
++ esac
+ ;;
+ darwin* | rhapsody*)
+ shrext=.dylib
+
diff --git a/binutils-2.37-cygwin-peflags.patch b/binutils-2.37-cygwin-peflags.patch
new file mode 100644
index 0000000..d4356c6
--- /dev/null
+++ b/binutils-2.37-cygwin-peflags.patch
@@ -0,0 +1,31 @@
+--- a/ld/emultempl/pe.em 2021-01-09 11:47:34.000000000 +0100
++++ b/ld/emultempl/pe.em 2021-02-28 09:40:12.547395700 +0100
+@@ -104,8 +104,12 @@ fragment <<EOF
+ #define DEFAULT_PSEUDO_RELOC_VERSION 1
+ #endif
+
++#if defined(__CYGWIN__) || defined (__MINGW32__)
++#define DEFAULT_DLL_CHARACTERISTICS (0)
++#else
+ #define DEFAULT_DLL_CHARACTERISTICS (IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE \
+ | IMAGE_DLL_CHARACTERISTICS_NX_COMPAT)
++#endif
+
+ #if defined(TARGET_IS_i386pe) || ! defined(DLL_SUPPORT)
+ #define PE_DEF_SUBSYSTEM 3
+--- a/ld/emultempl/pep.em 2021-01-09 11:47:34.000000000 +0100
++++ b/ld/emultempl/pep.em 2021-02-28 09:40:52.328116000 +0100
+@@ -99,9 +99,13 @@ fragment <<EOF
+ #define DLL_SUPPORT
+ #endif
+
++#if defined(__CYGWIN__) || defined (__MINGW32__)
++#define DEFAULT_DLL_CHARACTERISTICS (0)
++#else
+ #define DEFAULT_DLL_CHARACTERISTICS (IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE \
+ | IMAGE_DLL_CHARACTERISTICS_HIGH_ENTROPY_VA \
+ | IMAGE_DLL_CHARACTERISTICS_NX_COMPAT)
++#endif
+
+ #if defined(TARGET_IS_i386pep) || ! defined(DLL_SUPPORT)
+ #define PE_DEF_SUBSYSTEM 3
diff --git a/binutils-textdomain.patch b/binutils-textdomain.patch
index be7f57a..192e36b 100644
--- a/binutils-textdomain.patch
+++ b/binutils-textdomain.patch
@@ -6,7 +6,7 @@
# Define the identity of the package.
- PACKAGE='bfd'
+ PACKAGE=cygwin-bfd
- VERSION='2.34'
+ VERSION='2.37'
--- a/binutils/configure
@@ -17,7 +17,7 @@
# Define the identity of the package.
- PACKAGE='binutils'
+ PACKAGE=cygwin-binutils
- VERSION='2.34'
+ VERSION='2.37'
--- a/gas/configure
@@ -28,7 +28,7 @@
# Define the identity of the package.
- PACKAGE='gas'
+ PACKAGE=cygwin-gas
- VERSION='2.34'
+ VERSION='2.37'
--- a/gprof/configure
@@ -39,7 +39,7 @@
# Define the identity of the package.
- PACKAGE='gprof'
+ PACKAGE=cygwin-gprof
- VERSION='2.34'
+ VERSION='2.37'
--- a/ld/configure
@@ -50,7 +50,7 @@
# Define the identity of the package.
- PACKAGE='ld'
+ PACKAGE=cygwin-ld
- VERSION='2.34'
+ VERSION='2.37'
--- a/opcodes/configure
@@ -61,6 +61,6 @@
# Define the identity of the package.
- PACKAGE='opcodes'
+ PACKAGE=cygwin-opcodes
- VERSION='2.34'
+ VERSION='2.37'
diff --git a/cygwin-binutils.spec b/cygwin-binutils.spec
index fb77515..c72f1f2 100644
--- a/cygwin-binutils.spec
+++ b/cygwin-binutils.spec
@@ -1,7 +1,7 @@
%global run_testsuite 0
Name: cygwin-binutils
-Version: 2.34
+Version: 2.37
Release: 1%{?dist}
Summary: Cross-compiled version of binutils for Cygwin environments
@@ -10,8 +10,8 @@ Group: Development/Libraries
URL: https://www.gnu.org/software/binutils/
Source0: https://ftpmirror.gnu.org/binutils/binutils-%{version}.tar.xz
-Patch1: 0001-PR25447.patch
-Patch2: 0002-PR24511.patch
+Patch1: binutils-2.37-cygwin-config-rpath.patch
+Patch2: binutils-2.37-cygwin-peflags.patch
Patch1000: w32api-sysroot.patch
Patch1001: binutils-textdomain.patch
@@ -276,6 +276,9 @@ cat cygwin-opcodes.lang >> cygwin-binutils.lang
%changelog
+* Thu Aug 26 2021 Yaakov Selkowitz <yselkowi@redhat.com> - 2.37-1
+- new version
+
* Wed Apr 01 2020 Yaakov Selkowitz <yselkowi@redhat.com> - 2.34-1
- new version
diff --git a/sources b/sources
index ef80505..b8c6109 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (binutils-2.34.tar.xz) = 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
+SHA512 (binutils-2.37.tar.xz) = 5c11aeef6935860a6819ed3a3c93371f052e52b4bdc5033da36037c1544d013b7f12cb8d561ec954fe7469a68f1b66f1a3cd53d5a3af7293635a90d69edd15e7