X-Git-Url: http://git.johnwright.org/?p=fmit.git;a=blobdiff_plain;f=CMakeLists.txt;fp=CMakeLists.txt;h=ce3ed8ea4c708c6f0535e68c1023c3e1e57eaf2e;hp=0000000000000000000000000000000000000000;hb=49947d1cd4506f5574b3be62ee90e9f00227d9fd;hpb=82c9faab9421b3d87a0faa84a73f55aaccbbb689 diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..ce3ed8e --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,160 @@ + +project(fmit) # the name of your project + +CMAKE_MINIMUM_REQUIRED(VERSION 2.4.0) +if(COMMAND cmake_policy) + cmake_policy(SET CMP0003 NEW) +endif(COMMAND cmake_policy) +if(COMMAND cmake_policy) + cmake_policy(SET CMP0005 OLD) +endif(COMMAND cmake_policy) + +SET (PACKAGE_NAME "fmit") +SET (VERSION_MAJOR "0") +SET (VERSION_MINOR "99") +SET (VERSION_PATCH "2") +SET (VERSION_SUFFIX "") +SET (PACKAGE_VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}${VERSION_SUFFIX}) +MESSAGE(STATUS "${PACKAGE_NAME} ${PACKAGE_VERSION} (install in ${CMAKE_INSTALL_PREFIX})") +SET(PREFIX ${CMAKE_INSTALL_PREFIX}) + +# CHECK_INCLUDE_FILES (malloc.h HAVE_MALLOC_H) +# CHECK_INCLUDE_FILES ("sys/param.h;sys/mount.h" HAVE_SYS_MOUNT_H) +# CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h) + +# CHECK_INCLUDE_FILE("unistd.h" HAVE_UNISTD_H) +# IF(HAVE_UNISTD_H) +# ADD_DEFINITIONS(-DHAVE_UNISTD_H) +# ENDIF(HAVE_UNISTD_H) + +ADD_DEFINITIONS(-DPREFIX=\\\"${PREFIX}\\\" -DPACKAGE_NAME=\\\"${PACKAGE_NAME}\\\" -DPACKAGE_VERSION=\\\"${PACKAGE_VERSION}\\\") + +#FIND DEPENDENCIES +FIND_PACKAGE(Qt4 REQUIRED) +IF (QT4_FOUND) + MESSAGE(STATUS "Qt4 library found") +ELSE () + MESSAGE(FATAL_ERROR "No Qt4 library found !") +ENDIF () + +SET (FILES_TO_TRANSLATE ) + +SET(QT_USE_QTOPENGL TRUE) +#SET(QT_USE_QT3SUPPORT TRUE) + +INCLUDE(${QT_USE_FILE}) + +FIND_PACKAGE(GLUT REQUIRED) +IF (GLUT_FOUND) + MESSAGE(STATUS "GLUT library found") +ELSE () + MESSAGE(FATAL_ERROR "GLUT library NOT found !") +ENDIF () + +FIND_PACKAGE(OpenGL REQUIRED) +IF (OPENGL_FOUND) + MESSAGE(STATUS "OpenGL library found") +ELSE () + MESSAGE(FATAL_ERROR "OpenGL library NOT found !") +ENDIF () + +SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake") +FIND_PACKAGE(FFTW3 REQUIRED) + +# Options ---------------------------------------------------------------------- + +OPTION(SOUNDSYSTEM_USE_OSS "Build FMIT with OSS support") +IF (SOUNDSYSTEM_USE_OSS) + MESSAGE("OSS sound system requested") + FIND_PACKAGE(OSS) + IF (OSS_FOUND) + ADD_DEFINITIONS(-DCAPTURE_OSS) + MESSAGE(STATUS "OSS library ok") + ELSE () + MESSAGE(FATAL_ERROR "Unable to find OSS library") + ENDIF () +ENDIF () + +OPTION(SOUNDSYSTEM_USE_ALSA "Build FMIT with ALSA support" ON) +IF (SOUNDSYSTEM_USE_ALSA) + MESSAGE("ALSA sound system requested") + FIND_PACKAGE(ALSA) + IF (HAVE_ALSA) + ADD_DEFINITIONS(-DCAPTURE_ALSA) + MESSAGE(STATUS "ALSA library ok") + ELSE () + MESSAGE(FATAL_ERROR "Unable to find ALSA library") + ENDIF () +ENDIF () + +OPTION(SOUNDSYSTEM_USE_PORTAUDIO "Build FMIT with Portaudio support") +IF (SOUNDSYSTEM_USE_PORTAUDIO) + MESSAGE("Portaudio sound system requested") + FIND_PACKAGE(Portaudio) + IF (PORTAUDIO_FOUND) + ADD_DEFINITIONS(-DCAPTURE_PORTAUDIO) + MESSAGE(STATUS "Portaudio library ok") + ELSE () + MESSAGE(FATAL_ERROR "Unable to find Portaudio library") + ENDIF () +ENDIF () + +OPTION(SOUNDSYSTEM_USE_JACK "Build FMIT with JACK support" ON) +IF (SOUNDSYSTEM_USE_JACK) + MESSAGE("JACK sound system requested") + FIND_PACKAGE(Jack) + IF (JACK_FOUND) + ADD_DEFINITIONS(-DCAPTURE_JACK) + MESSAGE(STATUS "JACK library ok") + ELSE () + MESSAGE(FATAL_ERROR "Unable to find JACK library") + ENDIF () +ENDIF () + +# Qt4 Translations +FILE (GLOB TRANSLATIONS_FILES tr/*.ts) +OPTION(UPDATE_TRANSLATIONS "Update source translation tr/*.ts files (WARNING: make clean will delete the source .ts files! Danger!)") + +# Building --------------------------------------------------------------------- + +# Tell cmake to process CMakeLists.txt in that subdirectory +ADD_SUBDIRECTORY(libs/Music) +ADD_SUBDIRECTORY(libs/CppAddons) +ADD_SUBDIRECTORY(src/modules) +ADD_SUBDIRECTORY(src) + +# Installation ----------------------------------------------------------------- + +# Desktop files +INSTALL(FILES + fmit.desktop + DESTINATION share/applications +) + +# Icon files +INSTALL(FILES + ui/images/fmit.svg + DESTINATION share/icons/hicolor/scalable/apps +) + +# Packaging -------------------------------------------------------------------- +# build a CPack driven installer package +# cpack --config CPackConfig.cmake +# cpack --config CPackSourceConfig.cmake +INCLUDE(InstallRequiredSystemLibraries) +SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING") +SET(CPACK_GENERATOR "TGZ;TBZ2") +SET(CPACK_PACKAGE_VENDOR "Gilles Degottex") +SET(CPACK_PACKAGE_VERSION_MAJOR "${VERSION_MAJOR}") +SET(CPACK_PACKAGE_VERSION_MINOR "${VERSION_MINOR}") +SET(CPACK_PACKAGE_VERSION_PATCH "${VERSION_PATCH}") +SET(CPACK_SOURCE_GENERATOR "TGZ;TBZ2") +SET(CPACK_SOURCE_IGNORE_FILES + CVS + .deps ".*\\\\.ui~" + CMakeFiles cmake_install.cmake CMakeCache.txt + Makefile + contrib build dwl remez old test + test_build.sh sync_dwl.sh +) +INCLUDE(CPack)