# Contributor: Jakub Jirutka # Maintainer: Jakub Jirutka global pkgname := 'cmocka' global pkgver := '1.1.1' global pkgrel := '1' global pkgdesc := '"An elegant unit testing framework for C with support for mock objects'" global url := '"https://cmocka.org/'" global arch := '"all'" global license := '"ASL-2.0'" global depends := ''"" global makedepends := '"cmake'" global subpackages := ""$pkgname-dev"" global source := ""https://cmocka.org/files/$(pkgver%.*)/$pkgname-$pkgver.tar.xz wordsize.patch musl_uintptr.patch"" global builddir := ""$srcdir/$pkgname-$pkgver"" proc prepare { default_prepare # Just one single test (customer_database_test) is breaking on ppc64le. if test $CARCH = "ppc64le" { sed -i '/customer_database_test/d' "$builddir"/example/CMakeLists.txt } } proc build { mkdir -p "$builddir"/build cd "$builddir"/build cmake .. \ -DCMAKE_INSTALL_PREFIX=/usr \ -DBUILD_SHARED_LIBS=True \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_C_FLAGS="$CFLAGS" \ -DUNIT_TESTING=ON make } proc check { cd "$builddir"/build # If some tests fail, run them again in verbose mode. make test || ctest --rerun-failed --extra-verbose } proc package { make -C "$builddir"/build DESTDIR="$pkgdir" install } global sha512sums := '"801c4a3e1bb9047241b1cb5a90c1cbdee1b0aff5e3d0a84ec8b2dbaee79274618c24fbe5e9fedbf0b3ee18c6c98b55d93e135d037ac33ab872edc7665af41577 cmocka-1.1.1.tar.xz 16dfd8e6e2b21bda549a31cae0e60405039ff3559c879bc35811b55b06d64dcc75402d6a0cb89d029d69faeaa6484329ce03788feb9e69c1a844e63ac8d21f69 wordsize.patch b20b5c0d172a9df756ec093a3df4bf5bdf2a0c06a3d3ad39ec001248ccb86e6fd3dcedfc9ce42e8309cc01ea34fadffd4ebcc0fb3af9f5e795e7fe40c461ac60 musl_uintptr.patch'" (CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(cmocka)} spids:[6])] spids: [6] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(1.1.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 ("An elegant unit testing framework for C with support for mock objects"))} spids: [15] ) ] spids: [15] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:url) op: Equal rhs: {(DQ ("https://cmocka.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 (ASL-2.0))} 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))} spids:[39])] spids: [39] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:subpackages) op: Equal rhs: {(DQ ($ VSub_Name "$pkgname") (-dev))} spids: [44] ) ] spids: [44] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:source) op: Equal rhs: { (DQ ("https://cmocka.org/files/") (BracedVarSub token: suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(".*")}) spids: [53 57] ) (/) ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver") (".tar.xz\n") ("\twordsize.patch\n") ("\tmusl_uintptr.patch") ) } spids: [50] ) ] spids: [50] ) (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: [67] ) ] spids: [67] ) (FuncDef name: prepare body: (BraceGroup children: [ (C {(default_prepare)}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$CARCH"))} {(Lit_Other "=")} {(DQ (ppc64le))} {(Lit_Other "]")} ) terminator: ) ] action: [ (C {(sed)} {(-i)} {(SQ )} {(DQ ($ VSub_Name "$builddir")) (/example/CMakeLists.txt)} ) ] spids: [-1 109] ) ] spids: [-1 126] ) ] spids: [81] ) spids: [77 80] ) (FuncDef name: build body: (BraceGroup children: [ (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$builddir")) (/build)}) (C {(cd)} {(DQ ($ VSub_Name "$builddir")) (/build)}) (C {(cmake)} {(..)} {(-DCMAKE_INSTALL_PREFIX) (Lit_Other "=") (/usr)} {(-DBUILD_SHARED_LIBS) (Lit_Other "=") (True)} {(-DCMAKE_BUILD_TYPE) (Lit_Other "=") (Release)} {(-DCMAKE_C_FLAGS) (Lit_Other "=") (DQ ($ VSub_Name "$CFLAGS"))} {(-DUNIT_TESTING) (Lit_Other "=") (ON)} ) (C {(make)}) ] spids: [135] ) spids: [131 134] ) (FuncDef name: check body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$builddir")) (/build)}) (AndOr children: [(C {(make)} {(test)}) (C {(ctest)} {(--rerun-failed)} {(--extra-verbose)})] op_id: Op_DPipe ) ] spids: [203] ) spids: [199 202] ) (FuncDef name: package body: (BraceGroup children: [ (C {(make)} {(-C)} {(DQ ($ VSub_Name "$builddir")) (/build)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$pkgdir"))} {(install)} ) ] spids: [238] ) spids: [234 237] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sha512sums) op: Equal rhs: { (DQ ( "801c4a3e1bb9047241b1cb5a90c1cbdee1b0aff5e3d0a84ec8b2dbaee79274618c24fbe5e9fedbf0b3ee18c6c98b55d93e135d037ac33ab872edc7665af41577 cmocka-1.1.1.tar.xz\n" ) ( "16dfd8e6e2b21bda549a31cae0e60405039ff3559c879bc35811b55b06d64dcc75402d6a0cb89d029d69faeaa6484329ce03788feb9e69c1a844e63ac8d21f69 wordsize.patch\n" ) ( "b20b5c0d172a9df756ec093a3df4bf5bdf2a0c06a3d3ad39ec001248ccb86e6fd3dcedfc9ce42e8309cc01ea34fadffd4ebcc0fb3af9f5e795e7fe40c461ac60 musl_uintptr.patch" ) ) } spids: [260] ) ] spids: [260] ) ] )