aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/FindKDEWIN32.cmake25
-rw-r--r--modules/KDE4Macros.cmake66
2 files changed, 32 insertions, 59 deletions
diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake
index b69f0beb..5d4499af 100644
--- a/modules/FindKDEWIN32.cmake
+++ b/modules/FindKDEWIN32.cmake
@@ -71,29 +71,4 @@ if (WIN32)
message(FATAL_ERROR "Could NOT find KDEWIN32 library\nPlease install it first")
endif (KDEWIN32_FIND_REQUIRED)
endif (KDEWIN32_FOUND)
- MACRO (KDE_ADD_RESOURCES2 outfiles )
-
- FOREACH (it ${ARGN})
- GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE)
- GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
- GET_FILENAME_COMPONENT(rc_path ${infile} PATH)
- SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/${outfilename}_res.o)
- # parse file for dependencies
- FILE(READ "${infile}" _RC_FILE_CONTENTS)
- STRING(REGEX MATCHALL "<file>[^<]*" _RC_FILES "${_RC_FILE_CONTENTS}")
- SET(_RC_DEPENDS)
- FOREACH(_RC_FILE ${_RC_FILES})
- STRING(REGEX REPLACE "^<file>" "" _RC_FILE "${_RC_FILE}")
- SET(_RC_DEPENDS ${_RC_DEPENDS} "${rc_path}/${_RC_FILE}")
- ENDFOREACH(_RC_FILE)
- ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
- COMMAND windres
- ARGS -i ${infile} -o ${outfile} --include-dir=${CMAKE_CURRENT_SOURCE_DIR}
- MAIN_DEPENDENCY ${infile}
- DEPENDS ${_RC_DEPENDS})
- SET(${outfiles} ${${outfiles}} ${outfile})
- ENDFOREACH (it)
-
- ENDMACRO (KDE_ADD_RESOURCES2)
-
endif (WIN32)
diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake
index 7e4b5222..92ec5097 100644
--- a/modules/KDE4Macros.cmake
+++ b/modules/KDE4Macros.cmake
@@ -947,40 +947,38 @@ endmacro (KDE4_CREATE_HTML_HANDBOOK)
macro (KDE4_ADD_WIN32_APP_ICON outfiles pattern)
if (WIN32)
- #if (NOT PNG2ICO_EXECUTABLE)
- # find_executable(PNG2ICO_EXECUTABLE
- #endif (NOT PNG2ICO_EXECUTABLE)
- file(GLOB files "${pattern}")
-# message(${files})
- foreach (it ${files})
- get_filename_component(_name ${it} NAME_WE)
- #exclude 22'er icons, they do not fit into ico format
- if (NOT it MATCHES ".*22-.*")
+ if (NOT PNG2ICO_EXECUTABLE)
+ find_program(PNG2ICO_EXECUTABLE NAMES png2ico)
+ endif (NOT PNG2ICO_EXECUTABLE)
+ if (PNG2ICO_EXECUTABLE)
+ file(GLOB files "${pattern}")
+ foreach (it ${files})
+ get_filename_component(_name ${it} NAME_WE)
+ ##exclude 22'er icons, they do not fit into ico format - not needed anymore - you have to use the icons from kdebase / oxygen
+ #if (NOT it MATCHES ".*22-.*")
set (_icons "${_icons} ${it}")
- endif (NOT it MATCHES ".*22-.*")
- endforeach (it)
- set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${_name})
- # png2ico is located in the recommended kdewin32 package
- message("png2ico ${_outfilename}.ico ${_icons}")
- exec_program(png2ico
- ARGS ${_outfilename}.ico ${_icons}
- )
-# does not work for unkwown reason
-# add_custom_command(OUTPUT ${_outfilename}.ico
-# COMMAND c:/Programme/kdewin-msvc/bin/png2ico.exe
-# ARGS ${_outfilename}.ico ${_icons}
-# DEPENDS ${_icons}
-# )
- file(WRITE ${_outfilename}.rc "IDI_ICON1 ICON DISCARDABLE \"${_outfilename}.ico\"\n")
- if (MINGW)
- add_custom_command(OUTPUT ${_outfilename}_res.o
- COMMAND windres
- ARGS -i ${_outfilename}.rc -o ${_outfilename}_res.o --include-dir=${CMAKE_CURRENT_SOURCE_DIR}
- DEPENDS ${_outfilename}.ico ${_outfilename}.rc
- )
- list(APPEND ${outfiles} ${_outfilename}_res.o)
- else(MINGW)
- list(APPEND ${outfiles} ${_outfilename}.rc)
- endif(MINGW)
+ #endif (NOT it MATCHES ".*22-.*")
+ endforeach (it)
+
+ set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${_name})
+
+ # png2ico is found by the above find_program
+ message("png2ico ${_outfilename}.ico ${_icons}")
+ exec_program(png2ico ARGS ${_outfilename}.ico ${_icons})
+
+ # now make rc file for adding it to the sources
+ file(WRITE ${_outfilename}.rc "IDI_ICON1 ICON DISCARDABLE \"${_outfilename}.ico\"\n")
+ if (MINGW)
+ add_custom_command(OUTPUT ${_outfilename}_res.o
+ COMMAND windres
+ ARGS -i ${_outfilename}.rc -o ${_outfilename}_res.o --include-dir=${CMAKE_CURRENT_SOURCE_DIR}
+ DEPENDS ${_outfilename}.ico ${_outfilename}.rc
+ )
+ list(APPEND ${outfiles} ${_outfilename}_res.o)
+ else(MINGW)
+ list(APPEND ${outfiles} ${_outfilename}.rc)
+ endif(MINGW)
+ endif(PNG2ICO_EXECUTABLE)
endif(WIN32)
endmacro (KDE4_ADD_WIN32_APP_ICON)
+