From d07e85568e524cdd081878c95e36b49903321689 Mon Sep 17 00:00:00 2001 From: egorpugin Date: Thu, 28 May 2015 13:27:11 +0000 Subject: [PATCH] [build][cmake] Fix mingw build: removed unix prefixes from output libraries. --- CMakeLists.txt | 5 +++++ builds/cmake/BuildFunctions.cmake | 2 +- src/CMakeLists.txt | 14 ++++++++++++-- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 523a8039a8..e8cb276631 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -199,6 +199,11 @@ if (WIN32) endif(WIN32) if (MINGW) + # clear unix-style prefixes + set(CMAKE_SHARED_LIBRARY_PREFIX) + set(CMAKE_SHARED_MODULE_PREFIX) + set(CMAKE_STATIC_LIBRARY_PREFIX) + add_definitions(-D_WIN32_WINNT=0x0600) endif() diff --git a/builds/cmake/BuildFunctions.cmake b/builds/cmake/BuildFunctions.cmake index 6285161bb0..1be5dcbb72 100644 --- a/builds/cmake/BuildFunctions.cmake +++ b/builds/cmake/BuildFunctions.cmake @@ -108,7 +108,7 @@ function(epp_process type files) set(dir ${dir}/${file}.d) add_custom_command( OUTPUT ${out} - DEPENDS databases ${in} + DEPENDS databases boot_gpre ${in} COMMENT "Calling GPRE master for ${F}" # COMMAND ${CMAKE_COMMAND} -E make_directory ${dir} diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 252f7e91fe..9ca8421b19 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1000,12 +1000,22 @@ foreach(F ${files}) endforeach() if (WIN32) + set(fbclient_lib_src $/fbclient.lib) + set(fbclient_lib_dst fbclient_ms.lib) + set( ib_util_lib_src $/ib_util.lib) + set( ib_util_lib_dst ib_util_ms.lib) + if (MINGW) + set(fbclient_lib_src libfbclient.dll.a) + set(fbclient_lib_dst libfbclient.dll.a) + set( ib_util_lib_src libib_util.dll.a) + set( ib_util_lib_dst libib_util.dll.a) + endif() add_custom_command( TARGET copy_files POST_BUILD # lib - COMMAND ${CMAKE_COMMAND} -E copy_if_different $/fbclient.lib ${output_dir}/lib/fbclient_ms.lib - COMMAND ${CMAKE_COMMAND} -E copy_if_different $/ib_util.lib ${output_dir}/lib/ib_util_ms.lib + COMMAND ${CMAKE_COMMAND} -E copy_if_different ${fbclient_lib_src} ${output_dir}/lib/${fbclient_lib_dst} + COMMAND ${CMAKE_COMMAND} -E copy_if_different ${ib_util_lib_src} ${output_dir}/lib/${ib_util_lib_dst} # installers COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_SOURCE_DIR}/builds/install/arch-specific/win32/install_classic.bat ${output_dir}/install_classic.bat COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_SOURCE_DIR}/builds/install/arch-specific/win32/install_super.bat ${output_dir}/install_super.bat