Compare commits

...

81 Commits
spdx ... master

Author SHA1 Message Date
Martchus 9ef21cdfdb Fix build of subtitlecomposer cherry-picking upstream patches 2024-05-22 22:54:20 +02:00
Martchus 5ee082869c Render checksum in Qt 5 modules depending on whether a checksum file is present
New builds will get a checksum file via
2fc2ab6cf0
and stale checksum files of old builds have been removed in the previous commit.
So this change does not lead to any diff in the rendering at this point.
2024-05-22 13:00:18 +02:00
Martchus 2e02a1443f Remove stale checksum files of mingw-w64-qt5-* packages
Except for mingw-w64-qt5-serialbus* which was built after
2fc2ab6cf0
none of these packages have a checksum anymore (as they use VCS sources after
switching to the KDE fork version).

This commit removes the stale checksum files as they are probably confusing.
This was done via:

```
for p in qt5-* ; do source $p/mingw-w64/PKGBUILD ; [[ ${sha256sums[0]} == SKIP ]] && rm -v $p/*/*-sha256.txt ; done
```
2024-05-22 12:49:34 +02:00
Martchus 11d20a08cb Add checksum of mingw-w64-qt5-serialbus
As of 2fc2ab6cf0
there is actually a checksum to be stored.
2024-05-22 12:44:58 +02:00
Martchus 9df0fdbcb0
Merge pull request #179 from radioflash/master
Add PKGBUILD for qtserialbus
2024-05-22 12:02:43 +02:00
Wolfgang Pupp d2dd5d57b9 Add PKGBUILD for qtserialbus 2024-05-22 11:27:17 +02:00
Martchus d8823b27b2 Update Qt 6 packages to 6.7.1 2024-05-22 10:52:11 +02:00
Martchus baa46e7620 Fix compilation of mingw-w64-rapidjson with GCC 14 2024-05-19 23:48:34 +02:00
Martchus 3e6eb5bc05 Rebuild mingw-w64-qt6 packages of my own projects against GCC 14
* Test GCC 14
* Rebuild qtutilities against Qt 6.7.0 so Windows 11 style is enabled by
  default
* Apply previous change of removing the i686 builds
2024-05-19 23:48:15 +02:00
Martchus 7e72091442 Remove display name in Qt 6 packages as Qt 6 is now probably the standard 2024-05-16 23:03:55 +02:00
Martchus d73c79d876 Disable i686 for Windows builds of Qt 6 and packages depending on it
See comment added to base package for reasoning.
2024-05-14 21:01:25 +02:00
Martchus 65e78ad95d Fix `__cxa_thread_atexit`-related build errors
Add patch to mingw-w64-gcc after updating to 14.1.1 to fix build errors
like:

```
<built-in>: error: conflicting declaration of C function ‘int __cxxabiv1::__cxa_thread_atexit(void (*)(), void*, void*)’
In file included from /home/devel/.cache/aurman/mingw-w64-paraview/src/ParaView-v5.12.0/build-x86_64-w64-mingw32/VTK/Common/Core/vtkCxxABIConfigure.h:10,
                 from /home/devel/.cache/aurman/mingw-w64-paraview/src/ParaView-v5.12.0/VTK/Common/Core/vtkTypeName.h:7,
                 from /home/devel/.cache/aurman/mingw-w64-paraview/src/ParaView-v5.12.0/VTK/Common/DataModel/vtkCellGrid.h:28:
/usr/x86_64-w64-mingw32/include/c++/14.1.1/cxxabi.h:140:3: note: previous declaration ‘int __cxxabiv1::__cxa_thread_atexit(void (*)(void*), void*, void*)’
  140 |   __cxa_thread_atexit(void (_GLIBCXX_CDTOR_CALLABI *)(void*), void*, void *) _GLIBCXX_NOTHROW;
```
2024-05-14 20:40:22 +02:00
Martchus ec900cf8af Update GCC packages to 14.1.1
* Use `git+https://sourceware.org/git/gcc.git` consistently in both
  packages
* Remove ada from static-compat-gcc because it leads to build failures and
  adding even more workarounds for this language is not worth it
* Workaround certain warnings now being treated as errors in mingw-w64-gcc
2024-05-13 19:39:18 +02:00
Martchus b8be67ccac Use SPDX license id in cmake-format 2024-05-13 14:53:10 +02:00
Martchus 40283fc581 Update subtitlecomposer for ICU 75 and switch to Qt 6
The switch to Qt 6 is required for the ICU 75 rebuild because only when using
Qt 6 the build system uses C++ 17 which is required as of ICU 75.

Unfortunately it doesn't build against Qt 6 / KF6 yet so I'm dropping it from
the binary repo for now.
2024-05-10 14:10:21 +02:00
Martchus 047fd65334 Sync mingw-w64-harfbuzz with regular harfbuzz package
* Use tag pinning
* Update upstream URL
* Update releasers list
* Add build option for ICU 75 rebuild
2024-05-10 12:11:24 +02:00
Martchus d965b92487 Sync mingw-w64-harfbuzz with AUR 2024-05-10 10:57:58 +02:00
Martchus 8c55c59ffd Update own projects 2024-05-08 16:40:13 +02:00
Martchus 5c29e12bcd Update static-compat-harfbuzz to 8.4.0 2024-05-06 16:41:51 +02:00
Martchus 885532475a Update mingw-w64-postgresql to 16.2 2024-05-03 15:16:06 +02:00
Martchus 1ac7dc8777 Update openssl packages to 3.3.0 2024-04-28 14:03:16 +02:00
Martchus ee41ace3fe Add static-compat-pkgconf
This package just contains a wrapper around pkg-config that always
specifies `--static`.
2024-04-26 21:55:47 +02:00
Martchus d7b974af58 Update NGINX modules to NGINX 1.26.0 2024-04-24 19:40:01 +02:00
Martchus c60ea668bf Rebuild mingw-w64-pianobooster against Qt 6.7.0 2024-04-20 19:27:35 +02:00
Martchus e501af8d24 Sync mingw-w64-binutils-symlinks with mingw-w64-binutils 2024-04-13 17:50:08 +02:00
Martchus 1ddd64abfa Import mingw-w64-binutils from official repo 2024-04-13 17:46:20 +02:00
Martchus b2606e0e91 Update static-compat packages 2024-04-13 15:12:10 +02:00
Martchus f980a709e0 Remove Jia Tan from valid keys of static-compat-xz 2024-04-13 14:30:25 +02:00
Martchus ac51c38a95 Update syncthingtray 2024-04-09 15:23:58 +02:00
Martchus 4714226962 Update Qt 6 packages to 6.7.0 2024-04-04 10:41:27 +02:00
Martchus bf8b879642 Remove nproc workaround from Qt 5 packages after workaround via buildenv 2024-04-02 23:13:19 +02:00
Martchus 8fd1ceb59f Update own projects 2024-04-02 19:45:48 +02:00
Martchus 531a0f7ac6 Build Qt 6.6.3 packages updating checksums 2024-03-31 14:13:03 +02:00
Martchus d3fe1ca09e Update Qt 6 packages to 6.6.3
No rebuild and update of checksums has been done (except for static-compat
variant); waiting for regular Qt 6 packages to updated first.
2024-03-28 20:27:29 +01:00
Martchus 83ef873922 Remove checksums from Qt 5 packages using Git 2024-03-28 20:27:29 +01:00
Martchus 8130c23e0d Fix checksum of mingw-64-gettext 2024-03-27 00:06:56 +01:00
Martchus 047db38f80 Update mingw-w64-gettext to 0.22.5 2024-03-26 21:26:23 +01:00
Martchus 09a32a6045 Add package for my build environment
* Set consistent Android API level
* Ensure make utilizes all CPU cores if `MAKEFLAGS` are otherwise cleared
  via `!buildflags` because this is nevertheless wanted in mingw-w64 and
  android packages (that usually set `!buildflags`)
* Ensure required devel packages are installed
2024-03-26 21:04:57 +01:00
Martchus b8345f73d5
Merge pull request #176 from hipersayanX/master
Updated md5sums of the Android boost packages
2024-03-23 01:35:46 +01:00
Gonzalo Exequiel Pedone b87dfadb4c
Updated md5sums of the Android boost packages. Also fixed typo x86_64 -> x86-64. 2024-03-22 20:57:22 -03:00
Martchus 4ae9006c4b Update Baikal to 0.9.5 2024-03-20 22:39:57 +01:00
Martchus 818eccb83d Import hw-probe from AUR after adopting and improving a few details 2024-03-19 14:05:36 +01:00
Martchus adecd9a851 Update dependencies of my Qt apps
* Remove X11 dependencies that are not required (already pulled in by Qt
  anyway)
