dev-libs/qschematic: add 1.5.1

Signed-off-by: Huang Rui <vowstar@gmail.com>
This commit is contained in:
Huang Rui
2024-02-17 23:41:32 +08:00
parent 7e45145444
commit 4113a87ea3
3 changed files with 183 additions and 0 deletions

View File

@@ -1 +1,2 @@
DIST qschematic-1.5.0.tar.gz 1509508 BLAKE2B b2850e0b31e1d44f750488b94d47beaf606981d77bfbb070b44beb235c531bf190d1e3edcafb214737dc376d74d5e08405a8b3844c9746f9dce9731484685ca8 SHA512 a5ad0a5068c0bed1307c89134814c68192e4af19067d221d27086585f93360307a1293ee7c63021b21c0348f3859a18d6dcd50b3e2e0fe19fd32bf4928942cd4
DIST qschematic-1.5.1.tar.gz 1510872 BLAKE2B 4ecf1200f4aa8052aa1ded75f6247b2db4db8a85383b04bc4c7cec495d5d2b3d4b93d96c6fcbdf370d5470be6e7e00c032ba26d0e9d5b1ac491c78286d25b55c SHA512 4b748397e83369764f3f1df49701ffe3dccb18713c0e2f55c1110b31c294f0205da10c06fd56ca0011e3f8f5a0a9970149ed84a586d6edd4febe18170d89723d

View File

@@ -0,0 +1,114 @@
From ea877503228e0ce17451354d47ac151cbd94dcf5 Mon Sep 17 00:00:00 2001
From: Huang Rui <vowstar@gmail.com>
Date: Sat, 17 Feb 2024 23:30:42 +0800
Subject: [PATCH] fix gentoo build with qt6
Signed-off-by: Huang Rui <vowstar@gmail.com>
---
CMakeLists.txt | 1 +
demo/CMakeLists.txt | 2 ++
qschematic/CMakeLists.txt | 6 +++---
qschematic/external.cmake | 2 ++
qschematic/qschematic-config.cmake.in | 3 +++
5 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 926b55adb8ee..7ece589f33f0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -17,6 +17,7 @@ option(QSCHEMATIC_BUILD_STATIC "Whether to build a static library" ON)
option(QSCHEMATIC_BUILD_SHARED "Whether to build a shared library" ${OPTION_BUILD_SHARED_DEFAULT})
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)
# 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 b077470fe4d3..1f81a9c8ee8b 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 7e80a3a445cc..8368e5742b43 100644
--- a/qschematic/CMakeLists.txt
+++ b/qschematic/CMakeLists.txt
@@ -153,7 +153,7 @@ endif()
# Static library #
################################################################################
-if (QSCHEMATIC_BUILD_STATIC)
+# if (QSCHEMATIC_BUILD_STATIC)
add_library(${TARGET_STATIC} STATIC)
setup_target_common(${TARGET_STATIC})
@@ -161,8 +161,8 @@ if (QSCHEMATIC_BUILD_STATIC)
${TARGET_STATIC}
PUBLIC
QSCHEMATIC_STATIC_DEFINE
- )
-endif()
+ )
+# endif()
################################################################################
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.43.2

View File

@@ -0,0 +1,68 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MY_PN="QSchematic"
inherit cmake
DESCRIPTION="Library for creating flowcharts and engineering diagrams"
HOMEPAGE="https://github.com/simulton/QSchematic"
if [[ "${PV}" == "9999" ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/simulton/QSchematic/${MY_PN}.git"
else
SRC_URI="https://github.com/simulton/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc64 ~riscv ~x86"
S="${WORKDIR}/${MY_PN}-${PV}"
fi
LICENSE="MIT"
SLOT="0"
IUSE="examples qt6 static-libs test wayland +X"
RESTRICT="!test? ( test )"
REQUIRED_USE="
examples? ( static-libs )
test? ( static-libs )
"
RDEPEND="
!qt6? (
>=dev-qt/qtcore-5.15:5=
>=dev-qt/qtgui-5.15:5=[jpeg,png,wayland?,X?]
>=dev-qt/qtsvg-5.15:5
>=dev-qt/qtwidgets-5.15:5[png,X?]
)
qt6? (
>=dev-qt/qtbase-6.5:6=[gui,wayland?,widgets,X?]
>=dev-qt/qtimageformats-6.5:6
>=dev-qt/qtsvg-6.5:6
)
>=dev-libs/gpds-1.8.1[static-libs?]
"
DEPEND="
${RDEPEND}
"
BDEPEND="
virtual/pkgconfig
"
PATCHES=(
"${FILESDIR}/${PN}-1.5.1-gentoo-cmake-option.patch"
)
src_configure() {
local mycmakeargs=(
-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr"
-DQSCHEMATIC_DEPENDENCY_GPDS_TARGET:STRING="gpds::gpds-shared"
-DQSCHEMATIC_DEPENDENCY_GPDS_DOWNLOAD=OFF
-DQSCHEMATIC_BUILD_DEMO=$(usex examples)
-DQSCHEMATIC_BUILD_QT6=$(usex qt6)
-DQSCHEMATIC_BUILD_STATIC=$(usex static-libs)
-DQSCHEMATIC_BUILD_SHARED=ON
)
cmake_src_configure
}