Rename ENABLE_GSTREAMERMM to ENABLE_FLOW.
[pulseview.git] / CMakeLists.txt
index 050e8a351a1f19b30d54b9c24ba3613d11ae1677..47dc03b86a142b15bc20b5f11c80adc0637886d8 100644 (file)
@@ -40,10 +40,11 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/CMake")
 #= User Options
 #-------------------------------------------------------------------------------
 
-option(DISABLE_WERROR "Build without -Werror" FALSE)
+option(DISABLE_WERROR "Build without -Werror" TRUE)
 option(ENABLE_SIGNALS "Build with UNIX signals" TRUE)
 option(ENABLE_STACKTRACE "Enable stack trace when crashing" FALSE)
 option(ENABLE_DECODE "Build with libsigrokdecode" TRUE)
+option(ENABLE_FLOW "Build with libsigrokflow" TRUE)
 option(ENABLE_TESTS "Enable unit tests" FALSE)
 option(STATIC_PKGDEPS_LIBS "Statically link to (pkg-config) libraries" FALSE)
 
@@ -62,6 +63,12 @@ if(NOT CMAKE_BUILD_TYPE)
        FORCE)
 endif()
 
+#===============================================================================
+#= Documentation
+#-------------------------------------------------------------------------------
+
+add_subdirectory(manual)
+
 #===============================================================================
 #= Dependencies
 #-------------------------------------------------------------------------------
@@ -69,11 +76,16 @@ endif()
 list(APPEND PKGDEPS glib-2.0>=2.28.0)
 list(APPEND PKGDEPS glibmm-2.4>=2.28.0)
 
-set(LIBSR_CXX_BINDING "libsigrokcxx>=0.6.0")
+if(ENABLE_FLOW)
+       list(APPEND PKGDEPS gstreamermm-1.0>=1.8.0)
+       list(APPEND PKGDEPS libsigrokflow>=0.1.0)
+endif()
+
+set(LIBSR_CXX_BINDING "libsigrokcxx>=0.5.1")
 list(APPEND PKGDEPS "${LIBSR_CXX_BINDING}")
 
 if(ENABLE_DECODE)
-       list(APPEND PKGDEPS libsigrokdecode>=0.6.0)
+       list(APPEND PKGDEPS libsigrokdecode>=0.5.2)
 endif()
 
 if(ANDROID)
@@ -81,7 +93,7 @@ if(ANDROID)
 endif()
 
 find_package(PkgConfig)
-pkg_check_modules(LIBSRCXX QUIET ${LIBSR_CXX_BINDING})
+pkg_check_modules(LIBSRCXX ${LIBSR_CXX_BINDING})
 if(NOT LIBSRCXX_FOUND OR NOT LIBSRCXX_VERSION)
        message(FATAL_ERROR "libsigrok C++ bindings missing, check libsigrok's 'configure' output (missing dependencies?)")
 endif()
@@ -191,6 +203,12 @@ if(NOT PV_TAG_VERSION_STRING)
                string(SUBSTRING "${PV_HASH}" 0 7 PV_SHORTHASH)
                set(PV_VERSION_STRING "${PV_VERSION_STRING}-git-${PV_SHORTHASH}")
        endif()
+
+       # Non-tagged releases use the unstable manual
+       set(PV_MANUAL_VERSION "unstable")
+else()
+       # Tagged releases use a fixed manual version
+       set(PV_MANUAL_VERSION ${PV_VERSION_STRING})
 endif()
 
 if(PV_VERSION_STRING MATCHES "^([0-9]+)\\.([0-9]+)\\.([0-9]+)(-[-0-9a-z]*)?$")
@@ -402,6 +420,10 @@ add_definitions(-Wall -Wextra)
 add_definitions(-std=c++11)
 add_definitions(-DBOOST_MATH_DISABLE_FLOAT128=1)
 
+if(ENABLE_FLOW)
+       add_definitions(-DENABLE_FLOW)
+endif()
+
 if(ENABLE_DECODE)
        add_definitions(-DENABLE_DECODE)
 endif()