summaryrefslogtreecommitdiffstats
path: root/PATCHES
diff options
context:
space:
mode:
authorJoerg Koenig <jck@techsat.com>2017-05-30 22:43:12 (GMT)
committerJoerg Koenig <jck@techsat.com>2017-05-30 22:43:12 (GMT)
commite4ae8a49cf4263a2fee5fe1260742c010e1d6e44 (patch)
tree9bd1af45acfb8281ae2299bad55ca9c963640ed3 /PATCHES
parent57ab901df4a65efa5c02e8973e55804bea1e3d1f (diff)
downloadgcc-compiler-suite-e4ae8a49cf4263a2fee5fe1260742c010e1d6e44.zip
gcc-compiler-suite-e4ae8a49cf4263a2fee5fe1260742c010e1d6e44.tar.gz
gcc-compiler-suite-e4ae8a49cf4263a2fee5fe1260742c010e1d6e44.tar.bz2
Change-Id: Icbbefcfcb85da835138bdc416c1fed776dfcfb8f
Diffstat (limited to 'PATCHES')
-rw-r--r--PATCHES/windows-lrealpath-no-force-lowercase-nor-backslash.patch34
-rw-r--r--PATCHES/zlib_ranlib.patch13
2 files changed, 47 insertions, 0 deletions
diff --git a/PATCHES/windows-lrealpath-no-force-lowercase-nor-backslash.patch b/PATCHES/windows-lrealpath-no-force-lowercase-nor-backslash.patch
new file mode 100644
index 0000000..697469d
--- /dev/null
+++ b/PATCHES/windows-lrealpath-no-force-lowercase-nor-backslash.patch
@@ -0,0 +1,34 @@
+diff -ruNb gcc-7.1.0.orig/libiberty/lrealpath.c gcc-7.1.0/libiberty/lrealpath.c
+--- gcc-7.1.0.orig/libiberty/lrealpath.c 2017-01-04 12:30:51.000000000 +0100
++++ gcc-7.1.0/libiberty/lrealpath.c 2017-05-28 00:13:05.844315144 +0200
+@@ -138,15 +138,26 @@
+ {
+ char buf[MAX_PATH];
+ char* basename;
++ char* slash;
+ DWORD len = GetFullPathName (filename, MAX_PATH, buf, &basename);
+ if (len == 0 || len > MAX_PATH - 1)
+ return strdup (filename);
+ else
+ {
+- /* The file system is case-preserving but case-insensitive,
+- Canonicalize to lowercase, using the codepage associated
+- with the process locale. */
+- CharLowerBuff (buf, len);
++ /* Turn all back slashes back back into forward slashes
++ and don't make it all lowercase.
++ Rationale:
++ Windows is as happy with / as it is with \. This will
++ have been built using Cygwin, MSYS* or cross-compiled
++ from a system where dirsep is / so it is cleaner just
++ to keep the dirseps as / (and the case un-modified).
++ This way, the value will be consistent with the build
++ system and string operations (be they internal to this
++ software or external to it, e.g. processing map files
++ with sed) work as expected. */
++ slash = buf;
++ while ((slash = strchr(slash,'\\')) != NULL)
++ *slash = '/';
+ return strdup (buf);
+ }
+ }
diff --git a/PATCHES/zlib_ranlib.patch b/PATCHES/zlib_ranlib.patch
new file mode 100644
index 0000000..6dc9b72
--- /dev/null
+++ b/PATCHES/zlib_ranlib.patch
@@ -0,0 +1,13 @@
+diff -ruNb zlib-1.2.11.orig/Makefile.in zlib-1.2.11/Makefile.in
+--- zlib-1.2.11.orig/Makefile.in 2017-01-15 18:29:40.000000000 +0100
++++ zlib-1.2.11/Makefile.in 2017-05-30 14:41:17.075800210 +0200
+@@ -128,8 +128,8 @@
+ gcov inf*.c
+
+ libz.a: $(OBJS)
++ $(RANLIB) $@
+ $(AR) $(ARFLAGS) $@ $(OBJS)
+- -@ ($(RANLIB) $@ || true) >/dev/null 2>&1
+
+ match.o: match.S
+ $(CPP) match.S > _match.s