]> git.ipfire.org Git - thirdparty/json-c.git/commitdiff
Merge pull request #312 from Tailmon/master
authorEric Haszlakiewicz <erh+git@nimenees.com>
Sun, 9 Jul 2017 01:25:48 +0000 (21:25 -0400)
committerGitHub <noreply@github.com>
Sun, 9 Jul 2017 01:25:48 +0000 (21:25 -0400)
Fix CMake Build process improved for MinGW and MSYS2

1  2 
CMakeLists.txt

diff --cc CMakeLists.txt
index b97a77f066a4813dd416a0046b8fedaa5894e9a1,4cd9e2ed67ec685f7fffb7fe8f9f89352d4e7045..24ddac5a24f06f6a8993b232cf20437368ea58e5
@@@ -10,9 -10,24 +10,24 @@@ if(MSVC
    file(RENAME ${CMAKE_CURRENT_BINARY_DIR}/include/config.h.win32 ${CMAKE_CURRENT_BINARY_DIR}/include/config.h)
    file(COPY ./json_config.h.win32 DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/include/)
    file(RENAME ${CMAKE_CURRENT_BINARY_DIR}/include/json_config.h.win32 ${CMAKE_CURRENT_BINARY_DIR}/include/json_config.h)
+ elseif(MINGW)
+   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror -D_GNU_SOURCE=1")
+   set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror -D_GNU_SOURCE=1")
+   if (MSYS OR CMAKE_GENERATOR STREQUAL "Unix Makefiles")
+     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 sh ./configure WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
+     file(COPY ./config.h DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/include/)
+     file(COPY ./json_config.h DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/include/)
+   else()
+     file(COPY ./config.h.win32 DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/include/)
+     file(RENAME ${CMAKE_CURRENT_BINARY_DIR}/include/config.h.win32 ${CMAKE_CURRENT_BINARY_DIR}/include/config.h)
+     file(COPY ./json_config.h.win32 DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/include/)
+     file(RENAME ${CMAKE_CURRENT_BINARY_DIR}/include/json_config.h.win32 ${CMAKE_CURRENT_BINARY_DIR}/include/json_config.h)
+   endif()
  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})