# Maintainer: Natanael Copa global pkgname := 'gradm' global pkgver := '3.1.201607172312' global _ver := $(pkgver/.20/-20) global pkgrel := '0' global pkgdesc := '"administrative utility for grsecurity kernels'" global url := '"http://www.grsecurity.org/'" global arch := '"all'" global license := '"GPL'" global makedepends := '"bison flex-dev linux-headers'" global install := ''"" global subpackages := ""$pkgname-doc"" global source := ""https://dev.gentoo.org/~blueness/hardened-sources/gradm/gradm-$_ver.tar.gz policy base.policyd grsec-rbac.initd"" global _builddir := ""$srcdir/gradm"" proc prepare { var i = '' cd $_builddir for i in [$source] { matchstr $i { *.patch { msg $i; patch -p1 -i "$srcdir"/$i || return 1} } } } proc build { cd $_builddir make LIBS="" || return 1 } proc package { cd $_builddir make LIBS="" INSTALL=install DESTDIR="$pkgdir" install || return 1 # we don't want the grsecurity-recommended policy as it's old # and non-modular. rm "$pkgdir"/etc/grsec/policy # install the base policy file which pulls in everything else. install -m644 "$srcdir"/policy "$pkgdir"/etc/grsec/policy # prepare and install base policy to /var/lib/grsec/policy.d install -d -D "$pkgdir"/var/lib/grsec/policy.d install -m644 "$srcdir"/base.policyd "$pkgdir"/var/lib/grsec/policy.d/00-base # install grsec-rbac into initd install -d -D "$pkgdir"/etc/init.d install -m755 "$srcdir"/grsec-rbac.initd "$pkgdir"/etc/init.d/grsec-rbac } global md5sums := '"8387c001bb856ac8d3c49854b94a15c3 gradm-3.1-201607172312.tar.gz 38ee3aef884bdcfe6a5b925760f6220b policy 1d4a2c2e522b7124ad901ae102181e72 base.policyd e76916d72b4af3e430ff53de671e2c8c grsec-rbac.initd'" global sha256sums := '"4281c72e3e82f0ea2c01d124975c19326b2157c10911fa065c1549195d5e6ee4 gradm-3.1-201607172312.tar.gz 46ecc20298a4497340435f7f6bf7b96d075a931e1f533c1b330cbd13616bc463 policy a6d40bc669036cd61d8eec26b7ce356cccdec2bc0640556515cb2a98a461672c base.policyd 6aa91aaddc74f96e2dc4913a10941318257f2bf4c0b1fa2a7d5ad25386d39b8b grsec-rbac.initd'" global sha512sums := '"61f14038ee555b99e4d0096dd01697d8adba45e057ffceadb44eafbdfba807b53030684c5073d169c005902acfa6baa673975ed4ab00ad035941c209f8f1d2e2 gradm-3.1-201607172312.tar.gz 0cd4a85d40815813129c669400a9e2fb4b5258c1d20dae8075e3f3123c3ff1ece9dc3a16209ef8d6cb968477ab687926923bcdca0b78fb3beff105a699284a01 policy 8b6a3a6cf550119dbf162d6dffcf5acef30cae6b070a028d5d5697bf20ce5e0d7e1900992f7c88c60b2eb5e5118561753e8111440a6032922780620ac25ee7cb base.policyd 7f53992506edcedfd97b5b3581da80ffbc1a1a79ad3c5e7b7982f9d41387bea34077045d36595a631a87e96a25819b3c569ca94c344a0581ead8c5e5dbd32c1d grsec-rbac.initd'" (CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(gradm)} spids:[3])] spids: [3] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(3.1.201607172312)} spids:[6])] spids: [6] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_ver) op: Equal rhs: { (BracedVarSub token: suffix_op: (PatSub pat: {(.20)} replace: {(-20)} do_all: False do_prefix: False do_suffix: False ) spids: [10 16] ) } spids: [9] ) ] spids: [9] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(0)} spids:[18])] spids: [18] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("administrative utility for grsecurity kernels"))} spids: [21] ) ] spids: [21] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:url) op: Equal rhs: {(DQ ("http://www.grsecurity.org/"))} spids: [26] ) ] spids: [26] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[31])] spids: [31] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (GPL))} spids:[36])] spids: [36] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:makedepends) op: Equal rhs: {(DQ ("bison flex-dev linux-headers"))} spids: [41] ) ] spids: [41] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:install) op:Equal rhs:{(DQ )} spids:[46])] spids: [46] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:subpackages) op: Equal rhs: {(DQ ($ VSub_Name "$pkgname") (-doc))} spids: [50] ) ] spids: [50] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:source) op: Equal rhs: { (DQ ("https://dev.gentoo.org/~blueness/hardened-sources/gradm/gradm-") ($ VSub_Name "$_ver") (".tar.gz\n") ("\tpolicy\n") ("\tbase.policyd\n") ("\tgrsec-rbac.initd") ) } spids: [56] ) ] spids: [56] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_builddir) op: Equal rhs: {(DQ ($ VSub_Name "$srcdir") (/gradm))} spids: [67] ) ] spids: [67] ) (FuncDef name: prepare body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:i) op:Equal spids:[82])] spids: [80] ) (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))}) (ForEach iter_name: i iter_words: [{($ VSub_Name "$source")}] do_arg_iter: False body: (DoGroup children: [ (Case to_match: {($ VSub_Name "$i")} arms: [ (case_arm pat_list: [{(Lit_Other "*") (.patch)}] action: [ (Sentence child: (C {(msg)} {($ VSub_Name "$i")}) terminator: ) (AndOr children: [ (C {(patch)} {(-p1)} {(-i)} {(DQ ($ VSub_Name "$srcdir")) (/) ($ VSub_Name "$i")} ) (ControlFlow token: arg_word: {(1)} ) ] op_id: Op_DPipe ) ] spids: [111 113 137 -1] ) ] spids: [104 108 140] ) ] spids: [101 143] ) spids: [97 99] ) ] spids: [77] ) spids: [73 76] ) (FuncDef name: build body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))}) (AndOr children: [ (C {(make)} {(Lit_VarLike "LIBS=") (DQ )}) (ControlFlow token: arg_word:{(1)}) ] op_id: Op_DPipe ) ] spids: [152] ) spids: [148 151] ) (FuncDef name: package body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))}) (AndOr children: [ (C {(make)} {(Lit_VarLike "LIBS=") (DQ )} {(Lit_VarLike "INSTALL=") (install)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$pkgdir"))} {(install)} ) (ControlFlow token: arg_word:{(1)}) ] op_id: Op_DPipe ) (C {(rm)} {(DQ ($ VSub_Name "$pkgdir")) (/etc/grsec/policy)}) (C {(install)} {(-m644)} {(DQ ($ VSub_Name "$srcdir")) (/policy)} {(DQ ($ VSub_Name "$pkgdir")) (/etc/grsec/policy)} ) (C {(install)} {(-d)} {(-D)} {(DQ ($ VSub_Name "$pkgdir")) (/var/lib/grsec/policy.d)}) (C {(install)} {(-m644)} {(DQ ($ VSub_Name "$srcdir")) (/base.policyd)} {(DQ ($ VSub_Name "$pkgdir")) (/var/lib/grsec/policy.d/00-base)} ) (C {(install)} {(-d)} {(-D)} {(DQ ($ VSub_Name "$pkgdir")) (/etc/init.d)}) (C {(install)} {(-m755)} {(DQ ($ VSub_Name "$srcdir")) (/grsec-rbac.initd)} {(DQ ($ VSub_Name "$pkgdir")) (/etc/init.d/grsec-rbac)} ) ] spids: [181] ) spids: [177 180] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:md5sums) op: Equal rhs: { (DQ ("8387c001bb856ac8d3c49854b94a15c3 gradm-3.1-201607172312.tar.gz\n") ("38ee3aef884bdcfe6a5b925760f6220b policy\n") ("1d4a2c2e522b7124ad901ae102181e72 base.policyd\n") ("e76916d72b4af3e430ff53de671e2c8c grsec-rbac.initd") ) } spids: [317] ) ] spids: [317] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sha256sums) op: Equal rhs: { (DQ ( "4281c72e3e82f0ea2c01d124975c19326b2157c10911fa065c1549195d5e6ee4 gradm-3.1-201607172312.tar.gz\n" ) ("46ecc20298a4497340435f7f6bf7b96d075a931e1f533c1b330cbd13616bc463 policy\n") ( "a6d40bc669036cd61d8eec26b7ce356cccdec2bc0640556515cb2a98a461672c base.policyd\n" ) ("6aa91aaddc74f96e2dc4913a10941318257f2bf4c0b1fa2a7d5ad25386d39b8b grsec-rbac.initd") ) } spids: [325] ) ] spids: [325] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sha512sums) op: Equal rhs: { (DQ ( "61f14038ee555b99e4d0096dd01697d8adba45e057ffceadb44eafbdfba807b53030684c5073d169c005902acfa6baa673975ed4ab00ad035941c209f8f1d2e2 gradm-3.1-201607172312.tar.gz\n" ) ( "0cd4a85d40815813129c669400a9e2fb4b5258c1d20dae8075e3f3123c3ff1ece9dc3a16209ef8d6cb968477ab687926923bcdca0b78fb3beff105a699284a01 policy\n" ) ( "8b6a3a6cf550119dbf162d6dffcf5acef30cae6b070a028d5d5697bf20ce5e0d7e1900992f7c88c60b2eb5e5118561753e8111440a6032922780620ac25ee7cb base.policyd\n" ) ( "7f53992506edcedfd97b5b3581da80ffbc1a1a79ad3c5e7b7982f9d41387bea34077045d36595a631a87e96a25819b3c569ca94c344a0581ead8c5e5dbd32c1d grsec-rbac.initd" ) ) } spids: [333] ) ] spids: [333] ) ] )