Skip to content

Commit 010a2d0

Browse files
jschuellercdunn2001
authored andcommitted
Unique lib target name
1 parent 2baad49 commit 010a2d0

File tree

3 files changed

+19
-46
lines changed

3 files changed

+19
-46
lines changed

src/jsontestrunner/CMakeLists.txt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,8 @@ ADD_EXECUTABLE(jsontestrunner_exe
66

77
IF(BUILD_SHARED_LIBS)
88
ADD_DEFINITIONS( -DJSON_DLL )
9-
TARGET_LINK_LIBRARIES(jsontestrunner_exe jsoncpp_lib)
10-
ELSE(BUILD_SHARED_LIBS)
11-
TARGET_LINK_LIBRARIES(jsontestrunner_exe jsoncpp_lib_static)
129
ENDIF()
10+
TARGET_LINK_LIBRARIES(jsontestrunner_exe jsoncpp_lib)
1311

1412
SET_TARGET_PROPERTIES(jsontestrunner_exe PROPERTIES OUTPUT_NAME jsontestrunner_exe)
1513

src/lib_json/CMakeLists.txt

Lines changed: 17 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -69,50 +69,27 @@ ENDIF()
6969

7070
IF(BUILD_SHARED_LIBS)
7171
ADD_DEFINITIONS( -DJSON_DLL_BUILD )
72-
ADD_LIBRARY(jsoncpp_lib SHARED ${PUBLIC_HEADERS} ${jsoncpp_sources})
73-
SET_TARGET_PROPERTIES( jsoncpp_lib PROPERTIES VERSION ${JSONCPP_VERSION} SOVERSION ${JSONCPP_SOVERSION})
74-
SET_TARGET_PROPERTIES( jsoncpp_lib PROPERTIES OUTPUT_NAME jsoncpp
75-
DEBUG_OUTPUT_NAME jsoncpp${DEBUG_LIBNAME_SUFFIX} )
76-
SET_TARGET_PROPERTIES( jsoncpp_lib PROPERTIES POSITION_INDEPENDENT_CODE ON)
77-
78-
# Set library's runtime search path on OSX
79-
IF(APPLE)
80-
SET_TARGET_PROPERTIES( jsoncpp_lib PROPERTIES INSTALL_RPATH "@loader_path/." )
81-
ENDIF()
72+
ENDIF()
8273

83-
INSTALL( TARGETS jsoncpp_lib ${INSTALL_EXPORT}
84-
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
85-
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
86-
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
8774

88-
IF(NOT CMAKE_VERSION VERSION_LESS 2.8.11)
89-
TARGET_INCLUDE_DIRECTORIES( jsoncpp_lib PUBLIC
90-
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
91-
$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/${JSONCPP_INCLUDE_DIR}>)
92-
ENDIF()
75+
ADD_LIBRARY(jsoncpp_lib ${PUBLIC_HEADERS} ${jsoncpp_sources})
76+
SET_TARGET_PROPERTIES( jsoncpp_lib PROPERTIES VERSION ${JSONCPP_VERSION} SOVERSION ${JSONCPP_SOVERSION})
77+
SET_TARGET_PROPERTIES( jsoncpp_lib PROPERTIES OUTPUT_NAME jsoncpp
78+
DEBUG_OUTPUT_NAME jsoncpp${DEBUG_LIBNAME_SUFFIX} )
79+
SET_TARGET_PROPERTIES( jsoncpp_lib PROPERTIES POSITION_INDEPENDENT_CODE ON)
9380

81+
# Set library's runtime search path on OSX
82+
IF(APPLE)
83+
SET_TARGET_PROPERTIES( jsoncpp_lib PROPERTIES INSTALL_RPATH "@loader_path/." )
9484
ENDIF()
9585

96-
IF(BUILD_STATIC_LIBS)
97-
ADD_LIBRARY(jsoncpp_lib_static STATIC ${PUBLIC_HEADERS} ${jsoncpp_sources})
98-
SET_TARGET_PROPERTIES( jsoncpp_lib_static PROPERTIES VERSION ${JSONCPP_VERSION} SOVERSION ${JSONCPP_SOVERSION})
99-
# avoid name clashes on windows as the shared import lib is also named jsoncpp.lib
100-
if (NOT DEFINED STATIC_SUFFIX AND BUILD_SHARED_LIBS)
101-
set (STATIC_SUFFIX "_static")
102-
endif ()
103-
set_target_properties (jsoncpp_lib_static PROPERTIES OUTPUT_NAME jsoncpp${STATIC_SUFFIX}
104-
DEBUG_OUTPUT_NAME jsoncpp${STATIC_SUFFIX}${DEBUG_LIBNAME_SUFFIX})
105-
106-
INSTALL( TARGETS jsoncpp_lib_static ${INSTALL_EXPORT}
107-
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
108-
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
109-
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
110-
111-
IF(NOT CMAKE_VERSION VERSION_LESS 2.8.11)
112-
TARGET_INCLUDE_DIRECTORIES( jsoncpp_lib_static PUBLIC
113-
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
114-
$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/${JSONCPP_INCLUDE_DIR}>
115-
)
116-
ENDIF()
86+
INSTALL( TARGETS jsoncpp_lib ${INSTALL_EXPORT}
87+
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
88+
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
89+
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
11790

91+
IF(NOT CMAKE_VERSION VERSION_LESS 2.8.11)
92+
TARGET_INCLUDE_DIRECTORIES( jsoncpp_lib PUBLIC
93+
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
94+
$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/${JSONCPP_INCLUDE_DIR}>)
11895
ENDIF()

src/test_lib_json/CMakeLists.txt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,8 @@ ADD_EXECUTABLE( jsoncpp_test
99

1010
IF(BUILD_SHARED_LIBS)
1111
ADD_DEFINITIONS( -DJSON_DLL )
12-
TARGET_LINK_LIBRARIES(jsoncpp_test jsoncpp_lib)
13-
ELSE(BUILD_SHARED_LIBS)
14-
TARGET_LINK_LIBRARIES(jsoncpp_test jsoncpp_lib_static)
1512
ENDIF()
13+
TARGET_LINK_LIBRARIES(jsoncpp_test jsoncpp_lib)
1614

1715
# another way to solve issue #90
1816
#set_target_properties(jsoncpp_test PROPERTIES COMPILE_FLAGS -ffloat-store)

0 commit comments

Comments
 (0)