aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Ehrlicher <ch.ehrlicher@gmx.de>2008-07-21 21:14:57 +0000
committerChristian Ehrlicher <ch.ehrlicher@gmx.de>2008-07-21 21:14:57 +0000
commiteac9e3fbd8ebd93c3847be8dd2413382f9d4a352 (patch)
treef9ea7b29f36328120cb7ca129a2df755effede76
parent8d9efc2b285ef9f5dff75958a659eb20bb239d69 (diff)
downloadextra-cmake-modules-eac9e3fbd8ebd93c3847be8dd2413382f9d4a352.tar.gz
extra-cmake-modules-eac9e3fbd8ebd93c3847be8dd2413382f9d4a352.tar.bz2
fix automoc4 for msvc as discussed on kde-buildsystem
svn path=/trunk/KDE/kdelibs/; revision=836190
-rw-r--r--modules/KDE4Macros.cmake27
1 files changed, 24 insertions, 3 deletions
diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake
index 768a36e2..23943590 100644
--- a/modules/KDE4Macros.cmake
+++ b/modules/KDE4Macros.cmake
@@ -552,13 +552,20 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX)
endif (${_with_PREFIX} STREQUAL "WITH_PREFIX")
set(_SRCS ${_first_SRC} ${ARGN})
- kde4_handle_automoc(${_target_NAME} _SRCS)
+ if(MSVC)
+ add_automoc4_target("${_target_NAME}_automoc" _SRCS)
+ else(MSVC)
+ automoc4(${_target_NAME} _SRCS)
+ endif(MSVC)
if (KDE4_ENABLE_FINAL)
kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS})
add_library(${_target_NAME} MODULE ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files})
else (KDE4_ENABLE_FINAL)
add_library(${_target_NAME} MODULE ${_SRCS})
endif (KDE4_ENABLE_FINAL)
+ if(MSVC)
+ add_dependencies(${_target_NAME} "${_target_NAME}_automoc")
+ endif(MSVC)
if (_first_SRC)
set_target_properties(${_target_NAME} PROPERTIES PREFIX "")
@@ -802,13 +809,20 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME)
set(_add_executable_param ${_add_executable_param} EXCLUDE_FROM_ALL)
endif (_test AND NOT KDE4_BUILD_TESTS)
- kde4_handle_automoc(${_target_NAME} _SRCS)
+ if(MSVC)
+ add_automoc4_target("${_target_NAME}_automoc" _SRCS)
+ else(MSVC)
+ automoc4(${_target_NAME} _SRCS)
+ endif(MSVC)
if (KDE4_ENABLE_FINAL)
kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS})
add_executable(${_target_NAME} ${_add_executable_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files})
else (KDE4_ENABLE_FINAL)
add_executable(${_target_NAME} ${_add_executable_param} ${_SRCS})
endif (KDE4_ENABLE_FINAL)
+ if(MSVC)
+ add_dependencies(${_target_NAME} "${_target_NAME}_automoc")
+ endif(MSVC)
if (_test)
set_target_properties(${_target_NAME} PROPERTIES COMPILE_FLAGS -DKDESRCDIR="\\"${CMAKE_CURRENT_SOURCE_DIR}\\"")
@@ -843,13 +857,20 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE)
endif (${_lib_TYPE} STREQUAL "MODULE")
set(_SRCS ${_first_SRC} ${ARGN})
- kde4_handle_automoc(${_target_NAME} _SRCS)
+ if(MSVC)
+ add_automoc4_target("${_target_NAME}_automoc" _SRCS)
+ else(MSVC)
+ automoc4(${_target_NAME} _SRCS)
+ endif(MSVC)
if (KDE4_ENABLE_FINAL)
kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS})
add_library(${_target_NAME} ${_add_lib_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files})
else (KDE4_ENABLE_FINAL)
add_library(${_target_NAME} ${_add_lib_param} ${_SRCS})
endif (KDE4_ENABLE_FINAL)
+ if(MSVC)
+ add_dependencies(${_target_NAME} "${_target_NAME}_automoc")
+ endif(MSVC)
kde4_handle_rpath_for_library(${_target_NAME})