set(Boost_USE_STATIC_LIBS OFF) set(Boost_USE_MULTITHREADED ON) FIND_PACKAGE(Boost 1.34.1 COMPONENTS python filesystem serialization) FIND_PACKAGE(OpenGL) FIND_PACKAGE(PythonLibs) FIND_PACKAGE(PythonInterp) # SET(QT_DONT_USE_QTGUI 1) FIND_PACKAGE(Qt4) INCLUDE( ${QT_USE_FILE} ) IF(Boost_PYTHON_LIBRARY) INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH} ${QT_INCLUDES}) SET(SOURCES stl_container_adapter.cpp alphabet.cpp annot.cpp annotation_colors.cpp annotations.cpp conserved_path.cpp drawable.cpp flp.cpp glsequence.cpp module.cpp mussa.cpp nway_paths.cpp seq_span.cpp sequence.cpp ) SET(QUI_SOURCES module_qui.cpp qt.cpp sequence.cpp glsequence.cpp annotation_colors.cpp sequencebrowserwidget.cpp ) SET(MUSSA_LIBRARIES mussa_core ${Boost_PYTHON_LIBRARY} ${Boost_SYSTEM_LIBRARY} ${Boost_FILESYSTEM_LIBRARY} ${Boost_SERIALIZATION_LIBRARY} ${OPENGL_gl_LIBRARY} ${QT_QTCORE_LIBRARY} #optimized ${QT_QTCORE_LIBRARY_RELEASE} #debug ${QT_QTCORE_LIBRARY_DEBUG} ) GET_MUSSA_COMPILE_FLAGS(PY_CFLAGS) GET_MUSSA_LINK_FLAGS(PY_LDFLAGS) # configure static core python library ADD_LIBRARY(mussa_py STATIC ${SOURCES}) SET_TARGET_PROPERTIES(mussa_py PROPERTIES COMPILE_FLAGS "${PY_CFLAGS}" LINK_FLAGS "${PY_LDFLAGS}") # configure core (shared) python module ADD_LIBRARY(mussa MODULE ${SOURCES}) SET_TARGET_PROPERTIES(mussa PROPERTIES PREFIX "" COMPILE_FLAGS "${PY_CFLAGS}" LINK_FLAGS "${PY_LDFLAGS}") TARGET_LINK_LIBRARIES(mussa ${MUSSA_LIBRARIES} ${PYTHON_LIBRARIES} ) # configure static gui python library #ADD_LIBRARY(mussaqui_py STATIC ${QUI_SOURCES}) # SET_TARGET_PROPERTIES(mussa_py PROPERTIES # COMPILE_FLAGS "${PY_CFLAGS}" # LINK_FLAGS "${PY_LDFLAGS}") # configure gui (shared) python library ADD_LIBRARY(mussaqui MODULE ${QUI_SOURCES}) SET_TARGET_PROPERTIES(mussaqui PROPERTIES PREFIX "" COMPILE_FLAGS "${PY_CFLAGS}" LINK_FLAGS "${PY_LDFLAGS}") TARGET_LINK_LIBRARIES(mussaqui mussa_qui ${MUSSA_LIBRARIES} ${PYTHON_LIBRARIES} ${QT_QTGUI_LIBRARY} ${QT_QTOPENGL_LIBRARY} ) SET_SOURCE_FILES_PROPERTIES( ${SOURCES} ${QUI_SOURCES} PROPERTIES COMPILE_FLAGS "${PY_CFLAGS}" ) SET_TARGET_PROPERTIES( ${STATIC_PYTHON_TARGETS} ${SHARED_PYTHON_TARGETS} PROPERTIES COMPILE_FLAGS "${PY_CFLAGS}" LINK_FLAGS "${PY_LDFLAGS}" ) IF(PYTHON_EXECUTABLE) SET(PYTEST_DIR ${CMAKE_SOURCE_DIR}/py/test/) ADD_TEST(TestAnnotations ${PYTHON_EXECUTABLE} ${PYTEST_DIR}/TestAnnotations.py) ADD_TEST(TestSeqSpan ${PYTHON_EXECUTABLE} ${PYTEST_DIR}/TestSeqSpan.py) ADD_TEST(TestSequence ${PYTHON_EXECUTABLE} ${PYTEST_DIR}/TestSequence.py) ADD_TEST(TestFlp ${PYTHON_EXECUTABLE} ${PYTEST_DIR}/TestFlp.py) ADD_TEST(TestMussa ${PYTHON_EXECUTABLE} ${PYTEST_DIR}/TestMussa.py) ENDIF(PYTHON_EXECUTABLE) ELSE(Boost_PYTHON_LIBRARY) MESSAGE(STATUS "Not building mussa python extension, Boost python not found") ENDIF(Boost_PYTHON_LIBRARY) ADD_SUBDIRECTORY(test)