|
|
|
# CMake is still experimental, use qmake instead
|
|
|
|
|
|
|
|
PROJECT(KeePassX)
|
|
|
|
|
|
|
|
CMAKE_MINIMUM_REQUIRED(VERSION 2.6.0 FATAL_ERROR)
|
|
|
|
|
|
|
|
MESSAGE("CMake is still experimental, use qmake instead")
|
|
|
|
|
|
|
|
SET( keepassx_VERSION_SHORT "0.4.0" )
|
|
|
|
SET( keepassx_VERSION "0.4.0" )
|
|
|
|
|
|
|
|
ADD_DEFINITIONS(-D'KEEPASSX_VERSION="${keepassx_VERSION}"')
|
|
|
|
|
|
|
|
#Set the custom CMake module directory where our include/lib finders are
|
|
|
|
SET(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
|
|
|
|
|
|
|
|
IF( APPLE OR MINGW )
|
|
|
|
SET( PROGNAME KeePassX )
|
|
|
|
ELSE( APPLE OR MINGW )
|
|
|
|
SET( PROGNAME keepassx )
|
|
|
|
ENDIF( APPLE OR MINGW )
|
|
|
|
|
|
|
|
IF( APPLE )
|
|
|
|
SET( MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/share/macx_bundle/Info_cmake.plist )
|
|
|
|
SET( MACOSX_BUNDLE_ICON_FILE ${CMAKE_CURRENT_SOURCE_DIR}/share/macx_bundle/icon.icns )
|
|
|
|
SET( MACOSX_BUNDLE_INFO_STRING KeePassX v${keepassx_VERSION} )
|
|
|
|
SET( MACOSX_BUNDLE_VERSION ${keepassx_VERSION} )
|
|
|
|
SET( MACOSX_BUNDLE_SHORT_VERSION_STRING ${keepassx_VERSION_SHORT} )
|
|
|
|
SET( MACOSX_BUNDLE_LONG_VERSION_STRING Version ${keepassx_VERSION} )
|
|
|
|
SET( CMAKE_OSX_ARCHITECTURES ppc;i386 )
|
|
|
|
ENDIF( APPLE )
|
|
|
|
|
|
|
|
IF( MINGW )
|
|
|
|
FIND_PROGRAM(CMAKE_RC NAMES ${_CMAKE_TOOLCHAIN_PREFIX}windres HINTS ${_CMAKE_TOOLCHAIN_LOCATION})
|
|
|
|
|
|
|
|
ADD_CUSTOM_COMMAND( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/keepassx.o
|
|
|
|
COMMAND ${CMAKE_RC} -I${CMAKE_CURRENT_SOURCE_DIR}
|
|
|
|
-i${CMAKE_CURRENT_SOURCE_DIR}/share/win_ico/keepassx.rc -o ${CMAKE_CURRENT_BINARY_DIR}/keepassx.o )
|
|
|
|
SET(keepassx_RCS ${CMAKE_CURRENT_BINARY_DIR}/keepassx.o)
|
|
|
|
ENDIF( MINGW )
|
|
|
|
|
|
|
|
|
|
|
|
OPTION(PRECOMPILED_HEADER "Enable precompiled header (required gcc >= 3.4.0)" TRUE)
|
|
|
|
IF( APPLE OR CMAKE_SYSTEM_NAME STREQUAL FreeBSD )
|
|
|
|
SET(PRECOMPILED_HEADER FALSE)
|
|
|
|
ENDIF( APPLE OR CMAKE_SYSTEM_NAME STREQUAL FreeBSD )
|
|
|
|
|
|
|
|
IF( PRECOMPILED_HEADER )
|
|
|
|
FIND_PACKAGE(PCHSupport)
|
|
|
|
IF(NOT PCHSupport_FOUND)
|
|
|
|
SET(PRECOMPILED_HEADER FALSE)
|
|
|
|
ENDIF(NOT PCHSupport_FOUND)
|
|
|
|
ENDIF( PRECOMPILED_HEADER )
|
|
|
|
|
|
|
|
|
|
|
|
SET(QT_MIN_VERSION "4.3.0")
|
|
|
|
SET(QT_USE_QTXML TRUE)
|
|
|
|
SET(QT_USE_QTMAIN TRUE)
|
|
|
|
FIND_PACKAGE(Qt4 REQUIRED)
|
|
|
|
INCLUDE(${QT_USE_FILE})
|
|
|
|
|
|
|
|
|
|
|
|
OPTION(AUTOTYPE "Enable auto-type (X11 only)" TRUE)
|
|
|
|
|
|
|
|
IF( NOT UNIX )
|
|
|
|
SET(AUTOTYPE FALSE)
|
|
|
|
ENDIF( NOT UNIX )
|
|
|
|
|
|
|
|
IF( AUTOTYPE )
|
|
|
|
find_package(X11)
|
|
|
|
|
|
|
|
IF( X11_XTest_FOUND )
|
|
|
|
INCLUDE_DIRECTORIES( ${X11_X11_INCLUDE_PATH} ${X11_XTest_INCLUDE_PATH} )
|
|
|
|
SET(AUTOTYPE_LIBRARIES ${X11_X11_LIB} ${X11_XTest_LIB})
|
|
|
|
ADD_DEFINITIONS(-DAUTOTYPE -DGLOBAL_AUTOTYPE)
|
|
|
|
ELSE( X11_XTest_FOUND )
|
|
|
|
SET(AUTOTYPE FALSE)
|
|
|
|
ENDIF( X11_XTest_FOUND )
|
|
|
|
ENDIF( AUTOTYPE )
|
|
|
|
|
|
|
|
|
|
|
|
IF( MINGW )
|
|
|
|
SET(BINDIR "")
|
|
|
|
SET(SHAREDIR "share")
|
|
|
|
ELSEIF( APPLE )
|
|
|
|
SET(BINDIR "")
|
|
|
|
SET(SHAREDIR "Contents/Resources")
|
|
|
|
ELSE( MINGW )
|
|
|
|
SET(BINDIR "bin")
|
|
|
|
SET(SHAREDIR "share/keepassx")
|
|
|
|
SET(SHAREDIR_APP "share")
|
|
|
|
ENDIF( MINGW )
|
|
|
|
|
|
|
|
|
|
|
|
ADD_SUBDIRECTORY(src)
|
|
|
|
ADD_SUBDIRECTORY(share)
|