vlc | branch: master | Edward Wang <[email protected]> | Tue Sep  4 
20:46:52 2012 -0400| [dfae35ab8f7b5ef8cc43bdf613c741298edb6e2b] | committer: 
Rafaël Carré

Win32: Check for the shared libgcc in all LIBRARY_PATHs

Some mingw-w64 3.0 toolchains like mine, for example, have those DLLs in the 
second or possibly third field of LIBRARY_PATH. Skipping these could lead to 
weird C++ dlopen errors.

Signed-off-by: Rafaël Carré <[email protected]>

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dfae35ab8f7b5ef8cc43bdf613c741298edb6e2b
---

 extras/package/win32/package.mak |   11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/extras/package/win32/package.mak b/extras/package/win32/package.mak
index 7bcab42..9de0d1c 100644
--- a/extras/package/win32/package.mak
+++ b/extras/package/win32/package.mak
@@ -68,9 +68,14 @@ endif
        cp "$(top_builddir)/npapi-vlc/installed/lib/npvlc.dll" 
"$(win32_destdir)/"
 
 # Compiler shared DLLs, when using compilers built with --enable-shared
-# If gcc_s_sjlj/stdc++-6 DLLs exist, our C++ modules were linked to them
-       gcc_lib_dir=`$(CXX) -v /dev/null 2>&1 | grep ^LIBRARY_PATH|cut -d= 
-f2|cut -d: -f1` ; \
-       cp "$${gcc_lib_dir}/libstdc++-6.dll" 
"$${gcc_lib_dir}/libgcc_s_sjlj-1.dll" "$(win32_destdir)/" ; true
+# The shared DLLs may not necessarily be in the first LIBRARY_PATH, we
+# should check them all.
+       library_path_list=`$(CXX) -v /dev/null 2>&1 | grep ^LIBRARY_PATH|cut 
-d= -f2` ;\
+       IFS=':' ;\
+       for x in $$library_path_list ;\
+       do \
+               cp "$$x/libstdc++-6.dll" "$$x/libgcc_s_sjlj-1.dll" 
"$(win32_destdir)/" ; true ;\
+       done
 
 # SDK
        mkdir -p "$(win32_destdir)/sdk/lib/"

_______________________________________________
vlc-commits mailing list
[email protected]
http://mailman.videolan.org/listinfo/vlc-commits

Reply via email to