mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-17 19:13:13 -04:00
dev-libs/qschematic: new package, add 1.5.0
Signed-off-by: Huang Rui <vowstar@gmail.com>
This commit is contained in:
@@ -0,0 +1,128 @@
|
||||
From 9beb6fcc19a27bd7a280420bdac8a95b650316ed Mon Sep 17 00:00:00 2001
|
||||
From: Huang Rui <vowstar@gmail.com>
|
||||
Date: Tue, 21 Nov 2023 10:25:53 +0800
|
||||
Subject: [PATCH] build: add build options for gentoo
|
||||
|
||||
Signed-off-by: Huang Rui <vowstar@gmail.com>
|
||||
---
|
||||
CMakeLists.txt | 2 ++
|
||||
demo/CMakeLists.txt | 2 ++
|
||||
qschematic/CMakeLists.txt | 10 ++++++----
|
||||
qschematic/external.cmake | 2 ++
|
||||
qschematic/qschematic-config.cmake.in | 3 +++
|
||||
5 files changed, 15 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 7a265d7e523f..bfe5cfe8d8bf 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -11,6 +11,8 @@ project(
|
||||
# User options
|
||||
option(QSCHEMATIC_BUILD_DEMO "Whether to build the demo project" ON)
|
||||
option(QSCHEMATIC_DEPENDENCY_GPDS_DOWNLOAD "Whether to pull the GPDS dependency via FetchContent" ON)
|
||||
+option(QSCHEMATIC_BUILD_QT6 "Whether to build with QT6" ON)
|
||||
+option(QSCHEMATIC_BUILD_STATIC "Whether to build static library" ON)
|
||||
|
||||
# User settings
|
||||
set(QSCHEMATIC_DEPENDENCY_GPDS_TARGET "gpds::gpds-static" CACHE STRING "The CMake target of the GPDS library to use")
|
||||
diff --git a/demo/CMakeLists.txt b/demo/CMakeLists.txt
|
||||
index 6c315c2894b2..db206dd156ac 100644
|
||||
--- a/demo/CMakeLists.txt
|
||||
+++ b/demo/CMakeLists.txt
|
||||
@@ -2,11 +2,13 @@
|
||||
include(../qschematic/external.cmake)
|
||||
|
||||
# Qt
|
||||
+if (QSCHEMATIC_BUILD_QT6)
|
||||
find_package(
|
||||
Qt6
|
||||
COMPONENTS
|
||||
PrintSupport
|
||||
)
|
||||
+endif()
|
||||
if (NOT Qt6_FOUND)
|
||||
find_package(
|
||||
Qt5
|
||||
diff --git a/qschematic/CMakeLists.txt b/qschematic/CMakeLists.txt
|
||||
index ec56b33ad264..6b4d353127bc 100644
|
||||
--- a/qschematic/CMakeLists.txt
|
||||
+++ b/qschematic/CMakeLists.txt
|
||||
@@ -150,7 +150,6 @@ setup_target_common(${TARGET_SHARED})
|
||||
################################################################################
|
||||
# Static library #
|
||||
################################################################################
|
||||
-
|
||||
add_library(${TARGET_STATIC} STATIC)
|
||||
setup_target_common(${TARGET_STATIC})
|
||||
|
||||
@@ -160,7 +159,6 @@ target_compile_definitions(
|
||||
QSCHEMATIC_STATIC_DEFINE
|
||||
)
|
||||
|
||||
-
|
||||
################################################################################
|
||||
# Install #
|
||||
################################################################################
|
||||
@@ -171,10 +169,14 @@ include(CMakePackageConfigHelpers)
|
||||
set(ConfigPackageLocation ${CMAKE_INSTALL_LIBDIR}/cmake/qschematic)
|
||||
|
||||
# Targets
|
||||
+if (QSCHEMATIC_BUILD_STATIC)
|
||||
+ set(INSTALL_TARGETS ${INSTALL_TARGETS} ${TARGET_STATIC} ${TARGET_SHARED})
|
||||
+else()
|
||||
+ set(INSTALL_TARGETS ${INSTALL_TARGETS} ${TARGET_SHARED})
|
||||
+endif()
|
||||
install(
|
||||
TARGETS
|
||||
- ${TARGET_STATIC}
|
||||
- ${TARGET_SHARED}
|
||||
+ ${INSTALL_TARGETS}
|
||||
EXPORT qschematic-targets
|
||||
FILE_SET
|
||||
HEADERS
|
||||
diff --git a/qschematic/external.cmake b/qschematic/external.cmake
|
||||
index 80aae6c29b94..7e57f0852ac5 100644
|
||||
--- a/qschematic/external.cmake
|
||||
+++ b/qschematic/external.cmake
|
||||
@@ -35,6 +35,7 @@ endif()
|
||||
########################################################################################################################
|
||||
|
||||
# Try to find Qt6
|
||||
+if (QSCHEMATIC_BUILD_QT6)
|
||||
find_package(
|
||||
Qt6
|
||||
COMPONENTS
|
||||
@@ -42,6 +43,7 @@ find_package(
|
||||
Gui
|
||||
Widgets
|
||||
)
|
||||
+endif()
|
||||
|
||||
# If Qt6 was not found, fallback to Qt5
|
||||
# Require minimum Qt 5.15 for versionless cmake targets. This can be relaxed down to Qt 5.6 (?) if needed by modifying
|
||||
diff --git a/qschematic/qschematic-config.cmake.in b/qschematic/qschematic-config.cmake.in
|
||||
index 7452408bcd09..5b2a14a4c9c2 100644
|
||||
--- a/qschematic/qschematic-config.cmake.in
|
||||
+++ b/qschematic/qschematic-config.cmake.in
|
||||
@@ -6,8 +6,10 @@ include(CMakeFindDependencyMacro)
|
||||
|
||||
set(QSCHEMATIC_DEPENDENCY_GPDS_DOWNLOAD @QSCHEMATIC_DEPENDENCY_GPDS_DOWNLOAD@)
|
||||
set(QSCHEMATIC_DEPENDENCY_GPDS_MINIMUM_VERSION @QSCHEMATIC_DEPENDENCY_GPDS_MINIMUM_VERSION@)
|
||||
+set(QSCHEMATIC_BUILD_QT6 @QSCHEMATIC_BUILD_QT6@)
|
||||
|
||||
# Qt
|
||||
+if (QSCHEMATIC_BUILD_QT6)
|
||||
find_dependency(
|
||||
Qt6
|
||||
COMPONENTS
|
||||
@@ -15,6 +17,7 @@ find_dependency(
|
||||
Gui
|
||||
Widgets
|
||||
)
|
||||
+endif()
|
||||
if (NOT Qt6_FOUND)
|
||||
find_dependency(
|
||||
Qt5 5.15
|
||||
--
|
||||
2.42.1
|
||||
|
||||
Reference in New Issue
Block a user