Skip to content

Commit

Permalink
Add static library (#174)
Browse files Browse the repository at this point in the history
  • Loading branch information
lategoodbye committed Jul 15, 2020
1 parent 17fb99c commit 22bc7d2
Showing 1 changed file with 14 additions and 3 deletions.
17 changes: 14 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -95,8 +95,8 @@ set(PACKAGE_VERSION "${PROJECT_VERSION}")
set(VERSION "${PROJECT_VERSION}")
configure_file(${CMAKE_CURRENT_LIST_DIR}/mbus/config.h.in ${CMAKE_CURRENT_LIST_DIR}/config.h @ONLY)

add_library(
${PROJECT_NAME}
# list of source files
add_library(objlib OBJECT
"${CMAKE_CURRENT_LIST_DIR}/mbus/mbus-protocol.c"
"${CMAKE_CURRENT_LIST_DIR}/mbus/mbus-protocol.h"
"${CMAKE_CURRENT_LIST_DIR}/mbus/mbus-tcp.c"
Expand All @@ -107,6 +107,14 @@ add_library(
"${CMAKE_CURRENT_LIST_DIR}/mbus/mbus-protocol-aux.h"
"${CMAKE_CURRENT_LIST_DIR}/mbus/mbus-serial.c"
"${CMAKE_CURRENT_LIST_DIR}/mbus/mbus-serial.h")

# shared and static libraries built from the same object files
add_library(${PROJECT_NAME} SHARED $<TARGET_OBJECTS:objlib>)
add_library(libmbus_static STATIC $<TARGET_OBJECTS:objlib>)

set_property(TARGET objlib PROPERTY POSITION_INDEPENDENT_CODE 1)
set_target_properties(libmbus_static PROPERTIES OUTPUT_NAME mbus)

target_include_directories(
${PROJECT_NAME}
PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}>" "$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>"
Expand Down Expand Up @@ -175,7 +183,6 @@ install(
TARGETS ${PROJECT_NAME}
EXPORT ${PROJECT_NAME}Targets
LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib
ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" COMPONENT dev
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" COMPONENT lib)
install(
EXPORT ${PROJECT_NAME}Targets
Expand All @@ -199,6 +206,10 @@ install(
FILES_MATCHING
PATTERN "*.h")

install(
TARGETS libmbus_static
ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" COMPONENT dev)

# ##############################################################################
# package
# mkdir build ; cd build ; cmake .. -DLIBMBUS_PACKAGE_DEB=ON ; cpack ..
Expand Down

0 comments on commit 22bc7d2

Please sign in to comment.