Enable Qt4 tests
[mussa.git] / qui / CMakeLists.txt
1 #deal with some debian wierdness
2 FIND_PROGRAM(QT_QMAKE_EXECUTABLE qmake-qt4 )
3 FIND_PROGRAM(QT_MOC_EXECUTABLE moc-qt4 )
4
5 FIND_PACKAGE(Qt4)
6 SET(QT_USE_QTOPENGL 1)
7 IF(QT_QTASSISTANT_FOUND)
8   SET(QT_USE_QTNETWORK 1)
9   SET(QT_USE_QTASSISTANT 1)
10 ENDIF(QT_QTASSISTANT_FOUND)
11 INCLUDE( ${QT_USE_FILE} )
12 FIND_PACKAGE(OpenGL)
13 FIND_PACKAGE(Boost)
14 FIND_PACKAGE(PythonLibs)
15
16 INCLUDE( Platform )
17
18 SET(MOC_HEADERS
19       ImageSaveDialog.hpp     
20       ImageScaler.hpp         
21       IntAction.hpp           
22       MussaAlignedWindow.hpp  
23       MussaWindow.hpp
24       SequenceLocationModel.hpp
25       SubanalysisWindow.hpp
26       ThresholdWidget.hpp
27       ZoomWidget.hpp
28       motif_editor/MotifModel.hpp
29       motif_editor/MotifEditor.hpp
30       motif_editor/MotifEditorDelegate.hpp
31       mussa_setup_dialog/IsFileValidator.hpp
32       mussa_setup_dialog/MussaSetupDialog.hpp
33       mussa_setup_dialog/MussaSetupWidget.hpp
34       mussa_setup_dialog/SequenceSetupFrame.hpp
35       mussa_setup_dialog/SequenceSetupWidget.hpp
36       seqbrowser/ScrollableSequenceBrowser.hpp
37       seqbrowser/SequenceBrowser.hpp
38       seqbrowser/SequenceBrowserSidebar.hpp
39       seqbrowser/SequenceBrowserWidget.hpp
40       seqbrowser/SequenceDescription.hpp
41     )
42 SET(GUI_SOURCES 
43       ImageSaveDialog.cpp      
44       ImageScaler.cpp          
45       IntAction.cpp            
46       MussaAlignedWindow.cpp
47       MussaWindow.cpp
48       SequenceLocationModel.cpp
49       SubanalysisWindow.cpp
50       ThresholdWidget.cpp
51       ZoomWidget.cpp
52       motif_editor/MotifEditor.cpp
53       motif_editor/MotifEditorDelegate.cpp
54       motif_editor/MotifElement.cpp
55       motif_editor/MotifModel.cpp
56       mussa_setup_dialog/IsFileValidator.cpp
57       mussa_setup_dialog/MussaSetupDialog.cpp
58       mussa_setup_dialog/MussaSetupWidget.cpp
59       mussa_setup_dialog/SequenceSetupFrame.cpp
60       mussa_setup_dialog/SequenceSetupWidget.cpp
61       mussa_setup_dialog/SetupInfo.cpp
62       seqbrowser/ScrollableSequenceBrowser.cpp
63       seqbrowser/SequenceBrowser.cpp
64       seqbrowser/SequenceBrowserSidebar.cpp
65       seqbrowser/SequenceBrowserWidget.cpp
66       seqbrowser/SequenceDescription.cpp
67      )
68 SET(PY_SOURCES ../py/python.cpp)
69 SET(RCCS ../icons.qrc)
70
71 QT4_ADD_RESOURCES(RCC_SOURCES ${RCCS})
72 QT4_WRAP_CPP(MOC_SOURCES ${MOC_HEADERS})
73 SET(SOURCES  ${MOC_SOURCES} ${GUI_SOURCES} ${RCC_SOURCES} ${PY_SOURCES})
74
75 GET_MUSSA_COMPILE_FLAGS(QUI_CFLAGS)
76 GET_MUSSA_LINK_FLAGS(QUI_LDFLAGS)
77
78 INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH} 
79                     ${QT_INCLUDES}
80                     ${BOOST_INCLUDE_DIR} )
81
82 ADD_LIBRARY(mussa_qui STATIC ${SOURCES})
83
84 # currently QTASSISTANT is only properly installed under windows
85 IF(QT_QTASSISTANT_FOUND AND WIN32)
86   SET(QUI_CFLAGS "${QUI_CFLAGS} -DQT_QTASSISTANT_FOUND")
87 ENDIF(QT_QTASSISTANT_FOUND AND WIN32)
88
89 SET_SOURCE_FILES_PROPERTIES(
90   ${SOURCES}
91   PROPERTIES
92   COMPILE_FLAGS "${QUI_CFLAGS}"
93 )
94 SET_TARGET_PROPERTIES(
95   mussa_qui PROPERTIES
96   COMPILE_FLAGS "${QUI_CFLAGS}"
97   LINK_FLAGS "${QUI_LDFLAGS}"
98 )
99
100
101 ADD_SUBDIRECTORY( test )