Initial Commit
This commit is contained in:
@@ -0,0 +1,10 @@
|
|||||||
|
name: qt6-base
|
||||||
|
description: Cross-platform application development framework for creating graphical user interfaces
|
||||||
|
version: 6.6.2
|
||||||
|
url: https://www.qt.io/
|
||||||
|
license: FDL,GPL3,LGPL3,custom
|
||||||
|
architecture: any
|
||||||
|
depends: ["brotli","dbus","double-conversion","elogind","fontconfig","freetype2","gcc","glib","glibc","harfbuzz","icu","krb5","cups","libdrm","libice","libinput","libjpeg-turbo","libpng","libxi","libxkbcommon","mesa","openssl","pcre2","shared-mime-info","sqlite","vulkan-headers","xcb-util-cursor","xcb-util-image","xcb-util-keysyms","xcb-util-renderutil","xcb-util-wm","zlib","zstd"]
|
||||||
|
optional_depends: ["gdk-pixbuf","gtk3","pango","perl"]
|
||||||
|
make_depends: ["alsa-lib","git","gtk3","pulseaudio","vulkan-headers"]
|
||||||
|
type: source
|
||||||
@@ -0,0 +1,46 @@
|
|||||||
|
diff --git a/mkspecs/common/g++-unix.conf b/mkspecs/common/g++-unix.conf
|
||||||
|
index a493cd5984..41342f5020 100644
|
||||||
|
--- a/mkspecs/common/g++-unix.conf
|
||||||
|
+++ b/mkspecs/common/g++-unix.conf
|
||||||
|
@@ -10,5 +10,6 @@
|
||||||
|
|
||||||
|
include(g++-base.conf)
|
||||||
|
|
||||||
|
-QMAKE_LFLAGS_RELEASE += -Wl,-O1
|
||||||
|
+SYSTEM_LDFLAGS = $$(LDFLAGS)
|
||||||
|
+!isEmpty(SYSTEM_LDFLAGS) { eval(QMAKE_LFLAGS_RELEASE += $$(LDFLAGS)) } else { QMAKE_LFLAGS_RELEASE += -Wl,-O1 }
|
||||||
|
QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined
|
||||||
|
diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf
|
||||||
|
index 1f919d270a..7ef6046326 100644
|
||||||
|
--- a/mkspecs/common/gcc-base.conf
|
||||||
|
+++ b/mkspecs/common/gcc-base.conf
|
||||||
|
@@ -40,9 +40,11 @@ QMAKE_CFLAGS_OPTIMIZE_SIZE = -Os
|
||||||
|
QMAKE_CFLAGS_DEPS += -M
|
||||||
|
QMAKE_CFLAGS_WARN_ON += -Wall -Wextra
|
||||||
|
QMAKE_CFLAGS_WARN_OFF += -w
|
||||||
|
-QMAKE_CFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE
|
||||||
|
-QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g
|
||||||
|
-QMAKE_CFLAGS_DEBUG += -g
|
||||||
|
+SYSTEM_CFLAGS = $$(CFLAGS)
|
||||||
|
+SYSTEM_DEBUG_CFLAGS = $$(DEBUG_CFLAGS)
|
||||||
|
+!isEmpty(SYSTEM_CFLAGS) { eval(QMAKE_CFLAGS_RELEASE += $$(CFLAGS)) } else { QMAKE_CFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE }
|
||||||
|
+!isEmpty(SYSTEM_CFLAGS) { eval(QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -g $$(CFLAGS)) } else { QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g }
|
||||||
|
+!isEmpty(SYSTEM_DEBUG_CFLAGS) { eval(QMAKE_CFLAGS_DEBUG += $$(DEBUG_CFLAGS)) } else { QMAKE_CFLAGS_DEBUG += -g }
|
||||||
|
QMAKE_CFLAGS_SHLIB += $$QMAKE_CFLAGS_PIC
|
||||||
|
QMAKE_CFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_PIC
|
||||||
|
QMAKE_CFLAGS_APP += $$QMAKE_CFLAGS_PIC
|
||||||
|
@@ -59,9 +61,11 @@ QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
|
||||||
|
QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS
|
||||||
|
QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON
|
||||||
|
QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF
|
||||||
|
-QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE
|
||||||
|
-QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO
|
||||||
|
-QMAKE_CXXFLAGS_DEBUG += $$QMAKE_CFLAGS_DEBUG
|
||||||
|
+SYSTEM_CXXFLAGS = $$(CXXFLAGS)
|
||||||
|
+SYSTEM_DEBUG_CXXFLAGS = $$(DEBUG_CXXFLAGS)
|
||||||
|
+!isEmpty(SYSTEM_CXXFLAGS) { eval(QMAKE_CXXFLAGS_RELEASE += $$(CXXFLAGS)) } else { QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE }
|
||||||
|
+!isEmpty(SYSTEM_CXXFLAGS) { eval(QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += -g $$(CXXFLAGS)) } else { QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g }
|
||||||
|
+!isEmpty(SYSTEM_DEBUG_CXXFLAGS) { eval(QMAKE_CXXFLAGS_DEBUG += $$(DEBUG_CXXFLAGS)) } else { QMAKE_CXXFLAGS_DEBUG += -g }
|
||||||
|
QMAKE_CXXFLAGS_SHLIB += $$QMAKE_CFLAGS_SHLIB
|
||||||
|
QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB
|
||||||
|
QMAKE_CXXFLAGS_APP += $$QMAKE_CFLAGS_APP
|
||||||
@@ -0,0 +1,46 @@
|
|||||||
|
diff --git a/mkspecs/common/g++-unix.conf b/mkspecs/common/g++-unix.conf
|
||||||
|
index a493cd5984..41342f5020 100644
|
||||||
|
--- a/mkspecs/common/g++-unix.conf
|
||||||
|
+++ b/mkspecs/common/g++-unix.conf
|
||||||
|
@@ -10,5 +10,6 @@
|
||||||
|
|
||||||
|
include(g++-base.conf)
|
||||||
|
|
||||||
|
-QMAKE_LFLAGS_RELEASE += -Wl,-O1
|
||||||
|
+SYSTEM_LDFLAGS = $$(LDFLAGS)
|
||||||
|
+!isEmpty(SYSTEM_LDFLAGS) { eval(QMAKE_LFLAGS_RELEASE += $$(LDFLAGS)) } else { QMAKE_LFLAGS_RELEASE += -Wl,-O1 }
|
||||||
|
QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined
|
||||||
|
diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf
|
||||||
|
index 1f919d270a..7ef6046326 100644
|
||||||
|
--- a/mkspecs/common/gcc-base.conf
|
||||||
|
+++ b/mkspecs/common/gcc-base.conf
|
||||||
|
@@ -40,9 +40,11 @@ QMAKE_CFLAGS_OPTIMIZE_SIZE = -Os
|
||||||
|
QMAKE_CFLAGS_DEPS += -M
|
||||||
|
QMAKE_CFLAGS_WARN_ON += -Wall -Wextra
|
||||||
|
QMAKE_CFLAGS_WARN_OFF += -w
|
||||||
|
-QMAKE_CFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE
|
||||||
|
-QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g
|
||||||
|
-QMAKE_CFLAGS_DEBUG += -g
|
||||||
|
+SYSTEM_CFLAGS = $$(CFLAGS)
|
||||||
|
+SYSTEM_DEBUG_CFLAGS = $$(DEBUG_CFLAGS)
|
||||||
|
+!isEmpty(SYSTEM_CFLAGS) { eval(QMAKE_CFLAGS_RELEASE += $$(CFLAGS)) } else { QMAKE_CFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE }
|
||||||
|
+!isEmpty(SYSTEM_CFLAGS) { eval(QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -g $$(CFLAGS)) } else { QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g }
|
||||||
|
+!isEmpty(SYSTEM_DEBUG_CFLAGS) { eval(QMAKE_CFLAGS_DEBUG += $$(DEBUG_CFLAGS)) } else { QMAKE_CFLAGS_DEBUG += -g }
|
||||||
|
QMAKE_CFLAGS_SHLIB += $$QMAKE_CFLAGS_PIC
|
||||||
|
QMAKE_CFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_PIC
|
||||||
|
QMAKE_CFLAGS_APP += $$QMAKE_CFLAGS_PIC
|
||||||
|
@@ -59,9 +61,11 @@ QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
|
||||||
|
QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS
|
||||||
|
QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON
|
||||||
|
QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF
|
||||||
|
-QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE
|
||||||
|
-QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO
|
||||||
|
-QMAKE_CXXFLAGS_DEBUG += $$QMAKE_CFLAGS_DEBUG
|
||||||
|
+SYSTEM_CXXFLAGS = $$(CXXFLAGS)
|
||||||
|
+SYSTEM_DEBUG_CXXFLAGS = $$(DEBUG_CXXFLAGS)
|
||||||
|
+!isEmpty(SYSTEM_CXXFLAGS) { eval(QMAKE_CXXFLAGS_RELEASE += $$(CXXFLAGS)) } else { QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE }
|
||||||
|
+!isEmpty(SYSTEM_CXXFLAGS) { eval(QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += -g $$(CXXFLAGS)) } else { QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g }
|
||||||
|
+!isEmpty(SYSTEM_DEBUG_CXXFLAGS) { eval(QMAKE_CXXFLAGS_DEBUG += $$(DEBUG_CXXFLAGS)) } else { QMAKE_CXXFLAGS_DEBUG += -g }
|
||||||
|
QMAKE_CXXFLAGS_SHLIB += $$QMAKE_CFLAGS_SHLIB
|
||||||
|
QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB
|
||||||
|
QMAKE_CXXFLAGS_APP += $$QMAKE_CFLAGS_APP
|
||||||
@@ -0,0 +1,52 @@
|
|||||||
|
# This is the source.sh script. It is executed by BPM in a temporary directory when compiling a source package
|
||||||
|
# BPM Expects the source code to be extracted into the automatically created 'source' directory which can be accessed using $BPM_SOURCE
|
||||||
|
# BPM Expects the output files to be present in the automatically created 'output' directory which can be accessed using $BPM_OUTPUT
|
||||||
|
|
||||||
|
REPO="https://code.qt.io/qt/qtbase.git"
|
||||||
|
|
||||||
|
# The prepare function is executed in the root of the temp directory
|
||||||
|
# This function is used for downloading files and putting them into the correct location
|
||||||
|
prepare() {
|
||||||
|
git clone --branch "v${BPM_PKG_VERSION}" "$REPO" "$BPM_SOURCE"
|
||||||
|
|
||||||
|
# Patches from Arch Linux
|
||||||
|
cd "$BPM_SOURCE"
|
||||||
|
|
||||||
|
patch -Np1 -i ../qt6-base-cflags.patch # Use system CFLAGS
|
||||||
|
}
|
||||||
|
|
||||||
|
# The build function is executed in the source directory
|
||||||
|
# This function is used to compile the source code
|
||||||
|
build() {
|
||||||
|
mkdir build
|
||||||
|
cd build
|
||||||
|
|
||||||
|
cmake -G Ninja \
|
||||||
|
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||||
|
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
||||||
|
-DINSTALL_BINDIR=lib/qt6/bin \
|
||||||
|
-DINSTALL_PUBLICBINDIR=usr/bin \
|
||||||
|
-DINSTALL_LIBEXECDIR=lib/qt6 \
|
||||||
|
-DINSTALL_DOCDIR=share/doc/qt6 \
|
||||||
|
-DINSTALL_ARCHDATADIR=lib/qt6 \
|
||||||
|
-DINSTALL_DATADIR=share/qt6 \
|
||||||
|
-DINSTALL_INCLUDEDIR=include/qt6 \
|
||||||
|
-DINSTALL_MKSPECSDIR=lib/qt6/mkspecs \
|
||||||
|
-DINSTALL_EXAMPLESDIR=share/doc/qt6/examples \
|
||||||
|
-DFEATURE_journald=OFF \
|
||||||
|
-DFEATURE_openssl_linked=ON \
|
||||||
|
-DFEATURE_system_sqlite=ON \
|
||||||
|
-DFEATURE_system_xcb_xinput=ON \
|
||||||
|
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON \
|
||||||
|
-DCMAKE_MESSAGE_LOG_LEVEL=STATUS ..
|
||||||
|
ninja
|
||||||
|
}
|
||||||
|
|
||||||
|
# The package function is executed in the source directory
|
||||||
|
# This function is used to move the compiled files into the output directory
|
||||||
|
package() {
|
||||||
|
cd build
|
||||||
|
DESTDIR="$BPM_OUTPUT" ninja install
|
||||||
|
|
||||||
|
install -Dm644 "$BPM_SOURCE"/LICENSES/* -t "$BPM_OUTPUT"/usr/share/licenses/qt6-base/
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user