basic wrapping of Annotations
[mussa.git] / py / CMakeLists.txt
index a2466f9f7894226d6b532d8b3eff8261dd0a09f3..c47574269e1146e36ec338ca83fb522e9b345526 100644 (file)
@@ -2,7 +2,7 @@ FIND_PACKAGE(Boost)
 FIND_PACKAGE(OpenGL)
 FIND_PACKAGE(PythonLibs)
 FIND_PACKAGE(PythonInterp)
-SET(QT_DONT_USE_QTGUI 1)
+SET(QT_DONT_USE_QTGUI 1)
 FIND_PACKAGE(Qt4)
 INCLUDE( ${QT_USE_FILE} )
 
@@ -10,20 +10,27 @@ 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 
         flp.cpp
         glsequence.cpp
         module.cpp 
         mussa.cpp
-        # MussaWindow.cpp
         nway_paths.cpp
+        seq_span.cpp
         sequence.cpp
         )
   SET(QUI_SOURCES
     module_qui.cpp
-    MussaWindow.cpp
+    qt.cpp
+    sequence.cpp
+    glsequence.cpp
+    annotation_colors.cpp
+    sequencebrowserwidget.cpp
   )                        
   SET(MUSSA_LIBRARIES
         mussa_core
@@ -31,40 +38,50 @@ IF(BOOST_PYTHON_LIBRARY)
         ${BOOST_FILESYSTEM_LIBRARY}
         ${BOOST_SERIALIZATION_LIBRARY}
         ${OPENGL_gl_LIBRARY}
-        ${PYTHON_LIBRARIES}
-        optimized ${QT_QTCORE_LIBRARY} 
+        optimized ${QT_QTCORE_LIBRARY_RELEASE}
         debug ${QT_QTCORE_LIBRARY_DEBUG}
      )        
-  SET(STATIC_PYTHON_TARGETS "")
-  SET(SHARED_PYTHON_TARGETS "")
-  
+  GET_MUSSA_COMPILE_FLAGS(PY_CFLAGS)
+  GET_MUSSA_LINK_FLAGS(PY_LDFLAGS)
+
+       # configure static core python library  
   ADD_LIBRARY(mussa_py STATIC ${SOURCES})
-  SET(${STATIC_PYTHON_TARGETS} "${${STATIC_PYTHON_TARGETS}} mussa_py")
+  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(${SHARED_PYTHON_TARGETS} "${${SHARED_PYTHON_TARGETS}} mussa")
+  SET_TARGET_PROPERTIES(mussa PROPERTIES 
+                        PREFIX ""
+                        COMPILE_FLAGS "${PY_CFLAGS}"
+                        LINK_FLAGS "${PY_LDFLAGS}")
   TARGET_LINK_LIBRARIES(mussa
                         ${MUSSA_LIBRARIES}
+                        ${PYTHON_LIBRARIES}
                         )
-  ADD_LIBRARY(mussaqui_py STATIC ${QUI_SOURCES})
-  SET(${STATIC_PYTHON_TARGETS} "${${STATIC_PYTHON_TARGETS}} mussaqui_py")  
-  # ADD_LIBRARY(mussaqui MODULE ${QUI_SOURCES})
-  # SET(${SHARED_PYTHON_TARGETS} "${${SHARED_PYTHON_TARGETS}} mussaqui")
-  #TARGET_LINK_LIBRARIES(mussaqui
-  #                      mussa_qui
-  #                      ${MUSSA_LIBRARIES}
-  #                      optimized ${QT_QTGUI_LIBRARY}
-  #                      debug ${QT_QTGUI_LIBRARY_DEBUG}
-  #                      optimized ${QT_QTOPENGL_LIBRARY}
-  #                      debug ${QT_QTOPENGL_LIBRARY_DEBUG}
-  #                     )
-  
-  # don't put the "lib" prefix infront of our shared modules                       
-  SET_TARGET_PROPERTIES(${SHARED_PYTHON_TARGETS}
-                        PROPERTIES
-                        PREFIX ""
+  # 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}
+                        optimized ${QT_QTGUI_LIBRARY}
+                        debug ${QT_QTGUI_LIBRARY_DEBUG}
+                        optimized ${QT_QTOPENGL_LIBRARY}
+                        debug ${QT_QTOPENGL_LIBRARY_DEBUG}
                        )
-  GET_MUSSA_COMPILE_FLAGS(PY_CFLAGS)
-  GET_MUSSA_LINK_FLAGS(PY_LDFLAGS)
+  
   SET_SOURCE_FILES_PROPERTIES(
     ${SOURCES}
     ${QUI_SOURCES}
@@ -80,6 +97,9 @@ IF(BOOST_PYTHON_LIBRARY)
 
   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)