| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- cmake_minimum_required(VERSION 2.6)
- project(mirall)
- set(PACKAGE "mirall")
- set( CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules )
- include(${CMAKE_SOURCE_DIR}/VERSION.cmake)
- configure_file( ${CMAKE_SOURCE_DIR}/src/mirall/version.h.in "${CMAKE_CURRENT_BINARY_DIR}/src/mirall/version.h" )
- include_directories(BEFORE "${CMAKE_CURRENT_BINARY_DIR}/src/mirall/")
- include(GNUInstallDirs)
- ## stupid, we should upstream this
- if("${CMAKE_INSTALL_PREFIX}" STREQUAL "/usr")
- set(CMAKE_INSTALL_SYSCONFDIR "/etc")
- endif()
- #####
- ## handle BUILD_OWNCLOUD_OSX_BUNDLE
- # BUILD_OWNCLOUD_OSX_BUNDLE was not initialized OR set to true on OSX
- if(APPLE AND (NOT DEFINED BUILD_OWNCLOUD_OSX_BUNDLE OR BUILD_OWNCLOUD_OSX_BUNDLE))
- set(BUILD_OWNCLOUD_OSX_BUNDLE ON)
- set(OWNCLOUD_OSX_BUNDLE "owncloud.app")
- # BUILD_OWNCLOUD_OSX_BUNDLE was disabled on OSX
- elseif(APPLE AND NOT BUILD_OWNCLOUD_OSX_BUNDLE)
- message(FATAL_ERROR "Building in non-bundle mode on OSX is currently not supported. Comment this error out if you want to work on/test it.")
- # any other platform
- else()
- set(BUILD_OWNCLOUD_OSX_BUNDLE OFF)
- endif()
- #####
- find_package(Qt4 4.6.0 COMPONENTS QtCore QtGui QtXml QtNetwork QtTest REQUIRED )
- find_package(Csync)
- find_package(INotify)
- set(WITH_CSYNC CSYNC_FOUND)
- set(USE_INOTIFY ${INOTIFY_FOUND})
- set(THEME_CLASS "ownCloudTheme")
- configure_file(config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h)
- macro(add_tests)
- foreach( loop_var ${ARGV} )
- qt4_automoc(test${loop_var}.cpp)
- add_executable(test${loop_var} test${loop_var}.cpp)
- target_link_libraries(test${loop_var} ${QT_LIBRARIES} mirall_static)
- add_test(test${loop_var} ${CMAKE_CURRENT_BINARY_DIR}/test${loop_var} --catch_system_errors=no)
- endforeach( loop_var )
- endmacro(add_tests)
- set(CPACK_SOURCE_IGNORE_FILES
- # hidden files
- "/\\\\..+$"
- # temporary files
- "\\\\.swp$"
- # backup files
- "~$"
- # others
- "\\\\.#"
- "/#"
- "/build/"
- "/_build/"
- # used before
- "\\\\.o$"
- "\\\\.lo$"
- "\\\\.la$"
- "Makefile\\\\.in$"
- )
- include(OwnCloudCPack.cmake)
- include(CTest)
- enable_testing()
- #
- # This cmake builds two targets (aka apps), mirall and owncloud. For the owncloud
- # target, OWNCLOUD_CLIENT needs to be a compile flag. It is set in src/CMakeLists.txt
- # but if that fails because cmake is too old, uncomment this here if you want to build
- # owncloud.
- # add_definitions(-DOWNCLOUD_CLIENT)
- add_definitions(-DUNICODE)
- add_definitions(-D_UNICODE)
- # Handle Translations, pick all mirall_* files from trans directory.
- file( GLOB TRANS_FILES ${CMAKE_SOURCE_DIR}/translations/mirall_*.ts)
- set(TRANSLATIONS ${TRANS_FILES})
- add_subdirectory(src)
- if(UNIT_TESTING)
- add_subdirectory(test)
- endif(UNIT_TESTING)
- if(BUILD_OWNCLOUD_OSX_BUNDLE)
- install( FILES exclude.lst DESTINATION ${OWNCLOUD_OSX_BUNDLE}/Contents/Resources )
- else()
- install( FILES exclude.lst DESTINATION ${CMAKE_INSTALL_SYSCONFDIR} )
- endif()
|