Compare commits

...

67 Commits
spdx ... master

Author SHA1 Message Date
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
654 changed files with 2890 additions and 3422 deletions

View File

@ -121,26 +121,17 @@ for this purpose.
Here are some example commands how one might do that:
```
# create a directory to store builds and new container and start it
mkdir -p /hdd/build/container
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)"
# do basic container setup
containers/create-devel-container-example
# start interactive shell in container
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 \
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
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
podman container exec -it archlinux-devel-container bash -c '
android_arch=aarch64
export PATH=/usr/lib/jvm/java-17-openjdk/bin:$PATH
source /usr/bin/android-env $android_arch && \
android-$android_arch-cmake \
-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
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 && \
cmake --build /build/passwordmanager-android-aarch64-release --verbose'
# 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
podman container exec -it archlinux-devel-container \
/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.
## Copyright notice and license
Copyright © 2015-2023 Marius Kittler
Copyright © 2015-2024 Marius Kittler
All code is licensed under [GPL-2-or-later](LICENSE).

View File

@ -8,11 +8,12 @@ pkgname=arch-repo-manager-git
_name=${pkgname%-git}
_liburing=OFF
pkgver=340.599185d
pkgrel=2
pkgrel=3
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
pkgdesc='Tool for managing custom Arch Linux repositories'
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')
optdepends=('reflective-rapidjson-git: development with libpkg/librepomgr'
"$_name-doc: API documentation")

View File

@ -2,7 +2,7 @@
# Contributor: Florian Bruhin (The Compiler) <archlinux.org@the-compiler.org>
pkgname=baikal
pkgver=0.9.4
pkgver=0.9.5
pkgrel=1
pkgdesc='Lightweight CalDAV+CardDAV server'
url='http://sabre.io/baikal/'
@ -12,7 +12,7 @@ depends=('php')
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"
'baikal.install')
sha512sums=('dd4b66d93e6d2d957db9fd53e9e27d1e1a7c8ea842ed330d0590280c57fcaa7882eea2cf612dcaaad79325605739ecc3adf5013299c95db805310e25a31db57c'
sha512sums=('e544ed39047788bf001c81a44eb69a3db30a871253cb6bf12b54d5d476eaadc63d723192d41b67f2cf908a72d4c722def03d853df68b7fd464a4093e08ed0f19'
'4e28980100ce9fc820a6c40a9cd528a90d62997ac18fb4ea353d8eaba58b320f9c653ba9b066036ff598f1d5a0aafb49ba444f9187c0d3616cbe6fa45222ca3f')
options=('!strip')
install=baikal.install

View File

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

View File

@ -1,59 +1,71 @@
# $Id: PKGBUILD 182460 2016-07-07 13:03:56Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: rubenvb vanboxem <dottie> ruben <attie> gmail <dottie> com
# Maintainer of official package: Felix Yan <felixonmars@archlinux.org>
# 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
# bound from another partition.
_targets="i686-w64-mingw32 x86_64-w64-mingw32"
pkgname=mingw-w64-binutils-symlinks
pkgver=2.32
pkgver=2.42
pkgrel=1
pkgdesc="Cross binutils for the MinGW-w64 cross-compiler (uses symlinks instead of hard links)"
arch=('i686' 'x86_64')
pkgdesc="Cross binutils for the MinGW-w64 cross-compiler"
arch=('x86_64')
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')
depends=('zlib')
provides=('mingw-w64-binutils')
conflicts=('mingw-w64-binutils')
conflicts=('mingw-w64-binutils');
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})
sha256sums=('9b0d97b3d30df184d302bced12f976aa1e5fbf4b0be696cdebc6cca30411a46e'
sha512sums=('1e4ee462513eadd3c540e4782f9661df62ecbcd4d6297d61dcc0845ae7d30243c57571787706af3bb4d561e4350609d7057307290e81d76290a301f159a6abc5'
'SKIP')
_targets="i686-w64-mingw32 x86_64-w64-mingw32"
prepare() {
cd ${srcdir}/binutils-${pkgver}
cd "$srcdir"/binutils-${pkgver}
#do not install libiberty
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() {
# 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
msg "Building ${_target} cross binutils"
mkdir -p ${srcdir}/binutils-${_target} && cd "${srcdir}/binutils-${_target}"
$srcdir/binutils-${pkgver}/configure --prefix=/usr \
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
make -O
done
}
package() {
for _target in ${_targets}; do
msg "Installing ${_target} cross binutils"
cd ${srcdir}/binutils-${_target}
make DESTDIR=${pkgdir} install
echo "Installing ${_target} cross binutils"
cd "$srcdir"/binutils-${_target}
make DESTDIR="$pkgdir" install
rm "$pkgdir"/usr/lib/bfd-plugins/libdep.so
done
cd "${pkgdir}/usr/bin"
for file in *; do
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
# you also find the URL of a binary repository.
_pkgname=boost
_pkg_arch=aarch64
_android_arch=arm64-v8a
_boost_arch=arm
_boost_address_model=64
pkgname=android-$_pkg_arch-$_pkgname
pkgver=1.81.0
_srcname=boost_${pkgver//./_}
_android_arch=aarch64
pkgname=android-${_android_arch}-boost
pkgver=1.84.0
pkgrel=1
url='https://www.boost.org/'
_srcname=boost_${pkgver//./_}
arch=('any')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, ${_android_arch})"
url="https://www.boost.org/"
license=('custom')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, $_pkg_arch)"
depends=("android-$_pkg_arch-libiconv")
options=(!buildflags staticlibs !strip !emptydirs)
makedepends=('bzip2' 'zlib' 'android-ndk' 'android-sdk' 'android-environment')
conflicts=("android-$_pkgname-$_android_arch")
replaces=("android-$_pkgname-$_android_arch")
source=(https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.gz
boost-1.81.0-phoenix-multiple-definitions.patch
$_pkgname-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch
no-versioned-shlibs.patch
disable-version-check.patch)
sha256sums=('205666dea9f6a7cfed87c7a6dfbeb52a2c1b9de55712c9c1a87735d7181452b6'
'3ebf428ef6be090a7b56a233330375539ac429333b83708e28fe5db049cfecdb'
'aa38addb40d5f44b4a8472029b475e7e6aef1c460509eb7d8edf03491dc1b5ee'
'd82d0f15064812dcabb3456a7bcb1db0e0f6145980e4728e638372e0fd35af23'
'63d12e7d703b471882608b4225c489f6a35ab425602783a4f9c4ea99a10f9c4b')
depends=("android-${_android_arch}-bzip2"
"android-${_android_arch}-icu"
"android-${_android_arch}-zlib"
"android-${_android_arch}-zstd")
makedepends=('android-environment')
if [[ $_android_arch == aarch64 ]] || [[ $_android_arch == x86-64 ]]; then
makedepends+=("android-${_android_arch}-openmpi")
optdepends+=("android-${_android_arch}-openmpi: for mpi support")
fi
options=(!strip !buildflags staticlibs !emptydirs)
source=("https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.bz2"
"boost-1.81.0-phoenix-multiple-definitions.patch"
"boost-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch"
"disable-version-check.patch")
md5sums=('9dcd632441e4da04a461082ebbafd337'
'cb1c25777e9b85af62366e7c930244b8'
'326826bf610c63c23247e70e648ff104'
'6290eb4fa0cab451aac92e12e85ef073')
prepare() {
cd ${_srcname}
cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
# https://github.com/boostorg/phoenix/issues/111
patch -Np1 -i ../boost-1.81.0-phoenix-multiple-definitions.patch
# https://github.com/boostorg/ublas/pull/97
patch -Np2 -i ../$_pkgname-ublas-c++20-iterator.patch
patch -i ../no-versioned-shlibs.patch
patch -Np2 -i ../boost-ublas-c++20-iterator.patch
patch -p1 -i ../disable-version-check.patch
}
build() {
source android-env ${_pkg_arch}
cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
local _stagedir="${srcdir}/stagedir"
local jobs="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})"
local target_flags=" \
--target=${_pkg_arch}-linux-android$ANDROID_MINIMUM_PLATFORM --sysroot=$ANDROID_SYSROOT"
local common_flags=" \
$target_flags \
-fexceptions \
-DANDROID \
-O3 -DNDEBUG \
-D_FORTIFY_SOURCE=2 -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -fPIC \
-DBOOST_ASIO_HAS_STD_STRING_VIEW=1"
local ld_flags=" \
$target_flags \
-fexceptions"
# Platform specific patches
case "$_android_arch" in
aarch64)
_boost_arch=arm
_boost_address_model=64
;;
armv7a-eabi)
_boost_arch=arm
_boost_address_model=32
;;
x86)
_boost_arch=x86
_boost_address_model=32
;;
x86-64)
_boost_arch=x86
_boost_address_model=64
;;
*)
;;
esac
cd ${_srcname}
./bootstrap.sh -with-toolset=gcc
msg2 'Bootstrapping b2'
./bootstrap.sh --with-toolset=gcc
# support for OpenMPI
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
echo "using mpi ;" >> project-config.jam
cat << EOF > "${userConfigs}"
${_boost_mpi}
using clang : android : ${ANDROID_CXX} :
<archiver>${ANDROID_AR} \
<assembler>${ANDROID_AS}
;
EOF
# boostbook is needed by quickbook
install -dm755 "${_stagedir}"/share/boostbook
cp -a tools/boostbook/{xsl,dtd} "${_stagedir}"/share/boostbook/
# default "minimal" install: "release link=shared,static
# runtime-link=shared threading=single,multi"
# --layout=tagged will add the "-mt" suffix for multithreaded libraries
# and installs includes in $ANDROID_PREFIX/include/boost.
# --layout=system no longer adds the -mt suffix for multi-threaded libs.
# install to ${_stagedir} for consistency with regular boost package
msg2 'Invoking build via b2'
export PATH=$ANDROID_CROSS_PREFIX:$PATH
"${_stagedir}"/bin/b2 \
--with-atomic \
--with-chrono \
--with-container \
--with-date_time \
--with-exception \
--with-fiber \
--with-filesystem \
--with-graph \
--with-graph_parallel \
--with-iostreams \
--with-locale \
--with-log \
--with-math \
--with-mpi \
--with-program_options \
--with-random \
--with-regex \
--with-serialization \
--with-system \
--with-test \
--with-thread \
--with-timer \
--with-type_erasure \
--with-wave \
--with-stacktrace \
variant=release \
debug-symbols=off \
threading=multi \
runtime-link=shared \
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
./b2 install \
--prefix="$srcdir/fakeinstall" \
--user-config="${userConfigs}" \
--layout=system \
--with-atomic \
--with-chrono \
--with-container \
--with-date_time \
--with-exception \
--with-fiber \
--with-filesystem \
--with-graph \
--with-graph_parallel \
--with-iostreams \
--with-locale \
--with-log \
--with-math \
--with-mpi \
--with-program_options \
--with-random \
--with-regex \
--with-serialization \
--with-system \
--with-test \
--with-thread \
--with-timer \
--with-type_erasure \
--with-wave \
--with-stacktrace \
-sICONV_PATH="${ANDROID_PREFIX}" \
variant=release \
debug-symbols=off \
runtime-link=shared \
link=shared,static \
target-os=android \
toolset=clang-android \
architecture=$_boost_arch \
threading=multi \
address-model=$_boost_address_model \
cflags="${CXXFLAGS}" \
cxxflags="${CFLAGS}" \
linkflags="${LDFLAGS}"
}
package() {
source android-env ${_pkg_arch}
cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
local _stagedir="${srcdir}/stagedir"
install -dm755 "${pkgdir}$ANDROID_PREFIX"
cp -a "${_stagedir}"/{include,share} "${pkgdir}$ANDROID_PREFIX"
find "${srcdir}/fakeinstall"/lib -iname '*.a' -exec $ANDROID_STRIP -g {} \;
find "${srcdir}/fakeinstall"/lib -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
local libdir="${pkgdir}$ANDROID_PREFIX"/lib
install -d "${libdir}"
cp -a "${_stagedir}"/lib/*.a "${libdir}"/
install -dm755 "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${srcdir}/fakeinstall"/lib/*.{a,so} "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${srcdir}/fakeinstall"/lib/cmake "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${srcdir}/fakeinstall"/include "$pkgdir/${ANDROID_PREFIX}/"
install -dm755 "${pkgdir}$ANDROID_PREFIX"
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 {} \;
install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE_1_0.txt
}
# 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
# you also find the URL of a binary repository.
_pkgname=boost
_pkg_arch=armv7a-eabi
_android_arch=armeabi-v7a
_boost_arch=arm
_boost_address_model=32
pkgname=android-$_pkg_arch-$_pkgname
pkgver=1.81.0
_srcname=boost_${pkgver//./_}
_android_arch=armv7a-eabi
pkgname=android-${_android_arch}-boost
pkgver=1.84.0
pkgrel=1
url='https://www.boost.org/'
_srcname=boost_${pkgver//./_}
arch=('any')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, ${_android_arch})"
url="https://www.boost.org/"
license=('custom')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, $_pkg_arch)"
depends=("android-$_pkg_arch-libiconv")
options=(!buildflags staticlibs !strip !emptydirs)
makedepends=('bzip2' 'zlib' 'android-ndk' 'android-sdk' 'android-environment')
conflicts=("android-$_pkgname-$_android_arch")
replaces=("android-$_pkgname-$_android_arch")
source=(https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.gz
boost-1.81.0-phoenix-multiple-definitions.patch
$_pkgname-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch
no-versioned-shlibs.patch
disable-version-check.patch)
sha256sums=('205666dea9f6a7cfed87c7a6dfbeb52a2c1b9de55712c9c1a87735d7181452b6'
'3ebf428ef6be090a7b56a233330375539ac429333b83708e28fe5db049cfecdb'
'aa38addb40d5f44b4a8472029b475e7e6aef1c460509eb7d8edf03491dc1b5ee'
'd82d0f15064812dcabb3456a7bcb1db0e0f6145980e4728e638372e0fd35af23'
'63d12e7d703b471882608b4225c489f6a35ab425602783a4f9c4ea99a10f9c4b')
depends=("android-${_android_arch}-bzip2"
"android-${_android_arch}-icu"
"android-${_android_arch}-zlib"
"android-${_android_arch}-zstd")
makedepends=('android-environment')
if [[ $_android_arch == aarch64 ]] || [[ $_android_arch == x86-64 ]]; then
makedepends+=("android-${_android_arch}-openmpi")
optdepends+=("android-${_android_arch}-openmpi: for mpi support")
fi
options=(!strip !buildflags staticlibs !emptydirs)
source=("https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.bz2"
"boost-1.81.0-phoenix-multiple-definitions.patch"
"boost-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch"
"disable-version-check.patch")
md5sums=('9dcd632441e4da04a461082ebbafd337'
'cb1c25777e9b85af62366e7c930244b8'
'326826bf610c63c23247e70e648ff104'
'6290eb4fa0cab451aac92e12e85ef073')
prepare() {
cd ${_srcname}
cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
# https://github.com/boostorg/phoenix/issues/111
patch -Np1 -i ../boost-1.81.0-phoenix-multiple-definitions.patch
# https://github.com/boostorg/ublas/pull/97
patch -Np2 -i ../$_pkgname-ublas-c++20-iterator.patch
patch -i ../no-versioned-shlibs.patch
patch -Np2 -i ../boost-ublas-c++20-iterator.patch
patch -p1 -i ../disable-version-check.patch
}
build() {
source android-env ${_pkg_arch}
cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
local _stagedir="${srcdir}/stagedir"
local jobs="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})"
local target_flags=" \
--target=${_pkg_arch}-linux-android$ANDROID_MINIMUM_PLATFORM --sysroot=$ANDROID_SYSROOT"
local common_flags=" \
$target_flags \
-fexceptions \
-DANDROID \
-O3 -DNDEBUG \
-D_FORTIFY_SOURCE=2 -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -fPIC \
-DBOOST_ASIO_HAS_STD_STRING_VIEW=1"
local ld_flags=" \
$target_flags \
-fexceptions"
# Platform specific patches
case "$_android_arch" in
aarch64)
_boost_arch=arm
_boost_address_model=64
;;
armv7a-eabi)
_boost_arch=arm
_boost_address_model=32
;;
x86)
_boost_arch=x86
_boost_address_model=32
;;
x86-64)
_boost_arch=x86
_boost_address_model=64
;;
*)
;;
esac
cd ${_srcname}
./bootstrap.sh -with-toolset=gcc
msg2 'Bootstrapping b2'
./bootstrap.sh --with-toolset=gcc
# support for OpenMPI
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
echo "using mpi ;" >> project-config.jam
cat << EOF > "${userConfigs}"
${_boost_mpi}
using clang : android : ${ANDROID_CXX} :
<archiver>${ANDROID_AR} \
<assembler>${ANDROID_AS}
;
EOF
# boostbook is needed by quickbook
install -dm755 "${_stagedir}"/share/boostbook
cp -a tools/boostbook/{xsl,dtd} "${_stagedir}"/share/boostbook/
# default "minimal" install: "release link=shared,static
# runtime-link=shared threading=single,multi"
# --layout=tagged will add the "-mt" suffix for multithreaded libraries
# and installs includes in $ANDROID_PREFIX/include/boost.
# --layout=system no longer adds the -mt suffix for multi-threaded libs.
# install to ${_stagedir} for consistency with regular boost package
msg2 'Invoking build via b2'
export PATH=$ANDROID_CROSS_PREFIX:$PATH
"${_stagedir}"/bin/b2 \
--with-atomic \
--with-chrono \
--with-container \
--with-date_time \
--with-exception \
--with-fiber \
--with-filesystem \
--with-graph \
--with-graph_parallel \
--with-iostreams \
--with-locale \
--with-log \
--with-math \
--with-mpi \
--with-program_options \
--with-random \
--with-regex \
--with-serialization \
--with-system \
--with-test \
--with-thread \
--with-timer \
--with-type_erasure \
--with-wave \
--with-stacktrace \
variant=release \
debug-symbols=off \
threading=multi \
runtime-link=shared \
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
./b2 install \
--prefix="$srcdir/fakeinstall" \
--user-config="${userConfigs}" \
--layout=system \
--with-atomic \
--with-chrono \
--with-container \
--with-date_time \
--with-exception \
--with-fiber \
--with-filesystem \
--with-graph \
--with-graph_parallel \
--with-iostreams \
--with-locale \
--with-log \
--with-math \
--with-mpi \
--with-program_options \
--with-random \
--with-regex \
--with-serialization \
--with-system \
--with-test \
--with-thread \
--with-timer \
--with-type_erasure \
--with-wave \
--with-stacktrace \
-sICONV_PATH="${ANDROID_PREFIX}" \
variant=release \
debug-symbols=off \
runtime-link=shared \
link=shared,static \
target-os=android \
toolset=clang-android \
architecture=$_boost_arch \
threading=multi \
address-model=$_boost_address_model \
cflags="${CXXFLAGS}" \
cxxflags="${CFLAGS}" \
linkflags="${LDFLAGS}"
}
package() {
source android-env ${_pkg_arch}
cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
local _stagedir="${srcdir}/stagedir"
install -dm755 "${pkgdir}$ANDROID_PREFIX"
cp -a "${_stagedir}"/{include,share} "${pkgdir}$ANDROID_PREFIX"
find "${srcdir}/fakeinstall"/lib -iname '*.a' -exec $ANDROID_STRIP -g {} \;
find "${srcdir}/fakeinstall"/lib -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
local libdir="${pkgdir}$ANDROID_PREFIX"/lib
install -d "${libdir}"
cp -a "${_stagedir}"/lib/*.a "${libdir}"/
install -dm755 "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${srcdir}/fakeinstall"/lib/*.{a,so} "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${srcdir}/fakeinstall"/lib/cmake "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${srcdir}/fakeinstall"/include "$pkgdir/${ANDROID_PREFIX}/"
install -dm755 "${pkgdir}$ANDROID_PREFIX"
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 {} \;
install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE_1_0.txt
}
# 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
# you also find the URL of a binary repository.
_pkgname=boost
_pkg_arch=x86-64
_android_arch=x86_64
_boost_arch=x86
_boost_address_model=64
pkgname=android-$_pkg_arch-$_pkgname
pkgver=1.81.0
_srcname=boost_${pkgver//./_}
_android_arch=x86-64
pkgname=android-${_android_arch}-boost
pkgver=1.84.0
pkgrel=1
url='https://www.boost.org/'
_srcname=boost_${pkgver//./_}
arch=('any')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, ${_android_arch})"
url="https://www.boost.org/"
license=('custom')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, $_pkg_arch)"
depends=("android-$_pkg_arch-libiconv")
options=(!buildflags staticlibs !strip !emptydirs)
makedepends=('bzip2' 'zlib' 'android-ndk' 'android-sdk' 'android-environment')
conflicts=("android-$_pkgname-$_android_arch")
replaces=("android-$_pkgname-$_android_arch")
source=(https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.gz
boost-1.81.0-phoenix-multiple-definitions.patch
$_pkgname-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch
no-versioned-shlibs.patch
disable-version-check.patch)
sha256sums=('205666dea9f6a7cfed87c7a6dfbeb52a2c1b9de55712c9c1a87735d7181452b6'
'3ebf428ef6be090a7b56a233330375539ac429333b83708e28fe5db049cfecdb'
'aa38addb40d5f44b4a8472029b475e7e6aef1c460509eb7d8edf03491dc1b5ee'
'd82d0f15064812dcabb3456a7bcb1db0e0f6145980e4728e638372e0fd35af23'
'63d12e7d703b471882608b4225c489f6a35ab425602783a4f9c4ea99a10f9c4b')
depends=("android-${_android_arch}-bzip2"
"android-${_android_arch}-icu"
"android-${_android_arch}-zlib"
"android-${_android_arch}-zstd")
makedepends=('android-environment')
if [[ $_android_arch == aarch64 ]] || [[ $_android_arch == x86-64 ]]; then
makedepends+=("android-${_android_arch}-openmpi")
optdepends+=("android-${_android_arch}-openmpi: for mpi support")
fi
options=(!strip !buildflags staticlibs !emptydirs)
source=("https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.bz2"
"boost-1.81.0-phoenix-multiple-definitions.patch"
"boost-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch"
"disable-version-check.patch")
md5sums=('9dcd632441e4da04a461082ebbafd337'
'cb1c25777e9b85af62366e7c930244b8'
'326826bf610c63c23247e70e648ff104'
'6290eb4fa0cab451aac92e12e85ef073')
prepare() {
cd ${_srcname}
cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
# https://github.com/boostorg/phoenix/issues/111
patch -Np1 -i ../boost-1.81.0-phoenix-multiple-definitions.patch
# https://github.com/boostorg/ublas/pull/97
patch -Np2 -i ../$_pkgname-ublas-c++20-iterator.patch
patch -i ../no-versioned-shlibs.patch
patch -Np2 -i ../boost-ublas-c++20-iterator.patch
patch -p1 -i ../disable-version-check.patch
}
build() {
source android-env ${_pkg_arch}
cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
local _stagedir="${srcdir}/stagedir"
local jobs="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})"
local target_flags=" \
--target=${_pkg_arch}-linux-android$ANDROID_MINIMUM_PLATFORM --sysroot=$ANDROID_SYSROOT"
local common_flags=" \
$target_flags \
-fexceptions \
-DANDROID \
-O3 -DNDEBUG \
-D_FORTIFY_SOURCE=2 -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -fPIC \
-DBOOST_ASIO_HAS_STD_STRING_VIEW=1"
local ld_flags=" \
$target_flags \
-fexceptions"
# Platform specific patches
case "$_android_arch" in
aarch64)
_boost_arch=arm
_boost_address_model=64
;;
armv7a-eabi)
_boost_arch=arm
_boost_address_model=32
;;
x86)
_boost_arch=x86
_boost_address_model=32
;;
x86-64)
_boost_arch=x86
_boost_address_model=64
;;
*)
;;
esac
cd ${_srcname}
./bootstrap.sh -with-toolset=gcc
msg2 'Bootstrapping b2'
./bootstrap.sh --with-toolset=gcc
# support for OpenMPI
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
echo "using mpi ;" >> project-config.jam
cat << EOF > "${userConfigs}"
${_boost_mpi}
using clang : android : ${ANDROID_CXX} :
<archiver>${ANDROID_AR} \
<assembler>${ANDROID_AS}
;
EOF
# boostbook is needed by quickbook
install -dm755 "${_stagedir}"/share/boostbook
cp -a tools/boostbook/{xsl,dtd} "${_stagedir}"/share/boostbook/
# default "minimal" install: "release link=shared,static
# runtime-link=shared threading=single,multi"
# --layout=tagged will add the "-mt" suffix for multithreaded libraries
# and installs includes in $ANDROID_PREFIX/include/boost.
# --layout=system no longer adds the -mt suffix for multi-threaded libs.
# install to ${_stagedir} for consistency with regular boost package
msg2 'Invoking build via b2'
export PATH=$ANDROID_CROSS_PREFIX:$PATH
"${_stagedir}"/bin/b2 \
--with-atomic \
--with-chrono \
--with-container \
--with-date_time \
--with-exception \
--with-fiber \
--with-filesystem \
--with-graph \
--with-graph_parallel \
--with-iostreams \
--with-locale \
--with-log \
--with-math \
--with-mpi \
--with-program_options \
--with-random \
--with-regex \
--with-serialization \
--with-system \
--with-test \
--with-thread \
--with-timer \
--with-type_erasure \
--with-wave \
--with-stacktrace \
variant=release \
debug-symbols=off \
threading=multi \
runtime-link=shared \
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
./b2 install \
--prefix="$srcdir/fakeinstall" \
--user-config="${userConfigs}" \
--layout=system \
--with-atomic \
--with-chrono \
--with-container \
--with-date_time \
--with-exception \
--with-fiber \
--with-filesystem \
--with-graph \
--with-graph_parallel \
--with-iostreams \
--with-locale \
--with-log \
--with-math \
--with-mpi \
--with-program_options \
--with-random \
--with-regex \
--with-serialization \
--with-system \
--with-test \
--with-thread \
--with-timer \
--with-type_erasure \
--with-wave \
--with-stacktrace \
-sICONV_PATH="${ANDROID_PREFIX}" \
variant=release \
debug-symbols=off \
runtime-link=shared \
link=shared,static \
target-os=android \
toolset=clang-android \
architecture=$_boost_arch \
threading=multi \
address-model=$_boost_address_model \
cflags="${CXXFLAGS}" \
cxxflags="${CFLAGS}" \
linkflags="${LDFLAGS}"
}
package() {
source android-env ${_pkg_arch}
cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
local _stagedir="${srcdir}/stagedir"
install -dm755 "${pkgdir}$ANDROID_PREFIX"
cp -a "${_stagedir}"/{include,share} "${pkgdir}$ANDROID_PREFIX"
find "${srcdir}/fakeinstall"/lib -iname '*.a' -exec $ANDROID_STRIP -g {} \;
find "${srcdir}/fakeinstall"/lib -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
local libdir="${pkgdir}$ANDROID_PREFIX"/lib
install -d "${libdir}"
cp -a "${_stagedir}"/lib/*.a "${libdir}"/
install -dm755 "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${srcdir}/fakeinstall"/lib/*.{a,so} "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${srcdir}/fakeinstall"/lib/cmake "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${srcdir}/fakeinstall"/include "$pkgdir/${ANDROID_PREFIX}/"
install -dm755 "${pkgdir}$ANDROID_PREFIX"
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 {} \;
install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE_1_0.txt
}
# 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
# you also find the URL of a binary repository.
_pkgname=boost
_pkg_arch=x86
_android_arch=x86
_boost_arch=x86
_boost_address_model=32
pkgname=android-$_pkg_arch-$_pkgname
pkgver=1.81.0
_srcname=boost_${pkgver//./_}
pkgname=android-${_android_arch}-boost
pkgver=1.84.0
pkgrel=1
url='https://www.boost.org/'
_srcname=boost_${pkgver//./_}
arch=('any')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, ${_android_arch})"
url="https://www.boost.org/"
license=('custom')
pkgdesc="Free peer-reviewed portable C++ source libraries (Android, $_pkg_arch)"
depends=("android-$_pkg_arch-libiconv")
options=(!buildflags staticlibs !strip !emptydirs)
makedepends=('bzip2' 'zlib' 'android-ndk' 'android-sdk' 'android-environment')
conflicts=("android-$_pkgname-$_android_arch")
replaces=("android-$_pkgname-$_android_arch")
source=(https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.gz
boost-1.81.0-phoenix-multiple-definitions.patch
$_pkgname-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch
no-versioned-shlibs.patch
disable-version-check.patch)
sha256sums=('205666dea9f6a7cfed87c7a6dfbeb52a2c1b9de55712c9c1a87735d7181452b6'
'3ebf428ef6be090a7b56a233330375539ac429333b83708e28fe5db049cfecdb'
'aa38addb40d5f44b4a8472029b475e7e6aef1c460509eb7d8edf03491dc1b5ee'
'd82d0f15064812dcabb3456a7bcb1db0e0f6145980e4728e638372e0fd35af23'
'63d12e7d703b471882608b4225c489f6a35ab425602783a4f9c4ea99a10f9c4b')
depends=("android-${_android_arch}-bzip2"
"android-${_android_arch}-icu"
"android-${_android_arch}-zlib"
"android-${_android_arch}-zstd")
makedepends=('android-environment')
if [[ $_android_arch == aarch64 ]] || [[ $_android_arch == x86-64 ]]; then
makedepends+=("android-${_android_arch}-openmpi")
optdepends+=("android-${_android_arch}-openmpi: for mpi support")
fi
options=(!strip !buildflags staticlibs !emptydirs)
source=("https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/$_srcname.tar.bz2"
"boost-1.81.0-phoenix-multiple-definitions.patch"
"boost-ublas-c++20-iterator.patch::https://github.com/boostorg/ublas/commit/a31e5cffa85f.patch"
"disable-version-check.patch")
md5sums=('9dcd632441e4da04a461082ebbafd337'
'cb1c25777e9b85af62366e7c930244b8'
'326826bf610c63c23247e70e648ff104'
'6290eb4fa0cab451aac92e12e85ef073')
prepare() {
cd ${_srcname}
cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
# https://github.com/boostorg/phoenix/issues/111
patch -Np1 -i ../boost-1.81.0-phoenix-multiple-definitions.patch
# https://github.com/boostorg/ublas/pull/97
patch -Np2 -i ../$_pkgname-ublas-c++20-iterator.patch
patch -i ../no-versioned-shlibs.patch
patch -Np2 -i ../boost-ublas-c++20-iterator.patch
patch -p1 -i ../disable-version-check.patch
}
build() {
source android-env ${_pkg_arch}
cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
local _stagedir="${srcdir}/stagedir"
local jobs="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})"
local target_flags=" \
--target=${_pkg_arch}-linux-android$ANDROID_MINIMUM_PLATFORM --sysroot=$ANDROID_SYSROOT"
local common_flags=" \
$target_flags \
-fexceptions \
-DANDROID \
-O3 -DNDEBUG \
-D_FORTIFY_SOURCE=2 -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -fPIC \
-DBOOST_ASIO_HAS_STD_STRING_VIEW=1"
local ld_flags=" \
$target_flags \
-fexceptions"
# Platform specific patches
case "$_android_arch" in
aarch64)
_boost_arch=arm
_boost_address_model=64
;;
armv7a-eabi)
_boost_arch=arm
_boost_address_model=32
;;
x86)
_boost_arch=x86
_boost_address_model=32
;;
x86-64)
_boost_arch=x86
_boost_address_model=64
;;
*)
;;
esac
cd ${_srcname}
./bootstrap.sh -with-toolset=gcc
msg2 'Bootstrapping b2'
./bootstrap.sh --with-toolset=gcc
# support for OpenMPI
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
echo "using mpi ;" >> project-config.jam
cat << EOF > "${userConfigs}"
${_boost_mpi}
using clang : android : ${ANDROID_CXX} :
<archiver>${ANDROID_AR} \
<assembler>${ANDROID_AS}
;
EOF
# boostbook is needed by quickbook
install -dm755 "${_stagedir}"/share/boostbook
cp -a tools/boostbook/{xsl,dtd} "${_stagedir}"/share/boostbook/
# default "minimal" install: "release link=shared,static
# runtime-link=shared threading=single,multi"
# --layout=tagged will add the "-mt" suffix for multithreaded libraries
# and installs includes in $ANDROID_PREFIX/include/boost.
# --layout=system no longer adds the -mt suffix for multi-threaded libs.
# install to ${_stagedir} for consistency with regular boost package
msg2 'Invoking build via b2'
export PATH=$ANDROID_CROSS_PREFIX:$PATH
"${_stagedir}"/bin/b2 \
--with-atomic \
--with-chrono \
--with-container \
--with-date_time \
--with-exception \
--with-fiber \
--with-filesystem \
--with-graph \
--with-graph_parallel \
--with-iostreams \
--with-locale \
--with-log \
--with-math \
--with-mpi \
--with-program_options \
--with-random \
--with-regex \
--with-serialization \
--with-system \
--with-test \
--with-thread \
--with-timer \
--with-type_erasure \
--with-wave \
--with-stacktrace \
variant=release \
debug-symbols=off \
threading=multi \
runtime-link=shared \
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
./b2 install \
--prefix="$srcdir/fakeinstall" \
--user-config="${userConfigs}" \
--layout=system \
--with-atomic \
--with-chrono \
--with-container \
--with-date_time \
--with-exception \
--with-fiber \
--with-filesystem \
--with-graph \
--with-graph_parallel \
--with-iostreams \
--with-locale \
--with-log \
--with-math \
--with-mpi \
--with-program_options \
--with-random \
--with-regex \
--with-serialization \
--with-system \
--with-test \
--with-thread \
--with-timer \
--with-type_erasure \
--with-wave \
--with-stacktrace \
-sICONV_PATH="${ANDROID_PREFIX}" \
variant=release \
debug-symbols=off \
runtime-link=shared \
link=shared,static \
target-os=android \
toolset=clang-android \
architecture=$_boost_arch \
threading=multi \
address-model=$_boost_address_model \
cflags="${CXXFLAGS}" \
cxxflags="${CFLAGS}" \
linkflags="${LDFLAGS}"
}
package() {
source android-env ${_pkg_arch}
cd "${srcdir}/$_srcname"
source android-env ${_android_arch}
local _stagedir="${srcdir}/stagedir"
install -dm755 "${pkgdir}$ANDROID_PREFIX"
cp -a "${_stagedir}"/{include,share} "${pkgdir}$ANDROID_PREFIX"
find "${srcdir}/fakeinstall"/lib -iname '*.a' -exec $ANDROID_STRIP -g {} \;
find "${srcdir}/fakeinstall"/lib -iname '*.so' -exec $ANDROID_STRIP --strip-unneeded {} \;
local libdir="${pkgdir}$ANDROID_PREFIX"/lib
install -d "${libdir}"
cp -a "${_stagedir}"/lib/*.a "${libdir}"/
install -dm755 "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${srcdir}/fakeinstall"/lib/*.{a,so} "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${srcdir}/fakeinstall"/lib/cmake "$pkgdir/${ANDROID_PREFIX_LIB}/"
cp -a "${srcdir}/fakeinstall"/include "$pkgdir/${ANDROID_PREFIX}/"
install -dm755 "${pkgdir}$ANDROID_PREFIX"
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 {} \;
install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE_1_0.txt
}
# 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
pkgname=c++utilities
pkgver=5.24.5
pkgver=5.24.8
pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
pkgdesc='Common C++ classes and routines such as argument parser, IO and conversion utilities'
@ -17,7 +17,7 @@ checkdepends=('cppunit')
provides=(libc++utilities.so)
url="https://github.com/Martchus/${_reponame}"
source=("${pkgname}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('28cfbfe4e91eb37d9c0224f39def16b4aab41d09d7762a120c83382cf2fb3cbc')
sha256sums=('2175b45a53f5c71bb022aea1409535a82b115ce76dbcc5123b3be39f8557858a')
build() {
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"

View File

@ -6,7 +6,7 @@
_name=c++utilities
_reponame=cpp-utilities
pkgname=$_name-doc
pkgver=5.24.5
pkgver=5.24.8
pkgrel=1
arch=('any')
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')
url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('28cfbfe4e91eb37d9c0224f39def16b4aab41d09d7762a120c83382cf2fb3cbc')
sha256sums=('2175b45a53f5c71bb022aea1409535a82b115ce76dbcc5123b3be39f8557858a')
build() {
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"

View File

@ -6,7 +6,7 @@
_reponame=cpp-utilities
pkgname=mingw-w64-c++utilities
_name=${pkgname#mingw-w64-}
pkgver=5.24.5
pkgver=5.24.8
pkgrel=1
arch=('any')
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')
url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('28cfbfe4e91eb37d9c0224f39def16b4aab41d09d7762a120c83382cf2fb3cbc')
sha256sums=('2175b45a53f5c71bb022aea1409535a82b115ce76dbcc5123b3be39f8557858a')
options=(!buildflags staticlibs !strip !emptydirs)
_architectures=('i686-w64-mingw32' 'x86_64-w64-mingw32')

View File

@ -6,7 +6,7 @@
_reponame=cpp-utilities
pkgname=static-compat-c++utilities
_name=${pkgname#static-compat-}
pkgver=5.24.5
pkgver=5.24.8
pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
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')
url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('28cfbfe4e91eb37d9c0224f39def16b4aab41d09d7762a120c83382cf2fb3cbc')
sha256sums=('2175b45a53f5c71bb022aea1409535a82b115ce76dbcc5123b3be39f8557858a')
prepare() {
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"

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 --finger B9E36A7275FC61B464B67907E06FE8F53CDC6A4C && \
pacman-key --lsign-key B9E36A7275FC61B464B67907E06FE8F53CDC6A4C && \
pacman -Sy --verbose --noconfirm --needed archlinux-keyring && \
pacman -Syu --verbose --noconfirm --needed base-devel pacman-contrib ccache && \
pacman -Scc --noconfirm && \
paccache -r -k0 && \

View File

@ -1,7 +1,8 @@
#!/bin/bash
set -e
[ "$(whoami)" == root ] && sudo= || sudo=sudo
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
[[ -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"
for pkgbuild in qt5-*/PKGBUILD ; do
git -C "${pkgbuild%/PKGBUILD}" pull --rebase origin main
done
for pkgbuild in qt5-*/PKGBUILD ; do
source "$pkgbuild"
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
my %kde_fork_revisions = (
# module => [rev, 'commit on KDE fork', 'version bump to be reverted'],
activeqt => [0, '4fc1cba4c415d84a5879da29f7c459b70fbc15e9'],
winextras => [0, 'ee931eba5d129284d5c33157cd7d0b9232fbee7b'],
'3d' => [0, 'e1b1a0d2970fd384bd52c734a72536d8452ad070'],
base => [147, '8907dedc858cc344d770a2e826d6acc516429540'],
charts => [0, '393a84ad5b16a9ec93d8a44bebf1ae86e881bc06'],
connectivity => [6, '70020cb64f71dcf2fd65a8a167cb785d2127e159'],
datavis3d => [0, 'c887477198cae44585fe9db371db0ddf4c3b205e'],
declarative => [31, '792a55bb701d233116c3731c7a53ffdb8c67e407'],
gamepad => [0, '8ed95136b3c265b01db6cc33869228f41878e173'],
graphicaleffects => [0, 'e33716bd6bb8926688fef20cb568e11618d08a35'],
imageformats => [10, '142040e8a652e708ff6e004361f6bcfe85fefdf9'],
location => [6, '5b27b8921f1f2de93573df903c47aee634209f80'],
multimedia => [2, '36603a39aa590c12cbe2b192b56b29edd09a7a6b'],
networkauth => [0, '3fccc9b8fdaff1252fb4a9c516868d0bbbd4384d'],
quickcontrols => [0, '1ca962198a703f591efc7c8f7540fc4120746a00'],
quickcontrols2 => [5, '134ca5dbef9d137a9c46faa79b0225bc650d9283'],
remoteobjects => [0, 'f64e34be9ac4b7e92c63e47235c04471a1d40c93'],
scxml => [0, '3f56c6b4bd1e3883581340243b4a7289807fffc9'],
sensors => [0, '3011b16d63cadbb473b6aa3a535b9f0e33170c09'],
serialport => [0, 'c3a7debff7a4c6ddaedb795290180dd99d7ac4be'],
speech => [1, 'c41437acf07c2c4703351b07925fce3ce0e6b75d'],
svg => [6, '5b1b4a99d6bc98c42a11b7a3f6c9f0b0f9e56f34'],
tools => [4, 'bd0ceb7de5d0c918ae596150e95b069dca8b9150'],
translations => [0, 'f7745c117041e7adf9705e1de8d71086c160dd9f'],
virtualkeyboard => [0, '8b885af5ad3c2f2ff500c060a41e312ea7276e50'],
webchannel => [3, '6d2f0c3a36d9b2cdcd759a464c608365a0afda98'],
webglplugin => [0, '8f879e6bcf941a612c568fbfe2b49ddb1bb409cd'],
websockets => [2, '9a7b9972a54137d5f2e0d49559fe58d07c90662e'],
xmlpatterns => [0, '6e0917d518e07f737cc663b8d632c8021634fd3b'],
activeqt => [0, '014285857ef1cfb2d9965cf7bad871bbc336ce60'],
winextras => [0, 'e6a85ae3306867400b8700600152949656eb21f7'],
'3d' => [0, '67bee4599a28e1cadc14ed9ea4adc7061e250b90'],
base => [138, 'b9906b5233a80cab372c95ac4dd68b25bdca0646'],
charts => [0, '3f3f14d69a509c3e8027bfb5d7ffca9b4f3ef003'],
connectivity => [4, '8024ef3d7269665ba104f528e5e284df9d9d8ae9'],
datavis3d => [0, '6ac6d23a8f558f36f1162b419858cc44dccd4d2b'],
declarative => [30, 'b99568135aa60de96ca2e121dc2e8d83fb1ca886'],
gamepad => [0, '44255e2ae53a14e9a3fb671da0782ec5d396220a'],
graphicaleffects => [0, '895f9753940156dda05aa83d3c7655571514407e'],
imageformats => [7, '63ec444cc7b30c45d4c8beb2c1071a1157d689eb'],
location => [6, 'c576985da4e6a4a0b85d5229263777e7197494e0'],
lottie => [0, '62f17bbc0ae8649178ac484afc434dbad16d6351'],
multimedia => [2, '7514352532f41d9f0f8b8d722e360b1854442731'],
networkauth => [0, 'ed2291d454fac207f6b1555d30b9227e51be611b'],
purchasing => [0, '7f4ead6f3e6431acee63987a0a1753ff140ac2d2'],
quick3d => [1, 'a0c37ca7615e95d69bcf6de8f19607bd46e8c37a'],
quickcontrols => [0, '77fbfa8d313bbdb8fb762f15dd6173a067be55e3'],
quickcontrols2 => [5, '1fc98160580fc7b791e20d34ba986c9992cae9c5'],
quicktimeline => [0, '29394e35db43acb20e7b4d5e978a733f5b4232a6'],
remoteobjects => [0, '18ef1cdce7bc4c93415f38f1c220ab697aa75908'],
scxml => [0, '6074956c2089dd0507d2930c638fa8c930f4e21c'],
sensors => [0, '7f8b55744f87155a4979dd8ba405bd7feec03042'],
serialbus => [0, '5efce7d821bad2f5db95ff3ada5eeddccbb58920'],
serialport => [0, 'fc0b6affe244e40366bd624d6e01c62712568eb8'],
speech => [1, '9b3738febbc751820ede496e8d619c5be56548dc'],
svg => [6, '080fed6443e9e7b2ad30e61f31163e9481dfad0f'],
tools => [4, 'ba4c633c4a4731ead0c376b908bf5449796f7de1'],
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

View File

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

View File

@ -32,6 +32,7 @@ prepare () {
% }
build() {
export PATH=/usr/lib/jvm/java-17-openjdk/bin:$PATH
source android-env ${_android_arch}
<%== content_for 'before_build_config' %>\
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 %>
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
% if ($kde_fork_revision) {
_basever=${pkgver%%+*}

View File

@ -14,14 +14,14 @@
% }
pkgname=<%= $package_name %>
_qtver=6.6.1
_qtver=6.7.0
pkgver=${_qtver/-/}
pkgrel=1
arch=(any)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
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-brotli' 'mingw-w64-pcre2' 'mingw-w64-zstd')
makedepends=('mingw-w64-cmake<%= $static_suffix %>' 'mingw-w64-postgresql' 'mingw-w64-mariadb-connector-c'
@ -58,12 +58,22 @@ prepare () {
build() {
for _arch in ${_architectures}; do
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 \\
-DCMAKE_CXX_STANDARD=20 \\
-DCMAKE_CXX_FLAGS="$CXX_FLAGS -std=c++20" \\
% if ($static_variant) {
-DCMAKE_INSTALL_PREFIX:PATH="/usr/$_arch/static" \\
-DFEATURE_static_runtime=ON \\
-DFEATURE_openssl_linked=ON \\
% }
-DFEATURE_cpp_winrt=$_enable_winrt_support \\
-DFEATURE_pkg_config=ON \\
-DFEATURE_system_pcre2=ON \\
-DFEATURE_system_freetype=ON \\

View File

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

View File

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

View File

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

View File

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

View File

@ -1,15 +1,20 @@
pkgname=static-compat-environment
pkgname=(static-compat-{environment,pkgconf})
pkgver=1
pkgrel=1
pkgrel=2
arch=('any')
pkgdesc="Script providing common environment variables to use gcc-static-compat"
license=('GPL')
depends=('gcc-static-compat')
url="https://github.com/Martchus/PKGBUILDs"
source=("static-compat-environment.sh")
source=(static-compat-environment.sh pkg-config.sh)
sha256sums=('SKIP')
package() {
package_static-compat-environment() {
install -d "${pkgdir}"/usr/bin
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
pkgver=5.102.0
_pkgname=extra-cmake-modules
pkgname=mingw-w64-$_pkgname
pkgver=6.0.0
pkgrel=1
arch=(any)
pkgdesc="Extra modules and scripts for CMake (mingw-w64)"
@ -8,14 +9,12 @@ license=("LGPL")
depends=(mingw-w64-cmake)
options=(staticlibs !strip !buildflags)
url="https://community.kde.org/Frameworks"
source=("http://download.kde.org/stable/frameworks/${pkgver%.*}/extra-cmake-modules-${pkgver}.tar.xz"{,.sig}
"set-AUTOSTATICPLUGINS.patch"
"05aa27dc0e14dab407379a4d22f895e9eff13cc0.patch")
sha256sums=('f259aeb5a8e046ee2a0e658645f3af6d3e42145d3ae576f305b2b6e24a297f9b'
'SKIP'
'30bdcedab402c69ea0db3460f5a23cbd226a5cd1e12b13926b8a65df773e14a0'
'7e44cf56a8274c8166eaf02e60c2d34e5048992a7e3c8309b998b762a394e909')
validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB) # David Faure <faure@kde.org>
source=(https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz{,.sig})
sha256sums=('23992bf19db717156b7d6dd13118caa79fd57f090beb062e8308db3c09f70d0c'
'SKIP')
validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB # David Faure <faure@kde.org>
E0A3EB202F8E57528E13E72FD7574483BB57B18D) # Jonathan Esk-Riddell <jr@jriddell.org>
options=(!buildflags staticlibs !strip !emptydirs)
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"

View File

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

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
pkgver=0.21
pkgver=0.22.5
pkgrel=1
arch=('any')
pkgdesc='GNU internationalization library (mingw-w64)'
depends=('mingw-w64-termcap' 'mingw-w64-libunistring')
makedepends=('gettext' 'mingw-w64-configure')
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/"
source=(http://ftp.gnu.org/pub/gnu/gettext/gettext-${pkgver}.tar.gz{,.sig}
gettext-printf_collision.patch
gettext_formatstring-ruby.patch
intl.pc)
sha256sums=('c77d0da3102aec9c07f43671e60611ebff89a996ef159497ce8e59d075786b12'
sha256sums=('ec1705b1e969b83a9f073144ec806151db88127f5e40fe5a94cb6c8fa48996a0'
'SKIP'
'7da6794550b0704a58ed9984913ebf671d98ab3178dbc58dd88337c35c8cdadb'
'380910da75c5aa62524acb18fc54415b2c0ad391f6385ea4369bbd1e6e0d29ef'
'0dc8a3e2c95d79aacaeaacd3c90e41c0f5d6ba9cfbc949a0ca55f4b0fd389d9c')
validpgpkeys=('462225C3B46F34879FC8496CD605848ED7E69871' # Daiki Ueno
'68D94D8AAEEAD48AE7DC5B904F494A942E4616C2'
@ -25,8 +21,6 @@ _architectures='i686-w64-mingw32 x86_64-w64-mingw32'
prepare() {
cd gettext-$pkgver
patch -p1 -i "${srcdir}"/gettext-printf_collision.patch
patch -p1 -i "${srcdir}"/gettext_formatstring-ruby.patch
}
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>
pkgname=mingw-w64-gnutls
pkgver=3.8.1
pkgver=3.8.3
pkgrel=1
pkgdesc='A library which provides a secure layer over a reliable transport layer (mingw-w64)'
arch=('any')
url="http://www.gnu.org/software/gnutls"
license=('GPL3' 'LGPL2.1')
url="https://www.gnutls.org/"
license=('GPL-3.0-or-later AND LGPL-2.1-or-later')
makedepends=('mingw-w64-configure' 'autogen')
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')
@ -14,7 +14,7 @@ options=(staticlibs !strip !buildflags)
optdepends=("mingw-w64-openssl: libgnutls-openssl")
source=(https://www.gnupg.org/ftp/gcrypt/gnutls/v${pkgver%.*}/${pkgname#mingw-w64-}-${pkgver}.tar.xz{,.sig}
gnutls-fix-external-libtasn1-detection.patch)
sha256sums=('ba8b9e15ae20aba88f44661978f5b5863494316fe7e722ede9d069fe6294829c'
sha256sums=('f74fc5954b27d4ec6dfbb11dea987888b5b124289a3703afcada0ee520f4173e'
'SKIP'
'8525da75852a516be0cb05df0a770daf19ce0583033260d6cac03a1e40fd2072')
validpgpkeys=('462225C3B46F34879FC8496CD605848ED7E69871') # "Daiki Ueno <ueno@unixuser.org>"

View File

@ -1,77 +1,70 @@
# Maintainer: pingplug < aur at pingplug dot me >
# Contributor: Schala Zeal < schalaalexiazeal at gmail dot com >
_commit=9aa6f8a93f035dd0a1e3978da495d830049480c8 # tags/2.9.0
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
pkgbase=mingw-w64-harfbuzz
pkgname=('mingw-w64-harfbuzz' 'mingw-w64-harfbuzz-icu')
pkgver=2.9.0
pkgrel=1
pkgver=8.4.0
pkgrel=2
pkgdesc="OpenType text shaping engine (mingw-w64)"
arch=('any')
url="https://www.freedesktop.org/wiki/Software/HarfBuzz"
url="https://harfbuzz.github.io/"
license=('MIT')
depends=('mingw-w64-crt'
'mingw-w64-glib2'
'mingw-w64-graphite'
'mingw-w64-freetype2')
makedepends=('mingw-w64-configure'
makedepends=('mingw-w64-meson'
'mingw-w64-cairo'
'mingw-w64-icu'
'python'
'gtk-doc'
'ragel'
'git')
options=('!strip' 'staticlibs' '!buildflags')
source=("git+https://github.com/harfbuzz/harfbuzz.git#commit=${_commit}")
sha256sums=('SKIP')
source=("git+https://github.com/harfbuzz/harfbuzz?signed#tag=$pkgver")
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() {
cd harfbuzz
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() {
cd harfbuzz
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
LDFLAGS=-lssp ${_arch}-configure \
--with-glib \
--with-freetype \
--with-cairo \
--with-icu \
--with-gobject \
--with-graphite2 \
--enable-static=no \
--enable-shared=yes
make
${_arch}-meson \
-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
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
done
}
@ -79,12 +72,13 @@ build() {
package_mingw-w64-harfbuzz() {
for _arch in ${_architectures}; do
cd "${srcdir}/harfbuzz/build-${_arch}-static"
make DESTDIR="${pkgdir}" install
DESTDIR="${pkgdir}" ninja install
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 '*.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
mv "${pkgdir}"/usr/${_arch}/bin/libharfbuzz-icu* ./usr/${_arch}/bin

View File

@ -3,19 +3,24 @@
_pkgname=harfbuzz
pkgname=static-compat-$_pkgname
pkgver=8.1.1
pkgver=8.4.0
pkgrel=1
pkgdesc="OpenType text shaping engine"
url="https://www.freedesktop.org/wiki/Software/HarfBuzz"
url="https://harfbuzz.github.io/"
arch=(x86_64)
license=(MIT)
depends=(static-compat-glib2 static-compat-freetype2 static-compat-graphite)
makedepends=(gobject-introspection ragel git python static-compat-meson)
checkdepends=(python-fonttools python-setuptools)
options=(!emptydirs !docs staticlibs)
_commit=1d665c2b521512cdd56964138fc601debd1f1177 # tags/8.1.1^0
source=("git+https://github.com/harfbuzz/harfbuzz#commit=$_commit")
sha256sums=('SKIP')
source=("git+https://github.com/harfbuzz/harfbuzz?signed#tag=$pkgver")
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() {
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>
pkgname=mingw-w64-jasper
pkgver=4.1.1
pkgver=4.2.0
pkgrel=1
pkgdesc="A software-based implementation of the codec specified in the emerging JPEG-2000 Part-1 standard (mingw-w64)"
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
0001-Fix-exports.patch
0002-Fix-building-for-mingw-w64-target.patch)
sha512sums=('a15c196d7e448fb3c8b6512793d4b430e58ba6adf343b46392cac0880ae8c385cd75b43dd566c4a25baab983089cb95c00ae538dc0b84282cc98f2a9ce398d43'
sha512sums=('31da8f49cec3ba2a3bb9ba40fa54fe64c97d1e564631c980619f0b3ffca36814adc6c2cb8dc1ead774a15546f308e7a33990821538d1e7b6c885b14ed4e1f711'
'ffa3b51509c626ba7e93375161c2d8d80fe27b54601a1f66bd93032f7c5d2125d8f3d7f8a48701ee9c7422c79035f769f8dd032242475d3628bbf2da27cdcf00'
'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>
# Contributor (maintains regular package): Antonio Rojas <arojas@archlinux.org>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository.
_pkgname=kirigami2
_pkgname=kirigami
_android_arch=aarch64
pkgname=android-$_android_arch-$_pkgname
pkgver=5.240.0.20231004
pkgrel=1
pkgname=android-${_android_arch}-${_pkgname}2
pkgver=6.0.0
pkgrel=2
pkgdesc="A QtQuick based components set (Android, $_android_arch)"
arch=('any')
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})
makedepends=('cmake' 'android-ndk' 'android-sdk' 'android-cmake' 'extra-cmake-modules-git' 'ninja' 'git' 'qt6-base' 'qt6-declarative' 'qt6-tools' 'qt6-shadertools')
#source=("https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz"{,.sig})
#sha256sums=('9706915f219ef9394b030dbb24974d4fddef091008954cf75cf97cc97586e35f'
# 'SKIP')
_commit=41bdddb37ea96ea19109c2aa9e7158cb57986386
source=(git+https://invent.kde.org/frameworks/kirigami.git#commit=$_commit)
sha256sums=(SKIP)
validpgpkeys=('53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB') # David Faure <faure@kde.org>
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})
sha256sums=('3f7c1e6b048df4ab3d67fbef01a5ad1dd0289c9b158644668fba0225c050c050'
'SKIP')
validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB # David Faure <faure@kde.org>
E0A3EB202F8E57528E13E72FD7574483BB57B18D) # Jonathan Esk-Riddell <jr@jriddell.org>
options=(!buildflags staticlibs !strip !emptydirs)
#pkgver() {
# cd kirigami
# echo "$pkgver.r$(git rev-list --count HEAD).$(git rev-parse --short HEAD)"
#}
build() {
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}" \
-DECM_DIR:PATH=/usr/share/ECM/cmake \
-DBUILD_EXAMPLES=OFF \
@ -44,4 +36,6 @@ build() {
package() {
source android-env ${_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>
# Contributor (maintains regular package): Antonio Rojas <arojas@archlinux.org>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository.
_pkgname=kirigami2
_android_arch=armeabi-v7a
_pkg_arch=armv7a-eabi
_android_toolchain=arm-linux-androideabi
_android_platform=24
_prefix=/opt/android-libs/$_pkg_arch
_pkgname=kirigami
_android_arch=armv7a-eabi
pkgname=android-$_pkg_arch-$_pkgname
pkgver=5.74.0
pkgrel=1
pkgdesc="A QtQuick based components set (Android, $_pkg_arch)"
pkgname=android-${_android_arch}-${_pkgname}2
pkgver=6.0.0
pkgrel=2
pkgdesc="A QtQuick based components set (Android, $_android_arch)"
arch=('any')
url='https://community.kde.org/Frameworks'
license=(LGPL)
depends=("android-$_pkg_arch-qt5")
makedepends=('cmake' 'android-ndk' 'android-sdk' 'extra-cmake-modules')
conflicts=("android-$_pkgname-$_android_arch")
replaces=("android-$_pkgname-$_android_arch")
source=("https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz"{,.sig})
sha256sums=('9706915f219ef9394b030dbb24974d4fddef091008954cf75cf97cc97586e35f'
license=(LGPL-2.0-only LGPL-3.0-only)
depends=("android-$_android_arch-qt6"-{declarative,shadertools,svg,5compat})
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})
sha256sums=('3f7c1e6b048df4ab3d67fbef01a5ad1dd0289c9b158644668fba0225c050c050'
'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)
prepare() {
mkdir -p build
}
build() {
cd build
# note: needs workaround for https://gitlab.kitware.com/cmake/cmake/issues/18739 (currently provided outside of the PKGBUILD itself)
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 \
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
make VERBOSE=1
VERBOSE=1 cmake --build build-$_android_arch
}
package() {
cd build
make DESTDIR="$pkgdir" install
source android-env ${_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>
# Contributor (maintains regular package): Antonio Rojas <arojas@archlinux.org>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository.
_pkgname=kirigami2
_pkgname=kirigami
_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
pkgver=5.74.0
pkgrel=1
pkgdesc="A QtQuick based components set (Android, $_pkg_arch)"
pkgname=android-${_android_arch}-${_pkgname}2
pkgver=6.0.0
pkgrel=2
pkgdesc="A QtQuick based components set (Android, $_android_arch)"
arch=('any')
url='https://community.kde.org/Frameworks'
license=(LGPL)
depends=("android-$_pkg_arch-qt5")
makedepends=('cmake' 'android-ndk' 'android-sdk' 'extra-cmake-modules')
conflicts=("android-$_pkgname-$_android_arch")
replaces=("android-$_pkgname-$_android_arch")
source=("https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz"{,.sig})
sha256sums=('9706915f219ef9394b030dbb24974d4fddef091008954cf75cf97cc97586e35f'
license=(LGPL-2.0-only LGPL-3.0-only)
depends=("android-$_android_arch-qt6"-{declarative,shadertools,svg,5compat})
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})
sha256sums=('3f7c1e6b048df4ab3d67fbef01a5ad1dd0289c9b158644668fba0225c050c050'
'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)
prepare() {
mkdir -p build
}
build() {
cd build
# note: needs workaround for https://gitlab.kitware.com/cmake/cmake/issues/18739 (currently provided outside of the PKGBUILD itself)
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 \
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
make VERBOSE=1
VERBOSE=1 cmake --build build-$_android_arch
}
package() {
cd build
make DESTDIR="$pkgdir" install
source android-env ${_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>
# Contributor (maintains regular package): Antonio Rojas <arojas@archlinux.org>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository.
_pkgname=kirigami2
_pkgname=kirigami
_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
pkgver=5.74.0
pkgrel=1
pkgdesc="A QtQuick based components set (Android, $_pkg_arch)"
pkgname=android-${_android_arch}-${_pkgname}2
pkgver=6.0.0
pkgrel=2
pkgdesc="A QtQuick based components set (Android, $_android_arch)"
arch=('any')
url='https://community.kde.org/Frameworks'
license=(LGPL)
depends=("android-$_pkg_arch-qt5")
makedepends=('cmake' 'android-ndk' 'android-sdk' 'extra-cmake-modules')
conflicts=("android-$_pkgname-$_android_arch")
replaces=("android-$_pkgname-$_android_arch")
source=("https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz"{,.sig})
sha256sums=('9706915f219ef9394b030dbb24974d4fddef091008954cf75cf97cc97586e35f'
license=(LGPL-2.0-only LGPL-3.0-only)
depends=("android-$_android_arch-qt6"-{declarative,shadertools,svg,5compat})
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})
sha256sums=('3f7c1e6b048df4ab3d67fbef01a5ad1dd0289c9b158644668fba0225c050c050'
'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)
prepare() {
mkdir -p build
}
build() {
cd build
# note: needs workaround for https://gitlab.kitware.com/cmake/cmake/issues/18739 (currently provided outside of the PKGBUILD itself)
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 \
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
make VERBOSE=1
VERBOSE=1 cmake --build build-$_android_arch
}
package() {
cd build
make DESTDIR="$pkgdir" install
source android-env ${_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

@ -4,9 +4,9 @@
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository.
_pkgname=kirigami2
pkgname=mingw-w64-$_pkgname
pkgver=5.94.0
_pkgname=kirigami
pkgname=mingw-w64-${_pkgname}2
pkgver=6.0.0
pkgrel=1
pkgdesc="A QtQuick based components set (mingw-w64)"
arch=('any')
@ -14,10 +14,14 @@ url='https://community.kde.org/Frameworks'
license=(LGPL)
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)
source=("https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz"{,.sig})
sha256sums=('d7f27da3325feb339f4e1a3db78df44f05e4f505f36e15c7caeac04da0428e39'
source=(https://download.kde.org/stable/frameworks/${pkgver%.*}/$_pkgname-$pkgver.tar.xz{,.sig})
sha256sums=('ed0f56c89249fb92a9af99a94fd13542abbae4a8f1613aaaa2bfab87914b601a'
'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)
_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
pkgname=android-${_android_arch}-libpng
pkgver=1.6.40
pkgver=1.6.42
pkgrel=1
pkgdesc="A collection of routines used to create PNG format graphics (android)"
arch=('any')
@ -14,7 +14,7 @@ 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=('535b479b2467ff231a3ec6d92a525906fb8ef27978be4f66dbe05d3f3a01b3a1')
sha256sums=('c919dbc11f4c03b05aba3f8884d8eb7adfe3572ad228af972bb60057bdb48450')
build() {
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=static-compat-$_pkgname
pkgver=1.6.40
pkgver=1.6.42
pkgrel=1
pkgdesc='A collection of routines used to create PNG format graphics files'
arch=('x86_64')
@ -16,7 +16,7 @@ makedepends=('static-compat-configure')
options=(!emptydirs staticlibs)
validpgpkeys=('8048643BA2C840F4F92A195FF54984BFA16C640F') # Glenn Randers-Pehrson (mozilla) <glennrp@gmail.com>
source=("https://downloads.sourceforge.net/sourceforge/$_pkgname/$_pkgname-$pkgver.tar.xz")
sha256sums=('535b479b2467ff231a3ec6d92a525906fb8ef27978be4f66dbe05d3f3a01b3a1')
sha256sums=('c919dbc11f4c03b05aba3f8884d8eb7adfe3572ad228af972bb60057bdb48450')
build() {
source static-compat-environment

View File

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

View File

@ -3,9 +3,9 @@
pkgname=nginx-mod-cache-purge
pkgver=2.3
pkgrel=12
pkgrel=13
_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'
arch=('x86_64')

View File

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

View File

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

View File

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

View File

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

View File

@ -5,7 +5,7 @@ pkgname=nginx-mod-substitutions-filter
pkgver=0.6.4.115.e12e965
pkgrel=2
_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'
arch=('x86_64')

View File

@ -5,7 +5,7 @@ pkgname=nginx-mod-upload-progress
pkgver=0.9.2
pkgrel=12
_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'
arch=('x86_64')

View File

@ -5,7 +5,7 @@ pkgname=nginx-mod-upstream-fair
pkgver=0.1.3
pkgrel=11
_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'
arch=('x86_64')

View File

@ -5,7 +5,7 @@ _pkg_arch=aarch64
_android_arch=arm64-v8a
_android_platform_arch=arch-arm64
_pkgname=openssl
_pkgver=3.2.0
_pkgver=3.3.0
pkgname=android-$_pkg_arch-$_pkgname
# 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)"
arch=('any')
url='https://www.openssl.org'
license=('Apache')
license=('Apache-2.0')
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
depends=('android-sdk' 'android-ndk')
makedepends=('android-environment' 'android-sdk-build-tools')
conflicts=("android-$_pkgname-$_android_arch")
replaces=("android-$_pkgname-$_android_arch")
source=("https://www.openssl.org/source/openssl-${_pkgver}.tar.gz"{,.asc})
sha256sums=('14c826f07c7e433706fb5c69fa9e25dab95684844b4c962a2cf1bf183eb4690e'
sha256sums=('53e66b043322a606abf0087e7699a0e033a37fa13feb9742df35c3a33b18fb02'
'SKIP')
validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491'
'7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C'

View File

@ -5,7 +5,7 @@ _pkg_arch=armv7a-eabi
_android_arch=armeabi-v7a
_android_platform_arch=arch-arm
_pkgname=openssl
_pkgver=3.2.0
_pkgver=3.3.0
pkgname=android-$_pkg_arch-$_pkgname
# 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)"
arch=('any')
url='https://www.openssl.org'
license=('Apache')
license=('Apache-2.0')
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
depends=('android-sdk' 'android-ndk')
makedepends=('android-environment' 'android-sdk-build-tools')
conflicts=("android-$_pkgname-$_android_arch")
replaces=("android-$_pkgname-$_android_arch")
source=("https://www.openssl.org/source/openssl-${_pkgver}.tar.gz"{,.asc})
sha256sums=('14c826f07c7e433706fb5c69fa9e25dab95684844b4c962a2cf1bf183eb4690e'
sha256sums=('53e66b043322a606abf0087e7699a0e033a37fa13feb9742df35c3a33b18fb02'
'SKIP')
validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491'
'7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C'

View File

@ -5,7 +5,7 @@ _pkg_arch=x86-64
_android_arch=x86_64
_android_platform_arch=arch-x86_64
_pkgname=openssl
_pkgver=3.2.0
_pkgver=3.3.0
pkgname=android-$_pkg_arch-$_pkgname
# 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)"
arch=('any')
url='https://www.openssl.org'
license=('Apache')
license=('Apache-2.0')
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
depends=('android-sdk' 'android-ndk')
makedepends=('android-environment' 'android-sdk-build-tools')
conflicts=("android-$_pkgname-$_android_arch")
replaces=("android-$_pkgname-$_android_arch")
source=("https://www.openssl.org/source/openssl-${_pkgver}.tar.gz"{,.asc})
sha256sums=('14c826f07c7e433706fb5c69fa9e25dab95684844b4c962a2cf1bf183eb4690e'
sha256sums=('53e66b043322a606abf0087e7699a0e033a37fa13feb9742df35c3a33b18fb02'
'SKIP')
validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491'
'7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C'

View File

@ -5,7 +5,7 @@ _pkg_arch=x86
_android_arch=x86
_android_platform_arch=arch-x86
_pkgname=openssl
_pkgver=3.2.0
_pkgver=3.3.0
pkgname=android-$_pkg_arch-$_pkgname
# 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)"
arch=('any')
url='https://www.openssl.org'
license=('Apache')
license=('Apache-2.0')
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
depends=('android-sdk' 'android-ndk')
makedepends=('android-environment' 'android-sdk-build-tools')
conflicts=("android-$_pkgname-$_android_arch")
replaces=("android-$_pkgname-$_android_arch")
source=("https://www.openssl.org/source/openssl-${_pkgver}.tar.gz"{,.asc})
sha256sums=('14c826f07c7e433706fb5c69fa9e25dab95684844b4c962a2cf1bf183eb4690e'
sha256sums=('53e66b043322a606abf0087e7699a0e033a37fa13feb9742df35c3a33b18fb02'
'SKIP')
validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491'
'7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C'

View File

@ -4,7 +4,7 @@
# Contributor: Filip Brcic < brcha at gna dot org >
# Contributor: Martchus < martchus at gmx dot net >
_pkgver=3.2.0
_pkgver=3.3.0
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
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)"
arch=('any')
url='https://www.openssl.org'
license=('Apache')
license=('Apache-2.0')
depends=('mingw-w64-zlib')
makedepends=('mingw-w64-gcc'
'mingw-w64-environment'
'perl')
options=('!strip' 'staticlibs' '!buildflags' '!lto')
source=("https://www.openssl.org/source/openssl-${_pkgver}.tar.gz"{,.asc})
sha256sums=('14c826f07c7e433706fb5c69fa9e25dab95684844b4c962a2cf1bf183eb4690e'
sha256sums=('53e66b043322a606abf0087e7699a0e033a37fa13feb9742df35c3a33b18fb02'
'SKIP')
validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491'
'7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C'

View File

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

View File

@ -5,7 +5,7 @@
_reponame=passwordfile
pkgname=passwordfile
pkgver=5.0.10
pkgver=5.0.11
pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
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=
url="https://github.com/Martchus/${_reponame}"
source=("${pkgname}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('7d4b8095c172ae48e19651ef561aa3b461b4f008fc1c4b378368532f4009a472')
sha256sums=('b9a47be7669eb46c7951e928dbbfe17b6d818b8a438e8549da87d692440344da')
build() {
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"

View File

@ -6,7 +6,7 @@
_name=passwordfile
_reponame=passwordfile
pkgname=$_name-doc
pkgver=5.0.10
pkgver=5.0.11
pkgrel=1
arch=('any')
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')
url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('7d4b8095c172ae48e19651ef561aa3b461b4f008fc1c4b378368532f4009a472')
sha256sums=('b9a47be7669eb46c7951e928dbbfe17b6d818b8a438e8549da87d692440344da')
build() {
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"

View File

@ -6,7 +6,7 @@
_reponame=passwordfile
pkgname=mingw-w64-passwordfile
_name=${pkgname#mingw-w64-}
pkgver=5.0.10
pkgver=5.0.11
pkgrel=1
arch=('any')
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')
url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('7d4b8095c172ae48e19651ef561aa3b461b4f008fc1c4b378368532f4009a472')
sha256sums=('b9a47be7669eb46c7951e928dbbfe17b6d818b8a438e8549da87d692440344da')
options=(!buildflags staticlibs !strip !emptydirs)
_architectures=('i686-w64-mingw32' 'x86_64-w64-mingw32')

View File

@ -6,7 +6,7 @@
_reponame=passwordfile
pkgname=static-compat-passwordfile
_name=${pkgname#static-compat-}
pkgver=5.0.10
pkgver=5.0.11
pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
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=
url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('7d4b8095c172ae48e19651ef561aa3b461b4f008fc1c4b378368532f4009a472')
sha256sums=('b9a47be7669eb46c7951e928dbbfe17b6d818b8a438e8549da87d692440344da')
build() {
check_buildoption ccache y && ccache_args='

View File

@ -4,21 +4,21 @@
# you also find the URL of a binary repository.
# 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
pkgname=passwordmanager
pkgver=4.1.13
pkgver=4.2.0
pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
pkgdesc='A simple password store using AES-256-CBC encryption via OpenSSL'
license=('GPL')
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')
url="https://github.com/Martchus/${_reponame}"
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")
if [[ $_quick_gui == ON ]]; then

View File

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

View File

@ -7,7 +7,7 @@ _reponame=passwordmanager
pkgname=mingw-w64-passwordmanager-qt6
_name=${pkgname#mingw-w64-}
_name=${_name%-qt6}
pkgver=4.1.13
pkgver=4.2.0
pkgrel=1
arch=('any')
pkgdesc='A simple password store using AES-256-CBC encryption via OpenSSL (mingw-w64)'
@ -16,7 +16,7 @@ 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')
url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('68e44195cfbebef3df3404f0f552880e41e43dc16380d50c85052dff1d870e7c')
sha256sums=('018dc831794182a66f4820ede7e399cee7633107542451206062bb01500541e0')
options=(!buildflags staticlibs !strip !emptydirs)
_architectures=('i686-w64-mingw32' 'x86_64-w64-mingw32')

View File

@ -6,7 +6,7 @@
_reponame=passwordmanager
pkgname=mingw-w64-passwordmanager
_name=${pkgname#mingw-w64-}
pkgver=4.1.13
pkgver=4.2.0
pkgrel=1
arch=('any')
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')
url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('68e44195cfbebef3df3404f0f552880e41e43dc16380d50c85052dff1d870e7c')
sha256sums=('018dc831794182a66f4820ede7e399cee7633107542451206062bb01500541e0')
options=(!buildflags staticlibs !strip !emptydirs)
_architectures=('i686-w64-mingw32' 'x86_64-w64-mingw32')
_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')
build() {
@ -29,7 +29,6 @@ build() {
declare -A _config_flags=(
[shared]='
-DBUILD_SHARED_LIBS:BOOL=ON
-DQUICK_GUI:BOOL=ON
'
[static]='
-DBUILD_SHARED_LIBS:BOOL=OFF

View File

@ -4,29 +4,29 @@
# you also find the URL of a binary repository.
# 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
_cfg=qt6
pkgname=passwordmanager-$_cfg
_name=${pkgname%-$_cfg}
pkgver=4.1.13
pkgver=4.2.0
pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
pkgdesc='A simple password store using AES-256-CBC encryption via OpenSSL'
license=('GPL')
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')
url="https://github.com/Martchus/${_reponame}"
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")
if [[ $_quick_gui == ON ]]; then
depends+=('qt6-declarative')
makedepends+=('kirigami2')
optdepends+=('kirigami2: Qt Quick GUI')
makedepends+=('kirigami')
optdepends+=('kirigami: Qt Quick GUI')
else
makedepends+=('qt6-declarative')
fi
@ -41,6 +41,7 @@ build() {
-DCONFIGURATION_PACKAGE_SUFFIX_QTUTILITIES:STRING="-$_cfg" \
-DPASSWORD_MANAGER_CONFIGURATION_TARGET_SUFFIX:STRING="$_cfg" \
-DQT_PACKAGE_PREFIX:STRING='Qt6' \
-DKF_PACKAGE_PREFIX:STRING='KF6' \
-DBUILTIN_TRANSLATIONS:BOOL=ON \
-DBUILTIN_TRANSLATIONS_OF_QT:BOOL=OFF \
-DQUICK_GUI="$_quick_gui" .

View File

@ -9,7 +9,7 @@ _quick_gui=${PASSWORD_MANAGER_QUICK_GUI:-OFF}
_reponame=passwordmanager
pkgname=static-compat-passwordmanager
_name=${pkgname#static-compat-}
pkgver=4.1.13
pkgver=4.2.0
pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
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')
url="https://github.com/Martchus/${_reponame}"
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")
if [[ $_quick_gui == ON ]]; then

View File

@ -1,9 +1,9 @@
_pkgname=pianobooster
pkgname=pianobooster-custom
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
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')
optdepends=('qt6-translations')
conflicts=('pianobooster')
@ -26,7 +26,7 @@ build () {
-DUSE_JACK=ON \
-DWITH_INTERNAL_FLUIDSYNTH=ON \
-DCONFIGURATION_PACKAGE_SUFFIX=-git \
-DCONFIGURATION_PACKAGE_SUFFIX_QTUTILITIES=-qt6-git \
-DCONFIGURATION_PACKAGE_SUFFIX_QTUTILITIES=-git \
-DBUILTIN_TRANSLATIONS:BOOL=ON \
-DQT_PACKAGE_PREFIX=Qt6 \
-DWITH_MAN=ON

View File

@ -1,8 +1,8 @@
_pkgname='pianobooster'
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)'
pkgver=1.0.1
pkgrel=1
pkgver=1392.86ce9b0
pkgrel=2
depends=()
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'

View File

@ -4,7 +4,7 @@
# Contributor: Ben Duffield <bavardage AT archlinux.us>
pkgname=pocketsphinx
pkgver=5.0.2
pkgver=5.0.3
pkgrel=1
pkgdesc='A small speech recognizer'
arch=('i686' 'x86_64')
@ -13,7 +13,7 @@ license=('BSD' 'MIT')
makedepends=('cmake' 'ninja' 'gst-plugins-base-libs')
optdepends=('gst-plugins-base-libs: GStreamer plugin')
source=("$pkgname-$pkgver.tar.gz::https://github.com/cmusphinx/pocketsphinx/archive/refs/tags/v$pkgver.tar.gz")
sha256sums=('c2c58aa702195c46c44575fb9ed5790e749ab647df648b4557cc963aeac638b2')
sha256sums=('5d952cb1c22e0a51ed1fafc36871612df38f145df64fa017fdc8074532ec007f')
prepare() {
cd $pkgname-$pkgver

View File

@ -2,7 +2,7 @@
# Contributor: ant32 <antreimer@gmail.com>
pkgname=mingw-w64-postgresql
pkgver=16.1
pkgver=16.2
pkgrel=1
pkgdesc='Sophisticated object-relational DBMS (mingw-w64)'
arch=('any')
@ -17,7 +17,7 @@ replaces=('mingw-w64-postgresql-libs')
source=("http://ftp.postgresql.org/pub/source/v${pkgver}/postgresql-${pkgver}.tar.bz2"
'0001-Use-.dll.a-as-extension-for-import-libraries.patch'
'0002-Use-pthread-library-from-MinGW.patch')
sha256sums=('ce3c4d85d19b0121fe0d3f8ef1fa601f71989e86f8a66f7dc3ad546dd5564fec'
sha256sums=('446e88294dbc2c9085ab4b7061a646fa604b4bec03521d5ea671c2e5ad9b2952'
'44b1cceb0f5ef792acc00e9415dc2f7f777747199078ce4c8704d3420de52cf5'
'72e627524dd4994d85db43ea02d71b2c9983037306a85822f744e76b40f40f2f')

View File

@ -0,0 +1,42 @@
# 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=qqc2-breeze-style
_android_arch=aarch64
pkgname=android-${_android_arch}-${_pkgname}
pkgver=6.0.2
_dirver=$(echo $pkgver | cut -d. -f1-3)
pkgrel=1
pkgdesc="Applications useful for Plasma development (Android, $_android_arch)"
arch=('any')
url='https://kde.org/plasma-desktop/'
license=(LGPL-2.0-or-later)
depends=("android-$_android_arch"-{qt6-declarative,kcoreaddons,kguiaddons,kconfig,kirigami2,kcolorscheme,kquickcharts})
makedepends=('cmake' 'android-ndk' 'android-sdk' 'android-cmake' 'extra-cmake-modules' 'ninja' 'qt6-base' 'qt6-declarative' 'qt6-tools')
source=(https://download.kde.org/stable/plasma/$_dirver/$_pkgname-$pkgver.tar.xz{,.sig})
sha256sums=('904e6398aee2ad31291c027ab096a197c942eb4a73eef7f4de4282cbca6b325d'
'SKIP')
validpgpkeys=('E0A3EB202F8E57528E13E72FD7574483BB57B18D' # Jonathan Esk-Riddell <jr@jriddell.org>
'0AAC775BB6437A8D9AF7A3ACFE0784117FBCE11D' # Bhushan Shah <bshah@kde.org>
'D07BD8662C56CB291B316EB2F5675605C74E02CF' # David Edmundson <davidedmundson@kde.org>
'1FA881591C26B276D7A5518EEAAF29B42A678C20') # Marco Martin <notmart@gmail.com>
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

@ -10,14 +10,14 @@
_qt_module=qt3d
pkgname=mingw-w64-qt5-3d-static
pkgver=5.15.12
pkgver=5.15.13
pkgrel=1
arch=('any')
pkgdesc="C++ and QML APIs for easy inclusion of 3D graphics (mingw-w64)"
depends=('mingw-w64-qt5-declarative-static' 'mingw-w64-assimp')
makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'mingw-w64-vulkan-headers' 'assimp')
license=('GPL3' 'LGPL3' 'FDL' 'custom')
_commit=e1b1a0d2970fd384bd52c734a72536d8452ad070
_commit=67bee4599a28e1cadc14ed9ea4adc7061e250b90
_basever=${pkgver%%+*}
makedepends+=('git')
options=('!strip' '!buildflags' 'staticlibs')

View File

@ -1 +1 @@
SKIP
cf08bc14ebdf811643a0d07e1d7168fdc2d46d40d95041d27707ddf51fcc6783

View File

@ -10,14 +10,14 @@
_qt_module=qt3d
pkgname=mingw-w64-qt5-3d
pkgver=5.15.12
pkgver=5.15.13
pkgrel=1
arch=('i686' 'x86_64')
pkgdesc="C++ and QML APIs for easy inclusion of 3D graphics (mingw-w64)"
depends=('mingw-w64-qt5-declarative' 'mingw-w64-assimp')
makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'mingw-w64-vulkan-headers' 'assimp')
license=('GPL3' 'LGPL3' 'FDL' 'custom')
_commit=e1b1a0d2970fd384bd52c734a72536d8452ad070
_commit=67bee4599a28e1cadc14ed9ea4adc7061e250b90
_basever=${pkgver%%+*}
makedepends+=('git')
options=('!strip' '!buildflags' 'staticlibs')

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