allow adding and viewing sequences to an analysis from python
[mussa.git] / py / CMakeLists.txt
1 FIND_PACKAGE(Boost)
2 FIND_PACKAGE(OpenGL)
3 FIND_PACKAGE(PythonLibs)
4 FIND_PACKAGE(PythonInterp)
5 SET(QT_DONT_USE_QTGUI 1)
6 FIND_PACKAGE(Qt4)
7 INCLUDE( ${QT_USE_FILE} )
8
9
10 IF(BOOST_PYTHON_LIBRARY)
11   INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH} ${QT_INCLUDES})
12   SET(SOURCES 
13         annot.cpp
14         annotation_colors.cpp
15         conserved_path.cpp 
16         flp.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   # Any suggestions for a more elegant solution to this? -diane
28   IF(WIN32)
29     ADD_CUSTOM_TARGET(mussa.dll ALL
30                       COMMAND copy libmussa.dll mussa.dll
31                       DEPENDS mussa)
32   ELSE(WIN32)
33     # Not win32, aka linux and mac
34     ADD_CUSTOM_TARGET(mussa.so ALL
35                       COMMAND cp libmussa.so mussa.so
36                       DEPENDS mussa)
37   ENDIF(WIN32)
38   TARGET_LINK_LIBRARIES(mussa 
39                           mussa_core
40                           ${BOOST_PYTHON_LIBRARY}
41                           ${BOOST_FILESYSTEM_LIBRARY}
42                           ${BOOST_SERIALIZATION_LIBRARY}
43                           ${OPENGL_gl_LIBRARY}
44                           ${PYTHON_LIBRARIES}
45                           optimized ${QT_QTCORE_LIBRARY} 
46                           debug ${QT_QTCORE_LIBRARY_DEBUG} 
47                         )
48   GET_MUSSA_COMPILE_FLAGS(PY_CFLAGS)
49   GET_MUSSA_LINK_FLAGS(PY_LDFLAGS)
50   SET_SOURCE_FILES_PROPERTIES(
51     ${SOURCES}
52     PROPERTIES
53     COMPILE_FLAGS "${PY_CFLAGS}"
54   )
55   SET_TARGET_PROPERTIES(
56     mussa mussa_py PROPERTIES
57     COMPILE_FLAGS "${PY_CFLAGS}"
58     LINK_FLAGS "${PY_LDFLAGS}"
59   )
60
61   IF(PYTHON_EXECUTABLE)
62     SET(PYTEST_DIR ${CMAKE_SOURCE_DIR}/py/test/)
63     ADD_TEST(TestSequence ${PYTHON_EXECUTABLE} ${PYTEST_DIR}/TestSequence.py)
64     ADD_TEST(TestFlp ${PYTHON_EXECUTABLE} ${PYTEST_DIR}/TestFlp.py)
65     ADD_TEST(TestMussa ${PYTHON_EXECUTABLE} ${PYTEST_DIR}/TestMussa.py)
66   ENDIF(PYTHON_EXECUTABLE)
67 ELSE(BOOST_PYTHON_LIBRARY)
68 ENDIF(BOOST_PYTHON_LIBRARY)
69
70 ADD_SUBDIRECTORY(test)