From 2532a2d61415a6c836ab7bb1442ae9b0ab2ac7a7 Mon Sep 17 00:00:00 2001 From: Matias Fontanini Date: Fri, 17 Jun 2016 15:51:34 -0700 Subject: [PATCH] Allow building as static/dynamic library --- CMakeLists.txt | 12 ++++++++++++ src/CMakeLists.txt | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index eda111f..c7623ee 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,6 +8,18 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake/") set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/lib) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/lib) +# Build output checks +option(CPPKAFKA_BUILD_SHARED "Build cppkafka as a shared library." ON) +if(CPPKAFKA_BUILD_SHARED) + message(STATUS "Build will generate a shared library. " + "Use CPPKAFKA_BUILD_SHARED=0 to perform a static build") + set(CPPKAFKA_LIBRARY_TYPE SHARED) +else() + message(STATUS "Build will generate a static library.") + set(CPPKAFKA_LIBRARY_TYPE STATIC) + add_definitions("-DCPPKAFKA_STATIC=1") +endif() + include_directories(${CMAKE_SOURCE_DIR}/include/cppkafka) # Look for Boost (just need boost.optional headers here) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index adc904b..671174f 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -15,7 +15,7 @@ set(SOURCES consumer.cpp ) -add_library(cppkafka ${SOURCES}) +add_library(cppkafka ${CPPKAFKA_LIBRARY_TYPE} ${SOURCES}) install( TARGETS cppkafka