don't like QTOPENGL to python module
[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         glsequence.cpp
17         module.cpp 
18         mussa.cpp
19         # MussaWindow.cpp
20         nway_paths.cpp
21         sequence.cpp
22         )
23   
24   ADD_LIBRARY(mussa MODULE ${SOURCES})
25   ADD_LIBRARY(mussa_py STATIC ${SOURCES})
26   # Any suggestions for a more elegant solution to this? -diane
27   IF(WIN32)
28     ADD_CUSTOM_TARGET(mussa.dll ALL
29                       COMMAND copy libmussa.dll mussa.dll
30                       DEPENDS mussa)
31   ELSE(WIN32)
32     # Not win32, aka linux and mac
33     ADD_CUSTOM_TARGET(mussa.so ALL
34                       COMMAND cp libmussa.so mussa.so
35                       DEPENDS mussa)
36   ENDIF(WIN32)
37   LINK_DIRECTORIES(${CMAKE_BINARY_DIR}/alg)
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
49   GET_MUSSA_COMPILE_FLAGS(PY_CFLAGS)
50   GET_MUSSA_LINK_FLAGS(PY_LDFLAGS)
51   SET_SOURCE_FILES_PROPERTIES(
52     ${SOURCES}
53     PROPERTIES
54     COMPILE_FLAGS "${PY_CFLAGS}"
55   )
56   SET_TARGET_PROPERTIES(
57     mussa mussa_py PROPERTIES
58     COMPILE_FLAGS "${PY_CFLAGS}"
59     LINK_FLAGS "${PY_LDFLAGS}"
60   )
61
62   IF(PYTHON_EXECUTABLE)
63     SET(PYTHON_TEST_DIR ${CMAKE_SOURCE_DIR}/py/test/)
64     ADD_TEST(sequence_py 
65              ${PYTHON_EXECUTABLE} ${PYTHON_TEST_DIR}/TestSequence.py)
66   ENDIF(PYTHON_EXECUTABLE)
67 ELSE(BOOST_PYTHON_LIBRARY)
68 ENDIF(BOOST_PYTHON_LIBRARY)
69
70 ADD_SUBDIRECTORY(test)