PROJECT(mussa)
ENABLE_TESTING()
-CMAKE_MINIMUM_REQUIRED(VERSION 2.2)
+CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
# try to include our cmake modules
SET (CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/makelib)
+INCLUDE(Platform)
IF(NOT CMAKE_BUILD_TYPE)
SET (CMAKE_BUILD_TYPE Debug CACHE STRING
FORCE)
ENDIF(NOT CMAKE_BUILD_TYPE)
-# configure python
-SET(USE_PYTHON 1)
-
# include packages we depend on
FIND_PACKAGE(Qt4)
SET(QT_USE_QTOPENGL 1)
-IF(QT_ASSISTANT_LIB)
+IF(QT_QTASSISTANT_FOUND)
SET(QT_USE_QTNETWORK 1)
SET(QT_USE_QTASSISTANT 1)
-ENDIF(QT_ASSISTANT_LIB)
+ENDIF(QT_QTASSISTANT_FOUND)
INCLUDE( ${QT_USE_FILE} )
FIND_PACKAGE(OpenGL)
-FIND_PACKAGE(Boost)
+set(Boost_USE_STATIC_LIBS ON)
+set(Boost_USE_MULTITHREADED ON)
+FIND_PACKAGE(Boost 1.34.1 REQUIRED filesystem serialization system program_options )
+FIND_PACKAGE(Boost 1.34.1 COMPONENTS python)
FIND_PACKAGE(PythonLibs)
+SET(USE_PYTHON 0 CACHE BOOL
+ "Build mussa executable linked to python interpreter")
+
+INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH}
+ ${QT_INCLUDES}
+ ${Boost_INCLUDE_DIR} )
+
+
# all of our source files al relative to the root of our project
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR})
ADD_SUBDIRECTORY( doc )
+IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/paircomp)
+ MESSAGE(STATUS "Found paircomp")
+ SET(USE_PAIRCOMP 1)
+ ADD_SUBDIRECTORY( paircomp )
+ENDIF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/paircomp)
ADD_SUBDIRECTORY( alg )
ADD_SUBDIRECTORY( qui )
ADD_SUBDIRECTORY( py )
SET(MAIN_SOURCES
qui/mussagl.cpp)
+
ADD_EXECUTABLE(mussagl WIN32 MACOSX_BUNDLE ${MAIN_SOURCES} )
+# For windows you need to go from library with the most dependencies
+# to the library with the least dependencies -diane
TARGET_LINK_LIBRARIES(mussagl
- mussa_core
mussa_qui
+ mussa_core
${QT_LIBRARIES}
+ # Including QT_LIBS twice is for dealing with linking dependancies
+ # related to Qt Assistant Client on windows
+ ${QT_LIBRARIES}
+ ${Boost_FILESYSTEM_LIBRARY}
+ ${Boost_SERIALIZATION_LIBRARY}
+ ${Boost_SYSTEM_LIBRARY}
+ ${Boost_PROGRAM_OPTIONS_LIBRARY}
${OPENGL_gl_LIBRARY}
- ${BOOST_PROGRAM_OPTIONS_LIBRARY}
- ${BOOST_FILESYSTEM_LIBRARY}
)
IF(USE_PYTHON)
- INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH})
SET(PYTHON_CFLAGS "-DUSE_PYTHON")
TARGET_LINK_LIBRARIES(mussagl
- mussa_py
- ${BOOST_PYTHON_LIBRARY}
- optimized ${PYTHON_LIBRARIES}
- debug ${PYTHON_DEBUG_LIBRARIES}
- )
+ mussa_py
+ ${QT_LIBRARIES}
+#mussaqui_py
+ ${Boost_PYTHON_LIBRARY}
+ ${PYTHON_LIBRARIES}
+ ${PYTHON_LINK_LIBRARIES})
ENDIF(USE_PYTHON)
GET_MUSSA_COMPILE_FLAGS(MAIN_CFLAGS)
SET(MACOSX_BUNDLE_BUNDLE_NAME "Mussa")
SET(MACOSX_BUNDLE_LONG_VERSION_STRING "Mussa Copyright 2004-2006 California Institute of Technology")
SET(MACOSX_BUNDLE_COPYRIGHT "Copyright 2004-2006 California Institute of Technology")
- SET(MACOSX_BUNDLE_ICON_FILE "mussa")
+ SET(MACOSX_BUNDLE_ICON_FILE "mussa.icns")
SET(APP_DIR ${CMAKE_BINARY_DIR}/mussagl.app/Contents)
SET(RESOURCE_DIR ${APP_DIR}/Resources})