# Contributor: Francesco Colista # Maintainer: Francesco Colista global pkgname := 'keystone' global pkgver := '0.9.1' global pkgrel := '1' global pkgdesc := '"Keystone assembler framework: Core (Arm, Arm64, Hexagon, Mips, PowerPC, Sparc, SystemZ & X86) + bindings'" global url := '"http://www.keystone-engine.org'" global arch := '"all'" global license := '"custom'" global depends := ''"" global makedepends := '"cmake python3-dev'" global install := ''"" global subpackages := ""$pkgname-dev $pkgname-doc $pkgname-python"" global source := ""$pkgname-$pkgver.tar.gz::https://github.com/keystone-engine/$pkgname/archive/$pkgver.tar.gz"" global builddir := ""$srcdir/$pkgname-$pkgver"" proc build { cd $builddir mkdir -p build-shared && cd build-shared cmake -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_BUILD_TYPE=Release \ -DBUILD_SHARED_LIBS=ON \ -G "Unix Makefiles" .. cd .. make -C build-shared || return 1 } proc package { cd $builddir make -C build-shared DESTDIR="$pkgdir" install } proc doc { global pkgdesc := ""Documentation and samples for $pkgname"" global arch := '"noarch'" cd $builddir mkdir -p "$(subpkgdir)/usr/share/doc/$(pkgname)" mv samples "$(subpkgdir)/usr/share/doc/$(pkgname)" } proc python { global pkgdesc := ""$pkgname python3 bindings"" global depends := '"python3 keystone'" global arch := '"noarch'" cd "$builddir"/bindings/python python3 setup.py build python3 setup.py install --prefix=/usr --root="$subpkgdir" } global md5sums := '"966e0395a3733f68518a2833e64134c1 keystone-0.9.1.tar.gz'" global sha256sums := '"e9d706cd0c19c49a6524b77db8158449b9c434b415fbf94a073968b68cf8a9f0 keystone-0.9.1.tar.gz'" global sha512sums := '"3bd9c3793d5862a0a8628b52da381625e62445f661dbd5ed715723e7d9db01ce3f9586e5ca0a5cc71e8ceb6c912050f5c28e3ccd540e72c8abcfd2f0d1bbae17 keystone-0.9.1.tar.gz'" (CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(keystone)} spids:[6])] spids: [6] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(0.9.1)} spids:[9])] spids: [9] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(1)} spids:[12])] spids: [12] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: { (DQ ( "Keystone assembler framework: Core (Arm, Arm64, Hexagon, Mips, PowerPC, Sparc, SystemZ & X86) + bindings" ) ) } spids: [15] ) ] spids: [15] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:url) op: Equal rhs: {(DQ ("http://www.keystone-engine.org"))} spids: [20] ) ] spids: [20] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[25])] spids: [25] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (custom))} spids:[30])] spids: [30] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ )} spids:[35])] spids: [35] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:makedepends) op: Equal rhs: {(DQ ("cmake python3-dev"))} spids: [39] ) ] spids: [39] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:install) op:Equal rhs:{(DQ )} spids:[44])] spids: [44] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:subpackages) op: Equal rhs: { (DQ ($ VSub_Name "$pkgname") ("-dev ") ($ VSub_Name "$pkgname") ("-doc ") ($ VSub_Name "$pkgname") (-python) ) } spids: [48] ) ] spids: [48] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:source) op: Equal rhs: { (DQ ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver") (".tar.gz::https://github.com/keystone-engine/") ($ VSub_Name "$pkgname") (/archive/) ($ VSub_Name "$pkgver") (.tar.gz) ) } spids: [58] ) ] spids: [58] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:builddir) op: Equal rhs: {(DQ ($ VSub_Name "$srcdir") (/) ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver"))} spids: [70] ) ] spids: [70] ) (FuncDef name: build body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$builddir"))}) (AndOr children: [(C {(mkdir)} {(-p)} {(build-shared)}) (C {(cd)} {(build-shared)})] op_id: Op_DAmp ) (C {(cmake)} {(-DCMAKE_INSTALL_PREFIX) (Lit_Other "=") (/usr)} {(-DCMAKE_BUILD_TYPE) (Lit_Other "=") (Release)} {(-DBUILD_SHARED_LIBS) (Lit_Other "=") (ON)} {(-G)} {(DQ ("Unix Makefiles"))} {(..)} ) (C {(cd)} {(..)}) (AndOr children: [ (C {(make)} {(-C)} {(build-shared)}) (ControlFlow token: arg_word:{(1)}) ] op_id: Op_DPipe ) ] spids: [84] ) spids: [80 83] ) (FuncDef name: package body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$builddir"))}) (C {(make)} {(-C)} {(build-shared)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$pkgdir"))} {(install)} ) ] spids: [160] ) spids: [156 159] ) (FuncDef name: doc body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("Documentation and samples for ") ($ VSub_Name "$pkgname"))} spids: [193] ) ] spids: [193] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (noarch))} spids:[200])] spids: [200] ) (C {(cd)} {(DQ ($ VSub_Name "$builddir"))}) (C {(mkdir)} {(-p)} {(DQ (${ VSub_Name subpkgdir) (/usr/share/doc/) (${ VSub_Name pkgname))}) (C {(mv)} {(samples)} {(DQ (${ VSub_Name subpkgdir) (/usr/share/doc/) (${ VSub_Name pkgname))} ) ] spids: [190] ) spids: [186 189] ) (FuncDef name: python body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ($ VSub_Name "$pkgname") (" python3 bindings"))} spids: [252] ) ] spids: [252] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:depends) op: Equal rhs: {(DQ ("python3 keystone"))} spids: [259] ) ] spids: [259] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (noarch))} spids:[265])] spids: [265] ) (C {(cd)} {(DQ ($ VSub_Name "$builddir")) (/bindings/python)}) (C {(python3)} {(setup.py)} {(build)}) (C {(python3)} {(setup.py)} {(install)} {(--prefix) (Lit_Other "=") (/usr)} {(--root) (Lit_Other "=") (DQ ($ VSub_Name "$subpkgdir"))} ) ] spids: [249] ) spids: [245 248] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:md5sums) op: Equal rhs: {(DQ ("966e0395a3733f68518a2833e64134c1 keystone-0.9.1.tar.gz"))} spids: [305] ) ] spids: [305] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sha256sums) op: Equal rhs: { (DQ ( "e9d706cd0c19c49a6524b77db8158449b9c434b415fbf94a073968b68cf8a9f0 keystone-0.9.1.tar.gz" ) ) } spids: [310] ) ] spids: [310] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sha512sums) op: Equal rhs: { (DQ ( "3bd9c3793d5862a0a8628b52da381625e62445f661dbd5ed715723e7d9db01ce3f9586e5ca0a5cc71e8ceb6c912050f5c28e3ccd540e72c8abcfd2f0d1bbae17 keystone-0.9.1.tar.gz" ) ) } spids: [315] ) ] spids: [315] ) ] )