Skip to content

Commit 7b4077f

Browse files
authored
Reinstate downloading old versions of winrpm gcc dll's (#18059)
This mostly reverts #17906 and puts #15521 back in place, but from a slightly more permanent download location now. Unfortunately using the latest opensuse copy of the gcc dll's is causing issues when a cygwin-built Julia tries to load an opensuse-built libzmq.dll. Using these slightly old gcc 5 versions seems to fix it. I suspect the difference is which libstdc++ ABI is being used. GCC 5 has both old and new available, but many distros had it using the old ABI by default for compatibility. GCC 6 (which opensuse is using now) is more likely to be using the new ABI by default.
1 parent f5418ac commit 7b4077f

File tree

1 file changed

+17
-3
lines changed

1 file changed

+17
-3
lines changed

Makefile

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -471,7 +471,7 @@ endif
471471

472472
ifeq ($(OS), WINNT)
473473
[ ! -d $(JULIAHOME)/dist-extras ] || ( cd $(JULIAHOME)/dist-extras && \
474-
cp 7z.exe 7z.dll libexpat-1.dll zlib1.dll $(BUILDROOT)/julia-$(JULIA_COMMIT)/bin )
474+
cp 7z.exe 7z.dll libexpat-1.dll zlib1.dll libgfortran-3.dll libquadmath-0.dll libstdc++-6.dll libgcc_s_s*-1.dll libssp-0.dll $(BUILDROOT)/julia-$(JULIA_COMMIT)/bin )
475475
ifeq ($(USE_GPL_LIBS), 1)
476476
[ ! -d $(JULIAHOME)/dist-extras ] || ( cd $(JULIAHOME)/dist-extras && \
477477
cp busybox.exe $(BUILDROOT)/julia-$(JULIA_COMMIT)/bin )
@@ -600,7 +600,14 @@ ifneq (,$(filter $(ARCH), i386 i486 i586 i686))
600600
$(JLDOWNLOAD) http://downloads.sourceforge.net/sevenzip/7z920.exe && \
601601
7z x -y 7z920.exe 7z.exe 7z.dll && \
602602
../contrib/windows/winrpm.sh http://download.opensuse.org/repositories/windows:/mingw:/win32/openSUSE_13.2 \
603-
"mingw32-libgfortran3 mingw32-libquadmath0 mingw32-libstdc++6 mingw32-libgcc_s_sjlj1 mingw32-libssp0 mingw32-libexpat1 mingw32-zlib1" && \
603+
"mingw32-libexpat1 mingw32-zlib1" && \
604+
$(JLDOWNLOAD) https://julialang.s3.amazonaws.com/bin/winnt/extras/mingw32-libgfortran3-5.3.0-1.1.noarch.rpm && \
605+
$(JLDOWNLOAD) https://julialang.s3.amazonaws.com/bin/winnt/extras/mingw32-libquadmath0-5.3.0-1.1.noarch.rpm && \
606+
$(JLDOWNLOAD) https://julialang.s3.amazonaws.com/bin/winnt/extras/mingw32-libstdc++6-5.3.0-1.1.noarch.rpm && \
607+
$(JLDOWNLOAD) https://julialang.s3.amazonaws.com/bin/winnt/extras/mingw32-libgcc_s_sjlj1-5.3.0-1.1.noarch.rpm && \
608+
$(JLDOWNLOAD) https://julialang.s3.amazonaws.com/bin/winnt/extras/mingw32-libssp0-5.3.0-1.1.noarch.rpm && \
609+
for i in *.rpm; do 7z x -y $$i; done && \
610+
for i in *.cpio; do 7z x -y $$i; done && \
604611
cp usr/i686-w64-mingw32/sys-root/mingw/bin/*.dll .
605612
else ifeq ($(ARCH),x86_64)
606613
cd $(JULIAHOME)/dist-extras && \
@@ -609,7 +616,14 @@ else ifeq ($(ARCH),x86_64)
609616
mv _7z.dll 7z.dll && \
610617
mv _7z.exe 7z.exe && \
611618
../contrib/windows/winrpm.sh http://download.opensuse.org/repositories/windows:/mingw:/win64/openSUSE_13.2 \
612-
"mingw64-libgfortran3 mingw64-libquadmath0 mingw64-libstdc++6 mingw64-libgcc_s_seh1 mingw64-libssp0 mingw64-libexpat1 mingw64-zlib1" && \
619+
"mingw64-libexpat1 mingw64-zlib1" && \
620+
$(JLDOWNLOAD) https://julialang.s3.amazonaws.com/bin/winnt/extras/mingw64-libgfortran3-5.3.0-1.1.noarch.rpm && \
621+
$(JLDOWNLOAD) https://julialang.s3.amazonaws.com/bin/winnt/extras/mingw64-libquadmath0-5.3.0-1.1.noarch.rpm && \
622+
$(JLDOWNLOAD) https://julialang.s3.amazonaws.com/bin/winnt/extras/mingw64-libstdc++6-5.3.0-1.1.noarch.rpm && \
623+
$(JLDOWNLOAD) https://julialang.s3.amazonaws.com/bin/winnt/extras/mingw64-libgcc_s_seh1-5.3.0-1.1.noarch.rpm && \
624+
$(JLDOWNLOAD) https://julialang.s3.amazonaws.com/bin/winnt/extras/mingw64-libssp0-5.3.0-1.1.noarch.rpm && \
625+
for i in *.rpm; do 7z x -y $$i; done && \
626+
for i in *.cpio; do 7z x -y $$i; done && \
613627
cp usr/x86_64-w64-mingw32/sys-root/mingw/bin/*.dll .
614628
else
615629
$(error no win-extras target for ARCH=$(ARCH))

0 commit comments

Comments
 (0)