# Contributor: Sören Tempel # Contributor: Stefan Wagner # Maintainer: Stefan Wagner global pkgname := 'notmuch' global pkgver := '0.25' global pkgrel := '1' global pkgdesc := '"E-Mail index, search and tagging'" global url := '"https://notmuchmail.org/'" global arch := '"all'" global license := '"GPL3'" global makedepends := '"gzip xapian-core-dev gmime-dev talloc-dev py-sphinx py-requests python2-dev python3-dev bash-completion'" global options := '"!check'" global checkdepends := '"sed coreutils diffutils bash tar mdocml grep'" global subpackages := "" py2-$pkgname:py2 py3-$pkgname:py3 $pkgname-dev $pkgname-doc $pkgname-libs $pkgname-emacs:emacs $pkgname-vim:vim:noarch $pkgname-zsh-completion:zshcomp:noarch $pkgname-bash-completion:bashcomp:noarch"" global source := ""https://notmuchmail.org/releases/$pkgname-$pkgver.tar.gz fix-tests.patch"" global builddir := ""$srcdir/$pkgname-$pkgver"" proc build { cd $builddir ./configure \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --localstatedir=/var \ --bashcompletiondir=/usr/share/bash-completion/completions \ --zshcompletiondir=/usr/share/zsh/site-functions make PREFIX=/usr DESTDIR="$pkgdir" cd "$builddir"/bindings/python python2 setup.py build python3 setup.py build } proc package { make PREFIX=/usr DESTDIR="$pkgdir" \ -C $builddir install } proc check { cd "$builddir"/test make test-binaries var test = '' for test in [T*.sh] { global name := $[basename $test] matchstr $(name%%.*) { # Requires dtach ↦ doesn't work on the builders *emacs*|T355-smime|T350-crypto { continue } # XXX: Doesn't pass on the builders for some reason T140-excludes { continue } # FIXME: These should pass but currently don't T050-new|T150-tagging { continue } } ./$(test) } } proc vim { global depends := '"vim notmuch'" global pkgdesc := ""Vim plugins for $pkgname"" make -C "$builddir/vim" DESTDIR="$subpkgdir" \ prefix="/usr/share/vim/vimfiles" install } proc emacs { global depends := '"emacs notmuch'" global pkgdesc := ""Emacs plugins for $pkgname"" mkdir -p "$subpkgdir"/usr/share/ mv "$pkgdir"/usr/share/emacs/ "$subpkgdir"/usr/share/emacs/ mkdir -p "$subpkgdir"/usr/bin mv "$pkgdir"/usr/bin/notmuch-emacs-mua "$subpkgdir"/usr/bin/ } proc bashcomp { global depends := ''"" global pkgdesc := ""Bash completions for $pkgname"" global install_if := ""$pkgname=$pkgver-r$pkgrel bash-completion"" mkdir -p "$subpkgdir"/usr/share/bash-completion/completions/ mv "$pkgdir"/usr/share/bash-completion/completions/$pkgname \ "$subpkgdir"/usr/share/bash-completion/completions/ } proc zshcomp { global depends := ''"" global pkgdesc := ""Zsh completions for $pkgname"" global install_if := ""$pkgname=$pkgver-r$pkgrel zsh"" mkdir -p "$subpkgdir"/usr/share/zsh/site-functions/ mv "$pkgdir"/usr/share/zsh/site-functions/_$(pkgname) \ "$subpkgdir"/usr/share/zsh/site-functions/ } proc _py { var python = $1 global pkgdesc := ""$pkgdesc (for $python)"" global depends := ""$depends $python"" global install_if := ""$pkgname=$pkgver-r$pkgrel $python"" cd "$builddir"/bindings/python $python setup.py install --prefix=/usr --root="$subpkgdir" } proc py2 { _py python2 } proc py3 { _py python3 } global sha512sums := '"5f4961818c8c0350e3fbbedd86f407a55fecf211971003a770d99ea2db89bb6b98c2294e114d6abff4d40985f506b7f4b52736a7ee5c78390eb4f2363a65c6f5 notmuch-0.25.tar.gz 430e8f02b194b0582dfd7c66a2791a0071824e1d215993a6daf89c8d2a1ee7f73a6202136b1d890fc8920a4dc309ae976da8a8b8fc8b90e489d3c04f1592876c fix-tests.patch'" (CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(notmuch)} spids:[9])] spids: [9] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(0.25)} spids:[12])] spids: [12] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(1)} spids:[15])] spids: [15] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("E-Mail index, search and tagging"))} spids: [18] ) ] spids: [18] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:url) op: Equal rhs: {(DQ ("https://notmuchmail.org/"))} 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 (GPL3))} spids:[33])] spids: [33] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:makedepends) op: Equal rhs: { (DQ ("gzip xapian-core-dev gmime-dev talloc-dev py-sphinx\n") ("\tpy-requests python2-dev python3-dev bash-completion") ) } spids: [38] ) ] spids: [38] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:options) op:Equal rhs:{(DQ ("!check"))} spids:[44])] spids: [44] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:checkdepends) op: Equal rhs: {(DQ ("sed coreutils diffutils bash tar mdocml grep"))} spids: [49] ) ] spids: [49] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:subpackages) op: Equal rhs: { (DQ ("\n") ("\tpy2-") ($ VSub_Name "$pkgname") (":py2\n") ("\tpy3-") ($ VSub_Name "$pkgname") (":py3\n") ("\t") ($ VSub_Name "$pkgname") ("-dev\n") ("\t") ($ VSub_Name "$pkgname") ("-doc\n") ("\t") ($ VSub_Name "$pkgname") ("-libs\n") ("\t") ($ VSub_Name "$pkgname") ("-emacs:emacs\n") ("\t") ($ VSub_Name "$pkgname") ("-vim:vim:noarch\n") ("\t") ($ VSub_Name "$pkgname") ("-zsh-completion:zshcomp:noarch\n") ("\t") ($ VSub_Name "$pkgname") ("-bash-completion:bashcomp:noarch") ) } spids: [54] ) ] spids: [54] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:source) op: Equal rhs: { (DQ ("https://notmuchmail.org/releases/") ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver") (".tar.gz\n") ("\tfix-tests.patch") ) } spids: [86] ) ] spids: [86] ) (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: [97] ) ] spids: [97] ) (FuncDef name: build body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$builddir"))}) (C {(./configure)} {(--build) (Lit_Other "=") ($ VSub_Name "$CBUILD")} {(--host) (Lit_Other "=") ($ VSub_Name "$CHOST")} {(--prefix) (Lit_Other "=") (/usr)} {(--sysconfdir) (Lit_Other "=") (/etc)} {(--mandir) (Lit_Other "=") (/usr/share/man)} {(--localstatedir) (Lit_Other "=") (/var)} {(--bashcompletiondir) (Lit_Other "=") (/usr/share/bash-completion/completions)} {(--zshcompletiondir) (Lit_Other "=") (/usr/share/zsh/site-functions)} ) (C {(make)} {(Lit_VarLike "PREFIX=") (/usr)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$pkgdir"))} ) (C {(cd)} {(DQ ($ VSub_Name "$builddir")) (/bindings/python)}) (C {(python2)} {(setup.py)} {(build)}) (C {(python3)} {(setup.py)} {(build)}) ] spids: [110] ) spids: [106 109] ) (FuncDef name: package body: (BraceGroup children: [ (C {(make)} {(Lit_VarLike "PREFIX=") (/usr)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$pkgdir"))} {(-C)} {(DQ ($ VSub_Name "$builddir"))} {(install)} ) ] spids: [211] ) spids: [207 210] ) (FuncDef name: check body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$builddir")) (/test)}) (C {(make)} {(test-binaries)}) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:test) op:Equal rhs:{(SQ )} spids:[260])] spids: [258] ) (ForEach iter_name: test iter_words: [{(T) (Lit_Other "*") (.sh)}] do_arg_iter: False body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:name) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [(C {(basename)} {(DQ ($ VSub_Name "$test"))})] ) left_token: spids: [279 285] ) ) } spids: [277] ) ] spids: [277] ) (Case to_match: { (DQ (BracedVarSub token: suffix_op: (StringUnary op_id:VOp1_DPercent arg_word:{(".*")}) spids: [292 296] ) ) } arms: [ (case_arm pat_list: [ {(Lit_Other "*") (emacs) (Lit_Other "*")} {(T355-smime)} {(T350-crypto)} ] action: [(ControlFlow token:)] spids: [306 313 317 -1] ) (case_arm pat_list: [{(T140-excludes)}] action: [(ControlFlow token:)] spids: [325 326 330 -1] ) (case_arm pat_list: [{(T050-new)} {(T150-tagging)}] action: [(ControlFlow token:)] spids: [338 341 345 -1] ) ] spids: [289 299 348] ) (C {(./) (${ VSub_Name test)}) ] spids: [274 358] ) spids: [268 272] ) ] spids: [241] ) spids: [237 240] ) (FuncDef name: vim body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:depends) op: Equal rhs: {(DQ ("vim notmuch"))} spids: [370] ) ] spids: [370] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("Vim plugins for ") ($ VSub_Name "$pkgname"))} spids: [376] ) ] spids: [376] ) (C {(make)} {(-C)} {(DQ ($ VSub_Name "$builddir") (/vim))} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$subpkgdir"))} {(Lit_VarLike "prefix=") (DQ (/usr/share/vim/vimfiles))} {(install)} ) ] spids: [367] ) spids: [363 366] ) (FuncDef name: emacs body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:depends) op: Equal rhs: {(DQ ("emacs notmuch"))} spids: [417] ) ] spids: [417] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("Emacs plugins for ") ($ VSub_Name "$pkgname"))} spids: [423] ) ] spids: [423] ) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/)}) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/emacs/)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/emacs/)} ) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin)}) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/notmuch-emacs-mua)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin/)} ) ] spids: [414] ) spids: [410 413] ) (FuncDef name: bashcomp body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ )} spids:[487])] spids: [487] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("Bash completions for ") ($ VSub_Name "$pkgname"))} spids: [492] ) ] spids: [492] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:install_if) op: Equal rhs: { (DQ ($ VSub_Name "$pkgname") ("=") ($ VSub_Name "$pkgver") (-r) ($ VSub_Name "$pkgrel") (" bash-completion") ) } spids: [499] ) ] spids: [499] ) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/bash-completion/completions/)} ) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/bash-completion/completions/) ($ VSub_Name "$pkgname") } {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/bash-completion/completions/)} ) ] spids: [484] ) spids: [480 483] ) (FuncDef name: zshcomp body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ )} spids:[546])] spids: [546] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("Zsh completions for ") ($ VSub_Name "$pkgname"))} spids: [551] ) ] spids: [551] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:install_if) op: Equal rhs: { (DQ ($ VSub_Name "$pkgname") ("=") ($ VSub_Name "$pkgver") (-r) ($ VSub_Name "$pkgrel") (" zsh") ) } spids: [558] ) ] spids: [558] ) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/zsh/site-functions/)}) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/zsh/site-functions/_) (${ VSub_Name pkgname)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/zsh/site-functions/)} ) ] spids: [543] ) spids: [539 542] ) (FuncDef name: _py body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:python) op: Equal rhs: {(DQ ($ VSub_Number "$1"))} spids: [609] ) ] spids: [607] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ($ VSub_Name "$pkgdesc") (" (for ") ($ VSub_Name "$python") (")"))} spids: [615] ) ] spids: [615] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:depends) op: Equal rhs: {(DQ ($ VSub_Name "$depends") (" ") ($ VSub_Name "$python"))} spids: [624] ) ] spids: [624] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:install_if) op: Equal rhs: { (DQ ($ VSub_Name "$pkgname") ("=") ($ VSub_Name "$pkgver") (-r) ($ VSub_Name "$pkgrel") (" ") ($ VSub_Name "$python") ) } spids: [632] ) ] spids: [632] ) (C {(cd)} {(DQ ($ VSub_Name "$builddir")) (/bindings/python)}) (C {($ VSub_Name "$python")} {(setup.py)} {(install)} {(--prefix) (Lit_Other "=") (/usr)} {(--root) (Lit_Other "=") (DQ ($ VSub_Name "$subpkgdir"))} ) ] spids: [604] ) spids: [600 603] ) (FuncDef name: py2 body: (BraceGroup children:[(C {(_py)} {(python2)})] spids:[676]) spids: [672 675] ) (FuncDef name: py3 body: (BraceGroup children:[(C {(_py)} {(python3)})] spids:[690]) spids: [686 689] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sha512sums) op: Equal rhs: { (DQ ( "5f4961818c8c0350e3fbbedd86f407a55fecf211971003a770d99ea2db89bb6b98c2294e114d6abff4d40985f506b7f4b52736a7ee5c78390eb4f2363a65c6f5 notmuch-0.25.tar.gz\n" ) ( "430e8f02b194b0582dfd7c66a2791a0071824e1d215993a6daf89c8d2a1ee7f73a6202136b1d890fc8920a4dc309ae976da8a8b8fc8b90e489d3c04f1592876c fix-tests.patch" ) ) } spids: [700] ) ] spids: [700] ) ] )