dotfiles/packages/scopehal-apps/only_libsigrok.patch
2024-11-07 16:25:41 -07:00

265 lines
9.3 KiB
Diff

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2c7e1c4..ef35300 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -21,24 +21,7 @@
cmake_minimum_required(VERSION 2.8.6)
-project(DSView)
-
-#===============================================================================
-#= Config Header
-#-------------------------------------------------------------------------------
-
-set(DS_TITLE DSView)
-set(DS_DESCRIPTION "A GUI for instruments of DreamSourceLab")
-
-set(DS_VERSION_MAJOR 1)
-set(DS_VERSION_MINOR 2)
-set(DS_VERSION_MICRO 2)
-set(DS_VERSION_STRING ${DS_VERSION_MAJOR}.${DS_VERSION_MINOR}.${DS_VERSION_MICRO} )
-
-configure_file (
- ${PROJECT_SOURCE_DIR}/DSView/config.h.in
- ${PROJECT_BINARY_DIR}/DSView/config.h
-)
+project(sigrok4DSL)
#===============================================================================
#=pkg config
@@ -83,7 +66,6 @@ endif()
#= first search path
#-------------------------------------------------------------------------------
include_directories(
- ./DSView
./libsigrok4DSL
./libsigrokdecode4DSL
./common
@@ -95,55 +77,15 @@ include_directories(
pkg_search_module(GLIB glib-2.0)
if(NOT GLIB_FOUND)
- message(FATAL_ERROR "Please install glib!")
+ message(FATAL_ERROR "Please install glib!")
endif()
message("----- glib-2.0:")
-message(STATUS " includes:" ${GLIB_INCLUDE_DIRS})
-message(STATUS " libraries:" ${GLIB_LIBDIR}/libglib-2.0.*)
+message(STATUS " includes:" ${GLIB_INCLUDE_DIRS})
+message(STATUS " libraries:" ${GLIB_LIBDIR}/libglib-2.0.*)
include_directories(${GLIB_INCLUDE_DIRS})
link_directories(${GLIB_LIBDIR})
-#===============================================================================
-#= python3
-#-------------------------------------------------------------------------------
-
-find_package(Python3 COMPONENTS Development QUIET)
-
-if (Python3_FOUND)
- message("----- python3:")
- message(STATUS " includes:" ${Python3_INCLUDE_DIRS})
- message(STATUS " libraries:" ${Python3_LIBRARIES})
- include_directories(${Python3_INCLUDE_DIRS})
- set(PY_LIB ${Python3_LIBRARIES})
-else()
- find_package(PythonLibs 3 QUIET)
-
- if(PYTHONLIBS_FOUND)
- message("----- python(${PYTHONLIBS_VERSION_STRING}):")
- message(STATUS " includes:" ${PYTHON_INCLUDE_DIRS})
- message(STATUS " libraries:" ${PYTHON_LIBRARIES})
- include_directories(${PYTHON_INCLUDE_DIRS})
- set(PY_LIB ${PYTHON_LIBRARIES})
- else()
- message(FATAL_ERROR "Please install lib python3!")
- endif()
-endif()
-
-#===============================================================================
-#= FFTW
-#-------------------------------------------------------------------------------
-find_package(FFTW)
-
-if(NOT FFTW_FOUND)
- message(FATAL_ERROR "Please install lib fftw!")
-endif()
-
-message("----- FFTW:")
-message(STATUS " includes:" ${FFTW_INCLUDE_DIRS})
-message(STATUS " libraries:" ${FFTW_LIBRARIES})
-include_directories(${FFTW_INCLUDE_DIRS})
-
#===============================================================================
#= libusb-1.0
#-------------------------------------------------------------------------------
@@ -158,72 +100,6 @@ message(STATUS " includes:" ${LIBUSB_1_INCLUDE_DIRS})
message(STATUS " libraries:" ${LIBUSB_1_LIBRARIES})
include_directories(${LIBUSB_1_INCLUDE_DIRS})
-#===============================================================================
-#= zlib
-#-------------------------------------------------------------------------------
-find_package(ZLIB QUIET)
-
-if(NOT ZLIB_FOUND)
- message(FATAL_ERROR "Please install zlib!")
-endif()
-
-message("----- zlib:")
-message(STATUS " includes:" ${ZLIB_INCLUDE_DIRS})
-message(STATUS " libraries:" ${ZLIB_LIBRARIES})
-include_directories(${ZLIB_INCLUDE_DIRS})
-
-#===============================================================================
-#= Qt5 or Qt6
-#-------------------------------------------------------------------------------
-
-find_package(Qt5Core QUIET)
-
-if(Qt5Core_FOUND)
- message("----- Qt5:")
- message(STATUS " includes:" ${Qt5Core_INCLUDE_DIRS})
- find_package(Qt5Widgets REQUIRED)
- find_package(Qt5Gui REQUIRED)
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${Qt5Widgets_EXECUTABLE_COMPILE_FLAGS}")
- set(QT_INCLUDE_DIRS ${Qt5Gui_INCLUDE_DIRS} ${Qt5Widgets_INCLUDE_DIRS})
- set(QT_LIBRARIES Qt5::Gui Qt5::Widgets)
- add_definitions(${Qt5Gui_DEFINITIONS} ${Qt5Widgets_DEFINITIONS})
-else()
- find_package(Qt6Core QUIET)
-endif()
-
-if(Qt6Core_FOUND)
- message("----- Qt6:")
- message(STATUS " includes:" ${Qt6Core_INCLUDE_DIRS})
- find_package(Qt6Widgets REQUIRED)
- find_package(Qt6Gui REQUIRED)
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${Qt6Widgets_EXECUTABLE_COMPILE_FLAGS}")
- set(QT_INCLUDE_DIRS ${Qt6Gui_INCLUDE_DIRS} ${Qt6Widgets_INCLUDE_DIRS})
- set(QT_LIBRARIES Qt6::Gui Qt6::Widgets)
- add_definitions(${Qt6Gui_DEFINITIONS} ${Qt6Widgets_DEFINITIONS})
-endif()
-
-if(NOT Qt5Core_FOUND AND NOT Qt6Core_FOUND)
- message(FATAL_ERROR "Please install Qt5 or Qt6!")
-endif()
-
-#===============================================================================
-#= boost
-#-------------------------------------------------------------------------------
-find_package(Boost 1.42 QUIET)
-
-if(NOT Boost_FOUND)
- message(FATAL_ERROR "Please install boost!")
-endif()
-
-message("----- boost:")
-message(STATUS " includes:" ${Boost_INCLUDE_DIRS})
-include_directories(${Boost_INCLUDE_DIRS})
-
-#===============================================================================
-#= Dependencies
-#-------------------------------------------------------------------------------
-
-find_package(Threads)
#===============================================================================
#= DSView sources
@@ -625,86 +501,23 @@ else()
list(APPEND DSVIEW_LINK_LIBS ${PKGDEPS_LIBRARIES})
endif()
-add_executable(${PROJECT_NAME}
- ${common_SOURCES}
- ${DSView_SOURCES}
- ${DSView_HEADERS_MOC}
- ${DSView_FORMS_HEADERS}
- ${DSView_RESOURCES_RCC}
+add_library(${PROJECT_NAME} SHARED
${libsigrok4DSL_SOURCES}
- ${libsigrokdecode4DSL_SOURCES}
+ ${common_SOURCES}
)
target_link_libraries(${PROJECT_NAME} ${DSVIEW_LINK_LIBS})
-if(WIN32)
-# Pass -mwindows so that no "DOS box" will open when PulseView is started.
-set_target_properties(${PROJECT_NAME} PROPERTIES LINK_FLAGS "-mwindows")
-endif()
-
-if(ENABLE_COTIRE)
- include(cotire)
- cotire(${PROJECT_NAME})
-endif()
+set_target_properties(${PROJECT_NAME} PROPERTIES PUBLIC_HEADER "libsigrok4DSL/libsigrok.h;libsigrok4DSL/proto.h;libsigrok4DSL/version.h;common/log/xlog.h")
message(STATUS "Output dir: ${CMAKE_CURRENT_SOURCE_DIR}/build.dir")
-set(EXECUTABLE_OUTPUT_PATH "${CMAKE_CURRENT_SOURCE_DIR}/build.dir")
#===============================================================================
#= Installation
#-------------------------------------------------------------------------------
-# Install the executable.
-install(TARGETS ${PROJECT_NAME} DESTINATION bin)
-install(DIRECTORY DSView/res DESTINATION share/DSView)
-install(FILES DSView/icons/logo.svg DESTINATION share/DSView RENAME logo.svg)
-install(FILES DSView/icons/logo.svg DESTINATION share/icons/hicolor/scalable/apps RENAME dsview.svg)
-install(FILES DSView/icons/logo.svg DESTINATION share/pixmaps RENAME dsview.svg)
-
-if(CMAKE_SYSTEM_NAME MATCHES "Linux")
- install(FILES DSView/DSView.desktop DESTINATION /usr/share/applications RENAME dsview.desktop)
-
- if(IS_DIRECTORY /usr/lib/udev/rules.d)
- install(FILES DSView/DreamSourceLab.rules DESTINATION /usr/lib/udev/rules.d RENAME 60-dreamsourcelab.rules)
- elseif(IS_DIRECTORY /lib/udev/rules.d)
- install(FILES DSView/DreamSourceLab.rules DESTINATION /lib/udev/rules.d RENAME 60-dreamsourcelab.rules)
- elseif(IS_DIRECTORY /etc/udev/rules.d)
- install(FILES DSView/DreamSourceLab.rules DESTINATION /etc/udev/rules.d RENAME 60-dreamsourcelab.rules)
- endif()
-
-endif()
-
-install(FILES NEWS25 DESTINATION share/DSView RENAME NEWS25)
-install(FILES NEWS31 DESTINATION share/DSView RENAME NEWS31)
-install(FILES ug25.pdf DESTINATION share/DSView RENAME ug25.pdf)
-install(FILES ug31.pdf DESTINATION share/DSView RENAME ug31.pdf)
-
-install(DIRECTORY libsigrokdecode4DSL/decoders DESTINATION share/libsigrokdecode4DSL)
-
-#===============================================================================
-#= Packaging (handled by CPack)
-#-------------------------------------------------------------------------------
-
-set(CPACK_PACKAGE_VERSION_MAJOR ${DS_VERSION_MAJOR})
-set(CPACK_PACKAGE_VERSION_MINOR ${DS_VERSION_MINOR})
-set(CPACK_PACKAGE_VERSION_PATCH ${DS_VERSION_MICRO})
-set(CPACK_PACKAGE_DESCRIPTION_FILE ${CMAKE_CURRENT_SOURCE_DIR}/DSView/README)
-set(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_CURRENT_SOURCE_DIR}/DSView/COPYING)
-set(CPACK_SOURCE_IGNORE_FILES ${CMAKE_CURRENT_BINARY_DIR} ".gitignore" ".git")
-set(CPACK_SOURCE_PACKAGE_FILE_NAME
- "${CMAKE_PROJECT_NAME}-${DS_VERSION_MAJOR}.${DS_VERSION_MINOR}.${DS_VERSION_MICRO}")
-set(CPACK_SOURCE_GENERATOR "TGZ")
-
-include(CPack)
-
-#===============================================================================
-#= Tests
-#-------------------------------------------------------------------------------
-
-if(ENABLE_TESTS)
- add_subdirectory(test)
- enable_testing()
- add_test(test ${CMAKE_CURRENT_BINARY_DIR}/DSView/test/DSView-test)
-endif(ENABLE_TESTS)
-
-
+# Install the library.
+install(TARGETS ${PROJECT_NAME}
+ LIBRARY DESTINATION lib
+ PUBLIC_HEADER DESTINATION include
+)