# Contributor: Natanael Copa # Maintainer: Natanael Copa global pkgname := 'gsm' global pkgver := '1.0.16' global pkgrel := '0' global _soname := '1.0.12' global pkgdesc := '"Shared libraries for GSM speech compressor'" global url := '"http://www.quut.com/gsm/'" global arch := '"all'" global license := '"MIT'" global depends := '' global depends_dev := '' global makedepends := $depends_dev global install := ''"" global subpackages := ""$pkgname-dev $pkgname-doc $pkgname-tools"" global source := ""http://www.quut.com/gsm/gsm-$pkgver.tar.gz gsm-64bit.patch gsm-makefile.patch "" global _builddir := ""$srcdir"/gsm-$(pkgver%.*)-pl$(pkgver##*.)" 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 export RPM_OPT_FLAGS="$CFLAGS -fPIC" make all || return 1 } proc package { cd $_builddir mkdir -p "$pkgdir"/usr/bin \ "$pkgdir"/usr/include/gsm \ "$pkgdir"/usr/lib \ "$pkgdir"/usr/share/man/man1 \ "$pkgdir"/usr/share/man/man3 make install \ INSTALL_ROOT="$pkgdir"/usr \ GSM_INSTALL_INC="$pkgdir"/usr/include/gsm \ GSM_INSTALL_LIB="$pkgdir"/usr/lib \ || return 1 cp -p lib/libgsm.so.$_soname "$pkgdir"/usr/lib/ || return 1 ln -s libgsm.so.$_soname "$pkgdir"/usr/lib/libgsm.so.1 || return 1 ln -s libgsm.so.$_soname "$pkgdir"/usr/lib/libgsm.so || return 1 ln -s gsm/gsm.h "$pkgdir"/usr/include/ rm -f "$pkgdir"/usr/lib/lib*.a } proc tools { global pkgdesc := '"GSM speech compressor tools'" mkdir -p "$subpkgdir"/usr mv "$pkgdir"/usr/bin "$subpkgdir"/usr } global sha512sums := '"dfcadca2ff062294deed23859f73f704fc28e2f30f5544f44befd445cb031308673f4885ba9b65c6a4e304bf12398c3458ee2b2f476e998fa4f8ea7728c9589b gsm-1.0.16.tar.gz 5b01f6d2fd3ee7cd859da70870463e2ccc6614c5fb1bd5efc88a223a0c5477271221557fef13ba46697e70cc5820c13efff738413f8990d5884b95cc89c30152 gsm-64bit.patch 8a9b32ca6bf049e92840ac4ada40b6963fac7ffec23f4764f353795d29d58e1be28e83a927fa0919b95da42f97f603fe82764e999aaed566f88b4031a12877ca gsm-makefile.patch'" (CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(gsm)} spids:[6])] spids: [6] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(1.0.16)} spids:[9])] spids: [9] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(0)} spids:[12])] spids: [12] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:_soname) op:Equal rhs:{(1.0.12)} spids:[15])] spids: [15] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("Shared libraries for GSM speech compressor"))} spids: [18] ) ] spids: [18] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:url) op: Equal rhs: {(DQ ("http://www.quut.com/gsm/"))} spids: [23] ) ] spids: [23] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[28])] spids: [28] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (MIT))} spids:[33])] spids: [33] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(SQ )} spids:[38])] spids: [38] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:depends_dev) op:Equal rhs:{(SQ )} spids:[40])] spids: [40] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:makedepends) op: Equal rhs: {(DQ ($ VSub_Name "$depends_dev"))} spids: [42] ) ] spids: [42] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:install) op:Equal rhs:{(DQ )} spids:[47])] spids: [47] ) (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") (-tools) ) } spids: [51] ) ] spids: [51] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:source) op: Equal rhs: { (DQ ("http://www.quut.com/gsm/gsm-") ($ VSub_Name "$pkgver") (".tar.gz\n") ("\tgsm-64bit.patch\n") ("\tgsm-makefile.patch\n") ("\t") ) } spids: [61] ) ] spids: [61] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_builddir) op: Equal rhs: {(DQ ($ VSub_Name "$srcdir")) (/gsm-) (BracedVarSub token: suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(".*")}) spids: [77 81] ) (-pl) (BracedVarSub token: suffix_op: (StringUnary op_id:VOp1_DPound arg_word:{("*.")}) spids: [83 87] ) } spids: [72] ) ] spids: [72] ) (FuncDef name: prepare body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:i) op:Equal spids:[98])] spids: [96] ) (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: [127 129 153 -1] ) ] spids: [120 124 156] ) ] spids: [117 159] ) spids: [113 115] ) ] spids: [93] ) spids: [89 92] ) (FuncDef name: build body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))}) (C {(export)} {(Lit_VarLike "RPM_OPT_FLAGS=") (DQ ($ VSub_Name "$CFLAGS") (" -fPIC"))}) (AndOr children: [ (C {(make)} {(all)}) (ControlFlow token: arg_word:{(1)}) ] op_id: Op_DPipe ) ] spids: [168] ) spids: [164 167] ) (FuncDef name: package body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))}) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/include/gsm)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/man/man1)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/man/man3)} ) (AndOr children: [ (C {(make)} {(install)} {(Lit_VarLike "INSTALL_ROOT=") (DQ ($ VSub_Name "$pkgdir")) (/usr)} {(Lit_VarLike "GSM_INSTALL_INC=") (DQ ($ VSub_Name "$pkgdir")) (/usr/include/gsm)} {(Lit_VarLike "GSM_INSTALL_LIB=") (DQ ($ VSub_Name "$pkgdir")) (/usr/lib)} ) (ControlFlow token: arg_word:{(1)}) ] op_id: Op_DPipe ) (AndOr children: [ (C {(cp)} {(-p)} {(lib/libgsm.so.) ($ VSub_Name "$_soname")} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/)} ) (ControlFlow token: arg_word:{(1)}) ] op_id: Op_DPipe ) (AndOr children: [ (C {(ln)} {(-s)} {(libgsm.so.) ($ VSub_Name "$_soname")} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/libgsm.so.1)} ) (ControlFlow token: arg_word:{(1)}) ] op_id: Op_DPipe ) (AndOr children: [ (C {(ln)} {(-s)} {(libgsm.so.) ($ VSub_Name "$_soname")} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/libgsm.so)} ) (ControlFlow token: arg_word:{(1)}) ] op_id: Op_DPipe ) (C {(ln)} {(-s)} {(gsm/gsm.h)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/include/)}) (C {(rm)} {(-f)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/lib) (Lit_Other "*") (.a)}) ] spids: [204] ) spids: [200 203] ) (FuncDef name: tools body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("GSM speech compressor tools"))} spids: [381] ) ] spids: [381] ) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr)}) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr)}) ] spids: [378] ) spids: [374 377] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sha512sums) op: Equal rhs: { (DQ ( "dfcadca2ff062294deed23859f73f704fc28e2f30f5544f44befd445cb031308673f4885ba9b65c6a4e304bf12398c3458ee2b2f476e998fa4f8ea7728c9589b gsm-1.0.16.tar.gz\n" ) ( "5b01f6d2fd3ee7cd859da70870463e2ccc6614c5fb1bd5efc88a223a0c5477271221557fef13ba46697e70cc5820c13efff738413f8990d5884b95cc89c30152 gsm-64bit.patch\n" ) ( "8a9b32ca6bf049e92840ac4ada40b6963fac7ffec23f4764f353795d29d58e1be28e83a927fa0919b95da42f97f603fe82764e999aaed566f88b4031a12877ca gsm-makefile.patch" ) ) } spids: [412] ) ] spids: [412] ) ] )