From cfbbb231418675ae5f738517b464ecd21cc2d9c3 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Wed, 3 May 2017 11:29:12 +0300 Subject: [PATCH 1/3] build,cmake: add _GNU_SOURCE to CFLAGS Signed-off-by: Alexandru Ardelean --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 8ae0950..965fe8f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -12,7 +12,7 @@ if(MSVC) file(RENAME ${CMAKE_CURRENT_BINARY_DIR}/include/json_config.h.win32 ${CMAKE_CURRENT_BINARY_DIR}/include/json_config.h) elseif(UNIX) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror") - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror -D_GNU_SOURCE") execute_process(COMMAND echo ${CMAKE_CURRENT_SOURCE_DIR} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) execute_process(COMMAND sh autogen.sh WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) execute_process(COMMAND ./configure WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) From 4b5e39c89ce4ed889e3fddcc4204d1a11bcf407f Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Wed, 3 May 2017 11:59:31 +0300 Subject: [PATCH 2/3] build,cmake: generate both static and shared libjson Signed-off-by: Alexandru Ardelean --- CMakeLists.txt | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 965fe8f..f93c0e6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -55,13 +55,20 @@ set(JSON_C_SOURCES ) add_library(json-c + SHARED + ${JSON_C_SOURCES} + ${JSON_C_HEADERS} +) + +add_library(json-c-static + STATIC ${JSON_C_SOURCES} ${JSON_C_HEADERS} ) set_property(TARGET json-c PROPERTY C_STANDARD 99) -install(TARGETS json-c +install(TARGETS json-c json-c-static RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib From f10a5ae4d7a524ff287a0ec0a6860ca4abd75bfc Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Wed, 3 May 2017 11:30:38 +0300 Subject: [PATCH 3/3] .gitignore: add cmake generated files Signed-off-by: Alexandru Ardelean --- .gitignore | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.gitignore b/.gitignore index a295965..33649ca 100644 --- a/.gitignore +++ b/.gitignore @@ -99,3 +99,11 @@ /missing /stamp-h1 /stamp-h2 + +# cmake auto-generated files +/CMakeCache.txt +/CMakeFiles +/cmake_install.cmake +/include +/libjson-c-static.a +/libjson-c.so