- Fix VERSION.
- Make plugins dependent upon cairo optional.
- Add logic so slave ports can build without installing base files or plugins.

--- CMakeLists.txt.orig	2024-06-07 09:00:56 UTC
+++ CMakeLists.txt
@@ -3,16 +3,21 @@ project (frei0r)
 list (APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules)
 
 project (frei0r)
-set (VERSION 1.8)
+set (VERSION 2.3)
 
 include(GNUInstallDirs)
 
+option (BUILD_EXTRA_PLUGINS "Build plugins with optional dependencies" ON)
+
 option (WITHOUT_OPENCV "Disable plugins dependent upon OpenCV" OFF)
 if (NOT WITHOUT_OPENCV)
   find_package (OpenCV)
 endif ()
 
-find_package (Cairo)
+option (WITHOUT_CAIRO "Disable plugins dependent upon cairo" OFF)
+if (NOT WITHOUT_CAIRO)
+  find_package (Cairo)
+endif ()
 
 include(FindPkgConfig)
 option (WITHOUT_GAVL "Disable plugins dependent upon gavl" OFF)
@@ -35,18 +40,25 @@ INCLUDE( cmake/modules/TargetDistclean.cmake OPTIONAL)
 # --- custom targets: ---
 INCLUDE( cmake/modules/TargetDistclean.cmake OPTIONAL)
 
-# See this thread for a ridiculous discussion about the simple question how to install a header file with CMake: http://www.cmake.org/pipermail/cmake/2009-October/032874.html
-install (DIRECTORY include DESTINATION . FILES_MATCHING PATTERN "frei0r.h" PATTERN "msvc" EXCLUDE)
+if (NOT BUILD_EXTRA_PLUGINS)
+  # See this thread for a ridiculous discussion about the simple question how to install a header file with CMake: http://www.cmake.org/pipermail/cmake/2009-October/032874.html
+  install (DIRECTORY include DESTINATION . FILES_MATCHING PATTERN "frei0r.h" PATTERN "msvc" EXCLUDE)
 
 # For code documentation run: doxygen doc/Doxyfile
 # add_subdirectory (doc)
 
-add_subdirectory (src)
+  add_subdirectory (src)
+else()
+  add_subdirectory (src/filter)
+  add_subdirectory (src/mixer2)
+endif()
 
 # Generate frei0r.pc and install it.
 set (prefix "${CMAKE_INSTALL_PREFIX}")
 set (exec_prefix "${CMAKE_INSTALL_PREFIX}")
 set (libdir "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")
 set (includedir "${CMAKE_INSTALL_PREFIX}/include")
-configure_file ("frei0r.pc.in" "frei0r.pc" @ONLY)
-install (FILES "${CMAKE_CURRENT_BINARY_DIR}/frei0r.pc" DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
+if (NOT BUILD_EXTRA_PLUGINS)
+  configure_file ("frei0r.pc.in" "frei0r.pc" @ONLY)
+  install (FILES "${CMAKE_CURRENT_BINARY_DIR}/frei0r.pc" DESTINATION "libdata/pkgconfig")
+endif ()
