Date: Wednesday, October 12, 2022 @ 10:20:24
  Author: arojas
Revision: 1327794

upgpkg: gap 4.12.0-5: Merge doc package (it's only a 5% size increase), get 
package versions from the upstream provided json file

Modified:
  gap/trunk/PKGBUILD

----------+
 PKGBUILD |   40 +++++++++++++++++++---------------------
 1 file changed, 19 insertions(+), 21 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD    2022-10-12 10:08:38 UTC (rev 1327793)
+++ PKGBUILD    2022-10-12 10:20:24 UTC (rev 1327794)
@@ -3,18 +3,22 @@
 # Contributor: Rémy Oudompheng <[email protected]>
 
 pkgbase=gap
-pkgname=(gap gap-doc gap-packages)
+pkgname=(gap gap-packages)
 pkgver=4.12.0
-pkgrel=4
+pkgrel=5
 pkgdesc='Groups, Algorithms, Programming: a system for computational discrete 
algebra'
 arch=(x86_64)
 url='https://www.gap-system.org/'
 license=(GPL)
 
source=(https://github.com/gap-system/gap/releases/download/v$pkgver/$pkgbase-$pkgver.tar.gz
-        https://github.com/gap-system/gap/commit/dce6fa96.patch)
+        
https://github.com/gap-system/gap/releases/download/v$pkgver/package-infos.json.gz
+        https://github.com/gap-system/gap/commit/dce6fa96.patch
+        https://github.com/gap-system/gap/commit/c57a07a3.patch)
 sha256sums=('6005d0c0316fe8803d84681f30be64eace83a9542f975f5cb3dedfadd4391849'
-            'd8a362a6c1d27f2925d8b3f8eddc9aaafac1699fb568a035768d039b34ba6eb3')
-makedepends=(libxaw givaro mpfi cddlib boost libsemigroups c-xsc zeromq fplll 
wget chrpath fmt eigen normaliz)
+            'abca41d8ec8341d39df99291136c465217fb14f9029cbbdd6378bc37499eac7c'
+            'd8a362a6c1d27f2925d8b3f8eddc9aaafac1699fb568a035768d039b34ba6eb3'
+            '6a66c31eada7a0da5f6c716a8f7ea90dceb2d41c8ad97af2e7d5b1415dbe210a')
+makedepends=(libxaw givaro mpfi cddlib boost libsemigroups c-xsc zeromq fplll 
wget chrpath fmt eigen normaliz jq)
 
 prepare() {
   cd gap-$pkgver
@@ -21,6 +25,8 @@
 
 # Fix including headers when no garbage collector is specified
   patch -p1 < ../dce6fa96.patch
+# Fix make install trying to install non-existant docs
+  patch -p1 < ../c57a07a3.patch
 # Use system libsemigroups
   sed -e 's|test "$with_external_libsemigroups" = yes|true|' -i 
pkg/semigroups/configure
 # Use system normaliz
@@ -56,9 +62,12 @@
 package_gap() {
   depends=(gmp zlib)
   optdepends=('gap-packages: extra packages' 'gap-doc: documentation')
+  conflicts=(gap-doc)
+  provides=(gap-doc)
+  replaces=(gap-doc)
   cd gap-$pkgver
 
-  make DESTDIR="$pkgdir" install-bin install-gaproot install-sysinfo 
install-headers install-libgap
+  make DESTDIR="$pkgdir" install
 
   for _pkg in ${_standardpkgs[@]}; do
     cp -r pkg/$_pkg "$pkgdir"/usr/share/gap/pkg
@@ -65,23 +74,13 @@
   done
 
 # Add provides for bundled packages
-  for _f in "$pkgdir"/usr/share/gap/pkg/*/PackageInfo.g; do
-    _pkg=$(cat $_f | sed -ze 's|:=\n|:=|g' | grep PackageName | tr '\n' ' ' | 
cut -d '"' -f2 | tr '[:upper:]' '[:lower:]')
-    _ver=$(cat $_f | sed -ze 's|:=\n|:=|g' | grep Version | tr '\n' ' ' | cut 
-d '"' -f2)
+  for _pkg in $(ls "$pkgdir"/usr/share/gap/pkg); do
+    _ver=$(jq .[\"${_pkg}\"].Version "$srcdir"/package-infos.json | sed -e 
's/"//g')
     _prov="gap-$_pkg=${_ver/-/.}"
     provides+=($_prov)
   done
 }
 
-package_gap-doc() {
-  depends=(gap)
-  pkgdesc="Documentation for GAP"
-  cd gap-$pkgver
-
-  mkdir -p "$pkgdir"/usr/lib/gap
-  cp -r doc "$pkgdir"/usr/lib/gap
-}
-
 package_gap-packages() {
   depends=(gap)
   optdepends=('libxaw: xgap package' 'c-xsc: float package' 'mpfi: float 
package'
@@ -122,9 +121,8 @@
   rm -r "$pkgdir"/usr/lib/gap/pkg/log
 
 # Add provides for bundled packages
-  for _f in "$pkgdir"/usr/lib/gap/pkg/*/PackageInfo.g; do
-    _pkg=$(cat $_f | sed -ze 's|:=\n|:=|g' | grep PackageName | tr '\n' ' ' | 
cut -d '"' -f2 | tr '[:upper:]' '[:lower:]')
-    _ver=$(cat $_f | sed -ze 's|:=\n|:=|g' | grep Version | tr '\n' ' ' | cut 
-d '"' -f2)
+  for _pkg in $(ls "$pkgdir"/usr/lib/gap/pkg); do
+    _ver=$(jq .[\"${_pkg}\"].Version "$srcdir"/package-infos.json | sed -e 
's/"//g')
     _prov="gap-$_pkg=${_ver/-/.}"
     provides+=($_prov)
   done

Reply via email to