]> sigrok.org Git - pulseview.git/blobdiff - CMakeLists.txt
Added InputOutput binding
[pulseview.git] / CMakeLists.txt
index 49358505fe81dd4891a0fc0c4777cb8b9ca89201..99314d05e8213fc9bb1e95c92fa568836169b37c 100644 (file)
@@ -34,7 +34,6 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/CMake")
 option(DISABLE_WERROR "Build without -Werror" FALSE)
 option(ENABLE_SIGNALS "Build with UNIX signals" TRUE)
 option(ENABLE_DECODE "Build with libsigrokdecode" TRUE)
-option(ENABLE_COTIRE "Enable cotire" FALSE)
 option(ENABLE_TESTS "Enable unit tests" FALSE)
 option(STATIC_PKGDEPS_LIBS "Statically link to (pkg-config) libraries" FALSE)
 option(FORCE_QT4 "Force use of Qt4 even if Qt5 is available" FALSE)
@@ -48,6 +47,10 @@ if(WIN32)
        set(Boost_USE_STATIC_LIBS ON)
        add_definitions(-DBOOST_THREAD_USE_LIB)
 
+       # On Windows/MinGW we need to use 'thread_win32' instead of 'thread'.
+       # The library is named libboost_thread_win32* (not libboost_thread*).
+       set(Boost_THREADAPI win32)
+
        # Windows does not support UNIX signals.
        set(ENABLE_SIGNALS FALSE)
 endif()
@@ -62,7 +65,7 @@ endif()
 #= Dependencies
 #-------------------------------------------------------------------------------
 
-list(APPEND PKGDEPS libsigrokxx>=0.3.0)
+list(APPEND PKGDEPS libsigrokcxx>=0.3.0)
 
 if(ENABLE_DECODE)
        list(APPEND PKGDEPS libsigrokdecode>=0.3.0)
@@ -95,10 +98,8 @@ else()
        find_package(Qt4 REQUIRED QtCore QtGui QtSvg)
 endif()
 
-if(WIN32)
-       # On Windows/MinGW we need to use 'thread_win32' instead of 'thread'.
-       # The library is named libboost_thread_win32* (not libboost_thread*).
-       find_package(Boost 1.42 COMPONENTS filesystem system thread_win32 REQUIRED)
+if(ENABLE_TESTS)
+       find_package(Boost 1.42 COMPONENTS filesystem system thread unit_test_framework REQUIRED)
 else()
        find_package(Boost 1.42 COMPONENTS filesystem system thread REQUIRED)
 endif()
