Commit 7e39efea authored by Mathieu Faverge's avatar Mathieu Faverge

Clean CMakeList

parent 1da1c795
PROJECT(VITE CXX C)
cmake_minimum_required(VERSION 2.8)
project(VITE CXX C)
CMAKE_MINIMUM_REQUIRED(VERSION 2.4)
### The current version number
set (VITE_VERSION_MAJOR 1)
set (VITE_VERSION_MINOR 2)
set (VITE_VERSION_PATCH 0)
IF(COMMAND CMAKE_POLICY)
if(COMMAND CMAKE_POLICY)
# CMP0003: add the link paths to the link command as with cmake 2.4
CMAKE_POLICY(SET CMP0003 NEW)
ENDIF(COMMAND CMAKE_POLICY)
cmake_policy(SET CMP0003 NEW)
endif(COMMAND CMAKE_POLICY)
FIND_PACKAGE(Qt4
COMPONENTS QtCore QtGui QtXml REQUIRED)
SET(QT_USE_QTUITOOLS ON)
SET(QT_USE_QTOPENGL ON)
INCLUDE(${QT_USE_FILE})
### Misc options
option(BUILD_SHARED_LIBS
"Build shared libraries" OFF)
option(BUILD_64bits
"Build 64 bits mode" ON)
if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING "Choose the type of build, options are None, Debug, Release, RelWithDebInfo and MinSizeRel." FORCE)
endif(NOT CMAKE_BUILD_TYPE)
FIND_PACKAGE(GLU)
# cmake modules setup
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/")
include (CMakeDetermineSystem)
include (CheckCCompilerFlag)
include (CheckFunctionExists)
include (CheckSymbolExists)
include (CheckIncludeFiles)
### Required Packages
find_package(Qt4 COMPONENTS QtCore QtGui QtXml REQUIRED)
set(QT_USE_QTUITOOLS ON)
set(QT_USE_QTOPENGL ON)
include(${QT_USE_FILE})
# search for Boost
# Components :
#filesystem, iostreams, programoptions, python, regex, serialization, signals
#system, thread, wave
OPTION(VITE_ENABLE_SERIALIZATION "Enable the support of Boost Serialization." OFF)
IF(VITE_ENABLE_SERIALIZATION)
FIND_PACKAGE( Boost COMPONENTS serialization thread iostreams)
ENDIF(VITE_ENABLE_SERIALIZATION)
find_package(OpenGL)
### Optimization options
option(VITE_ENABLE_SERIALIZATION
"Enable the support of Boost Serialization." OFF)
option(VITE_ENABLE_VBO
"Enable the support of VBO." OFF)
OPTION(VITE_ENABLE_VBO "Enable the support of VBO." OFF)
IF(VITE_ENABLE_VBO)
INCLUDE(cmake/FindGLEW.cmake)
ENDIF(VITE_ENABLE_VBO)
### Trace format options
option(VITE_ENABLE_OTF
"Enable the support of OTF file format." ON)
option(VITE_ENABLE_TAU
"Enable the support of TAU file format." ON)
OPTION(VITE_ENABLE_OTF "Enable the support of OTF file format." ON)
IF(VITE_ENABLE_OTF)
INCLUDE(cmake/FindOTF.cmake)
ENDIF(VITE_ENABLE_OTF)
# stdlib, stdio, string, getopt, etc
check_include_files(stdarg.h HAVE_STDARG_H)
check_function_exists(va_copy HAVE_VA_COPY)
if (NOT HAVE_VA_COPY)
check_function_exists(__va_copy HAVE_UNDERSCORE_VA_COPY)
endif (NOT HAVE_VA_COPY)
check_function_exists(asprintf HAVE_ASPRINTF)
check_function_exists(vasprintf HAVE_VASPRINTF)
check_include_files(getopt.h HAVE_GETOPT_H)
check_include_files(unistd.h HAVE_UNISTD_H)
check_function_exists(getopt_long HAVE_GETOPT_LONG)
check_include_files(errno.h HAVE_ERRNO_H)
check_include_files(stddef.h HAVE_STDDEF_H)
check_function_exists(getrusage HAVE_GETRUSAGE)
check_include_files(limits.h HAVE_LIMITS_H)
check_include_files(string.h HAVE_STRING_H)
OPTION(VITE_ENABLE_TAU "Enable the support of TAU file format." ON)
IF(VITE_ENABLE_TAU)
INCLUDE(cmake/FindTAU.cmake)
ENDIF(VITE_ENABLE_TAU)
#
# Find optional packages
#
set(CMAKE_BUILD_TYPE Release)
# Search for Boost
# Components : filesystem, iostreams, programoptions, python, regex,
# serialization, signals, system, thread, wave
if(VITE_ENABLE_SERIALIZATION)
find_package( Boost COMPONENTS serialization thread iostreams)
endif(VITE_ENABLE_SERIALIZATION)
if(VITE_ENABLE_VBO)
find_package(GLEW)
endif(VITE_ENABLE_VBO)
if(VITE_ENABLE_OTF)
find_package(OTF)
endif(VITE_ENABLE_OTF)
if(VITE_ENABLE_TAU)
find_package(TAU)
endif(VITE_ENABLE_TAU)
SUBDIRS(src)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment