Browse Source

initial package creation

Signed-off-by: Toshaan Bharvani <toshaan@powerel.org>
master
Toshaan Bharvani 5 months ago
commit
da1f47ad5e
  1. 14
      SOURCES/10-qt6-check-opengl2.sh
  2. 4
      SOURCES/macros.qt6-qtbase
  3. 23
      SOURCES/qconfig-multilib.h
  4. 51
      SOURCES/qtbase-CMake-Install-objects-files-into-ARCHDATADIR.patch
  5. 13
      SOURCES/qtbase-cxxflag.patch
  6. 16
      SOURCES/qtbase-libglvnd.patch
  7. 16
      SOURCES/qtbase-moc-macros.patch
  8. 12
      SOURCES/qtbase-mysql.patch
  9. 28
      SOURCES/qtbase-tell-the-truth-about-private-API.patch
  10. 12
      SOURCES/qtbase-use-qgnomeplatform-as-default-platform-theme-on-gnome.patch
  11. 13
      SOURCES/qtbase-version-check.patch
  12. 3
      SOURCES/qtlogging.ini
  13. 1049
      SPECS/qt6-qtbase.spec

14
SOURCES/10-qt6-check-opengl2.sh

@ -0,0 +1,14 @@
#!/bin/bash

if [ -z "$QT_XCB_FORCE_SOFTWARE_OPENGL" ]; then

QT6_CHECK_OPENGL_VERSION=`LANG=C glxinfo 2> /dev/null | grep '^OpenGL version string: ' | head -n 1 | sed -e 's/^OpenGL version string: \([0-9]\).*$/\1/g'` ||:

if [ "$QT6_CHECK_OPENGL_VERSION" == "1" ]; then
QT_XCB_FORCE_SOFTWARE_OPENGL=1
export QT_XCB_FORCE_SOFTWARE_OPENGL
fi

unset QT6_CHECK_OPENGL_VERSION

fi

4
SOURCES/macros.qt6-qtbase

@ -0,0 +1,4 @@
%_qt6 @@NAME@@
%_qt6_epoch @@EPOCH@@
%_qt6_version @@VERSION@@
%_qt6_evr @@EVR@@

23
SOURCES/qconfig-multilib.h

@ -0,0 +1,23 @@
/* qconfig.h */
/* This file is here to prevent a file conflict on multiarch systems. A
* conflict will occur because qconfig.h has arch-specific definitions.
*
* DO NOT INCLUDE THE NEW FILE DIRECTLY -- ALWAYS INCLUDE THIS ONE INSTEAD. */

#ifndef QCONFIG_MULTILIB_H
#define QCONFIG_MULTILIB_H

#ifndef __WORDSIZE
#include <bits/wordsize.h>
#endif

#if __WORDSIZE == 32
#include "QtCore/qconfig-32.h"
#elif __WORDSIZE == 64
#include "QtCore/qconfig-64.h"
#else
#error "unexpected value for __WORDSIZE macro"
#endif

#endif

51
SOURCES/qtbase-CMake-Install-objects-files-into-ARCHDATADIR.patch

@ -0,0 +1,51 @@
From 4e517492a03b6c0b710a2d9a3df05922ac233992 Mon Sep 17 00:00:00 2001
From: Christophe Marin <christophe@krop.fr>
Date: Wed, 24 May 2023 11:23:39 +0200
Subject: [PATCH] CMake: Install objects files into 'ARCHDATADIR'

Change-Id: I917a9ef4d83f93eb5c3e47964bf1814d1b53fdab
---
cmake/QtResourceHelpers.cmake | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/cmake/QtResourceHelpers.cmake b/cmake/QtResourceHelpers.cmake
index 2df1fed50f..e4f34b5ff1 100644
--- a/cmake/QtResourceHelpers.cmake
+++ b/cmake/QtResourceHelpers.cmake
@@ -38,7 +38,7 @@ function(qt_internal_add_resource target resourceName)
if (out_targets)
qt_install(TARGETS ${out_targets}
EXPORT "${INSTALL_CMAKE_NAMESPACE}${target}Targets"
- DESTINATION "${INSTALL_LIBDIR}"
+ DESTINATION "${INSTALL_ARCHDATADIR}"
)
qt_internal_add_targets_to_additional_targets_export_file(
TARGETS ${out_targets}
@@ -47,7 +47,7 @@ function(qt_internal_add_resource target resourceName)
qt_internal_install_resource_pdb_files("${out_targets}")
qt_internal_record_rcc_object_files("${target}" "${out_targets}"
- INSTALL_DIRECTORY "${INSTALL_LIBDIR}")
+ INSTALL_DIRECTORY "${INSTALL_ARCHDATADIR}")
endif()
if (arg_OUTPUT_TARGETS)
@@ -77,7 +77,7 @@ function(qt_internal_record_rcc_object_files target resource_targets)
# It's comprised of thee following path parts:
#
# part (1) INSTALL_DIRECTORY.
- # A usual value is '${INSTALL_LIBDIR}/' for libraries
+ # A usual value is '${INSTALL_ARCHDATADIR}/' for libraries
# and '${INSTALL_QMLDIR}/foo/bar/' for qml plugin resources.
#
# part (2) the value computed by CMake's computeInstallObjectDir comprised of an
@@ -128,6 +128,6 @@ function(qt_internal_install_resource_pdb_files objlib_targets)
_qt_resource_generated_cpp_relative_path)
get_filename_component(rel_obj_file_dir "${generated_cpp_file_relative_path}" DIRECTORY)
qt_internal_install_pdb_files(${target}
- "${INSTALL_LIBDIR}/objects-$<CONFIG>/${target}/${rel_obj_file_dir}")
+ "${INSTALL_ARCHDATADIR}/objects-$<CONFIG>/${target}/${rel_obj_file_dir}")
endforeach()
endfunction()
--
2.40.1

13
SOURCES/qtbase-cxxflag.patch

@ -0,0 +1,13 @@
diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf
index e7e6ee1..ff2a939 100644
--- a/mkspecs/common/gcc-base.conf
+++ b/mkspecs/common/gcc-base.conf
@@ -32,7 +32,7 @@
#
QMAKE_CFLAGS_OPTIMIZE = -O2
-QMAKE_CFLAGS_OPTIMIZE_FULL = -O3
+QMAKE_CFLAGS_OPTIMIZE_FULL = -O2
QMAKE_CFLAGS_OPTIMIZE_DEBUG = -Og
QMAKE_CFLAGS_OPTIMIZE_SIZE = -Os

16
SOURCES/qtbase-libglvnd.patch

