From f4c64939e941df9832d5a6c4314d9b4fcd4e6f2f Mon Sep 17 00:00:00 2001 From: Martchus Date: Sun, 29 Dec 2019 00:08:47 +0100 Subject: [PATCH] Generate mingw-w64-qt5-* packages from templates * Only packages for additional modules are covered so far * Only packages for mingw-w64 target are covered so far * This leads to small adjustments/unifications within the PKGBUILDs; not tested yet --- .gitignore | 3 + README.md | 12 + devel/generator/generate.pl | 144 +++++++++ .../mingw-w64-qt5-executable_suffix.sh.ep | 11 + .../templates/fragments/sha256_list.sh.ep | 4 + .../fragments/source_file_list.sh.ep | 3 + .../layouts/mingw-w64-qt5-module.sh.ep | 132 ++++++++ qt5-3d/mingw-w64/PKGBUILD | 11 +- qt5-3d/mingw-w64/PKGBUILD.sh.ep | 28 ++ qt5-3d/mingw-w64/qt3d-sha256.txt | 1 + qt5-activeqt/mingw-w64/PKGBUILD | 11 +- qt5-activeqt/mingw-w64/PKGBUILD.sh.ep | 24 ++ qt5-activeqt/mingw-w64/qtactiveqt-sha256.txt | 1 + qt5-base/mingw-w64/qtactiveqt-sha256.txt | 1 + qt5-canvas3d/mingw-w64/PKGBUILD | 13 +- qt5-canvas3d/mingw-w64/PKGBUILD.sh.ep | 17 + qt5-canvas3d/mingw-w64/qtcanvas3d-sha256.txt | 1 + qt5-charts/mingw-w64/PKGBUILD | 13 +- qt5-charts/mingw-w64/PKGBUILD.sh.ep | 10 + qt5-charts/mingw-w64/qtcharts-sha256.txt | 1 + qt5-connectivity/mingw-w64/PKGBUILD | 16 +- qt5-connectivity/mingw-w64/PKGBUILD.sh.ep | 9 + .../mingw-w64/qtconnectivity-sha256.txt | 1 + qt5-datavis3d/mingw-w64/PKGBUILD | 11 +- qt5-datavis3d/mingw-w64/PKGBUILD.sh.ep | 10 + .../mingw-w64/qtdatavis3d-sha256.txt | 1 + qt5-declarative/mingw-w64/PKGBUILD | 19 +- qt5-declarative/mingw-w64/PKGBUILD.sh.ep | 26 ++ .../mingw-w64/qtdeclarative-sha256.txt | 1 + qt5-gamepad/mingw-w64/PKGBUILD | 13 +- qt5-gamepad/mingw-w64/PKGBUILD.sh.ep | 10 + qt5-gamepad/mingw-w64/qtgamepad-sha256.txt | 1 + qt5-graphicaleffects/mingw-w64/PKGBUILD | 15 +- qt5-graphicaleffects/mingw-w64/PKGBUILD.sh.ep | 14 + qt5-graphicaleffects/mingw-w64/foo.txt | 1 + .../mingw-w64/qtgraphicaleffects-sha256.txt | 1 + qt5-imageformats/mingw-w64/PKGBUILD | 13 +- qt5-imageformats/mingw-w64/PKGBUILD.sh.ep | 18 ++ .../mingw-w64/qtimageformats-sha256.txt | 1 + qt5-location/mingw-w64/PKGBUILD | 15 +- qt5-location/mingw-w64/PKGBUILD.sh.ep | 21 ++ qt5-location/mingw-w64/qtlocation-sha256.txt | 1 + ...s-to-prevent-conflict-with-vsnprintf.patch | 2 +- .../mingw-w64/0002-Fix-build-with-ANGLE.patch | 2 +- ...irectshow-plugin-against-libamstrmid.patch | 2 +- ...der-file-for-building-with-mingw-w64.patch | 96 ++++++ qt5-multimedia/mingw-w64/PKGBUILD | 35 +- qt5-multimedia/mingw-w64/PKGBUILD.sh.ep | 13 + .../mingw-w64/qtmultimedia-sha256.txt | 1 + qt5-networkauth/mingw-w64/PKGBUILD | 14 +- qt5-networkauth/mingw-w64/PKGBUILD.sh.ep | 14 + .../mingw-w64/qtnetworkauth-sha256.txt | 1 + qt5-quick1/mingw-w64/PKGBUILD.sh.ep | 16 + qt5-quick1/mingw-w64/qtquick1-sha256.txt | 1 + qt5-quickcontrols/mingw-w64/PKGBUILD | 15 +- qt5-quickcontrols/mingw-w64/PKGBUILD.sh.ep | 14 + .../mingw-w64/qtquickcontrols-sha256.txt | 1 + qt5-quickcontrols2/mingw-w64/PKGBUILD | 15 +- qt5-quickcontrols2/mingw-w64/PKGBUILD.sh.ep | 14 + .../mingw-w64/qtquickcontrols2-sha256.txt | 1 + qt5-remoteobjects/mingw-w64/PKGBUILD | 13 +- qt5-remoteobjects/mingw-w64/PKGBUILD.sh.ep | 22 ++ .../mingw-w64/qtremoteobjects-sha256.txt | 1 + qt5-script/mingw-w64/PKGBUILD | 13 +- qt5-script/mingw-w64/PKGBUILD.sh.ep | 16 + qt5-script/mingw-w64/qtscript-sha256.txt | 1 + qt5-scxml/mingw-w64/PKGBUILD | 19 +- qt5-scxml/mingw-w64/PKGBUILD.sh.ep | 18 ++ qt5-scxml/mingw-w64/qtscxml-sha256.txt | 1 + qt5-sensors/mingw-w64/PKGBUILD | 12 +- qt5-sensors/mingw-w64/PKGBUILD.sh.ep | 14 + qt5-sensors/mingw-w64/qtsensors-sha256.txt | 1 + qt5-serialport/mingw-w64/PKGBUILD | 19 +- qt5-serialport/mingw-w64/PKGBUILD.sh.ep | 19 ++ .../mingw-w64/qtserialport-sha256.txt | 1 + qt5-speech/mingw-w64/PKGBUILD | 13 +- qt5-speech/mingw-w64/PKGBUILD.sh.ep | 13 + qt5-speech/mingw-w64/qtspeech-sha256.txt | 1 + qt5-svg/mingw-w64/PKGBUILD | 13 +- qt5-svg/mingw-w64/PKGBUILD.sh.ep | 13 + qt5-svg/mingw-w64/qtsvg-sha256.txt | 1 + qt5-tools/mingw-w64/PKGBUILD | 32 +- qt5-tools/mingw-w64/PKGBUILD.sh.ep | 45 +++ qt5-tools/mingw-w64/qttools-sha256.txt | 1 + qt5-translations/mingw-w64/PKGBUILD | 71 ++++- qt5-translations/mingw-w64/PKGBUILD.sh.ep | 14 + .../mingw-w64/qttranslations-sha256.txt | 1 + qt5-virtualkeyboard/mingw-w64/PKGBUILD | 27 +- qt5-virtualkeyboard/mingw-w64/PKGBUILD.sh.ep | 29 ++ .../mingw-w64/qtvirtualkeyboard-sha256.txt | 1 + qt5-webchannel/mingw-w64/PKGBUILD | 12 +- qt5-webchannel/mingw-w64/PKGBUILD.sh.ep | 9 + .../mingw-w64/qtwebchannel-sha256.txt | 1 + ...0-win32-g++-enable-qtwebengine-build.patch | 12 - qt5-webengine/mingw-w64-git/PKGBUILD | 100 ------ qt5-webengine/mingw-w64/PKGBUILD | 32 +- qt5-webengine/mingw-w64/PKGBUILD.sh.ep | 34 ++ .../mingw-w64/qtwebengine-sha256.txt | 1 + qt5-webglplugin/mingw-w64/PKGBUILD | 17 +- qt5-webglplugin/mingw-w64/PKGBUILD.sh.ep | 9 + .../mingw-w64/qtwebglplugin-sha256.txt | 1 + qt5-webkit/mingw-w64/PKGBUILD.sh.ep | 47 +++ qt5-webkit/mingw-w64/qtwebkit-sha256.txt | 1 + qt5-websockets/mingw-w64/PKGBUILD | 13 +- qt5-websockets/mingw-w64/PKGBUILD.sh.ep | 13 + .../mingw-w64/qtwebsockets-sha256.txt | 1 + ...link-to-functions-available-from-Win.patch | 298 ------------------ qt5-winextras/mingw-w64/PKGBUILD | 19 +- qt5-winextras/mingw-w64/PKGBUILD.sh.ep | 13 + .../mingw-w64/qtwinextras-sha256.txt | 1 + qt5-xmlpatterns/mingw-w64/PKGBUILD | 13 +- qt5-xmlpatterns/mingw-w64/PKGBUILD.sh.ep | 13 + .../mingw-w64/qtxmlpatterns-sha256.txt | 1 + 113 files changed, 1426 insertions(+), 596 deletions(-) create mode 100755 devel/generator/generate.pl create mode 100644 devel/generator/templates/fragments/mingw-w64-qt5-executable_suffix.sh.ep create mode 100644 devel/generator/templates/fragments/sha256_list.sh.ep create mode 100644 devel/generator/templates/fragments/source_file_list.sh.ep create mode 100644 devel/generator/templates/layouts/mingw-w64-qt5-module.sh.ep create mode 100644 qt5-3d/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-3d/mingw-w64/qt3d-sha256.txt create mode 100644 qt5-activeqt/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-activeqt/mingw-w64/qtactiveqt-sha256.txt create mode 100644 qt5-base/mingw-w64/qtactiveqt-sha256.txt create mode 100644 qt5-canvas3d/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-canvas3d/mingw-w64/qtcanvas3d-sha256.txt create mode 100644 qt5-charts/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-charts/mingw-w64/qtcharts-sha256.txt create mode 100644 qt5-connectivity/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-connectivity/mingw-w64/qtconnectivity-sha256.txt create mode 100644 qt5-datavis3d/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-datavis3d/mingw-w64/qtdatavis3d-sha256.txt create mode 100644 qt5-declarative/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-declarative/mingw-w64/qtdeclarative-sha256.txt create mode 100644 qt5-gamepad/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-gamepad/mingw-w64/qtgamepad-sha256.txt create mode 100644 qt5-graphicaleffects/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-graphicaleffects/mingw-w64/foo.txt create mode 100644 qt5-graphicaleffects/mingw-w64/qtgraphicaleffects-sha256.txt create mode 100644 qt5-imageformats/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-imageformats/mingw-w64/qtimageformats-sha256.txt create mode 100644 qt5-location/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-location/mingw-w64/qtlocation-sha256.txt create mode 100644 qt5-multimedia/mingw-w64/0004-Fix-case-of-header-file-for-building-with-mingw-w64.patch create mode 100644 qt5-multimedia/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-multimedia/mingw-w64/qtmultimedia-sha256.txt create mode 100644 qt5-networkauth/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-networkauth/mingw-w64/qtnetworkauth-sha256.txt create mode 100644 qt5-quick1/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-quick1/mingw-w64/qtquick1-sha256.txt create mode 100644 qt5-quickcontrols/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-quickcontrols/mingw-w64/qtquickcontrols-sha256.txt create mode 100644 qt5-quickcontrols2/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-quickcontrols2/mingw-w64/qtquickcontrols2-sha256.txt create mode 100644 qt5-remoteobjects/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-remoteobjects/mingw-w64/qtremoteobjects-sha256.txt create mode 100644 qt5-script/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-script/mingw-w64/qtscript-sha256.txt create mode 100644 qt5-scxml/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-scxml/mingw-w64/qtscxml-sha256.txt create mode 100644 qt5-sensors/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-sensors/mingw-w64/qtsensors-sha256.txt create mode 100644 qt5-serialport/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-serialport/mingw-w64/qtserialport-sha256.txt create mode 100644 qt5-speech/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-speech/mingw-w64/qtspeech-sha256.txt create mode 100644 qt5-svg/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-svg/mingw-w64/qtsvg-sha256.txt create mode 100644 qt5-tools/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-tools/mingw-w64/qttools-sha256.txt create mode 100644 qt5-translations/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-translations/mingw-w64/qttranslations-sha256.txt create mode 100644 qt5-virtualkeyboard/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-virtualkeyboard/mingw-w64/qtvirtualkeyboard-sha256.txt create mode 100644 qt5-webchannel/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-webchannel/mingw-w64/qtwebchannel-sha256.txt delete mode 100644 qt5-webengine/mingw-w64-git/0044-qt-5.4.0-win32-g++-enable-qtwebengine-build.patch delete mode 100644 qt5-webengine/mingw-w64-git/PKGBUILD create mode 100644 qt5-webengine/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-webengine/mingw-w64/qtwebengine-sha256.txt create mode 100644 qt5-webglplugin/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-webglplugin/mingw-w64/qtwebglplugin-sha256.txt create mode 100644 qt5-webkit/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-webkit/mingw-w64/qtwebkit-sha256.txt create mode 100644 qt5-websockets/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-websockets/mingw-w64/qtwebsockets-sha256.txt delete mode 100644 qt5-winextras/mingw-w64/0001-Revert-Directly-link-to-functions-available-from-Win.patch create mode 100644 qt5-winextras/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-winextras/mingw-w64/qtwinextras-sha256.txt create mode 100644 qt5-xmlpatterns/mingw-w64/PKGBUILD.sh.ep create mode 100644 qt5-xmlpatterns/mingw-w64/qtxmlpatterns-sha256.txt diff --git a/.gitignore b/.gitignore index d0631644..a76c6738 100644 --- a/.gitignore +++ b/.gitignore @@ -43,3 +43,6 @@ Makefile* # VIM swap *.swp + +# directory to store generator output when testing +devel/generator/output diff --git a/README.md b/README.md index 6c60f927..b66dfd75 100644 --- a/README.md +++ b/README.md @@ -54,6 +54,18 @@ where `default-pkg-name` is the default package name (eg. `qt5-base`) and `varia The repository does not contain `.SRCINFO` files. +## Generated PKGBUILDs +To avoid repetition some PKGBUILDs are generated. These PKGBUILDs are determined by the presence of the file +`PKGBUILD.sh.ep` besides the actual `PKGBUILD` file. The `PKGBUILD` file is only present for read-only purposes in +this case - do *not* edit it manually. Instead, edit the `PKGBUILD.sh.ep` file and invoke `devel/generator/generate.pl`. +This requires the `perl-Mojolicious` package to be installed. Set the environment variable `LOG_LEVEL` to adjust the +log level (e.g. `debug`/`info`/`warn`/`error`). Template layouts/fragments are stored within `generator/templates`. + +### Documentation about the used templating system +* [Syntax](https://mojolicious.org/perldoc/Mojo/Template#SYNTAX) +* [Helper](https://mojolicious.org/perldoc/Mojolicious/Plugin/DefaultHelpers) +* [Utilities](https://mojolicious.org/perldoc/Mojo/Util) + ## Contributing to patches Patches for most packages are managed in a fork of the project under my GitHub profile. For instance, patches for `mingw-w64-qt5-base` are managed at [github.com/Martchus/qtbase](https://github.com/Martchus/qtbase). diff --git a/devel/generator/generate.pl b/devel/generator/generate.pl new file mode 100755 index 00000000..5907b31b --- /dev/null +++ b/devel/generator/generate.pl @@ -0,0 +1,144 @@ +#!/usr/bin/perl + +use Encode 'encode'; +use FindBin; +use Mojolicious; +use Mojo::File 'path'; +use Mojo::Log; +use Mojo::Util; + +use warnings; +use strict; +use utf8; + +sub is_outdated { + my ($source_path, $target_path) = @_; + + my $source_last_modified = (stat($source_path))[9]; + my $target_last_modified = (stat($target_path))[9]; + return !defined $target_last_modified || $source_last_modified > $target_last_modified; +} + +my $log = Mojo::Log->new; +my $mojolicious = Mojolicious->new; +my $renderer = $mojolicious->renderer; +my $pkgbuilds_dir = path($FindBin::Bin, '..', '..')->realpath; +my @template_paths = ("$FindBin::Bin/templates", $pkgbuilds_dir); + +$log->level($ENV{LOG_LEVEL} // 'info'); +$mojolicious->log($log); +$renderer->paths(\@template_paths); +$log->debug("Template paths:\n" . join("\n", @template_paths)); + +my $install_directory = $ARGV[0] // $pkgbuilds_dir; +unless (-d $install_directory) { + $log->error("Output directory '$install_directory' does not exist."); + exit(-1); +} + +# find templates; populate "pages" array +my @pages; +my $template_file_name = 'PKGBUILD.sh.ep'; +my $top_level_dirs = $pkgbuilds_dir->list({dir => 1}); +for my $top_level_dir (@$top_level_dirs) { + next unless -d $top_level_dir; + next unless $top_level_dir ne 'devel'; + + my $default_package_name = $top_level_dir->basename; + my $qt_module; + if ($default_package_name =~ qr/qt5-(.*)/) { + $qt_module = $1; + } + + my $variant_dirs = $top_level_dir->list({dir => 1}); + for my $variant_dir (@$variant_dirs) { + next unless -d $variant_dir; + + my $variant = $variant_dir->basename; + my $template_file = $variant_dir->child($template_file_name); + if (!-f $template_file) { + # print warning; all additional Qt repos for mingw-w64 should be converted to use templates now + $log->warn("No template $template_file_name present for Qt module $qt_module and variant $variant") + if defined $qt_module && $qt_module ne 'base' && index($variant, 'mingw-w64') == 0; + next; + } + + my $files = $variant_dir->list; + my $patch_files = $files->grep(qr/.*\.patch/); + my $qt_module_sha256_file = defined $qt_module + ? $variant_dir->child("qt$qt_module-sha256.txt") + : undef; + my $qt_module_sha256 = defined $qt_module_sha256_file && -f $qt_module_sha256_file + ? Mojo::Util::trim($qt_module_sha256_file->slurp) + : "$qt_module_sha256_file missing"; + push(@pages, { + install_path => "$default_package_name/$variant/PKGBUILD", + template_params => [ + template => "$default_package_name/$variant/PKGBUILD", + stash_variables => { + variant => $variant, + default_package_name => $default_package_name, + package_name => "$variant-$default_package_name", + files => $files, + patch_files => $patch_files, + qt_module => $qt_module, + qt_module_sha256 => $qt_module_sha256, + shared_config => 1, + static_config => 1, + }, + ] + }); + } +} + +# render "pages" +for my $page (@pages) { + # process template params + my $template_params = $page->{template_params}; + my $template_source_path; + my $template_target_path; + my $template_stash_variables; + if (defined $template_params) { + my ($template_name, $template_args) = (@$template_params % 2 ? shift @$template_params : undef, {@$template_params}); + my $template_format = ($template_args->{format} //= 'sh'); + my $template_handler = $template_args->{handler} // 'ep'; + $template_name //= $template_args->{template}; + $template_stash_variables = delete $template_args->{stash_variables}; + $template_source_path = "$template_name.$template_format.$template_handler"; + $template_target_path = "$template_name.$template_format"; + $template_params = $template_args; + $template_params->{template} = $template_name; + } + + # determine source path and target path + my $source_path = $page->{source_path} // $template_source_path; + if (!$template_params && !$source_path) { + die 'page needs either template_params or source_path'; + } + my $output_file = path($install_directory, $page->{install_path} // $template_target_path // $source_path); + + # ensure output directory exists + $output_file->dirname->make_path unless -f $output_file; + + # skip unless the target is outdated + # note: Can not skip templates that easy because that would require tracking includes. + if (!defined $template_params && !is_outdated($source_path, $output_file)) { + $log->info("Skipping '$source_path' -> '$output_file' (target up-to-date)"); + next; + } + + # do a simple copy + if (!defined $template_params) { + $log->info("Copying '$source_path' -> '$output_file'"); + Mojo::File->new($source_path)->copy_to($output_file); + next; + } + + # render template + $log->info("Rendering '$source_path' -> '$output_file'"); + my $controller = $mojolicious->build_controller; + $controller->stash($template_stash_variables) if defined $template_stash_variables; + my $output = $controller->render_to_string(%$template_params); + $log->debug($output); + $output_file->spurt(encode('UTF-8', $output)); +} diff --git a/devel/generator/templates/fragments/mingw-w64-qt5-executable_suffix.sh.ep b/devel/generator/templates/fragments/mingw-w64-qt5-executable_suffix.sh.ep new file mode 100644 index 00000000..7e5b4445 --- /dev/null +++ b/devel/generator/templates/fragments/mingw-w64-qt5-executable_suffix.sh.ep @@ -0,0 +1,11 @@ + # make sure the executables don't conflict with their mingw-qt4 counterpart + for _arch in ${_architectures}; do + for exe_file in "${pkgdir}/usr/${_arch}/bin/"*.exe; do + [[ -f $exe_file ]] && mv "${exe_file}" "${exe_file%.exe}-qt5.exe" + done +% if ($qt_module eq 'tools') { + # Fix the path to executables in cmake config files + sed -i "s|lib/qt/bin/qcollectiongenerator|bin/qcollectiongenerator-qt5.exe|g" "${pkgdir}"/usr/${_arch}/lib/cmake/Qt5Help/Qt5HelpConfigExtras.cmake + sed -i "s|lib/qt/bin/qhelpgenerator|bin/qhelpgenerator-qt5.exe|g" "${pkgdir}"/usr/${_arch}/lib/cmake/Qt5Help/Qt5HelpConfigExtras.cmake +% } + done diff --git a/devel/generator/templates/fragments/sha256_list.sh.ep b/devel/generator/templates/fragments/sha256_list.sh.ep new file mode 100644 index 00000000..ff7d3255 --- /dev/null +++ b/devel/generator/templates/fragments/sha256_list.sh.ep @@ -0,0 +1,4 @@ +% use Digest::file 'digest_file_hex'; +% for my $file ($relevant_files->each) { +<%== "\n" %> '<%== digest_file_hex($file, 'SHA-256') %>'\ +% } diff --git a/devel/generator/templates/fragments/source_file_list.sh.ep b/devel/generator/templates/fragments/source_file_list.sh.ep new file mode 100644 index 00000000..019793f2 --- /dev/null +++ b/devel/generator/templates/fragments/source_file_list.sh.ep @@ -0,0 +1,3 @@ +% for my $file ($relevant_files->each) { +<%== "\n" %> '<%== $file->basename %>'\ +% } diff --git a/devel/generator/templates/layouts/mingw-w64-qt5-module.sh.ep b/devel/generator/templates/layouts/mingw-w64-qt5-module.sh.ep new file mode 100644 index 00000000..9140b363 --- /dev/null +++ b/devel/generator/templates/layouts/mingw-w64-qt5-module.sh.ep @@ -0,0 +1,132 @@ +# Maintainer: Martchus +<%== content_for 'additional_contributors' %>\ + +# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where +# you also find the URL of a binary repository. + +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. +% if ($patch_files->size) { + +# All patches are managed at https://github.com/Martchus/qt<%== $qt_module %> +% } +% if ($static_config && $shared_config) { + +# Includes dynamic and static versions; if only one version is requried, just +# set $NO_STATIC_LIBS or $NO_SHARED_LIBS. +% } + +<%== content_for 'comment_header' %>\ +_qt_module=qt<%== $qt_module %> +pkgname=mingw-w64-qt5-<%== $qt_module %> +<%== content %>\ +options=('!strip' '!buildflags' 'staticlibs') +groups=('mingw-w64-qt5') +url='https://www.qt.io/' +_pkgfqn="${_qt_module}-everywhere-src-${pkgver}" +source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz"\ +<%== include 'fragments/source_file_list', relevant_files => $patch_files %>) +sha256sums=('<%== $qt_module_sha256 %>'\ +<%== include 'fragments/sha256_list', relevant_files => $patch_files %>) + +_architectures='i686-w64-mingw32 x86_64-w64-mingw32' + +% if ($static_config) { +[[ $NO_STATIC_LIBS ]] || \\ + makedepends+=('mingw-w64-qt5-base-static') \\ + optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \\ + _configurations+=('CONFIG+=no_smart_library_merge <%== content_for 'static_config' %>CONFIG+=static') +% } +% if ($shared_config) { +[[ $NO_SHARED_LIBS ]] || \\ + _configurations+=('CONFIG+=actually_a_shared_build <%== content_for 'shared_config' %>CONFIG+=shared') +% } +<%== content_for 'helper_functions' %>\ + +% if ($patch_files->size || content_for('prepare')->size) { +prepare() { + cd "${srcdir}/${_pkgfqn}" +% if ($patch_files->size) { + + # apply patches; further descriptions can be found in patch files itself + for patch in "$srcdir/"*.patch; do + patch -p1 -i "$patch" + done +% } +<%== content_for 'prepare' %>\ +} + +% } +build() { + cd "${srcdir}/${_pkgfqn}" + +<%== content_for 'build_before_loop' %>\ + for _arch in ${_architectures}; do + for _config in "${_configurations[@]}"; do + msg2 "Building ${_config##*=} version for ${_arch}" + mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} +<%== content_for 'build_config' %>\ + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} +<%== content_for 'build_config_before_make' %>\ + make + popd + done + done +<%== content_for 'build' %>\ +} + +package() { + cd "${srcdir}/${_pkgfqn}" + + for _arch in ${_architectures}; do + for _config in "${_configurations[@]}"; do + pushd build-${_arch}-${_config##*=} + + make INSTALL_ROOT="$pkgdir" install +<%== content_for 'package_config_after_install' %>\ + + # use prl files from build directory since installed prl files seem to have incorrect QMAKE_PRL_LIBS_FOR_CMAKE + if [[ -d 'lib' ]]; then + pushd 'lib' + find -iname '*.static.prl' -exec cp --target-directory "${pkgdir}/usr/${_arch}/lib" --parents {} + + popd + fi + if [[ -d 'plugins' ]]; then + pushd 'plugins' + find -iname '*.static.prl' -exec cp --target-directory "${pkgdir}/usr/${_arch}/lib/qt/plugins" --parents {} + + popd + fi + + # replace library path in *.prl files so it points to the installed location and not the build directory + find "${pkgdir}/usr/${_arch}/lib" \( -type f -name '*.prl' -o -name '*.pc' \) -exec sed -i -e "s:$PWD/lib:/usr/$_arch/lib:g" {} \; + + # remove prl files for debug version + if ! [[ $MINGW_W64_QT_DEBUG_BUILD ]]; then + for file in $(find "${pkgdir}/usr/${_arch}" -name '*d.prl' -o -name '*d.static.prl'); do + [ -f "${file%d*}${file##*d}" ] && rm "${file}"; + done + fi + + # remove '.static.prl' files + find "${pkgdir}/usr/${_arch}" -name '.static.prl' -delete + + find "${pkgdir}/usr/${_arch}/lib" -maxdepth 1 -name '*.dll' -delete + [ "$NO_STATIC_EXECUTABLES" -a "${_config##*=}" = static -o "$NO_EXECUTABLES" ] && \\ + find "${pkgdir}/usr/${_arch}" -name '*.exe' -delete || \\ + find "${pkgdir}/usr/${_arch}" -name '*.exe' -exec ${_arch}-strip --strip-all {} \; + find "${pkgdir}/usr/${_arch}" -name '*.dll' -exec ${_arch}-strip --strip-unneeded {} \; + find "${pkgdir}/usr/${_arch}" \( -name '*.a' -not -name 'libQt5QmlDevTools.a' -not -name 'libQt5Bootstrap.a' \) -exec ${_arch}-strip -g {} \; + [[ -d "${pkgdir}/usr/${_arch}/lib/qt/bin/" ]] && \\ + find "${pkgdir}/usr/${_arch}/lib/qt/bin/" -exec strip --strip-all {} \; + find "${pkgdir}/usr/${_arch}/lib/" -iname "*.so.$pkgver" -exec strip --strip-unneeded {} \; +<%== content_for 'package_config' %>\ + popd + done +<%== content_for 'package_arch' %>\ + + # drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "${pkgdir}/usr/${_arch}/lib" -type f -name '*.prl' -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + done +<%== content_for 'package' %>\ +} diff --git a/qt5-3d/mingw-w64/PKGBUILD b/qt5-3d/mingw-w64/PKGBUILD index c0fca52f..6a369bdb 100644 --- a/qt5-3d/mingw-w64/PKGBUILD +++ b/qt5-3d/mingw-w64/PKGBUILD @@ -4,26 +4,31 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qt3d -pkgname="mingw-w64-qt5-3d" +pkgname=mingw-w64-qt5-3d pkgver=5.14.0 pkgrel=1 arch=('i686' 'x86_64') pkgdesc="C++ and QML APIs for easy inclusion of 3D graphics (mingw-w64)" depends=('mingw-w64-qt5-declarative') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL3' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL3' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('515b57d0f99be48f70817cf73bc8a0c0e63f7c9c41dbf35fc8baf065fc752515') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ @@ -45,7 +50,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} # Search paths for host standard library (/usr/lib) and for Qt5Bootstrap (/usr/$_arch/lib) are not set correctly by qmake # hence we need insert those paths manually diff --git a/qt5-3d/mingw-w64/PKGBUILD.sh.ep b/qt5-3d/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..1041ee28 --- /dev/null +++ b/qt5-3d/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,28 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('i686' 'x86_64') +pkgdesc="C++ and QML APIs for easy inclusion of 3D graphics (mingw-w64)" +depends=('mingw-w64-qt5-declarative') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL3' 'FDL' 'custom') +\ +% content_for prepare => begin + + # ensure qgltf is linked against zlib + echo 'LIBS += -L/usr/lib -lz' >> tools/qgltf/qgltf.pro +% end +\ +% content_for build_config_before_make => begin + + # Search paths for host standard library (/usr/lib) and for Qt5Bootstrap (/usr/$_arch/lib) are not set correctly by qmake + # hence we need insert those paths manually + make qmake_all + find ./tools -type f -iname 'Makefile' -exec sed -i "s|-lQt5Bootstrap|-L/usr/$_arch/lib -lQt5Bootstrap|g" {} \; + +% end diff --git a/qt5-3d/mingw-w64/qt3d-sha256.txt b/qt5-3d/mingw-w64/qt3d-sha256.txt new file mode 100644 index 00000000..a7a38bf9 --- /dev/null +++ b/qt5-3d/mingw-w64/qt3d-sha256.txt @@ -0,0 +1 @@ +515b57d0f99be48f70817cf73bc8a0c0e63f7c9c41dbf35fc8baf065fc752515 diff --git a/qt5-activeqt/mingw-w64/PKGBUILD b/qt5-activeqt/mingw-w64/PKGBUILD index b7288822..9ac74d51 100644 --- a/qt5-activeqt/mingw-w64/PKGBUILD +++ b/qt5-activeqt/mingw-w64/PKGBUILD @@ -4,6 +4,12 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + +# All patches are managed at https://github.com/Martchus/qtactiveqt + # Only includes static versions because this module seems to enforce # being built as static library. @@ -15,9 +21,9 @@ arch=('any') pkgdesc="ActiveX integration framework (mingw-w64)" depends=('mingw-w64-qt5-base') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'python') +license=('GPL3' 'LGPL3' 'LGPL2.1' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL3' 'LGPL2.1' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz" @@ -28,6 +34,7 @@ sha256sums=('0bfb32189a79af97c86e4591c8b11fa47cec53b1b2a81c7cf20b2e0a70a051b0' '247b0f5f8d46cd68ee32c838e3fe4c5eda44813a8be51163243d96eb05e92a35') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ @@ -49,7 +56,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-activeqt/mingw-w64/PKGBUILD.sh.ep b/qt5-activeqt/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..3edb01d9 --- /dev/null +++ b/qt5-activeqt/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,24 @@ +% layout 'mingw-w64-qt5-module', shared_config => 0; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +% end +\ +% content_for comment_header => begin +# Only includes static versions because this module seems to enforce +# being built as static library. + +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="ActiveX integration framework (mingw-w64)" +depends=('mingw-w64-qt5-base') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'python') +license=('GPL3' 'LGPL3' 'LGPL2.1' 'FDL' 'custom') +\ +% content_for package => begin + +<%== include 'fragments/mingw-w64-qt5-executable_suffix' %>\ +% end diff --git a/qt5-activeqt/mingw-w64/qtactiveqt-sha256.txt b/qt5-activeqt/mingw-w64/qtactiveqt-sha256.txt new file mode 100644 index 00000000..3c89d90a --- /dev/null +++ b/qt5-activeqt/mingw-w64/qtactiveqt-sha256.txt @@ -0,0 +1 @@ +0bfb32189a79af97c86e4591c8b11fa47cec53b1b2a81c7cf20b2e0a70a051b0 diff --git a/qt5-base/mingw-w64/qtactiveqt-sha256.txt b/qt5-base/mingw-w64/qtactiveqt-sha256.txt new file mode 100644 index 00000000..f92b2481 --- /dev/null +++ b/qt5-base/mingw-w64/qtactiveqt-sha256.txt @@ -0,0 +1 @@ +4ef921c0f208a1624439801da8b3f4344a3793b660ce1095f2b7f5c4246b9463 diff --git a/qt5-canvas3d/mingw-w64/PKGBUILD b/qt5-canvas3d/mingw-w64/PKGBUILD index 922e5518..e05c4407 100644 --- a/qt5-canvas3d/mingw-w64/PKGBUILD +++ b/qt5-canvas3d/mingw-w64/PKGBUILD @@ -3,30 +3,35 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtcanvas3d -pkgname="mingw-w64-qt5-canvas3d" +pkgname=mingw-w64-qt5-canvas3d pkgver=5.12.3 pkgrel=1 arch=('any') pkgdesc="A JavaScript 3D rendering API for Qt Quick (mingw-w64)" depends=('mingw-w64-qt5-declarative') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('c0821f1232c6bcd00648af9a5d1eade8e0397c6bfff60621e0fcdfc75561baea') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -37,7 +42,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-canvas3d/mingw-w64/PKGBUILD.sh.ep b/qt5-canvas3d/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..eb3014ae --- /dev/null +++ b/qt5-canvas3d/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,17 @@ +% layout 'mingw-w64-qt5-module'; +\ +pkgver=5.12.3 +pkgrel=1 +arch=('any') +pkgdesc="A JavaScript 3D rendering API for Qt Quick (mingw-w64)" +depends=('mingw-w64-qt5-declarative') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') +\ +% content_for package_config_after_install => begin + + # ensure to get the import lib, too + [[ "${_config##*=}" == 'shared' ]] && + install -Dm755 qml/QtCanvas3D/*.dll -t "${pkgdir}/usr/${_arch}/bin" && + install -Dm644 qml/QtCanvas3D/*.dll.a -t "${pkgdir}/usr/${_arch}/lib" +% end diff --git a/qt5-canvas3d/mingw-w64/qtcanvas3d-sha256.txt b/qt5-canvas3d/mingw-w64/qtcanvas3d-sha256.txt new file mode 100644 index 00000000..5705190c --- /dev/null +++ b/qt5-canvas3d/mingw-w64/qtcanvas3d-sha256.txt @@ -0,0 +1 @@ +c0821f1232c6bcd00648af9a5d1eade8e0397c6bfff60621e0fcdfc75561baea diff --git a/qt5-charts/mingw-w64/PKGBUILD b/qt5-charts/mingw-w64/PKGBUILD index 6291e061..0a2b82d0 100644 --- a/qt5-charts/mingw-w64/PKGBUILD +++ b/qt5-charts/mingw-w64/PKGBUILD @@ -3,11 +3,15 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtcharts -pkgname="mingw-w64-qt5-charts" +pkgname=mingw-w64-qt5-charts pkgver=5.14.0 pkgrel=1 arch=('any') @@ -15,19 +19,20 @@ pkgdesc="Provides a set of easy to use chart components (mingw-w64)" depends=('mingw-w64-qt5-base' 'mingw-w64-pkg-config') optdepends=('mingw-w64-qt5-declarative: QML bindings') makedepends=('mingw-w64-gcc' 'mingw-w64-qt5-declarative') +license=('GPL3' 'LGPL' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('ce7e22ca84e6a5fb85d6eb9e196407e0fa02848187548a2c388668e71f41a346') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -38,7 +43,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-charts/mingw-w64/PKGBUILD.sh.ep b/qt5-charts/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..9fc9fd99 --- /dev/null +++ b/qt5-charts/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,10 @@ +% layout 'mingw-w64-qt5-module'; +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Provides a set of easy to use chart components (mingw-w64)" +depends=('mingw-w64-qt5-base' 'mingw-w64-pkg-config') +optdepends=('mingw-w64-qt5-declarative: QML bindings') +makedepends=('mingw-w64-gcc' 'mingw-w64-qt5-declarative') +license=('GPL3' 'LGPL' 'FDL' 'custom') diff --git a/qt5-charts/mingw-w64/qtcharts-sha256.txt b/qt5-charts/mingw-w64/qtcharts-sha256.txt new file mode 100644 index 00000000..29d8a5e5 --- /dev/null +++ b/qt5-charts/mingw-w64/qtcharts-sha256.txt @@ -0,0 +1 @@ +ce7e22ca84e6a5fb85d6eb9e196407e0fa02848187548a2c388668e71f41a346 diff --git a/qt5-connectivity/mingw-w64/PKGBUILD b/qt5-connectivity/mingw-w64/PKGBUILD index 1a742ee7..d4d15f3a 100644 --- a/qt5-connectivity/mingw-w64/PKGBUILD +++ b/qt5-connectivity/mingw-w64/PKGBUILD @@ -3,20 +3,26 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + +# All patches are managed at https://github.com/Martchus/qtconnectivity + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtconnectivity -pkgname="mingw-w64-qt5-connectivity" +pkgname=mingw-w64-qt5-connectivity pkgver=5.14.0 pkgrel=1 arch=('any') pkgdesc="Provides access to Bluetooth hardware (mingw-w64)" depends=('mingw-w64-qt5-base') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'mingw-w64-qt5-declarative') +license=('GPL3' 'LGPL3' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL3' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz" @@ -25,10 +31,11 @@ sha256sums=('2843b3b479d0feba0624eb4ae41382b99db77b87a6b7dea5aacdf3b33644f0bd' 'b5b231fa866711f69107a4b0c65e79acf82986cb0c0e0c1184ef79ef46d79518') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -41,7 +48,6 @@ prepare() { done } - build() { cd "${srcdir}/${_pkgfqn}" @@ -49,7 +55,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-connectivity/mingw-w64/PKGBUILD.sh.ep b/qt5-connectivity/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..c9515554 --- /dev/null +++ b/qt5-connectivity/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,9 @@ +% layout 'mingw-w64-qt5-module'; +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Provides access to Bluetooth hardware (mingw-w64)" +depends=('mingw-w64-qt5-base') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'mingw-w64-qt5-declarative') +license=('GPL3' 'LGPL3' 'FDL' 'custom') diff --git a/qt5-connectivity/mingw-w64/qtconnectivity-sha256.txt b/qt5-connectivity/mingw-w64/qtconnectivity-sha256.txt new file mode 100644 index 00000000..9e65f856 --- /dev/null +++ b/qt5-connectivity/mingw-w64/qtconnectivity-sha256.txt @@ -0,0 +1 @@ +2843b3b479d0feba0624eb4ae41382b99db77b87a6b7dea5aacdf3b33644f0bd diff --git a/qt5-datavis3d/mingw-w64/PKGBUILD b/qt5-datavis3d/mingw-w64/PKGBUILD index 7126e1fa..c41dd779 100644 --- a/qt5-datavis3d/mingw-w64/PKGBUILD +++ b/qt5-datavis3d/mingw-w64/PKGBUILD @@ -3,11 +3,15 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtdatavis3d -pkgname="mingw-w64-qt5-datavis3d" +pkgname=mingw-w64-qt5-datavis3d pkgver=5.14.0 pkgrel=1 arch=('any') @@ -24,10 +28,11 @@ source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/subm sha256sums=('ba7269413b04de74086e2b876f3e4d39e90f14f363011ff36d082485dc683eb1') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -38,7 +43,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-datavis3d/mingw-w64/PKGBUILD.sh.ep b/qt5-datavis3d/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..6390723c --- /dev/null +++ b/qt5-datavis3d/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,10 @@ +% layout 'mingw-w64-qt5-module'; +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Qt Data Visualization module (mingw-w64)" +depends=('mingw-w64-qt5-base') +optdepends=('mingw-w64-qt5-declarative: QML bindings') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'mingw-w64-qt5-declarative') +license=('GPL3' 'LGPL' 'FDL' 'custom') diff --git a/qt5-datavis3d/mingw-w64/qtdatavis3d-sha256.txt b/qt5-datavis3d/mingw-w64/qtdatavis3d-sha256.txt new file mode 100644 index 00000000..3a37149f --- /dev/null +++ b/qt5-datavis3d/mingw-w64/qtdatavis3d-sha256.txt @@ -0,0 +1 @@ +ba7269413b04de74086e2b876f3e4d39e90f14f363011ff36d082485dc683eb1 diff --git a/qt5-declarative/mingw-w64/PKGBUILD b/qt5-declarative/mingw-w64/PKGBUILD index a4062351..4a70aba8 100755 --- a/qt5-declarative/mingw-w64/PKGBUILD +++ b/qt5-declarative/mingw-w64/PKGBUILD @@ -1,15 +1,20 @@ # Maintainer: Martchus +# Contributor: ant32 # Contributor: Filip Brcic # Contributor: ohmyarch # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. -# Includes dynamic and static versions; if only one version is requried, just -# set $NO_STATIC_LIBS or $NO_SHARED_LIBS. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. # All patches are managed at https://github.com/Martchus/qtdeclarative +# Includes dynamic and static versions; if only one version is requried, just +# set $NO_STATIC_LIBS or $NO_SHARED_LIBS. + _qt_module=qtdeclarative pkgname=mingw-w64-qt5-declarative pkgver=5.14.0 @@ -18,9 +23,9 @@ arch=('i686' 'x86_64') pkgdesc='Classes for QML and JavaScript languages (mingw-w64)' depends=('mingw-w64-qt5-base') makedepends=('mingw-w64-gcc' 'mingw-w64-vulkan-headers' 'mingw-w64-pkg-config' 'python') +license=('GPL3' 'LGPL3' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL3' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz" @@ -31,6 +36,7 @@ sha256sums=('bbf11ee33d6f0d6bd6c4dc641d4f2aafbc7c6cd3b421a658955302d441dc9d8e' '71dc45ee6a81cf3b612f83942283f5514c19d66a76736cb6bd84db58e6f82322') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ @@ -49,12 +55,12 @@ prepare() { build() { cd "${srcdir}/${_pkgfqn}" + for _arch in ${_architectures}; do for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} - + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done @@ -63,6 +69,7 @@ build() { package() { cd "${srcdir}/${_pkgfqn}" + for _arch in ${_architectures}; do for _config in "${_configurations[@]}"; do pushd build-${_arch}-${_config##*=} @@ -114,8 +121,6 @@ package() { done # make sure the executables don't conflict with their mingw-qt4 counterpart - # (Actually only qmlplugindump.exe conflicts, but for consistency all executables - # will be suffixed.) for _arch in ${_architectures}; do for exe_file in "${pkgdir}/usr/${_arch}/bin/"*.exe; do [[ -f $exe_file ]] && mv "${exe_file}" "${exe_file%.exe}-qt5.exe" diff --git a/qt5-declarative/mingw-w64/PKGBUILD.sh.ep b/qt5-declarative/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..9849b3e6 --- /dev/null +++ b/qt5-declarative/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,26 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +# Contributor: Filip Brcic +# Contributor: ohmyarch +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('i686' 'x86_64') +pkgdesc='Classes for QML and JavaScript languages (mingw-w64)' +depends=('mingw-w64-qt5-base') +makedepends=('mingw-w64-gcc' 'mingw-w64-vulkan-headers' 'mingw-w64-pkg-config' 'python') +license=('GPL3' 'LGPL3' 'FDL' 'custom') +\ +% content_for package => begin + +<%== include 'fragments/mingw-w64-qt5-executable_suffix' %>\ +% end +\ +% content_for package_arch => begin + + # strip native static libraries + find "${pkgdir}/usr/${_arch}" -name 'libQt5QmlDevTools.a' -exec strip -g {} \; +% end diff --git a/qt5-declarative/mingw-w64/qtdeclarative-sha256.txt b/qt5-declarative/mingw-w64/qtdeclarative-sha256.txt new file mode 100644 index 00000000..d8660e54 --- /dev/null +++ b/qt5-declarative/mingw-w64/qtdeclarative-sha256.txt @@ -0,0 +1 @@ +bbf11ee33d6f0d6bd6c4dc641d4f2aafbc7c6cd3b421a658955302d441dc9d8e diff --git a/qt5-gamepad/mingw-w64/PKGBUILD b/qt5-gamepad/mingw-w64/PKGBUILD index ce991021..bf769ae6 100644 --- a/qt5-gamepad/mingw-w64/PKGBUILD +++ b/qt5-gamepad/mingw-w64/PKGBUILD @@ -3,11 +3,15 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtgamepad -pkgname="mingw-w64-qt5-gamepad" +pkgname=mingw-w64-qt5-gamepad pkgver=5.14.0 pkgrel=1 arch=('any') @@ -15,19 +19,20 @@ pkgdesc="Adds support for getting events from gamepad devices (mingw-w64)" depends=('mingw-w64-qt5-base' 'mingw-w64-sdl2') optdepends=('mingw-w64-qt5-declarative: QML bindings') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'mingw-w64-qt5-declarative') +license=('GPL3' 'LGPL' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('3d9835538afe7299e42d53a7bb85fb90aecdc714846671582139ff80d752a657') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -38,7 +43,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-gamepad/mingw-w64/PKGBUILD.sh.ep b/qt5-gamepad/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..95bb22b8 --- /dev/null +++ b/qt5-gamepad/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,10 @@ +% layout 'mingw-w64-qt5-module'; +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Adds support for getting events from gamepad devices (mingw-w64)" +depends=('mingw-w64-qt5-base' 'mingw-w64-sdl2') +optdepends=('mingw-w64-qt5-declarative: QML bindings') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'mingw-w64-qt5-declarative') +license=('GPL3' 'LGPL' 'FDL' 'custom') diff --git a/qt5-gamepad/mingw-w64/qtgamepad-sha256.txt b/qt5-gamepad/mingw-w64/qtgamepad-sha256.txt new file mode 100644 index 00000000..60084500 --- /dev/null +++ b/qt5-gamepad/mingw-w64/qtgamepad-sha256.txt @@ -0,0 +1 @@ +3d9835538afe7299e42d53a7bb85fb90aecdc714846671582139ff80d752a657 diff --git a/qt5-graphicaleffects/mingw-w64/PKGBUILD b/qt5-graphicaleffects/mingw-w64/PKGBUILD index 63cc074d..240c9f3a 100644 --- a/qt5-graphicaleffects/mingw-w64/PKGBUILD +++ b/qt5-graphicaleffects/mingw-w64/PKGBUILD @@ -5,30 +5,35 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtgraphicaleffects -pkgname="mingw-w64-qt5-graphicaleffects" +pkgname=mingw-w64-qt5-graphicaleffects pkgver=5.14.0 pkgrel=1 arch=('any') pkgdesc="Graphical effects for use with Qt Quick 2 (mingw-w64)" depends=('mingw-w64-qt5-declarative') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL' 'FDL' 'custom') url='https://www.qt.io/' -_pkgfqn="${_qt_module}-everywhere-src-$pkgver" +_pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('d931637d97cbb0e57bf2d78bf0eb06494f21a05d2e6a17e7c4f4f2a2fabc23cd') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -39,7 +44,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-graphicaleffects/mingw-w64/PKGBUILD.sh.ep b/qt5-graphicaleffects/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..b70984cf --- /dev/null +++ b/qt5-graphicaleffects/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,14 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +# Contributor: Filip Brcic +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Graphical effects for use with Qt Quick 2 (mingw-w64)" +depends=('mingw-w64-qt5-declarative') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') diff --git a/qt5-graphicaleffects/mingw-w64/foo.txt b/qt5-graphicaleffects/mingw-w64/foo.txt new file mode 100644 index 00000000..ea973641 --- /dev/null +++ b/qt5-graphicaleffects/mingw-w64/foo.txt @@ -0,0 +1 @@ +mingw-w64-qt5-graphicaleffects; d931637d97cbb0e57bf2d78bf0eb06494f21a05d2e6a17e7c4f4f2a2fabc23cd diff --git a/qt5-graphicaleffects/mingw-w64/qtgraphicaleffects-sha256.txt b/qt5-graphicaleffects/mingw-w64/qtgraphicaleffects-sha256.txt new file mode 100644 index 00000000..8a4966be --- /dev/null +++ b/qt5-graphicaleffects/mingw-w64/qtgraphicaleffects-sha256.txt @@ -0,0 +1 @@ +d931637d97cbb0e57bf2d78bf0eb06494f21a05d2e6a17e7c4f4f2a2fabc23cd diff --git a/qt5-imageformats/mingw-w64/PKGBUILD b/qt5-imageformats/mingw-w64/PKGBUILD index ace18c54..cfd90308 100644 --- a/qt5-imageformats/mingw-w64/PKGBUILD +++ b/qt5-imageformats/mingw-w64/PKGBUILD @@ -5,11 +5,15 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtimageformats -pkgname="mingw-w64-qt5-imageformats" +pkgname=mingw-w64-qt5-imageformats pkgver=5.14.0 pkgrel=1 arch=('any') @@ -20,19 +24,20 @@ depends=('mingw-w64-qt5-base') #depends+=('mingw-w64-libmng') # for MNG #depends+=('mingw-w64-libwebp') # for WebP makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('959f169af5fc09ef248062a457b78a667acafee71e57ea14fb14ff6f5dd898d5') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -43,7 +48,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-imageformats/mingw-w64/PKGBUILD.sh.ep b/qt5-imageformats/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..4b452d6c --- /dev/null +++ b/qt5-imageformats/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,18 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +# Contributor: Filip Brcic +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Plugins for additional image formats: TIFF, MNG, TGA, WBMP (mingw-w64)" +depends=('mingw-w64-qt5-base') +# these dependencies will enable further functionality +#depends+=('mingw-w64-jasper') # for JPEG-2000 Part-1 +#depends+=('mingw-w64-libmng') # for MNG +#depends+=('mingw-w64-libwebp') # for WebP +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') diff --git a/qt5-imageformats/mingw-w64/qtimageformats-sha256.txt b/qt5-imageformats/mingw-w64/qtimageformats-sha256.txt new file mode 100644 index 00000000..dde7411e --- /dev/null +++ b/qt5-imageformats/mingw-w64/qtimageformats-sha256.txt @@ -0,0 +1 @@ +959f169af5fc09ef248062a457b78a667acafee71e57ea14fb14ff6f5dd898d5 diff --git a/qt5-location/mingw-w64/PKGBUILD b/qt5-location/mingw-w64/PKGBUILD index 82ad308c..e0d08db6 100644 --- a/qt5-location/mingw-w64/PKGBUILD +++ b/qt5-location/mingw-w64/PKGBUILD @@ -4,13 +4,19 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + +# All patches are managed at https://github.com/Martchus/qtlocation + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. # Skip building mapboxgl as it increases compile time significantly and # likely not a lot of people actually using it; if you need it, just remove the # following line: -_mapboxcfg='QT.global.disabled_features+=geoservices_mapboxgl' +_additional_qmake_args+='QT.global.disabled_features+=geoservices_mapboxgl' _qt_module=qtlocation pkgname=mingw-w64-qt5-location @@ -20,9 +26,9 @@ arch=('any') pkgdesc='Provides access to position, satellite and area monitoring classes (mingw-w64)' depends=('mingw-w64-qt5-base' 'mingw-w64-qt5-declarative') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz" @@ -31,10 +37,11 @@ sha256sums=('87906fd100dd93ed495a4db2c435dcfab073d399ea11d5e18727cc782fac4cd1' 'aa8551a7c6721ac98ebe2b3231cdf1d9d78fc0181409a31c9dd1d038afca50f6') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -54,7 +61,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_mapboxcfg} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-location/mingw-w64/PKGBUILD.sh.ep b/qt5-location/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..1bd86ea5 --- /dev/null +++ b/qt5-location/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,21 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +% end +\ +% content_for comment_header => begin +# Skip building mapboxgl as it increases compile time significantly and +# likely not a lot of people actually using it; if you need it, just remove the +# following line: +_additional_qmake_args+='QT.global.disabled_features+=geoservices_mapboxgl' + +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc='Provides access to position, satellite and area monitoring classes (mingw-w64)' +depends=('mingw-w64-qt5-base' 'mingw-w64-qt5-declarative') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') diff --git a/qt5-location/mingw-w64/qtlocation-sha256.txt b/qt5-location/mingw-w64/qtlocation-sha256.txt new file mode 100644 index 00000000..633f5efe --- /dev/null +++ b/qt5-location/mingw-w64/qtlocation-sha256.txt @@ -0,0 +1 @@ +87906fd100dd93ed495a4db2c435dcfab073d399ea11d5e18727cc782fac4cd1 diff --git a/qt5-multimedia/mingw-w64/0001-Recorder-includes-to-prevent-conflict-with-vsnprintf.patch b/qt5-multimedia/mingw-w64/0001-Recorder-includes-to-prevent-conflict-with-vsnprintf.patch index 25fd9e85..6ef32ef4 100644 --- a/qt5-multimedia/mingw-w64/0001-Recorder-includes-to-prevent-conflict-with-vsnprintf.patch +++ b/qt5-multimedia/mingw-w64/0001-Recorder-includes-to-prevent-conflict-with-vsnprintf.patch @@ -1,7 +1,7 @@ From 1237e1525925542c935056f5ab7099efe34ca0eb Mon Sep 17 00:00:00 2001 From: Martchus Date: Sun, 25 Sep 2016 21:36:56 +0200 -Subject: [PATCH 1/3] Recorder includes to prevent conflict with vsnprintf +Subject: [PATCH 1/4] Recorder includes to prevent conflict with vsnprintf Some files #include This is a C header which also #include's stdio.h which adds a #define vsnprintf diff --git a/qt5-multimedia/mingw-w64/0002-Fix-build-with-ANGLE.patch b/qt5-multimedia/mingw-w64/0002-Fix-build-with-ANGLE.patch index 3cd7f5e8..c26e3811 100644 --- a/qt5-multimedia/mingw-w64/0002-Fix-build-with-ANGLE.patch +++ b/qt5-multimedia/mingw-w64/0002-Fix-build-with-ANGLE.patch @@ -1,7 +1,7 @@ From 13db921fea3e466bc60a66559465dd3f40a77845 Mon Sep 17 00:00:00 2001 From: Jose Santiago Date: Thu, 3 Nov 2016 14:36:10 -0500 -Subject: [PATCH 2/3] Fix build with ANGLE +Subject: [PATCH 2/4] Fix build with ANGLE --- src/plugins/common/evr/evrd3dpresentengine.cpp | 6 +++--- diff --git a/qt5-multimedia/mingw-w64/0003-Link-directshow-plugin-against-libamstrmid.patch b/qt5-multimedia/mingw-w64/0003-Link-directshow-plugin-against-libamstrmid.patch index fe3c371d..740bf639 100644 --- a/qt5-multimedia/mingw-w64/0003-Link-directshow-plugin-against-libamstrmid.patch +++ b/qt5-multimedia/mingw-w64/0003-Link-directshow-plugin-against-libamstrmid.patch @@ -1,7 +1,7 @@ From 4015d046c4a5432f907e057cbe35702c5f5e44d4 Mon Sep 17 00:00:00 2001 From: Martchus Date: Mon, 24 Sep 2018 20:10:19 +0200 -Subject: [PATCH 3/3] Link directshow plugin against libamstrmid +Subject: [PATCH 3/4] Link directshow plugin against libamstrmid Fixes errors about undefined references to IID_IMFVideoDeviceID, IID_IMFVideoPresenter, IID_IMFTopologyServiceLookupClient and diff --git a/qt5-multimedia/mingw-w64/0004-Fix-case-of-header-file-for-building-with-mingw-w64.patch b/qt5-multimedia/mingw-w64/0004-Fix-case-of-header-file-for-building-with-mingw-w64.patch new file mode 100644 index 00000000..a5fe8fce --- /dev/null +++ b/qt5-multimedia/mingw-w64/0004-Fix-case-of-header-file-for-building-with-mingw-w64.patch @@ -0,0 +1,96 @@ +From b94e25c8537fc12cb162dd7b5cac3bd43908c1d9 Mon Sep 17 00:00:00 2001 +From: Martchus +Date: Sun, 29 Dec 2019 00:39:46 +0100 +Subject: [PATCH 4/4] Fix case of header file for building with mingw-w64 + +Change-Id: Ie0e6599234c38c5e5a75b681a911f3728871861e +--- + config.tests/wshellitem/main.cpp | 2 +- + src/plugins/directshow/player/directshowmetadatacontrol.cpp | 2 +- + src/plugins/winrt/qwinrtcameracontrol.cpp | 2 +- + src/plugins/wmf/player/mfplayersession.cpp | 2 +- + src/plugins/wmf/player/mftvideo.cpp | 2 +- + src/plugins/wmf/sourceresolver.cpp | 2 +- + 6 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/config.tests/wshellitem/main.cpp b/config.tests/wshellitem/main.cpp +index 799ee555..459992b7 100644 +--- a/config.tests/wshellitem/main.cpp ++++ b/config.tests/wshellitem/main.cpp +@@ -26,7 +26,7 @@ + ** + ****************************************************************************/ + +-#include ++#include + + int main(int, char**) + { +diff --git a/src/plugins/directshow/player/directshowmetadatacontrol.cpp b/src/plugins/directshow/player/directshowmetadatacontrol.cpp +index 46674143..d9864870 100644 +--- a/src/plugins/directshow/player/directshowmetadatacontrol.cpp ++++ b/src/plugins/directshow/player/directshowmetadatacontrol.cpp +@@ -64,7 +64,7 @@ + #endif + + #if QT_CONFIG(wshellitem) +-#include ++#include + #include + #include + +diff --git a/src/plugins/winrt/qwinrtcameracontrol.cpp b/src/plugins/winrt/qwinrtcameracontrol.cpp +index ede3f6b0..98dd7c2f 100644 +--- a/src/plugins/winrt/qwinrtcameracontrol.cpp ++++ b/src/plugins/winrt/qwinrtcameracontrol.cpp +@@ -54,7 +54,7 @@ + + #include + #include +-#include ++#include + #include + #include + #include +diff --git a/src/plugins/wmf/player/mfplayersession.cpp b/src/plugins/wmf/player/mfplayersession.cpp +index 10ba2599..a4e37129 100644 +--- a/src/plugins/wmf/player/mfplayersession.cpp ++++ b/src/plugins/wmf/player/mfplayersession.cpp +@@ -56,7 +56,7 @@ + #include "mfplayersession.h" + #include "mfplayerservice.h" + #include "mfmetadatacontrol.h" +-#include ++#include + #include + #include "sourceresolver.h" + #include "samplegrabber.h" +diff --git a/src/plugins/wmf/player/mftvideo.cpp b/src/plugins/wmf/player/mftvideo.cpp +index 879911d5..9dce654f 100644 +--- a/src/plugins/wmf/player/mftvideo.cpp ++++ b/src/plugins/wmf/player/mftvideo.cpp +@@ -40,7 +40,7 @@ + #include "mftvideo.h" + #include "mfvideoprobecontrol.h" + #include +-#include ++#include + #include + #include + #include +diff --git a/src/plugins/wmf/sourceresolver.cpp b/src/plugins/wmf/sourceresolver.cpp +index c6f4e856..15ef6f0a 100644 +--- a/src/plugins/wmf/sourceresolver.cpp ++++ b/src/plugins/wmf/sourceresolver.cpp +@@ -39,7 +39,7 @@ + + #include "mfstream.h" + #include "sourceresolver.h" +-#include ++#include + #include + #include + #include +-- +2.24.1 + diff --git a/qt5-multimedia/mingw-w64/PKGBUILD b/qt5-multimedia/mingw-w64/PKGBUILD index 9ec43a7a..a7b6c345 100644 --- a/qt5-multimedia/mingw-w64/PKGBUILD +++ b/qt5-multimedia/mingw-w64/PKGBUILD @@ -1,13 +1,18 @@ # Maintainer: Martchus +# Contributor: ant32 # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. -# Includes dynamic and static versions; if only one version is requried, just -# set $NO_STATIC_LIBS or $NO_SHARED_LIBS. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. # All patches are managed at https://github.com/Martchus/qtmultimedia +# Includes dynamic and static versions; if only one version is requried, just +# set $NO_STATIC_LIBS or $NO_SHARED_LIBS. + _qt_module=qtmultimedia pkgname=mingw-w64-qt5-multimedia pkgver=5.14.0 @@ -16,34 +21,31 @@ arch=('any') pkgdesc='Classes for audio, video, radio and camera functionality (mingw-w64)' depends=('mingw-w64-qt5-base' 'mingw-w64-qt5-declarative') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz" '0001-Recorder-includes-to-prevent-conflict-with-vsnprintf.patch' '0002-Fix-build-with-ANGLE.patch' - '0003-Link-directshow-plugin-against-libamstrmid.patch') + '0003-Link-directshow-plugin-against-libamstrmid.patch' + '0004-Fix-case-of-header-file-for-building-with-mingw-w64.patch') sha256sums=('e7901aa32fe71f1409cf73a0c62f27b98f434688e7b16ea8591b29cd8f90ad5e' - 'cacf75d26ac096fb4956bd95a21bfdb591f9170dc34d03435c4514e257a11f70' - '71707819e586f4c520d17791677a0541325cbace2e34a588bca2384343124f1f' - '70e0c12297ea88f582f45870028176c95da421a63ac3cf4f94637a9f149db91b') + '8c56b72c86c49d2f0c1830c2c81b8a66f11d7ffc08bffd1c95e5497258957d91' + 'f7f55c1506da0b75cb4e141fc2a9d97b5a5c5970f8882b160fc153b256b8c2b2' + '591a443309680b22e020a7c0c4910c121c9d58afba5bd1ad80314214162fa135' + '6ea13a806530368e20405bc5b489b2435227d2a199e49ce2705998afa10d0b81') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') -link_header_files() { - for header in "$@"; do - ln -sf "/usr/${_arch}/include/${header,,}" "./sysinclude/${header}" - done -} - prepare() { cd "${srcdir}/${_pkgfqn}" @@ -60,10 +62,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - # Header are case sensitive under Linux, provide symlinks to prevent compile errors - mkdir -p ./sysinclude/qtgui && link_header_files {ShlObj,Evr9,Mferror}.h - ln -sf "/usr/${_arch}/include/qt/QtGui/qguiapplication.h" './sysinclude/qtgui/qguiapplication.h' - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} INCLUDEPATH+="${srcdir}/${_pkgfqn}/build-${_arch}/sysinclude" + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-multimedia/mingw-w64/PKGBUILD.sh.ep b/qt5-multimedia/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..70de9c86 --- /dev/null +++ b/qt5-multimedia/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,13 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc='Classes for audio, video, radio and camera functionality (mingw-w64)' +depends=('mingw-w64-qt5-base' 'mingw-w64-qt5-declarative') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') diff --git a/qt5-multimedia/mingw-w64/qtmultimedia-sha256.txt b/qt5-multimedia/mingw-w64/qtmultimedia-sha256.txt new file mode 100644 index 00000000..24d43e83 --- /dev/null +++ b/qt5-multimedia/mingw-w64/qtmultimedia-sha256.txt @@ -0,0 +1 @@ +e7901aa32fe71f1409cf73a0c62f27b98f434688e7b16ea8591b29cd8f90ad5e diff --git a/qt5-networkauth/mingw-w64/PKGBUILD b/qt5-networkauth/mingw-w64/PKGBUILD index 52b0e5e3..f873e1f3 100644 --- a/qt5-networkauth/mingw-w64/PKGBUILD +++ b/qt5-networkauth/mingw-w64/PKGBUILD @@ -1,13 +1,18 @@ # Maintainer: Martchus +# Contributor: ant32 # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtnetworkauth -pkgname="mingw-w64-qt5-networkauth" +pkgname=mingw-w64-qt5-networkauth pkgver=5.14.0 pkgrel=1 arch=('any') @@ -15,19 +20,20 @@ pkgdesc="Network authentication module (mingw-w64)" depends=('mingw-w64-qt5-base') optdepends=() makedepends=('mingw-w64-gcc') +license=('GPL3' 'LGPL3' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL3' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('16e8e9ed817a9cf1373f8ec57e4a6da9983fc8c5c80d0c61e092414d25472d11') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -38,7 +44,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-networkauth/mingw-w64/PKGBUILD.sh.ep b/qt5-networkauth/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..f7ff2305 --- /dev/null +++ b/qt5-networkauth/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,14 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Network authentication module (mingw-w64)" +depends=('mingw-w64-qt5-base') +optdepends=() +makedepends=('mingw-w64-gcc') +license=('GPL3' 'LGPL3' 'FDL' 'custom') diff --git a/qt5-networkauth/mingw-w64/qtnetworkauth-sha256.txt b/qt5-networkauth/mingw-w64/qtnetworkauth-sha256.txt new file mode 100644 index 00000000..780b5415 --- /dev/null +++ b/qt5-networkauth/mingw-w64/qtnetworkauth-sha256.txt @@ -0,0 +1 @@ +16e8e9ed817a9cf1373f8ec57e4a6da9983fc8c5c80d0c61e092414d25472d11 diff --git a/qt5-quick1/mingw-w64/PKGBUILD.sh.ep b/qt5-quick1/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..6bbc53e9 --- /dev/null +++ b/qt5-quick1/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,16 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +# Contributor: Filip Brcic +% end +\ +pkgver=5.5.1 +pkgrel=1 +arch=('any') +pkgdesc="Qt Declarative is provided for Qt 4 compatibility (mingw-w64)" +depends=('mingw-w64-qt5-base' 'mingw-w64-qt5-script' 'mingw-w64-qt5-tools') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +options=('!strip' '!buildflags' 'staticlibs') +groups=('mingw-w64-qt5') +license=('GPL3' 'LGPL') diff --git a/qt5-quick1/mingw-w64/qtquick1-sha256.txt b/qt5-quick1/mingw-w64/qtquick1-sha256.txt new file mode 100644 index 00000000..9d8443fd --- /dev/null +++ b/qt5-quick1/mingw-w64/qtquick1-sha256.txt @@ -0,0 +1 @@ +removed by upstream diff --git a/qt5-quickcontrols/mingw-w64/PKGBUILD b/qt5-quickcontrols/mingw-w64/PKGBUILD index 83537990..c0f9715e 100644 --- a/qt5-quickcontrols/mingw-w64/PKGBUILD +++ b/qt5-quickcontrols/mingw-w64/PKGBUILD @@ -5,32 +5,37 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtquickcontrols -pkgname="mingw-w64-qt5-quickcontrols" +pkgname=mingw-w64-qt5-quickcontrols pkgver=5.14.0 pkgrel=1 arch=('any') pkgdesc="Reusable Qt Quick based UI controls to create classic desktop-style user interfaces (mingw-w64)" depends=('mingw-w64-qt5-declarative') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL' 'FDL' 'custom') url='https://www.qt.io/' -_pkgfqn="${_qt_module}-everywhere-src-$pkgver" +_pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('6dd477bcb36a94ab417faab5e607f7a07c217c4ca3f751d8d76d475ab0f3558e') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ - _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=actually_a_shared_build CONFIG+=shared') + _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') build() { cd "${srcdir}/${_pkgfqn}" @@ -39,7 +44,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-quickcontrols/mingw-w64/PKGBUILD.sh.ep b/qt5-quickcontrols/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..c01fbce4 --- /dev/null +++ b/qt5-quickcontrols/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,14 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +# Contributor: Filip Brcic +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Reusable Qt Quick based UI controls to create classic desktop-style user interfaces (mingw-w64)" +depends=('mingw-w64-qt5-declarative') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') diff --git a/qt5-quickcontrols/mingw-w64/qtquickcontrols-sha256.txt b/qt5-quickcontrols/mingw-w64/qtquickcontrols-sha256.txt new file mode 100644 index 00000000..323bc0e9 --- /dev/null +++ b/qt5-quickcontrols/mingw-w64/qtquickcontrols-sha256.txt @@ -0,0 +1 @@ +6dd477bcb36a94ab417faab5e607f7a07c217c4ca3f751d8d76d475ab0f3558e diff --git a/qt5-quickcontrols2/mingw-w64/PKGBUILD b/qt5-quickcontrols2/mingw-w64/PKGBUILD index 44c600fd..66e75ae5 100644 --- a/qt5-quickcontrols2/mingw-w64/PKGBUILD +++ b/qt5-quickcontrols2/mingw-w64/PKGBUILD @@ -5,30 +5,35 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtquickcontrols2 -pkgname="mingw-w64-qt5-quickcontrols2" +pkgname=mingw-w64-qt5-quickcontrols2 pkgver=5.14.0 pkgrel=1 arch=('any') pkgdesc="Reusable Qt Quick based UI controls to create classic desktop-style user interfaces (mingw-w64)" depends=('mingw-w64-qt5-declarative') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL' 'FDL' 'custom') url='https://www.qt.io/' -_pkgfqn="${_qt_module}-everywhere-src-$pkgver" +_pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('827bf86db44ce4f698f172378313db04e1cb81c593e9342bdd95bb1708f27911') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -39,7 +44,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-quickcontrols2/mingw-w64/PKGBUILD.sh.ep b/qt5-quickcontrols2/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..c01fbce4 --- /dev/null +++ b/qt5-quickcontrols2/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,14 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +# Contributor: Filip Brcic +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Reusable Qt Quick based UI controls to create classic desktop-style user interfaces (mingw-w64)" +depends=('mingw-w64-qt5-declarative') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') diff --git a/qt5-quickcontrols2/mingw-w64/qtquickcontrols2-sha256.txt b/qt5-quickcontrols2/mingw-w64/qtquickcontrols2-sha256.txt new file mode 100644 index 00000000..33df69df --- /dev/null +++ b/qt5-quickcontrols2/mingw-w64/qtquickcontrols2-sha256.txt @@ -0,0 +1 @@ +827bf86db44ce4f698f172378313db04e1cb81c593e9342bdd95bb1708f27911 diff --git a/qt5-remoteobjects/mingw-w64/PKGBUILD b/qt5-remoteobjects/mingw-w64/PKGBUILD index d11b9beb..806ff072 100644 --- a/qt5-remoteobjects/mingw-w64/PKGBUILD +++ b/qt5-remoteobjects/mingw-w64/PKGBUILD @@ -3,11 +3,15 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtremoteobjects -pkgname="mingw-w64-qt5-remoteobjects" +pkgname=mingw-w64-qt5-remoteobjects pkgver=5.14.0 pkgrel=1 arch=('i686' 'x86_64') @@ -15,19 +19,20 @@ pkgdesc="Inter-process communication (IPC) module developed for Qt (mingw-w64)" depends=('mingw-w64-qt5-base') optdepends=('mingw-w64-qt5-declarative: QML bindings') makedepends=('mingw-w64-gcc' 'mingw-w64-qt5-declarative') +license=('GPL3' 'LGPL' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('306765539d97c9c5b9e262393b1950d14f487260f2e333019010689de04bd235') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -38,7 +43,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} # search paths for host standard library (/usr/lib) and for Qt5Bootstrap (/usr/$_arch/lib) are not set correctly by qmake # hence we need insert those paths manually diff --git a/qt5-remoteobjects/mingw-w64/PKGBUILD.sh.ep b/qt5-remoteobjects/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..c0d0378d --- /dev/null +++ b/qt5-remoteobjects/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,22 @@ +% layout 'mingw-w64-qt5-module'; +\ +pkgver=5.14.0 +pkgrel=1 +arch=('i686' 'x86_64') +pkgdesc="Inter-process communication (IPC) module developed for Qt (mingw-w64)" +depends=('mingw-w64-qt5-base') +optdepends=('mingw-w64-qt5-declarative: QML bindings') +makedepends=('mingw-w64-gcc' 'mingw-w64-qt5-declarative') +license=('GPL3' 'LGPL' 'FDL' 'custom') +\ +% content_for build_config_before_make => begin + + # search paths for host standard library (/usr/lib) and for Qt5Bootstrap (/usr/$_arch/lib) are not set correctly by qmake + # hence we need insert those paths manually + make qmake_all + find . -type f -iname 'Makefile' -exec sed -i "s|-L/usr/$_arch/lib -lQt5QmlDevTools -lQt5Bootstrap|-L/usr/lib /usr/$_arch/lib/libQt5QmlDevTools.a /usr/$_arch/lib/libQt5Bootstrap.so|g" {} \; + find . -type f -iname 'Makefile' -exec sed -i "s|-L/usr/$_arch/lib -lQt5QmlDevTools|-L/usr/lib /usr/$_arch/lib/libQt5QmlDevTools.a|g" {} \; + find . -type f -iname 'Makefile' -exec sed -i "s|-L/usr/$_arch/lib -lQt5Bootstrap|-L/usr/lib /usr/$_arch/lib/libQt5Bootstrap.so|g" {} \; + find . -type f -iname 'Makefile' -exec sed -i "s|-lQt5Bootstrap ||g" {} \; + +% end diff --git a/qt5-remoteobjects/mingw-w64/qtremoteobjects-sha256.txt b/qt5-remoteobjects/mingw-w64/qtremoteobjects-sha256.txt new file mode 100644 index 00000000..354d47d9 --- /dev/null +++ b/qt5-remoteobjects/mingw-w64/qtremoteobjects-sha256.txt @@ -0,0 +1 @@ +306765539d97c9c5b9e262393b1950d14f487260f2e333019010689de04bd235 diff --git a/qt5-script/mingw-w64/PKGBUILD b/qt5-script/mingw-w64/PKGBUILD index b31a1fbd..258435a6 100644 --- a/qt5-script/mingw-w64/PKGBUILD +++ b/qt5-script/mingw-w64/PKGBUILD @@ -5,11 +5,15 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtscript -pkgname="mingw-w64-qt5-script" +pkgname=mingw-w64-qt5-script pkgver=5.14.0 pkgrel=1 arch=('any') @@ -19,16 +23,19 @@ makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') license=('GPL3' 'LGPL' 'FDL' 'custom') +options=('!strip' '!buildflags' 'staticlibs') +groups=('mingw-w64-qt5') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('6715ed5294013edfc338367b63ee6df2438965e4626435f30837e26a2151d3b9') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -39,7 +46,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-script/mingw-w64/PKGBUILD.sh.ep b/qt5-script/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..9d02619c --- /dev/null +++ b/qt5-script/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,16 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +# Contributor: Filip Brcic +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Classes for making Qt applications scriptable. Provided for Qt 4.x compatibility (mingw-w64)" +depends=('mingw-w64-qt5-base') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +options=('!strip' '!buildflags' 'staticlibs') +groups=('mingw-w64-qt5') +license=('GPL3' 'LGPL' 'FDL' 'custom') diff --git a/qt5-script/mingw-w64/qtscript-sha256.txt b/qt5-script/mingw-w64/qtscript-sha256.txt new file mode 100644 index 00000000..d41b3565 --- /dev/null +++ b/qt5-script/mingw-w64/qtscript-sha256.txt @@ -0,0 +1 @@ +6715ed5294013edfc338367b63ee6df2438965e4626435f30837e26a2151d3b9 diff --git a/qt5-scxml/mingw-w64/PKGBUILD b/qt5-scxml/mingw-w64/PKGBUILD index 33c186a9..fa4c1068 100644 --- a/qt5-scxml/mingw-w64/PKGBUILD +++ b/qt5-scxml/mingw-w64/PKGBUILD @@ -1,34 +1,37 @@ # Maintainer: Martchus -# Contributor: ant32 -# Contributor: Filip Brcic # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtscxml -pkgname="mingw-w64-qt5-scxml" +pkgname=mingw-w64-qt5-scxml pkgver=5.14.0 pkgrel=1 arch=('i686' 'x86_64') pkgdesc="Static and runtime integration of SCXML models into Qt code (mingw-w64)" depends=('mingw-w64-qt5-declarative') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL3' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL3' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('7ed1497dc35f9b5d16a1ad529c3c181973ecae71b31db04aaeb5743f15b4feab') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -39,9 +42,13 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} + + # Search paths for host standard library (/usr/lib) and for Qt5Bootstrap (/usr/$_arch/lib) are not set correctly by qmake + # hence we need insert those paths manually make qmake_all find . -type f -iname 'Makefile' -exec sed -i "s|-L/usr/$_arch/lib -lQt5Bootstrap|-L/usr/lib -L/usr/$_arch/lib -lQt5Bootstrap|g" {} \; + make popd done diff --git a/qt5-scxml/mingw-w64/PKGBUILD.sh.ep b/qt5-scxml/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..72d55d28 --- /dev/null +++ b/qt5-scxml/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,18 @@ +% layout 'mingw-w64-qt5-module'; +\ +pkgver=5.14.0 +pkgrel=1 +arch=('i686' 'x86_64') +pkgdesc="Static and runtime integration of SCXML models into Qt code (mingw-w64)" +depends=('mingw-w64-qt5-declarative') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL3' 'FDL' 'custom') +\ +% content_for build_config_before_make => begin + + # Search paths for host standard library (/usr/lib) and for Qt5Bootstrap (/usr/$_arch/lib) are not set correctly by qmake + # hence we need insert those paths manually + make qmake_all + find . -type f -iname 'Makefile' -exec sed -i "s|-L/usr/$_arch/lib -lQt5Bootstrap|-L/usr/lib -L/usr/$_arch/lib -lQt5Bootstrap|g" {} \; + +% end diff --git a/qt5-scxml/mingw-w64/qtscxml-sha256.txt b/qt5-scxml/mingw-w64/qtscxml-sha256.txt new file mode 100644 index 00000000..61243839 --- /dev/null +++ b/qt5-scxml/mingw-w64/qtscxml-sha256.txt @@ -0,0 +1 @@ +7ed1497dc35f9b5d16a1ad529c3c181973ecae71b31db04aaeb5743f15b4feab diff --git a/qt5-sensors/mingw-w64/PKGBUILD b/qt5-sensors/mingw-w64/PKGBUILD index 5710126f..73a76e69 100644 --- a/qt5-sensors/mingw-w64/PKGBUILD +++ b/qt5-sensors/mingw-w64/PKGBUILD @@ -5,6 +5,10 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. @@ -16,9 +20,8 @@ arch=('any') pkgdesc="Provides access to sensor hardware and motion gesture recognition (mingw-w64)" depends=('mingw-w64-qt5-base' 'mingw-w64-qt5-declarative') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') -options=('!strip' '!buildflags' 'staticlibs') -groups=('mingw-w64-qt5') license=('GPL3' 'LGPL' 'FDL' 'custom') +options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" @@ -26,10 +29,11 @@ source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/subm sha256sums=('306fc19309b218b062eb6415e2a8364c5c3b53c2942e200012d45f0c33717926') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -40,7 +44,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-sensors/mingw-w64/PKGBUILD.sh.ep b/qt5-sensors/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..0cc20003 --- /dev/null +++ b/qt5-sensors/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,14 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +# Contributor: Filip Brcic +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Provides access to sensor hardware and motion gesture recognition (mingw-w64)" +depends=('mingw-w64-qt5-base' 'mingw-w64-qt5-declarative') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') diff --git a/qt5-sensors/mingw-w64/qtsensors-sha256.txt b/qt5-sensors/mingw-w64/qtsensors-sha256.txt new file mode 100644 index 00000000..5f3fcc2d --- /dev/null +++ b/qt5-sensors/mingw-w64/qtsensors-sha256.txt @@ -0,0 +1 @@ +306fc19309b218b062eb6415e2a8364c5c3b53c2942e200012d45f0c33717926 diff --git a/qt5-serialport/mingw-w64/PKGBUILD b/qt5-serialport/mingw-w64/PKGBUILD index e940d240..ba6cf5ad 100644 --- a/qt5-serialport/mingw-w64/PKGBUILD +++ b/qt5-serialport/mingw-w64/PKGBUILD @@ -4,37 +4,42 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtserialport -pkgname="mingw-w64-qt5-serialport" +pkgname=mingw-w64-qt5-serialport pkgver=5.14.0 pkgrel=1 arch=('any') pkgdesc="Provides access to hardware and virtual serial ports (mingw-w64)" depends=('mingw-w64-qt5-base') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL3' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL3' 'FDL' 'custom') url='https://www.qt.io/' -_pkgfqn="${_qt_module}-everywhere-src-$pkgver" -source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/$pkgver/submodules/${_pkgfqn}.tar.xz") +_pkgfqn="${_qt_module}-everywhere-src-${pkgver}" +source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('4b647a66ae4da6b05b41b49ed296012002c1951f8a3ee24e0f2aa493f48e1ed3') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') prepare() { cd "${srcdir}/${_pkgfqn}" - # don't build examples or tests. + # don't build examples or tests sed -i 's/ examples tests//' qtserialport.pro } @@ -45,7 +50,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-serialport/mingw-w64/PKGBUILD.sh.ep b/qt5-serialport/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..0ed86bb3 --- /dev/null +++ b/qt5-serialport/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,19 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Provides access to hardware and virtual serial ports (mingw-w64)" +depends=('mingw-w64-qt5-base') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL3' 'FDL' 'custom') +\ +% content_for prepare => begin + + # don't build examples or tests + sed -i 's/ examples tests//' qtserialport.pro +% end diff --git a/qt5-serialport/mingw-w64/qtserialport-sha256.txt b/qt5-serialport/mingw-w64/qtserialport-sha256.txt new file mode 100644 index 00000000..dd4e7efb --- /dev/null +++ b/qt5-serialport/mingw-w64/qtserialport-sha256.txt @@ -0,0 +1 @@ +4b647a66ae4da6b05b41b49ed296012002c1951f8a3ee24e0f2aa493f48e1ed3 diff --git a/qt5-speech/mingw-w64/PKGBUILD b/qt5-speech/mingw-w64/PKGBUILD index 092c7daa..1ea7d154 100644 --- a/qt5-speech/mingw-w64/PKGBUILD +++ b/qt5-speech/mingw-w64/PKGBUILD @@ -3,11 +3,15 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtspeech -pkgname="mingw-w64-qt5-speech" +pkgname=mingw-w64-qt5-speech pkgver=5.14.0 pkgrel=1 arch=('any') @@ -18,19 +22,20 @@ makedepends=('mingw-w64-gcc') # mingw-w64-flite and mingw-w64-speech-dispatcher are currently not available #optdepends=('mingw-w64-flite: flite TTS backend' 'mingw-w64-speech-dispatcher: speech-dispatcher TTS backend') #makedepends=('mingw-w64-gcc' 'mingw-w64-flite' 'mingw-w64-speech-dispatcher') +license=('GPL3' 'LGPL' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('c62ba6080a779f8a62e727a33c277cf0744426804f6774e1000bdee0799e7725') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -41,7 +46,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-speech/mingw-w64/PKGBUILD.sh.ep b/qt5-speech/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..9bdd3606 --- /dev/null +++ b/qt5-speech/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,13 @@ +% layout 'mingw-w64-qt5-module'; +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Qt module to make text to speech and speech recognition easy (mingw-w64)" +depends=('mingw-w64-qt5-multimedia') +optdepends=() +makedepends=('mingw-w64-gcc') +# mingw-w64-flite and mingw-w64-speech-dispatcher are currently not available +#optdepends=('mingw-w64-flite: flite TTS backend' 'mingw-w64-speech-dispatcher: speech-dispatcher TTS backend') +#makedepends=('mingw-w64-gcc' 'mingw-w64-flite' 'mingw-w64-speech-dispatcher') +license=('GPL3' 'LGPL' 'FDL' 'custom') diff --git a/qt5-speech/mingw-w64/qtspeech-sha256.txt b/qt5-speech/mingw-w64/qtspeech-sha256.txt new file mode 100644 index 00000000..e5d33c12 --- /dev/null +++ b/qt5-speech/mingw-w64/qtspeech-sha256.txt @@ -0,0 +1 @@ +c62ba6080a779f8a62e727a33c277cf0744426804f6774e1000bdee0799e7725 diff --git a/qt5-svg/mingw-w64/PKGBUILD b/qt5-svg/mingw-w64/PKGBUILD index 86c2e044..8fb6a85e 100644 --- a/qt5-svg/mingw-w64/PKGBUILD +++ b/qt5-svg/mingw-w64/PKGBUILD @@ -4,30 +4,35 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtsvg -pkgname="mingw-w64-qt5-svg" +pkgname=mingw-w64-qt5-svg pkgver=5.14.0 pkgrel=1 arch=('any') pkgdesc="Classes for displaying the contents of SVG files (mingw-w64)" depends=('mingw-w64-qt5-base') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('1ee51a66e1996f96bf7fd4c696079c4cb22ea2bc710d47535c1daf3638d8f393') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -38,7 +43,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-svg/mingw-w64/PKGBUILD.sh.ep b/qt5-svg/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..9c5744a2 --- /dev/null +++ b/qt5-svg/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,13 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Classes for displaying the contents of SVG files (mingw-w64)" +depends=('mingw-w64-qt5-base') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') diff --git a/qt5-svg/mingw-w64/qtsvg-sha256.txt b/qt5-svg/mingw-w64/qtsvg-sha256.txt new file mode 100644 index 00000000..65ac549c --- /dev/null +++ b/qt5-svg/mingw-w64/qtsvg-sha256.txt @@ -0,0 +1 @@ +1ee51a66e1996f96bf7fd4c696079c4cb22ea2bc710d47535c1daf3638d8f393 diff --git a/qt5-tools/mingw-w64/PKGBUILD b/qt5-tools/mingw-w64/PKGBUILD index b789f6ae..5d1fce90 100755 --- a/qt5-tools/mingw-w64/PKGBUILD +++ b/qt5-tools/mingw-w64/PKGBUILD @@ -5,26 +5,36 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + +# All patches are managed at https://github.com/Martchus/qttools + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. # For QQuickWidgetPlugin, add mingw-w64-qt5-declarative to dependencies (already present by default) -# For QWebViewPlugin, add mingw-w64-qt5-webkit to dependencies +# For QWebViewPlugin, add mingw-w64-qt5-webkit to dependencies (mingw-w64-qt5-webkit is no longer updated) # For QAxWidgetPlugin, add mingw-w64-qt5-activeqt to dependencies -# All patches are managed at https://github.com/Martchus/qttools +# Note that static MySQL and PostgreSQL plugins are disabled because mariadb-connector-c and posgresql come with their own pthread +# implementation which has conflicting symbols with the pthread library Qt uses leading to errors like: +# /usr/lib/gcc/i686-w64-mingw32/8.2.0/../../../../i686-w64-mingw32/bin/ld: /usr/i686-w64-mingw32/lib/libpthread.a(libwinpthread_la-mutex.o): +# in function `pthread_mutex_lock': /build/mingw-w64-winpthreads/src/mingw-w64-v6.0.0/mingw-w64-libraries/winpthreads/src/mutex.c:187: +# multiple definition of `pthread_mutex_lock'; /usr/i686-w64-mingw32/lib/libpq.a(pthread-win32.o):(.text+0x70): first defined here _qt_module=qttools -pkgname="mingw-w64-qt5-tools" +pkgname=mingw-w64-qt5-tools pkgver=5.14.0 pkgrel=1 arch=('i686' 'x86_64') pkgdesc="A cross-platform application and UI framework (Development Tools, QtHelp; mingw-w64)" depends=('mingw-w64-qt5-declarative') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'mingw-w64-postgresql' 'mingw-w64-mariadb-connector-c' 'mingw-w64-vulkan-headers') +license=('GPL3' 'LGPL3' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL3' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz" @@ -34,14 +44,10 @@ sha256sums=('8d7f8612ab6078fe7289d8a8dd8112b550fd0f51b5455df2dcfba651c30c3adf' _architectures='i686-w64-mingw32 x86_64-w64-mingw32' -# can not use static MySQL and PostgreSQL plugin because mariadb-connector-c and posgresql come with their own pthread implementation -# which has conflicting symbols with the pthread library Qt uses, e.g. one would get the following error message: -#/usr/lib/gcc/i686-w64-mingw32/8.2.0/../../../../i686-w64-mingw32/bin/ld: /usr/i686-w64-mingw32/lib/libpthread.a(libwinpthread_la-mutex.o): in function `pthread_mutex_lock': /build/mingw-w64-winpthreads/src/mingw-w64-v6.0.0/mingw-w64-libraries/winpthreads/src/mutex.c:187: multiple definition of `pthread_mutex_lock'; /usr/i686-w64-mingw32/lib/libpq.a(pthread-win32.o):(.text+0x70): first defined here - [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=no_smart_library_merge QTPLUGIN.sqldrivers=qsqlite QTPLUGIN.sqldrivers+=qsqlodbc CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=no_smart_library_merge QTPLUGIN.sqldrivers=qsqlite QTPLUGIN.sqldrivers+=qsqlodbc CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -61,8 +67,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} - + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done @@ -118,11 +123,6 @@ package() { for tool in lconvert lupdate lrelease windeployqt; do ln -sf "../${_arch}/lib/qt/bin/${tool}" "${pkgdir}/usr/bin/${_arch}-$tool-qt5" done - - # remove phrasebooks - # Would save around 300 KiB on your floppy disk, I keep them by default because - # phrasebooks might be useful when using Linguist - #rm -r "${pkgdir}/usr/${_arch}/share" popd done diff --git a/qt5-tools/mingw-w64/PKGBUILD.sh.ep b/qt5-tools/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..ff0bd43b --- /dev/null +++ b/qt5-tools/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,45 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +# Contributor: Filip Brcic +% end +\ +% content_for comment_header => begin +# For QQuickWidgetPlugin, add mingw-w64-qt5-declarative to dependencies (already present by default) +# For QWebViewPlugin, add mingw-w64-qt5-webkit to dependencies (mingw-w64-qt5-webkit is no longer updated) +# For QAxWidgetPlugin, add mingw-w64-qt5-activeqt to dependencies + +# Note that static MySQL and PostgreSQL plugins are disabled because mariadb-connector-c and posgresql come with their own pthread +# implementation which has conflicting symbols with the pthread library Qt uses leading to errors like: +# /usr/lib/gcc/i686-w64-mingw32/8.2.0/../../../../i686-w64-mingw32/bin/ld: /usr/i686-w64-mingw32/lib/libpthread.a(libwinpthread_la-mutex.o): +# in function `pthread_mutex_lock': /build/mingw-w64-winpthreads/src/mingw-w64-v6.0.0/mingw-w64-libraries/winpthreads/src/mutex.c:187: +# multiple definition of `pthread_mutex_lock'; /usr/i686-w64-mingw32/lib/libpq.a(pthread-win32.o):(.text+0x70): first defined here + +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('i686' 'x86_64') +pkgdesc="A cross-platform application and UI framework (Development Tools, QtHelp; mingw-w64)" +depends=('mingw-w64-qt5-declarative') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'mingw-w64-postgresql' 'mingw-w64-mariadb-connector-c' 'mingw-w64-vulkan-headers') +license=('GPL3' 'LGPL3' 'FDL' 'custom') +\ +% content_for static_config => begin +CONFIG+=no_smart_library_merge QTPLUGIN.sqldrivers=qsqlite QTPLUGIN.sqldrivers+=qsqlodbc \ +% end +\ +% content_for package_config => begin + + # create symlinks for tools + mkdir -p "${pkgdir}/usr/bin" + for tool in lconvert lupdate lrelease windeployqt; do + ln -sf "../${_arch}/lib/qt/bin/${tool}" "${pkgdir}/usr/bin/${_arch}-$tool-qt5" + done +% end +\ +% content_for package => begin + +<%== include 'fragments/mingw-w64-qt5-executable_suffix' %>\ +% end diff --git a/qt5-tools/mingw-w64/qttools-sha256.txt b/qt5-tools/mingw-w64/qttools-sha256.txt new file mode 100644 index 00000000..1f58d339 --- /dev/null +++ b/qt5-tools/mingw-w64/qttools-sha256.txt @@ -0,0 +1 @@ +8d7f8612ab6078fe7289d8a8dd8112b550fd0f51b5455df2dcfba651c30c3adf diff --git a/qt5-translations/mingw-w64/PKGBUILD b/qt5-translations/mingw-w64/PKGBUILD index 5bac0c17..47e7dc83 100644 --- a/qt5-translations/mingw-w64/PKGBUILD +++ b/qt5-translations/mingw-w64/PKGBUILD @@ -5,19 +5,21 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. -# Contains only *.qm files (and no shared/static libs). +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. _qt_module=qttranslations -pkgname="mingw-w64-qt5-translations" +pkgname=mingw-w64-qt5-translations pkgver=5.14.0 pkgrel=1 arch=('any') pkgdesc="A cross-platform application and UI framework (translations, mingw-w64)" depends=('mingw-w64-qt5-base') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'mingw-w64-qt5-tools') +license=('GPL3' 'LGPL3' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL3' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") @@ -25,21 +27,70 @@ sha256sums=('8b7529e102233153bfecc608d3944e11e086421c72e2d4eaf7e95ebbef301609') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' +[[ $NO_SHARED_LIBS ]] || \ + _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') + build() { cd "${srcdir}/${_pkgfqn}" + for _arch in ${_architectures}; do - mkdir -p build-${_arch} && pushd build-${_arch} - ${_arch}-qmake-qt5 ../${_qt_module}.pro - make - popd + for _config in "${_configurations[@]}"; do + msg2 "Building ${_config##*=} version for ${_arch}" + mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} + make + popd + done done } package() { cd "${srcdir}/${_pkgfqn}" + for _arch in ${_architectures}; do - pushd build-${_arch} - make INSTALL_ROOT="${pkgdir}" install - popd + for _config in "${_configurations[@]}"; do + pushd build-${_arch}-${_config##*=} + + make INSTALL_ROOT="$pkgdir" install + + # use prl files from build directory since installed prl files seem to have incorrect QMAKE_PRL_LIBS_FOR_CMAKE + if [[ -d 'lib' ]]; then + pushd 'lib' + find -iname '*.static.prl' -exec cp --target-directory "${pkgdir}/usr/${_arch}/lib" --parents {} + + popd + fi + if [[ -d 'plugins' ]]; then + pushd 'plugins' + find -iname '*.static.prl' -exec cp --target-directory "${pkgdir}/usr/${_arch}/lib/qt/plugins" --parents {} + + popd + fi + + # replace library path in *.prl files so it points to the installed location and not the build directory + find "${pkgdir}/usr/${_arch}/lib" \( -type f -name '*.prl' -o -name '*.pc' \) -exec sed -i -e "s:$PWD/lib:/usr/$_arch/lib:g" {} \; + + # remove prl files for debug version + if ! [[ $MINGW_W64_QT_DEBUG_BUILD ]]; then + for file in $(find "${pkgdir}/usr/${_arch}" -name '*d.prl' -o -name '*d.static.prl'); do + [ -f "${file%d*}${file##*d}" ] && rm "${file}"; + done + fi + + # remove '.static.prl' files + find "${pkgdir}/usr/${_arch}" -name '.static.prl' -delete + + find "${pkgdir}/usr/${_arch}/lib" -maxdepth 1 -name '*.dll' -delete + [ "$NO_STATIC_EXECUTABLES" -a "${_config##*=}" = static -o "$NO_EXECUTABLES" ] && \ + find "${pkgdir}/usr/${_arch}" -name '*.exe' -delete || \ + find "${pkgdir}/usr/${_arch}" -name '*.exe' -exec ${_arch}-strip --strip-all {} \; + find "${pkgdir}/usr/${_arch}" -name '*.dll' -exec ${_arch}-strip --strip-unneeded {} \; + find "${pkgdir}/usr/${_arch}" \( -name '*.a' -not -name 'libQt5QmlDevTools.a' -not -name 'libQt5Bootstrap.a' \) -exec ${_arch}-strip -g {} \; + [[ -d "${pkgdir}/usr/${_arch}/lib/qt/bin/" ]] && \ + find "${pkgdir}/usr/${_arch}/lib/qt/bin/" -exec strip --strip-all {} \; + find "${pkgdir}/usr/${_arch}/lib/" -iname "*.so.$pkgver" -exec strip --strip-unneeded {} \; + popd + done + + # drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "${pkgdir}/usr/${_arch}/lib" -type f -name '*.prl' -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; done } diff --git a/qt5-translations/mingw-w64/PKGBUILD.sh.ep b/qt5-translations/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..11c5b291 --- /dev/null +++ b/qt5-translations/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,14 @@ +% layout 'mingw-w64-qt5-module', static_config => 0; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +# Contributor: Filip Brcic +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="A cross-platform application and UI framework (translations, mingw-w64)" +depends=('mingw-w64-qt5-base') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'mingw-w64-qt5-tools') +license=('GPL3' 'LGPL3' 'FDL' 'custom') diff --git a/qt5-translations/mingw-w64/qttranslations-sha256.txt b/qt5-translations/mingw-w64/qttranslations-sha256.txt new file mode 100644 index 00000000..eb9b5075 --- /dev/null +++ b/qt5-translations/mingw-w64/qttranslations-sha256.txt @@ -0,0 +1 @@ +8b7529e102233153bfecc608d3944e11e086421c72e2d4eaf7e95ebbef301609 diff --git a/qt5-virtualkeyboard/mingw-w64/PKGBUILD b/qt5-virtualkeyboard/mingw-w64/PKGBUILD index 4eb41df6..50d1fbd3 100644 --- a/qt5-virtualkeyboard/mingw-w64/PKGBUILD +++ b/qt5-virtualkeyboard/mingw-w64/PKGBUILD @@ -1,41 +1,42 @@ - # Maintainer: Martchus -# Contributor: ant32 -# Contributor: Filip Brcic # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtvirtualkeyboard -pkgname="mingw-w64-qt5-virtualkeyboard" +pkgname=mingw-w64-qt5-virtualkeyboard +#_fix_deps_of_static_3rdparty_libs='s:\(-L\/.*\/lib.*\.a\) \(\/.*\/libqt\)\(openwnn\|pinyin\|tcime\)\(d*\.a\)\(.*\):\2\3\4 \1 \5:g' # -L is used (pre Qt 5.13) +_fix_deps_of_static_3rdparty_libs='s:\(LIBS *= *\)\(.*\)\(\/build\/.*\/libqt\)\(openwnn\|pinyin\|tcime\)\(d*\.a\)\(.*\):\1 \3\4\5 \2 \6:g' # absolute paths are used (Qt 5.13 and above) pkgver=5.14.0 pkgrel=1 arch=('any') pkgdesc="Virtual keyboard framework (translations, mingw-w64)" depends=('mingw-w64-qt5-declarative' 'mingw-w64-pkg-config' 'mingw-w64-qt5-svg') makedepends=('mingw-w64-gcc') +license=('GPL3') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('2f3362bf7999b912a4e92d0e9b5378089bc8dfcf270fe226bc68f2050de31410') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') -#_fix_deps_of_static_3rdparty_libs='s:\(-L\/.*\/lib.*\.a\) \(\/.*\/libqt\)\(openwnn\|pinyin\|tcime\)\(d*\.a\)\(.*\):\2\3\4 \1 \5:g' # if -L is used (pre Qt 5.13) -_fix_deps_of_static_3rdparty_libs='s:\(LIBS *= *\)\(.*\)\(\/build\/.*\/libqt\)\(openwnn\|pinyin\|tcime\)\(d*\.a\)\(.*\):\1 \3\4\5 \2 \6:g' # only absolute paths uses (Qt 5.13 and above) - build() { cd "${srcdir}/${_pkgfqn}" @@ -43,7 +44,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} # fix dependency order for libqtopenwnn and other static 3rdparty libraries which depend Qt5Core and hence need # it subsequent on the linker line @@ -68,6 +69,9 @@ package() { make INSTALL_ROOT="$pkgdir" install + # apply the fix for the dependency order like in build + find "${pkgdir}/usr/${_arch}/lib" \( -type f -name '*.prl' -o -name '*.pc' \) -exec sed -i -e "$_fix_deps_of_static_3rdparty_libs" {} \; + # use prl files from build directory since installed prl files seem to have incorrect QMAKE_PRL_LIBS_FOR_CMAKE if [[ -d 'lib' ]]; then pushd 'lib' @@ -81,8 +85,7 @@ package() { fi # replace library path in *.prl files so it points to the installed location and not the build directory - # also apply the fix for the dependency order like in build - find "${pkgdir}/usr/${_arch}/lib" \( -type f -name '*.prl' -o -name '*.pc' \) -exec sed -i -e "s:$PWD/lib:/usr/$_arch/lib:g;$_fix_deps_of_static_3rdparty_libs" {} \; + find "${pkgdir}/usr/${_arch}/lib" \( -type f -name '*.prl' -o -name '*.pc' \) -exec sed -i -e "s:$PWD/lib:/usr/$_arch/lib:g" {} \; # remove prl files for debug version if ! [[ $MINGW_W64_QT_DEBUG_BUILD ]]; then diff --git a/qt5-virtualkeyboard/mingw-w64/PKGBUILD.sh.ep b/qt5-virtualkeyboard/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..0be16e6d --- /dev/null +++ b/qt5-virtualkeyboard/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,29 @@ +% layout 'mingw-w64-qt5-module'; +\ +#_fix_deps_of_static_3rdparty_libs='s:\(-L\/.*\/lib.*\.a\) \(\/.*\/libqt\)\(openwnn\|pinyin\|tcime\)\(d*\.a\)\(.*\):\2\3\4 \1 \5:g' # -L is used (pre Qt 5.13) +_fix_deps_of_static_3rdparty_libs='s:\(LIBS *= *\)\(.*\)\(\/build\/.*\/libqt\)\(openwnn\|pinyin\|tcime\)\(d*\.a\)\(.*\):\1 \3\4\5 \2 \6:g' # absolute paths are used (Qt 5.13 and above) +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Virtual keyboard framework (translations, mingw-w64)" +depends=('mingw-w64-qt5-declarative' 'mingw-w64-pkg-config' 'mingw-w64-qt5-svg') +makedepends=('mingw-w64-gcc') +license=('GPL3') +\ +% content_for build_config_before_make => begin + + # fix dependency order for libqtopenwnn and other static 3rdparty libraries which depend Qt5Core and hence need + # it subsequent on the linker line + # (Not sure why qmake isn't smart enough to put it in the right order itself. It also appears that in Qt 5.12 + # the order is messed in a different way than in Qt 5.11. Now it also seems to update the Makefile again unless + # touched to a date in the future.) + make qmake_all + find . \( -type f -name 'Makefile*' -o -name '*.prl' \) -exec sed -i "$_fix_deps_of_static_3rdparty_libs" {} \; -exec touch -d 200101 {} \; + +% end +\ +% content_for package_config_after_install => begin + + # apply the fix for the dependency order like in build + find "${pkgdir}/usr/${_arch}/lib" \( -type f -name '*.prl' -o -name '*.pc' \) -exec sed -i -e "$_fix_deps_of_static_3rdparty_libs" {} \; +% end diff --git a/qt5-virtualkeyboard/mingw-w64/qtvirtualkeyboard-sha256.txt b/qt5-virtualkeyboard/mingw-w64/qtvirtualkeyboard-sha256.txt new file mode 100644 index 00000000..1e4d959c --- /dev/null +++ b/qt5-virtualkeyboard/mingw-w64/qtvirtualkeyboard-sha256.txt @@ -0,0 +1 @@ +2f3362bf7999b912a4e92d0e9b5378089bc8dfcf270fe226bc68f2050de31410 diff --git a/qt5-webchannel/mingw-w64/PKGBUILD b/qt5-webchannel/mingw-w64/PKGBUILD index 498b49e3..b4c6aae8 100644 --- a/qt5-webchannel/mingw-w64/PKGBUILD +++ b/qt5-webchannel/mingw-w64/PKGBUILD @@ -3,6 +3,10 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. @@ -14,20 +18,20 @@ arch=('any') pkgdesc='Provides access to QObject or QML objects from HTML clients for seamless integration of Qt applications with HTML/JavaScript clients (mingw-w64)' depends=('mingw-w64-qt5-declarative') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" -groups=('mingw-w64-qt5') source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('0cb8dd07b34da8d44f8a14701409ce87fce5010f9b57273b357717c2dfd35383') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -38,7 +42,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-webchannel/mingw-w64/PKGBUILD.sh.ep b/qt5-webchannel/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..271e6b2f --- /dev/null +++ b/qt5-webchannel/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,9 @@ +% layout 'mingw-w64-qt5-module'; +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc='Provides access to QObject or QML objects from HTML clients for seamless integration of Qt applications with HTML/JavaScript clients (mingw-w64)' +depends=('mingw-w64-qt5-declarative') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') diff --git a/qt5-webchannel/mingw-w64/qtwebchannel-sha256.txt b/qt5-webchannel/mingw-w64/qtwebchannel-sha256.txt new file mode 100644 index 00000000..f596ac95 --- /dev/null +++ b/qt5-webchannel/mingw-w64/qtwebchannel-sha256.txt @@ -0,0 +1 @@ +0cb8dd07b34da8d44f8a14701409ce87fce5010f9b57273b357717c2dfd35383 diff --git a/qt5-webengine/mingw-w64-git/0044-qt-5.4.0-win32-g++-enable-qtwebengine-build.patch b/qt5-webengine/mingw-w64-git/0044-qt-5.4.0-win32-g++-enable-qtwebengine-build.patch deleted file mode 100644 index 0ee3e6be..00000000 --- a/qt5-webengine/mingw-w64-git/0044-qt-5.4.0-win32-g++-enable-qtwebengine-build.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -urN qt-everywhere-opensource-src-5.5.0.orig/qtwebengine/tools/qmake/mkspecs/features/functions.prf qt-everywhere-opensource-src-5.5.0/qtwebengine/tools/qmake/mkspecs/features/functions.prf ---- qt-everywhere-opensource-src-5.5.0.orig/qtwebengine/tools/qmake/mkspecs/features/functions.prf 2015-08-26 14:34:22.019269600 +0100 -+++ qt-everywhere-opensource-src-5.5.0/qtwebengine/tools/qmake/mkspecs/features/functions.prf 2015-08-26 15:34:44.547516900 +0100 -@@ -14,7 +14,7 @@ - - linux-g++*:!isGCCVersionSupported(): return(false) - !isPythonVersionSupported(): return(false) -- linux-g++*|win32-msvc2013|macx-clang: return(true) -+ linux-g++*|win32-*|macx-clang: return(true) - boot2qt: return(true) - - skipBuild("Qt WebEngine can currently only be built for Linux (GCC), Windows (MSVC 2013), OS X (XCode 5.1+) or Qt for Device Creation.") diff --git a/qt5-webengine/mingw-w64-git/PKGBUILD b/qt5-webengine/mingw-w64-git/PKGBUILD deleted file mode 100644 index 3e169e7e..00000000 --- a/qt5-webengine/mingw-w64-git/PKGBUILD +++ /dev/null @@ -1,100 +0,0 @@ -# Maintainer: Martchus - -# DOES NOT WORK YET (mingw-64 currently not supported by Qt WebEngine) - -# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where -# you also find the URL of a binary repository. - -_qt_module=qtwebengine -pkgname=mingw-w64-qt5-webengine-git -pkgver=5.8.0 -pkgrel=1 -arch=('any') -pkgdesc='Provides support for web applications using the Chromium browser project (mingw-w64, git version)' -depends=('mingw-w64-qt5-webchannel' 'mingw-w64-qt5-location') -makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'git' 'python2' 'gperf' 'ruby') -provides=(${pkgname%-git}) -conflicts=(${pkgname%-git}) -options=('!strip' '!buildflags' 'staticlibs') -groups=('mingw-w64-qt5') -license=('LGPL3' 'LGPL2.1' 'BSD') -url='https://www.qt.io/' -_pkgfqn="${_qt_module}-everywhere-src-${pkgver}" -groups=('mingw-w64-qt5') -source=(${_qt_module}::git://code.qt.io/qt/${_qt_module}.git#branch=dev) -md5sums=('SKIP') - -_architectures="i686-w64-mingw32 x86_64-w64-mingw32" - -pkgver() { - cd "${srcdir}/${_qt_module}" - echo "$(git rev-list --count HEAD).$(git rev-parse --short HEAD)" -} - -prepare() { - cd "${srcdir}/${_qt_module}" - - # use python2 for Python 2.x - find . -name '*.py' -exec sed -i \ - 's|#![ ]*/usr/bin/python$|&2|;s|#![ ]*/usr/bin/env python$|&2|' {} + - - # in qtwebengine there are still a lot of relative calls which need a workaround - mkdir "${srcdir}"/python2-path - ln -s /usr/bin/python2 "${srcdir}"/python2-path/python -} - -build() { - unset PKG_CONFIG_PATH - # python2 workaround - export PATH="${srcdir}/python2-path:$PATH" - cd "${srcdir}/${_qt_module}" - for _arch in ${_architectures}; do - mkdir -p build-${_arch} && pushd build-${_arch} - ${_arch}-qmake-qt5 ../${_qt_module}.pro - make - popd - done -} - -package() { - for _arch in ${_architectures}; do - cd "${srcdir}/${_qt_module}/build-${_arch}" - - make INSTALL_ROOT="${pkgdir}" install - - # use prl files from build directory since installed prl files seem to have incorrect QMAKE_PRL_LIBS_FOR_CMAKE - if [[ -d 'lib' ]]; then - pushd 'lib' - find -iname '*.static.prl' -exec cp --target-directory "${pkgdir}/usr/${_arch}/lib" --parents {} + - popd - fi - if [[ -d 'plugins' ]]; then - pushd 'plugins' - find -iname '*.static.prl' -exec cp --target-directory "${pkgdir}/usr/${_arch}/lib/qt/plugins" --parents {} + - popd - fi - - # replace library path in *.prl files so it points to the installed location and not the build directory - find "${pkgdir}/usr/${_arch}/lib" \( -type f -name '*.prl' -o -name '*.pc' \) -exec sed -i -e "s:$PWD/lib:/usr/$_arch/lib:g" {} \; - - # remove prl files for debug version - if ! [[ $MINGW_W64_QT_DEBUG_BUILD ]]; then - for file in $(find "${pkgdir}/usr/${_arch}" -name '*d.prl' -o -name '*d.static.prl'); do - [ -f "${file%d*}${file##*d}" ] && rm "${file}"; - done - fi - - # remove '.static.prl' files - find "${pkgdir}/usr/${_arch}" -name '.static.prl' -delete - - find "${pkgdir}/usr/${_arch}/lib" -maxdepth 1 -name '*.dll' -delete - [ "$NO_STATIC_EXECUTABLES" -a "${_config##*=}" = static -o "$NO_EXECUTABLES" ] && \ - find "${pkgdir}/usr/${_arch}" -name '*.exe' -delete || \ - find "${pkgdir}/usr/${_arch}" -name '*.exe' -exec ${_arch}-strip --strip-all {} \; - find "${pkgdir}/usr/${_arch}" -name '*.dll' -exec ${_arch}-strip --strip-unneeded {} \; - find "${pkgdir}/usr/${_arch}" \( -name '*.a' -not -name 'libQt5QmlDevTools.a' -not -name 'libQt5Bootstrap.a' \) -exec ${_arch}-strip -g {} \; - [[ -d "${pkgdir}/usr/${_arch}/lib/qt/bin/" ]] && \ - find "${pkgdir}/usr/${_arch}/lib/qt/bin/" -exec strip --strip-all {} \; - find "${pkgdir}/usr/${_arch}/lib/" -iname "*.so.$pkgver" -exec strip --strip-unneeded {} \; - done -} diff --git a/qt5-webengine/mingw-w64/PKGBUILD b/qt5-webengine/mingw-w64/PKGBUILD index 81c5c9a5..8305129d 100644 --- a/qt5-webengine/mingw-w64/PKGBUILD +++ b/qt5-webengine/mingw-w64/PKGBUILD @@ -1,13 +1,19 @@ # Maintainer: Martchus -# DOES NOT WORK YET (mingw-w64 currently not supported by Qt WebEngine) - # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + +# All patches are managed at https://github.com/Martchus/qtwebengine + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. +# DOES NOT WORK YET (win32-g++ is currently not supported by Qt WebEngine) + _qt_module=qtwebengine pkgname=mingw-w64-qt5-webengine pkgver=5.14.0 @@ -19,27 +25,31 @@ makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'git' 'python2' 'gperf' 'rub options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') license=('LGPL3' 'LGPL2.1' 'BSD') +options=('!strip' '!buildflags' 'staticlibs') +groups=('mingw-w64-qt5') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" -groups=('mingw-w64-qt5') source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz" '0044-qt-5.4.0-win32-g++-enable-qtwebengine-build.patch') -md5sums=('c90fba515fb33c091904fe2cadbb345a' - '27e0f474f66f05f3911c71621b24636d') +sha256sums=('TODO' + '7d7a99ff45c6ae4f39be663d52bafc125970787f364e84593117e6a7d79f7eae') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') prepare() { cd "${srcdir}/${_pkgfqn}" - # allow building webengine with mingw-w64 - patch -p2 -i ${srcdir}/0044-qt-5.4.0-win32-g++-enable-qtwebengine-build.patch + # apply patches; further descriptions can be found in patch files itself + for patch in "$srcdir/"*.patch; do + patch -p1 -i "$patch" + done # use python2 for Python 2.x find . -name '*.py' -exec sed -i \ @@ -52,14 +62,16 @@ prepare() { build() { cd "${srcdir}/${_pkgfqn}" - unset PKG_CONFIG_PATH + + # python2 workaround export PATH="${srcdir}/python2-path:$PATH" + for _arch in ${_architectures}; do for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-webengine/mingw-w64/PKGBUILD.sh.ep b/qt5-webengine/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..186a447c --- /dev/null +++ b/qt5-webengine/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,34 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for comment_header => begin +# DOES NOT WORK YET (win32-g++ is currently not supported by Qt WebEngine) + +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc='Provides support for web applications using the Chromium browser project (mingw-w64)' +depends=('mingw-w64-qt5-webchannel' 'mingw-w64-qt5-location') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'git' 'python2' 'gperf' 'ruby') +options=('!strip' '!buildflags' 'staticlibs') +groups=('mingw-w64-qt5') +license=('LGPL3' 'LGPL2.1' 'BSD') +\ +% content_for prepare => begin + + # use python2 for Python 2.x + find . -name '*.py' -exec sed -i \\ + 's|#![ ]*/usr/bin/python$|&2|;s|#![ ]*/usr/bin/env python$|&2|' {} + + + # in qtwebengine there are still a lot of relative calls which need a workaround + mkdir "${srcdir}"/python2-path + ln -s /usr/bin/python2 "${srcdir}"/python2-path/python +% end +\ +% content_for build_before_loop => begin + + # python2 workaround + export PATH="${srcdir}/python2-path:$PATH" + +% end diff --git a/qt5-webengine/mingw-w64/qtwebengine-sha256.txt b/qt5-webengine/mingw-w64/qtwebengine-sha256.txt new file mode 100644 index 00000000..1333ed77 --- /dev/null +++ b/qt5-webengine/mingw-w64/qtwebengine-sha256.txt @@ -0,0 +1 @@ +TODO diff --git a/qt5-webglplugin/mingw-w64/PKGBUILD b/qt5-webglplugin/mingw-w64/PKGBUILD index 0b7a05fb..e150aaa1 100644 --- a/qt5-webglplugin/mingw-w64/PKGBUILD +++ b/qt5-webglplugin/mingw-w64/PKGBUILD @@ -1,23 +1,28 @@ # Maintainer: Martchus -# Contributor: ant32 # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + +# All patches are managed at https://github.com/Martchus/qtwebglplugin + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtwebglplugin -pkgname="mingw-w64-qt5-webglplugin" +pkgname=mingw-w64-qt5-webglplugin pkgver=5.14.0 pkgrel=1 -arch=('i686' 'x86_64') +arch=('any') pkgdesc="QPA plugin for running an application via a browser using streamed WebGL commands (mingw-w64)" depends=('mingw-w64-qt5-declarative' 'mingw-w64-qt5-websockets') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL3' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL3' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz" @@ -26,6 +31,7 @@ sha256sums=('9707f7b860d798d478c0237c49ab43d4b99e1ad5b297555a4df6ffac4c5a1a76' '8804dc7a55f74c738dc0f64eefb75f912647bceaf4a3f3e783a141507c92162a') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ @@ -38,7 +44,6 @@ prepare() { # apply patches; further descriptions can be found in patch files itself for patch in "$srcdir/"*.patch; do - msg2 "Applying patch $patch" patch -p1 -i "$patch" done } @@ -50,7 +55,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} QT_INSTALL_PREFIX="/usr/${_arch}" + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-webglplugin/mingw-w64/PKGBUILD.sh.ep b/qt5-webglplugin/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..51b36736 --- /dev/null +++ b/qt5-webglplugin/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,9 @@ +% layout 'mingw-w64-qt5-module'; +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="QPA plugin for running an application via a browser using streamed WebGL commands (mingw-w64)" +depends=('mingw-w64-qt5-declarative' 'mingw-w64-qt5-websockets') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL3' 'FDL' 'custom') diff --git a/qt5-webglplugin/mingw-w64/qtwebglplugin-sha256.txt b/qt5-webglplugin/mingw-w64/qtwebglplugin-sha256.txt new file mode 100644 index 00000000..13dc9211 --- /dev/null +++ b/qt5-webglplugin/mingw-w64/qtwebglplugin-sha256.txt @@ -0,0 +1 @@ +9707f7b860d798d478c0237c49ab43d4b99e1ad5b297555a4df6ffac4c5a1a76 diff --git a/qt5-webkit/mingw-w64/PKGBUILD.sh.ep b/qt5-webkit/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..7db3e853 --- /dev/null +++ b/qt5-webkit/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,47 @@ +% layout 'mingw-w64-qt5-module', static_config => 0; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +# Contributor: Filip Brcic +% end +\ +_additional_qmake_args+='QMAKE_CXXFLAGS+=-Wno-c++0x-compat QMAKE_CXXFLAGS+=-Wno-expansion-to-defined' + +pkgver=5.9.0 +pkgrel=1 +arch=('any') +pkgdesc="Classes for a WebKit2 based implementation and a new QML API (mingw-w64)" +depends=('mingw-w64-qt5-declarative' 'mingw-w64-qt5-sensors' 'mingw-w64-qt5-location' 'mingw-w64-qt5-multimedia' + 'mingw-w64-angleproject' 'mingw-w64-fontconfig' 'mingw-w64-libpng' 'mingw-w64-libjpeg-turbo' 'mingw-w64-libxslt' + 'mingw-w64-zlib' 'mingw-w64-icu' 'mingw-w64-sqlite' 'mingw-w64-libwebp') +# These dependencies will enable further functionality +#depends+=('mingw-w64-webchannel') +#depends+=('mingw-w64-gst-plugins-base') +#optdepends+=('mingw-w64-gst-plugins-good: Webm codec support') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'python' 'gperf' 'ruby') +options=('!strip' '!buildflags' 'staticlibs') +groups=('mingw-w64-qt5') +license=('GPL3' 'LGPL' 'FDL' 'custom') +\ +% content_for prepare => begin + + # make sure the bundled copy of the ANGLE libraries isn't used + rm -rf Source/ThirdParty/ANGLE +% end +\ +% content_for build_config => begin + + # ensure files from system ANGLE can be included since "Source/ThirdParty/ANGLE" has been removed + export CPATH="${default_cpath}:/usr/$_arch/include:/usr/$_arch/include/GLSLANG" + + _qt_module=WebKit +% end +\ +% content_for build_config_before_make => begin + + # Search paths for host standard library (/usr/lib) and for Qt5Bootstrap (/usr/$_arch/lib) are not set correctly by qmake + # hence we need insert those paths manually + make qmake_all + find ./tools -type f -iname 'Makefile' -exec sed -i "s|-lQt5Bootstrap|-L/usr/$_arch/lib -lQt5Bootstrap|g" {} \; + +% end diff --git a/qt5-webkit/mingw-w64/qtwebkit-sha256.txt b/qt5-webkit/mingw-w64/qtwebkit-sha256.txt new file mode 100644 index 00000000..568db0b2 --- /dev/null +++ b/qt5-webkit/mingw-w64/qtwebkit-sha256.txt @@ -0,0 +1 @@ +8dad193b740055a998312e04a040f2e32a923c0823b2d239b24eab08276a4e04 diff --git a/qt5-websockets/mingw-w64/PKGBUILD b/qt5-websockets/mingw-w64/PKGBUILD index 1bf68e5a..0d66fe78 100644 --- a/qt5-websockets/mingw-w64/PKGBUILD +++ b/qt5-websockets/mingw-w64/PKGBUILD @@ -4,30 +4,35 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtwebsockets -pkgname="mingw-w64-qt5-websockets" +pkgname=mingw-w64-qt5-websockets pkgver=5.14.0 pkgrel=1 arch=('any') pkgdesc="Provides WebSocket communication compliant with RFC 6455 (mingw-w64)" depends=('mingw-w64-qt5-base') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('50b881e83225b21e6657361e1af9b0154117d5efc03ba8c87aecacee3e42b0ad') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -38,7 +43,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-websockets/mingw-w64/PKGBUILD.sh.ep b/qt5-websockets/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..04abe67a --- /dev/null +++ b/qt5-websockets/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,13 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Provides WebSocket communication compliant with RFC 6455 (mingw-w64)" +depends=('mingw-w64-qt5-base') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL' 'FDL' 'custom') diff --git a/qt5-websockets/mingw-w64/qtwebsockets-sha256.txt b/qt5-websockets/mingw-w64/qtwebsockets-sha256.txt new file mode 100644 index 00000000..26b5a786 --- /dev/null +++ b/qt5-websockets/mingw-w64/qtwebsockets-sha256.txt @@ -0,0 +1 @@ +50b881e83225b21e6657361e1af9b0154117d5efc03ba8c87aecacee3e42b0ad diff --git a/qt5-winextras/mingw-w64/0001-Revert-Directly-link-to-functions-available-from-Win.patch b/qt5-winextras/mingw-w64/0001-Revert-Directly-link-to-functions-available-from-Win.patch deleted file mode 100644 index fe4472ca..00000000 --- a/qt5-winextras/mingw-w64/0001-Revert-Directly-link-to-functions-available-from-Win.patch +++ /dev/null @@ -1,298 +0,0 @@ -From bc075232c06699402e18c257deb21b27645d39f3 Mon Sep 17 00:00:00 2001 -From: Martchus -Date: Sun, 27 May 2018 14:23:11 +0200 -Subject: [PATCH] Revert "Directly link to functions available from Windows 7 - onwards" - -This reverts commit 07f6d25a00af112d46e939992fb9cf42879fc7c1. - -Otherwise the x86_64 version doesn't compile with mingw-w64-crt 5.0.3. - -Apparently those functions are absent in the libdwmapi.a library provided -by the CRT: -``` -grep DwmSetIconicThumbnail /usr/x86_64-w64-mingw32/lib/libdwmapi.a -[no further output] -``` - -This leads to the following linker error: -``` -x86_64-w64-mingw32-g++ -g -shared -Wl,-subsystem,windows -Wl,--out-implib,/build/mingw-w64-qt5-winextras/src/qtwinextras-everywhere-src-5.11.0/build-x86_64-w64-mingw32-shared/lib/libQt5WinExtras.dll.a -o ../../lib/Qt5WinExtras.dll object_script.Qt5WinExtras.Release -lglu32 -lopengl32 -lgdi32 -luser32 -lQt5Gui -lQt5Core -lole32 -lshlwapi -lshell32 -ldwmapi -./.obj/release/qwinthumbnailtoolbar.o: In function `QWinThumbnailToolBarPrivate::updateIconicPixmapsEnabled(bool)': -/build/mingw-w64-qt5-winextras/src/qtwinextras-everywhere-src-5.11.0/src/winextras/qwinthumbnailtoolbar.cpp:246: undefined reference to `DwmInvalidateIconicBitmaps' -./.obj/release/qwinthumbnailtoolbar.o: In function `QWinThumbnailToolBarPrivate::updateIconicLivePreview(tagMSG const*)': -/build/mingw-w64-qt5-winextras/src/qtwinextras-everywhere-src-5.11.0/src/winextras/qwinthumbnailtoolbar.cpp:411: undefined reference to `DwmSetIconicLivePreviewBitmap' -./.obj/release/qwinthumbnailtoolbar.o: In function `QWinThumbnailToolBarPrivate::updateIconicThumbnail(tagMSG const*)': -/build/mingw-w64-qt5-winextras/src/qtwinextras-everywhere-src-5.11.0/src/winextras/qwinthumbnailtoolbar.cpp:396: undefined reference to `DwmSetIconicThumbnail' -collect2: error: ld returned 1 exit status -``` - -Note that the i686 version has the required functions and links fine: -``` -grep DwmSetIconicThumbnail /usr/i686-w64-mingw32/lib/libdwmapi.a -Binary file /usr/i686-w64-mingw32/lib/libdwmapi.a matches -``` ---- - src/winextras/qwinfunctions.cpp | 14 ++--- - src/winextras/qwinfunctions_p.cpp | 74 ++++++++++++++++++++++++++ - src/winextras/qwinfunctions_p.h | 36 ++++++++++++- - src/winextras/qwinthumbnailtoolbar.cpp | 22 ++++---- - src/winextras/winextras.pro | 1 + - 5 files changed, 125 insertions(+), 22 deletions(-) - create mode 100644 src/winextras/qwinfunctions_p.cpp - -diff --git a/src/winextras/qwinfunctions.cpp b/src/winextras/qwinfunctions.cpp -index b237a50..7866140 100644 ---- a/src/winextras/qwinfunctions.cpp -+++ b/src/winextras/qwinfunctions.cpp -@@ -38,13 +38,6 @@ - ** - ****************************************************************************/ - --#if defined(NTDDI_VERSION) && NTDDI_VERSION < 0x06010000 // NTDDI_WIN7 --# undef NTDDI_VERSION --#endif --#if !defined(NTDDI_VERSION) --# define NTDDI_VERSION 0x06010000 // Enable functions for MinGW --#endif -- - #include "qwinfunctions.h" - #include "qwinfunctions_p.h" - #include "qwineventfilter_p.h" -@@ -1850,8 +1843,11 @@ bool QtWin::isCompositionOpaque() - */ - void QtWin::setCurrentProcessExplicitAppUserModelID(const QString &id) - { -- QScopedArrayPointer wid(qt_qstringToNullTerminated(id)); -- SetCurrentProcessExplicitAppUserModelID(wid.data()); -+ qtShell32Dll.init(); -+ if (qtShell32Dll.setCurrentProcessExplicitAppUserModelID) { -+ QScopedArrayPointer wid(qt_qstringToNullTerminated(id)); -+ qtShell32Dll.setCurrentProcessExplicitAppUserModelID(wid.data()); -+ } - } - - /*! -diff --git a/src/winextras/qwinfunctions_p.cpp b/src/winextras/qwinfunctions_p.cpp -new file mode 100644 -index 0000000..ea9dcf9 ---- /dev/null -+++ b/src/winextras/qwinfunctions_p.cpp -@@ -0,0 +1,74 @@ -+/**************************************************************************** -+ ** -+ ** Copyright (C) 2016 Ivan Vizir -+ ** Contact: https://www.qt.io/licensing/ -+ ** -+ ** This file is part of the QtWinExtras module of the Qt Toolkit. -+ ** -+ ** $QT_BEGIN_LICENSE:LGPL$ -+ ** Commercial License Usage -+ ** Licensees holding valid commercial Qt licenses may use this file in -+ ** accordance with the commercial license agreement provided with the -+ ** Software or, alternatively, in accordance with the terms contained in -+ ** a written agreement between you and The Qt Company. For licensing terms -+ ** and conditions see https://www.qt.io/terms-conditions. For further -+ ** information use the contact form at https://www.qt.io/contact-us. -+ ** -+ ** GNU Lesser General Public License Usage -+ ** Alternatively, this file may be used under the terms of the GNU Lesser -+ ** General Public License version 3 as published by the Free Software -+ ** Foundation and appearing in the file LICENSE.LGPL3 included in the -+ ** packaging of this file. Please review the following information to -+ ** ensure the GNU Lesser General Public License version 3 requirements -+ ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. -+ ** -+ ** GNU General Public License Usage -+ ** Alternatively, this file may be used under the terms of the GNU -+ ** General Public License version 2.0 or (at your option) the GNU General -+ ** Public license version 3 or any later version approved by the KDE Free -+ ** Qt Foundation. The licenses are as published by the Free Software -+ ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 -+ ** included in the packaging of this file. Please review the following -+ ** information to ensure the GNU General Public License requirements will -+ ** be met: https://www.gnu.org/licenses/gpl-2.0.html and -+ ** https://www.gnu.org/licenses/gpl-3.0.html. -+ ** -+ ** $QT_END_LICENSE$ -+ ** -+ ****************************************************************************/ -+ -+#include "qwinfunctions_p.h" -+ -+#include -+ -+QT_BEGIN_NAMESPACE -+ -+// in order to allow binary to load on WinXP... -+QtDwmApiDll qtDwmApiDll; -+QtShell32Dll qtShell32Dll; -+ -+void QtDwmApiDll::resolve() -+{ -+ if (QSysInfo::windowsVersion() >= QSysInfo::WV_WINDOWS7) { -+ if (const HMODULE dwmapi = LoadLibraryW(L"dwmapi.dll")) { -+ dwmSetIconicThumbnail = -+ (DwmSetIconicThumbnail) GetProcAddress(dwmapi, "DwmSetIconicThumbnail"); -+ dwmSetIconicLivePreviewBitmap = -+ (DwmSetIconicLivePreviewBitmap) GetProcAddress(dwmapi, "DwmSetIconicLivePreviewBitmap"); -+ dwmInvalidateIconicBitmaps = -+ (DwmInvalidateIconicBitmaps) GetProcAddress(dwmapi, "DwmInvalidateIconicBitmaps"); -+ } -+ } -+} -+ -+void QtShell32Dll::resolve() -+{ -+ if (QSysInfo::windowsVersion() >= QSysInfo::WV_WINDOWS7) { -+ if (const HMODULE shell32 = LoadLibraryW(L"shell32.dll")) { -+ setCurrentProcessExplicitAppUserModelID = -+ (SetCurrentProcessExplicitAppUserModelID) GetProcAddress(shell32, "SetCurrentProcessExplicitAppUserModelID"); -+ } -+ } -+} -+ -+QT_END_NAMESPACE -diff --git a/src/winextras/qwinfunctions_p.h b/src/winextras/qwinfunctions_p.h -index 0ee73cb..a5816fe 100644 ---- a/src/winextras/qwinfunctions_p.h -+++ b/src/winextras/qwinfunctions_p.h -@@ -64,8 +64,20 @@ enum qt_DWMWINDOWATTRIBUTE // Not present in MinGW 4.9 - qt_DWMWA_EXCLUDED_FROM_PEEK = 12, - }; - --namespace QtDwmApiDll -+struct QtDwmApiDll - { -+ typedef HRESULT (STDAPICALLTYPE *DwmSetIconicThumbnail)(HWND, HBITMAP, DWORD); // Windows 7 -+ typedef HRESULT (STDAPICALLTYPE *DwmSetIconicLivePreviewBitmap)(HWND, HBITMAP, POINT *, DWORD); -+ typedef HRESULT (STDAPICALLTYPE *DwmInvalidateIconicBitmaps)(HWND); -+ -+ void init() -+ { -+ if (!dwmSetIconicThumbnail) -+ resolve(); -+ } -+ -+ void resolve(); -+ - template static T windowAttribute(HWND hwnd, DWORD attribute, T defaultValue); - template static void setWindowAttribute(HWND hwnd, DWORD attribute, T value); - -@@ -74,8 +86,30 @@ namespace QtDwmApiDll - - inline void setBooleanWindowAttribute(HWND hwnd, DWORD attribute, bool value) - { setWindowAttribute(hwnd, attribute, BOOL(value ? TRUE : FALSE)); } -+ -+ DwmSetIconicThumbnail dwmSetIconicThumbnail = nullptr; -+ DwmSetIconicLivePreviewBitmap dwmSetIconicLivePreviewBitmap = nullptr; -+ DwmInvalidateIconicBitmaps dwmInvalidateIconicBitmaps = nullptr; - }; - -+struct QtShell32Dll -+{ -+ typedef HRESULT (STDAPICALLTYPE *SetCurrentProcessExplicitAppUserModelID)(PCWSTR); -+ -+ void init() -+ { -+ if (!setCurrentProcessExplicitAppUserModelID) -+ resolve(); -+ } -+ -+ void resolve(); -+ -+ SetCurrentProcessExplicitAppUserModelID setCurrentProcessExplicitAppUserModelID = nullptr; // Windows 7 -+}; -+ -+extern QtDwmApiDll qtDwmApiDll; -+extern QtShell32Dll qtShell32Dll; -+ - inline void qt_qstringToNullTerminated(const QString &src, wchar_t *dst) - { - dst[src.toWCharArray(dst)] = 0; -diff --git a/src/winextras/qwinthumbnailtoolbar.cpp b/src/winextras/qwinthumbnailtoolbar.cpp -index fc8d76e..59880c7 100644 ---- a/src/winextras/qwinthumbnailtoolbar.cpp -+++ b/src/winextras/qwinthumbnailtoolbar.cpp -@@ -38,13 +38,6 @@ - ** - ****************************************************************************/ - --#if defined(_WIN32_WINNT) && _WIN32_WINNT < 0x0601 --# undef _WIN32_WINNT --#endif --#if !defined(_WIN32_WINNT) --# define _WIN32_WINNT 0x0601 // Enable functions for MinGW --#endif -- - #include "qwinthumbnailtoolbar.h" - #include "qwinthumbnailtoolbar_p.h" - #include "qwinthumbnailtoolbutton.h" -@@ -232,15 +225,18 @@ int QWinThumbnailToolBar::count() const - void QWinThumbnailToolBarPrivate::updateIconicPixmapsEnabled(bool invalidate) - { - Q_Q(QWinThumbnailToolBar); -+ qtDwmApiDll.init(); - const HWND hwnd = handle(); - if (!hwnd) { - qWarning() << Q_FUNC_INFO << "invoked with hwnd=0"; - return; - } -+ if (!qtDwmApiDll.dwmInvalidateIconicBitmaps) -+ return; - const bool enabled = iconicThumbnail || iconicLivePreview; - q->setIconicPixmapNotificationsEnabled(enabled); - if (enabled && invalidate) { -- const HRESULT hr = DwmInvalidateIconicBitmaps(hwnd); -+ const HRESULT hr = qtDwmApiDll.dwmInvalidateIconicBitmaps(hwnd); - if (FAILED(hr)) - qWarning() << QWinThumbnailToolBarPrivate::msgComFailed("DwmInvalidateIconicBitmaps", hr); - } -@@ -386,11 +382,12 @@ QPixmap QWinThumbnailToolBar::iconicLivePreviewPixmap() const - - inline void QWinThumbnailToolBarPrivate::updateIconicThumbnail(const MSG *message) - { -- if (!iconicThumbnail) -+ qtDwmApiDll.init(); -+ if (!qtDwmApiDll.dwmSetIconicThumbnail || !iconicThumbnail) - return; - const QSize maxSize(HIWORD(message->lParam), LOWORD(message->lParam)); - if (const HBITMAP bitmap = iconicThumbnail.bitmap(maxSize)) { -- const HRESULT hr = DwmSetIconicThumbnail(message->hwnd, bitmap, dWM_SIT_DISPLAYFRAME); -+ const HRESULT hr = qtDwmApiDll.dwmSetIconicThumbnail(message->hwnd, bitmap, dWM_SIT_DISPLAYFRAME); - if (FAILED(hr)) - qWarning() << QWinThumbnailToolBarPrivate::msgComFailed("DwmSetIconicThumbnail", hr); - } -@@ -398,14 +395,15 @@ inline void QWinThumbnailToolBarPrivate::updateIconicThumbnail(const MSG *messag - - inline void QWinThumbnailToolBarPrivate::updateIconicLivePreview(const MSG *message) - { -- if (!iconicLivePreview) -+ qtDwmApiDll.init(); -+ if (!qtDwmApiDll.dwmSetIconicLivePreviewBitmap || !iconicLivePreview) - return; - RECT rect; - GetClientRect(message->hwnd, &rect); - const QSize maxSize(rect.right, rect.bottom); - POINT offset = {0, 0}; - if (const HBITMAP bitmap = iconicLivePreview.bitmap(maxSize)) { -- const HRESULT hr = DwmSetIconicLivePreviewBitmap(message->hwnd, bitmap, &offset, dWM_SIT_DISPLAYFRAME); -+ const HRESULT hr = qtDwmApiDll.dwmSetIconicLivePreviewBitmap(message->hwnd, bitmap, &offset, dWM_SIT_DISPLAYFRAME); - if (FAILED(hr)) - qWarning() << QWinThumbnailToolBarPrivate::msgComFailed("DwmSetIconicLivePreviewBitmap", hr); - } -diff --git a/src/winextras/winextras.pro b/src/winextras/winextras.pro -index 8f582a5..a899f6c 100644 ---- a/src/winextras/winextras.pro -+++ b/src/winextras/winextras.pro -@@ -4,6 +4,7 @@ QT += gui-private core-private - - SOURCES += \ - qwinfunctions.cpp \ -+ qwinfunctions_p.cpp \ - qwintaskbarbutton.cpp \ - qwintaskbarprogress.cpp \ - windowsguidsdefs.cpp \ --- -2.24.1 - diff --git a/qt5-winextras/mingw-w64/PKGBUILD b/qt5-winextras/mingw-w64/PKGBUILD index 02b404ed..abd727e7 100644 --- a/qt5-winextras/mingw-w64/PKGBUILD +++ b/qt5-winextras/mingw-w64/PKGBUILD @@ -4,32 +4,35 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtwinextras -pkgname="mingw-w64-qt5-winextras" +pkgname=mingw-w64-qt5-winextras pkgver=5.14.0 pkgrel=1 arch=('any') pkgdesc="Classes and functions that enable you to use Windows-specific functions (mingw-w64)" depends=('mingw-w64-qt5-base' 'mingw-w64-qt5-declarative') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL3' 'LGPL2.1' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL3' 'LGPL2.1' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" -source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz" - '0001-Revert-Directly-link-to-functions-available-from-Win.patch') -sha256sums=('cbe7d73f1972e99ea27c0e5f4fed2b713109167388814dcfe2932c19ae218a18' - '738ef04bc5d6932283b0525449d2090dcd63228459186815c0d907df25ed259e') +source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") +sha256sums=('cbe7d73f1972e99ea27c0e5f4fed2b713109167388814dcfe2932c19ae218a18') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -40,7 +43,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-winextras/mingw-w64/PKGBUILD.sh.ep b/qt5-winextras/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..49f23338 --- /dev/null +++ b/qt5-winextras/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,13 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Classes and functions that enable you to use Windows-specific functions (mingw-w64)" +depends=('mingw-w64-qt5-base' 'mingw-w64-qt5-declarative') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL3' 'LGPL2.1' 'FDL' 'custom') diff --git a/qt5-winextras/mingw-w64/qtwinextras-sha256.txt b/qt5-winextras/mingw-w64/qtwinextras-sha256.txt new file mode 100644 index 00000000..3ceb7ce5 --- /dev/null +++ b/qt5-winextras/mingw-w64/qtwinextras-sha256.txt @@ -0,0 +1 @@ +cbe7d73f1972e99ea27c0e5f4fed2b713109167388814dcfe2932c19ae218a18 diff --git a/qt5-xmlpatterns/mingw-w64/PKGBUILD b/qt5-xmlpatterns/mingw-w64/PKGBUILD index 0cc1af94..7ce06e0c 100644 --- a/qt5-xmlpatterns/mingw-w64/PKGBUILD +++ b/qt5-xmlpatterns/mingw-w64/PKGBUILD @@ -4,30 +4,35 @@ # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # you also find the URL of a binary repository. +# This file is created from PKGBUILD.sh.in contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + # Includes dynamic and static versions; if only one version is requried, just # set $NO_STATIC_LIBS or $NO_SHARED_LIBS. _qt_module=qtxmlpatterns -pkgname="mingw-w64-qt5-xmlpatterns" +pkgname=mingw-w64-qt5-xmlpatterns pkgver=5.14.0 pkgrel=1 arch=('any') pkgdesc="Support for XPath, XQuery, XSLT and XML schema validation (mingw-w64)" depends=('mingw-w64-qt5-base') makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL3' 'FDL' 'custom') options=('!strip' '!buildflags' 'staticlibs') groups=('mingw-w64-qt5') -license=('GPL3' 'LGPL3' 'FDL' 'custom') url='https://www.qt.io/' _pkgfqn="${_qt_module}-everywhere-src-${pkgver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz") sha256sums=('935209e91942e89d569f977153f0ca209125c205065960e55d4f4065a96d90d9') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' + [[ $NO_STATIC_LIBS ]] || \ makedepends+=('mingw-w64-qt5-base-static') \ optdepends+=('mingw-w64-qt5-base-static: use of static libraries') \ - _configurations+=('CONFIG+=static') + _configurations+=('CONFIG+=no_smart_library_merge CONFIG+=static') [[ $NO_SHARED_LIBS ]] || \ _configurations+=('CONFIG+=actually_a_shared_build CONFIG+=shared') @@ -38,7 +43,7 @@ build() { for _config in "${_configurations[@]}"; do msg2 "Building ${_config##*=} version for ${_arch}" mkdir -p build-${_arch}-${_config##*=} && pushd build-${_arch}-${_config##*=} - ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} + ${_arch}-qmake-qt5 ../${_qt_module}.pro ${_config} ${_additional_qmake_args} make popd done diff --git a/qt5-xmlpatterns/mingw-w64/PKGBUILD.sh.ep b/qt5-xmlpatterns/mingw-w64/PKGBUILD.sh.ep new file mode 100644 index 00000000..8a7f3a84 --- /dev/null +++ b/qt5-xmlpatterns/mingw-w64/PKGBUILD.sh.ep @@ -0,0 +1,13 @@ +% layout 'mingw-w64-qt5-module'; +\ +% content_for additional_contributors => begin +# Contributor: ant32 +% end +\ +pkgver=5.14.0 +pkgrel=1 +arch=('any') +pkgdesc="Support for XPath, XQuery, XSLT and XML schema validation (mingw-w64)" +depends=('mingw-w64-qt5-base') +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config') +license=('GPL3' 'LGPL3' 'FDL' 'custom') diff --git a/qt5-xmlpatterns/mingw-w64/qtxmlpatterns-sha256.txt b/qt5-xmlpatterns/mingw-w64/qtxmlpatterns-sha256.txt new file mode 100644 index 00000000..8c0e5239 --- /dev/null +++ b/qt5-xmlpatterns/mingw-w64/qtxmlpatterns-sha256.txt @@ -0,0 +1 @@ +935209e91942e89d569f977153f0ca209125c205065960e55d4f4065a96d90d9