aboutsummaryrefslogtreecommitdiff
path: root/modules/KDE4Macros.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'modules/KDE4Macros.cmake')
-rw-r--r--modules/KDE4Macros.cmake48
1 files changed, 29 insertions, 19 deletions
diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake
index 376e6a38..f5632c8a 100644
--- a/modules/KDE4Macros.cmake
+++ b/modules/KDE4Macros.cmake
@@ -54,8 +54,6 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources)
)
ENDIF (NOT HAVE_${_basename}_KIDL_RULE)
-
-
IF (NOT HAVE_${_basename}_SKEL_RULE)
SET(HAVE_${_basename}_SKEL_RULE ON)
@@ -92,7 +90,7 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources)
COMMAND ${KDE4_DCOPIDL_EXECUTABLE}
ARGS --srcdir ${KDE4_KALYPTUS_DIR} ${_tmp_FILE} > ${_kidl}
DEPENDS ${_tmp_FILE}
- )
+ )
ENDIF (NOT HAVE_${_basename}_KIDL_RULE)
IF (NOT HAVE_${_basename}_STUB_RULE)
@@ -153,6 +151,12 @@ ENDMACRO(KDE4_ADD_KCFG_FILES)
# ENDFOREACH (_current_FILE)
#ENDMACRO(KDE4_ADD_MOC_FILES)
+IF(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in")
+ SET(KDE4_MODULE_DIR "${CMAKE_ROOT}/Modules")
+ELSE(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in")
+ SET(KDE4_MODULE_DIR "${CMAKE_SOURCE_DIR}/cmake/modules")
+ENDIF(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in")
+
#create the implementation files from the ui files and add them to the list of sources
#usage: KDE_ADD_UI_FILES(foo_SRCS ${ui_files})
@@ -174,7 +178,7 @@ MACRO(KDE4_ADD_UI_FILES _sources )
-DKDE_UIC_FILE:FILEPATH=${_tmp_FILE}
-DKDE_UIC_H_FILE:FILEPATH=${_header}
-DKDE_UIC_BASENAME:STRING=${_basename}
- -P ${CMAKE_ROOT}/Modules/kde4uic.cmake
+ -P ${KDE4_MODULE_DIR}/kde4uic.cmake
DEPENDS ${_tmp_FILE}
)
ENDFOREACH (_current_FILE)
@@ -209,7 +213,7 @@ MACRO(KDE4_ADD_UI3_FILES _sources )
-DKDE_UIC_H_FILE:FILEPATH=${_header}
-DKDE_UIC_BASENAME:STRING=${_basename}
-DKDE_UIC_PLUGIN_DIR:FILEPATH="."
- -P ${CMAKE_ROOT}/Modules/kde4uic.cmake
+ -P ${KDE4_MODULE_DIR}/kde4uic.cmake
DEPENDS ${_tmp_FILE}
)
@@ -225,7 +229,7 @@ MACRO(KDE4_ADD_UI3_FILES _sources )
-DKDE_UIC_H_FILE:FILEPATH=${_header}
-DKDE_UIC_BASENAME:STRING=${_basename}
-DKDE_UIC_PLUGIN_DIR:FILEPATH="."
- -P ${CMAKE_ROOT}/Modules/kde4uic.cmake
+ -P ${KDE4_MODULE_DIR}/kde4uic.cmake
DEPENDS ${_header}
)
@@ -357,13 +361,19 @@ MACRO(KDE4_CREATE_LIBTOOL_FILE _target)
ENDMACRO(KDE4_CREATE_LIBTOOL_FILE)
-MACRO(KDE4_CREATE_FINAL_FILE _filename)
- FILE(WRITE ${_filename} "//autogenerated file\n")
+MACRO(KDE4_CREATE_FINAL_FILES _filenameCPP _filenameC )
+ FILE(WRITE ${_filenameCPP} "//autogenerated file\n")
+ FILE(WRITE ${_filenameC} "/*autogenerated file*/\n")
FOREACH (_current_FILE ${ARGN})
- FILE(APPEND ${_filename} "#include \"${_current_FILE}\"\n")
+ STRING(REGEX MATCH ".+\\.c$" _isCFile ${_current_FILE})
+ IF(_isCFile)
+ FILE(APPEND ${_filenameC} "#include \"${_current_FILE}\"\n")
+ ELSE(_isCFile)
+ FILE(APPEND ${_filenameCPP} "#include \"${_current_FILE}\"\n")
+ ENDIF(_isCFile)
ENDFOREACH (_current_FILE)
-ENDMACRO(KDE4_CREATE_FINAL_FILE _filename)
+ENDMACRO(KDE4_CREATE_FINAL_FILES)
OPTION(KDE4_ENABLE_FINAL "Enable final all-in-one compilation")
@@ -378,8 +388,8 @@ MACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX)
ENDIF (${_with_PREFIX} STREQUAL "WITH_PREFIX")
IF (KDE4_ENABLE_FINAL)
- KDE4_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${_first_SRC} ${ARGN})
- ADD_LIBRARY(${_target_NAME} MODULE ${_target_NAME}_final.cpp)
+ KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_first_SRC} ${ARGN})
+ ADD_LIBRARY(${_target_NAME} MODULE ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c)
ELSE (KDE4_ENABLE_FINAL)
ADD_LIBRARY(${_target_NAME} MODULE ${_first_SRC} ${ARGN})
ENDIF (KDE4_ENABLE_FINAL)
@@ -395,14 +405,14 @@ ENDMACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX)
MACRO(KDE4_ADD_KLM _target_NAME )
IF (KDE4_ENABLE_FINAL)
- KDE4_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN})
- ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final.cpp)
+ KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${ARGN})
+ ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c)
ELSE (KDE4_ENABLE_FINAL)
ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${ARGN} )
# MESSAGE(STATUS "klm: kdeinit_${_target_NAME}")
ENDIF (KDE4_ENABLE_FINAL)
- CONFIGURE_FILE(${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp)
+ CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp)
ADD_EXECUTABLE( ${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp )
TARGET_LINK_LIBRARIES( ${_target_NAME} kdeinit_${_target_NAME} )
@@ -413,8 +423,8 @@ ENDMACRO(KDE4_ADD_KLM _target_NAME)
MACRO(KDE4_ADD_EXECUTABLE _target_NAME )
IF (KDE4_ENABLE_FINAL)
- KDE4_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN})
- ADD_EXECUTABLE(${_target_NAME} ${_target_NAME}_final.cpp)
+ KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${ARGN})
+ ADD_EXECUTABLE(${_target_NAME} ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c)
ELSE (KDE4_ENABLE_FINAL)
ADD_EXECUTABLE(${_target_NAME} ${ARGN} )
ENDIF (KDE4_ENABLE_FINAL)
@@ -441,8 +451,8 @@ MACRO(KDE4_ADD_LIBRARY _target_NAME _lib_TYPE)
ENDIF (${_lib_TYPE} STREQUAL "MODULE")
IF (KDE4_ENABLE_FINAL)
- KDE4_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${_first_SRC} ${ARGN})
- ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_target_NAME}_final.cpp)
+ KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_first_SRC} ${ARGN})
+ ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c)
ELSE (KDE4_ENABLE_FINAL)
ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_first_SRC} ${ARGN})
ENDIF (KDE4_ENABLE_FINAL)