summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorImmanuel Haffner <haffner.immanuel@gmail.com>2019-11-22 22:48:46 +0100
committerAlon Zakai <azakai@google.com>2019-11-22 13:48:46 -0800
commitbf8f36c31c0b8e6213bce840be66937dd6d0f6af (patch)
tree33643f2479e22c5a653f85029bd8dff1ea16d551 /src
parente2587f30827cd3d35dd409c2958b25a6c5517092 (diff)
downloadbinaryen-bf8f36c31c0b8e6213bce840be66937dd6d0f6af.tar.gz
binaryen-bf8f36c31c0b8e6213bce840be66937dd6d0f6af.tar.bz2
binaryen-bf8f36c31c0b8e6213bce840be66937dd6d0f6af.zip
Build libbinaryen as a monolithic statically/shared library (#2463)
* Transform libraries created in subdirectories from statically linked libraries to CMake object libraries. * Link object libraries as `PRIVATE` to `libbinaryen`. According to CMake documentation: "Libraries and targets following PRIVATE are linked to, but are not made part of the link interface." This is exactly what we want, as we only want the C API to be part of the interface.
Diffstat (limited to 'src')
-rw-r--r--src/asmjs/CMakeLists.txt2
-rw-r--r--src/cfg/CMakeLists.txt2
-rw-r--r--src/emscripten-optimizer/CMakeLists.txt2
-rw-r--r--src/ir/CMakeLists.txt2
-rw-r--r--src/passes/CMakeLists.txt2
-rw-r--r--src/support/CMakeLists.txt2
-rw-r--r--src/wasm/CMakeLists.txt2
7 files changed, 7 insertions, 7 deletions
diff --git a/src/asmjs/CMakeLists.txt b/src/asmjs/CMakeLists.txt
index 0252ed911..e9fa3d12f 100644
--- a/src/asmjs/CMakeLists.txt
+++ b/src/asmjs/CMakeLists.txt
@@ -3,4 +3,4 @@ SET(asmjs_SOURCES
asmangle.cpp
shared-constants.cpp
)
-ADD_LIBRARY(asmjs STATIC ${asmjs_SOURCES}) \ No newline at end of file
+ADD_LIBRARY(asmjs OBJECT ${asmjs_SOURCES})
diff --git a/src/cfg/CMakeLists.txt b/src/cfg/CMakeLists.txt
index f0825b454..feb4186af 100644
--- a/src/cfg/CMakeLists.txt
+++ b/src/cfg/CMakeLists.txt
@@ -1,4 +1,4 @@
SET(cfg_SOURCES
Relooper.cpp
)
-ADD_LIBRARY(cfg STATIC ${cfg_SOURCES})
+ADD_LIBRARY(cfg OBJECT ${cfg_SOURCES})
diff --git a/src/emscripten-optimizer/CMakeLists.txt b/src/emscripten-optimizer/CMakeLists.txt
index 6c302b991..a2bb7d802 100644
--- a/src/emscripten-optimizer/CMakeLists.txt
+++ b/src/emscripten-optimizer/CMakeLists.txt
@@ -3,4 +3,4 @@ SET(emscripten-optimizer_SOURCES
parser.cpp
simple_ast.cpp
)
-ADD_LIBRARY(emscripten-optimizer STATIC ${emscripten-optimizer_SOURCES})
+ADD_LIBRARY(emscripten-optimizer OBJECT ${emscripten-optimizer_SOURCES})
diff --git a/src/ir/CMakeLists.txt b/src/ir/CMakeLists.txt
index e89ece6a2..3f4a77337 100644
--- a/src/ir/CMakeLists.txt
+++ b/src/ir/CMakeLists.txt
@@ -4,4 +4,4 @@ SET(ir_SOURCES
LocalGraph.cpp
ReFinalize.cpp
)
-ADD_LIBRARY(ir STATIC ${ir_SOURCES})
+ADD_LIBRARY(ir OBJECT ${ir_SOURCES})
diff --git a/src/passes/CMakeLists.txt b/src/passes/CMakeLists.txt
index d2b7e22bc..313c0f5a7 100644
--- a/src/passes/CMakeLists.txt
+++ b/src/passes/CMakeLists.txt
@@ -72,4 +72,4 @@ SET(passes_SOURCES
Vacuum.cpp
${CMAKE_CURRENT_BINARY_DIR}/WasmIntrinsics.cpp
)
-ADD_LIBRARY(passes STATIC ${passes_SOURCES})
+ADD_LIBRARY(passes OBJECT ${passes_SOURCES})
diff --git a/src/support/CMakeLists.txt b/src/support/CMakeLists.txt
index b3373d076..eaf608d58 100644
--- a/src/support/CMakeLists.txt
+++ b/src/support/CMakeLists.txt
@@ -8,5 +8,5 @@ SET(support_SOURCES
safe_integer.cpp
threads.cpp
)
-ADD_LIBRARY(support STATIC ${support_SOURCES})
+ADD_LIBRARY(support OBJECT ${support_SOURCES})
TARGET_LINK_LIBRARIES(support ${CMAKE_THREAD_LIBS_INIT})
diff --git a/src/wasm/CMakeLists.txt b/src/wasm/CMakeLists.txt
index f4441953a..984441c6c 100644
--- a/src/wasm/CMakeLists.txt
+++ b/src/wasm/CMakeLists.txt
@@ -10,4 +10,4 @@ SET(wasm_SOURCES
wasm-type.cpp
wasm-validator.cpp
)
-ADD_LIBRARY(wasm STATIC ${wasm_SOURCES})
+ADD_LIBRARY(wasm OBJECT ${wasm_SOURCES})