fix problems instantiating mussa.GlSequence
[mussa.git] / py / CMakeLists.txt
1 FIND_PACKAGE(Boost)
2 FIND_PACKAGE(OpenGL)
3 FIND_PACKAGE(PythonLibs)
4 FIND_PACKAGE(PythonInterp)
5 SET(QT_USE_QTOPENGL 1)
6 SET(QT_USE_QTASSISTANT 1)
7 SET(QT_USE_QTNETWORK 1)
8 FIND_PACKAGE(Qt4)
9 INCLUDE( ${QT_USE_FILE} )
10
11
12 IF(BOOST_PYTHON_LIBRARY)
13   INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH} ${QT_INCLUDES})
14   SET(SOURCES 
15         annotation_colors.cpp
16         conserved_path.cpp 
17         glsequence.cpp
18         module.cpp 
19         mussa.cpp
20         MussaWindow.cpp
21         nway_paths.cpp
22         sequence.cpp
23         )
24   
25   ADD_LIBRARY(mussa MODULE ${SOURCES})
26   ADD_LIBRARY(mussa_py STATIC ${SOURCES})
27   ADD_CUSTOM_TARGET(mussa.so ALL
28                      COMMAND cp libmussa.so mussa.so
29                      DEPENDS mussa)
30   LINK_DIRECTORIES(${MUSSA_BINARY_DIR}/alg)
31   TARGET_LINK_LIBRARIES(mussa 
32                           mussa_core
33                           mussa_qui
34                           ${BOOST_PYTHON_LIBRARY}
35                           ${BOOST_FILESYSTEM_LIBRARY}
36                           ${OPENGL_gl_LIBRARY}
37                           ${PYTHON_LIBRARIES}
38                           ${QT_LIBRARIES} 
39                         )
40
41   GET_MUSSA_COMPILE_FLAGS(PY_CFLAGS)
42   GET_MUSSA_LINK_FLAGS(PY_LDFLAGS)
43   SET_SOURCE_FILES_PROPERTIES(
44     ${SOURCES}
45     PROPERTIES
46     COMPILE_FLAGS "${PY_CFLAGS}"
47   )
48   SET_TARGET_PROPERTIES(
49     mussa mussa_py PROPERTIES
50     COMPILE_FLAGS "${PY_CFLAGS}"
51     LINK_FLAGS "${PY_LDFLAGS}"
52   )
53
54   IF(PYTHON_EXECUTABLE)
55     SET(PYTHON_TEST_DIR ${CMAKE_SOURCE_DIR}/py/test/)
56     ADD_TEST(sequence_py 
57              ${PYTHON_EXECUTABLE} ${PYTHON_TEST_DIR}/TestSequence.py)
58   ENDIF(PYTHON_EXECUTABLE)
59 ELSE(BOOST_PYTHON_LIBRARY)
60 ENDIF(BOOST_PYTHON_LIBRARY)
61