mirror of
https://bitbucket.org/smil3y/katie.git
synced 2025-02-23 18:32:55 +00:00
KatieConfig.cmake review
Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
This commit is contained in:
parent
af7b3b6a2d
commit
3a7935df73
2 changed files with 71 additions and 73 deletions
|
@ -12,45 +12,7 @@
|
|||
|
||||
set(KATIE_FOUND TRUE)
|
||||
|
||||
# Compute paths
|
||||
get_filename_component(KATIE_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" DIRECTORY)
|
||||
get_filename_component(KATIE_PREFIX ${KATIE_CMAKE_DIR}/ ABSOLUTE)
|
||||
|
||||
# Include definitions for IMPORTED targets
|
||||
include("${KATIE_CMAKE_DIR}/KatieLibraryTargets.cmake")
|
||||
include("${KATIE_CMAKE_DIR}/KatieBinaryTargets.cmake")
|
||||
|
||||
# These are pre-set and dynamically set variables, some use IMPORTED targets
|
||||
set(KATIE_DEFINITIONS @KATIE_DEFINITIONS@)
|
||||
set(KATIE_INCLUDES "@KATIE_HEADERS_FULL@")
|
||||
set(KATIE_LIBRARIES)
|
||||
set(KATIE_COMPONENTS @KATIE_COMPONENTS@)
|
||||
set(KATIE_TOOLS @KATIE_TOOLS@)
|
||||
set(KATIE_MKSPECS_DIR "${KATIE_CMAKE_DIR}/mkspecs")
|
||||
set(KATIE_MKSPECS "${KATIE_MKSPECS_DIR}/mkspecs.cmake")
|
||||
|
||||
foreach(component ${KATIE_COMPONENTS})
|
||||
string(TOUPPER ${component} uppercomp)
|
||||
set(KATIE_INCLUDES ${KATIE_INCLUDES} "@KATIE_HEADERS_FULL@/Qt${component}")
|
||||
set(KATIE_${uppercomp}_INCLUDES "@KATIE_HEADERS_FULL@/Qt${component}")
|
||||
set(KATIE_LIBRARIES ${KATIE_LIBRARIES} Katie::${component})
|
||||
|
||||
set(KATIE_${uppercomp}_LIBRARIES Katie::${component})
|
||||
set(KATIE_${uppercomp}_FOUND TRUE)
|
||||
endforeach()
|
||||
|
||||
foreach(tool ${KATIE_TOOLS})
|
||||
string(TOUPPER ${tool} uppertool)
|
||||
set(KATIE_${uppertool} Katie::${tool}@KATIE_TOOLS_SUFFIX@)
|
||||
endforeach()
|
||||
|
||||
# Include macros, tools variables must be set before that
|
||||
include("${KATIE_CMAKE_DIR}/KatieMacros.cmake")
|
||||
|
||||
# Platform specific stuff and some tests
|
||||
include(${KATIE_MKSPECS})
|
||||
|
||||
# The stored configuration paths that vendors usually change
|
||||
# Stored configuration paths that vendors usually change
|
||||
set(KATIE_PREFIX_PATH "@KATIE_PREFIX_FULL@")
|
||||
set(KATIE_HEADERS_PATH "@KATIE_HEADERS_FULL@")
|
||||
set(KATIE_LIBRARIES_PATH "@KATIE_LIBRARIES_FULL@")
|
||||
|
@ -68,13 +30,52 @@ set(KATIE_APPLICATIONS_PATH "@KATIE_APPLICATIONS_FULL@")
|
|||
set(KATIE_PIXMAPS_PATH "@KATIE_PIXMAPS_FULL@")
|
||||
set(KATIE_TOOLS_SUFFIX "@KATIE_TOOLS_SUFFIX@")
|
||||
|
||||
# Compute paths
|
||||
get_filename_component(KATIE_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" DIRECTORY)
|
||||
get_filename_component(KATIE_PREFIX ${KATIE_CMAKE_DIR}/ ABSOLUTE)
|
||||
|
||||
# Include definitions for IMPORTED targets
|
||||
include("${KATIE_CMAKE_DIR}/KatieLibraryTargets.cmake")
|
||||
include("${KATIE_CMAKE_DIR}/KatieBinaryTargets.cmake")
|
||||
|
||||
# These are pre-set and dynamically set variables, some use IMPORTED targets
|
||||
set(KATIE_DEFINITIONS @KATIE_DEFINITIONS@)
|
||||
set(KATIE_INCLUDES "${KATIE_HEADERS_FULL}")
|
||||
set(KATIE_LIBRARIES)
|
||||
set(KATIE_COMPONENTS @KATIE_COMPONENTS@)
|
||||
set(KATIE_TOOLS @KATIE_TOOLS@)
|
||||
set(KATIE_MKSPECS_DIR "${KATIE_CMAKE_DIR}/mkspecs")
|
||||
set(KATIE_MKSPECS "${KATIE_MKSPECS_DIR}/mkspecs.cmake")
|
||||
|
||||
foreach(component ${KATIE_COMPONENTS})
|
||||
string(TOUPPER ${component} uppercomp)
|
||||
set(KATIE_INCLUDES ${KATIE_INCLUDES} "${KATIE_HEADERS_FULL}/Qt${component}")
|
||||
set(KATIE_${uppercomp}_INCLUDES "${KATIE_HEADERS_FULL}/Qt${component}")
|
||||
set(KATIE_LIBRARIES ${KATIE_LIBRARIES} Katie::${component})
|
||||
|
||||
set(KATIE_${uppercomp}_LIBRARIES Katie::${component})
|
||||
set(KATIE_${uppercomp}_FOUND TRUE)
|
||||
endforeach()
|
||||
|
||||
foreach(tool ${KATIE_TOOLS})
|
||||
string(TOUPPER ${tool} uppertool)
|
||||
set(KATIE_${uppertool} Katie::${tool})
|
||||
endforeach()
|
||||
|
||||
# Include macros, tools variables must be set before that
|
||||
include("${KATIE_CMAKE_DIR}/KatieMacros.cmake")
|
||||
|
||||
# Platform specific stuff and some tests
|
||||
include(${KATIE_MKSPECS})
|
||||
|
||||
if(NOT "${KATIE_FIND_QUIETLY}")
|
||||
message(STATUS "Found Katie version: ${KATIE_VERSION}")
|
||||
endif()
|
||||
|
||||
# Qt4 compatibility by default, covers most cases except those who rely on QT_USE_FILE and do not
|
||||
# specify which components the targets must be linked to or respect QT_DEFINITIONS and QT_INCLUDES
|
||||
if(NOT KATIE_COMPAT EQUAL FALSE AND NOT KATIE_COMPAT EQUAL OFF)
|
||||
if(NOT KATIE_COMPAT EQUAL FALSE AND NOT KATIE_COMPAT EQUAL OFF AND NOT KATIE_COMPAT_IS_SET)
|
||||
set(KATIE_COMPAT_IS_SET CACHE BOOL TRUE "")
|
||||
message(STATUS "Setting up Qt4 compatibility via Katie")
|
||||
|
||||
set(Qt4_FOUND TRUE)
|
||||
|
@ -92,38 +93,35 @@ if(NOT KATIE_COMPAT EQUAL FALSE AND NOT KATIE_COMPAT EQUAL OFF)
|
|||
set(QT_MKSPECS_DIR ${KATIE_MKSPECS_DIR})
|
||||
|
||||
# those are exceptions because they have "q" prefix which the macros from Qt4Macros do not expect
|
||||
set(QT_DBUSXML2CPP_EXECUTABLE "${KATIE_BINARIES_PATH}/qdbusxml2cpp@KATIE_TOOLS_SUFFIX@${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
set(QT_DBUSCPP2XML_EXECUTABLE "${KATIE_BINARIES_PATH}/qdbuscpp2xml@KATIE_TOOLS_SUFFIX@${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
set(QT_DBUSXML2CPP_EXECUTABLE "${KATIE_BINARIES_PATH}/qdbusxml2cpp${KATIE_TOOLS_SUFFIX}${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
set(QT_DBUSCPP2XML_EXECUTABLE "${KATIE_BINARIES_PATH}/qdbuscpp2xml${KATIE_TOOLS_SUFFIX}${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
|
||||
if(NOT KATIE_COMPAT_ISSET)
|
||||
set(KATIE_COMPAT_ISSET CACHE BOOL TRUE "")
|
||||
if(KATIE_TYPE STREQUAL SHARED)
|
||||
set(_libsuffix "${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
||||
elseif(KATIE_TYPE STREQUAL MODULE)
|
||||
set(_libsuffix "${CMAKE_SHARED_MODULE_SUFFIX}")
|
||||
else()
|
||||
set(_libsuffix "${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
||||
endif()
|
||||
foreach(tool ${KATIE_TOOLS})
|
||||
add_executable(Qt4::${tool} IMPORTED)
|
||||
set_property(
|
||||
TARGET Qt4::${tool}
|
||||
PROPERTY
|
||||
IMPORTED_LOCATION "${KATIE_BINARIES_PATH}/${tool}${CMAKE_EXECUTABLE_SUFFIX}"
|
||||
)
|
||||
string(TOUPPER ${tool} uppertool)
|
||||
set(QT_${uppertool}_EXECUTABLE "${KATIE_BINARIES_PATH}/${tool}${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
endforeach()
|
||||
|
||||
foreach(component ${KATIE_COMPONENTS})
|
||||
add_library(Qt4::Qt${component} ${KATIE_TYPE} IMPORTED)
|
||||
set_property(
|
||||
TARGET Qt4::Qt${component}
|
||||
PROPERTY
|
||||
IMPORTED_LOCATION "${KATIE_LIBRARIES_PATH}/libKt${component}${_libsuffix}"
|
||||
)
|
||||
endforeach()
|
||||
if(KATIE_TYPE STREQUAL SHARED)
|
||||
set(_libsuffix "${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
||||
elseif(KATIE_TYPE STREQUAL MODULE)
|
||||
set(_libsuffix "${CMAKE_SHARED_MODULE_SUFFIX}")
|
||||
else()
|
||||
set(_libsuffix "${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
||||
endif()
|
||||
foreach(tool ${KATIE_TOOLS})
|
||||
add_executable(Qt4::${tool} IMPORTED)
|
||||
set_property(
|
||||
TARGET Qt4::${tool}
|
||||
PROPERTY
|
||||
IMPORTED_LOCATION "${KATIE_BINARIES_PATH}/${tool}${KATIE_TOOLS_SUFFIX}${CMAKE_EXECUTABLE_SUFFIX}"
|
||||
)
|
||||
string(TOUPPER ${tool} uppertool)
|
||||
set(QT_${uppertool}_EXECUTABLE "${KATIE_BINARIES_PATH}/${tool}${KATIE_TOOLS_SUFFIX}${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
endforeach()
|
||||
|
||||
foreach(component ${KATIE_COMPONENTS})
|
||||
add_library(Qt4::Qt${component} ${KATIE_TYPE} IMPORTED)
|
||||
set_property(
|
||||
TARGET Qt4::Qt${component}
|
||||
PROPERTY
|
||||
IMPORTED_LOCATION "${KATIE_LIBRARIES_PATH}/libKt${component}${_libsuffix}"
|
||||
)
|
||||
endforeach()
|
||||
|
||||
# bad assumption, Qt4 module does it
|
||||
if(UNIX)
|
||||
|
@ -144,9 +142,9 @@ if(NOT KATIE_COMPAT EQUAL FALSE AND NOT KATIE_COMPAT EQUAL OFF)
|
|||
# TODO: component definitions
|
||||
endforeach()
|
||||
|
||||
set(QT_DEFINITIONS ${KATIE_DEFINITIONS} -DQT_INCLUDE_COMPAT)
|
||||
set(QT_DEFINITIONS ${KATIE_DEFINITIONS} -DQT_INCLUDE_COMPAT -DQT_NAMESPACE_COMPAT)
|
||||
|
||||
# not much to be done about those..
|
||||
# not much to be done about those since they are complex and many projects rely on them
|
||||
include(Qt4Macros)
|
||||
include(MacroAddFileDependencies)
|
||||
endif()
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# Maintainer: Ivailo Monev <xakepa10@gmail.com>
|
||||
|
||||
pkgname=katie-git
|
||||
pkgver=4.9.0.15be0733
|
||||
pkgver=4.9.0.af7b3b6a
|
||||
pkgrel=1
|
||||
pkgdesc='C++ toolkit derived from the Qt 4.8 framework'
|
||||
arch=('i686' 'x86_64')
|
||||
|
|
Loading…
Add table
Reference in a new issue