Skip to content

Commit 687ae18

Browse files
mcbartonvgvassilev
andcommitted
Modify cmake config file to set correct suffix and prefix for library
Co-Authored-By: Vassil Vassilev <[email protected]>
1 parent 1334558 commit 687ae18

File tree

2 files changed

+15
-10
lines changed

2 files changed

+15
-10
lines changed

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1233,7 +1233,7 @@ jobs:
12331233
-DCling_DIR=$LLVM_BUILD_DIR/tools/cling \
12341234
-DLLVM_DIR=$LLVM_BUILD_DIR/lib/cmake/llvm \
12351235
-DClang_DIR=$LLVM_BUILD_DIR/lib/cmake/clang \
1236-
-DBUILD_SHARED_LIBS=ON \
1236+
-DBUILD_SHARED_LIBS=OFF \
12371237
-DCODE_COVERAGE=${{ env.CODE_COVERAGE }} \
12381238
-DCMAKE_INSTALL_PREFIX=$PREFIX \
12391239
-DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ON \

cmake/CppInterOp/CppInterOpConfig.cmake.in

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,20 @@ get_filename_component(CPPINTEROP_INSTALL_PREFIX "${CPPINTEROP_INSTALL_PREFIX}"
1010
include(CMakeSystemSpecificInformation)
1111

1212
### build/install workaround
13+
if (@BUILD_SHARED_LIBS@)
14+
set(__lib_suffix ${CMAKE_SHARED_LIBRARY_SUFFIX})
15+
set(__lib_prefix ${CMAKE_SHARED_LIBRARY_PREFIX})
16+
else()
17+
set(__lib_suffix ${CMAKE_STATIC_LIBRARY_SUFFIX})
18+
set(__lib_prefix ${CMAKE_STATIC_LIBRARY_PREFIX})
19+
endif()
1320

1421
if (IS_DIRECTORY "${CPPINTEROP_INSTALL_PREFIX}/include")
1522
set(_include "${CPPINTEROP_INSTALL_PREFIX}/include")
16-
set(_libs "${CPPINTEROP_INSTALL_PREFIX}/lib/${CMAKE_SHARED_LIBRARY_PREFIX}clangCppInterOp${CMAKE_SHARED_LIBRARY_SUFFIX}")
23+
set(_libs "${CPPINTEROP_INSTALL_PREFIX}/lib/${__lib_prefix}clangCppInterOp${__lib_suffix}")
1724
else()
1825
set(_include "@CMAKE_CURRENT_SOURCE_DIR@/include")
19-
set(_libs "@CMAKE_CURRENT_BINARY_DIR@/lib/${CMAKE_SHARED_LIBRARY_PREFIX}clangCppInterOp${CMAKE_SHARED_LIBRARY_SUFFIX}")
20-
endif()
21-
22-
if (IS_DIRECTORY "${CPPINTEROP_INSTALL_PREFIX}/lib/cmake/CppInterOp")
23-
set(_cmake "${CPPINTEROP_INSTALL_PREFIX}/lib/cmake/CppInterOp")
24-
else()
25-
set(_cmake "@CMAKE_CURRENT_SOURCE_DIR@/cmake/CppInterOp")
26+
set(_libs "@CMAKE_CURRENT_BINARY_DIR@/lib/${__lib_prefix}clangCppInterOp${__lib_suffix}")
2627
endif()
2728

2829
###
@@ -33,7 +34,11 @@ set(CPPINTEROP_INCLUDE_DIRS "${_include}")
3334
set(CPPINTEROP_LIBRARIES "${_libs}")
3435

3536
# Provide all our library targets to users.
36-
add_library(clangCppInterOp SHARED IMPORTED)
37+
if (@BUILD_SHARED_LIBS@)
38+
add_library(clangCppInterOp SHARED IMPORTED)
39+
else()
40+
add_library(clangCppInterOp STATIC IMPORTED)
41+
endif()
3742
set_property(TARGET clangCppInterOp PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${_include}")
3843
set_property(TARGET clangCppInterOp PROPERTY IMPORTED_LOCATION "${_libs}")
3944

0 commit comments

Comments
 (0)