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)
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()
#= 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)
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()
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/inputoutputoptions.cpp
pv/dialogs/storeprogress.cpp
pv/popups/deviceoptions.cpp
pv/popups/channels.cpp
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
# 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/inputoutputoptions.hpp
pv/dialogs/storeprogress.hpp
pv/popups/channels.hpp
pv/popups/deviceoptions.hpp
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
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
qt5_wrap_ui(pulseview_FORMS_HEADERS ${pulseview_FORMS})
qt5_add_resources(pulseview_RESOURCES_RCC ${pulseview_RESOURCES})
else()
- qt4_wrap_cpp(pulseview_HEADERS_MOC ${pulseview_HEADERS})
+ # Workaroud for QTBUG-22829: -DBOOST_NEXT_PRIOR_HPP_INCLUDED.
+ # https://bugreports.qt.io/browse/QTBUG-22829
+ qt4_wrap_cpp(pulseview_HEADERS_MOC ${pulseview_HEADERS}
+ OPTIONS -DBOOST_NEXT_PRIOR_HPP_INCLUDED)
qt4_wrap_ui(pulseview_FORMS_HEADERS ${pulseview_FORMS})
qt4_add_resources(pulseview_RESOURCES_RCC ${pulseview_RESOURCES})
include(${QT_USE_FILE})
set_target_properties(${PROJECT_NAME} PROPERTIES LINK_FLAGS "-mwindows")
endif()
-if(ENABLE_COTIRE)
- include(cotire)
- cotire(${PROJECT_NAME})
-endif()
-
#===============================================================================
#= Installation
#-------------------------------------------------------------------------------