Package Details: openssl-gost-engine-git r507.aba6613-3

Git Clone URL: https://aur.archlinux.org/openssl-gost-engine-git.git (read-only, click to copy)
Package Base: openssl-gost-engine-git
Description: A reference implementation of the Russian GOST crypto algorithms for OpenSSL
Upstream URL: https://github.com/gost-engine/engine/
Keywords: engine gost openssl ГОСТ
Licenses: Apache
Conflicts: gost-engine, openssl-gost-engine
Provides: openssl-gost-engine
Submitter: dimytch
Maintainer: None
Last Packager: dimytch
Votes: 1
Popularity: 0.000000
First Submitted: 2021-09-30 19:40 (UTC)
Last Updated: 2021-11-27 14:19 (UTC)

Latest Comments

patrakov commented on 2023-06-03 01:13 (UTC)

Despite what the comment below says, it is a bad idea to build with OpenSSL 3.0. The reason is that the most important functionality (digital signatures and their verification) is then missing. Instead, the PKGBUILD needs to be modified to build the engine against OpenSSL 1.1.

txtsd commented on 2023-03-20 06:55 (UTC)

Please switch to master branch so it builds with OpenSSL 3.0

From 9adad92c264b9b6acf20de233d63a1dcbf98bace Mon Sep 17 00:00:00 2001
From: txtsd <code@ihavea.quest>
Date: Mon, 20 Mar 2023 12:21:23 +0530
Subject: [PATCH] upgpkg: openssl-gost-engine-git r757.2b22503-1

Signed-off-by: txtsd <code@ihavea.quest>
---
 .SRCINFO   | 10 ++++++----
 .gitignore |  7 +++++++
 PKGBUILD   | 53 ++++++++++++++++++++++++++++++-----------------------
 3 files changed, 43 insertions(+), 27 deletions(-)
 create mode 100644 .gitignore

diff --git a/.SRCINFO b/.SRCINFO
index 2b3af11..e6ddad9 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,12 +1,12 @@
 pkgbase = openssl-gost-engine-git
    pkgdesc = A reference implementation of the Russian GOST crypto algorithms for OpenSSL
-   pkgver = r507.aba6613
-   pkgrel = 3
+   pkgver = r757.2b22503
+   pkgrel = 1
    url = https://github.com/gost-engine/engine/
    install = openssl-gost-engine.install
    arch = i686
    arch = x86_64
-   license = apache
+   license = Apache
    makedepends = git
    makedepends = cmake
    depends = perl
@@ -16,11 +16,13 @@ pkgbase = openssl-gost-engine-git
    conflicts = openssl-gost-engine
    conflicts = gost-engine
    backup = etc/ssl/gost.cnf
-   source = git+https://github.com/gost-engine/engine.git#branch=openssl_1_1_1
+   source = git+https://github.com/gost-engine/engine.git
+   source = git+https://github.com/provider-corner/libprov.git#commit=8a126e0
    source = gost.cnf
    source = example-openssl.cnf
    source = openssl-gost-engine.install
    sha512sums = SKIP
+   sha512sums = SKIP
    sha512sums = 72baef8de46462399f591e4aba73f7f910c6d27f14814cf54764a6ca11851d3b69a138475fc677990a621049dec9939eb4f83be5dcf07f1e85f24b97c90332ad
    sha512sums = b78d96d14edce1be96fab96da0e97e4c94c59e311428e2f84d77864366e7b3bbaaf6a8192d275552bb578075a5aada2200be83bec256ceb9aa057f0a892d6f8b
    sha512sums = 1083718c4aad31c1b41743c77bae202f2746e0610e2f7c7891f70b97cff52b9ffd5afdd82edf41a991492425ac823d14949a35d9fff375a9963fbc2e645461ad
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..41ab23b
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,7 @@
+pkg/
+src/
+engine/
+libprov/
+
+*.pkg.*
+*.tar.*
diff --git a/PKGBUILD b/PKGBUILD
index 1cb115a..757603d 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,12 +1,13 @@
 # Maintainer: Dimytch <aspamkiller from yandex point ru>
+# Contributor: txtsd <aur.archlinux@ihavea.quest>

 pkgname=openssl-gost-engine-git
-pkgver=r507.aba6613
-pkgrel=3
+pkgver=r757.2b22503
+pkgrel=1
 pkgdesc="A reference implementation of the Russian GOST crypto algorithms for OpenSSL"
 arch=('i686' 'x86_64')
 url="https://github.com/gost-engine/engine/"