@ -0,0 +1,16 @@
diff --git a/src/gui/configure.cmake b/src/gui/configure.cmake
index 0bf250ea..2d1bb645 100644
--- a/src/gui/configure.cmake
+++ b/src/gui/configure.cmake
@@ -174,9 +174,9 @@ qt_config_compile_test(egl_x11
int main(void)
{
/* BEGIN TEST: */
-Display *dpy = EGL_DEFAULT_DISPLAY;
+Display *dpy = reinterpret_cast<Display *>(EGL_DEFAULT_DISPLAY);
EGLNativeDisplayType egldpy = XOpenDisplay(\"\");
-dpy = egldpy;
+dpy = reinterpret_cast<Display *>(egldpy);
EGLNativeWindowType w = XCreateWindow(dpy, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
XDestroyWindow(dpy, w);
XCloseDisplay(dpy);

16
SOURCES/qtbase-moc-macros.patch

@ -0,0 +1,16 @@
diff --git a/src/tools/moc/main.cpp b/src/tools/moc/main.cpp
index 1cb383c9..6bfdee55 100644
--- a/src/tools/moc/main.cpp
+++ b/src/tools/moc/main.cpp
@@ -230,6 +230,11 @@ int runMoc(int argc, char **argv)
Moc moc;
pp.macros["Q_MOC_RUN"];
pp.macros["__cplusplus"];
+ pp.macros["_SYS_SYSMACROS_H_OUTER"];
+ Macro macro;
+ macro.symbols = Preprocessor::tokenize(QByteArray::number(Q_PROCESSOR_WORDSIZE*8), 1, Preprocessor::TokenizeDefine);
+ macro.symbols.removeLast(); // remove the EOF symbol
+ pp.macros.insert("__WORDSIZE", macro);
// Don't stumble over GCC extensions
Macro dummyVariadicFunctionMacro;

12
SOURCES/qtbase-mysql.patch

@ -0,0 +1,12 @@
diff -up qtbase-opensource-src-5.9.0/src/plugins/sqldrivers/mysql/qsql_mysql.cpp.than qtbase-opensource-src-5.9.0/src/plugins/sqldrivers/mysql/qsql_mysql.cpp
diff -up qtbase-opensource-src-5.9.0/src/plugins/sqldrivers/mysql/qsql_mysql_p.h.than qtbase-opensource-src-5.9.0/src/plugins/sqldrivers/mysql/qsql_mysql_p.h
--- qtbase-opensource-src-5.9.0/src/plugins/sqldrivers/mysql/qsql_mysql_p.h.than 2017-07-14 13:43:50.831203768 +0200
+++ qtbase-opensource-src-5.9.0/src/plugins/sqldrivers/mysql/qsql_mysql_p.h 2017-07-14 13:44:24.364948006 +0200
@@ -58,6 +58,7 @@
#endif
#include <mysql.h>
+#include <mysql_version.h>
#ifdef QT_PLUGIN
#define Q_EXPORT_SQLDRIVER_MYSQL

28
SOURCES/qtbase-tell-the-truth-about-private-API.patch

@ -0,0 +1,28 @@
From 25e78cce15fdf737cc48ed5d7683ad1d01b55621 Mon Sep 17 00:00:00 2001
From: Christophe Giboudeaux <christophe@krop.fr>
Date: Sun, 20 Sep 2020 09:57:22 +0200
Subject: [PATCH] Tell the truth about private API

Mark private API with symbols only for the current patch release

This change is a port of the libqt5-qtbase patch which was
added during the Qt 5.6 cycle.
---
cmake/QtFlagHandlingHelpers.cmake | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/cmake/QtFlagHandlingHelpers.cmake b/cmake/QtFlagHandlingHelpers.cmake
index d8597326cc..f9da7b2171 100644
--- a/cmake/QtFlagHandlingHelpers.cmake
+++ b/cmake/QtFlagHandlingHelpers.cmake
@@ -23,7 +23,7 @@ function(qt_internal_add_linker_version_script target)
endif()

if(TEST_ld_version_script)
- set(contents "Qt_${PROJECT_VERSION_MAJOR}_PRIVATE_API {\n qt_private_api_tag*;\n")
+ set(contents "Qt_${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}_PRIVATE_API {\n qt_private_api_tag*;\n")
if(arg_PRIVATE_HEADERS)
foreach(ph ${arg_PRIVATE_HEADERS})
string(APPEND contents " @FILE:${ph}@\n")
--
2.40.0

12
SOURCES/qtbase-use-qgnomeplatform-as-default-platform-theme-on-gnome.patch

@ -0,0 +1,12 @@
diff --git a/src/gui/platform/unix/qgenericunixthemes.cpp b/src/gui/platform/unix/qgenericunixthemes.cpp
index 1efd759b..d0129f73 100644
--- a/src/gui/platform/unix/qgenericunixthemes.cpp
+++ b/src/gui/platform/unix/qgenericunixthemes.cpp
@@ -977,6 +977,7 @@ QStringList QGenericUnixTheme::themeNames()
result.push_back(QLatin1StringView(QKdeTheme::name));
#endif
} else if (gtkBasedEnvironments.contains(desktopName)) {
+ result.push_back(QStringLiteral("qgnomeplatform"));
// prefer the GTK3 theme implementation with native dialogs etc.
result.push_back(QStringLiteral("gtk3"));
// fallback to the generic Gnome theme if loading the GTK3 theme fails

13
SOURCES/qtbase-version-check.patch

@ -0,0 +1,13 @@
diff --git a/src/corelib/global/qtversionchecks.h b/src/corelib/global/qtversionchecks.h
index d3b7a7b0..a8b9c6f3 100644
--- a/src/corelib/global/qtversionchecks.h
+++ b/src/corelib/global/qtversionchecks.h
@@ -26,7 +26,7 @@
/*
can be used like #if (QT_VERSION >= QT_VERSION_CHECK(6, 4, 0))
*/
-#define QT_VERSION_CHECK(major, minor, patch) ((major<<16)|(minor<<8)|(patch))
+#define QT_VERSION_CHECK(qt_version_check_major, qt_version_check_minor, qt_version_check_patch) ((qt_version_check_major<<16)|(qt_version_check_minor<<8)|(qt_version_check_patch))

/*
Helper macros to make some simple code active in Qt 6 or Qt 7 only,

3
SOURCES/qtlogging.ini

@ -0,0 +1,3 @@
[Rules]
*.debug=false
qt.qpa.xcb.xcberror.warning=false

1049
SPECS/qt6-qtbase.spec

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save