@@ -142,15 +143,18 @@ set(pulseview_SOURCES
        pv/application.cpp
        pv/devicemanager.cpp
        pv/mainwindow.cpp
-       pv/sigsession.cpp
+       pv/session.cpp
        pv/storesession.cpp
        pv/util.cpp
+       pv/binding/binding.cpp
+       pv/binding/inputoutput.cpp
+       pv/binding/device.cpp
        pv/data/analog.cpp
-       pv/data/analogsnapshot.cpp
+       pv/data/analogsegment.cpp
        pv/data/logic.cpp
-       pv/data/logicsnapshot.cpp
+       pv/data/logicsegment.cpp
        pv/data/signaldata.cpp
-       pv/data/snapshot.cpp
+       pv/data/segment.cpp
        pv/dialogs/about.cpp
        pv/dialogs/connect.cpp
        pv/dialogs/storeprogress.cpp
@@ -162,29 +166,33 @@ set(pulseview_SOURCES
        pv/prop/int.cpp
        pv/prop/property.cpp
        pv/prop/string.cpp
-       pv/prop/binding/binding.cpp
-       pv/prop/binding/deviceoptions.cpp
-       pv/toolbars/samplingbar.cpp
+       pv/toolbars/mainbar.cpp
        pv/view/analogsignal.cpp
        pv/view/cursor.cpp
-       pv/view/cursorheader.cpp
        pv/view/cursorpair.cpp
+       pv/view/flag.cpp
        pv/view/header.cpp
        pv/view/marginwidget.cpp
        pv/view/logicsignal.cpp
        pv/view/rowitem.cpp
        pv/view/rowitemowner.cpp
        pv/view/ruler.cpp
-       pv/view/selectableitem.cpp
        pv/view/signal.cpp
+       pv/view/timeitem.cpp
        pv/view/timemarker.cpp
        pv/view/trace.cpp
        pv/view/tracegroup.cpp
        pv/view/tracepalette.cpp
        pv/view/view.cpp
+       pv/view/viewitem.cpp
+       pv/view/viewitempaintparams.cpp
        pv/view/viewport.cpp
+       pv/view/viewwidget.cpp
        pv/widgets/colourbutton.cpp
        pv/widgets/colourpopup.cpp
+       pv/widgets/devicetoolbutton.cpp
+       pv/widgets/exportmenu.cpp
+       pv/widgets/hidingmenubar.cpp
        pv/widgets/popup.cpp
        pv/widgets/popuptoolbutton.cpp
        pv/widgets/sweeptimingwidget.cpp
@@ -194,8 +202,9 @@ set(pulseview_SOURCES
 # This list includes only QObject derived class headers.
 set(pulseview_HEADERS
        pv/mainwindow.hpp
-       pv/sigsession.hpp
+       pv/session.hpp
        pv/storesession.hpp
+       pv/binding/device.hpp
        pv/dialogs/about.hpp
        pv/dialogs/connect.hpp
        pv/dialogs/storeprogress.hpp
@@ -207,24 +216,28 @@ set(pulseview_HEADERS
        pv/prop/int.hpp
        pv/prop/property.hpp
        pv/prop/string.hpp
-       pv/prop/binding/deviceoptions.hpp
-       pv/toolbars/samplingbar.hpp
+       pv/toolbars/mainbar.hpp
        pv/view/cursor.hpp
-       pv/view/cursorheader.hpp
+       pv/view/flag.hpp
        pv/view/header.hpp
        pv/view/logicsignal.hpp
        pv/view/marginwidget.hpp
        pv/view/rowitem.hpp
        pv/view/ruler.hpp
-       pv/view/selectableitem.hpp
        pv/view/signal.hpp
+       pv/view/timeitem.hpp
        pv/view/timemarker.hpp
        pv/view/trace.hpp
        pv/view/tracegroup.hpp
        pv/view/view.hpp
+       pv/view/viewitem.hpp
        pv/view/viewport.hpp
+       pv/view/viewwidget.hpp
        pv/widgets/colourbutton.hpp
        pv/widgets/colourpopup.hpp
+       pv/widgets/devicetoolbutton.hpp
+       pv/widgets/exportmenu.hpp
+       pv/widgets/hidingmenubar.hpp
        pv/widgets/popup.hpp
        pv/widgets/popuptoolbutton.hpp
        pv/widgets/sweeptimingwidget.hpp
@@ -246,12 +259,12 @@ endif()
 
 if(ENABLE_DECODE)
        list(APPEND pulseview_SOURCES
+               pv/binding/decoder.cpp
                pv/data/decoderstack.cpp
                pv/data/decode/annotation.cpp
                pv/data/decode/decoder.cpp
                pv/data/decode/row.cpp
                pv/data/decode/rowdata.cpp
-               pv/prop/binding/decoderoptions.cpp
                pv/view/decodetrace.cpp
                pv/widgets/decodergroupbox.cpp
                pv/widgets/decodermenu.cpp
@@ -385,11 +398,6 @@ if(WIN32)
        set_target_properties(${PROJECT_NAME} PROPERTIES LINK_FLAGS "-mwindows")
 endif()
 
-if(ENABLE_COTIRE)
-       include(cotire)
-       cotire(${PROJECT_NAME})
-endif()
-
 #===============================================================================
 #= Installation
 #-------------------------------------------------------------------------------