diff --git a/Dockerfile b/Dockerfile index b872278..0df2ecb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -259,9 +259,10 @@ RUN /mingw-w64-v$MINGW_VERSION/mingw-w64-libraries/winpthreads/configure \ && make install WORKDIR /gcc +COPY src/crossgcc-*.patch $PREFIX/src/ RUN echo 'BEGIN {print "pecoff"}' \ >/gcc-$GCC_VERSION/libbacktrace/filetype.awk \ - && sed -i 's#/mingw/#/#' /gcc-$GCC_VERSION/gcc/config/mingw/mingw32.h \ + && cat $PREFIX/src/crossgcc-*.patch | patch -d/gcc-$GCC_VERSION -p1 \ && /gcc-$GCC_VERSION/configure \ --prefix=$PREFIX \ --with-sysroot=$PREFIX \ diff --git a/src/crossgcc-relocatable.patch b/src/crossgcc-relocatable.patch new file mode 100644 index 0000000..401fff3 --- /dev/null +++ b/src/crossgcc-relocatable.patch @@ -0,0 +1,29 @@ +Relocatable mingw paths (c/o Hannes Domani) +--- a/gcc/config/mingw/mingw32.h ++++ b/gcc/config/mingw/mingw32.h +@@ -91,3 +91,3 @@ + #undef NATIVE_SYSTEM_HEADER_COMPONENT +-#define NATIVE_SYSTEM_HEADER_COMPONENT "MINGW" ++#undef NATIVE_SYSTEM_HEADER_DIR + +@@ -234,3 +234,3 @@ + #ifndef STANDARD_STARTFILE_PREFIX_1 +-#define STANDARD_STARTFILE_PREFIX_1 "/mingw/lib/" ++#define STANDARD_STARTFILE_PREFIX_1 "" + #endif +@@ -240,7 +240,2 @@ + +-/* For native mingw-version we need to take care that NATIVE_SYSTEM_HEADER_DIR +- macro contains POSIX-style path. See bug 52947. */ +-#undef NATIVE_SYSTEM_HEADER_DIR +-#define NATIVE_SYSTEM_HEADER_DIR "/mingw/include" +- + /* Output STRING, a string representing a filename, to FILE. +--- a/gcc/incpath.cc ++++ b/gcc/incpath.cc +@@ -191,4 +191,3 @@ + } +- else if (!p->add_sysroot && relocated +- && !filename_ncmp (p->fname, cpp_PREFIX, cpp_PREFIX_len)) ++ if (relocated && !filename_ncmp (p->fname, cpp_PREFIX, cpp_PREFIX_len)) + {