Date: Monday, February 6, 2023 @ 02:44:13
  Author: grawlinson
Revision: 1393811

archrelease: copy trunk to community-x86_64

Added:
  zydis/repos/community-x86_64/
  zydis/repos/community-x86_64/PKGBUILD
    (from rev 1393810, zydis/trunk/PKGBUILD)

----------+
 PKGBUILD |   72 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 72 insertions(+)

Copied: zydis/repos/community-x86_64/PKGBUILD (from rev 1393810, 
zydis/trunk/PKGBUILD)
===================================================================
--- community-x86_64/PKGBUILD                           (rev 0)
+++ community-x86_64/PKGBUILD   2023-02-06 02:44:13 UTC (rev 1393811)
@@ -0,0 +1,72 @@
+# Maintainer: George Rawlinson <[email protected]>
+# Contributor: Thibaut PĂ©rami <[email protected]>
+
+pkgname=zydis
+pkgver=4.0.0
+pkgrel=2
+pkgdesc='Fast and lightweight x86/x86-64 disassembler and code generation 
library'
+arch=('x86_64')
+url='https://zydis.re'
+license=('MIT')
+depends=('gcc-libs' 'zycore-c')
+makedepends=('git' 'cmake' 'ruby-ronn-ng' 'doxygen')
+checkdepends=('python')
+_commit='1ba75aeefae37094c7be8eba07ff81d4fe0f1f20'
+source=("git+https://github.com/zyantific/zydis.git#commit=$_commit";)
+b2sums=('SKIP')
+
+pkgver() {
+  cd "$pkgname"
+
+  git describe --tags | sed -e 's/^v//' -e 's/-/./g'
+}
+
+build() {
+  # https://archlinux.org/todo/lto-fat-objects/
+  export CFLAGS+=" -ffat-lto-objects"
+
+  # https://github.com/zyantific/zydis#-fpic-for-shared-library-builds
+  cmake \
+    -S "$pkgname" \
+    -B build \
+    -W no-dev \
+    -D CMAKE_BUILD_TYPE='None' \
+    -D CMAKE_INSTALL_PREFIX=/usr \
+    -D CMAKE_POSITION_INDEPENDENT_CODE=ON \
+    -D ZYDIS_BUILD_SHARED_LIB=ON \
+    -D ZYAN_SYSTEM_ZYCORE=ON \
+    -D ZYDIS_BUILD_MAN=ON
+
+  cmake --build build
+}
+
+check() {
+  # test suite extracted from .github/workflows/main.yml
+  cd "$pkgname/tests"
+
+  # regression tests (decoder)
+  python regression.py test "$srcdir/build/ZydisInfo"
+
+  # regression tests (encoder)
+  python regression_encoder.py \
+    "$srcdir/build/ZydisFuzzReEncoding" \
+    "$srcdir/build/ZydisFuzzEncoder" \
+    "$srcdir/build/ZydisTestEncoderAbsolute"
+}
+
+package() {
+  DESTDIR="$pkgdir" cmake --install build
+
+  cd "$pkgname"
+
+  # documentation
+  install -vDm644 -t "$pkgdir/usr/share/doc/Zydis" README.md
+  cp -vr examples "$pkgdir/usr/share/doc/Zydis"
+
+  # move man pages to correct directory
+  install -vd "$pkgdir/usr/share/man/man1"
+  mv "$pkgdir/usr/share/man/"*.1 "$pkgdir/usr/share/man/man1"
+
+  # license
+  install -vDm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE
+}

Reply via email to