-license=('apache')
+license=('Apache')
 depends=('perl' 'openssl')
 makedepends=('git' 'cmake')
 optdepends=('ca-certificates')
@@ -16,33 +17,39 @@ conflicts=(
   'gost-engine'
 )
 source=(
-  "git+https://github.com/gost-engine/engine.git#branch=openssl_1_1_1"
+  "git+https://github.com/gost-engine/engine.git"
+  "git+https://github.com/provider-corner/libprov.git#commit=8a126e0"
   "gost.cnf"
   "example-openssl.cnf"
   "openssl-gost-engine.install"
 )
-sha512sums=(
-  SKIP
-  '72baef8de46462399f591e4aba73f7f910c6d27f14814cf54764a6ca11851d3b69a138475fc677990a621049dec9939eb4f83be5dcf07f1e85f24b97c90332ad'
-  'b78d96d14edce1be96fab96da0e97e4c94c59e311428e2f84d77864366e7b3bbaaf6a8192d275552bb578075a5aada2200be83bec256ceb9aa057f0a892d6f8b'
-  '1083718c4aad31c1b41743c77bae202f2746e0610e2f7c7891f70b97cff52b9ffd5afdd82edf41a991492425ac823d14949a35d9fff375a9963fbc2e645461ad'
-)
+sha512sums=('SKIP'
+            'SKIP'
+            '72baef8de46462399f591e4aba73f7f910c6d27f14814cf54764a6ca11851d3b69a138475fc677990a621049dec9939eb4f83be5dcf07f1e85f24b97c90332ad'
+            'b78d96d14edce1be96fab96da0e97e4c94c59e311428e2f84d77864366e7b3bbaaf6a8192d275552bb578075a5aada2200be83bec256ceb9aa057f0a892d6f8b'
+            '1083718c4aad31c1b41743c77bae202f2746e0610e2f7c7891f70b97cff52b9ffd5afdd82edf41a991492425ac823d14949a35d9fff375a9963fbc2e645461ad')
 install='openssl-gost-engine.install'
 backup=(
   'etc/ssl/gost.cnf'
 )

 pkgver(){
-  cd "$srcdir/engine"
+  cd "${srcdir}/engine"
   printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
 }
+
 prepare() {
-  cd "$srcdir/engine"
+  cd "${srcdir}/engine"
+
+  git submodule init
+  git config submodule.libs/libprov.url "${srcdir}/libprov"
+  git -c protocol.file.allow=always submodule update
+
   mkdir -p build
 }

 build() {
-  cd "$srcdir/engine/build"
+  cd "${srcdir}/engine/build"
   cmake .. \
     -DCMAKE_BUILD_TYPE=Release \
     -DCMAKE_INSTALL_PREFIX=/usr
@@ -50,19 +57,19 @@ build() {
 }

 check() {
-  cd "$srcdir/engine/build"
-  make test
+  cd "${srcdir}/engine/build"
+  ctest .
 }

 package() {
-  cd "$srcdir/engine/build"
+  cd "${srcdir}/engine/build"

-  DESTDIR="$pkgdir" cmake --build . --target install --config Release
-  install -Dm0644 "$srcdir/gost.cnf" -t "$pkgdir/etc/ssl"
+  DESTDIR="${pkgdir}" cmake --build . --target install --config Release
+  install -Dm0644 "${srcdir}/gost.cnf" -t "${pkgdir}/etc/ssl"

-  mkdir -p -m0644 "$pkgdir/usr/share/doc/openssl-gost-engine"
-  install -m0644 "$srcdir/engine/INSTALL.md" \
-                 "$srcdir/engine/README.gost" \
-                 "$srcdir/engine/README.md" \
-                 "$pkgdir/usr/share/doc/openssl-gost-engine"
+  mkdir -p -m0644 "${pkgdir}/usr/share/doc/openssl-gost-engine"
+  install -m0644 "${srcdir}/engine/INSTALL.md" \
+                 "${srcdir}/engine/README.gost" \
+                 "${srcdir}/engine/README.md" \
+                 "${pkgdir}/usr/share/doc/openssl-gost-engine"
 }
-- 
2.40.0

zxalexis commented on 2023-02-22 20:24 (UTC)

-Werror option ruines build. as a quick fix add sed -i -e 's/-Werror/-Wno-error=deprecated/' $srcdir/engine/CMakeLists.txt as a first line in build() section