* Update passwordmanager-git according to latest changes
2024-03-18 23:49:31 +01:00
Martchus 87016b3b4a Make arch-repo-manager depend on devtools-custom
It uses the `makechrootpkg` flag `-Y` only present in devtools-custom as of
1.1.1 unconditionally (before 1.1.1 it was `-C`. So at least at this point
it makes sense to make it a hard dependency.
2024-03-18 23:25:46 +01:00
Martchus 8e88e71045 Remove obsolete patches for boost 2024-03-18 13:12:44 +01:00
Martchus 421e1deb72 Update README section about using packages via container 2024-03-17 23:04:39 +01:00
Martchus c77e67b04e Update android boost packages to 1.84.0 2024-03-17 21:40:53 +01:00
Martchus 2abc6e91b9 Add more KDE packages for Android 2024-03-16 22:07:38 +01:00
Martchus 93b48127a6 Update all android variants of kirigami to 6.0.0 2024-03-16 20:13:07 +01:00
Martchus 5688795363 Update Qt 5 packages to 5.15.13 2024-03-16 20:06:10 +01:00
Martchus 0c6ce93bc8 Fix ffmpeg-custom build with latest vulkan headers 2024-03-16 01:04:21 +01:00
Martchus 1ee532128b Update devtools-custom to 1.1.1 2024-03-16 01:04:08 +01:00
Martchus 0c71f7e707 Remove qtutilities-qt6-git
After qtutilities-git has been changed to use Qt 6 this variant is no
longer required.
2024-03-07 00:26:01 +01:00
Martchus db2d208329 Update own projects 2024-03-05 14:47:24 +01:00
Martchus 20ad1ad7dd Rebuild packages against LLVM 17 2024-03-04 12:00:55 +01:00
Martchus 43574d3bb6 Update pkgver of pianobooster-custom
Set it in-line with `pkgver()` so an automatic epoch bump by the
buildservice is prevented.
2024-03-01 12:51:30 +01:00
Martchus 296cfb07c8 Fix typo in mingw-w64-cppwinrt 2024-02-29 13:24:14 +01:00
Martchus 687936b365 Switch Git packages of my projects to use Qt 6 2024-02-28 15:03:07 +01:00
Martchus 620e255462 Disable KDE integrations in syncthingtray by default 2024-02-28 13:18:58 +01:00
Martchus 0dcf93c3d5 Enable KDE integrations in syncthingtray-qt6 by default 2024-02-28 12:22:29 +01:00
Martchus 027db63de5 Improve documentation about using devel container for Android cross-compilation 2024-02-25 18:19:14 +01:00
Martchus 31b8441698 Update mingw-w64-extra-cmake-modules and -kirigami2 to 6.0.0
Not tested yet
2024-02-25 18:19:14 +01:00
Martchus 7f8b2d26bc Update android-*-kirigami2 to 6.0.0 2024-02-25 18:19:14 +01:00
Martchus ce7d14f50f Provide example command for installing android packages 2024-02-25 18:19:14 +01:00
Martchus c8813289e6 Move basic devel container setup into separate script for easier use 2024-02-25 18:19:14 +01:00
Martchus d8d4e8ca94 Make `containersync` script usable again when it already runs as root 2024-02-25 18:19:14 +01:00
Martchus e8dfb41e32 Ensure the devel container can be built if archlinux-keyring needs an update 2024-02-25 18:19:13 +01:00
Martchus e12d22a22f Force Android Qt 6 packages to use Java 17
This may help to prevent https://bugreports.qt.io/browse/QTBUG-119223.
2024-02-25 18:18:50 +01:00
Martchus 8c3d8568e6 Update pocketsphinx to 5.0.3 2024-02-21 11:38:56 +01:00
Martchus 534887b22f Fix description of cppwinrt 2024-02-18 01:09:08 +01:00
Martchus 64ce42f4c3 Enable cpp_winrt support in Qt 6 2024-02-18 00:29:59 +01:00
Martchus c4fcc897eb Handle Qt 6 packages in `apply-versions-spec.sh` 2024-02-16 19:40:47 +01:00
Martchus 104c057737 Update Qt 6 packages to 6.6.2 2024-02-15 21:10:17 +01:00
Martchus e20d543800 Update mingw-w64-jasper to 4.2.0 2024-02-13 00:31:28 +01:00
Martchus f87952094e Update libpng packages to 1.6.42 2024-02-09 22:30:32 +01:00
Martchus 28109a9f37 Update own projects 2024-02-06 19:31:48 +01:00
Martchus 52ea074a5c Update bento4 to 1.6.0.641 2024-02-05 13:29:57 +01:00
Martchus 5929914f7c Update openssl packages to 3.2.1 2024-02-03 17:06:48 +01:00
Martchus c0cfbf1ab2 Fix typo in README 2024-01-27 03:03:58 +01:00
Martchus 5ea37a3067 Update mingw-w64-gnutls to 3.8.3 2024-01-25 00:14:40 +01:00
Martchus 4512cb00c5 Update copyright date 2024-01-25 00:10:52 +01:00
664 changed files with 3487 additions and 3571 deletions

View File

@ -121,26 +121,17 @@ for this purpose.
Here are some example commands how one might do that: Here are some example commands how one might do that:
``` ```
# create a directory to store builds and new container and start it # do basic container setup
mkdir -p /hdd/build/container containers/create-devel-container-example
podman container create -it \
--name archlinux-devel-container \ # give container a meaningful name
-v /hdd/cache/pacman/pkg:/var/cache/pacman/pkg \ # share pacman cache accross different containers
-v /hdd/build/container:/build \ # expose build directory to host
-v /hdd/projects:/src \ # access source files from host
-v /hdd/chroot/remote-config-x86_64:/cfg \ # mount directory containing pacman.conf/makepkg.conf
archlinux-base-devel
podman container start archlinux-devel-container
# configure pacman to use config from mounted directory
podman container exec archlinux-devel-container bash -c "$(cat devel/container/containersync)"
# start interactive shell in container # start interactive shell in container
podman container exec -it archlinux-devel-container bash podman container exec -it archlinux-devel-container bash
# install stuff you want # install stuff you want, e.g. mingw-w64 or android Qt packages
podman container exec -it archlinux-devel-container \ podman container exec -it archlinux-devel-container \
pacman -Syu ninja git mingw-w64-cmake qt6-{base,tools} mingw-w64-qt6-{base,tools,translations,svg,5compat} pacman -Syu ninja git mingw-w64-cmake qt6-{base,tools} mingw-w64-qt6-{base,tools,translations,svg,5compat}
podman container exec -it archlinux-devel-container \
pacman -Syu clang ninja git extra-cmake-modules android-cmake qt6-{base,tools,declarative,shadertools} android-aarch64-qt6-{base,declarative,tools,translations,svg,5compat} android-aarch64-{boost,libiconv,qqc2-breeze-style}
# configure the build using mingw-w64 packages, e.g. run CMake # configure the build using mingw-w64 packages, e.g. run CMake
podman container exec -it archlinux-devel-container x86_64-w64-mingw32-cmake \ podman container exec -it archlinux-devel-container x86_64-w64-mingw32-cmake \
@ -158,6 +149,7 @@ podman container exec -it archlinux-devel-container bash -c '
# configure the build using android packages, e.g. run CMake # configure the build using android packages, e.g. run CMake
podman container exec -it archlinux-devel-container bash -c ' podman container exec -it archlinux-devel-container bash -c '
android_arch=aarch64 android_arch=aarch64
export PATH=/usr/lib/jvm/java-17-openjdk/bin:$PATH
source /usr/bin/android-env $android_arch && \ source /usr/bin/android-env $android_arch && \
android-$android_arch-cmake \ android-$android_arch-cmake \
-G Ninja \ -G Ninja \
@ -171,11 +163,12 @@ podman container exec -it archlinux-devel-container bash -c '
# conduct the build using android packages, e.g. invoke Ninja build system via CMake # conduct the build using android packages, e.g. invoke Ninja build system via CMake
podman container exec -it archlinux-devel-container bash -c ' podman container exec -it archlinux-devel-container bash -c '
export PATH=/usr/lib/jvm/java-17-openjdk/bin:$PATH
source /usr/bin/android-env aarch64 && \ source /usr/bin/android-env aarch64 && \
cmake --build /build/passwordmanager-android-aarch64-release --verbose' cmake --build /build/passwordmanager-android-aarch64-release --verbose'
# use additional Android-related tooling from container # use additional Android-related tooling from container
# note: These are just example values. The ports for pairing and connection distinct. # note: These are just example values. The ports for pairing and connection are distinct.
phone_ip=192.168.178.42 pairing_port=34765 pairing_code=922102 connection_port=32991 phone_ip=192.168.178.42 pairing_port=34765 pairing_code=922102 connection_port=32991
podman container exec -it archlinux-devel-container \ podman container exec -it archlinux-devel-container \
/opt/android-sdk/platform-tools/adb pair "$phone_ip:$pairing_port" "$pairing_code" /opt/android-sdk/platform-tools/adb pair "$phone_ip:$pairing_port" "$pairing_code"
@ -428,6 +421,6 @@ shared and static libraries within the same prefix at the same time because the
config files would clash. config files would clash.
## Copyright notice and license ## Copyright notice and license
Copyright © 2015-2023 Marius Kittler Copyright © 2015-2024 Marius Kittler
All code is licensed under [GPL-2-or-later](LICENSE). All code is licensed under [GPL-2-or-later](LICENSE).

View File

@ -8,11 +8,12 @@ pkgname=arch-repo-manager-git
_name=${pkgname%-git} _name=${pkgname%-git}
_liburing=OFF _liburing=OFF
pkgver=340.599185d pkgver=340.599185d
pkgrel=2 pkgrel=3
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64') arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
pkgdesc='Tool for managing custom Arch Linux repositories' pkgdesc='Tool for managing custom Arch Linux repositories'
license=('GPL') license=('GPL')
depends=('libc++utilities-git.so' 'libpasswordfile-git.so' 'libboost_filesystem.so' 'libarchive.so' 'libcrypto.so' 'libssl.so' 'lmdb') depends=('libc++utilities-git.so' 'libpasswordfile-git.so' 'libboost_filesystem.so' 'libarchive.so' 'libcrypto.so' 'libssl.so' 'lmdb'
'devtools-custom>=1.1.1')
[[ $_liburing != OFF ]] && depends+=('liburing.so') [[ $_liburing != OFF ]] && depends+=('liburing.so')
optdepends=('reflective-rapidjson-git: development with libpkg/librepomgr' optdepends=('reflective-rapidjson-git: development with libpkg/librepomgr'
"$_name-doc: API documentation") "$_name-doc: API documentation")

View File

@ -2,7 +2,7 @@
# Contributor: Florian Bruhin (The Compiler) <archlinux.org@the-compiler.org> # Contributor: Florian Bruhin (The Compiler) <archlinux.org@the-compiler.org>
pkgname=baikal pkgname=baikal
pkgver=0.9.4 pkgver=0.9.5
pkgrel=1 pkgrel=1
pkgdesc='Lightweight CalDAV+CardDAV server' pkgdesc='Lightweight CalDAV+CardDAV server'
url='http://sabre.io/baikal/' url='http://sabre.io/baikal/'
@ -12,7 +12,7 @@ depends=('php')
optdepends=('sqlite: Database' 'mariadb: Alternate database' 'php-sqlite: To use the sqlite backend') optdepends=('sqlite: Database' 'mariadb: Alternate database' 'php-sqlite: To use the sqlite backend')
source=("https://github.com/fruux/Baikal/releases/download/$pkgver/baikal-$pkgver.zip" source=("https://github.com/fruux/Baikal/releases/download/$pkgver/baikal-$pkgver.zip"
'baikal.install') 'baikal.install')
sha512sums=('dd4b66d93e6d2d957db9fd53e9e27d1e1a7c8ea842ed330d0590280c57fcaa7882eea2cf612dcaaad79325605739ecc3adf5013299c95db805310e25a31db57c' sha512sums=('e544ed39047788bf001c81a44eb69a3db30a871253cb6bf12b54d5d476eaadc63d723192d41b67f2cf908a72d4c722def03d853df68b7fd464a4093e08ed0f19'
'4e28980100ce9fc820a6c40a9cd528a90d62997ac18fb4ea353d8eaba58b320f9c653ba9b066036ff598f1d5a0aafb49ba444f9187c0d3616cbe6fa45222ca3f') '4e28980100ce9fc820a6c40a9cd528a90d62997ac18fb4ea353d8eaba58b320f9c653ba9b066036ff598f1d5a0aafb49ba444f9187c0d3616cbe6fa45222ca3f')
options=('!strip') options=('!strip')
install=baikal.install install=baikal.install

View File

@ -4,8 +4,8 @@
# you also find the URL of a binary repository. # you also find the URL of a binary repository.
pkgname=bento4 pkgname=bento4
pkgver=1.6.0.640 pkgver=1.6.0.641
_pkgverstr=1-6-0-640 _pkgverstr=1-6-0-641
pkgrel=1 pkgrel=1
pkgdesc='C++ class library and tools designed to read and write ISO-MP4 files' pkgdesc='C++ class library and tools designed to read and write ISO-MP4 files'
arch=('i686' 'x86_64' 'arm' 'armv6h' 'armv7h' 'aarch64') arch=('i686' 'x86_64' 'arm' 'armv6h' 'armv7h' 'aarch64')
@ -14,7 +14,7 @@ license=('GPL')
makedepends=('cmake') makedepends=('cmake')
optdepends=('python') optdepends=('python')
source=("http://zebulon.bok.net/Bento4/source/Bento4-SRC-${_pkgverstr}.zip") source=("http://zebulon.bok.net/Bento4/source/Bento4-SRC-${_pkgverstr}.zip")
sha1sums=('13f896f8ae1e1af428736855a89363974bfb44ce') sha256sums=('8258faf0de7253f2aac016018f33d4a04c16d9060735e14ec8711f84aaedf0c8')
build() { build() {
cd "${srcdir}" cd "${srcdir}"

View File

@ -1,59 +1,71 @@
# $Id: PKGBUILD 182460 2016-07-07 13:03:56Z spupykin $ # Maintainer of official package: Felix Yan <felixonmars@archlinux.org>
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: rubenvb vanboxem <dottie> ruben <attie> gmail <dottie> com
# Same as official package but uses symlinks instead of hard links allowing # Same as official package but uses symlinks instead of hard links allowing
# installation when /usr/i686-w64-mingw32 and /usr/x86_64-w64-mingw32 are # installation when /usr/i686-w64-mingw32 and /usr/x86_64-w64-mingw32 are
# bound from another partition. # bound from another partition.
_targets="i686-w64-mingw32 x86_64-w64-mingw32"
pkgname=mingw-w64-binutils-symlinks pkgname=mingw-w64-binutils-symlinks
pkgver=2.32 pkgver=2.42
pkgrel=1 pkgrel=1
pkgdesc="Cross binutils for the MinGW-w64 cross-compiler (uses symlinks instead of hard links)" pkgdesc="Cross binutils for the MinGW-w64 cross-compiler"
arch=('i686' 'x86_64') arch=('x86_64')
url="http://www.gnu.org/software/binutils" url="http://www.gnu.org/software/binutils"
license=('GPL') license=(GPL-2.0-or-later GPL-3.0-or-later LGPL-2.0-or-later LGPL-3.0-or-later GFDL-1.3 FSFAP)
groups=('mingw-w64-toolchain' 'mingw-w64') groups=('mingw-w64-toolchain' 'mingw-w64')
depends=('zlib') depends=('zlib')
provides=('mingw-w64-binutils') provides=('mingw-w64-binutils')
conflicts=('mingw-w64-binutils') conflicts=('mingw-w64-binutils');
options=('!libtool' '!emptydirs') options=('!libtool' '!emptydirs')
validpgpkeys=('3A24BC1E8FB409FA9F14371813FCEF89DD9E3C4F') validpgpkeys=('3A24BC1E8FB409FA9F14371813FCEF89DD9E3C4F') # Nick Clifton (Chief Binutils Maintainer) <nickc@redhat.com>
source=("https://ftp.gnu.org/gnu/binutils/binutils-${pkgver}.tar.gz"{,.sig}) source=("https://ftp.gnu.org/gnu/binutils/binutils-${pkgver}.tar.gz"{,.sig})
sha256sums=('9b0d97b3d30df184d302bced12f976aa1e5fbf4b0be696cdebc6cca30411a46e' sha512sums=('1e4ee462513eadd3c540e4782f9661df62ecbcd4d6297d61dcc0845ae7d30243c57571787706af3bb4d561e4350609d7057307290e81d76290a301f159a6abc5'
'SKIP') 'SKIP')
_targets="i686-w64-mingw32 x86_64-w64-mingw32"
prepare() { prepare() {
cd ${srcdir}/binutils-${pkgver} cd "$srcdir"/binutils-${pkgver}
#do not install libiberty #do not install libiberty
sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in
# hack! - libiberty configure tests for header files using "$CPP $CPPFLAGS"
sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" libiberty/configure
} }
build() { build() {
# Fix the check for limits.h and certain other checks by dropping the fortify flag from CPPFLAGS
# note: Otherwise libiberty/config.h lacks HAVE_LIMITS_H and the compilation runs into errors like:
# /build/gcc-static-compat/src/gcc/libiberty/fibheap.c:38:25: error: LONG_MIN undeclared (first use in this function)
# 38 | #define FIBHEAPKEY_MIN LONG_MIN
# | ^~~~~~~~
# /build/gcc-static-compat/src/gcc/libiberty/fibheap.c:220:30: note: in expansion of macro FIBHEAPKEY_MIN
# 220 | if (okey == key && okey != FIBHEAPKEY_MIN)
# | ^~~~~~~~~~~~~~
# /build/gcc-static-compat/src/gcc/libiberty/fibheap.c:36:1: note: LONG_MIN is defined in header <limits.h>; did you forget to #include <limits.h>?
# 35 | #include "fibheap.h"
# +++ |+#include <limits.h>
CPPFLAGS=${CPPFLAGS/-D_FORTIFY_SOURCE=2}
for _target in $_targets; do for _target in $_targets; do
msg "Building ${_target} cross binutils" echo "Building ${_target} cross binutils"
mkdir -p ${srcdir}/binutils-${_target} && cd "${srcdir}/binutils-${_target}" mkdir -p "$srcdir"/binutils-${_target} && cd "${srcdir}/binutils-${_target}"
$srcdir/binutils-${pkgver}/configure --prefix=/usr \ "$srcdir"/binutils-${pkgver}/configure --prefix=/usr \
--target=${_target} \ --target=${_target} \
--infodir=/usr/share/info/${_target} \ --infodir=/usr/share/info/${_target} \
--enable-lto --enable-plugins \ --enable-lto --enable-plugins \
--enable-deterministic-archives \ --enable-deterministic-archives \
--disable-multilib --disable-nls \ --disable-multilib --disable-nls \
--disable-werror --disable-werror
make make -O
done done
} }
package() { package() {
for _target in ${_targets}; do for _target in ${_targets}; do
msg "Installing ${_target} cross binutils" echo "Installing ${_target} cross binutils"
cd ${srcdir}/binutils-${_target} cd "$srcdir"/binutils-${_target}
make DESTDIR=${pkgdir} install make DESTDIR="$pkgdir" install
rm "$pkgdir"/usr/lib/bfd-plugins/libdep.so
done done
cd "${pkgdir}/usr/bin" cd "${pkgdir}/usr/bin"
for file in *; do for file in *; do
if [[ ! -L $file ]] && [[ ! -d $file ]]; then if [[ ! -L $file ]] && [[ ! -d $file ]]; then

View File

@ -0,0 +1,62 @@
# Maintainer of official package: Felix Yan <felixonmars@archlinux.org>
pkgname=mingw-w64-binutils
pkgver=2.42
pkgrel=1
pkgdesc="Cross binutils for the MinGW-w64 cross-compiler"
arch=('x86_64')
url="http://www.gnu.org/software/binutils"
license=(GPL-2.0-or-later GPL-3.0-or-later LGPL-2.0-or-later LGPL-3.0-or-later GFDL-1.3 FSFAP)
groups=('mingw-w64-toolchain' 'mingw-w64')
depends=('zlib')
options=('!libtool' '!emptydirs')
validpgpkeys=('3A24BC1E8FB409FA9F14371813FCEF89DD9E3C4F') # Nick Clifton (Chief Binutils Maintainer) <nickc@redhat.com>
source=("https://ftp.gnu.org/gnu/binutils/binutils-${pkgver}.tar.gz"{,.sig})
sha512sums=('1e4ee462513eadd3c540e4782f9661df62ecbcd4d6297d61dcc0845ae7d30243c57571787706af3bb4d561e4350609d7057307290e81d76290a301f159a6abc5'
'SKIP')
_targets="i686-w64-mingw32 x86_64-w64-mingw32"
prepare() {
cd "$srcdir"/binutils-${pkgver}
#do not install libiberty
sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in
}
build() {
# Fix the check for limits.h and certain other checks by dropping the fortify flag from CPPFLAGS
# note: Otherwise libiberty/config.h lacks HAVE_LIMITS_H and the compilation runs into errors like:
# /build/gcc-static-compat/src/gcc/libiberty/fibheap.c:38:25: error: LONG_MIN undeclared (first use in this function)
# 38 | #define FIBHEAPKEY_MIN LONG_MIN
# | ^~~~~~~~
# /build/gcc-static-compat/src/gcc/libiberty/fibheap.c:220:30: note: in expansion of macro FIBHEAPKEY_MIN
# 220 | if (okey == key && okey != FIBHEAPKEY_MIN)
# | ^~~~~~~~~~~~~~
# /build/gcc-static-compat/src/gcc/libiberty/fibheap.c:36:1: note: LONG_MIN is defined in header <limits.h>; did you forget to #include <limits.h>?
# 35 | #include "fibheap.h"
# +++ |+#include <limits.h>
CPPFLAGS=${CPPFLAGS/-D_FORTIFY_SOURCE=2}
for _target in $_targets; do
echo "Building ${_target} cross binutils"
mkdir -p "$srcdir"/binutils-${_target} && cd "${srcdir}/binutils-${_target}"
"$srcdir"/binutils-${pkgver}/configure --prefix=/usr \
--target=${_target} \
--infodir=/usr/share/info/${_target} \
--enable-lto --enable-plugins \
--enable-deterministic-archives \
--disable-multilib --disable-nls \
--disable-werror
make -O
done
}
package() {
for _target in ${_targets}; do
echo "Installing ${_target} cross binutils"
cd "$srcdir"/binutils-${_target}
make DESTDIR="$pkgdir" install
rm "$pkgdir"/usr/lib/bfd-plugins/libdep.so
done
}

View File

@ -3,153 +3,146 @@
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository. # you also find the URL of a binary repository.
_pkgname=boost _android_arch=aarch64
_pkg_arch=aarch64 pkgname=android-${_android_arch}-boost
_android_arch=arm64-v8a pkgver=1.84.0
_boost_arch=arm
_boost_address_model=64
pkgname=android-$_pkg_arch-$_pkgname
pkgver=1.81.0
_srcname=boost_${pkgver//./_}
pkgrel=1 pkgrel=1
url='https://www.boost.org/' _srcname=boost_${pkgver//./_}
arch=('any') arch=('any')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, ${_android_arch})"
url="https://www.boost.org/"
license=('custom') license=('custom')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, $_pkg_arch)" depends=("android-${_android_arch}-bzip2"
depends=("android-$_pkg_arch-libiconv") "android-${_android_arch}-icu"
options=(!buildflags staticlibs !strip !emptydirs) "android-${_android_arch}-zlib"
makedepends=('bzip2' 'zlib' 'android-ndk' 'android-sdk' 'android-environment') "android-${_android_arch}-zstd")
conflicts=("android-$_pkgname-$_android_arch") makedepends=('android-environment')
replaces=("android-$_pkgname-$_android_arch") if [[ $_android_arch == aarch64 ]] || [[ $_android_arch == x86-64 ]]; then
source=(https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.gz makedepends+=("android-${_android_arch}-openmpi")
boost-1.81.0-phoenix-multiple-definitions.patch optdepends+=("android-${_android_arch}-openmpi: for mpi support")
$_pkgname-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch fi
no-versioned-shlibs.patch options=(!strip !buildflags staticlibs !emptydirs)
disable-version-check.patch) source=("https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.bz2"
sha256sums=('205666dea9f6a7cfed87c7a6dfbeb52a2c1b9de55712c9c1a87735d7181452b6' "boost-1.81.0-phoenix-multiple-definitions.patch"
'3ebf428ef6be090a7b56a233330375539ac429333b83708e28fe5db049cfecdb' "boost-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch"
'aa38addb40d5f44b4a8472029b475e7e6aef1c460509eb7d8edf03491dc1b5ee' "disable-version-check.patch")
'd82d0f15064812dcabb3456a7bcb1db0e0f6145980e4728e638372e0fd35af23' md5sums=('9dcd632441e4da04a461082ebbafd337'
'63d12e7d703b471882608b4225c489f6a35ab425602783a4f9c4ea99a10f9c4b') 'cb1c25777e9b85af62366e7c930244b8'
'326826bf610c63c23247e70e648ff104'
'6290eb4fa0cab451aac92e12e85ef073')
prepare() { prepare() {
cd ${_srcname} cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
# https://github.com/boostorg/phoenix/issues/111 # https://github.com/boostorg/phoenix/issues/111
patch -Np1 -i ../boost-1.81.0-phoenix-multiple-definitions.patch patch -Np1 -i ../boost-1.81.0-phoenix-multiple-definitions.patch
# https://github.com/boostorg/ublas/pull/97 # https://github.com/boostorg/ublas/pull/97
patch -Np2 -i ../$_pkgname-ublas-c++20-iterator.patch patch -Np2 -i ../boost-ublas-c++20-iterator.patch
patch -i ../no-versioned-shlibs.patch
patch -p1 -i ../disable-version-check.patch patch -p1 -i ../disable-version-check.patch
} }
build() { build() {
source android-env ${_pkg_arch} cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
local _stagedir="${srcdir}/stagedir" # Platform specific patches
local jobs="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})" case "$_android_arch" in
local target_flags=" \ aarch64)
--target=${_pkg_arch}-linux-android$ANDROID_MINIMUM_PLATFORM --sysroot=$ANDROID_SYSROOT" _boost_arch=arm
local common_flags=" \ _boost_address_model=64
$target_flags \ ;;
-fexceptions \ armv7a-eabi)
-DANDROID \ _boost_arch=arm
-O3 -DNDEBUG \ _boost_address_model=32
-D_FORTIFY_SOURCE=2 -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -fPIC \ ;;
-DBOOST_ASIO_HAS_STD_STRING_VIEW=1" x86)
local ld_flags=" \ _boost_arch=x86
$target_flags \ _boost_address_model=32
-fexceptions" ;;
x86-64)
_boost_arch=x86
_boost_address_model=64
;;
*)
;;
esac
cd ${_srcname} ./bootstrap.sh -with-toolset=gcc
msg2 'Bootstrapping b2' # support for OpenMPI
./bootstrap.sh --with-toolset=gcc if [[ _boost_address_model == 64 ]]; then
_boost_mpi='using mpi ;'
else
_boost_mpi=''
fi
install -Dm755 tools/build/src/engine/b2 "${_stagedir}"/bin/b2 userConfigs=$srcdir/$_srcname/user-config.jam
# Support for OpenMPI cat << EOF > "${userConfigs}"
echo "using mpi ;" >> project-config.jam ${_boost_mpi}
using clang : android : ${ANDROID_CXX} :
<archiver>${ANDROID_AR} \
<assembler>${ANDROID_AS}
;
EOF
# boostbook is needed by quickbook ./b2 install \
install -dm755 "${_stagedir}"/share/boostbook --prefix="$srcdir/fakeinstall" \
cp -a tools/boostbook/{xsl,dtd} "${_stagedir}"/share/boostbook/ --user-config="${userConfigs}" \
--layout=system \
# default "minimal" install: "release link=shared,static --with-atomic \
# runtime-link=shared threading=single,multi" --with-chrono \
# --layout=tagged will add the "-mt" suffix for multithreaded libraries --with-container \
# and installs includes in $ANDROID_PREFIX/include/boost. --with-date_time \
# --layout=system no longer adds the -mt suffix for multi-threaded libs. --with-exception \
# install to ${_stagedir} for consistency with regular boost package --with-fiber \
msg2 'Invoking build via b2' --with-filesystem \
export PATH=$ANDROID_CROSS_PREFIX:$PATH --with-graph \
"${_stagedir}"/bin/b2 \ --with-graph_parallel \
--with-atomic \ --with-iostreams \
--with-chrono \ --with-locale \
--with-container \ --with-log \
--with-date_time \ --with-math \
--with-exception \ --with-mpi \
--with-fiber \ --with-program_options \
--with-filesystem \ --with-random \
--with-graph \ --with-regex \
--with-graph_parallel \ --with-serialization \
--with-iostreams \ --with-system \
--with-locale \ --with-test \
--with-log \ --with-thread \
--with-math \ --with-timer \
--with-mpi \ --with-type_erasure \
--with-program_options \ --with-wave \
--with-random \ --with-stacktrace \
--with-regex \ -sICONV_PATH="${ANDROID_PREFIX}" \
--with-serialization \ variant=release \
--with-system \ debug-symbols=off \
--with-test \ runtime-link=shared \
--with-thread \ link=shared,static \
--with-timer \ target-os=android \
--with-type_erasure \ toolset=clang-android \
--with-wave \ architecture=$_boost_arch \
--with-stacktrace \ threading=multi \
variant=release \ address-model=$_boost_address_model \
debug-symbols=off \ cflags="${CXXFLAGS}" \
threading=multi \ cxxflags="${CFLAGS}" \
runtime-link=shared \ linkflags="${LDFLAGS}"
link=shared,static \
target-os=android \
toolset=clang-android \
architecture=$_boost_arch \
address-model=$_boost_address_model \
-sICONV_PATH="$ANDROID_PREFIX" \
cflags="$common_flags" \
cxxflags="$common_flags -frtti -std=gnu++17" \
linkflags="$ld_flags" \
--layout=system \
${jobs} \
\
--prefix="${_stagedir}" \
install
} }
package() { package() {
source android-env ${_pkg_arch} cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
local _stagedir="${srcdir}/stagedir" find "${srcdir}/fakeinstall"/lib -iname '*.a' -exec $ANDROID_STRIP -g {} \;
install -dm755 "${pkgdir}$ANDROID_PREFIX" find "${srcdir}/fakeinstall"/lib -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
cp -a "${_stagedir}"/{include,share} "${pkgdir}$ANDROID_PREFIX"
local libdir="${pkgdir}$ANDROID_PREFIX"/lib install -dm755 "$pkgdir/${ANDROID_PREFIX_LIB}/"
install -d "${libdir}" cp -a "${srcdir}/fakeinstall"/lib/*.{a,so} "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${_stagedir}"/lib/*.a "${libdir}"/ cp -a "${srcdir}/fakeinstall"/lib/cmake "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${srcdir}/fakeinstall"/include "$pkgdir/${ANDROID_PREFIX}/"
install -dm755 "${pkgdir}$ANDROID_PREFIX" install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE_1_0.txt
cp -a "${_stagedir}"/lib "${pkgdir}$ANDROID_PREFIX"
install -Dm644 "${srcdir}/"${_srcname}/LICENSE_1_0.txt \
"${pkgdir}"/usr/share/licenses/$pkgname/LICENSE_1_0.txt
find "${libdir}" -iname '*.a' -exec $ANDROID_STRIP -g {} \;
find "${libdir}" -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
} }
# vim: ts=2 sw=2 et:

View File

@ -1,11 +0,0 @@
--- boostcpp.jam.old 2018-08-01 22:50:40.000000000 +0200
+++ boostcpp.jam 2018-10-07 01:48:30.175912524 +0200
@@ -154,7 +154,7 @@
# libFoo.1.2.3.dylib format. AIX linkers do not accept version suffixes
# either. Pgi compilers can not accept a library with version suffix.
if $(type) = SHARED_LIB &&
- ! [ $(property-set).get <target-os> ] in windows cygwin darwin aix &&
+ ! [ $(property-set).get <target-os> ] in windows cygwin darwin aix android &&
! [ $(property-set).get <toolset> ] in pgi
{
result = $(result).$(BOOST_VERSION) ;

View File

@ -3,153 +3,146 @@
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository. # you also find the URL of a binary repository.
_pkgname=boost _android_arch=armv7a-eabi
_pkg_arch=armv7a-eabi pkgname=android-${_android_arch}-boost
_android_arch=armeabi-v7a pkgver=1.84.0
_boost_arch=arm
_boost_address_model=32
pkgname=android-$_pkg_arch-$_pkgname
pkgver=1.81.0
_srcname=boost_${pkgver//./_}
pkgrel=1 pkgrel=1
url='https://www.boost.org/' _srcname=boost_${pkgver//./_}
arch=('any') arch=('any')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, ${_android_arch})"
url="https://www.boost.org/"
license=('custom') license=('custom')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, $_pkg_arch)" depends=("android-${_android_arch}-bzip2"
depends=("android-$_pkg_arch-libiconv") "android-${_android_arch}-icu"
options=(!buildflags staticlibs !strip !emptydirs) "android-${_android_arch}-zlib"
makedepends=('bzip2' 'zlib' 'android-ndk' 'android-sdk' 'android-environment') "android-${_android_arch}-zstd")
conflicts=("android-$_pkgname-$_android_arch") makedepends=('android-environment')
replaces=("android-$_pkgname-$_android_arch") if [[ $_android_arch == aarch64 ]] || [[ $_android_arch == x86-64 ]]; then
source=(https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.gz makedepends+=("android-${_android_arch}-openmpi")
boost-1.81.0-phoenix-multiple-definitions.patch optdepends+=("android-${_android_arch}-openmpi: for mpi support")
$_pkgname-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch fi
no-versioned-shlibs.patch options=(!strip !buildflags staticlibs !emptydirs)
disable-version-check.patch) source=("https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.bz2"
sha256sums=('205666dea9f6a7cfed87c7a6dfbeb52a2c1b9de55712c9c1a87735d7181452b6' "boost-1.81.0-phoenix-multiple-definitions.patch"
'3ebf428ef6be090a7b56a233330375539ac429333b83708e28fe5db049cfecdb' "boost-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch"
'aa38addb40d5f44b4a8472029b475e7e6aef1c460509eb7d8edf03491dc1b5ee' "disable-version-check.patch")
'd82d0f15064812dcabb3456a7bcb1db0e0f6145980e4728e638372e0fd35af23' md5sums=('9dcd632441e4da04a461082ebbafd337'
'63d12e7d703b471882608b4225c489f6a35ab425602783a4f9c4ea99a10f9c4b') 'cb1c25777e9b85af62366e7c930244b8'
'326826bf610c63c23247e70e648ff104'
'6290eb4fa0cab451aac92e12e85ef073')
prepare() { prepare() {
cd ${_srcname} cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
# https://github.com/boostorg/phoenix/issues/111 # https://github.com/boostorg/phoenix/issues/111
patch -Np1 -i ../boost-1.81.0-phoenix-multiple-definitions.patch patch -Np1 -i ../boost-1.81.0-phoenix-multiple-definitions.patch
# https://github.com/boostorg/ublas/pull/97 # https://github.com/boostorg/ublas/pull/97
patch -Np2 -i ../$_pkgname-ublas-c++20-iterator.patch patch -Np2 -i ../boost-ublas-c++20-iterator.patch
patch -i ../no-versioned-shlibs.patch
patch -p1 -i ../disable-version-check.patch patch -p1 -i ../disable-version-check.patch
} }
build() { build() {
source android-env ${_pkg_arch} cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
local _stagedir="${srcdir}/stagedir" # Platform specific patches
local jobs="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})" case "$_android_arch" in
local target_flags=" \ aarch64)
--target=${_pkg_arch}-linux-android$ANDROID_MINIMUM_PLATFORM --sysroot=$ANDROID_SYSROOT" _boost_arch=arm
local common_flags=" \ _boost_address_model=64
$target_flags \ ;;
-fexceptions \ armv7a-eabi)
-DANDROID \ _boost_arch=arm
-O3 -DNDEBUG \ _boost_address_model=32
-D_FORTIFY_SOURCE=2 -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -fPIC \ ;;
-DBOOST_ASIO_HAS_STD_STRING_VIEW=1" x86)
local ld_flags=" \ _boost_arch=x86
$target_flags \ _boost_address_model=32
-fexceptions" ;;
x86-64)
_boost_arch=x86
_boost_address_model=64
;;
*)
;;
esac
cd ${_srcname} ./bootstrap.sh -with-toolset=gcc
msg2 'Bootstrapping b2' # support for OpenMPI
./bootstrap.sh --with-toolset=gcc if [[ _boost_address_model == 64 ]]; then
_boost_mpi='using mpi ;'
else
_boost_mpi=''
fi
install -Dm755 tools/build/src/engine/b2 "${_stagedir}"/bin/b2 userConfigs=$srcdir/$_srcname/user-config.jam
# Support for OpenMPI cat << EOF > "${userConfigs}"
echo "using mpi ;" >> project-config.jam ${_boost_mpi}
using clang : android : ${ANDROID_CXX} :
<archiver>${ANDROID_AR} \
<assembler>${ANDROID_AS}
;
EOF
# boostbook is needed by quickbook ./b2 install \
install -dm755 "${_stagedir}"/share/boostbook --prefix="$srcdir/fakeinstall" \
cp -a tools/boostbook/{xsl,dtd} "${_stagedir}"/share/boostbook/ --user-config="${userConfigs}" \
--layout=system \
# default "minimal" install: "release link=shared,static --with-atomic \
# runtime-link=shared threading=single,multi" --with-chrono \
# --layout=tagged will add the "-mt" suffix for multithreaded libraries --with-container \
# and installs includes in $ANDROID_PREFIX/include/boost. --with-date_time \
# --layout=system no longer adds the -mt suffix for multi-threaded libs. --with-exception \
# install to ${_stagedir} for consistency with regular boost package --with-fiber \
msg2 'Invoking build via b2' --with-filesystem \
export PATH=$ANDROID_CROSS_PREFIX:$PATH --with-graph \
"${_stagedir}"/bin/b2 \ --with-graph_parallel \
--with-atomic \ --with-iostreams \
--with-chrono \ --with-locale \
--with-container \ --with-log \
--with-date_time \ --with-math \
--with-exception \ --with-mpi \
--with-fiber \ --with-program_options \
--with-filesystem \ --with-random \
--with-graph \ --with-regex \
--with-graph_parallel \ --with-serialization \
--with-iostreams \ --with-system \
--with-locale \ --with-test \
--with-log \ --with-thread \
--with-math \ --with-timer \
--with-mpi \ --with-type_erasure \
--with-program_options \ --with-wave \
--with-random \ --with-stacktrace \
--with-regex \ -sICONV_PATH="${ANDROID_PREFIX}" \
--with-serialization \ variant=release \
--with-system \ debug-symbols=off \
--with-test \ runtime-link=shared \
--with-thread \ link=shared,static \
--with-timer \ target-os=android \
--with-type_erasure \ toolset=clang-android \
--with-wave \ architecture=$_boost_arch \
--with-stacktrace \ threading=multi \
variant=release \ address-model=$_boost_address_model \
debug-symbols=off \ cflags="${CXXFLAGS}" \
threading=multi \ cxxflags="${CFLAGS}" \
runtime-link=shared \ linkflags="${LDFLAGS}"
link=shared,static \
target-os=android \
toolset=clang-android \
architecture=$_boost_arch \
address-model=$_boost_address_model \
-sICONV_PATH="$ANDROID_PREFIX" \
cflags="$common_flags" \
cxxflags="$common_flags -frtti -std=gnu++17" \
linkflags="$ld_flags" \
--layout=system \
${jobs} \
\
--prefix="${_stagedir}" \
install
} }
package() { package() {
source android-env ${_pkg_arch} cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
local _stagedir="${srcdir}/stagedir" find "${srcdir}/fakeinstall"/lib -iname '*.a' -exec $ANDROID_STRIP -g {} \;
install -dm755 "${pkgdir}$ANDROID_PREFIX" find "${srcdir}/fakeinstall"/lib -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
cp -a "${_stagedir}"/{include,share} "${pkgdir}$ANDROID_PREFIX"
local libdir="${pkgdir}$ANDROID_PREFIX"/lib install -dm755 "$pkgdir/${ANDROID_PREFIX_LIB}/"
install -d "${libdir}" cp -a "${srcdir}/fakeinstall"/lib/*.{a,so} "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${_stagedir}"/lib/*.a "${libdir}"/ cp -a "${srcdir}/fakeinstall"/lib/cmake "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${srcdir}/fakeinstall"/include "$pkgdir/${ANDROID_PREFIX}/"
install -dm755 "${pkgdir}$ANDROID_PREFIX" install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE_1_0.txt
cp -a "${_stagedir}"/lib "${pkgdir}$ANDROID_PREFIX"
install -Dm644 "${srcdir}/"${_srcname}/LICENSE_1_0.txt \
"${pkgdir}"/usr/share/licenses/$pkgname/LICENSE_1_0.txt
find "${libdir}" -iname '*.a' -exec $ANDROID_STRIP -g {} \;
find "${libdir}" -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
} }
# vim: ts=2 sw=2 et:

View File

@ -1,11 +0,0 @@
--- boostcpp.jam.old 2018-08-01 22:50:40.000000000 +0200
+++ boostcpp.jam 2018-10-07 01:48:30.175912524 +0200
@@ -154,7 +154,7 @@
# libFoo.1.2.3.dylib format. AIX linkers do not accept version suffixes
# either. Pgi compilers can not accept a library with version suffix.
if $(type) = SHARED_LIB &&
- ! [ $(property-set).get <target-os> ] in windows cygwin darwin aix &&
+ ! [ $(property-set).get <target-os> ] in windows cygwin darwin aix android &&
! [ $(property-set).get <toolset> ] in pgi
{
result = $(result).$(BOOST_VERSION) ;

View File

@ -3,153 +3,146 @@
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository. # you also find the URL of a binary repository.
_pkgname=boost _android_arch=x86-64
_pkg_arch=x86-64 pkgname=android-${_android_arch}-boost
_android_arch=x86_64 pkgver=1.84.0
_boost_arch=x86
_boost_address_model=64
pkgname=android-$_pkg_arch-$_pkgname
pkgver=1.81.0
_srcname=boost_${pkgver//./_}
pkgrel=1 pkgrel=1
url='https://www.boost.org/' _srcname=boost_${pkgver//./_}
arch=('any') arch=('any')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, ${_android_arch})"
url="https://www.boost.org/"
license=('custom') license=('custom')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, $_pkg_arch)" depends=("android-${_android_arch}-bzip2"
depends=("android-$_pkg_arch-libiconv") "android-${_android_arch}-icu"
options=(!buildflags staticlibs !strip !emptydirs) "android-${_android_arch}-zlib"
makedepends=('bzip2' 'zlib' 'android-ndk' 'android-sdk' 'android-environment') "android-${_android_arch}-zstd")
conflicts=("android-$_pkgname-$_android_arch") makedepends=('android-environment')
replaces=("android-$_pkgname-$_android_arch") if [[ $_android_arch == aarch64 ]] || [[ $_android_arch == x86-64 ]]; then
source=(https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.gz makedepends+=("android-${_android_arch}-openmpi")
boost-1.81.0-phoenix-multiple-definitions.patch optdepends+=("android-${_android_arch}-openmpi: for mpi support")
$_pkgname-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch fi
no-versioned-shlibs.patch options=(!strip !buildflags staticlibs !emptydirs)
disable-version-check.patch) source=("https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.bz2"
sha256sums=('205666dea9f6a7cfed87c7a6dfbeb52a2c1b9de55712c9c1a87735d7181452b6' "boost-1.81.0-phoenix-multiple-definitions.patch"
'3ebf428ef6be090a7b56a233330375539ac429333b83708e28fe5db049cfecdb' "boost-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch"
'aa38addb40d5f44b4a8472029b475e7e6aef1c460509eb7d8edf03491dc1b5ee' "disable-version-check.patch")
'd82d0f15064812dcabb3456a7bcb1db0e0f6145980e4728e638372e0fd35af23' md5sums=('9dcd632441e4da04a461082ebbafd337'
'63d12e7d703b471882608b4225c489f6a35ab425602783a4f9c4ea99a10f9c4b') 'cb1c25777e9b85af62366e7c930244b8'
'326826bf610c63c23247e70e648ff104'
'6290eb4fa0cab451aac92e12e85ef073')
prepare() { prepare() {
cd ${_srcname} cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
# https://github.com/boostorg/phoenix/issues/111 # https://github.com/boostorg/phoenix/issues/111
patch -Np1 -i ../boost-1.81.0-phoenix-multiple-definitions.patch patch -Np1 -i ../boost-1.81.0-phoenix-multiple-definitions.patch
# https://github.com/boostorg/ublas/pull/97 # https://github.com/boostorg/ublas/pull/97
patch -Np2 -i ../$_pkgname-ublas-c++20-iterator.patch patch -Np2 -i ../boost-ublas-c++20-iterator.patch
patch -i ../no-versioned-shlibs.patch
patch -p1 -i ../disable-version-check.patch patch -p1 -i ../disable-version-check.patch
} }
build() { build() {
source android-env ${_pkg_arch} cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
local _stagedir="${srcdir}/stagedir" # Platform specific patches
local jobs="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})" case "$_android_arch" in
local target_flags=" \ aarch64)
--target=${_pkg_arch}-linux-android$ANDROID_MINIMUM_PLATFORM --sysroot=$ANDROID_SYSROOT" _boost_arch=arm
local common_flags=" \ _boost_address_model=64
$target_flags \ ;;
-fexceptions \ armv7a-eabi)
-DANDROID \ _boost_arch=arm
-O3 -DNDEBUG \ _boost_address_model=32
-D_FORTIFY_SOURCE=2 -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -fPIC \ ;;
-DBOOST_ASIO_HAS_STD_STRING_VIEW=1" x86)
local ld_flags=" \ _boost_arch=x86
$target_flags \ _boost_address_model=32
-fexceptions" ;;
x86-64)
_boost_arch=x86
_boost_address_model=64
;;
*)
;;
esac
cd ${_srcname} ./bootstrap.sh -with-toolset=gcc
msg2 'Bootstrapping b2' # support for OpenMPI
./bootstrap.sh --with-toolset=gcc if [[ _boost_address_model == 64 ]]; then
_boost_mpi='using mpi ;'
else
_boost_mpi=''
fi
install -Dm755 tools/build/src/engine/b2 "${_stagedir}"/bin/b2 userConfigs=$srcdir/$_srcname/user-config.jam
# Support for OpenMPI cat << EOF > "${userConfigs}"
echo "using mpi ;" >> project-config.jam ${_boost_mpi}
using clang : android : ${ANDROID_CXX} :
<archiver>${ANDROID_AR} \
<assembler>${ANDROID_AS}
;
EOF
# boostbook is needed by quickbook ./b2 install \
install -dm755 "${_stagedir}"/share/boostbook --prefix="$srcdir/fakeinstall" \
cp -a tools/boostbook/{xsl,dtd} "${_stagedir}"/share/boostbook/ --user-config="${userConfigs}" \
--layout=system \
# default "minimal" install: "release link=shared,static --with-atomic \
# runtime-link=shared threading=single,multi" --with-chrono \
# --layout=tagged will add the "-mt" suffix for multithreaded libraries --with-container \
# and installs includes in $ANDROID_PREFIX/include/boost. --with-date_time \
# --layout=system no longer adds the -mt suffix for multi-threaded libs. --with-exception \
# install to ${_stagedir} for consistency with regular boost package --with-fiber \
msg2 'Invoking build via b2' --with-filesystem \
export PATH=$ANDROID_CROSS_PREFIX:$PATH --with-graph \
"${_stagedir}"/bin/b2 \ --with-graph_parallel \
--with-atomic \ --with-iostreams \
--with-chrono \ --with-locale \
--with-container \ --with-log \
--with-date_time \ --with-math \
--with-exception \ --with-mpi \
--with-fiber \ --with-program_options \
--with-filesystem \ --with-random \
--with-graph \ --with-regex \
--with-graph_parallel \ --with-serialization \
--with-iostreams \ --with-system \
--with-locale \ --with-test \
--with-log \ --with-thread \
--with-math \ --with-timer \
--with-mpi \ --with-type_erasure \
--with-program_options \ --with-wave \
--with-random \ --with-stacktrace \
--with-regex \ -sICONV_PATH="${ANDROID_PREFIX}" \
--with-serialization \ variant=release \
--with-system \ debug-symbols=off \
--with-test \ runtime-link=shared \
--with-thread \ link=shared,static \
--with-timer \ target-os=android \
--with-type_erasure \ toolset=clang-android \
--with-wave \ architecture=$_boost_arch \
--with-stacktrace \ threading=multi \
variant=release \ address-model=$_boost_address_model \
debug-symbols=off \ cflags="${CXXFLAGS}" \
threading=multi \ cxxflags="${CFLAGS}" \
runtime-link=shared \ linkflags="${LDFLAGS}"
link=shared,static \
target-os=android \
toolset=clang-android \
architecture=$_boost_arch \
address-model=$_boost_address_model \
-sICONV_PATH="$ANDROID_PREFIX" \
cflags="$common_flags" \
cxxflags="$common_flags -frtti -std=gnu++17" \
linkflags="$ld_flags" \
--layout=system \
${jobs} \
\
--prefix="${_stagedir}" \
install
} }
package() { package() {
source android-env ${_pkg_arch} cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
local _stagedir="${srcdir}/stagedir" find "${srcdir}/fakeinstall"/lib -iname '*.a' -exec $ANDROID_STRIP -g {} \;
install -dm755 "${pkgdir}$ANDROID_PREFIX" find "${srcdir}/fakeinstall"/lib -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
cp -a "${_stagedir}"/{include,share} "${pkgdir}$ANDROID_PREFIX"
local libdir="${pkgdir}$ANDROID_PREFIX"/lib install -dm755 "$pkgdir/${ANDROID_PREFIX_LIB}/"
install -d "${libdir}" cp -a "${srcdir}/fakeinstall"/lib/*.{a,so} "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${_stagedir}"/lib/*.a "${libdir}"/ cp -a "${srcdir}/fakeinstall"/lib/cmake "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${srcdir}/fakeinstall"/include "$pkgdir/${ANDROID_PREFIX}/"
install -dm755 "${pkgdir}$ANDROID_PREFIX" install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE_1_0.txt
cp -a "${_stagedir}"/lib "${pkgdir}$ANDROID_PREFIX"
install -Dm644 "${srcdir}/"${_srcname}/LICENSE_1_0.txt \
"${pkgdir}"/usr/share/licenses/$pkgname/LICENSE_1_0.txt
find "${libdir}" -iname '*.a' -exec $ANDROID_STRIP -g {} \;
find "${libdir}" -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
} }
# vim: ts=2 sw=2 et:

View File

@ -1,11 +0,0 @@
--- boostcpp.jam.old 2018-08-01 22:50:40.000000000 +0200
+++ boostcpp.jam 2018-10-07 01:48:30.175912524 +0200
@@ -154,7 +154,7 @@
# libFoo.1.2.3.dylib format. AIX linkers do not accept version suffixes
# either. Pgi compilers can not accept a library with version suffix.
if $(type) = SHARED_LIB &&
- ! [ $(property-set).get <target-os> ] in windows cygwin darwin aix &&
+ ! [ $(property-set).get <target-os> ] in windows cygwin darwin aix android &&
! [ $(property-set).get <toolset> ] in pgi
{
result = $(result).$(BOOST_VERSION) ;

View File

@ -3,153 +3,146 @@
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository. # you also find the URL of a binary repository.
_pkgname=boost
_pkg_arch=x86
_android_arch=x86 _android_arch=x86
_boost_arch=x86 pkgname=android-${_android_arch}-boost
_boost_address_model=32 pkgver=1.84.0
pkgname=android-$_pkg_arch-$_pkgname
pkgver=1.81.0
_srcname=boost_${pkgver//./_}
pkgrel=1 pkgrel=1
url='https://www.boost.org/' _srcname=boost_${pkgver//./_}
arch=('any') arch=('any')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, ${_android_arch})"
url="https://www.boost.org/"
license=('custom') license=('custom')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, $_pkg_arch)" depends=("android-${_android_arch}-bzip2"
depends=("android-$_pkg_arch-libiconv") "android-${_android_arch}-icu"
options=(!buildflags staticlibs !strip !emptydirs) "android-${_android_arch}-zlib"
makedepends=('bzip2' 'zlib' 'android-ndk' 'android-sdk' 'android-environment') "android-${_android_arch}-zstd")
conflicts=("android-$_pkgname-$_android_arch") makedepends=('android-environment')
replaces=("android-$_pkgname-$_android_arch") if [[ $_android_arch == aarch64 ]] || [[ $_android_arch == x86-64 ]]; then
source=(https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.gz makedepends+=("android-${_android_arch}-openmpi")
boost-1.81.0-phoenix-multiple-definitions.patch optdepends+=("android-${_android_arch}-openmpi: for mpi support")
$_pkgname-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch fi
no-versioned-shlibs.patch options=(!strip !buildflags staticlibs !emptydirs)
disable-version-check.patch) source=("https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.bz2"
sha256sums=('205666dea9f6a7cfed87c7a6dfbeb52a2c1b9de55712c9c1a87735d7181452b6' "boost-1.81.0-phoenix-multiple-definitions.patch"
'3ebf428ef6be090a7b56a233330375539ac429333b83708e28fe5db049cfecdb' "boost-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch"
'aa38addb40d5f44b4a8472029b475e7e6aef1c460509eb7d8edf03491dc1b5ee' "disable-version-check.patch")
'd82d0f15064812dcabb3456a7bcb1db0e0f6145980e4728e638372e0fd35af23' md5sums=('9dcd632441e4da04a461082ebbafd337'
'63d12e7d703b471882608b4225c489f6a35ab425602783a4f9c4ea99a10f9c4b') 'cb1c25777e9b85af62366e7c930244b8'
'326826bf610c63c23247e70e648ff104'
'6290eb4fa0cab451aac92e12e85ef073')
prepare() { prepare() {
cd ${_srcname} cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
# https://github.com/boostorg/phoenix/issues/111 # https://github.com/boostorg/phoenix/issues/111
patch -Np1 -i ../boost-1.81.0-phoenix-multiple-definitions.patch patch -Np1 -i ../boost-1.81.0-phoenix-multiple-definitions.patch
# https://github.com/boostorg/ublas/pull/97 # https://github.com/boostorg/ublas/pull/97
patch -Np2 -i ../$_pkgname-ublas-c++20-iterator.patch patch -Np2 -i ../boost-ublas-c++20-iterator.patch
patch -i ../no-versioned-shlibs.patch
patch -p1 -i ../disable-version-check.patch patch -p1 -i ../disable-version-check.patch
} }
build() { build() {
source android-env ${_pkg_arch} cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
local _stagedir="${srcdir}/stagedir" # Platform specific patches
local jobs="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})" case "$_android_arch" in
local target_flags=" \ aarch64)
--target=${_pkg_arch}-linux-android$ANDROID_MINIMUM_PLATFORM --sysroot=$ANDROID_SYSROOT" _boost_arch=arm
local common_flags=" \ _boost_address_model=64
$target_flags \ ;;
-fexceptions \ armv7a-eabi)
-DANDROID \ _boost_arch=arm
-O3 -DNDEBUG \ _boost_address_model=32
-D_FORTIFY_SOURCE=2 -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -fPIC \ ;;
-DBOOST_ASIO_HAS_STD_STRING_VIEW=1" x86)
local ld_flags=" \ _boost_arch=x86
$target_flags \ _boost_address_model=32
-fexceptions" ;;
x86-64)
_boost_arch=x86
_boost_address_model=64
;;
*)
;;
esac
cd ${_srcname} ./bootstrap.sh -with-toolset=gcc
msg2 'Bootstrapping b2' # support for OpenMPI
./bootstrap.sh --with-toolset=gcc if [[ _boost_address_model == 64 ]]; then
_boost_mpi='using mpi ;'
else
_boost_mpi=''
fi
install -Dm755 tools/build/src/engine/b2 "${_stagedir}"/bin/b2 userConfigs=$srcdir/$_srcname/user-config.jam
# Support for OpenMPI cat << EOF > "${userConfigs}"
echo "using mpi ;" >> project-config.jam ${_boost_mpi}
using clang : android : ${ANDROID_CXX} :
<archiver>${ANDROID_AR} \
<assembler>${ANDROID_AS}
;
EOF
# boostbook is needed by quickbook ./b2 install \
install -dm755 "${_stagedir}"/share/boostbook --prefix="$srcdir/fakeinstall" \
cp -a tools/boostbook/{xsl,dtd} "${_stagedir}"/share/boostbook/ --user-config="${userConfigs}" \
--layout=system \
# default "minimal" install: "release link=shared,static --with-atomic \
# runtime-link=shared threading=single,multi" --with-chrono \
# --layout=tagged will add the "-mt" suffix for multithreaded libraries --with-container \
# and installs includes in $ANDROID_PREFIX/include/boost. --with-date_time \
# --layout=system no longer adds the -mt suffix for multi-threaded libs. --with-exception \
# install to ${_stagedir} for consistency with regular boost package --with-fiber \
msg2 'Invoking build via b2' --with-filesystem \
export PATH=$ANDROID_CROSS_PREFIX:$PATH --with-graph \
"${_stagedir}"/bin/b2 \ --with-graph_parallel \
--with-atomic \ --with-iostreams \
--with-chrono \ --with-locale \
--with-container \ --with-log \
--with-date_time \ --with-math \
--with-exception \ --with-mpi \
--with-fiber \ --with-program_options \
--with-filesystem \ --with-random \
--with-graph \ --with-regex \
--with-graph_parallel \ --with-serialization \
--with-iostreams \ --with-system \
--with-locale \ --with-test \
--with-log \ --with-thread \
--with-math \ --with-timer \
--with-mpi \ --with-type_erasure \
--with-program_options \ --with-wave \
--with-random \ --with-stacktrace \
--with-regex \ -sICONV_PATH="${ANDROID_PREFIX}" \
--with-serialization \ variant=release \
--with-system \ debug-symbols=off \
--with-test \ runtime-link=shared \
--with-thread \ link=shared,static \
--with-timer \ target-os=android \
--with-type_erasure \ toolset=clang-android \
--with-wave \ architecture=$_boost_arch \
--with-stacktrace \ threading=multi \
variant=release \ address-model=$_boost_address_model \
debug-symbols=off \ cflags="${CXXFLAGS}" \
threading=multi \ cxxflags="${CFLAGS}" \
runtime-link=shared \ linkflags="${LDFLAGS}"
link=shared,static \
target-os=android \
toolset=clang-android \
architecture=$_boost_arch \
address-model=$_boost_address_model \
-sICONV_PATH="$ANDROID_PREFIX" \
cflags="$common_flags" \
cxxflags="$common_flags -frtti -std=gnu++17" \
linkflags="$ld_flags" \
--layout=system \
${jobs} \
\
--prefix="${_stagedir}" \
install
} }
package() { package() {
source android-env ${_pkg_arch} cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
local _stagedir="${srcdir}/stagedir" find "${srcdir}/fakeinstall"/lib -iname '*.a' -exec $ANDROID_STRIP -g {} \;
install -dm755 "${pkgdir}$ANDROID_PREFIX" find "${srcdir}/fakeinstall"/lib -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
cp -a "${_stagedir}"/{include,share} "${pkgdir}$ANDROID_PREFIX"
local libdir="${pkgdir}$ANDROID_PREFIX"/lib install -dm755 "$pkgdir/${ANDROID_PREFIX_LIB}/"
install -d "${libdir}" cp -a "${srcdir}/fakeinstall"/lib/*.{a,so} "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${_stagedir}"/lib/*.a "${libdir}"/ cp -a "${srcdir}/fakeinstall"/lib/cmake "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${srcdir}/fakeinstall"/include "$pkgdir/${ANDROID_PREFIX}/"
install -dm755 "${pkgdir}$ANDROID_PREFIX" install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE_1_0.txt
cp -a "${_stagedir}"/lib "${pkgdir}$ANDROID_PREFIX"
install -Dm644 "${srcdir}/"${_srcname}/LICENSE_1_0.txt \
"${pkgdir}"/usr/share/licenses/$pkgname/LICENSE_1_0.txt
find "${libdir}" -iname '*.a' -exec $ANDROID_STRIP -g {} \;
find "${libdir}" -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
} }
# vim: ts=2 sw=2 et:

View File

@ -1,11 +0,0 @@
--- boostcpp.jam.old 2018-08-01 22:50:40.000000000 +0200
+++ boostcpp.jam 2018-10-07 01:48:30.175912524 +0200
@@ -154,7 +154,7 @@
# libFoo.1.2.3.dylib format. AIX linkers do not accept version suffixes
# either. Pgi compilers can not accept a library with version suffix.
if $(type) = SHARED_LIB &&
- ! [ $(property-set).get <target-os> ] in windows cygwin darwin aix &&
+ ! [ $(property-set).get <target-os> ] in windows cygwin darwin aix android &&
! [ $(property-set).get <toolset> ] in pgi
{
result = $(result).$(BOOST_VERSION) ;

18
buildenv/default/PKGBUILD Normal file
View File

@ -0,0 +1,18 @@
pkgname=buildenv
pkgver=1
pkgrel=2
pkgdesc='Build environment for my Arch Linux package builds'
arch=('any')
license=('GPL-2.0-or-later')
url='https://github.com/Martchus/PKGBUILDs'
depends=('base-devel' 'multilib-devel')
source=(android.sh parallel.sh)
sha256sums=(SKIP SKIP)
package() {
cd "$srcdir"
mkdir -p "$pkgdir/usr/share/makepkg/buildenv"
for src in android parallel; do
cp -v "$src.sh" "$pkgdir/usr/share/makepkg/buildenv/$src.sh"
done
}

View File

@ -0,0 +1,12 @@
#!/usr/bin/bash
[[ -n "$LIBMAKEPKG_BUILDENV_ANDROID_SH" ]] && return
LIBMAKEPKG_BUILDENV_ANDROID_SH=1
buildenv_functions+=('buildenv_android')
buildenv_vars+=('ANDROID_MINIMUM_PLATFORM')
buildenv_android() {
# set minimum Android version to Android 7.0
ANDROID_MINIMUM_PLATFORM=24
}

View File

@ -0,0 +1,10 @@
#!/usr/bin/bash
[[ -n "$LIBMAKEPKG_BUILDENV_PARALLEL_SH" ]] && return
LIBMAKEPKG_BUILDENV_PARALLEL_SH=1
buildenv_functions+=('buildenv_parallel')
buildenv_parallel() {
[[ $MAKEFLAGS ]] || MAKEFLAGS=-j$(nproc)
}

View File

@ -5,7 +5,7 @@
_reponame=cpp-utilities _reponame=cpp-utilities
pkgname=c++utilities pkgname=c++utilities
pkgver=5.24.5 pkgver=5.24.8
pkgrel=1 pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64') arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
pkgdesc='Common C++ classes and routines such as argument parser, IO and conversion utilities' pkgdesc='Common C++ classes and routines such as argument parser, IO and conversion utilities'
@ -17,7 +17,7 @@ checkdepends=('cppunit')
provides=(libc++utilities.so) provides=(libc++utilities.so)
url="https://github.com/Martchus/${_reponame}" url="https://github.com/Martchus/${_reponame}"
source=("${pkgname}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz") source=("${pkgname}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('28cfbfe4e91eb37d9c0224f39def16b4aab41d09d7762a120c83382cf2fb3cbc') sha256sums=('2175b45a53f5c71bb022aea1409535a82b115ce76dbcc5123b3be39f8557858a')
build() { build() {
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}" cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"

View File

@ -6,7 +6,7 @@
_name=c++utilities _name=c++utilities
_reponame=cpp-utilities _reponame=cpp-utilities
pkgname=$_name-doc pkgname=$_name-doc
pkgver=5.24.5 pkgver=5.24.8
pkgrel=1 pkgrel=1
arch=('any') arch=('any')
pkgdesc='Common C++ classes and routines such as argument parser, IO and conversion utilities (API documentation)' pkgdesc='Common C++ classes and routines such as argument parser, IO and conversion utilities (API documentation)'
@ -14,7 +14,7 @@ license=('GPL')
makedepends=('cmake' 'ninja' 'doxygen' 'graphviz') makedepends=('cmake' 'ninja' 'doxygen' 'graphviz')
url="https://github.com/Martchus/${_reponame}" url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz") source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('28cfbfe4e91eb37d9c0224f39def16b4aab41d09d7762a120c83382cf2fb3cbc') sha256sums=('2175b45a53f5c71bb022aea1409535a82b115ce76dbcc5123b3be39f8557858a')
build() { build() {
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}" cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"

View File

@ -6,7 +6,7 @@
_reponame=cpp-utilities _reponame=cpp-utilities
pkgname=mingw-w64-c++utilities pkgname=mingw-w64-c++utilities
_name=${pkgname#mingw-w64-} _name=${pkgname#mingw-w64-}
pkgver=5.24.5 pkgver=5.24.8
pkgrel=1 pkgrel=1
arch=('any') arch=('any')
pkgdesc='Common C++ classes and routines such as argument parser, IO and conversion utilities (mingw-w64)' pkgdesc='Common C++ classes and routines such as argument parser, IO and conversion utilities (mingw-w64)'
@ -17,7 +17,7 @@ checkdepends=('mingw-w64-cppunit' 'mingw-w64-wine')
makedepends=('mingw-w64-gcc' 'mingw-w64-cmake' 'ninja') makedepends=('mingw-w64-gcc' 'mingw-w64-cmake' 'ninja')
url="https://github.com/Martchus/${_reponame}" url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz") source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('28cfbfe4e91eb37d9c0224f39def16b4aab41d09d7762a120c83382cf2fb3cbc') sha256sums=('2175b45a53f5c71bb022aea1409535a82b115ce76dbcc5123b3be39f8557858a')
options=(!buildflags staticlibs !strip !emptydirs) options=(!buildflags staticlibs !strip !emptydirs)
_architectures=('i686-w64-mingw32' 'x86_64-w64-mingw32') _architectures=('i686-w64-mingw32' 'x86_64-w64-mingw32')

View File

@ -6,7 +6,7 @@
_reponame=cpp-utilities _reponame=cpp-utilities
pkgname=static-compat-c++utilities pkgname=static-compat-c++utilities
_name=${pkgname#static-compat-} _name=${pkgname#static-compat-}
pkgver=5.24.5 pkgver=5.24.8
pkgrel=1 pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64') arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
pkgdesc='Common C++ classes and routines such as argument parser, IO and conversion utilities' pkgdesc='Common C++ classes and routines such as argument parser, IO and conversion utilities'
@ -17,7 +17,7 @@ makedepends=('ninja' 'static-compat-cmake')
checkdepends=('static-compat-cppunit') checkdepends=('static-compat-cppunit')
url="https://github.com/Martchus/${_reponame}" url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz") source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('28cfbfe4e91eb37d9c0224f39def16b4aab41d09d7762a120c83382cf2fb3cbc') sha256sums=('2175b45a53f5c71bb022aea1409535a82b115ce76dbcc5123b3be39f8557858a')
prepare() { prepare() {
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}" cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"

View File

@ -9,7 +9,7 @@ pkgrel=3
pkgdesc='Source code formatter for CMake listfiles' pkgdesc='Source code formatter for CMake listfiles'
arch=('any') arch=('any')
url='https://github.com/cheshirekow/cmake_format' url='https://github.com/cheshirekow/cmake_format'
license=('GPL3') license=('GPL-3.0-or-later')
depends=('python-six>=1.13.0') depends=('python-six>=1.13.0')
makedepends=('python-setuptools') makedepends=('python-setuptools')
optdepends=('python-yaml>=5.3: YAML config files' 'python-jinja>=2.10.3: complete HTML annotation' 'python-argcomplete: automatic shell completion') optdepends=('python-yaml>=5.3: YAML config files' 'python-jinja>=2.10.3: complete HTML annotation' 'python-argcomplete: automatic shell completion')

View File

@ -0,0 +1,80 @@
# Maintainer: Martchus <martchus@gmx.net>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository.
_realname=cppwinrt
pkgname=mingw-w64-${_realname}
pkgver=2.0.240111.5
_windows_rs_ver=0.52.0
pkgrel=1
arch=('any')
pkgdesc='C++ language projection for Windows Runtime (WinRT) APIs (mingw-w64)'
url='https://aka.ms/cppwinrt'
license=('spdx:MIT')
depends=('mingw-w64-crt')
makedepends=('mingw-w64-gcc' 'mingw-w64-cmake' 'mingw-w64-wine' 'ninja' 'git')
source=("https://github.com/microsoft/cppwinrt/archive/${pkgver}/${_realname}-${pkgver}.tar.gz"
"https://github.com/microsoft/windows-rs/archive/${_windows_rs_ver}/windows-rs-${_windows_rs_ver}.tar.gz")
sha256sums=('5ec49e9de3467161ef93185f0c627be6ed37200f19e18ac79e29e47fbeb69d0d'
'fa6f1ad3677ee46ded34ad8811fc365a783d9aa414206a60b52dff261db85ef3')
options=(!buildflags staticlibs !strip !emptydirs)
_architectures=('i686-w64-mingw32' 'x86_64-w64-mingw32')
build() {
cd ${_realname}-${pkgver}
for _arch in "${_architectures[@]}"; do
mkdir -p "build-${_arch}" && pushd "build-${_arch}"
# build cppwinrt.exe
${_arch}-cmake \
-G Ninja \
-DCMAKE_BUILD_TYPE:STRING='Release' \
-DCMAKE_INSTALL_PREFIX="/usr/${_arch}" \
-DCPPWINRT_BUILD_VERSION="${pkgver}" \
-DBUILD_TESTING=OFF \
../
cmake --build .
# add Windows metadata
# note: The metadata comes from https://github.com/microsoft/win32metadata. However, at this point
# this build script cannot make use of that. Instead, one has to just point it to the metadata files
# usually found under C:/Windows/System32/WinMetadata via the WIN_METADATA environment variable.
input=()
if [[ -d $WIN_METADATA ]]; then
ln -s "$WIN_METADATA" win-metadata
input+=(-input win-metadata)
else
echo "You need to provide metadata files usually found under C:/Windows/System32/WinMetadata on a
Windows system and point this build script to it via the WIN_METADATA environment variable.
Otherwise this package will not contain all headers that are required by e.g. Qt 6."
fi
# add rust metadata provided by https://github.com/microsoft/windows-rs
echo "SPDX-License-Identifier: MIT OR Apache-2.0
SPDX-FileCopyrightText: Copyright (c) Microsoft Corporation
Generated using .winmd files from https://github.com/microsoft/windows-rs
" > license.txt
ln -s "${srcdir}/windows-rs-${_windows_rs_ver}/crates/libs/bindgen/default" rust-metadata
input+=(-license license.txt -input rust-metadata)
# generate headers using cppwinrt.exe
${_arch}-wine cppwinrt.exe "${input[@]}" -output "output"
popd
done
}
package() {
cd ${_realname}-${pkgver}
for _arch in "${_architectures[@]}"; do
pushd "build-${_arch}"
DESTDIR="${pkgdir}" cmake --install .
mkdir "${pkgdir}/usr/${_arch}/include"
cp -vr --target-directory="${pkgdir}/usr/${_arch}/include" output/*
${_arch}-strip --strip-all "$pkgdir"/usr/${_arch}/bin/*.exe
popd
done
install -Dm644 "${srcdir}/${_realname}-${pkgver}/LICENSE" "${pkgdir}/share/licenses/${pkgname}/LICENSE"
}

View File

@ -10,6 +10,7 @@ RUN mkdir -p /startdir /build && \
pacman-key --recv-keys B9E36A7275FC61B464B67907E06FE8F53CDC6A4C && \ pacman-key --recv-keys B9E36A7275FC61B464B67907E06FE8F53CDC6A4C && \
pacman-key --finger B9E36A7275FC61B464B67907E06FE8F53CDC6A4C && \ pacman-key --finger B9E36A7275FC61B464B67907E06FE8F53CDC6A4C && \
pacman-key --lsign-key B9E36A7275FC61B464B67907E06FE8F53CDC6A4C && \ pacman-key --lsign-key B9E36A7275FC61B464B67907E06FE8F53CDC6A4C && \
pacman -Sy --verbose --noconfirm --needed archlinux-keyring && \
pacman -Syu --verbose --noconfirm --needed base-devel pacman-contrib ccache && \ pacman -Syu --verbose --noconfirm --needed base-devel pacman-contrib ccache && \
pacman -Scc --noconfirm && \ pacman -Scc --noconfirm && \
paccache -r -k0 && \ paccache -r -k0 && \

View File

@ -1,7 +1,8 @@
#!/bin/bash #!/bin/bash
set -e set -e
[ "$(whoami)" == root ] && sudo= || sudo=sudo
for config_file in {/cfg/,}{makepkg,pacman}.conf; do for config_file in {/cfg/,}{makepkg,pacman}.conf; do
[[ -f $config_file ]] && sudo cp --target-directory=/etc "$config_file" [[ -f $config_file ]] && $sudo cp --target-directory=/etc "$config_file"
done done
[[ -f PKGBUILD ]] && source PKGBUILD [[ -f PKGBUILD ]] && source PKGBUILD
sudo pacman -Syu --noconfirm --needed "${depends[@]}" "${makedepends[@]}" "${checkdepends[@]}" $sudo pacman -Syu --noconfirm --needed "${depends[@]}" "${makedepends[@]}" "${checkdepends[@]}"

View File

@ -0,0 +1,19 @@
#!/bin/bash
dev_dir=/hdd
bindir=$(dirname "$0")
# create a directory to store builds and new container and start it
mkdir -p "$dev_dir/build/container"
# create container sharing pacman cache, chroot directory and build and source directory with host
podman container create -it \
--name archlinux-devel-container \
-v "$dev_dir/cache/pacman/pkg:/var/cache/pacman/pkg" \
-v "$dev_dir/build/container:/build" \
-v "$dev_dir/projects:/src" \
-v "$dev_dir/chroot/remote-config-x86_64:/cfg" \
archlinux-base-devel
# configure pacman to use config from mounted directory
podman container start archlinux-devel-container
podman container exec archlinux-devel-container bash -c "$(cat "$bindir/containersync")"

View File

@ -10,6 +10,10 @@ arch_pkgbuilds=$1
echo "expected version: $expected_version" echo "expected version: $expected_version"
for pkgbuild in qt5-*/PKGBUILD ; do
git -C "${pkgbuild%/PKGBUILD}" pull --rebase origin main
done
for pkgbuild in qt5-*/PKGBUILD ; do for pkgbuild in qt5-*/PKGBUILD ; do
source "$pkgbuild" source "$pkgbuild"
if [[ $pkgname != qt5-doc ]] && [[ $pkgver =~ $expected_version ]] && [[ $_commit ]]; then if [[ $pkgname != qt5-doc ]] && [[ $pkgver =~ $expected_version ]] && [[ $_commit ]]; then

View File

@ -76,35 +76,43 @@ $mojolicious->helper(expand_libs => sub {
# define revisions of Qt modules from KDE fork # define revisions of Qt modules from KDE fork
my %kde_fork_revisions = ( my %kde_fork_revisions = (
# module => [rev, 'commit on KDE fork', 'version bump to be reverted'], # module => [rev, 'commit on KDE fork', 'version bump to be reverted'],
activeqt => [0, '4fc1cba4c415d84a5879da29f7c459b70fbc15e9'], activeqt => [0, '014285857ef1cfb2d9965cf7bad871bbc336ce60'],
winextras => [0, 'ee931eba5d129284d5c33157cd7d0b9232fbee7b'], winextras => [0, 'e6a85ae3306867400b8700600152949656eb21f7'],
'3d' => [0, 'e1b1a0d2970fd384bd52c734a72536d8452ad070'], '3d' => [0, '67bee4599a28e1cadc14ed9ea4adc7061e250b90'],
base => [147, '8907dedc858cc344d770a2e826d6acc516429540'], base => [138, 'b9906b5233a80cab372c95ac4dd68b25bdca0646'],
charts => [0, '393a84ad5b16a9ec93d8a44bebf1ae86e881bc06'], charts => [0, '3f3f14d69a509c3e8027bfb5d7ffca9b4f3ef003'],
connectivity => [6, '70020cb64f71dcf2fd65a8a167cb785d2127e159'], connectivity => [4, '8024ef3d7269665ba104f528e5e284df9d9d8ae9'],
datavis3d => [0, 'c887477198cae44585fe9db371db0ddf4c3b205e'], datavis3d => [0, '6ac6d23a8f558f36f1162b419858cc44dccd4d2b'],
declarative => [31, '792a55bb701d233116c3731c7a53ffdb8c67e407'], declarative => [30, 'b99568135aa60de96ca2e121dc2e8d83fb1ca886'],
gamepad => [0, '8ed95136b3c265b01db6cc33869228f41878e173'], gamepad => [0, '44255e2ae53a14e9a3fb671da0782ec5d396220a'],
graphicaleffects => [0, 'e33716bd6bb8926688fef20cb568e11618d08a35'], graphicaleffects => [0, '895f9753940156dda05aa83d3c7655571514407e'],
imageformats => [10, '142040e8a652e708ff6e004361f6bcfe85fefdf9'], imageformats => [7, '63ec444cc7b30c45d4c8beb2c1071a1157d689eb'],
location => [6, '5b27b8921f1f2de93573df903c47aee634209f80'], location => [6, 'c576985da4e6a4a0b85d5229263777e7197494e0'],
multimedia => [2, '36603a39aa590c12cbe2b192b56b29edd09a7a6b'], lottie => [0, '62f17bbc0ae8649178ac484afc434dbad16d6351'],
networkauth => [0, '3fccc9b8fdaff1252fb4a9c516868d0bbbd4384d'], multimedia => [2, '7514352532f41d9f0f8b8d722e360b1854442731'],
quickcontrols => [0, '1ca962198a703f591efc7c8f7540fc4120746a00'], networkauth => [0, 'ed2291d454fac207f6b1555d30b9227e51be611b'],
quickcontrols2 => [5, '134ca5dbef9d137a9c46faa79b0225bc650d9283'], purchasing => [0, '7f4ead6f3e6431acee63987a0a1753ff140ac2d2'],
remoteobjects => [0, 'f64e34be9ac4b7e92c63e47235c04471a1d40c93'], quick3d => [1, 'a0c37ca7615e95d69bcf6de8f19607bd46e8c37a'],
scxml => [0, '3f56c6b4bd1e3883581340243b4a7289807fffc9'], quickcontrols => [0, '77fbfa8d313bbdb8fb762f15dd6173a067be55e3'],
sensors => [0, '3011b16d63cadbb473b6aa3a535b9f0e33170c09'], quickcontrols2 => [5, '1fc98160580fc7b791e20d34ba986c9992cae9c5'],
serialport => [0, 'c3a7debff7a4c6ddaedb795290180dd99d7ac4be'], quicktimeline => [0, '29394e35db43acb20e7b4d5e978a733f5b4232a6'],
speech => [1, 'c41437acf07c2c4703351b07925fce3ce0e6b75d'], remoteobjects => [0, '18ef1cdce7bc4c93415f38f1c220ab697aa75908'],
svg => [6, '5b1b4a99d6bc98c42a11b7a3f6c9f0b0f9e56f34'], scxml => [0, '6074956c2089dd0507d2930c638fa8c930f4e21c'],
tools => [4, 'bd0ceb7de5d0c918ae596150e95b069dca8b9150'], sensors => [0, '7f8b55744f87155a4979dd8ba405bd7feec03042'],
translations => [0, 'f7745c117041e7adf9705e1de8d71086c160dd9f'], serialbus => [0, '5efce7d821bad2f5db95ff3ada5eeddccbb58920'],
virtualkeyboard => [0, '8b885af5ad3c2f2ff500c060a41e312ea7276e50'], serialport => [0, 'fc0b6affe244e40366bd624d6e01c62712568eb8'],
webchannel => [3, '6d2f0c3a36d9b2cdcd759a464c608365a0afda98'], speech => [1, '9b3738febbc751820ede496e8d619c5be56548dc'],
webglplugin => [0, '8f879e6bcf941a612c568fbfe2b49ddb1bb409cd'], svg => [6, '080fed6443e9e7b2ad30e61f31163e9481dfad0f'],
websockets => [2, '9a7b9972a54137d5f2e0d49559fe58d07c90662e'], tools => [4, 'ba4c633c4a4731ead0c376b908bf5449796f7de1'],
xmlpatterns => [0, '6e0917d518e07f737cc663b8d632c8021634fd3b'], translations => [0, '40aabebd04a30ccef374bf20a7bfaa1d8d665b7f'],
virtualkeyboard => [0, '80565aa7fc37ecdb1c08e585d4ae3060618e3338'],
wayland => [60, '9c82b5461736f59a06923ab68c6f7584ecab4f77'],
webchannel => [3, 'c78ad286a90e3d7986292b4a6036a9927bbc155f'],
webglplugin => [0, '80257933d3bf3a026455d71106e6b3e70dead765'],
websockets => [2, '2c2b7691ae231f43129d7f2b43984c30883ca4b1'],
webview => [0, '3d9289d73c5c03ed5b2fe246589d0d81cfdaa22e'],
x11extras => [0, '415ac0d58521be2bb00ef4cecdb16f0b9001e88c'],
xmlpatterns => [0, 'eb59017f04b44667e0c6778aa3995f8e86c98e48'],
); );
# $rev := git rev-list --count v5.15.2..$commit_on_kde_fork # $rev := git rev-list --count v5.15.2..$commit_on_kde_fork

View File

@ -14,7 +14,7 @@
_android_arch=<%= $variant_prefix_part =~ s/android-// && $variant_prefix_part %> _android_arch=<%= $variant_prefix_part =~ s/android-// && $variant_prefix_part %>
pkgname=<%= $package_name %> pkgname=<%= $package_name %>
_qtver=6.6.1 _qtver=6.7.1
pkgver=${_qtver/-/} pkgver=${_qtver/-/}
pkgrel=1 pkgrel=1
arch=(any) arch=(any)
@ -51,9 +51,8 @@ prepare () {
% } % }
build() { build() {
export PATH=/usr/lib/jvm/java-17-openjdk/bin:$PATH
source android-env ${_android_arch} source android-env ${_android_arch}
echo "Java:"
archlinux-java status
android-${_android_arch}-cmake<%== $static_suffix %> -G Ninja -B build-$_android_arch -S $_pkgfqn \\ android-${_android_arch}-cmake<%== $static_suffix %> -G Ninja -B build-$_android_arch -S $_pkgfqn \\
% if ($static_variant) { % if ($static_variant) {
-DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}/static;${ANDROID_PREFIX}" \\ -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}/static;${ANDROID_PREFIX}" \\

View File

@ -32,6 +32,7 @@ prepare () {
% } % }
build() { build() {
export PATH=/usr/lib/jvm/java-17-openjdk/bin:$PATH
source android-env ${_android_arch} source android-env ${_android_arch}
<%== content_for 'before_build_config' %>\ <%== content_for 'before_build_config' %>\
android-${_android_arch}-cmake<%== $static_suffix %> -G Ninja -B build-$_android_arch -S $_pkgfqn \\ android-${_android_arch}-cmake<%== $static_suffix %> -G Ninja -B build-$_android_arch -S $_pkgfqn \\

View File

@ -31,7 +31,7 @@
_qt_module=qt<%== $qt_module %> _qt_module=qt<%== $qt_module %>
pkgname=<%= $package_name %> pkgname=<%= $package_name %>
pkgver=5.15.12<%== $kde_fork_revision ? "+kde+r$kde_fork_revision->[0]" : '' %> pkgver=5.15.13<%== $kde_fork_revision ? "+kde+r$kde_fork_revision->[0]" : '' %>
pkgrel=1 pkgrel=1
% if ($kde_fork_revision) { % if ($kde_fork_revision) {
_basever=${pkgver%%+*} _basever=${pkgver%%+*}

View File

@ -45,7 +45,7 @@ _pkgfqn="${_qt_module}-everywhere-src-${pkgver}"
source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz"\ source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/submodules/${_pkgfqn}.tar.xz"\
% } % }
<%== include 'fragments/source_file_list', relevant_files => $patch_files %>) <%== include 'fragments/source_file_list', relevant_files => $patch_files %>)
% if ($kde_fork_revision || stash('is_lts')) { % if ($qt_module_sha256 =~ qr/missing/) {
sha256sums=('SKIP'\ sha256sums=('SKIP'\
% } else { % } else {
sha256sums=('<%== $qt_module_sha256 %>'\ sha256sums=('<%== $qt_module_sha256 %>'\

View File

@ -14,14 +14,14 @@
% } % }
pkgname=<%= $package_name %> pkgname=<%= $package_name %>
_qtver=6.6.1 _qtver=6.7.1
pkgver=${_qtver/-/} pkgver=${_qtver/-/}
pkgrel=1 pkgrel=1
arch=(any) arch=(any)
url='https://www.qt.io' url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom) license=(GPL3 LGPL3 FDL custom)
pkgdesc='A cross-platform application and UI framework (mingw-w64)' pkgdesc='A cross-platform application and UI framework (mingw-w64)'
depends=('mingw-w64-crt' 'mingw-w64-zlib' 'mingw-w64-libjpeg-turbo' 'mingw-w64-sqlite' depends=('mingw-w64-crt' 'mingw-w64-cppwinrt' 'mingw-w64-zlib' 'mingw-w64-libjpeg-turbo' 'mingw-w64-sqlite'
'mingw-w64-libpng' 'mingw-w64-openssl' 'mingw-w64-dbus' 'mingw-w64-harfbuzz' 'mingw-w64-libpng' 'mingw-w64-openssl' 'mingw-w64-dbus' 'mingw-w64-harfbuzz'
'mingw-w64-brotli' 'mingw-w64-pcre2' 'mingw-w64-zstd') 'mingw-w64-brotli' 'mingw-w64-pcre2' 'mingw-w64-zstd')
makedepends=('mingw-w64-cmake<%= $static_suffix %>' 'mingw-w64-postgresql' 'mingw-w64-mariadb-connector-c' makedepends=('mingw-w64-cmake<%= $static_suffix %>' 'mingw-w64-postgresql' 'mingw-w64-mariadb-connector-c'
@ -38,7 +38,13 @@ source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/subm
sha256sums=('<%== $qt_module_sha256 %>'\ sha256sums=('<%== $qt_module_sha256 %>'\
<%== include 'fragments/sha256_list', relevant_files => $patch_files %>) <%== include 'fragments/sha256_list', relevant_files => $patch_files %>)
_architectures='i686-w64-mingw32 x86_64-w64-mingw32' # disable i686 build because 32-bit Windows is generally not supported by upstream and
# it does not build anymore as of GCC 14 (probably due to commit 9a19fa8b616f83474c35cc5b34a3865073ced829)
# remarks:
# - This is in-line with MSYS2's packaging of mingw-w64 Qt 6 packages.
# - You may override MINGW_W64_QT6_ARCHS by adding the variable to `/etc/makepkg.conf` in case you
# nevertheless want to attempt the i686 build.
_architectures=${MINGW_W64_QT6_ARCHS:-x86_64-w64-mingw32}
% if ($patch_files->size || content_for('prepare')->size) { % if ($patch_files->size || content_for('prepare')->size) {
prepare () { prepare () {
@ -58,12 +64,22 @@ prepare () {
build() { build() {
for _arch in ${_architectures}; do for _arch in ${_architectures}; do
export PKG_CONFIG=/usr/bin/$_arch-pkg-config export PKG_CONFIG=/usr/bin/$_arch-pkg-config
local _enable_winrt_support=ON
if [[ ! -e /usr/${_arch}/include/winrt/Windows.Foundation.h ]]; then
echo "cppwinrt headers seem incomplete, disabling FEATURE_cpp_winrt"
_enable_winrt_support=OFF
fi
$_arch-cmake<%== $static_suffix %> -G Ninja -B build-$_arch -S $_pkgfqn \\ $_arch-cmake<%== $static_suffix %> -G Ninja -B build-$_arch -S $_pkgfqn \\
-DCMAKE_CXX_STANDARD=20 \\
-DCMAKE_CXX_FLAGS="$CXX_FLAGS -std=c++20" \\
% if ($static_variant) { % if ($static_variant) {
-DCMAKE_INSTALL_PREFIX:PATH="/usr/$_arch/static" \\ -DCMAKE_INSTALL_PREFIX:PATH="/usr/$_arch/static" \\
-DFEATURE_static_runtime=ON \\ -DFEATURE_static_runtime=ON \\
-DFEATURE_openssl_linked=ON \\ -DFEATURE_openssl_linked=ON \\
% } % }
-DFEATURE_cpp_winrt=$_enable_winrt_support \\
-DFEATURE_pkg_config=ON \\ -DFEATURE_pkg_config=ON \\
-DFEATURE_system_pcre2=ON \\ -DFEATURE_system_pcre2=ON \\
-DFEATURE_system_freetype=ON \\ -DFEATURE_system_freetype=ON \\

View File

@ -15,7 +15,7 @@ _pkgfqn="qt<%== $qt_module %>-everywhere-src-${_qtver}"
sha256sums=('<%== stash('git_commit') ? 'SKIP' : $qt_module_sha256 %>'\ sha256sums=('<%== stash('git_commit') ? 'SKIP' : $qt_module_sha256 %>'\
<%== include 'fragments/sha256_list', relevant_files => $patch_files %>) <%== include 'fragments/sha256_list', relevant_files => $patch_files %>)
_architectures='i686-w64-mingw32 x86_64-w64-mingw32' _architectures=${MINGW_W64_QT6_ARCHS:-x86_64-w64-mingw32}
% if ($patch_files->size || content_for('prepare')->size) { % if ($patch_files->size || content_for('prepare')->size) {
prepare () { prepare () {

View File

@ -13,7 +13,7 @@
% } % }
pkgname=<%= $package_name %> pkgname=<%= $package_name %>
_qtver=6.6.1 _qtver=6.7.1
pkgver=${_qtver/-/} pkgver=${_qtver/-/}
pkgrel=1 pkgrel=1
arch=(x86_64) arch=(x86_64)

View File

@ -11,6 +11,7 @@ fi
for spec_file in "$OSC_DIR"/*/*/*.spec; do for spec_file in "$OSC_DIR"/*/*/*.spec; do
trimmed_path=${spec_file#$OSC_DIR/*/*/} trimmed_path=${spec_file#$OSC_DIR/*/*/}
project_name=${trimmed_path%*.spec} project_name=${trimmed_path%*.spec}
project_name=${project_name%-qt6}
spec_dir=${spec_file%/*} spec_dir=${spec_file%/*}
# skip packages with unknown version # skip packages with unknown version

View File

@ -1,20 +1,20 @@
#!/bin/bash #!/bin/bash
declare -A versions=( declare -A versions=(
[syncthingtray]=1.4.12 [syncthingtray]=1.5.3
[c++utilities]=5.24.5 [c++utilities]=5.24.8
[qtutilities]=6.13.4 [qtutilities]=6.14.0
[qtforkawesome]=0.1.0 [qtforkawesome]=0.2.0
[tagparser]=12.1.0 [tagparser]=12.1.0
[tageditor]=3.9.0 [tageditor]=3.9.0
[passwordfile]=5.0.10 [passwordfile]=5.0.11
[passwordmanager]=4.1.13 [passwordmanager]=4.2.0
[videodownloader]=1.3.6 [videodownloader]=1.3.6
[reflective-rapidjson]=0.0.15 [reflective-rapidjson]=0.0.15
[blackwidowcontrol]=1.1.0 [blackwidowcontrol]=1.1.0
[dbus-soundrecorder]=1.2.3 [dbus-soundrecorder]=1.2.3
[geocoordinatecalculator]=1.1.3 [geocoordinatecalculator]=1.1.3
[qt5]=5.15.12 [qt5]=5.15.13
[qt6]=6.6.1 [qt6]=6.7.1
) )
declare -A github_names=( declare -A github_names=(
[c++utilities]=cpp-utilities [c++utilities]=cpp-utilities

View File

@ -9,7 +9,7 @@
pkgname=devtools-custom pkgname=devtools-custom
_pkgname=devtools _pkgname=devtools
epoch=1 epoch=1
pkgver=1.0.4 pkgver=1.1.1
pkgrel=1 pkgrel=1
pkgdesc='Tools for Arch Linux package maintainers (patches from ALARM and custom ones)' pkgdesc='Tools for Arch Linux package maintainers (patches from ALARM and custom ones)'
arch=('any') arch=('any')

View File

@ -1,15 +1,20 @@
pkgname=static-compat-environment pkgname=(static-compat-{environment,pkgconf})
pkgver=1 pkgver=1
pkgrel=1 pkgrel=2
arch=('any') arch=('any')
pkgdesc="Script providing common environment variables to use gcc-static-compat" pkgdesc="Script providing common environment variables to use gcc-static-compat"
license=('GPL') license=('GPL')
depends=('gcc-static-compat') depends=('gcc-static-compat')
url="https://github.com/Martchus/PKGBUILDs" url="https://github.com/Martchus/PKGBUILDs"
source=("static-compat-environment.sh") source=(static-compat-environment.sh pkg-config.sh)
sha256sums=('SKIP') sha256sums=('SKIP')
package() { package_static-compat-environment() {
install -d "${pkgdir}"/usr/bin install -d "${pkgdir}"/usr/bin
install -m 755 static-compat-environment.sh "${pkgdir}"/usr/bin/static-compat-environment install -m 755 static-compat-environment.sh "${pkgdir}"/usr/bin/static-compat-environment
} }
package_static-compat-pkgconf() {
install -d "${pkgdir}"/usr/static-compat/bin/
install -m 755 pkg-config.sh "${pkgdir}"/usr/static-compat/bin/pkg-config
}

View File

@ -0,0 +1,2 @@
#!/usr/bin/bash
exec /usr/bin/pkg-config --static "$@"

View File

@ -1,5 +1,6 @@
pkgname=mingw-w64-extra-cmake-modules _pkgname=extra-cmake-modules
pkgver=5.102.0 pkgname=mingw-w64-$_pkgname
pkgver=6.0.0
pkgrel=1 pkgrel=1
arch=(any) arch=(any)
pkgdesc="Extra modules and scripts for CMake (mingw-w64)" pkgdesc="Extra modules and scripts for CMake (mingw-w64)"
@ -8,14 +9,12 @@ license=("LGPL")
depends=(mingw-w64-cmake) depends=(mingw-w64-cmake)
options=(staticlibs !strip !buildflags) options=(staticlibs !strip !buildflags)
url="https://community.kde.org/Frameworks" url="https://community.kde.org/Frameworks"
source=("http://download.kde.org/stable/frameworks/${pkgver%.*}/extra-cmake-modules-${pkgver}.tar.xz"{,.sig} source=(https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz{,.sig})
"set-AUTOSTATICPLUGINS.patch" sha256sums=('23992bf19db717156b7d6dd13118caa79fd57f090beb062e8308db3c09f70d0c'
"05aa27dc0e14dab407379a4d22f895e9eff13cc0.patch") 'SKIP')
sha256sums=('f259aeb5a8e046ee2a0e658645f3af6d3e42145d3ae576f305b2b6e24a297f9b' validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB # David Faure <faure@kde.org>
'SKIP' E0A3EB202F8E57528E13E72FD7574483BB57B18D) # Jonathan Esk-Riddell <jr@jriddell.org>
'30bdcedab402c69ea0db3460f5a23cbd226a5cd1e12b13926b8a65df773e14a0' options=(!buildflags staticlibs !strip !emptydirs)
'7e44cf56a8274c8166eaf02e60c2d34e5048992a7e3c8309b998b762a394e909')
validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB) # David Faure <faure@kde.org>
_architectures="i686-w64-mingw32 x86_64-w64-mingw32" _architectures="i686-w64-mingw32 x86_64-w64-mingw32"

View File

@ -153,7 +153,8 @@ prepare() {
# Fix bug in av_fft_end # Fix bug in av_fft_end
git cherry-pick -n a562cfee2e214252f8b3f516527272ae32ef9532 git cherry-pick -n a562cfee2e214252f8b3f516527272ae32ef9532
git cherry-pick -n 250471ea1745fc703eb346a2a662304536a311b1 git cherry-pick -n 250471ea1745fc703eb346a2a662304536a311b1
# Fix build with latest vulkan headers
git cherry-pick -n fef22c87ada4517441701e6e61e062c9f4399c8e
} }
pkgver() { pkgver() {

View File

@ -0,0 +1,319 @@
2024-05-08 Jakub Jelinek <jakub@redhat.com>
PR target/114968
gcc/
* target.def (use_atexit_for_cxa_atexit): Remove spurious space
from comment.
(adjust_cdtor_callabi_fntype): New cxx target hook.
* targhooks.h (default_cxx_adjust_cdtor_callabi_fntype): Declare.
* targhooks.cc (default_cxx_adjust_cdtor_callabi_fntype): New
function.
* doc/tm.texi.in (TARGET_CXX_ADJUST_CDTOR_CALLABI_FNTYPE): Add.
* doc/tm.texi: Regenerate.
* config/i386/i386.cc (ix86_cxx_adjust_cdtor_callabi_fntype): New
function.
(TARGET_CXX_ADJUST_CDTOR_CALLABI_FNTYPE): Redefine.
gcc/cp/
* cp-tree.h (atexit_fn_ptr_type_node, cleanup_type): Adjust macro
comments.
(get_cxa_atexit_fn_ptr_type): Declare.
* decl.cc (get_atexit_fn_ptr_type): Adjust function comment, only
build type for atexit argument.
(get_cxa_atexit_fn_ptr_type): New function.
(get_atexit_node): Call get_cxa_atexit_fn_ptr_type rather than
get_atexit_fn_ptr_type when using __cxa_atexit.
(get_thread_atexit_node): Call get_cxa_atexit_fn_ptr_type
rather than get_atexit_fn_ptr_type.
(start_cleanup_fn): Add fntype argument, don't call
get_atexit_fn_ptr_type for it.
(register_dtor_fn): Adjust start_cleanup_fn caller, use
get_cxa_atexit_fn_ptr_type rather than get_atexit_fn_ptr_type
when ob_parm is true.
* except.cc (build_throw): Use get_cxa_atexit_fn_ptr_type ().
--- a/gcc/target.def
+++ b/gcc/target.def
@@ -6498,7 +6498,7 @@ is in effect. The default is to return
hook_bool_void_false)
/* Returns true if target may use atexit in the same manner as
- __cxa_atexit to register static destructors. */
+ __cxa_atexit to register static destructors. */
DEFHOOK
(use_atexit_for_cxa_atexit,
"This hook returns true if the target @code{atexit} function can be used\n\
@@ -6509,6 +6509,17 @@ unloaded. The default is to return false
bool, (void),
hook_bool_void_false)
+/* Returns modified FUNCTION_TYPE for cdtor callabi. */
+DEFHOOK
+(adjust_cdtor_callabi_fntype,
+ "This hook returns a possibly modified @code{FUNCTION_TYPE} for arguments\n\
+to @code{__cxa_atexit}, @code{__cxa_thread_atexit} or @code{__cxa_throw}\n\
+function pointers. ABIs like mingw32 require special attributes to be added\n\
+to function types pointed to by arguments of these functions.\n\
+The default is to return the passed argument unmodified.",
+ tree, (tree fntype),
+ default_cxx_adjust_cdtor_callabi_fntype)
+
DEFHOOK
(adjust_class_at_definition,
"@var{type} is a C++ class (i.e., RECORD_TYPE or UNION_TYPE) that has just\n\
--- a/gcc/targhooks.h
+++ b/gcc/targhooks.h
@@ -65,6 +65,7 @@ extern machine_mode default_mode_for_suf
extern tree default_cxx_guard_type (void);
extern tree default_cxx_get_cookie_size (tree);
+extern tree default_cxx_adjust_cdtor_callabi_fntype (tree);
extern bool hook_pass_by_reference_must_pass_in_stack
(cumulative_args_t, const function_arg_info &);
--- a/gcc/targhooks.cc
+++ b/gcc/targhooks.cc
@@ -329,6 +329,14 @@ default_cxx_get_cookie_size (tree type)
return cookie_size;
}
+/* Returns modified FUNCTION_TYPE for cdtor callabi. */
+
+tree
+default_cxx_adjust_cdtor_callabi_fntype (tree fntype)
+{
+ return fntype;
+}
+
/* Return true if a parameter must be passed by reference. This version
of the TARGET_PASS_BY_REFERENCE hook uses just MUST_PASS_IN_STACK. */
--- a/gcc/doc/tm.texi.in
+++ b/gcc/doc/tm.texi.in
@@ -7223,6 +7223,8 @@ floating-point support; they are not inc
@hook TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT
+@hook TARGET_CXX_ADJUST_CDTOR_CALLABI_FNTYPE
+
@hook TARGET_CXX_ADJUST_CLASS_AT_DEFINITION
@hook TARGET_CXX_DECL_MANGLING_CONTEXT
--- a/gcc/doc/tm.texi
+++ b/gcc/doc/tm.texi
@@ -11117,6 +11117,14 @@ shared libraries are run in the correct
unloaded. The default is to return false.
@end deftypefn
+@deftypefn {Target Hook} tree TARGET_CXX_ADJUST_CDTOR_CALLABI_FNTYPE (tree @var{fntype})
+This hook returns a possibly modified @code{FUNCTION_TYPE} for arguments
+to @code{__cxa_atexit}, @code{__cxa_thread_atexit} or @code{__cxa_throw}
+function pointers. ABIs like mingw32 require special attributes to be added
+to function types pointed to by arguments of these functions.
+The default is to return the passed argument unmodified.
+@end deftypefn
+
@deftypefn {Target Hook} void TARGET_CXX_ADJUST_CLASS_AT_DEFINITION (tree @var{type})
@var{type} is a C++ class (i.e., RECORD_TYPE or UNION_TYPE) that has just
been defined. Use this hook to make adjustments to the class (eg, tweak
--- a/gcc/config/i386/i386.cc
+++ b/gcc/config/i386/i386.cc
@@ -25799,6 +25799,20 @@ ix86_bitint_type_info (int n, struct bit
return true;
}
+/* Returns modified FUNCTION_TYPE for cdtor callabi. */
+tree
+ix86_cxx_adjust_cdtor_callabi_fntype (tree fntype)
+{
+ if (TARGET_64BIT
+ || TARGET_RTD
+ || ix86_function_type_abi (fntype) != MS_ABI)
+ return fntype;
+ /* For 32-bit MS ABI add thiscall attribute. */
+ tree attribs = tree_cons (get_identifier ("thiscall"), NULL_TREE,
+ TYPE_ATTRIBUTES (fntype));
+ return build_type_attribute_variant (fntype, attribs);
+}
+
/* Implement PUSH_ROUNDING. On 386, we have pushw instruction that
decrements by exactly 2 no matter what the position was, there is no pushb.
@@ -26410,6 +26424,8 @@ static const scoped_attribute_specs *con
#define TARGET_C_EXCESS_PRECISION ix86_get_excess_precision
#undef TARGET_C_BITINT_TYPE_INFO
#define TARGET_C_BITINT_TYPE_INFO ix86_bitint_type_info
+#undef TARGET_CXX_ADJUST_CDTOR_CALLABI_FNTYPE
+#define TARGET_CXX_ADJUST_CDTOR_CALLABI_FNTYPE ix86_cxx_adjust_cdtor_callabi_fntype
#undef TARGET_PROMOTE_PROTOTYPES
#define TARGET_PROMOTE_PROTOTYPES hook_bool_const_tree_true
#undef TARGET_PUSH_ARGUMENT
--- a/gcc/cp/cp-tree.h
+++ b/gcc/cp/cp-tree.h
@@ -368,8 +368,7 @@ extern GTY(()) tree cp_global_trees[CPTI
#define throw_fn cp_global_trees[CPTI_THROW_FN]
#define rethrow_fn cp_global_trees[CPTI_RETHROW_FN]
-/* The type of the function-pointer argument to "__cxa_atexit" (or
- "std::atexit", if "__cxa_atexit" is not being used). */
+/* The type of the function-pointer argument to "std::atexit". */
#define atexit_fn_ptr_type_node cp_global_trees[CPTI_ATEXIT_FN_PTR_TYPE]
/* A pointer to `std::atexit'. */
@@ -384,7 +383,8 @@ extern GTY(()) tree cp_global_trees[CPTI
/* The declaration of the dynamic_cast runtime. */
#define dynamic_cast_node cp_global_trees[CPTI_DCAST]
-/* The type of a destructor. */
+/* The type of a destructor, passed to __cxa_atexit, __cxa_thread_atexit
+ or __cxa_throw. */
#define cleanup_type cp_global_trees[CPTI_CLEANUP_TYPE]
/* The type of the vtt parameter passed to subobject constructors and
@@ -7067,6 +7067,7 @@ extern tree check_default_argument (tre
extern int wrapup_namespace_globals ();
extern tree create_implicit_typedef (tree, tree);
extern int local_variable_p (const_tree);
+extern tree get_cxa_atexit_fn_ptr_type ();
extern tree register_dtor_fn (tree);
extern tmpl_spec_kind current_tmpl_spec_kind (int);
extern tree cxx_builtin_function (tree decl);
--- a/gcc/cp/decl.cc
+++ b/gcc/cp/decl.cc
@@ -93,7 +93,7 @@ static void record_key_method_defined (t
static tree create_array_type_for_decl (tree, tree, tree, location_t);
static tree get_atexit_node (void);
static tree get_dso_handle_node (void);
-static tree start_cleanup_fn (void);
+static tree start_cleanup_fn (tree);
static void end_cleanup_fn (void);
static tree cp_make_fname_decl (location_t, tree, int);
static void initialize_predefined_identifiers (void);
@@ -9678,34 +9678,39 @@ declare_global_var (tree name, tree type
return decl;
}
-/* Returns the type for the argument to "__cxa_atexit" (or "atexit",
- if "__cxa_atexit" is not being used) corresponding to the function
+/* Returns the type for the argument to "atexit" corresponding to the function
to be called when the program exits. */
static tree
-get_atexit_fn_ptr_type (void)
+get_atexit_fn_ptr_type ()
{
- tree fn_type;
-
if (!atexit_fn_ptr_type_node)
{
- tree arg_type;
- if (flag_use_cxa_atexit
- && !targetm.cxx.use_atexit_for_cxa_atexit ())
- /* The parameter to "__cxa_atexit" is "void (*)(void *)". */
- arg_type = ptr_type_node;
- else
- /* The parameter to "atexit" is "void (*)(void)". */
- arg_type = NULL_TREE;
-
- fn_type = build_function_type_list (void_type_node,
- arg_type, NULL_TREE);
+ tree fn_type = build_function_type_list (void_type_node, NULL_TREE);
atexit_fn_ptr_type_node = build_pointer_type (fn_type);
}
return atexit_fn_ptr_type_node;
}
+/* Returns the type for the argument to "__cxa_atexit", "__cxa_thread_atexit"
+ or "__cxa_throw" corresponding to the destructor to be called when the
+ program exits. */
+
+tree
+get_cxa_atexit_fn_ptr_type ()
+{
+ if (!cleanup_type)
+ {
+ tree fntype = build_function_type_list (void_type_node,
+ ptr_type_node, NULL_TREE);
+ fntype = targetm.cxx.adjust_cdtor_callabi_fntype (fntype);
+ cleanup_type = build_pointer_type (fntype);
+ }
+
+ return cleanup_type;
+}
+
/* Returns a pointer to the `atexit' function. Note that if
FLAG_USE_CXA_ATEXIT is nonzero, then this will actually be the new
`__cxa_atexit' function specified in the IA64 C++ ABI. */
@@ -9736,7 +9741,7 @@ get_atexit_node (void)
use_aeabi_atexit = targetm.cxx.use_aeabi_atexit ();
/* First, build the pointer-to-function type for the first
argument. */
- fn_ptr_type = get_atexit_fn_ptr_type ();
+ fn_ptr_type = get_cxa_atexit_fn_ptr_type ();
/* Then, build the rest of the argument types. */
argtype2 = ptr_type_node;
if (use_aeabi_atexit)
@@ -9819,7 +9824,7 @@ get_thread_atexit_node (void)
int __cxa_thread_atexit (void (*)(void *), void *, void *) */
tree fn_type = build_function_type_list (integer_type_node,
- get_atexit_fn_ptr_type (),
+ get_cxa_atexit_fn_ptr_type (),
ptr_type_node, ptr_type_node,
NULL_TREE);
@@ -9866,7 +9871,7 @@ get_dso_handle_node (void)
static GTY(()) int start_cleanup_cnt;
static tree
-start_cleanup_fn (void)
+start_cleanup_fn (tree fntype)
{
char name[32];
@@ -9878,7 +9883,6 @@ start_cleanup_fn (void)
/* Build the name of the function. */
sprintf (name, "__tcf_%d", start_cleanup_cnt++);
/* Build the function declaration. */
- tree fntype = TREE_TYPE (get_atexit_fn_ptr_type ());
tree fndecl = build_lang_decl (FUNCTION_DECL, get_identifier (name), fntype);
DECL_CONTEXT (fndecl) = FROB_CONTEXT (current_namespace);
/* It's a function with internal linkage, generated by the
@@ -9968,8 +9972,10 @@ register_dtor_fn (tree decl)
build_cleanup (decl);
/* Now start the function. */
- cleanup = start_cleanup_fn ();
-
+ cleanup = start_cleanup_fn (TREE_TYPE (ob_parm
+ ? get_cxa_atexit_fn_ptr_type ()
+ : get_atexit_fn_ptr_type ()));
+
/* Now, recompute the cleanup. It may contain SAVE_EXPRs that refer
to the original function, rather than the anonymous one. That
will make the back end think that nested functions are in use,
@@ -9998,7 +10004,8 @@ register_dtor_fn (tree decl)
{
/* We must convert CLEANUP to the type that "__cxa_atexit"
expects. */
- cleanup = build_nop (get_atexit_fn_ptr_type (), cleanup);
+ cleanup = build_nop (ob_parm ? get_cxa_atexit_fn_ptr_type ()
+ : get_atexit_fn_ptr_type (), cleanup);
/* "__cxa_atexit" will pass the address of DECL to the
cleanup function. */
mark_used (decl);
--- a/gcc/cp/except.cc
+++ b/gcc/cp/except.cc
@@ -645,11 +645,7 @@ build_throw (location_t loc, tree exp, t
/* The CLEANUP_TYPE is the internal type of a destructor. */
if (!cleanup_type)
- {
- tree tmp = build_function_type_list (void_type_node,
- ptr_type_node, NULL_TREE);
- cleanup_type = build_pointer_type (tmp);
- }
+ cleanup_type = get_cxa_atexit_fn_ptr_type ();
if (!throw_fn)
{

View File

@ -1,8 +1,8 @@
# Maintainer of official package: Felix Yan <felixonmars@archlinux.org> # Maintainer of official package: Felix Yan <felixonmars@archlinux.org>
pkgname=mingw-w64-gcc pkgname=mingw-w64-gcc
pkgver=13.2.1 pkgver=14.1.1+r1+g43b730b9134
pkgrel=1 pkgrel=2
pkgdesc="Cross GCC for the MinGW-w64 cross-compiler" pkgdesc="Cross GCC for the MinGW-w64 cross-compiler"
arch=('x86_64' 'aarch64') arch=('x86_64' 'aarch64')
url="https://gcc.gnu.org" url="https://gcc.gnu.org"
@ -12,14 +12,15 @@ depends=('zlib' 'libisl' 'libmpc' 'mingw-w64-crt' 'mingw-w64-binutils' 'mingw-w6
# gcc-d doesn't build as of 13.1.0 # gcc-d doesn't build as of 13.1.0
makedepends=("gcc-ada" "git") makedepends=("gcc-ada" "git")
options=('!strip' 'staticlibs' '!emptydirs' '!buildflags') options=('!strip' 'staticlibs' '!emptydirs' '!buildflags')
_commit=d8a0dcd146dd95e2b6b85cf82c445214d364cf3b _commit=43b730b9134af60a8f1c5b107d625f7127ff23c5
source=(git+https://sourceware.org/git/gcc.git#commit=${_commit}) source=(git+https://sourceware.org/git/gcc.git#commit=${_commit}
0001-missing-__thiscall-attribute-on-builtin-declaration-of-__cxa_thread_atexit.patch)
#source=(https://ftp.gnu.org/gnu/gcc/gcc-$pkgver/gcc-$pkgver.tar.xz{,.sig}) #source=(https://ftp.gnu.org/gnu/gcc/gcc-$pkgver/gcc-$pkgver.tar.xz{,.sig})
validpgpkeys=(F3691687D867B81B51CE07D9BBE43771487328A9 # bpiotrowski@archlinux.org validpgpkeys=(F3691687D867B81B51CE07D9BBE43771487328A9 # bpiotrowski@archlinux.org
86CFFCA918CF3AF47147588051E8B148A9999C34 # evangelos@foutrelis.com 86CFFCA918CF3AF47147588051E8B148A9999C34 # evangelos@foutrelis.com
13975A70E63C361C73AE69EF6EEB81F8981C74C7 # richard.guenther@gmail.com 13975A70E63C361C73AE69EF6EEB81F8981C74C7 # richard.guenther@gmail.com
D3A93CAD751C2AF4F8C7AD516C35B99309B5FA62) # Jakub Jelinek <jakub@redhat.com> D3A93CAD751C2AF4F8C7AD516C35B99309B5FA62) # Jakub Jelinek <jakub@redhat.com>
sha512sums=('SKIP') sha512sums=('SKIP' 'SKIP')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32" _architectures="i686-w64-mingw32 x86_64-w64-mingw32"
@ -27,11 +28,17 @@ prepare() {
ln -sf gcc-${pkgver/+/-} gcc ln -sf gcc-${pkgver/+/-} gcc
cd gcc cd gcc
patch -p1 -i "$srcdir/0001-missing-__thiscall-attribute-on-builtin-declaration-of-__cxa_thread_atexit.patch"
# mmapio.c:69:14: error: implicit declaration of function getpagesize # mmapio.c:69:14: error: implicit declaration of function getpagesize
sed -i 's|\-Werror||g' libbacktrace/configure sed -i 's|\-Werror||g' libbacktrace/configure
} }
build() { build() {
# Avoid errors due to implicit function declarations and similar issues (which are treated as errors as of GCC 14,
# see https://gcc.gnu.org/gcc-14/porting_to.html)
export CFLAGS_FOR_TARGET=-fpermissive
for _arch in ${_architectures}; do for _arch in ${_architectures}; do
mkdir -p "$srcdir"/build-${_arch} && cd "$srcdir"/build-${_arch} mkdir -p "$srcdir"/build-${_arch} && cd "$srcdir"/build-${_arch}
"$srcdir"/gcc/configure --prefix=/usr --libexecdir=/usr/lib \ "$srcdir"/gcc/configure --prefix=/usr --libexecdir=/usr/lib \
@ -55,7 +62,7 @@ package() {
make DESTDIR="$pkgdir" install make DESTDIR="$pkgdir" install
${_arch}-strip "$pkgdir"/usr/${_arch}/lib/*.dll ${_arch}-strip "$pkgdir"/usr/${_arch}/lib/*.dll
strip "$pkgdir"/usr/bin/${_arch}-* strip "$pkgdir"/usr/bin/${_arch}-*
strip "$pkgdir"/usr/lib/gcc/${_arch}/${pkgver}/{cc1*,collect2,gnat1,f951,lto*} strip "$pkgdir"/usr/lib/gcc/${_arch}/*/{cc1*,collect2,gnat1,f951,lto*}
ln -s ${_arch}-gcc "$pkgdir"/usr/bin/${_arch}-cc ln -s ${_arch}-gcc "$pkgdir"/usr/bin/${_arch}-cc
# mv dlls # mv dlls
mkdir -p "$pkgdir"/usr/${_arch}/bin/ mkdir -p "$pkgdir"/usr/${_arch}/bin/

View File

@ -1,8 +1,8 @@
# toolchain build order: linux-api-headers->glibc->binutils->gcc->glibc->binutils->gcc # toolchain build order: linux-api-headers->glibc->binutils->gcc->glibc->binutils->gcc
# NOTE: libtool requires rebuilt with each new gcc version # NOTE: libtool requires rebuilt with each new gcc version
pkgname=({gcc,gcc-libs,lib32-gcc-libs,gcc-ada,gcc-fortran}-static-compat) pkgname=({gcc,gcc-libs,lib32-gcc-libs,gcc-fortran}-static-compat)
pkgver=13.2.1 pkgver=14.1.1+r1+g43b730b9134
_majorver=${pkgver%%.*} _majorver=${pkgver%%.*}
pkgrel=1 pkgrel=1
pkgdesc='The GNU Compiler Collection' pkgdesc='The GNU Compiler Collection'
@ -32,11 +32,10 @@ checkdepends=(
options=(!emptydirs !lto debug) options=(!emptydirs !lto debug)
_prefix=/usr/static-compat _prefix=/usr/static-compat
_libdir=usr/static-compat/lib/gcc/$CHOST/${pkgver%%+*} _libdir=usr/static-compat/lib/gcc/$CHOST/${pkgver%%+*}
_commit=d8a0dcd146dd95e2b6b85cf82c445214d364cf3b _commit=43b730b9134af60a8f1c5b107d625f7127ff23c5
source=(git://gcc.gnu.org/git/gcc.git#commit=$_commit source=(git+https://sourceware.org/git/gcc.git#commit=$_commit
#source=(https://sourceware.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.xz{,.sig} #source=(https://sourceware.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.xz{,.sig}
c89 c99 c89 c99
gcc-ada-repro.patch
) )
validpgpkeys=(F3691687D867B81B51CE07D9BBE43771487328A9 # bpiotrowski@archlinux.org validpgpkeys=(F3691687D867B81B51CE07D9BBE43771487328A9 # bpiotrowski@archlinux.org
86CFFCA918CF3AF47147588051E8B148A9999C34 # evangelos@foutrelis.com 86CFFCA918CF3AF47147588051E8B148A9999C34 # evangelos@foutrelis.com
@ -46,8 +45,7 @@ validpgpkeys=(F3691687D867B81B51CE07D9BBE43771487328A9 # bpiotrowski@archlinux.
# 'SKIP' # 'SKIP'
sha256sums=('SKIP' sha256sums=('SKIP'
'de48736f6e4153f03d0a5d38ceb6c6fdb7f054e8f47ddd6af0a3dbf14f27b931' 'de48736f6e4153f03d0a5d38ceb6c6fdb7f054e8f47ddd6af0a3dbf14f27b931'
'2513c6d9984dd0a2058557bf00f06d8d5181734e41dcfe07be7ed86f2959622a' '2513c6d9984dd0a2058557bf00f06d8d5181734e41dcfe07be7ed86f2959622a')
'1773f5137f08ac1f48f0f7297e324d5d868d55201c03068670ee4602babdef2f')
prepare() { prepare() {
[[ ! -d gcc ]] && ln -s gcc-${pkgver/+/-} gcc [[ ! -d gcc ]] && ln -s gcc-${pkgver/+/-} gcc
@ -61,9 +59,6 @@ prepare() {
sed -i 's|MULTILIB_DIRNAMES .*|MULTILIB_DIRNAMES = 64 32|' gcc/config/i386/t-linux64 sed -i 's|MULTILIB_DIRNAMES .*|MULTILIB_DIRNAMES = 64 32|' gcc/config/i386/t-linux64
sed -i 's|m32=.*|m32=../lib32\$\(call if_multiarch,:i386-linux-gnu\)|' gcc/config/i386/t-linux64 sed -i 's|m32=.*|m32=../lib32\$\(call if_multiarch,:i386-linux-gnu\)|' gcc/config/i386/t-linux64
# Reproducible gcc-ada
patch -Np0 < "$srcdir/gcc-ada-repro.patch"
mkdir -p "$srcdir/gcc-build" mkdir -p "$srcdir/gcc-build"
} }
@ -123,16 +118,9 @@ build() {
CPPFLAGS=${CPPFLAGS/-D_FORTIFY_SOURCE=2} CPPFLAGS=${CPPFLAGS/-D_FORTIFY_SOURCE=2}
"$srcdir/gcc/configure" \ "$srcdir/gcc/configure" \
--enable-languages=ada,c,c++,fortran,lto \ --enable-languages=c,c++,fortran,lto \
$_confflags $_confflags
# link Ada host tools with host g++ - otherwise we run into linker errors because it would use the too old target glibc
# note: Since we don't need Ada anyways it maybe makes sense to just disable it in the future.
sed -i -r \
-e 's|\+\$\(GCC_LINK\)( .* \$\(TOOLS_LIBS\))|g++\1|g' \
-e 's|--LINK=\"\$\(GCC_LINK\)\"|--LINK=g++|g' \
gcc/ada/gcc-interface/Makefile
make make
} }
@ -167,7 +155,6 @@ package_gcc-libs-static-compat() {
make -C $CHOST/$lib DESTDIR="$pkgdir" install-toolexeclibLTLIBRARIES make -C $CHOST/$lib DESTDIR="$pkgdir" install-toolexeclibLTLIBRARIES
done done
#make -C $CHOST/libobjc DESTDIR="$pkgdir" install-libs
make -C $CHOST/libstdc++-v3/po DESTDIR="$pkgdir" install make -C $CHOST/libstdc++-v3/po DESTDIR="$pkgdir" install
rm -rf "$pkgdir"/$_libdir/include/d/ rm -rf "$pkgdir"/$_libdir/include/d/
@ -243,7 +230,7 @@ package_gcc-static-compat() {
make -C gcc DESTDIR="$pkgdir" install-man install-info make -C gcc DESTDIR="$pkgdir" install-man install-info
rm "$pkgdir"$_prefix/share/man/man1/gfortran.1 rm "$pkgdir"$_prefix/share/man/man1/gfortran.1
rm "$pkgdir"$_prefix/share/info/{gfortran,gnat-style,gnat_rm,gnat_ugn}.info rm "$pkgdir"$_prefix/share/info/gfortran.info
rm -r "$pkgdir"$_prefix/share/info/dir rm -r "$pkgdir"$_prefix/share/info/dir
make -C libcpp DESTDIR="$pkgdir" install make -C libcpp DESTDIR="$pkgdir" install
@ -294,44 +281,6 @@ package_gcc-fortran-static-compat() {
"$pkgdir$_prefix/share/licenses/$pkgname/" "$pkgdir$_prefix/share/licenses/$pkgname/"
} }
package_gcc-ada-static-compat() {
pkgdesc='Ada front-end for GCC (GNAT)'
depends=("gcc-static-compat=$pkgver-$pkgrel" libisl.so)
options=(!emptydirs staticlibs debug)
cd gcc-build/gcc
make DESTDIR="$pkgdir" ada.install-{common,info}
install -m755 gnat1 "$pkgdir/${_libdir}"
cd "$srcdir"/gcc-build/$CHOST/libada
make DESTDIR="${pkgdir}" INSTALL="install" \
INSTALL_DATA="install -m644" install-libada
cd "$srcdir"/gcc-build/$CHOST/32/libada
make DESTDIR="${pkgdir}" INSTALL="install" \
INSTALL_DATA="install -m644" install-libada
ln -s gcc "$pkgdir$_prefix/bin/gnatgcc"
# insist on dynamic linking, but keep static libraries because gnatmake complains
mv "$pkgdir"/${_libdir}/adalib/libgna{rl,t}-${_majorver}.so "$pkgdir$_prefix/lib"
ln -s libgnarl-${_majorver}.so "$pkgdir$_prefix/lib/libgnarl.so"
ln -s libgnat-${_majorver}.so "$pkgdir$_prefix/lib/libgnat.so"
rm -f "$pkgdir"/${_libdir}/adalib/libgna{rl,t}.so
rm -r "$pkgdir"$_prefix/share/info/dir
install -d "$pkgdir$_prefix/lib32/"
mv "$pkgdir"/${_libdir}/32/adalib/libgna{rl,t}-${_majorver}.so "$pkgdir$_prefix/lib32"
ln -s libgnarl-${_majorver}.so "$pkgdir$_prefix/lib32/libgnarl.so"
ln -s libgnat-${_majorver}.so "$pkgdir$_prefix/lib32/libgnat.so"
rm -f "$pkgdir"/${_libdir}/32/adalib/libgna{rl,t}.so
# Install Runtime Library Exception
install -d "$pkgdir$_prefix/share/licenses/$pkgname/"
ln -s $_prefix/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \
"$pkgdir$_prefix/share/licenses/$pkgname/"
}
package_lib32-gcc-libs-static-compat() { package_lib32-gcc-libs-static-compat() {
pkgdesc='32-bit runtime libraries shipped by GCC' pkgdesc='32-bit runtime libraries shipped by GCC'
depends=('lib32-glibc>=2.26') depends=('lib32-glibc>=2.26')

View File

@ -1,843 +0,0 @@
diff -crBN gettext-0.19.8.1/gettext-runtime/intl/bindtextdom.c{.orig,}
*** gettext-0.19.8.1/gettext-runtime/intl/bindtextdom.c.orig 2016-03-20 08:37:53.000000000 +0100
--- gettext-0.19.8.1/gettext-runtime/intl/bindtextdom.c 2016-08-12 19:01:05.714025915 +0200
***************
*** 21,26 ****
--- 21,27 ----
#include <stddef.h>
#include <stdlib.h>
#include <string.h>
+ #include <unistd.h>
#include "gettextP.h"
#ifdef _LIBC
***************
*** 65,70 ****
--- 66,77 ----
# define BIND_TEXTDOMAIN_CODESET libintl_bind_textdomain_codeset
#endif
+ #if ENABLE_RELOCATABLE
+ # include "relocatex.h"
+ #else
+ # define relocate(pathname) (pathname)
+ #endif
+
/* Specifies the directory name *DIRNAMEP and the output codeset *CODESETP
to be used for the DOMAINNAME message catalog.
If *DIRNAMEP or *CODESETP is NULL, the corresponding attribute is not
***************
*** 317,350 ****
char *
BINDTEXTDOMAIN (const char *domainname, const char *dirname)
{
! #ifdef __EMX__
! const char *saved_dirname = dirname;
! char dirname_with_drive[_MAX_PATH];
!
! /* Resolve UNIXROOT into dirname if it is not resolved by os2compat.[ch]. */
! if (dirname && (dirname[0] == '/' || dirname[0] == '\\' ))
! {
! const char *unixroot = getenv ("UNIXROOT");
! size_t len = strlen (dirname) + 1;
!
! if (unixroot
! && unixroot[0] != '\0'
! && unixroot[1] == ':'
! && unixroot[2] == '\0'
! && 2 + len <= _MAX_PATH)
! {
! memcpy (dirname_with_drive, unixroot, 2);
! memcpy (dirname_with_drive + 2, dirname, len);
!
! dirname = dirname_with_drive;
! }
! }
! #endif
! set_binding_values (domainname, &dirname, NULL);
! #ifdef __EMX__
! dirname = saved_dirname;
! #endif
! return (char *) dirname;
}
/* Specify the character encoding in which the messages from the
--- 324,341 ----
char *
BINDTEXTDOMAIN (const char *domainname, const char *dirname)
{
! if (!access (dirname, R_OK)) {
! set_binding_values (domainname, &dirname, NULL);
! return (char *) dirname;
! } else {
! char *locale_dirname, *installdir = strdup (dirname), *s;
! if ((s = strrchr (installdir, '/'))) *s = '\0';
! if ((s = strrchr (installdir, '/'))) *s = '\0';
! locale_dirname = relocatex (installdir, dirname);
! set_binding_values (domainname, (const char **) &locale_dirname, NULL);
! if (installdir) free (installdir);
! return (char *) locale_dirname;
! }
}
/* Specify the character encoding in which the messages from the
diff -crBN gettext-0.18.3.1.orig/gettext-runtime/intl/canonicalize.c gettext-0.18.3.1/gettext-runtime/intl/canonicalize.c
*** gettext-0.18.3.1.orig/gettext-runtime/intl/canonicalize.c 1970-01-01 01:00:00.000000000 +0100
--- gettext-0.18.3.1/gettext-runtime/intl/canonicalize.c 2014-01-08 21:50:51.089192200 +0100
***************
*** 0 ****
--- 1,329 ----
+ /* Return the canonical absolute name of a given file.
+ Copyright (C) 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, write to the Free
+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA. */
+
+ #include <stdlib.h>
+ #include <string.h>
+ #include <unistd.h>
+ #include <limits.h>
+ #include <sys/param.h>
+ #include <sys/stat.h>
+ #include <errno.h>
+ #include <stddef.h>
+ #include <malloc.h>
+ #ifdef __WIN32__
+ # include <stdio.h>
+ # include <windows.h>
+ //# include <gw32.h>
+ #endif /* __WIN32__ */
+
+ #ifndef MAXSYMLINKS
+ # define MAXSYMLINKS 20
+ #endif
+
+ #ifndef __set_errno
+ # define __set_errno(Val) errno = (Val)
+ #endif
+
+ # ifdef VMS
+ /* We want the directory in Unix syntax, not in VMS syntax. */
+ # define __getcwd(buf, max) getcwd (buf, max, 0)
+ # else
+ # define __getcwd getcwd
+ # endif
+
+ #define weak_alias(local, symbol)
+
+ #if defined _WIN32 || defined __WIN32__ || defined __CYGWIN__ || defined __EMX__ || defined __DJGPP__
+ /* Win32, Cygwin, OS/2, DOS */
+ # define ISDIRSEP(C) ((C) == '/' || (C) == '\\')
+ #else
+ /* Unix */
+ # define ISDIRSEP(C) ((C) == '/')
+ #endif
+
+ /* Return the canonical absolute name of file NAME. A canonical name
+ does not contain any `.', `..' components nor any repeated path
+ separators ('/') or symlinks. All path components must exist. If
+ RESOLVED is null, the result is malloc'd; otherwise, if the
+ canonical name is PATH_MAX chars or more, returns null with `errno'
+ set to ENAMETOOLONG; if the name fits in fewer than PATH_MAX chars,
+ returns the name in RESOLVED. If the name cannot be resolved and
+ RESOLVED is non-NULL, it contains the path of the first component
+ that cannot be resolved. If the path can be resolved, RESOLVED
+ holds the same value as the value returned.
+ RESOLVED must be at least PATH_MAX long */
+
+ static char *
+ canonicalize (const char *name, char *resolved)
+ {
+ char *rpath, *dest, *extra_buf = NULL;
+ const char *start, *end, *rpath_limit;
+ long int path_max;
+ int num_links = 0, old_errno;
+
+ if (name == NULL)
+ {
+ /* As per Single Unix Specification V2 we must return an error if
+ either parameter is a null pointer. We extend this to allow
+ the RESOLVED parameter to be NULL in case the we are expected to
+ allocate the room for the return value. */
+ __set_errno (EINVAL);
+ return NULL;
+ }
+
+ if (name[0] == '\0')
+ {
+ /* As per Single Unix Specification V2 we must return an error if
+ the name argument points to an empty string. */
+ __set_errno (ENOENT);
+ return NULL;
+ }
+ #ifdef __WIN32__
+ {
+ char *lpFilePart;
+ int len;
+ // fprintf(stderr, "name: %s\n", name);
+ rpath = resolved ? __builtin_alloca (MAX_PATH) : malloc (MAX_PATH);
+ // unix2winpath (name);
+ // fprintf(stderr, "name: %s\n", name);
+ len = GetFullPathName(name, MAX_PATH, rpath, &lpFilePart);
+ /* GetFullPathName returns bogus paths for *nix-style paths, like
+ * /foo/bar - it just prepends current drive to them. Keep them
+ * intact (they need to be for relocation to work!).
+ */
+ if (name[0] == '/') {
+ strncpy (rpath, name, MAX_PATH - 1);
+ rpath[MAX_PATH - 1] = '\0';
+ len = strlen (rpath);
+ }
+ // fprintf(stderr, "rpath: %s\n", rpath);
+ if (len == 0) {
+ //set_werrno;
+ return NULL;
+ }
+ if (len > MAX_PATH) {
+ if (resolved)
+ __set_errno(ENAMETOOLONG);
+ else {
+ rpath = realloc(rpath, len + 2);
+ GetFullPathName(name, len, rpath, &lpFilePart);
+ // fprintf(stderr, "rpath: %s\n", rpath);
+ }
+ }
+ // if ( ISDIRSEP(name[strlen(name)]) && !ISDIRSEP(rpath[len]) ) {
+ // rpath[len] = '\\';
+ // rpath[len + 1] = 0;
+ // }
+ old_errno = errno;
+ //if (!access (rpath, D_OK) && !ISDIRSEP(rpath[len - 1]) ){
+ if (!access (rpath, R_OK) && !ISDIRSEP(rpath[len - 1]) ){
+ rpath[len] = '\\';
+ rpath[len + 1] = 0;
+ }
+ errno = old_errno;
+ win2unixpath (rpath);
+ // fprintf(stderr, "rpath: %s\n", rpath);
+ return resolved ? strcpy(resolved, rpath) : rpath ;
+ }
+ #else /* __WIN32__ */
+
+ #ifdef PATH_MAX
+ path_max = PATH_MAX;
+ #else
+ path_max = pathconf (name, _PC_PATH_MAX);
+ if (path_max <= 0)
+ path_max = 1024;
+ #endif
+
+ rpath = resolved ? __builtin_alloca (path_max) : malloc (path_max);
+ rpath_limit = rpath + path_max;
+
+ if (name[0] != '/')
+ {
+ if (!__getcwd (rpath, path_max))
+ {
+ rpath[0] = '\0';
+ goto error;
+ }
+ dest = strchr (rpath, '\0');
+ }
+ else
+ {
+ rpath[0] = '/';
+ dest = rpath + 1;
+ }
+
+ for (start = end = name; *start; start = end)
+ {
+ #ifdef _LIBC
+ struct stat64 st;
+ #else
+ struct stat st;
+ #endif
+ int n;
+
+ /* Skip sequence of multiple path-separators. */
+ while (*start == '/')
+ ++start;
+
+ /* Find end of path component. */
+ for (end = start; *end && *end != '/'; ++end)
+ /* Nothing. */;
+
+ if (end - start == 0)
+ break;
+ else if (end - start == 1 && start[0] == '.')
+ /* nothing */;
+ else if (end - start == 2 && start[0] == '.' && start[1] == '.')
+ {
+ /* Back up to previous component, ignore if at root already. */
+ if (dest > rpath + 1)
+ while ((--dest)[-1] != '/');
+ }
+ else
+ {
+ size_t new_size;
+
+ if (dest[-1] != '/')
+ *dest++ = '/';
+
+ if (dest + (end - start) >= rpath_limit)
+ {
+ ptrdiff_t dest_offset = dest - rpath;
+
+ if (resolved)
+ {
+ __set_errno (ENAMETOOLONG);
+ if (dest > rpath + 1)
+ dest--;
+ *dest = '\0';
+ goto error;
+ }
+ new_size = rpath_limit - rpath;
+ if (end - start + 1 > path_max)
+ new_size += end - start + 1;
+ else
+ new_size += path_max;
+ rpath = realloc (rpath, new_size);
+ rpath_limit = rpath + new_size;
+ if (rpath == NULL)
+ return NULL;
+
+ dest = rpath + dest_offset;
+ }
+
+ #ifdef _LIBC
+ dest = __mempcpy (dest, start, end - start);
+ #else
+ memcpy (dest, start, end - start);
+ dest += end - start;
+ #endif
+ *dest = '\0';
+
+ #ifdef _LIBC
+ if (__lxstat64 (_STAT_VER, rpath, &st) < 0)
+ #else
+ if (lstat (rpath, &st) < 0)
+ #endif
+ goto error;
+
+ #if HAVE_READLINK
+ if (S_ISLNK (st.st_mode))
+ {
+ char *buf = __builtin_alloca (path_max);
+ size_t len;
+
+ if (++num_links > MAXSYMLINKS)
+ {
+ __set_errno (ELOOP);
+ goto error;
+ }
+
+ n = __readlink (rpath, buf, path_max);
+ if (n < 0)
+ goto error;
+ buf[n] = '\0';
+
+ if (!extra_buf)
+ extra_buf = __builtin_alloca (path_max);
+
+ len = strlen (end);
+ if ((long int) (n + len) >= path_max)
+ {
+ __set_errno (ENAMETOOLONG);
+ goto error;
+ }
+
+ /* Careful here, end may be a pointer into extra_buf... */
+ memmove (&extra_buf[n], end, len + 1);
+ name = end = memcpy (extra_buf, buf, n);
+
+ if (buf[0] == '/')
+ dest = rpath + 1; /* It's an absolute symlink */
+ else
+ /* Back up to previous component, ignore if at root already: */
+ if (dest > rpath + 1)
+ while ((--dest)[-1] != '/');
+ }
+ #endif
+ }
+ }
+ if (dest > rpath + 1 && dest[-1] == '/')
+ --dest;
+ *dest = '\0';
+
+ return resolved ? memcpy (resolved, rpath, dest - rpath + 1) : rpath;
+
+ error:
+ if (resolved)
+ strcpy (resolved, rpath);
+ else
+ free (rpath);
+ return NULL;
+
+ #endif /* __WIN32__ */
+ }
+
+
+ char *
+ __realpath (const char *name, char *resolved)
+ {
+ if (resolved == NULL)
+ {
+ __set_errno (EINVAL);
+ return NULL;
+ }
+
+ return canonicalize (name, resolved);
+ }
+ weak_alias (__realpath, realpath)
+
+
+ char *
+ __canonicalize_file_name (const char *name)
+ {
+ return canonicalize (name, NULL);
+ }
+ weak_alias (__canonicalize_file_name, canonicalize_file_name)
+
+ char *
+ canonicalize_file_name (const char *name)
+ {
+ return canonicalize (name, NULL);
+ }
diff -crBN gettext-0.18.3.1.orig/gettext-runtime/intl/Makefile.in gettext-0.18.3.1/gettext-runtime/intl/Makefile.in
*** gettext-0.18.3.1.orig/gettext-runtime/intl/Makefile.in 2013-07-29 13:35:59.000000000 +0200
--- gettext-0.18.3.1/gettext-runtime/intl/Makefile.in 2014-01-08 21:52:05.080559000 +0100
***************
*** 122,127 ****
--- 122,128 ----
localcharset.h \
lock.h \
relocatable.h \
+ relocatex.h \
tsearch.h tsearch.c \
verify.h \
xsize.h \
***************
*** 152,157 ****
--- 153,160 ----
threadlib.c \
lock.c \
relocatable.c \
+ relocatex.c \
+ canonicalize.c \
langprefs.c \
localename.c \
log.c \
***************
*** 185,190 ****
--- 188,195 ----
threadlib.$lo \
lock.$lo \
relocatable.$lo \
+ relocatex.$lo \
+ canonicalize.$lo \
langprefs.$lo \
localename.$lo \
log.$lo \
***************
*** 287,292 ****
--- 292,301 ----
$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC --mode=compile $(COMPILE) $(srcdir)/threadlib.c
lock.lo: $(srcdir)/lock.c
$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC --mode=compile $(COMPILE) $(srcdir)/lock.c
+ relocatex.lo: $(srcdir)/relocatex.c
+ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC --mode=compile $(COMPILE) $(srcdir)/relocatex.c
+ canonicalize.lo: $(srcdir)/canonicalize.c
+ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC --mode=compile $(COMPILE) $(srcdir)/canonicalize.c
relocatable.lo: $(srcdir)/relocatable.c
$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC --mode=compile $(COMPILE) $(srcdir)/relocatable.c
langprefs.lo: $(srcdir)/langprefs.c
diff -crBN gettext-0.18.3.1.orig/gettext-runtime/intl/relocatex.c gettext-0.18.3.1/gettext-runtime/intl/relocatex.c
*** gettext-0.18.3.1.orig/gettext-runtime/intl/relocatex.c 1970-01-01 01:00:00.000000000 +0100
--- gettext-0.18.3.1/gettext-runtime/intl/relocatex.c 2014-01-08 21:50:51.136095000 +0100
***************
*** 0 ****
--- 1,295 ----
+ /* Provide relocatable packages.
+ Copyright (C) 2003 Free Software Foundation, Inc.
+ Written by Bruno Haible <bruno@clisp.org>, 2003.
+
+ This program is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Library General Public License as published
+ by the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public
+ License along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+ USA. */
+
+
+ /* Specification. */
+ #include <errno.h>
+ #define _GNU_SOURCE
+ #include <stdlib.h>
+ #include <string.h>
+ #include <stdio.h>
+ #include <unistd.h>
+ /* #include <path.h> */
+ #include "relocatex.h"
+ //#include "canonicalize.h"
+ /* #include <gw32.h> */
+
+
+ #if defined _WIN32 || defined __WIN32__
+ # define WIN32_LEAN_AND_MEAN
+ # include <windows.h>
+ //# define __GW32__
+ //# include <winx/errnox.h>
+ #endif
+ #define set_werrno
+
+ #if defined _WIN32 || defined __WIN32__ || defined __CYGWIN__ || defined __EMX__ || defined __DJGPP__
+ /* Win32, Cygwin, OS/2, DOS */
+ # define ISDIRSEP(C) ((C) == '/' || (C) == '\\')
+ #else
+ /* Unix */
+ # define ISDIRSEP(C) ((C) == '/')
+ #endif
+
+ /* Original installation prefix. */
+ static char *orig_prefix = NULL;
+ static size_t orig_prefix_len = 0;
+ /* Current installation prefix. */
+ static char *curr_prefix = NULL;
+ static size_t curr_prefix_len = 0;
+ /* These prefixes do not end in a slash. Anything that will be concatenated
+ to them must start with a slash. */
+
+
+ char *win2unixpath (char *FileName)
+ {
+ char *s = FileName;
+ while (*s) {
+ if (*s == '\\')
+ *s = '/';
+ *s++;
+ }
+ return FileName;
+ }
+
+ int win2posixpath (const char *winpath, char *posixpath)
+ {
+ strcpy (posixpath, winpath);
+ win2unixpath (posixpath);
+ return 0;
+ }
+
+
+ /* Sets the original and the current installation prefix of this module.
+ Relocation simply replaces a pathname starting with the original prefix
+ by the corresponding pathname with the current prefix instead. Both
+ prefixes should be directory names without trailing slash (i.e. use ""
+ instead of "/"). */
+ static char *
+ set_orig_prefix (const char *orig_prefix_arg)
+ {
+ char *memory;
+ // printf ("orig_prefix_arg: %s\n", orig_prefix_arg);
+ if (!orig_prefix_arg) {
+ orig_prefix = NULL;
+ orig_prefix_len = 0;
+ return NULL;
+ }
+ if (orig_prefix)
+ free (orig_prefix);
+
+ memory = canonicalize_file_name (orig_prefix_arg);
+ // printf ("memory: %s\n", memory);
+ // memory = (char *) malloc (orig_prefix_len + 1);
+ if (!memory) {
+ set_werrno;
+ orig_prefix = NULL;
+ orig_prefix_len = 0;
+ return NULL;
+ }
+ win2unixpath (memory);
+ // win2posixpath (orig_prefix_arg, memory);
+ orig_prefix = memory;
+ orig_prefix_len = strlen (orig_prefix);
+ // printf ("orig_prefix: %s\n", orig_prefix);
+ if (ISDIRSEP (orig_prefix[orig_prefix_len-1])) {
+ orig_prefix[orig_prefix_len-1] = '\0';
+ orig_prefix_len--;
+ }
+ // printf ("orig_prefix: %s\n", orig_prefix);
+ // printf ("orig_prefix_len: %d\n", orig_prefix_len);
+ return orig_prefix;
+ }
+
+ #if defined __WIN32__
+ static char *
+ set_current_prefix (const char *ModuleName)
+ {
+ LPTSTR curr_prefix_arg, q, lpFilePart;
+ DWORD len;
+ int nDIRSEP = 0;
+
+ if (curr_prefix)
+ free (curr_prefix);
+ curr_prefix_arg = malloc (MAX_PATH * sizeof (TCHAR));
+ if (!curr_prefix_arg) {
+ set_werrno;
+ curr_prefix = NULL;
+ curr_prefix_len = 0;
+ return NULL;
+ }
+ if (ModuleName) {
+ // printf ("ModuleName: %s\n", ModuleName);
+ len = SearchPath (NULL, ModuleName, ".DLL", MAX_PATH, curr_prefix_arg, &lpFilePart);
+ if (len) {
+ // printf ("ModulePath: %s\n", curr_prefix_arg);
+ // printf ("FilePart: %s\n", lpFilePart);
+ }
+ }
+ if (!ModuleName || !len) {
+ len = GetModuleFileName (NULL, curr_prefix_arg, MAX_PATH);
+ if (!len) {
+ set_werrno;
+ curr_prefix = NULL;
+ curr_prefix_len = 0;
+ return NULL;
+ }
+ }
+ // strncpy (curr_prefix_arg, ModuleName, MAX_PATH);
+ // printf ("curr_prefix_arg: %s\n", curr_prefix_arg);
+ win2posixpath (curr_prefix_arg, curr_prefix_arg);
+ curr_prefix = curr_prefix_arg;
+ q = curr_prefix_arg + len - 1;
+ /* strip name of executable and its directory */
+ while (!ISDIRSEP (*q) && (q > curr_prefix_arg) && nDIRSEP < 2) {
+ q--;
+ if (ISDIRSEP (*q)) {
+ *q = '\0';
+ nDIRSEP++;
+ }
+ }
+ curr_prefix_len = q - curr_prefix_arg;
+ // printf ("curr_prefix: %s\n", curr_prefix);
+ // printf ("curr_prefix_len: %d\n", curr_prefix_len);
+ return curr_prefix;
+ }
+
+ char *getshortpath (const char *longpath)
+ {
+ char *shortpath = NULL;
+ DWORD len, res;
+
+ // printf ("longpath: %s\n", longpath);
+ len = GetShortPathName(longpath, shortpath, 0);
+ // printf ("len: %ld\n", len);
+ if (!len) {
+ // WinErr ("getshortpath: len = 0");
+ set_werrno;
+ return (char *) longpath;
+ }
+ shortpath = (char *) malloc (len + 1);
+ if (!shortpath) {
+ // WinErr ("getshortpath: malloc");
+ set_werrno;
+ return (char *) longpath;
+ }
+ res = GetShortPathName(longpath, shortpath, len);
+ // printf ("res: %ld\n", res);
+ if (!res) {
+ // WinErr ("getshortpath: res = 0");
+ free (shortpath);
+ set_werrno;
+ return (char *) longpath;
+ }
+ // printf ("shortpath: %s\n", shortpath);
+ return shortpath;
+ }
+
+ char *relocaten (const char *ModuleName, const char *path)
+ {
+ char *relative_path, *relocated_path, *relocated_short_path;
+ int relative_path_len;
+
+ if (!curr_prefix)
+ set_current_prefix (ModuleName);
+ // printf ("path: %s\n", path);
+ // printf ("orig_prefix: %s\n", orig_prefix);
+ // printf ("curr_prefix: %s\n", curr_prefix);
+ // if (strncmp (orig_prefix, path, orig_prefix_len))
+ // if (strcmp (orig_prefix, path))
+ // return (char *) path;
+ relative_path = (char *) path + orig_prefix_len;
+ // printf ("relative_path: %s\n", relative_path);
+ relative_path_len = strlen (relative_path);
+ relocated_path = malloc (curr_prefix_len + relative_path_len + 1);
+ strcpy (relocated_path, curr_prefix);
+ strcat (relocated_path, relative_path);
+ // printf ("relocated_path: %s\n", relocated_path);
+ relocated_short_path = getshortpath (relocated_path);
+ // printf ("relocated_short_path: %s\n", relocated_short_path);
+ if (relocated_short_path) {
+ if (relocated_short_path != relocated_path)
+ free (relocated_path);
+ return relocated_short_path;
+ } else
+ return relocated_path;
+ }
+
+ #else // __WIN32__
+ char *relocaten (const char *ModuleName, const char *path)
+ {
+ // dummy function for Unix/Linux
+ return (char *)path;
+ }
+ #endif
+
+ char *relocaten2 (const char *ModuleName, const char *installdir, const char *path)
+ {
+ set_orig_prefix (installdir);
+ return relocaten (ModuleName, path);
+ }
+
+ char *relocatenx (const char *ModuleName, const char *installdir, const char *path)
+ {
+ char *p;
+
+ set_orig_prefix (installdir);
+ if (access (path, R_OK))
+ p = relocaten (ModuleName, path);
+ else
+ p = (char *) path;
+ // printf ("relocatenx: %s\n", p);
+ return p;
+ }
+
+ char *relocate2 (const char *installdir, const char *path)
+ {
+ return relocaten2 (NULL, installdir, path);
+ }
+
+ char *relocatex (const char *installdir, const char *path)
+ {
+ return relocatenx (NULL, installdir, path);
+ }
+
+ char *relocatepx (const char *cprefix, const char *installdir, const char *path)
+ {
+ if (curr_prefix)
+ free (curr_prefix);
+ curr_prefix = strdup (cprefix);
+ return relocatex (installdir, path);
+ }
+
+ static char *get_orig_prefix (void)
+ {
+ return orig_prefix;
+ }
+
+ static char *get_curr_prefix (void)
+ {
+ return curr_prefix;
+ }
+
+ static char *set_curr_prefix (const char *ModuleName)
+ {
+ if (curr_prefix)
+ free (curr_prefix);
+ set_current_prefix (ModuleName);
+ return curr_prefix;
+ }
diff -crBN gettext-0.18.3.1.orig/gettext-runtime/intl/relocatex.h gettext-0.18.3.1/gettext-runtime/intl/relocatex.h
*** gettext-0.18.3.1.orig/gettext-runtime/intl/relocatex.h 1970-01-01 01:00:00.000000000 +0100
--- gettext-0.18.3.1/gettext-runtime/intl/relocatex.h 2014-01-08 21:50:51.136095000 +0100
***************
*** 0 ****
--- 1,41 ----
+ /*
+ Copyright (C) 2006 Free Software Foundation, Inc.
+ This file is part of the GnuWin C Library.
+
+ The GnuWin C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GnuWin C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GnuWin32 C Library; if not, write to the Free
+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA. */
+
+ #ifndef __RELOCATE_H__
+ #define __RELOCATE_H__ 1
+
+ /* #include <libc-dll.h> */
+
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+
+ char *relocaten (const char *ModuleName, const char *path);
+ char *relocaten2 (const char *ModuleName, const char *installdir, const char *path);
+ char *relocatenx (const char *ModuleName, const char *installdir, const char *path);
+ char *relocate2 (const char *installdir, const char *path);
+ char *relocatex (const char *installdir, const char *path);
+
+ #ifdef __cplusplus
+ }
+ #endif
+
+ //#endif /* __GW32__ */
+
+ #endif /* __RELOCATE_H__ */
diff -crBN gettext-0.18.3.1.orig/MINGW-PATCHES/README-relocatex-libintl.txt gettext-0.18.3.1/MINGW-PATCHES/README-relocatex-libintl.txt
*** gettext-0.18.3.1.orig/MINGW-PATCHES/README-relocatex-libintl.txt 1970-01-01 01:00:00.000000000 +0100
--- gettext-0.18.3.1/MINGW-PATCHES/README-relocatex-libintl.txt 2014-01-08 21:50:51.151701000 +0100
***************
*** 0 ****
--- 1,23 ----
+ The relocatex-libintl patch adds builtin relocation for executables to the
+ libintl dll. With this patch the programs are automatically relocatable. There
+ is no need anymore to add relocation code to your program when you use this
+ libintl DLL.
+
+ The patch was ported from the GnuWin32 port of libintl, which has also builtin
+ relacation support.
+
+ At the moment the relocation support is only active if you compile with MinGW
+ for Windows. If you compile for Unix/Linux/Cygwin the functionality is
+ unchanged.
+
+ See also:
+ http://waterlan.home.xs4all.nl/libintl.html
+ http://sourceforge.net/tracker/?func=detail&atid=302435&aid=3003879&group_id=2435
+ GnuWin32: http://gnuwin32.sourceforge.net/
+
+ Great thanks to GnuWin32 maintainer Kees Zeelenberg.
+
+ Erwin Waterlander
+ waterlan@xs4all.nl
+ http://waterlan.home.xs4all.nl/
+

View File

@ -1,11 +0,0 @@
--- gettext-runtime/intl/printf.c.orig 2012-09-22 16:23:24 +0400
+++ gettext-runtime/intl/printf.c 2012-09-22 23:45:29 +0400
@@ -209,7 +209,7 @@
int
libintl_vsnprintf (char *resultbuf, size_t length, const char *format, va_list args)
{
- if (strchr (format, '$') == NULL)
+ if (0 && (strchr (format, '$') == NULL))
return system_vsnprintf (resultbuf, length, format, args);
else
{

View File

@ -1,44 +0,0 @@
--- gettext-tools/gnulib-lib/libxml/parser.c.orig 2013-01-18 10:24:37 +0400
+++ gettext-tools/gnulib-lib/libxml/parser.c 2013-01-18 10:36:35 +0400
@@ -42,6 +42,9 @@
#include <stdlib.h>
#include <string.h>
#include <stdarg.h>
+#ifdef HAVE_CTYPE_H
+#include <ctype.h>
+#endif
#include <libxml/xmlmemory.h>
#include <libxml/threads.h>
#include <libxml/globals.h>
@@ -61,9 +64,6 @@
#include <libxml/xmlschemastypes.h>
#include <libxml/relaxng.h>
#endif
-#ifdef HAVE_CTYPE_H
-#include <ctype.h>
-#endif
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
--- gettext-tools/gnulib-lib/libxml/threads.c.orig 2013-01-18 10:38:24 +0400
+++ gettext-tools/gnulib-lib/libxml/threads.c 2013-01-18 10:41:11 +0400
@@ -12,15 +12,16 @@
#include <string.h>
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
#include <libxml/threads.h>
#include <libxml/globals.h>
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif

View File

@ -1,63 +0,0 @@
--- gettext-runtime/libasprintf/vasnprintf.h.orig 2013-01-17 09:09:12 +0400
+++ gettext-runtime/libasprintf/vasnprintf.h 2013-05-01 17:33:31 +0400
@@ -40,6 +40,8 @@
extern "C" {
#endif
+#if !defined(__USE_MINGW_ANSI_STDIO) && defined(__MINGW64_VERSION_MAJOR)
+
/* Write formatted output to a string dynamically allocated with malloc().
You can pass a preallocated buffer for the result in RESULTBUF and its
size in *LENGTHP; otherwise you pass RESULTBUF = NULL.
@@ -64,11 +66,14 @@
free (output);
}
*/
+
extern char * asnprintf (char *resultbuf, size_t *lengthp, const char *format, ...)
__attribute__ ((__format__ (__printf__, 3, 4)));
extern char * vasnprintf (char *resultbuf, size_t *lengthp, const char *format, va_list args)
__attribute__ ((__format__ (__printf__, 3, 0)));
+#endif /* !defined(__USE_MINGW_ANSI_STDIO) && defined(__MINGW64_VERSION_MAJOR) */
+
#ifdef __cplusplus
}
#endif
--- gettext-runtime/libasprintf/vasprintf.h.orig 2013-04-30 09:03:19 +0400
+++ gettext-runtime/libasprintf/vasprintf.h 2013-05-01 17:32:04 +0400
@@ -37,6 +37,8 @@
extern "C" {
#endif
+#if !defined(__USE_MINGW_ANSI_STDIO) && defined(__MINGW64_VERSION_MAJOR)
+
/* Write formatted output to a string dynamically allocated with malloc().
If the memory allocation succeeds, store the address of the string in
*RESULT and return the number of resulting bytes, excluding the trailing
@@ -46,6 +48,8 @@
extern int vasprintf (char **result, const char *format, va_list args)
__attribute__ ((__format__ (__printf__, 2, 0)));
+#endif /* !defined(__USE_MINGW_ANSI_STDIO) && defined(__MINGW64_VERSION_MAJOR) */
+
#ifdef __cplusplus
}
#endif
--- gettext-runtime/libasprintf/vasnprintf.c.orig 2013-05-01 18:07:02 +0400
+++ gettext-runtime/libasprintf/vasnprintf.c 2013-05-01 18:42:46 +0400
@@ -67,7 +67,14 @@
#endif
#include <locale.h> /* localeconv() */
+#if defined(__MINGW64_VERSION_MAJOR) && defined(__USE_MINGW_ANSI_STDIO)
+# define REMOVED__USE_MINGW_ANSI_STDIO
+# undef __USE_MINGW_ANSI_STDIO
+#endif
#include <stdio.h> /* snprintf(), sprintf() */
+#if defined(__MINGW64_VERSION_MAJOR) && defined(REMOVED__USE_MINGW_ANSI_STDIO)
+# define __USE_MINGW_ANSI_STDIO
+#endif
#include <stdlib.h> /* abort(), malloc(), realloc(), free() */
#include <string.h> /* memcpy(), strlen() */
#include <errno.h> /* errno */

View File

@ -1,11 +0,0 @@
--- gettext-runtime/intl/libgnuintl.in.h.old 2015-06-15 10:40:11.594942600 +0200
+++ gettext-runtime/intl/libgnuintl.in.h 2015-06-15 10:40:50.579345400 +0200
@@ -336,7 +336,7 @@ extern int vfprintf (FILE *, const char
#if !(defined printf && defined _GL_STDIO_H) /* don't override gnulib */
#undef printf
-#if defined __NetBSD__ || defined __BEOS__ || defined __CYGWIN__ || defined __MINGW32__
+#if defined __NetBSD__ || defined __BEOS__ || defined __CYGWIN__ || defined __MINGW32__ || defined _MSC_VER
/* Don't break __attribute__((format(printf,M,N))).
This redefinition is only possible because the libc in NetBSD, Cygwin,
mingw does not have a function __printf__.

View File

@ -1,11 +0,0 @@
--- gettext-tools/gnulib-m4/asm-underscore.m4.orig 2016-08-12 19:58:41.845742375 +0200
+++ gettext-tools/gnulib-m4/asm-underscore.m4 2016-08-12 19:55:53.967056822 +0200
@@ -29,7 +29,7 @@
EOF
# Look for the assembly language name in the .s file.
AC_TRY_COMMAND(${CC-cc} $CFLAGS $CPPFLAGS $gl_c_asm_opt conftest.c) >/dev/null 2>&1
- if LC_ALL=C grep -E '(^|[^a-zA-Z0-9_])_foo([^a-zA-Z0-9_]|$)' conftest.$gl_asmext >/dev/null; then
+ if LC_ALL=C grep -E '(^|[[^a-zA-Z0-9_]])_foo([[^a-zA-Z0-9_]]|$)' conftest.$gl_asmext >/dev/null; then
gl_cv_prog_as_underscore=yes
else
gl_cv_prog_as_underscore=no

View File

@ -1,21 +1,17 @@
pkgname=mingw-w64-gettext pkgname=mingw-w64-gettext
pkgver=0.21 pkgver=0.22.5
pkgrel=1 pkgrel=1
arch=('any') arch=('any')
pkgdesc='GNU internationalization library (mingw-w64)' pkgdesc='GNU internationalization library (mingw-w64)'
depends=('mingw-w64-termcap' 'mingw-w64-libunistring') depends=('mingw-w64-termcap' 'mingw-w64-libunistring')
makedepends=('gettext' 'mingw-w64-configure') makedepends=('gettext' 'mingw-w64-configure')
options=(!strip !buildflags staticlibs) options=(!strip !buildflags staticlibs)
license=("GPL") license=('GPL-2.0-only' 'LGPL-2.0-only' 'GFDL-1.2-only' 'GPL-2.0-or-later')
url="http://www.gnu.org/software/gettext/" url="http://www.gnu.org/software/gettext/"
source=(http://ftp.gnu.org/pub/gnu/gettext/gettext-${pkgver}.tar.gz{,.sig} source=(http://ftp.gnu.org/pub/gnu/gettext/gettext-${pkgver}.tar.gz{,.sig}
gettext-printf_collision.patch
gettext_formatstring-ruby.patch
intl.pc) intl.pc)
sha256sums=('c77d0da3102aec9c07f43671e60611ebff89a996ef159497ce8e59d075786b12' sha256sums=('ec1705b1e969b83a9f073144ec806151db88127f5e40fe5a94cb6c8fa48996a0'
'SKIP' 'SKIP'
'7da6794550b0704a58ed9984913ebf671d98ab3178dbc58dd88337c35c8cdadb'
'380910da75c5aa62524acb18fc54415b2c0ad391f6385ea4369bbd1e6e0d29ef'
'0dc8a3e2c95d79aacaeaacd3c90e41c0f5d6ba9cfbc949a0ca55f4b0fd389d9c') '0dc8a3e2c95d79aacaeaacd3c90e41c0f5d6ba9cfbc949a0ca55f4b0fd389d9c')
validpgpkeys=('462225C3B46F34879FC8496CD605848ED7E69871' # Daiki Ueno validpgpkeys=('462225C3B46F34879FC8496CD605848ED7E69871' # Daiki Ueno
'68D94D8AAEEAD48AE7DC5B904F494A942E4616C2' '68D94D8AAEEAD48AE7DC5B904F494A942E4616C2'
@ -25,8 +21,6 @@ _architectures='i686-w64-mingw32 x86_64-w64-mingw32'
prepare() { prepare() {
cd gettext-$pkgver cd gettext-$pkgver
patch -p1 -i "${srcdir}"/gettext-printf_collision.patch
patch -p1 -i "${srcdir}"/gettext_formatstring-ruby.patch
} }
build() { build() {

View File

@ -1,20 +0,0 @@
diff -rupN --no-dereference gettext-0.21/gettext-runtime/intl/libgnuintl.in.h gettext-0.21-new/gettext-runtime/intl/libgnuintl.in.h
--- gettext-0.21/gettext-runtime/intl/libgnuintl.in.h 2020-07-26 22:13:34.000000000 +0200
+++ gettext-0.21-new/gettext-runtime/intl/libgnuintl.in.h 2020-08-03 11:57:20.495613456 +0200
@@ -431,6 +431,7 @@ extern int vasprintf (char **, const cha
#endif
#if @HAVE_WPRINTF@
+#ifndef __cplusplus
#undef fwprintf
#define fwprintf libintl_fwprintf
@@ -455,6 +456,8 @@ extern int vswprintf (wchar_t *, size_t,
#endif
+#endif
+
#endif

View File

@ -1,11 +0,0 @@
diff -rupN gettext-0.21/gettext-tools/woe32dll/gettextsrc-exports.c gettext-0.21-new/gettext-tools/woe32dll/gettextsrc-exports.c
--- gettext-0.21/gettext-tools/woe32dll/gettextsrc-exports.c 2019-12-23 12:21:12.000000000 +0100
+++ gettext-0.21-new/gettext-tools/woe32dll/gettextsrc-exports.c 2020-08-03 14:22:17.096473605 +0200
@@ -50,6 +50,7 @@ VARIABLE(formatstring_python)
VARIABLE(formatstring_python_brace)
VARIABLE(formatstring_qt)
VARIABLE(formatstring_qt_plural)
+VARIABLE(formatstring_ruby)
VARIABLE(formatstring_scheme)
VARIABLE(formatstring_sh)
VARIABLE(formatstring_smalltalk)

View File

@ -1,12 +1,12 @@
# Maintainer: Martchus <martchus@gmx.net> # Maintainer: Martchus <martchus@gmx.net>
pkgname=mingw-w64-gnutls pkgname=mingw-w64-gnutls
pkgver=3.8.1 pkgver=3.8.3
pkgrel=1 pkgrel=1
pkgdesc='A library which provides a secure layer over a reliable transport layer (mingw-w64)' pkgdesc='A library which provides a secure layer over a reliable transport layer (mingw-w64)'
arch=('any') arch=('any')
url="http://www.gnu.org/software/gnutls" url="https://www.gnutls.org/"
license=('GPL3' 'LGPL2.1') license=('GPL-3.0-or-later AND LGPL-2.1-or-later')
makedepends=('mingw-w64-configure' 'autogen') makedepends=('mingw-w64-configure' 'autogen')
checkdepends=('mingw-w64-wine') checkdepends=('mingw-w64-wine')
depends=('mingw-w64-crt' 'mingw-w64-libtasn1' 'mingw-w64-readline' 'mingw-w64-zlib' 'mingw-w64-nettle' 'mingw-w64-p11-kit' 'mingw-w64-libunistring') depends=('mingw-w64-crt' 'mingw-w64-libtasn1' 'mingw-w64-readline' 'mingw-w64-zlib' 'mingw-w64-nettle' 'mingw-w64-p11-kit' 'mingw-w64-libunistring')
@ -14,7 +14,7 @@ options=(staticlibs !strip !buildflags)
optdepends=("mingw-w64-openssl: libgnutls-openssl") optdepends=("mingw-w64-openssl: libgnutls-openssl")
source=(https://www.gnupg.org/ftp/gcrypt/gnutls/v${pkgver%.*}/${pkgname#mingw-w64-}-${pkgver}.tar.xz{,.sig} source=(https://www.gnupg.org/ftp/gcrypt/gnutls/v${pkgver%.*}/${pkgname#mingw-w64-}-${pkgver}.tar.xz{,.sig}
gnutls-fix-external-libtasn1-detection.patch) gnutls-fix-external-libtasn1-detection.patch)
sha256sums=('ba8b9e15ae20aba88f44661978f5b5863494316fe7e722ede9d069fe6294829c' sha256sums=('f74fc5954b27d4ec6dfbb11dea987888b5b124289a3703afcada0ee520f4173e'
'SKIP' 'SKIP'
'8525da75852a516be0cb05df0a770daf19ce0583033260d6cac03a1e40fd2072') '8525da75852a516be0cb05df0a770daf19ce0583033260d6cac03a1e40fd2072')
validpgpkeys=('462225C3B46F34879FC8496CD605848ED7E69871') # "Daiki Ueno <ueno@unixuser.org>" validpgpkeys=('462225C3B46F34879FC8496CD605848ED7E69871') # "Daiki Ueno <ueno@unixuser.org>"

View File

@ -1,77 +1,70 @@
# Maintainer: pingplug < aur at pingplug dot me > # Maintainer: pingplug < aur at pingplug dot me >
# Contributor: Schala Zeal < schalaalexiazeal at gmail dot com > # Contributor: Schala Zeal < schalaalexiazeal at gmail dot com >
_commit=9aa6f8a93f035dd0a1e3978da495d830049480c8 # tags/2.9.0
_architectures="i686-w64-mingw32 x86_64-w64-mingw32" _architectures="i686-w64-mingw32 x86_64-w64-mingw32"
pkgbase=mingw-w64-harfbuzz pkgbase=mingw-w64-harfbuzz
pkgname=('mingw-w64-harfbuzz' 'mingw-w64-harfbuzz-icu') pkgname=('mingw-w64-harfbuzz' 'mingw-w64-harfbuzz-icu')
pkgver=2.9.0 pkgver=8.4.0
pkgrel=1 pkgrel=2
pkgdesc="OpenType text shaping engine (mingw-w64)" pkgdesc="OpenType text shaping engine (mingw-w64)"
arch=('any') arch=('any')
url="https://www.freedesktop.org/wiki/Software/HarfBuzz" url="https://harfbuzz.github.io/"
license=('MIT') license=('MIT')
depends=('mingw-w64-crt' depends=('mingw-w64-crt'
'mingw-w64-glib2' 'mingw-w64-glib2'
'mingw-w64-graphite' 'mingw-w64-graphite'
'mingw-w64-freetype2') 'mingw-w64-freetype2')
makedepends=('mingw-w64-configure' makedepends=('mingw-w64-meson'
'mingw-w64-cairo' 'mingw-w64-cairo'
'mingw-w64-icu' 'mingw-w64-icu'
'python' 'python'
'gtk-doc'
'ragel' 'ragel'
'git') 'git')
options=('!strip' 'staticlibs' '!buildflags') options=('!strip' 'staticlibs' '!buildflags')
source=("git+https://github.com/harfbuzz/harfbuzz.git#commit=${_commit}") source=("git+https://github.com/harfbuzz/harfbuzz?signed#tag=$pkgver")
sha256sums=('SKIP') b2sums=('19f25dbf2ba6d90fdbb4ecb1039c8d0d72c55cff3dc3b30d6b75b626c15bf28a2118495837d80b7f622f0929dd7d4a07b5526963e1204bb9c90bc9f976c26977')
validpgpkeys=(
053D20F17CCCA9651B2C6FCB9AB24930C0B997A2 # Khaled Hosny <khaled@aliftype.com> (@khaledhosny)
9F377DDB6D3153A48EB3EB1E63CC496475267693 # Caleb Maclennan <caleb@alerque.com> (@alerque)
2277650A4E8BDFE4B7F6BE419FEE04E5D3531115 # Ebrahim Byagowi <ebrahim@gnu.org> (@ebraminio)
EACF64F53455E2771BA661A4803B21859F015E4E # Behdad Esfahbod <behdad@behdad.org> (@behdad)
)
pkgver() { pkgver() {
cd harfbuzz cd harfbuzz
git describe --tags | sed 's/-/+/g' git describe --tags | sed 's/-/+/g'
} }
prepare() {
cd harfbuzz
# disable tests (thanks to chenxiaolong)
sed -i '/SUBDIRS/s/test//' Makefile.am
NOCONFIGURE=1 ./autogen.sh
}
build() { build() {
cd harfbuzz cd harfbuzz
for _arch in ${_architectures}; do for _arch in ${_architectures}; do
# Build static and shared libs separately due to necessity of defining DGRAPHITE2_STATIC
# manually when building static version
# static build
mkdir -p build-${_arch}-static && pushd build-${_arch}-static
CFLAGS="${CFLAGS} -DGRAPHITE2_STATIC" \
CXXFLAGS="${CXXFLAGS} -DGRAPHITE2_STATIC" \
${_arch}-configure \
--with-glib \
--with-freetype \
--with-cairo \
--with-icu \
--with-gobject \
--with-graphite2 \
--enable-static=yes \
--enable-shared=no
make
popd
# shared build
mkdir -p build-${_arch}-shared && pushd build-${_arch}-shared mkdir -p build-${_arch}-shared && pushd build-${_arch}-shared
LDFLAGS=-lssp ${_arch}-configure \ ${_arch}-meson \
--with-glib \ -D b_lto=false \
--with-freetype \ -D graphite=enabled \
--with-cairo \ -D tests=disabled \
--with-icu \ -D docs=disabled \
--with-gobject \ -D cpp_std=c++17 \
--with-graphite2 \ ..
--enable-static=no \ # fix linker selection error
--enable-shared=yes sed -i 's|: c_LINKER|: cpp_LINKER|g' build.ninja
make ninja
popd
mkdir -p build-${_arch}-static && pushd build-${_arch}-static
${_arch}-meson \
--default-library static \
-D c_args=-DGRAPHITE2_STATIC \
-D cpp_args=-DGRAPHITE2_STATIC \
-D b_lto=false \
-D graphite=enabled \
-D tests=disabled \
-D docs=disabled \
-D cpp_std=c++17 \
..
# fix linker selection error
sed -i 's|: c_LINKER|: cpp_LINKER|g' build.ninja
ninja
popd popd
done done
} }
@ -79,12 +72,13 @@ build() {
package_mingw-w64-harfbuzz() { package_mingw-w64-harfbuzz() {
for _arch in ${_architectures}; do for _arch in ${_architectures}; do
cd "${srcdir}/harfbuzz/build-${_arch}-static" cd "${srcdir}/harfbuzz/build-${_arch}-static"
make DESTDIR="${pkgdir}" install DESTDIR="${pkgdir}" ninja install
cd "${srcdir}/harfbuzz/build-${_arch}-shared" cd "${srcdir}/harfbuzz/build-${_arch}-shared"
make DESTDIR="${pkgdir}" install DESTDIR="${pkgdir}" ninja install
cp "${srcdir}/harfbuzz/src/hb-ft.h" "${pkgdir}/usr/${_arch}/include/harfbuzz/"
find "${pkgdir}/usr/${_arch}" -name '*.exe' -exec rm {} \; find "${pkgdir}/usr/${_arch}" -name '*.exe' -exec rm {} \;
find "${pkgdir}/usr/${_arch}" -name '*.dll' -exec ${_arch}-strip --strip-unneeded {} \; find "${pkgdir}/usr/${_arch}" -name '*.dll' -exec ${_arch}-strip --strip-unneeded {} \;
find "${pkgdir}/usr/${_arch}" -name '*.a' -o -name '*.dll' | xargs ${_arch}-strip -g find "${pkgdir}/usr/${_arch}" -name '*.a' | xargs ${_arch}-strip -g
mkdir -p hb-icu/usr/${_arch}/{bin,include/harfbuzz,lib/pkgconfig}; cd hb-icu mkdir -p hb-icu/usr/${_arch}/{bin,include/harfbuzz,lib/pkgconfig}; cd hb-icu
mv "${pkgdir}"/usr/${_arch}/bin/libharfbuzz-icu* ./usr/${_arch}/bin mv "${pkgdir}"/usr/${_arch}/bin/libharfbuzz-icu* ./usr/${_arch}/bin

View File

@ -3,19 +3,24 @@
_pkgname=harfbuzz _pkgname=harfbuzz
pkgname=static-compat-$_pkgname pkgname=static-compat-$_pkgname
pkgver=8.1.1 pkgver=8.4.0
pkgrel=1 pkgrel=1
pkgdesc="OpenType text shaping engine" pkgdesc="OpenType text shaping engine"
url="https://www.freedesktop.org/wiki/Software/HarfBuzz" url="https://harfbuzz.github.io/"
arch=(x86_64) arch=(x86_64)
license=(MIT) license=(MIT)
depends=(static-compat-glib2 static-compat-freetype2 static-compat-graphite) depends=(static-compat-glib2 static-compat-freetype2 static-compat-graphite)
makedepends=(gobject-introspection ragel git python static-compat-meson) makedepends=(gobject-introspection ragel git python static-compat-meson)
checkdepends=(python-fonttools python-setuptools) checkdepends=(python-fonttools python-setuptools)
options=(!emptydirs !docs staticlibs) options=(!emptydirs !docs staticlibs)
_commit=1d665c2b521512cdd56964138fc601debd1f1177 # tags/8.1.1^0 source=("git+https://github.com/harfbuzz/harfbuzz?signed#tag=$pkgver")
source=("git+https://github.com/harfbuzz/harfbuzz#commit=$_commit") b2sums=('19f25dbf2ba6d90fdbb4ecb1039c8d0d72c55cff3dc3b30d6b75b626c15bf28a2118495837d80b7f622f0929dd7d4a07b5526963e1204bb9c90bc9f976c26977')
sha256sums=('SKIP') validpgpkeys=(
053D20F17CCCA9651B2C6FCB9AB24930C0B997A2 # Khaled Hosny <khaled@aliftype.com> (@khaledhosny)
9F377DDB6D3153A48EB3EB1E63CC496475267693 # Caleb Maclennan <caleb@alerque.com> (@alerque)
2277650A4E8BDFE4B7F6BE419FEE04E5D3531115 # Ebrahim Byagowi <ebrahim@gnu.org> (@ebraminio)
EACF64F53455E2771BA661A4803B21859F015E4E # Behdad Esfahbod <behdad@behdad.org> (@behdad)
)
pkgver() { pkgver() {
cd harfbuzz cd harfbuzz

23
hw-probe/default/PKGBUILD Normal file
View File

@ -0,0 +1,23 @@
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: Eric Engestrom <aur [at] engestrom [dot] ch>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository.
pkgname=hw-probe
pkgver=1.6.5
pkgrel=2
pkgdesc="Probe for hardware, check its operability and upload result to https://linux-hardware.org"
arch=('any')
url="https://github.com/linuxhw/hw-probe"
license=('LGPL-2.1-or-later OR BSD-4-Clause')
source=("$url/archive/$pkgver.tar.gz")
sha256sums=('42030ba2fb3f6fb0772ab34744fbb91a89b1b6a9b0ed99e861fa05ff86968fb1')
depends=('perl' 'hwinfo' 'curl' 'dmidecode' 'pciutils' 'usbutils' 'net-tools' 'edid-decode' 'ddcutil' 'acpica')
optdepends=('hdparm' 'smartmontools' 'inxi' 'pnputils' 'efibootmgr')
package() {
cd "$srcdir"/hw-probe-$pkgver
install -dm755 "$pkgdir"/usr
DESTDIR="$pkgdir" make install prefix=/usr
}

View File

@ -2,7 +2,7 @@
# Contributor: drakkan <nicola.murino at gmail dot com> # Contributor: drakkan <nicola.murino at gmail dot com>
pkgname=mingw-w64-jasper pkgname=mingw-w64-jasper
pkgver=4.1.1 pkgver=4.2.0
pkgrel=1 pkgrel=1
pkgdesc="A software-based implementation of the codec specified in the emerging JPEG-2000 Part-1 standard (mingw-w64)" pkgdesc="A software-based implementation of the codec specified in the emerging JPEG-2000 Part-1 standard (mingw-w64)"
arch=(any) arch=(any)
@ -14,7 +14,7 @@ options=(staticlibs !strip !buildflags)
source=(${pkgname}-${pkgver}.tar.gz::https://github.com/mdadams/jasper/archive/version-${pkgver}.tar.gz source=(${pkgname}-${pkgver}.tar.gz::https://github.com/mdadams/jasper/archive/version-${pkgver}.tar.gz
0001-Fix-exports.patch 0001-Fix-exports.patch
0002-Fix-building-for-mingw-w64-target.patch) 0002-Fix-building-for-mingw-w64-target.patch)
sha512sums=('a15c196d7e448fb3c8b6512793d4b430e58ba6adf343b46392cac0880ae8c385cd75b43dd566c4a25baab983089cb95c00ae538dc0b84282cc98f2a9ce398d43' sha512sums=('31da8f49cec3ba2a3bb9ba40fa54fe64c97d1e564631c980619f0b3ffca36814adc6c2cb8dc1ead774a15546f308e7a33990821538d1e7b6c885b14ed4e1f711'
'ffa3b51509c626ba7e93375161c2d8d80fe27b54601a1f66bd93032f7c5d2125d8f3d7f8a48701ee9c7422c79035f769f8dd032242475d3628bbf2da27cdcf00' 'ffa3b51509c626ba7e93375161c2d8d80fe27b54601a1f66bd93032f7c5d2125d8f3d7f8a48701ee9c7422c79035f769f8dd032242475d3628bbf2da27cdcf00'
'643020a9f930d4bff0ea73f24c0801910b9bf34e5cc2feb9adbaf4b74965dd38739b957153393468f7d1d87c88232364ae5d3087e17c99b0f7c194febc825355') '643020a9f930d4bff0ea73f24c0801910b9bf34e5cc2feb9adbaf4b74965dd38739b957153393468f7d1d87c88232364ae5d3087e17c99b0f7c194febc825355')

View File

@ -0,0 +1,39 @@
# Maintainer: Martchus <martchus@gmx.net>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository.
_pkgname=kcolorscheme
_android_arch=aarch64
pkgname=android-${_android_arch}-${_pkgname}
pkgver=6.0.0
pkgrel=1
pkgdesc="Classes to read and interact with KColorScheme (Android, $_android_arch)"
arch=('any')
url='https://community.kde.org/Frameworks'
license=(LGPL-2.0-only LGPL-3.0-only)
depends=("android-$_android_arch"-{qt6-base,qt6-tools,kconfig,kguiaddons,ki18n})
makedepends=('cmake' 'android-ndk' 'android-sdk' 'android-cmake' 'extra-cmake-modules' 'ninja' 'qt6-base' 'qt6-tools')
source=(https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz{,.sig})
sha256sums=('20af58ab639ea99df09acbd74af0c867f22f1d9f91595623ab44fba5834eaa62'
'SKIP')
validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB # David Faure <faure@kde.org>
E0A3EB202F8E57528E13E72FD7574483BB57B18D) # Jonathan Esk-Riddell <jr@jriddell.org>
options=(!buildflags staticlibs !strip !emptydirs)
build() {
source android-env ${_android_arch}
android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgname-$pkgver \
-DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \
-DECM_DIR:PATH=/usr/share/ECM/cmake \
-DBUILD_EXAMPLES=OFF \
-DBUILD_TESTING=OFF \
-DBUILD_QCH=OFF
VERBOSE=1 cmake --build build-$_android_arch
}
package() {
source android-env ${_android_arch}
DESTDIR="$pkgdir" VERBOSE=1 cmake --install build-$_android_arch
}

View File

@ -0,0 +1,39 @@
# Maintainer: Martchus <martchus@gmx.net>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository.
_pkgname=kconfig
_android_arch=aarch64
pkgname=android-${_android_arch}-${_pkgname}
pkgver=6.0.0
pkgrel=1
pkgdesc="Configuration system (Android, $_android_arch)"
arch=('any')
url='https://community.kde.org/Frameworks'
license=(LGPL-2.0-only LGPL-3.0-only)
depends=("android-$_android_arch-qt6"-{base,declarative,tools})
makedepends=('cmake' 'android-ndk' 'android-sdk' 'android-cmake' 'extra-cmake-modules' 'ninja' 'qt6-base' 'qt6-declarative' 'qt6-tools')
source=(https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz{,.sig})
sha256sums=('3f7c1e6b048df4ab3d67fbef01a5ad1dd0289c9b158644668fba0225c050c050'
'SKIP')
validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB # David Faure <faure@kde.org>
E0A3EB202F8E57528E13E72FD7574483BB57B18D) # Jonathan Esk-Riddell <jr@jriddell.org>
options=(!buildflags staticlibs !strip !emptydirs)
build() {
source android-env ${_android_arch}
android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgname-$pkgver \
-DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \
-DECM_DIR:PATH=/usr/share/ECM/cmake \
-DBUILD_EXAMPLES=OFF \
-DBUILD_TESTING=OFF \
-DBUILD_QCH=OFF
VERBOSE=1 cmake --build build-$_android_arch
}
package() {
source android-env ${_android_arch}
DESTDIR="$pkgdir" VERBOSE=1 cmake --install build-$_android_arch
}

View File

@ -0,0 +1,39 @@
# Maintainer: Martchus <martchus@gmx.net>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository.
_pkgname=kcoreaddons
_android_arch=aarch64
pkgname=android-${_android_arch}-${_pkgname}
pkgver=6.0.0
pkgrel=1
pkgdesc="Addons to QtCore (Android, $_android_arch)"
arch=('any')
url='https://community.kde.org/Frameworks'
license=(LGPL-2.0-only LGPL-3.0-only)
depends=("android-$_android_arch-qt6"-{base,declarative,tools})
makedepends=('cmake' 'android-ndk' 'android-sdk' 'android-cmake' 'extra-cmake-modules' 'ninja' 'qt6-base' 'qt6-declarative' 'qt6-tools')
source=(https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz{,.sig})
sha256sums=('eab838201b45ac98c412f64d234e89d62357f275ae9ae966d073a64c67a526ef'
'SKIP')
validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB # David Faure <faure@kde.org>
E0A3EB202F8E57528E13E72FD7574483BB57B18D) # Jonathan Esk-Riddell <jr@jriddell.org>
options=(!buildflags staticlibs !strip !emptydirs)
build() {
source android-env ${_android_arch}
android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgname-$pkgver \
-DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \
-DECM_DIR:PATH=/usr/share/ECM/cmake \
-DBUILD_EXAMPLES=OFF \
-DBUILD_TESTING=OFF \
-DBUILD_QCH=OFF
VERBOSE=1 cmake --build build-$_android_arch
}
package() {
source android-env ${_android_arch}
DESTDIR="$pkgdir" VERBOSE=1 cmake --install build-$_android_arch
}

View File

@ -0,0 +1,39 @@
# Maintainer: Martchus <martchus@gmx.net>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository.
_pkgname=kguiaddons
_android_arch=aarch64
pkgname=android-${_android_arch}-${_pkgname}
pkgver=6.0.0
pkgrel=1
pkgdesc="Addons to QtGui (Android, $_android_arch)"
arch=('any')
url='https://community.kde.org/Frameworks'
license=(LGPL-2.0-only LGPL-3.0-only)
depends=("android-$_android_arch-qt6"-{base,tools})
makedepends=('cmake' 'android-ndk' 'android-sdk' 'android-cmake' 'extra-cmake-modules' 'ninja' 'qt6-base' 'qt6-tools')
source=(https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz{,.sig})
sha256sums=('20af58ab639ea99df09acbd74af0c867f22f1d9f91595623ab44fba5834eaa62'
'SKIP')
validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB # David Faure <faure@kde.org>
E0A3EB202F8E57528E13E72FD7574483BB57B18D) # Jonathan Esk-Riddell <jr@jriddell.org>
options=(!buildflags staticlibs !strip !emptydirs)
build() {
source android-env ${_android_arch}
android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgname-$pkgver \
-DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \
-DECM_DIR:PATH=/usr/share/ECM/cmake \
-DBUILD_EXAMPLES=OFF \
-DBUILD_TESTING=OFF \
-DBUILD_QCH=OFF
VERBOSE=1 cmake --build build-$_android_arch
}
package() {
source android-env ${_android_arch}
DESTDIR="$pkgdir" VERBOSE=1 cmake --install build-$_android_arch
}

View File

@ -0,0 +1,44 @@
# Maintainer: Martchus <martchus@gmx.net>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository.
_pkgname=ki18n
_android_arch=aarch64
pkgname=android-${_android_arch}-${_pkgname}
pkgver=6.0.0
pkgrel=1
pkgdesc="Advanced internationalization framework (Android, $_android_arch)"
arch=('any')
url='https://community.kde.org/Frameworks'
license=(LGPL-2.0-only LGPL-3.0-only)
depends=('iso-codes' "android-$_android_arch"-{qt6-base,qt6-declarative,qt6-tools,gettext})
makedepends=('cmake' 'android-ndk' 'android-sdk' 'android-cmake' 'extra-cmake-modules' 'ninja' 'qt6-base' 'qt6-declarative' 'qt6-tools')
source=(https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz{,.sig})
sha256sums=('15cbfb73ef1d3954d6206755b6e6a9c86ea27be4b4db0c843d38494851bcc354'
'SKIP')
validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB # David Faure <faure@kde.org>
E0A3EB202F8E57528E13E72FD7574483BB57B18D) # Jonathan Esk-Riddell <jr@jriddell.org>
options=(!buildflags staticlibs !strip !emptydirs)
prepare() {
cd $_pkgname-$pkgver
sed -i -e '/loadMessageCatalogFile/d' src/i18n/kcatalog.cpp
}
build() {
source android-env ${_android_arch}
android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgname-$pkgver \
-DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \
-DECM_DIR:PATH=/usr/share/ECM/cmake \
-DBUILD_EXAMPLES=OFF \
-DBUILD_TESTING=OFF \
-DBUILD_QCH=OFF
VERBOSE=1 cmake --build build-$_android_arch
}
package() {
source android-env ${_android_arch}
DESTDIR="$pkgdir" VERBOSE=1 cmake --install build-$_android_arch
}

View File

@ -1,38 +1,30 @@
# Maintainer: Martchus <martchus@gmx.net> # Maintainer: Martchus <martchus@gmx.net>
# Contributor (maintains regular package): Antonio Rojas <arojas@archlinux.org>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository. # you also find the URL of a binary repository.
_pkgname=kirigami2 _pkgname=kirigami
_android_arch=aarch64 _android_arch=aarch64
pkgname=android-$_android_arch-$_pkgname pkgname=android-${_android_arch}-${_pkgname}2
pkgver=5.240.0.20231004 pkgver=6.0.0
pkgrel=1 pkgrel=2
pkgdesc="A QtQuick based components set (Android, $_android_arch)" pkgdesc="A QtQuick based components set (Android, $_android_arch)"
arch=('any') arch=('any')
url='https://community.kde.org/Frameworks' url='https://community.kde.org/Frameworks'
license=(LGPL) license=(LGPL-2.0-only LGPL-3.0-only)
depends=("android-$_android_arch-qt6"-{declarative,shadertools,svg,5compat}) depends=("android-$_android_arch-qt6"-{declarative,shadertools,svg,5compat})
makedepends=('cmake' 'android-ndk' 'android-sdk' 'android-cmake' 'extra-cmake-modules-git' 'ninja' 'git' 'qt6-base' 'qt6-declarative' 'qt6-tools' 'qt6-shadertools') makedepends=('cmake' 'android-ndk' 'android-sdk' 'android-cmake' 'extra-cmake-modules' 'ninja' 'qt6-base' 'qt6-declarative' 'qt6-tools' 'qt6-shadertools')
#source=("https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz"{,.sig}) source=(https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz{,.sig})
#sha256sums=('9706915f219ef9394b030dbb24974d4fddef091008954cf75cf97cc97586e35f' sha256sums=('3f7c1e6b048df4ab3d67fbef01a5ad1dd0289c9b158644668fba0225c050c050'
# 'SKIP') 'SKIP')
_commit=41bdddb37ea96ea19109c2aa9e7158cb57986386 validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB # David Faure <faure@kde.org>
source=(git+https://invent.kde.org/frameworks/kirigami.git#commit=$_commit) E0A3EB202F8E57528E13E72FD7574483BB57B18D) # Jonathan Esk-Riddell <jr@jriddell.org>
sha256sums=(SKIP)
validpgpkeys=('53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB') # David Faure <faure@kde.org>
options=(!buildflags staticlibs !strip !emptydirs) options=(!buildflags staticlibs !strip !emptydirs)
#pkgver() {
# cd kirigami
# echo "$pkgver.r$(git rev-list --count HEAD).$(git rev-parse --short HEAD)"
#}
build() { build() {
source android-env ${_android_arch} source android-env ${_android_arch}
android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S kirigami \ android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgname-$pkgver \
-DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \ -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \
-DECM_DIR:PATH=/usr/share/ECM/cmake \ -DECM_DIR:PATH=/usr/share/ECM/cmake \
-DBUILD_EXAMPLES=OFF \ -DBUILD_EXAMPLES=OFF \
@ -44,4 +36,6 @@ build() {
package() { package() {
source android-env ${_android_arch} source android-env ${_android_arch}
DESTDIR="$pkgdir" VERBOSE=1 cmake --install build-$_android_arch DESTDIR="$pkgdir" VERBOSE=1 cmake --install build-$_android_arch
mkdir -p "$pkgdir/$ANDROID_PREFIX/qml/org"
ln -rs "$pkgdir/$ANDROID_PREFIX/lib/qml/org/kde" "$pkgdir/$ANDROID_PREFIX/qml/org/kde"
} }

View File

@ -1,62 +1,41 @@
# Maintainer: Martchus <martchus@gmx.net> # Maintainer: Martchus <martchus@gmx.net>
# Contributor (maintains regular package): Antonio Rojas <arojas@archlinux.org>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository. # you also find the URL of a binary repository.
_pkgname=kirigami2 _pkgname=kirigami
_android_arch=armeabi-v7a _android_arch=armv7a-eabi
_pkg_arch=armv7a-eabi
_android_toolchain=arm-linux-androideabi
_android_platform=24
_prefix=/opt/android-libs/$_pkg_arch
pkgname=android-$_pkg_arch-$_pkgname pkgname=android-${_android_arch}-${_pkgname}2
pkgver=5.74.0 pkgver=6.0.0
pkgrel=1 pkgrel=2
pkgdesc="A QtQuick based components set (Android, $_pkg_arch)" pkgdesc="A QtQuick based components set (Android, $_android_arch)"
arch=('any') arch=('any')
url='https://community.kde.org/Frameworks' url='https://community.kde.org/Frameworks'
license=(LGPL) license=(LGPL-2.0-only LGPL-3.0-only)
depends=("android-$_pkg_arch-qt5") depends=("android-$_android_arch-qt6"-{declarative,shadertools,svg,5compat})
makedepends=('cmake' 'android-ndk' 'android-sdk' 'extra-cmake-modules') makedepends=('cmake' 'android-ndk' 'android-sdk' 'android-cmake' 'extra-cmake-modules' 'ninja' 'qt6-base' 'qt6-declarative' 'qt6-tools' 'qt6-shadertools')
conflicts=("android-$_pkgname-$_android_arch") source=(https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz{,.sig})
replaces=("android-$_pkgname-$_android_arch") sha256sums=('3f7c1e6b048df4ab3d67fbef01a5ad1dd0289c9b158644668fba0225c050c050'
source=("https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz"{,.sig})
sha256sums=('9706915f219ef9394b030dbb24974d4fddef091008954cf75cf97cc97586e35f'
'SKIP') 'SKIP')
validpgpkeys=('53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB') # David Faure <faure@kde.org> validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB # David Faure <faure@kde.org>
E0A3EB202F8E57528E13E72FD7574483BB57B18D) # Jonathan Esk-Riddell <jr@jriddell.org>
options=(!buildflags staticlibs !strip !emptydirs) options=(!buildflags staticlibs !strip !emptydirs)
prepare() {
mkdir -p build
}
build() { build() {
cd build source android-env ${_android_arch}
android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgname-$pkgver \
# note: needs workaround for https://gitlab.kitware.com/cmake/cmake/issues/18739 (currently provided outside of the PKGBUILD itself) -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \
-DECM_DIR:PATH=/usr/share/ECM/cmake \
cmake ../$_pkgname-$pkgver \
-DCMAKE_SYSTEM_NAME=Android \
-DCMAKE_SYSTEM_VERSION=$_android_platform \
-DANDROID_ABI=$_android_arch \
-DCMAKE_ANDROID_ARCH_ABI=$_android_arch \
-DCMAKE_ANDROID_NDK=/opt/android-ndk \
-DCMAKE_ANDROID_SDK=/opt/android-sdk \
-DCMAKE_ANDROID_STL_TYPE=c++_shared \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX="$_prefix" \
-DCMAKE_EXE_LINKER_FLAGS="-Wl,-rpath-link,$_prefix/lib" \
-DCMAKE_FIND_ROOT_PATH="/opt/android-ndk/sysroot;$_prefix" \
-DECM_DIR=/usr/share/ECM/cmake \
-DBUILD_EXAMPLES=OFF \ -DBUILD_EXAMPLES=OFF \
-DBUILD_TESTING=OFF \ -DBUILD_TESTING=OFF \
-DBUILD_QCH=OFF -DBUILD_QCH=OFF
make VERBOSE=1 VERBOSE=1 cmake --build build-$_android_arch
} }
package() { package() {
cd build source android-env ${_android_arch}
make DESTDIR="$pkgdir" install DESTDIR="$pkgdir" VERBOSE=1 cmake --install build-$_android_arch
mkdir -p "$pkgdir/$ANDROID_PREFIX/qml/org"
ln -rs "$pkgdir/$ANDROID_PREFIX/lib/qml/org/kde" "$pkgdir/$ANDROID_PREFIX/qml/org/kde"
} }

View File

@ -1,62 +1,41 @@
# Maintainer: Martchus <martchus@gmx.net> # Maintainer: Martchus <martchus@gmx.net>
# Contributor (maintains regular package): Antonio Rojas <arojas@archlinux.org>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository. # you also find the URL of a binary repository.
_pkgname=kirigami2 _pkgname=kirigami
_android_arch=x86_64 _android_arch=x86_64
_pkg_arch=x86-64
_android_toolchain=$_pkg_arch-linux-android
_android_platform=24
_prefix=/opt/android-libs/$_pkg_arch
pkgname=android-$_pkg_arch-$_pkgname pkgname=android-${_android_arch}-${_pkgname}2
pkgver=5.74.0 pkgver=6.0.0
pkgrel=1 pkgrel=2
pkgdesc="A QtQuick based components set (Android, $_pkg_arch)" pkgdesc="A QtQuick based components set (Android, $_android_arch)"
arch=('any') arch=('any')
url='https://community.kde.org/Frameworks' url='https://community.kde.org/Frameworks'
license=(LGPL) license=(LGPL-2.0-only LGPL-3.0-only)
depends=("android-$_pkg_arch-qt5") depends=("android-$_android_arch-qt6"-{declarative,shadertools,svg,5compat})
makedepends=('cmake' 'android-ndk' 'android-sdk' 'extra-cmake-modules') makedepends=('cmake' 'android-ndk' 'android-sdk' 'android-cmake' 'extra-cmake-modules' 'ninja' 'qt6-base' 'qt6-declarative' 'qt6-tools' 'qt6-shadertools')
conflicts=("android-$_pkgname-$_android_arch") source=(https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz{,.sig})
replaces=("android-$_pkgname-$_android_arch") sha256sums=('3f7c1e6b048df4ab3d67fbef01a5ad1dd0289c9b158644668fba0225c050c050'
source=("https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz"{,.sig})
sha256sums=('9706915f219ef9394b030dbb24974d4fddef091008954cf75cf97cc97586e35f'
'SKIP') 'SKIP')
validpgpkeys=('53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB') # David Faure <faure@kde.org> validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB # David Faure <faure@kde.org>
E0A3EB202F8E57528E13E72FD7574483BB57B18D) # Jonathan Esk-Riddell <jr@jriddell.org>
options=(!buildflags staticlibs !strip !emptydirs) options=(!buildflags staticlibs !strip !emptydirs)
prepare() {
mkdir -p build
}
build() { build() {
cd build source android-env ${_android_arch}
android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgname-$pkgver \
# note: needs workaround for https://gitlab.kitware.com/cmake/cmake/issues/18739 (currently provided outside of the PKGBUILD itself) -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \
-DECM_DIR:PATH=/usr/share/ECM/cmake \
cmake ../$_pkgname-$pkgver \
-DCMAKE_SYSTEM_NAME=Android \
-DCMAKE_SYSTEM_VERSION=$_android_platform \
-DANDROID_ABI=$_android_arch \
-DCMAKE_ANDROID_ARCH_ABI=$_android_arch \
-DCMAKE_ANDROID_NDK=/opt/android-ndk \
-DCMAKE_ANDROID_SDK=/opt/android-sdk \
-DCMAKE_ANDROID_STL_TYPE=c++_shared \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX="$_prefix" \
-DCMAKE_EXE_LINKER_FLAGS="-Wl,-rpath-link,$_prefix/lib" \
-DCMAKE_FIND_ROOT_PATH="/opt/android-ndk/sysroot;$_prefix" \
-DECM_DIR=/usr/share/ECM/cmake \
-DBUILD_EXAMPLES=OFF \ -DBUILD_EXAMPLES=OFF \
-DBUILD_TESTING=OFF \ -DBUILD_TESTING=OFF \
-DBUILD_QCH=OFF -DBUILD_QCH=OFF
make VERBOSE=1 VERBOSE=1 cmake --build build-$_android_arch
} }
package() { package() {
cd build source android-env ${_android_arch}
make DESTDIR="$pkgdir" install DESTDIR="$pkgdir" VERBOSE=1 cmake --install build-$_android_arch
mkdir -p "$pkgdir/$ANDROID_PREFIX/qml/org"
ln -rs "$pkgdir/$ANDROID_PREFIX/lib/qml/org/kde" "$pkgdir/$ANDROID_PREFIX/qml/org/kde"
} }

View File

@ -1,62 +1,41 @@
# Maintainer: Martchus <martchus@gmx.net> # Maintainer: Martchus <martchus@gmx.net>
# Contributor (maintains regular package): Antonio Rojas <arojas@archlinux.org>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository. # you also find the URL of a binary repository.
_pkgname=kirigami2 _pkgname=kirigami
_android_arch=x86 _android_arch=x86
_pkg_arch=x86
_android_toolchain=$_pkg_arch-linux-android
_android_platform=24
_prefix=/opt/android-libs/$_pkg_arch
pkgname=android-$_pkg_arch-$_pkgname pkgname=android-${_android_arch}-${_pkgname}2
pkgver=5.74.0 pkgver=6.0.0
pkgrel=1 pkgrel=2
pkgdesc="A QtQuick based components set (Android, $_pkg_arch)" pkgdesc="A QtQuick based components set (Android, $_android_arch)"
arch=('any') arch=('any')
url='https://community.kde.org/Frameworks' url='https://community.kde.org/Frameworks'
license=(LGPL) license=(LGPL-2.0-only LGPL-3.0-only)
depends=("android-$_pkg_arch-qt5") depends=("android-$_android_arch-qt6"-{declarative,shadertools,svg,5compat})
makedepends=('cmake' 'android-ndk' 'android-sdk' 'extra-cmake-modules') makedepends=('cmake' 'android-ndk' 'android-sdk' 'android-cmake' 'extra-cmake-modules' 'ninja' 'qt6-base' 'qt6-declarative' 'qt6-tools' 'qt6-shadertools')
conflicts=("android-$_pkgname-$_android_arch") source=(https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz{,.sig})
replaces=("android-$_pkgname-$_android_arch") sha256sums=('3f7c1e6b048df4ab3d67fbef01a5ad1dd0289c9b158644668fba0225c050c050'
source=("https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz"{,.sig})
sha256sums=('9706915f219ef9394b030dbb24974d4fddef091008954cf75cf97cc97586e35f'
'SKIP') 'SKIP')
validpgpkeys=('53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB') # David Faure <faure@kde.org> validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB # David Faure <faure@kde.org>
E0A3EB202F8E57528E13E72FD7574483BB57B18D) # Jonathan Esk-Riddell <jr@jriddell.org>
options=(!buildflags staticlibs !strip !emptydirs) options=(!buildflags staticlibs !strip !emptydirs)
prepare() {
mkdir -p build
}
build() { build() {
cd build source android-env ${_android_arch}
android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgname-$pkgver \
# note: needs workaround for https://gitlab.kitware.com/cmake/cmake/issues/18739 (currently provided outside of the PKGBUILD itself) -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \
-DECM_DIR:PATH=/usr/share/ECM/cmake \
cmake ../$_pkgname-$pkgver \
-DCMAKE_SYSTEM_NAME=Android \
-DCMAKE_SYSTEM_VERSION=$_android_platform \
-DANDROID_ABI=$_android_arch \
-DCMAKE_ANDROID_ARCH_ABI=$_android_arch \
-DCMAKE_ANDROID_NDK=/opt/android-ndk \
-DCMAKE_ANDROID_SDK=/opt/android-sdk \
-DCMAKE_ANDROID_STL_TYPE=c++_shared \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX="$_prefix" \
-DCMAKE_EXE_LINKER_FLAGS="-Wl,-rpath-link,$_prefix/lib" \
-DCMAKE_FIND_ROOT_PATH="/opt/android-ndk/sysroot;$_prefix" \
-DECM_DIR=/usr/share/ECM/cmake \
-DBUILD_EXAMPLES=OFF \ -DBUILD_EXAMPLES=OFF \
-DBUILD_TESTING=OFF \ -DBUILD_TESTING=OFF \
-DBUILD_QCH=OFF -DBUILD_QCH=OFF
make VERBOSE=1 VERBOSE=1 cmake --build build-$_android_arch
} }
package() { package() {
cd build source android-env ${_android_arch}
make DESTDIR="$pkgdir" install DESTDIR="$pkgdir" VERBOSE=1 cmake --install build-$_android_arch
mkdir -p "$pkgdir/$ANDROID_PREFIX/qml/org"
ln -rs "$pkgdir/$ANDROID_PREFIX/lib/qml/org/kde" "$pkgdir/$ANDROID_PREFIX/qml/org/kde"
} }

View File

@ -4,9 +4,9 @@
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where # All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository. # you also find the URL of a binary repository.
_pkgname=kirigami2 _pkgname=kirigami
pkgname=mingw-w64-$_pkgname pkgname=mingw-w64-${_pkgname}2
pkgver=5.94.0 pkgver=6.0.0
pkgrel=1 pkgrel=1
pkgdesc="A QtQuick based components set (mingw-w64)" pkgdesc="A QtQuick based components set (mingw-w64)"
arch=('any') arch=('any')
@ -14,10 +14,14 @@ url='https://community.kde.org/Frameworks'
license=(LGPL) license=(LGPL)
depends=(mingw-w64-crt mingw-w64-qt5-quickcontrols mingw-w64-qt5-quickcontrols2 mingw-w64-qt5-graphicaleffects) depends=(mingw-w64-crt mingw-w64-qt5-quickcontrols mingw-w64-qt5-quickcontrols2 mingw-w64-qt5-graphicaleffects)
makedepends=(mingw-w64-gcc mingw-w64-cmake mingw-w64-extra-cmake-modules mingw-w64-qt5-tools mingw-w64-qt5-svg kpackage) makedepends=(mingw-w64-gcc mingw-w64-cmake mingw-w64-extra-cmake-modules mingw-w64-qt5-tools mingw-w64-qt5-svg kpackage)
source=("https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz"{,.sig}) source=(https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz{,.sig})
sha256sums=('d7f27da3325feb339f4e1a3db78df44f05e4f505f36e15c7caeac04da0428e39' sha256sums=('ed0f56c89249fb92a9af99a94fd13542abbae4a8f1613aaaa2bfab87914b601a'
'SKIP') 'SKIP')
validpgpkeys=('53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB') # David Faure <faure@kde.org> validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB # David Faure <faure@kde.org>
E0A3EB202F8E57528E13E72FD7574483BB57B18D) # Jonathan Esk-Riddell <jr@jriddell.org>
#_commit=05626819a0ed2f5b3db65191803b237992cbf17d
#source=(git+https://invent.kde.org/frameworks/kirigami.git#commit=$_commit)
#sha256sums=(SKIP)
options=(!buildflags staticlibs !strip !emptydirs) options=(!buildflags staticlibs !strip !emptydirs)
_architectures='i686-w64-mingw32 x86_64-w64-mingw32' _architectures='i686-w64-mingw32 x86_64-w64-mingw32'

View File

@ -0,0 +1,39 @@
# Maintainer: Martchus <martchus@gmx.net>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository.
_pkgname=kquickcharts
_android_arch=aarch64
pkgname=android-${_android_arch}-${_pkgname}
pkgver=6.0.0
pkgrel=1
pkgdesc="A QtQuick plugin providing high-performance charts (Android, $_android_arch)"
arch=('any')
url='https://community.kde.org/Frameworks'
license=(LGPL-2.0-only LGPL-3.0-only)
depends=("android-$_android_arch"-{qt6-base,qt6-declarative,qt6-tools,kirigami2})
makedepends=('cmake' 'android-ndk' 'android-sdk' 'android-cmake' 'extra-cmake-modules' 'ninja' 'qt6-base' 'qt6-declarative' 'qt6-tools')
source=(https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz{,.sig})
sha256sums=('ebd9a8f501b80e72a12f50d984847a698f7283be389644f7e24133484076a6a5'
'SKIP')
validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB # David Faure <faure@kde.org>
E0A3EB202F8E57528E13E72FD7574483BB57B18D) # Jonathan Esk-Riddell <jr@jriddell.org>
options=(!buildflags staticlibs !strip !emptydirs)
build() {
source android-env ${_android_arch}
android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgname-$pkgver \
-DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \
-DECM_DIR:PATH=/usr/share/ECM/cmake \
-DBUILD_EXAMPLES=OFF \
-DBUILD_TESTING=OFF \
-DBUILD_QCH=OFF
VERBOSE=1 cmake --build build-$_android_arch
}
package() {
source android-env ${_android_arch}
DESTDIR="$pkgdir" VERBOSE=1 cmake --install build-$_android_arch
}

View File

@ -4,7 +4,7 @@
_android_arch=aarch64 _android_arch=aarch64
pkgname=android-${_android_arch}-libpng pkgname=android-${_android_arch}-libpng
pkgver=1.6.40 pkgver=1.6.42
pkgrel=1 pkgrel=1
pkgdesc="A collection of routines used to create PNG format graphics (android)" pkgdesc="A collection of routines used to create PNG format graphics (android)"
arch=('any') arch=('any')
@ -14,7 +14,7 @@ depends=("android-${_android_arch}-zlib")
options=(!strip !buildflags staticlibs !emptydirs) options=(!strip !buildflags staticlibs !emptydirs)
makedepends=('android-configure') makedepends=('android-configure')
source=("http://downloads.sourceforge.net/sourceforge/libpng/libpng-$pkgver.tar.xz") source=("http://downloads.sourceforge.net/sourceforge/libpng/libpng-$pkgver.tar.xz")
sha256sums=('535b479b2467ff231a3ec6d92a525906fb8ef27978be4f66dbe05d3f3a01b3a1') sha256sums=('c919dbc11f4c03b05aba3f8884d8eb7adfe3572ad228af972bb60057bdb48450')
build() { build() {
cd "$srcdir/libpng-$pkgver" cd "$srcdir/libpng-$pkgver"

View File

@ -0,0 +1,40 @@
# Maintainer: Gonzalo Exequiel Pedone <hipersayan DOT x AT gmail DOT com>
# Contributor: Daniel Kirchner <daniel AT ekpyron DOT org>
_android_arch=armv7a-eabi
pkgname=android-${_android_arch}-libpng
pkgver=1.6.42
pkgrel=2
pkgdesc="A collection of routines used to create PNG format graphics (android)"
arch=('any')
url="http://www.libpng.org/pub/png/libpng.html"
license=('custom')
depends=("android-${_android_arch}-zlib")
options=(!strip !buildflags staticlibs !emptydirs)
makedepends=('android-configure')
source=("http://downloads.sourceforge.net/sourceforge/libpng/libpng-$pkgver.tar.xz")
sha256sums=('c919dbc11f4c03b05aba3f8884d8eb7adfe3572ad228af972bb60057bdb48450')
build() {
cd "$srcdir/libpng-$pkgver"
source android-env ${_android_arch}
android-${_android_arch}-configure \
--enable-unversioned-links \
--enable-unversioned-libpng-pc\
--enable-unversioned-libpng-config \
--enable-hardware-optimizations
make $MAKEFLAGS
}
package () {
cd "${srcdir}/libpng-${pkgver}"
source android-env ${_android_arch}
make DESTDIR="$pkgdir" install
rm -r "${pkgdir}"/${ANDROID_PREFIX_SHARE}
${ANDROID_STRIP} -g --strip-unneeded "${pkgdir}"/${ANDROID_PREFIX_LIB}/*.so
${ANDROID_STRIP} -g "$pkgdir"/${ANDROID_PREFIX_LIB}/*.a
}

View File

@ -5,7 +5,7 @@
_pkgname=libpng _pkgname=libpng
pkgname=static-compat-$_pkgname pkgname=static-compat-$_pkgname
pkgver=1.6.40 pkgver=1.6.42
pkgrel=1 pkgrel=1
pkgdesc='A collection of routines used to create PNG format graphics files' pkgdesc='A collection of routines used to create PNG format graphics files'
arch=('x86_64') arch=('x86_64')
@ -16,7 +16,7 @@ makedepends=('static-compat-configure')
options=(!emptydirs staticlibs) options=(!emptydirs staticlibs)
validpgpkeys=('8048643BA2C840F4F92A195FF54984BFA16C640F') # Glenn Randers-Pehrson (mozilla) <glennrp@gmail.com> validpgpkeys=('8048643BA2C840F4F92A195FF54984BFA16C640F') # Glenn Randers-Pehrson (mozilla) <glennrp@gmail.com>
source=("https://downloads.sourceforge.net/sourceforge/$_pkgname/$_pkgname-$pkgver.tar.xz") source=("https://downloads.sourceforge.net/sourceforge/$_pkgname/$_pkgname-$pkgver.tar.xz")
sha256sums=('535b479b2467ff231a3ec6d92a525906fb8ef27978be4f66dbe05d3f3a01b3a1') sha256sums=('c919dbc11f4c03b05aba3f8884d8eb7adfe3572ad228af972bb60057bdb48450')
build() { build() {
source static-compat-environment source static-compat-environment

View File

@ -3,9 +3,9 @@
pkgname=nginx-mod-accesskey pkgname=nginx-mod-accesskey
pkgver=2.0.5 pkgver=2.0.5
pkgrel=12 pkgrel=13
_dirname="nginx-accesskey-$pkgver" _dirname="nginx-accesskey-$pkgver"
_nginxver=1.24.0 _nginxver=1.26.0
pkgdesc='Accesskey module for NGINX' pkgdesc='Accesskey module for NGINX'
arch=('x86_64') arch=('x86_64')

View File

@ -3,9 +3,9 @@
pkgname=nginx-mod-cache-purge pkgname=nginx-mod-cache-purge
pkgver=2.3 pkgver=2.3
pkgrel=12 pkgrel=13
_dirname="ngx_cache_purge-${pkgver}" _dirname="ngx_cache_purge-${pkgver}"
_nginxver=1.24.0 _nginxver=1.26.0
pkgdesc='NGINX module that adds ability to purge content from FastCGI, proxy, SCGI and uWSGI caches' pkgdesc='NGINX module that adds ability to purge content from FastCGI, proxy, SCGI and uWSGI caches'
arch=('x86_64') arch=('x86_64')

View File

@ -3,9 +3,9 @@
pkgname=nginx-mod-dav-ext pkgname=nginx-mod-dav-ext
pkgver=3.0.0 pkgver=3.0.0
pkgrel=10 pkgrel=11
_dirname="nginx-dav-ext-module-$pkgver" _dirname="nginx-dav-ext-module-$pkgver"
_nginxver=1.24.0 _nginxver=1.26.0
pkgdesc='NGINX WebDAV missing commands support' pkgdesc='NGINX WebDAV missing commands support'
arch=('x86_64') arch=('x86_64')

View File

@ -3,9 +3,9 @@
pkgname=nginx-mod-fancyindex pkgname=nginx-mod-fancyindex
pkgver=0.5.2 pkgver=0.5.2
pkgrel=5 pkgrel=6
_dirname="ngx-fancyindex-${pkgver}" _dirname="ngx-fancyindex-${pkgver}"
_nginxver=1.24.0 _nginxver=1.26.0
pkgdesc='Fancy indexes module for the Nginx web server' pkgdesc='Fancy indexes module for the Nginx web server'
arch=('x86_64') arch=('x86_64')

View File

@ -5,9 +5,9 @@
pkgname=nginx-mod-rtmp pkgname=nginx-mod-rtmp
pkgver=1.2.2 pkgver=1.2.2
pkgrel=5 pkgrel=6
_dirname="nginx-rtmp-module-$pkgver" _dirname="nginx-rtmp-module-$pkgver"
_nginxver=1.24.0 _nginxver=1.26.0
pkgdesc='Module for nginx that adds RTMP support' pkgdesc='Module for nginx that adds RTMP support'
arch=('x86_64') arch=('x86_64')

View File

@ -3,9 +3,9 @@
pkgname=nginx-mod-slowfs-cache pkgname=nginx-mod-slowfs-cache
pkgver=1.10 pkgver=1.10
pkgrel=12 pkgrel=13
_dirname="ngx_slowfs_cache-${pkgver}" _dirname="ngx_slowfs_cache-${pkgver}"
_nginxver=1.24.0 _nginxver=1.26.0
pkgdesc='NGINX module that adds ability to cache static files' pkgdesc='NGINX module that adds ability to cache static files'
arch=('x86_64') arch=('x86_64')

View File

@ -5,7 +5,7 @@ pkgname=nginx-mod-substitutions-filter
pkgver=0.6.4.115.e12e965 pkgver=0.6.4.115.e12e965
pkgrel=2 pkgrel=2
_dirname="$pkgname" _dirname="$pkgname"
_nginxver=1.24.0 # FIXME: fix build against NGINX 1.20.0 _nginxver=1.26.0 # FIXME: fix build against NGINX 1.20.0
pkgdesc='NGINX filter module which can do both regular expression and fixed string substitutions' pkgdesc='NGINX filter module which can do both regular expression and fixed string substitutions'
arch=('x86_64') arch=('x86_64')

View File

@ -5,7 +5,7 @@ pkgname=nginx-mod-upload-progress
pkgver=0.9.2 pkgver=0.9.2
pkgrel=12 pkgrel=12
_dirname="nginx-upload-progress-module-$pkgver" _dirname="nginx-upload-progress-module-$pkgver"
_nginxver=1.24.0 # FIXME: fix build against NGINX 1.24.0 _nginxver=1.26.0 # FIXME: fix build against NGINX 1.24.0
pkgdesc='NGINX module implementing an upload progress system, that monitors RFC1867 POST uploads' pkgdesc='NGINX module implementing an upload progress system, that monitors RFC1867 POST uploads'
arch=('x86_64') arch=('x86_64')

View File

@ -5,7 +5,7 @@ pkgname=nginx-mod-upstream-fair
pkgver=0.1.3 pkgver=0.1.3
pkgrel=11 pkgrel=11
_dirname="nginx-upstream-fair-$pkgver" _dirname="nginx-upstream-fair-$pkgver"
_nginxver=1.24.0 # FIXME: fix build against NGINX 1.20.0 _nginxver=1.26.0 # FIXME: fix build against NGINX 1.20.0
pkgdesc='Fair load balancer module for nginx' pkgdesc='Fair load balancer module for nginx'
arch=('x86_64') arch=('x86_64')

View File

@ -5,7 +5,7 @@ _pkg_arch=aarch64
_android_arch=arm64-v8a _android_arch=arm64-v8a
_android_platform_arch=arch-arm64 _android_platform_arch=arch-arm64
_pkgname=openssl _pkgname=openssl
_pkgver=3.2.0 _pkgver=3.3.0
pkgname=android-$_pkg_arch-$_pkgname pkgname=android-$_pkg_arch-$_pkgname
# use a pacman compatible version scheme # use a pacman compatible version scheme
@ -14,14 +14,14 @@ pkgrel=1
pkgdesc="The Open Source toolkit for Secure Sockets Layer and Transport Layer Security (Android, $_pkg_arch)" pkgdesc="The Open Source toolkit for Secure Sockets Layer and Transport Layer Security (Android, $_pkg_arch)"
arch=('any') arch=('any')
url='https://www.openssl.org' url='https://www.openssl.org'
license=('Apache') license=('Apache-2.0')
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
depends=('android-sdk' 'android-ndk') depends=('android-sdk' 'android-ndk')
makedepends=('android-environment' 'android-sdk-build-tools') makedepends=('android-environment' 'android-sdk-build-tools')
conflicts=("android-$_pkgname-$_android_arch") conflicts=("android-$_pkgname-$_android_arch")
replaces=("android-$_pkgname-$_android_arch") replaces=("android-$_pkgname-$_android_arch")
source=("https://www.openssl.org/source/openssl-${_pkgver}.tar.gz"{,.asc}) source=("https://www.openssl.org/source/openssl-${_pkgver}.tar.gz"{,.asc})
sha256sums=('14c826f07c7e433706fb5c69fa9e25dab95684844b4c962a2cf1bf183eb4690e' sha256sums=('53e66b043322a606abf0087e7699a0e033a37fa13feb9742df35c3a33b18fb02'
'SKIP') 'SKIP')
validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491' validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491'
'7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C' '7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C'

View File

@ -5,7 +5,7 @@ _pkg_arch=armv7a-eabi
_android_arch=armeabi-v7a _android_arch=armeabi-v7a
_android_platform_arch=arch-arm _android_platform_arch=arch-arm
_pkgname=openssl _pkgname=openssl
_pkgver=3.2.0 _pkgver=3.3.0
pkgname=android-$_pkg_arch-$_pkgname pkgname=android-$_pkg_arch-$_pkgname
# use a pacman compatible version scheme # use a pacman compatible version scheme
@ -14,14 +14,14 @@ pkgrel=1
pkgdesc="The Open Source toolkit for Secure Sockets Layer and Transport Layer Security (Android, $_pkg_arch)" pkgdesc="The Open Source toolkit for Secure Sockets Layer and Transport Layer Security (Android, $_pkg_arch)"
arch=('any') arch=('any')
url='https://www.openssl.org' url='https://www.openssl.org'
license=('Apache') license=('Apache-2.0')
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
depends=('android-sdk' 'android-ndk') depends=('android-sdk' 'android-ndk')
makedepends=('android-environment' 'android-sdk-build-tools') makedepends=('android-environment' 'android-sdk-build-tools')
conflicts=("android-$_pkgname-$_android_arch") conflicts=("android-$_pkgname-$_android_arch")
replaces=("android-$_pkgname-$_android_arch") replaces=("android-$_pkgname-$_android_arch")
source=("https://www.openssl.org/source/openssl-${_pkgver}.tar.gz"{,.asc}) source=("https://www.openssl.org/source/openssl-${_pkgver}.tar.gz"{,.asc})
sha256sums=('14c826f07c7e433706fb5c69fa9e25dab95684844b4c962a2cf1bf183eb4690e' sha256sums=('53e66b043322a606abf0087e7699a0e033a37fa13feb9742df35c3a33b18fb02'
'SKIP') 'SKIP')
validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491' validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491'
'7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C' '7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C'

View File

@ -5,7 +5,7 @@ _pkg_arch=x86-64
_android_arch=x86_64 _android_arch=x86_64
_android_platform_arch=arch-x86_64 _android_platform_arch=arch-x86_64
_pkgname=openssl _pkgname=openssl
_pkgver=3.2.0 _pkgver=3.3.0
pkgname=android-$_pkg_arch-$_pkgname pkgname=android-$_pkg_arch-$_pkgname
# use a pacman compatible version scheme # use a pacman compatible version scheme
@ -14,14 +14,14 @@ pkgrel=1
pkgdesc="The Open Source toolkit for Secure Sockets Layer and Transport Layer Security (Android, $_pkg_arch)" pkgdesc="The Open Source toolkit for Secure Sockets Layer and Transport Layer Security (Android, $_pkg_arch)"
arch=('any') arch=('any')
url='https://www.openssl.org' url='https://www.openssl.org'
license=('Apache') license=('Apache-2.0')
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
depends=('android-sdk' 'android-ndk') depends=('android-sdk' 'android-ndk')
makedepends=('android-environment' 'android-sdk-build-tools') makedepends=('android-environment' 'android-sdk-build-tools')
conflicts=("android-$_pkgname-$_android_arch") conflicts=("android-$_pkgname-$_android_arch")
replaces=("android-$_pkgname-$_android_arch") replaces=("android-$_pkgname-$_android_arch")
source=("https://www.openssl.org/source/openssl-${_pkgver}.tar.gz"{,.asc}) source=("https://www.openssl.org/source/openssl-${_pkgver}.tar.gz"{,.asc})
sha256sums=('14c826f07c7e433706fb5c69fa9e25dab95684844b4c962a2cf1bf183eb4690e' sha256sums=('53e66b043322a606abf0087e7699a0e033a37fa13feb9742df35c3a33b18fb02'
'SKIP') 'SKIP')
validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491' validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491'
'7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C' '7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C'

View File

@ -5,7 +5,7 @@ _pkg_arch=x86
_android_arch=x86 _android_arch=x86
_android_platform_arch=arch-x86 _android_platform_arch=arch-x86
_pkgname=openssl _pkgname=openssl
_pkgver=3.2.0 _pkgver=3.3.0
pkgname=android-$_pkg_arch-$_pkgname pkgname=android-$_pkg_arch-$_pkgname
# use a pacman compatible version scheme # use a pacman compatible version scheme
@ -14,14 +14,14 @@ pkgrel=1
pkgdesc="The Open Source toolkit for Secure Sockets Layer and Transport Layer Security (Android, $_pkg_arch)" pkgdesc="The Open Source toolkit for Secure Sockets Layer and Transport Layer Security (Android, $_pkg_arch)"
arch=('any') arch=('any')
url='https://www.openssl.org' url='https://www.openssl.org'
license=('Apache') license=('Apache-2.0')
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
depends=('android-sdk' 'android-ndk') depends=('android-sdk' 'android-ndk')
makedepends=('android-environment' 'android-sdk-build-tools') makedepends=('android-environment' 'android-sdk-build-tools')
conflicts=("android-$_pkgname-$_android_arch") conflicts=("android-$_pkgname-$_android_arch")
replaces=("android-$_pkgname-$_android_arch") replaces=("android-$_pkgname-$_android_arch")
source=("https://www.openssl.org/source/openssl-${_pkgver}.tar.gz"{,.asc}) source=("https://www.openssl.org/source/openssl-${_pkgver}.tar.gz"{,.asc})
sha256sums=('14c826f07c7e433706fb5c69fa9e25dab95684844b4c962a2cf1bf183eb4690e' sha256sums=('53e66b043322a606abf0087e7699a0e033a37fa13feb9742df35c3a33b18fb02'
'SKIP') 'SKIP')
validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491' validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491'
'7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C' '7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C'

View File

@ -4,7 +4,7 @@
# Contributor: Filip Brcic < brcha at gna dot org > # Contributor: Filip Brcic < brcha at gna dot org >
# Contributor: Martchus < martchus at gmx dot net > # Contributor: Martchus < martchus at gmx dot net >
_pkgver=3.2.0 _pkgver=3.3.0
_architectures="i686-w64-mingw32 x86_64-w64-mingw32" _architectures="i686-w64-mingw32 x86_64-w64-mingw32"
pkgname=mingw-w64-openssl pkgname=mingw-w64-openssl
@ -13,14 +13,14 @@ pkgrel=1
pkgdesc="The Open Source toolkit for Secure Sockets Layer and Transport Layer Security (mingw-w64)" pkgdesc="The Open Source toolkit for Secure Sockets Layer and Transport Layer Security (mingw-w64)"
arch=('any') arch=('any')
url='https://www.openssl.org' url='https://www.openssl.org'
license=('Apache') license=('Apache-2.0')
depends=('mingw-w64-zlib') depends=('mingw-w64-zlib')
makedepends=('mingw-w64-gcc' makedepends=('mingw-w64-gcc'
'mingw-w64-environment' 'mingw-w64-environment'
'perl') 'perl')
options=('!strip' 'staticlibs' '!buildflags' '!lto') options=('!strip' 'staticlibs' '!buildflags' '!lto')
source=("https://www.openssl.org/source/openssl-${_pkgver}.tar.gz"{,.asc}) source=("https://www.openssl.org/source/openssl-${_pkgver}.tar.gz"{,.asc})
sha256sums=('14c826f07c7e433706fb5c69fa9e25dab95684844b4c962a2cf1bf183eb4690e' sha256sums=('53e66b043322a606abf0087e7699a0e033a37fa13feb9742df35c3a33b18fb02'
'SKIP') 'SKIP')
validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491' validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491'
'7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C' '7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C'

View File

@ -2,21 +2,21 @@
_pkgname=openssl _pkgname=openssl
pkgname=static-compat-$_pkgname pkgname=static-compat-$_pkgname
_ver=3.2.0 _ver=3.3.0
# use a pacman compatible version scheme # use a pacman compatible version scheme
pkgver=${_ver/[a-z]/.${_ver//[0-9.]/}} pkgver=${_ver/[a-z]/.${_ver//[0-9.]/}}
pkgrel=1 pkgrel=1
pkgdesc='The Open Source toolkit for Secure Sockets Layer and Transport Layer Security' pkgdesc='The Open Source toolkit for Secure Sockets Layer and Transport Layer Security'
arch=('x86_64') arch=('x86_64')
url='https://www.openssl.org' url='https://www.openssl.org'
license=('Apache') license=('Apache-2.0')
depends=('glibc-static-compat') depends=('glibc-static-compat')
makedepends=('perl' 'static-compat-environment') makedepends=('perl' 'static-compat-environment')
optdepends=('ca-certificates') optdepends=('ca-certificates')
options=(!emptydirs staticlibs) options=(!emptydirs staticlibs)
source=("https://www.openssl.org/source/${_pkgname}-${_ver}.tar.gz"{,.asc} source=("https://www.openssl.org/source/${_pkgname}-${_ver}.tar.gz"{,.asc}
'ca-dir.patch') 'ca-dir.patch')
sha256sums=('14c826f07c7e433706fb5c69fa9e25dab95684844b4c962a2cf1bf183eb4690e' sha256sums=('53e66b043322a606abf0087e7699a0e033a37fa13feb9742df35c3a33b18fb02'
'SKIP' 'SKIP'
'0a32d9ca68e8d985ce0bfef6a4c20b46675e06178cc2d0bf6d91bd6865d648b7') '0a32d9ca68e8d985ce0bfef6a4c20b46675e06178cc2d0bf6d91bd6865d648b7')
validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491' validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491'

View File

@ -5,7 +5,7 @@
_reponame=passwordfile _reponame=passwordfile
pkgname=passwordfile pkgname=passwordfile
pkgver=5.0.10 pkgver=5.0.11
pkgrel=1 pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64') arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
pkgdesc='C++ library to read/write passwords from/to encrypted files using AES-256-CBC via OpenSSL' pkgdesc='C++ library to read/write passwords from/to encrypted files using AES-256-CBC via OpenSSL'
@ -18,7 +18,7 @@ provides=(libpasswordfile.so)
install= install=
url="https://github.com/Martchus/${_reponame}" url="https://github.com/Martchus/${_reponame}"
source=("${pkgname}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz") source=("${pkgname}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('7d4b8095c172ae48e19651ef561aa3b461b4f008fc1c4b378368532f4009a472') sha256sums=('b9a47be7669eb46c7951e928dbbfe17b6d818b8a438e8549da87d692440344da')
build() { build() {
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}" cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"

View File

@ -6,7 +6,7 @@
_name=passwordfile _name=passwordfile
_reponame=passwordfile _reponame=passwordfile
pkgname=$_name-doc pkgname=$_name-doc
pkgver=5.0.10 pkgver=5.0.11
pkgrel=1 pkgrel=1
arch=('any') arch=('any')
pkgdesc='C++ library to read/write passwords from/to encrypted files using AES-256-CBC via OpenSSL (API documentation)' pkgdesc='C++ library to read/write passwords from/to encrypted files using AES-256-CBC via OpenSSL (API documentation)'
@ -14,7 +14,7 @@ license=('GPL')
makedepends=('cmake' 'ninja' 'doxygen' 'graphviz' 'c++utilities') makedepends=('cmake' 'ninja' 'doxygen' 'graphviz' 'c++utilities')
url="https://github.com/Martchus/${_reponame}" url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz") source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('7d4b8095c172ae48e19651ef561aa3b461b4f008fc1c4b378368532f4009a472') sha256sums=('b9a47be7669eb46c7951e928dbbfe17b6d818b8a438e8549da87d692440344da')
build() { build() {
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}" cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"

View File

@ -6,7 +6,7 @@
_reponame=passwordfile _reponame=passwordfile
pkgname=mingw-w64-passwordfile pkgname=mingw-w64-passwordfile
_name=${pkgname#mingw-w64-} _name=${pkgname#mingw-w64-}
pkgver=5.0.10 pkgver=5.0.11
pkgrel=1 pkgrel=1
arch=('any') arch=('any')
pkgdesc='C++ library to read/write passwords from/to encrypted files using AES-256-CBC via OpenSSL (mingw-w64)' pkgdesc='C++ library to read/write passwords from/to encrypted files using AES-256-CBC via OpenSSL (mingw-w64)'
@ -17,7 +17,7 @@ checkdepends=('mingw-w64-cppunit' 'mingw-w64-wine')
makedepends=('mingw-w64-gcc' 'mingw-w64-cmake' 'ninja') makedepends=('mingw-w64-gcc' 'mingw-w64-cmake' 'ninja')
url="https://github.com/Martchus/${_reponame}" url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz") source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('7d4b8095c172ae48e19651ef561aa3b461b4f008fc1c4b378368532f4009a472') sha256sums=('b9a47be7669eb46c7951e928dbbfe17b6d818b8a438e8549da87d692440344da')
options=(!buildflags staticlibs !strip !emptydirs) options=(!buildflags staticlibs !strip !emptydirs)
_architectures=('i686-w64-mingw32' 'x86_64-w64-mingw32') _architectures=('i686-w64-mingw32' 'x86_64-w64-mingw32')

View File

@ -6,7 +6,7 @@
_reponame=passwordfile _reponame=passwordfile
pkgname=static-compat-passwordfile pkgname=static-compat-passwordfile
_name=${pkgname#static-compat-} _name=${pkgname#static-compat-}
pkgver=5.0.10 pkgver=5.0.11
pkgrel=1 pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64') arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
pkgdesc='C++ library to read/write passwords from/to encrypted files using AES-256-CBC via OpenSSL' pkgdesc='C++ library to read/write passwords from/to encrypted files using AES-256-CBC via OpenSSL'
@ -18,7 +18,7 @@ checkdepends=('static-compat-cppunit')
install= install=
url="https://github.com/Martchus/${_reponame}" url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz") source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('7d4b8095c172ae48e19651ef561aa3b461b4f008fc1c4b378368532f4009a472') sha256sums=('b9a47be7669eb46c7951e928dbbfe17b6d818b8a438e8549da87d692440344da')
build() { build() {
check_buildoption ccache y && ccache_args=' check_buildoption ccache y && ccache_args='

View File

@ -4,21 +4,21 @@
# you also find the URL of a binary repository. # you also find the URL of a binary repository.
# set whether the Qt Quick GUI should be enabled: set to either ON or OFF # set whether the Qt Quick GUI should be enabled: set to either ON or OFF
_quick_gui=${PASSWORD_MANAGER_QUICK_GUI:-ON} _quick_gui=${PASSWORD_MANAGER_QUICK_GUI:-OFF}
_reponame=passwordmanager _reponame=passwordmanager
pkgname=passwordmanager pkgname=passwordmanager
pkgver=4.1.13 pkgver=4.2.0
pkgrel=1 pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64') arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
pkgdesc='A simple password store using AES-256-CBC encryption via OpenSSL' pkgdesc='A simple password store using AES-256-CBC encryption via OpenSSL'
license=('GPL') license=('GPL')
depends=('qt5-base' 'libqtutilities.so' 'libpasswordfile.so' 'libc++utilities.so' 'openssl' depends=('qt5-base' 'libqtutilities.so' 'libpasswordfile.so' 'libc++utilities.so' 'openssl'
'libxkbcommon-x11' 'desktop-file-utils' 'xdg-utils') 'desktop-file-utils')
makedepends=('cmake' 'ninja' 'qt5-tools' 'kirigami2') makedepends=('cmake' 'ninja' 'qt5-tools' 'kirigami2')
url="https://github.com/Martchus/${_reponame}" url="https://github.com/Martchus/${_reponame}"
source=("${pkgname}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz") source=("${pkgname}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('68e44195cfbebef3df3404f0f552880e41e43dc16380d50c85052dff1d870e7c') sha256sums=('018dc831794182a66f4820ede7e399cee7633107542451206062bb01500541e0')
# add further dependencies for the Qt Quick GUI (only kirigami2 is "pluggable") # add further dependencies for the Qt Quick GUI (only kirigami2 is "pluggable")
if [[ $_quick_gui == ON ]]; then if [[ $_quick_gui == ON ]]; then

View File

@ -9,27 +9,21 @@ _quick_gui=${PASSWORD_MANAGER_QUICK_GUI:-ON}
_reponame=passwordmanager _reponame=passwordmanager
pkgname=passwordmanager-git pkgname=passwordmanager-git
_name=${pkgname%-git} _name=${pkgname%-git}
pkgver=300.3a01f2d pkgver=350.4bf6a91
pkgrel=2 pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64') arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
pkgdesc='A simple password store using AES-256-CBC encryption via OpenSSL' pkgdesc='A simple password store using AES-256-CBC encryption via OpenSSL'
license=('GPL') license=('GPL')
depends=('qt5-base' 'libqtutilities-git.so' 'libpasswordfile-git.so' 'libc++utilities-git.so' 'openssl' depends=('qt6-base' 'libqtutilities-git.so' 'libpasswordfile-git.so' 'libc++utilities-git.so' 'openssl'
'libxkbcommon-x11' 'desktop-file-utils' 'xdg-utils') 'desktop-file-utils')
makedepends=('cmake' 'ninja' 'qt5-tools' 'git' 'kirigami2') makedepends=('cmake' 'ninja' 'qt6-tools' 'git' 'clang' 'qt6-declarative')
optdepends=('kirigami2: Qt Quick GUI') [[ $_quick_gui == ON ]] && depends+=('qt6-declarative' 'kirigami')
provides=("${_name}") provides=("${_name}")
conflicts=("${_name}") conflicts=("${_name}")
url="https://github.com/Martchus/${_reponame}" url="https://github.com/Martchus/${_reponame}"
source=("${_reponame}::${MARTCHUS_GIT_URL_PREFIX:-git+https://github.com/Martchus}/${_reponame}.git") source=("${_reponame}::${MARTCHUS_GIT_URL_PREFIX:-git+https://github.com/Martchus}/${_reponame}.git")
sha256sums=('SKIP') sha256sums=('SKIP')
# add further dependencies for the Qt Quick GUI (only kirigami2 is "pluggable")
if [[ $_quick_gui == ON ]]; then
depends+=('qt5-quickcontrols2')
optdepends+=('kirigami2: Qt Quick GUI')
fi
pkgver() { pkgver() {
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame}" cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame}"
echo "$(git rev-list --count HEAD).$(git rev-parse --short HEAD)" echo "$(git rev-list --count HEAD).$(git rev-parse --short HEAD)"
@ -43,6 +37,8 @@ build() {
-DCMAKE_INSTALL_PREFIX:PATH='/usr' \ -DCMAKE_INSTALL_PREFIX:PATH='/usr' \
-DCONFIGURATION_NAME:STRING='git' \ -DCONFIGURATION_NAME:STRING='git' \
-DCONFIGURATION_PACKAGE_SUFFIX:STRING='-git' \ -DCONFIGURATION_PACKAGE_SUFFIX:STRING='-git' \
-DQT_PACKAGE_PREFIX:STRING='Qt6' \
-DKF_PACKAGE_PREFIX:STRING='KF6' \
-DQUICK_GUI="$_quick_gui" \ -DQUICK_GUI="$_quick_gui" \
-DBUILTIN_TRANSLATIONS:BOOL=ON \ -DBUILTIN_TRANSLATIONS:BOOL=ON \
-DBUILTIN_TRANSLATIONS_OF_QT:BOOL=OFF \ -DBUILTIN_TRANSLATIONS_OF_QT:BOOL=OFF \

View File

@ -7,8 +7,8 @@ _reponame=passwordmanager
pkgname=mingw-w64-passwordmanager-qt6 pkgname=mingw-w64-passwordmanager-qt6
_name=${pkgname#mingw-w64-} _name=${pkgname#mingw-w64-}
_name=${_name%-qt6} _name=${_name%-qt6}
pkgver=4.1.13 pkgver=4.2.0
pkgrel=1 pkgrel=2
arch=('any') arch=('any')
pkgdesc='A simple password store using AES-256-CBC encryption via OpenSSL (mingw-w64)' pkgdesc='A simple password store using AES-256-CBC encryption via OpenSSL (mingw-w64)'
license=('GPL') license=('GPL')
@ -16,10 +16,10 @@ depends=('mingw-w64-crt' 'mingw-w64-qt6-base' 'mingw-w64-qtutilities-qt6' 'mingw
makedepends=('mingw-w64-gcc' 'mingw-w64-cmake' 'mingw-w64-qt6-tools' 'qt6-tools' 'qt6-declarative' 'clang' 'ffmpeg' 'ninja') makedepends=('mingw-w64-gcc' 'mingw-w64-cmake' 'mingw-w64-qt6-tools' 'qt6-tools' 'qt6-declarative' 'clang' 'ffmpeg' 'ninja')
url="https://github.com/Martchus/${_reponame}" url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz") source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('68e44195cfbebef3df3404f0f552880e41e43dc16380d50c85052dff1d870e7c') sha256sums=('018dc831794182a66f4820ede7e399cee7633107542451206062bb01500541e0')
options=(!buildflags staticlibs !strip !emptydirs) options=(!buildflags staticlibs !strip !emptydirs)
_architectures=('i686-w64-mingw32' 'x86_64-w64-mingw32') _architectures=(${MINGW_W64_QT6_ARCHS:-x86_64-w64-mingw32})
_configurations=() _configurations=()
[[ $NO_SHARED_LIBS ]] || _configurations+=('shared') [[ $NO_SHARED_LIBS ]] || _configurations+=('shared')
[[ $NO_STATIC_LIBS ]] || _configurations+=('static') makedepends+=('mingw-w64-cmake-static' 'mingw-w64-qt6-base-static' 'mingw-w64-qt6-translations' 'mingw-w64-qt6-svg-static' 'breeze-icons' 'numix-icon-theme-git') [[ $NO_STATIC_LIBS ]] || _configurations+=('static') makedepends+=('mingw-w64-cmake-static' 'mingw-w64-qt6-base-static' 'mingw-w64-qt6-translations' 'mingw-w64-qt6-svg-static' 'breeze-icons' 'numix-icon-theme-git')

View File

@ -6,7 +6,7 @@
_reponame=passwordmanager _reponame=passwordmanager
pkgname=mingw-w64-passwordmanager pkgname=mingw-w64-passwordmanager
_name=${pkgname#mingw-w64-} _name=${pkgname#mingw-w64-}
pkgver=4.1.13 pkgver=4.2.0
pkgrel=1 pkgrel=1
arch=('any') arch=('any')
pkgdesc='A simple password store using AES-256-CBC encryption via OpenSSL (mingw-w64)' pkgdesc='A simple password store using AES-256-CBC encryption via OpenSSL (mingw-w64)'
@ -15,12 +15,12 @@ depends=('mingw-w64-crt' 'mingw-w64-qt5-base' 'mingw-w64-qtutilities' 'mingw-w64
makedepends=('mingw-w64-gcc' 'mingw-w64-cmake' 'mingw-w64-qt5-tools' 'ffmpeg' 'ninja') makedepends=('mingw-w64-gcc' 'mingw-w64-cmake' 'mingw-w64-qt5-tools' 'ffmpeg' 'ninja')
url="https://github.com/Martchus/${_reponame}" url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz") source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('68e44195cfbebef3df3404f0f552880e41e43dc16380d50c85052dff1d870e7c') sha256sums=('018dc831794182a66f4820ede7e399cee7633107542451206062bb01500541e0')
options=(!buildflags staticlibs !strip !emptydirs) options=(!buildflags staticlibs !strip !emptydirs)
_architectures=('i686-w64-mingw32' 'x86_64-w64-mingw32') _architectures=('i686-w64-mingw32' 'x86_64-w64-mingw32')
_configurations=() _configurations=()
[[ $NO_SHARED_LIBS ]] || _configurations+=('shared') depends+=('mingw-w64-kirigami2') [[ $NO_SHARED_LIBS ]] || _configurations+=('shared')
[[ $NO_STATIC_LIBS ]] || _configurations+=('static') makedepends+=('mingw-w64-qt5-base-static' 'mingw-w64-qt5-translations' 'mingw-w64-qt5-svg-static' 'breeze-icons' 'numix-icon-theme-git') [[ $NO_STATIC_LIBS ]] || _configurations+=('static') makedepends+=('mingw-w64-qt5-base-static' 'mingw-w64-qt5-translations' 'mingw-w64-qt5-svg-static' 'breeze-icons' 'numix-icon-theme-git')
build() { build() {
@ -29,7 +29,6 @@ build() {
declare -A _config_flags=( declare -A _config_flags=(
[shared]=' [shared]='
-DBUILD_SHARED_LIBS:BOOL=ON -DBUILD_SHARED_LIBS:BOOL=ON
-DQUICK_GUI:BOOL=ON
' '
[static]=' [static]='
-DBUILD_SHARED_LIBS:BOOL=OFF -DBUILD_SHARED_LIBS:BOOL=OFF

View File

@ -4,29 +4,29 @@
# you also find the URL of a binary repository. # you also find the URL of a binary repository.
# set whether the Qt Quick GUI should be enabled: set to either ON or OFF # set whether the Qt Quick GUI should be enabled: set to either ON or OFF
_quick_gui=${PASSWORD_MANAGER_QUICK_GUI:-OFF} _quick_gui=${PASSWORD_MANAGER_QUICK_GUI:-ON}
_reponame=passwordmanager _reponame=passwordmanager
_cfg=qt6 _cfg=qt6
pkgname=passwordmanager-$_cfg pkgname=passwordmanager-$_cfg
_name=${pkgname%-$_cfg} _name=${pkgname%-$_cfg}
pkgver=4.1.13 pkgver=4.2.0
pkgrel=1 pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64') arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
pkgdesc='A simple password store using AES-256-CBC encryption via OpenSSL' pkgdesc='A simple password store using AES-256-CBC encryption via OpenSSL'
license=('GPL') license=('GPL')
depends=('qt6-base' 'libqtutilities-qt6.so' 'libpasswordfile.so' 'libc++utilities.so' 'openssl' depends=('qt6-base' 'libqtutilities-qt6.so' 'libpasswordfile.so' 'libc++utilities.so' 'openssl'
'libxkbcommon-x11' 'desktop-file-utils' 'xdg-utils') 'desktop-file-utils')
makedepends=('cmake' 'ninja' 'qt6-tools' 'clang') makedepends=('cmake' 'ninja' 'qt6-tools' 'clang')
url="https://github.com/Martchus/${_reponame}" url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz") source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('68e44195cfbebef3df3404f0f552880e41e43dc16380d50c85052dff1d870e7c') sha256sums=('018dc831794182a66f4820ede7e399cee7633107542451206062bb01500541e0')
# add further dependencies for the Qt Quick GUI (only kirigami2 is "pluggable") # add further dependencies for the Qt Quick GUI (only kirigami2 is "pluggable")
if [[ $_quick_gui == ON ]]; then if [[ $_quick_gui == ON ]]; then
depends+=('qt6-declarative') depends+=('qt6-declarative')
makedepends+=('kirigami2') makedepends+=('kirigami')
optdepends+=('kirigami2: Qt Quick GUI') optdepends+=('kirigami: Qt Quick GUI')
else else
makedepends+=('qt6-declarative') makedepends+=('qt6-declarative')
fi fi
@ -37,10 +37,11 @@ build() {
-DCMAKE_BUILD_TYPE:STRING='Release' \ -DCMAKE_BUILD_TYPE:STRING='Release' \
-DCMAKE_INSTALL_PREFIX:PATH='/usr' \ -DCMAKE_INSTALL_PREFIX:PATH='/usr' \
-DCONFIGURATION_NAME:STRING="$_cfg" \ -DCONFIGURATION_NAME:STRING="$_cfg" \
-DCONFIGURATION_DISPLAY_NAME="Qt 6" \ -DCONFIGURATION_DISPLAY_NAME="" \
-DCONFIGURATION_PACKAGE_SUFFIX_QTUTILITIES:STRING="-$_cfg" \ -DCONFIGURATION_PACKAGE_SUFFIX_QTUTILITIES:STRING="-$_cfg" \
-DPASSWORD_MANAGER_CONFIGURATION_TARGET_SUFFIX:STRING="$_cfg" \ -DPASSWORD_MANAGER_CONFIGURATION_TARGET_SUFFIX:STRING="$_cfg" \
-DQT_PACKAGE_PREFIX:STRING='Qt6' \ -DQT_PACKAGE_PREFIX:STRING='Qt6' \
-DKF_PACKAGE_PREFIX:STRING='KF6' \
-DBUILTIN_TRANSLATIONS:BOOL=ON \ -DBUILTIN_TRANSLATIONS:BOOL=ON \
-DBUILTIN_TRANSLATIONS_OF_QT:BOOL=OFF \ -DBUILTIN_TRANSLATIONS_OF_QT:BOOL=OFF \
-DQUICK_GUI="$_quick_gui" . -DQUICK_GUI="$_quick_gui" .

View File

@ -9,7 +9,7 @@ _quick_gui=${PASSWORD_MANAGER_QUICK_GUI:-OFF}
_reponame=passwordmanager _reponame=passwordmanager
pkgname=static-compat-passwordmanager pkgname=static-compat-passwordmanager
_name=${pkgname#static-compat-} _name=${pkgname#static-compat-}
pkgver=4.1.13 pkgver=4.2.0
pkgrel=1 pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64') arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
pkgdesc='A simple password store using AES-256-CBC encryption via OpenSSL' pkgdesc='A simple password store using AES-256-CBC encryption via OpenSSL'
@ -18,7 +18,7 @@ depends=('static-compat-qt6-base' 'static-compat-qtutilities' 'static-compat-pas
makedepends=('static-compat-cmake' 'ninja' 'static-compat-qt6-svg' 'static-compat-qt6-wayland' 'static-compat-qt6-tools' 'static-compat-qt6-translations' 'breeze-icons' 'numix-icon-theme-git' 'clang') makedepends=('static-compat-cmake' 'ninja' 'static-compat-qt6-svg' 'static-compat-qt6-wayland' 'static-compat-qt6-tools' 'static-compat-qt6-translations' 'breeze-icons' 'numix-icon-theme-git' 'clang')
url="https://github.com/Martchus/${_reponame}" url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz") source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('68e44195cfbebef3df3404f0f552880e41e43dc16380d50c85052dff1d870e7c') sha256sums=('018dc831794182a66f4820ede7e399cee7633107542451206062bb01500541e0')
# add further dependencies for the Qt Quick GUI (only kirigami2 is "pluggable") # add further dependencies for the Qt Quick GUI (only kirigami2 is "pluggable")
if [[ $_quick_gui == ON ]]; then if [[ $_quick_gui == ON ]]; then

View File

@ -1,9 +1,9 @@
_pkgname=pianobooster _pkgname=pianobooster
pkgname=pianobooster-custom pkgname=pianobooster-custom
pkgdesc='A MIDI file player that teaches you how to play the piano (with custom, experimental patches)' pkgdesc='A MIDI file player that teaches you how to play the piano (with custom, experimental patches)'
pkgver=1.0.1 pkgver=1391.dfc69f1
pkgrel=1 pkgrel=1
depends=('ftgl' 'hicolor-icon-theme' 'qt6-base' 'libfluidsynth.so' 'librtmidi.so' 'libqtutilities-qt6-git.so') depends=('ftgl' 'hicolor-icon-theme' 'qt6-base' 'libfluidsynth.so' 'librtmidi.so' 'libqtutilities-git.so')
makedepends=('git' 'cmake' 'clang' 'qt6-tools' 'qt6-declarative' 'ninja') makedepends=('git' 'cmake' 'clang' 'qt6-tools' 'qt6-declarative' 'ninja')
optdepends=('qt6-translations') optdepends=('qt6-translations')
conflicts=('pianobooster') conflicts=('pianobooster')
@ -26,7 +26,7 @@ build () {
-DUSE_JACK=ON \ -DUSE_JACK=ON \
-DWITH_INTERNAL_FLUIDSYNTH=ON \ -DWITH_INTERNAL_FLUIDSYNTH=ON \
-DCONFIGURATION_PACKAGE_SUFFIX=-git \ -DCONFIGURATION_PACKAGE_SUFFIX=-git \
-DCONFIGURATION_PACKAGE_SUFFIX_QTUTILITIES=-qt6-git \ -DCONFIGURATION_PACKAGE_SUFFIX_QTUTILITIES=-git \
-DBUILTIN_TRANSLATIONS:BOOL=ON \ -DBUILTIN_TRANSLATIONS:BOOL=ON \
-DQT_PACKAGE_PREFIX=Qt6 \ -DQT_PACKAGE_PREFIX=Qt6 \
-DWITH_MAN=ON -DWITH_MAN=ON

View File

@ -1,8 +1,8 @@
_pkgname='pianobooster' _pkgname='pianobooster'
pkgname='mingw-w64-pianobooster-custom' pkgname='mingw-w64-pianobooster-custom'
pkgdesc='A MIDI file player that teaches you how to play the piano (mingw-w64, with custom and experimental patches, statically linked)' pkgdesc='A MIDI file player that teaches you how to play the piano (mingw-w64, with custom and experimental patches, statically linked)'
pkgver=1.0.1 pkgver=1392.86ce9b0
pkgrel=1 pkgrel=3
depends=() depends=()
makedepends=('mingw-w64-qt6-base-static' 'mingw-w64-ftgl' 'mingw-w64-fluidsynth' 'mingw-w64-qtutilities-qt6' 'mingw-w64-c++utilities' makedepends=('mingw-w64-qt6-base-static' 'mingw-w64-ftgl' 'mingw-w64-fluidsynth' 'mingw-w64-qtutilities-qt6' 'mingw-w64-c++utilities'
'git' 'clang' 'qt6-declarative' 'qt6-tools' 'mingw-w64-cmake-static' 'mingw-w64-qt6-tools-static' 'mingw-w64-qt6-svg-static' 'git' 'clang' 'qt6-declarative' 'qt6-tools' 'mingw-w64-cmake-static' 'mingw-w64-qt6-tools-static' 'mingw-w64-qt6-svg-static'
@ -15,7 +15,7 @@ source=("${_pkgname}::${MARTCHUS_GIT_URL_PREFIX:-git+https://github.com/Martchus
sha256sums=(SKIP) sha256sums=(SKIP)
options=(!buildflags staticlibs !strip !emptydirs) options=(!buildflags staticlibs !strip !emptydirs)
_architectures=('i686-w64-mingw32' 'x86_64-w64-mingw32') _architectures=(${MINGW_W64_QT6_ARCHS:-x86_64-w64-mingw32})
pkgver() { pkgver() {
cd "${srcdir}/${_pkgname}" cd "${srcdir}/${_pkgname}"

Some files were not shown because too many files have changed in this diff Show More