Commit 9282c6d7 by Nicolas Capens

Rename libraries on Mac OS to prevent conflicts.

ANGLE and SwiftShader produce libraries with the same name, which causes conflicts for Chrome on Mac OS when creating unstripped libraries and dSYM debug information. Renaming them temporarily works around the build tools issue. Bug chromium:735920 Change-Id: Icb4f484970ec75b8c5e7e784ce37e05ee4fbc7db Reviewed-on: https://swiftshader-review.googlesource.com/10288Reviewed-by: 's avatarNicolas Capens <capn@google.com> Tested-by: 's avatarNicolas Capens <capn@google.com>
parent fccddfe6
...@@ -41,8 +41,10 @@ config("swiftshader_libEGL_private_config") { ...@@ -41,8 +41,10 @@ config("swiftshader_libEGL_private_config") {
} }
shared_library("swiftshader_libEGL") { shared_library("swiftshader_libEGL") {
output_name = "libEGL" if (!is_mac) {
output_dir = "$root_out_dir/swiftshader" output_name = "libEGL"
output_dir = "$root_out_dir/swiftshader"
}
deps = [ deps = [
"//build/config:exe_and_shlib_deps", "//build/config:exe_and_shlib_deps",
...@@ -70,7 +72,7 @@ shared_library("swiftshader_libEGL") { ...@@ -70,7 +72,7 @@ shared_library("swiftshader_libEGL") {
"Quartz.framework", "Quartz.framework",
"Cocoa.framework", "Cocoa.framework",
] ]
ldflags = [ "-Wl,-install_name,@loader_path/swiftshader/libEGL.dylib" ] ldflags = [ "-Wl,-install_name,@rpath/libswiftshader_libEGL.dylib" ]
} else if (is_win) { } else if (is_win) {
configs -= [ "//build/config/win:unicode" ] configs -= [ "//build/config/win:unicode" ]
ldflags = [ "/DEF:" + rebase_path("libGLESv2.def", root_build_dir) ] ldflags = [ "/DEF:" + rebase_path("libGLESv2.def", root_build_dir) ]
......
...@@ -114,9 +114,9 @@ private: ...@@ -114,9 +114,9 @@ private:
#endif #endif
#elif defined(__APPLE__) #elif defined(__APPLE__)
#if defined(__LP64__) #if defined(__LP64__)
const char *libEGL_lib[] = {"lib64EGL_translator.dylib", "libEGL.so", "libEGL.dylib"}; const char *libEGL_lib[] = {"lib64EGL_translator.dylib", "libEGL.so", "libEGL.dylib", "libswiftshader_libEGL.dylib"};
#else #else
const char *libEGL_lib[] = {"libEGL_translator.dylib", "libEGL.so", "libEGL.dylib"}; const char *libEGL_lib[] = {"libEGL_translator.dylib", "libEGL.so", "libEGL.dylib", "libswiftshader_libEGL.dylib"};
#endif #endif
#else #else
#error "libEGL::loadExports unimplemented for this platform" #error "libEGL::loadExports unimplemented for this platform"
......
...@@ -53,8 +53,10 @@ config("swiftshader_libGLESv2_private_config") { ...@@ -53,8 +53,10 @@ config("swiftshader_libGLESv2_private_config") {
} }
shared_library("swiftshader_libGLESv2") { shared_library("swiftshader_libGLESv2") {
output_name = "libGLESv2" if (!is_mac) {
output_dir = "$root_out_dir/swiftshader" output_name = "libGLESv2"
output_dir = "$root_out_dir/swiftshader"
}
deps = [ deps = [
"../../OpenGL/compiler:swiftshader_opengl_compiler", "../../OpenGL/compiler:swiftshader_opengl_compiler",
...@@ -92,7 +94,7 @@ shared_library("swiftshader_libGLESv2") { ...@@ -92,7 +94,7 @@ shared_library("swiftshader_libGLESv2") {
configs -= [ "//build/config/win:unicode" ] configs -= [ "//build/config/win:unicode" ]
ldflags = [ "/DEF:" + rebase_path("libGLESv2.def", root_build_dir) ] ldflags = [ "/DEF:" + rebase_path("libGLESv2.def", root_build_dir) ]
} else if (is_mac) { } else if (is_mac) {
ldflags = [ "-Wl,-install_name,@loader_path/swiftshader/libGLESv2.dylib" ] ldflags = [ "-Wl,-install_name,@rpath/libswiftshader_libGLESv2.dylib" ]
} else if (is_linux) { } else if (is_linux) {
ldflags = ldflags =
[ "-Wl,--version-script=" + rebase_path("exports.map", root_build_dir) ] [ "-Wl,--version-script=" + rebase_path("exports.map", root_build_dir) ]
......
...@@ -298,9 +298,9 @@ private: ...@@ -298,9 +298,9 @@ private:
#endif #endif
#elif defined(__APPLE__) #elif defined(__APPLE__)
#if defined(__LP64__) #if defined(__LP64__)
const char *libGLESv2_lib[] = {"lib64GLES_V2_translator.dylib", "libGLESv2.dylib"}; const char *libGLESv2_lib[] = {"lib64GLES_V2_translator.dylib", "libGLESv2.dylib", "libswiftshader_libGLESv2.dylib"};
#else #else
const char *libGLESv2_lib[] = {"libGLES_V2_translator.dylib", "libGLESv2.dylib"}; const char *libGLESv2_lib[] = {"libGLES_V2_translator.dylib", "libGLESv2.dylib", "libswiftshader_libGLESv2.dylib"};
#endif #endif
#else #else
#error "libGLESv2::loadExports unimplemented for this platform" #error "libGLESv2::loadExports unimplemented for this platform"
......
...@@ -44,7 +44,7 @@ test("swiftshader_unittests") { ...@@ -44,7 +44,7 @@ test("swiftshader_unittests") {
} else if (is_mac) { } else if (is_mac) {
ldflags = [ ldflags = [
"-rpath", "-rpath",
"@executable_path/swiftshader/", "@executable_path/",
] ]
} else { } else {
ldflags = [ "-Wl,-rpath=\$ORIGIN/swiftshader" ] ldflags = [ "-Wl,-rpath=\$ORIGIN/swiftshader" ]
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment