diff options
author | Callum Parsey | 2023-06-24 12:48:15 +0930 |
---|---|---|
committer | Callum Parsey | 2023-06-24 12:48:15 +0930 |
commit | f7fc7cf28a86d308be3c4b26b60889f1db486ccd (patch) | |
tree | 6f50b2c19aadab6052323bd8b166196e895065b8 | |
parent | 71cef010b26b753ef567b935d8c4317e44e728cc (diff) | |
download | aur-f7fc7cf28a86d308be3c4b26b60889f1db486ccd.tar.gz |
Update to 0.7.2, clean up to meet guidelines
I've made a bunch of changes to the `PKGBUILD` script to make it more
closely meet the Arch Linux packaging guidelines.
- The package description is now less than 100 characters in length. It
should be below 80 according to the guidelines, but my understanding
is that since this is a modification of an official Arch package, it
should include the official package's description.
- The `license` has been changed from `LGPL2` to `LGPL2.1`. The former
is not listed in `/usr/share/licenses/common` which produces an error
in `namcap`. And the latter is more correct anyway.
- `gcc` and `make` have been removed from `makedepends` because we are
allowed to assume that all `base-devel` packages are already
installed. `git` has also been removed from `makedepends` because it
is not needed during the actual package build process (only to clone
the AUR Git repository).
- Inversely, I've added all transient dependencies (dependencies which
would otherwise automatically be pulled by `pacman` due to it being a
dependency further down the tree) to `depends` as per recent
guidelines and `namcap` output. This means that, in addition to the
top-level dependencies `libolm`, `qt5-multimedia` and
`qtkeychain-qt5` we also need to explicitly specify `gcc-libs`,
`glibc` and `openssl` (and `qt5-base` but that was already present).
I am honestly yet to see any other AUR package which explicitly lists
`glibc` as a dependency, and interestingly enough the official
`libquotient` package doesn't list it either, but as far as I can
tell from reading BBS/Wiki packages, I am indeed supposed to do this.
See https://bbs.archlinux.org/viewtopic.php?id=249846
- Added the soname (`libQuotient.so=0.7-64`) to `provides` to help
packages which look for sonames instead of Arch package names. The
soname is generated from the first two digits of `pkgver`.
- Switched from `sha512sums` to `sha256sums` so that I can just copy
the source checksum from the official Arch package when updating.
- Adjusted `source` to use `pkgver` so that bumping `pkgver` is enough
to cause the new source version to be downloaded instead of the old.
- Use `cmake -B <build dir> -S <source dir>` instead of manually
creating directories, as per the CMake packaging guidelines.
- Use `cmake --build` and `cmake --install` instead of manually calling
`make` as per the CMake packaging guidelines
- Remove `CMAKE_INSTALL_LIBDIR` because it is no longer needed (I don't
know if it was ever needed at all)
- Change `CMAKE_BUILD_TYPE` from `Release` to `None` as per the CMake
packaging guidelines. This causes CMake to use the system-provided
build settings (i.e. those specified in `/etc/makepkg.conf`)
verbatim, without adding additional optimisations or debugging
information.
- Note that the CMake changes listed above have already been applied to
the official `libquotient` package.
- Use `pkgver` when accessing the source directory directly, again so
that only `pkgver` has to be updated to make the new version work.
-rw-r--r-- | .SRCINFO | 19 | ||||
-rw-r--r-- | PKGBUILD | 44 |
2 files changed, 29 insertions, 34 deletions
@@ -1,22 +1,23 @@ pkgbase = libquotient-encryption - pkgdesc = A Qt5 library to write cross-platform clients for Matrix, with experimental encryption support enabled - pkgver = 0.7.1 + pkgdesc = A Qt library to write cross-platform clients for Matrix (with experimental encryption support) + pkgver = 0.7.2 pkgrel = 1 url = https://github.com/quotient-im/libQuotient arch = x86_64 arch = aarch64 - license = LGPL2 - makedepends = git + license = LGPL2.1 makedepends = cmake - makedepends = make - makedepends = gcc + depends = gcc-libs + depends = glibc + depends = libolm + depends = openssl depends = qt5-base depends = qt5-multimedia depends = qtkeychain-qt5 - depends = libolm provides = libquotient + provides = libQuotient.so=0.7-64 conflicts = libquotient - source = libquotient-encryption.tar.gz::https://github.com/quotient-im/libQuotient/archive/refs/tags/0.7.1.tar.gz - sha512sums = 88819cafb49712d53c692008be69ea1fc01ca1ac6aedc15696eba2f830956660d185fb07273d50c7dc3e9208314ac24838746d5d9e70b3aad7fccbd15fd7c545 + source = https://github.com/quotient-im/libQuotient/archive/0.7.2/libquotient-encryption-0.7.2.tar.gz + sha256sums = 62ff42c8fe321e582ce8943417c1d815ab3f373a26fa0d99a5926e713f6a9382 pkgname = libquotient-encryption @@ -1,37 +1,31 @@ +# Maintainer: Callum Parsey <callum@neoninteger.au> +# Contributor: [object Object] <objekt-Objekt@proton.me> + pkgname=libquotient-encryption -pkgver=0.7.1 +pkgver=0.7.2 pkgrel=1 -pkgdesc="A Qt5 library to write cross-platform clients for Matrix, with experimental encryption support enabled" +pkgdesc="A Qt library to write cross-platform clients for Matrix (with experimental encryption support)" arch=(x86_64 aarch64) url="https://github.com/quotient-im/libQuotient" -license=("LGPL2") -depends=("qt5-base" "qt5-multimedia" "qtkeychain-qt5" "libolm") -makedepends=("git" "cmake" "make" "gcc") -provides=("libquotient") +license=("LGPL2.1") +depends=("gcc-libs" "glibc" "libolm" "openssl" "qt5-base" "qt5-multimedia" "qtkeychain-qt5") +makedepends=("cmake") +provides=("libquotient" "libQuotient.so=${pkgver%.*}-64") conflicts=("libquotient") -source=("${pkgname}.tar.gz::https://github.com/quotient-im/libQuotient/archive/refs/tags/0.7.1.tar.gz") -sha512sums=("88819cafb49712d53c692008be69ea1fc01ca1ac6aedc15696eba2f830956660d185fb07273d50c7dc3e9208314ac24838746d5d9e70b3aad7fccbd15fd7c545") - -prepare() { - mkdir -p "build" -} +source=("https://github.com/quotient-im/libQuotient/archive/${pkgver}/${pkgname}-${pkgver}.tar.gz") +sha256sums=("62ff42c8fe321e582ce8943417c1d815ab3f373a26fa0d99a5926e713f6a9382") build() { - cd "build" - cmake ../"libQuotient-0.7.1" \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=lib \ - -DCMAKE_BUILD_TYPE=Release \ - -DBUILD_SHARED_LIBS=1 \ - -DQuotient_ENABLE_E2EE=ON + cmake -B build -S "libQuotient-${pkgver}" \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=None \ + -DBUILD_SHARED_LIBS=1 \ + -DQuotient_ENABLE_E2EE=ON - make -j $(nproc) + cmake --build build } package() { - cd "build" - make -j $(nproc) DESTDIR="${pkgdir}" install - - cd "../libQuotient-0.7.1" - install -Dm 644 "README.md" "${pkgdir}/usr/share/doc/${pkgname}/README.md" + DESTDIR="${pkgdir}" cmake --install build + install -Dm 644 "libQuotient-${pkgver}/README.md" "${pkgdir}/usr/share/doc/${pkgname}/README.md" } |