# Contributor: Francesco Colista # Contributor: Jakub Jirutka # Maintainer: Francesco Colista global pkgname := 'py-numpy' global _pkgname := 'numpy' global pkgver := '1.13.3' global pkgrel := '0' global pkgdesc := '"Scientific tools for Python'" global url := '"http://numpy.scipy.org/'" global arch := '"all !s390x'" global license := '"BSD'" global options := '"!check'" global makedepends := '"python2-dev py-setuptools python3-dev cython-dev openblas-dev gfortran py-nose'" global subpackages := ""$pkgname-dev $pkgname-doc $pkgname-f2py::noarch py2-$_pkgname-f2py:_f2py:noarch py3-$_pkgname-f2py:_f2py:noarch py2-$_pkgname:_py py3-$_pkgname:_py"" global source := ""https://github.com/numpy/numpy/releases/download/v$pkgver/$_pkgname-$pkgver.tar.gz site.cfg"" global builddir := ""$srcdir/$_pkgname-$pkgver"" proc prepare { default_prepare cp "$srcdir"/site.cfg "$builddir"/ } proc build { export Atlas=None global LDFLAGS := ""$LDFLAGS -shared"" cd $builddir python2 setup.py build config_fc --fcompiler=gnu95 python3 setup.py build config_fc --fcompiler=gnu95 } proc package { cd $builddir var python = ''; for python in [python2 python3] { $python setup.py install --prefix=/usr --root="$pkgdir" \ config_fc --fcompiler=gnu95 } install -D -m 644 doc/f2py/f2py.1 \ "$pkgdir"/usr/share/man/man1/f2py.1 install -D -m 644 LICENSE.txt \ "$pkgdir"/usr/share/licenses/$pkgname/LICENSE } proc dev { cd $pkgdir # Move tests to -dev subpackage. find usr/lib/python* -type d -name tests | while read path { mkdir -p "$subpkgdir/$path" mv "$path"/* "$subpkgdir/$path"/ } default_dev } proc f2py { mkdir -p $subpkgdir } proc _f2py { var pyver = $(subpkgname:2:1) var python = ""python$pyver"" global pkgdesc := ""f2py for numpy (for $python)"" global depends := ""py$pyver-numpy=$pkgver-r$pkgrel $python-dev"" global install_if := ""$pkgname-f2py=$pkgver-r$pkgrel $python"" test $pyver = 3 || global replaces := $pkgname var dir = ""$[_pylibdir $python]/site-packages/numpy"" mkdir -p "$subpkgdir/$dir" "$subpkgdir"/usr/bin mv "$pkgdir/$dir"/f2py "$subpkgdir/$dir"/ mv "$pkgdir"/usr/bin/f2py$pyver "$subpkgdir"/usr/bin/ } proc _py { var pyver = $(subpkgname:2:1) var python = ""python$pyver"" global pkgdesc := ""$pkgdesc $pyver"" global install_if := ""$pkgname=$pkgver-r$pkgrel $python"" test $pyver = 3 || global replaces := $pkgname var libdir = $[_pylibdir $python] mkdir -p "$subpkgdir/$libdir" mv "$pkgdir/$libdir"/* "$subpkgdir/$libdir"/ rmdir -p "$pkgdir/$libdir" !2 >/dev/null || true } proc _pylibdir { $1 -c 'import sysconfig; print(sysconfig.get_path("stdlib"))' } global sha512sums := '"8af718a4f0204251f34995a5798a4803ae1ad96e6cae5681b1153f0be3ae102a79061a9b11cc404d3b205d7c95dbc8b0aa2d72aa9678185f8a6df877413d199f numpy-1.13.3.tar.gz 21ca8db304cbbf5949f07702f2a42bb5e5a0d641921e36649555a41b0e48f04e96f53760417823177ac27f6de24b2191e6e1d5f0eb393beafa29f7484e23284f site.cfg'" (CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(py-numpy)} spids:[9])] spids: [9] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:_pkgname) op:Equal rhs:{(numpy)} spids:[12])] spids: [12] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(1.13.3)} spids:[15])] spids: [15] ) (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 ("Scientific tools for Python"))} spids: [21] ) ] spids: [21] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:url) op: Equal rhs: {(DQ ("http://numpy.scipy.org/"))} spids: [26] ) ] spids: [26] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ ("all !s390x"))} spids:[31])] spids: [31] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (BSD))} spids:[36])] spids: [36] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:options) op:Equal rhs:{(DQ ("!check"))} spids:[41])] spids: [41] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:makedepends) op: Equal rhs: { (DQ ("python2-dev py-setuptools python3-dev\n") ("\tcython-dev openblas-dev gfortran py-nose") ) } spids: [46] ) ] spids: [46] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:subpackages) op: Equal rhs: { (DQ ($ VSub_Name "$pkgname") ("-dev\n") ("\t") ($ VSub_Name "$pkgname") ("-doc\n") ("\t") ($ VSub_Name "$pkgname") ("-f2py::noarch\n") ("\tpy2-") ($ VSub_Name "$_pkgname") ("-f2py:_f2py:noarch\n") ("\tpy3-") ($ VSub_Name "$_pkgname") ("-f2py:_f2py:noarch\n") ("\tpy2-") ($ VSub_Name "$_pkgname") (":_py\n") ("\tpy3-") ($ VSub_Name "$_pkgname") (":_py") ) } spids: [52] ) ] spids: [52] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:source) op: Equal rhs: { (DQ ("https://github.com/numpy/numpy/releases/download/v") ($ VSub_Name "$pkgver") (/) ($ VSub_Name "$_pkgname") (-) ($ VSub_Name "$pkgver") (".tar.gz\n") ("\tsite.cfg") ) } spids: [76] ) ] spids: [76] ) (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: [88] ) ] spids: [88] ) (FuncDef name: prepare body: (BraceGroup children: [ (C {(default_prepare)}) (C {(cp)} {(DQ ($ VSub_Name "$srcdir")) (/site.cfg)} {(DQ ($ VSub_Name "$builddir")) (/)}) ] spids: [102] ) spids: [98 101] ) (FuncDef name: build body: (BraceGroup children: [ (C {(export)} {(Lit_VarLike "Atlas=") (None)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LDFLAGS) op: Equal rhs: {(DQ ($ VSub_Name "$LDFLAGS") (" -shared"))} spids: [136] ) ] spids: [136] ) (C {(cd)} {(DQ ($ VSub_Name "$builddir"))}) (C {(python2)} {(setup.py)} {(build)} {(config_fc)} {(--fcompiler) (Lit_Other "=") (gnu95)}) (C {(python3)} {(setup.py)} {(build)} {(config_fc)} {(--fcompiler) (Lit_Other "=") (gnu95)}) ] spids: [127] ) spids: [123 126] ) (FuncDef name: package body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$builddir"))}) (Sentence child: (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:python) op:Equal spids:[196])] spids: [194] ) terminator: ) (ForEach iter_name: python iter_words: [{(python2)} {(python3)}] do_arg_iter: False body: (DoGroup children: [ (C {($ VSub_Name "$python")} {(setup.py)} {(install)} {(--prefix) (Lit_Other "=") (/usr)} {(--root) (Lit_Other "=") (DQ ($ VSub_Name "$pkgdir"))} {(config_fc)} {(--fcompiler) (Lit_Other "=") (gnu95)} ) ] spids: [210 238] ) spids: [204 208] ) (C {(install)} {(-D)} {(-m)} {(644)} {(doc/f2py/f2py.1)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/man/man1/f2py.1)} ) (C {(install)} {(-D)} {(-m)} {(644)} {(LICENSE.txt)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/licenses/) ($ VSub_Name "$pkgname") (/LICENSE)} ) ] spids: [183] ) spids: [179 182] ) (FuncDef name: dev body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$pkgdir"))}) (Pipeline children: [ (C {(find)} {(usr/lib/python) (Lit_Other "*")} {(-type)} {(d)} {(-name)} {(tests)}) (While cond: [(Sentence child:(C {(read)} {(path)}) terminator:)] body: (DoGroup children: [ (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir") (/) ($ VSub_Name "$path"))}) (C {(mv)} {(DQ ($ VSub_Name "$path")) (/) (Lit_Other "*")} {(DQ ($ VSub_Name "$subpkgdir") (/) ($ VSub_Name "$path")) (/)} ) ] spids: [323 353] ) ) ] negated: False ) (C {(default_dev)}) ] spids: [286] ) spids: [282 285] ) (FuncDef name: f2py body: (BraceGroup children: [(C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir"))})] spids: [366] ) spids: [362 365] ) (FuncDef name: _f2py body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:pyver) op: Equal rhs: { (DQ (BracedVarSub token: suffix_op: (Slice begin: (ArithWord w:{(Lit_Digits 2)}) length: (ArithWord w:{(Lit_Digits 1)}) ) spids: [391 397] ) ) } spids: [389] ) ] spids: [387] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:python) op: Equal rhs: {(DQ (python) ($ VSub_Name "$pyver"))} spids: [403] ) ] spids: [401] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("f2py for numpy (for ") ($ VSub_Name "$python") (")"))} spids: [411] ) ] spids: [411] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:depends) op: Equal rhs: { (DQ (py) ($ VSub_Name "$pyver") ("-numpy=") ($ VSub_Name "$pkgver") (-r) ($ VSub_Name "$pkgrel") (" ") ($ VSub_Name "$python") (-dev) ) } spids: [419] ) ] spids: [419] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:install_if) op: Equal rhs: { (DQ ($ VSub_Name "$pkgname") ("-f2py=") ($ VSub_Name "$pkgver") (-r) ($ VSub_Name "$pkgrel") (" ") ($ VSub_Name "$python") ) } spids: [433] ) ] spids: [433] ) (AndOr children: [ (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$pyver"))} {(Lit_Other "=")} {(3)} {(Lit_Other "]")} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:replaces) op: Equal rhs: {(DQ ($ VSub_Name "$pkgname"))} spids: [459] ) ] spids: [459] ) ] op_id: Op_DPipe ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:dir) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [(C {(_pylibdir)} {($ VSub_Name "$python")})] ) left_token: spids: [470 474] ) (/site-packages/numpy) ) } spids: [468] ) ] spids: [466] ) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir") (/) ($ VSub_Name "$dir"))} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin)} ) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir") (/) ($ VSub_Name "$dir")) (/f2py)} {(DQ ($ VSub_Name "$subpkgdir") (/) ($ VSub_Name "$dir")) (/)} ) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/f2py) ($ VSub_Name "$pyver")} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin/)} ) ] spids: [384] ) spids: [380 383] ) (FuncDef name: _py body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:pyver) op: Equal rhs: { (DQ (BracedVarSub token: suffix_op: (Slice begin: (ArithWord w:{(Lit_Digits 2)}) length: (ArithWord w:{(Lit_Digits 1)}) ) spids: [540 546] ) ) } spids: [538] ) ] spids: [536] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:python) op: Equal rhs: {(DQ (python) ($ VSub_Name "$pyver"))} spids: [552] ) ] spids: [550] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ($ VSub_Name "$pkgdesc") (" ") ($ VSub_Name "$pyver"))} spids: [560] ) ] spids: [560] ) (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: [568] ) ] spids: [568] ) (AndOr children: [ (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$pyver"))} {(Lit_Other "=")} {(3)} {(Lit_Other "]")} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:replaces) op: Equal rhs: {(DQ ($ VSub_Name "$pkgname"))} spids: [594] ) ] spids: [594] ) ] op_id: Op_DPipe ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:libdir) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(_pylibdir)} {($ VSub_Name "$python")})] ) left_token: spids: [604 608] ) } spids: [603] ) ] spids: [601] ) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir") (/) ($ VSub_Name "$libdir"))}) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir") (/) ($ VSub_Name "$libdir")) (/) (Lit_Other "*")} {(DQ ($ VSub_Name "$subpkgdir") (/) ($ VSub_Name "$libdir")) (/)} ) (AndOr children: [ (SimpleCommand words: [{(rmdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir") (/) ($ VSub_Name "$libdir"))}] redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[651])] ) (C {(true)}) ] op_id: Op_DPipe ) ] spids: [533] ) spids: [529 532] ) (FuncDef name: _pylibdir body: (BraceGroup children: [ (C {(DQ ($ VSub_Number "$1"))} {(-c)} {(SQ <"import sysconfig; print(sysconfig.get_path(\"stdlib\"))">)} ) ] spids: [665] ) spids: [661 664] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sha512sums) op: Equal rhs: { (DQ ( "8af718a4f0204251f34995a5798a4803ae1ad96e6cae5681b1153f0be3ae102a79061a9b11cc404d3b205d7c95dbc8b0aa2d72aa9678185f8a6df877413d199f numpy-1.13.3.tar.gz\n" ) ( "21ca8db304cbbf5949f07702f2a42bb5e5a0d641921e36649555a41b0e48f04e96f53760417823177ac27f6de24b2191e6e1d5f0eb393beafa29f7484e23284f site.cfg" ) ) } spids: [681] ) ] spids: [681] ) ] )