summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
authormcgyver2020-02-18 00:52:29 +0000
committermcgyver2020-02-18 00:52:29 +0000
commit3ba399b79a40369cc1e19be5cfe8a7a28fd06dff (patch)
treee6ee32485daf14b7a19f901bb68c25bcc6719bf7 /PKGBUILD
downloadaur-3ba399b79a40369cc1e19be5cfe8a7a28fd06dff.tar.gz
Initial PKGBUILD commit
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD208
1 files changed, 208 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..c5cb9f07c83f
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,208 @@
+# Maintainer: mcgyver <newsletter.sergio@gmail.com>
+
+pkgbase=python-spynnaker-git
+pkgname=('python-spynnaker-git' 'python2-spynnaker-git')
+pkgver=4692.98a8fcf3e.3497.ac36bcaa.242.e954a29.460.12e29c5.791.1a59fec.2099.57546bc7.181.2e13446.755.67b4904.2298.0742876b.781.deaf5a7.1337.b843890.209.3815337.627.1fdb049
+pkgrel=1
+pkgdesc="Spinnaker implementation of PyNN"
+arch=('any')
+url="https://pypi.org/project/sPyNNaker/#files"
+license=('GPL')
+makedepends=('python2' 'python2-setuptools' 'python' 'python-setuptools')
+depends=('python2' 'python' 'python2-lazyarray' 'python-lazyarray' 'python-neo' 'python2-neo' 'python-quantities' 'python2-quantities' 'python-lxml' 'python2-lxml' 'python-jsonschema' 'python2-jsonschema' 'python-future' 'python2-future' 'python2-futures' 'python2-sortedcontainers' 'python-sortedcontainers' 'python2-sortedcollections' 'python-sortedcollections' 'python-requests' 'python2-requests')
+source=(
+"spalloc::git+https://github.com/SpiNNakerManchester/spalloc.git"
+"SpiNNaker_DataSpecification::git+https://github.com/SpiNNakerManchester/DataSpecification.git"
+"SpiNNaker_PACMAN::git+https://github.com/SpiNNakerManchester/PACMAN.git"
+"SpiNNMachine::git+https://github.com/SpiNNakerManchester/SpiNNMachine.git"
+"SpiNNMan::git+https://github.com/SpiNNakerManchester/SpiNNMan.git"
+"SpiNNStorageHandlers::git+https://github.com/SpiNNakerManchester/SpiNNStorageHandlers.git"
+"SpiNNUtilities::git+https://github.com/SpiNNakerManchester/SpiNNUtils.git"
+"sPyNNaker::git+https://github.com/SpiNNakerManchester/sPyNNaker.git"
+"SpiNNFrontEndCommon::git+https://github.com/SpiNNakerManchester/SpiNNFrontEndCommon.git"
+"spinn_common::git+https://github.com/SpiNNakerManchester/spinn_common.git"
+"spinnaker_tools::git+https://github.com/SpiNNakerManchester/spinnaker_tools.git"
+"SpiNNakerGraphFrontEnd::git+https://github.com/SpiNNakerManchester/SpiNNakerGraphFrontEnd.git"
+"spynnaker8::git+https://github.com/SpiNNakerManchester/sPyNNaker8.git"
+"https://files.pythonhosted.org/packages/source/P/PyNN/PyNN-0.9.4.tar.gz"
+)
+
+sha256sums=(
+'SKIP'
+'SKIP'
+'SKIP'
+'SKIP'
+'SKIP'
+'SKIP'
+'SKIP'
+'SKIP'
+'SKIP'
+'SKIP'
+'SKIP'
+'SKIP'
+'SKIP'
+'eb6172235ace66d825afeb99da90a4fe64796a81e46cfda64c67c542e41f2c47')
+
+pkgver() {
+ printf "%s.%s.%s.%s.%s.%s.%s.%s.%s.%s.%s.%s.%s.%s.%s.%s.%s.%s.%s.%s.%s.%s.%s.%s.%s.%s" $(git -C sPyNNaker rev-list --count HEAD) $(git -C sPyNNaker rev-parse --short HEAD) $(git -C SpiNNFrontEndCommon rev-list --count HEAD) $(git -C SpiNNFrontEndCommon rev-parse --short HEAD) $(git -C spinn_common rev-list --count HEAD) $(git -C spinn_common rev-parse --short HEAD) $(git -C spinnaker_tools rev-list --count HEAD) $(git -C spinnaker_tools rev-parse --short HEAD) $(git -C SpiNNakerGraphFrontEnd rev-list --count HEAD) $(git -C SpiNNakerGraphFrontEnd rev-parse --short HEAD) $(git -C spynnaker8 rev-list --count HEAD) $(git -C spynnaker8 rev-parse --short HEAD) $(git -C spalloc rev-list --count HEAD) $(git -C spalloc rev-parse --short HEAD) $(git -C SpiNNaker_DataSpecification rev-list --count HEAD) $(git -C SpiNNaker_DataSpecification rev-parse --short HEAD) $(git -C SpiNNaker_PACMAN rev-list --count HEAD) $(git -C SpiNNaker_PACMAN rev-parse --short HEAD) $(git -C SpiNNMachine rev-list --count HEAD) $(git -C SpiNNMachine rev-parse --short HEAD) $(git -C SpiNNMan rev-list --count HEAD) $(git -C SpiNNMan rev-parse --short HEAD) $(git -C SpiNNStorageHandlers rev-list --count HEAD) $(git -C SpiNNStorageHandlers rev-parse --short HEAD) $(git -C SpiNNUtilities rev-list --count HEAD) $(git -C SpiNNUtilities rev-parse --short HEAD)
+}
+
+prepare()
+{
+ cd "${srcdir}/SpiNNFrontEndCommon/c_common/front_end_common_lib/"
+ sed -i "s/python/python2/" Makefile
+ sed -i "s/python/python2/" local.mk
+
+ cd "${srcdir}/spinnaker_tools"
+ sed -i "s/==/=/" setup
+ sed -i "s/^SPINN_DIRS.*/\ \ &/" setup
+ sed -i '/\ \ SPINN_DIRS/ i SHELL=\`readlink /proc/\$\$/exe | xargs basename\`' setup
+ sed -i '/\ \ SPINN_DIRS/ i \ ' setup
+ sed -i '/\ \ SPINN_DIRS/ i if [ \"$SHELL\" = \"zsh\" ]; then' setup
+ sed -i '/\ \ SPINN_DIRS/ i \ \ SPINN_DIRS=\`cd \"\$(dirname \"\${(%):-\%N}\")\";pwd -P\`' setup
+ sed -i '/\ \ SPINN_DIRS.*BASH_SOURCE.*/ i else' setup
+ sed -i '/\ \ SPINN_DIRS.*BASH_SOURCE.*/ a fi' setup
+
+ source $PWD/setup
+
+ make clean
+ make || exit $?
+ cd ..
+ cd spinn_common
+ make clean
+ make install-clean
+ make || exit $?
+ make install
+ cd ..
+ cd SpiNNFrontEndCommon/c_common/
+ cd front_end_common_lib/
+ make install-clean
+ cd ..
+ make clean
+ PYTHONPATH="${srcdir}/SpiNNUtilities/" make || exit $?
+ make install
+ cd ../..
+ cd sPyNNaker/neural_modelling/
+ source $PWD/setup.bash
+ make clean
+ PYTHONPATH="${srcdir}/SpiNNUtilities/" make || exit $?
+ cd ../../SpiNNakerGraphFrontEnd/spinnaker_graph_front_end/examples/
+ make clean
+ PYTHONPATH="${srcdir}/SpiNNUtilities/" make || exit $?
+ echo "Neural model compilation completed"
+}
+
+package_python2-spynnaker-git() {
+ depends+=('python2')
+
+ cd "${srcdir}/spalloc"
+ python2 setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/SpiNNaker_DataSpecification"
+ python2 setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/SpiNNaker_PACMAN"
+ python2 setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/SpiNNMachine"
+ python2 setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/SpiNNMan"
+ python2 setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/SpiNNStorageHandlers"
+ python2 setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/SpiNNUtilities"
+ python2 setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/SpiNNFrontEndCommon"
+ python2 setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/SpiNNakerGraphFrontEnd"
+ python2 setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/sPyNNaker"
+ python2 setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/PyNN-0.9.4"
+ python2 setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/spynnaker8"
+ python2 setup.py install --root="${pkgdir}"
+
+
+ python2sitepackagesdir=`python2 -c "import site; print(site.getsitepackages()[0])"`
+
+ echo -n "directory to install python2 packages: "
+ echo ${python2sitepackagesdir}
+
+ cd "${pkgdir}/${python2sitepackagesdir}"
+ currentpath=`pwd`
+ python2 -c "import sys; import os; sys.path.insert(0,os.getcwd()); import spynnaker8.setup_pynn"
+
+ if [ -d "${pkgdir}/${python2sitepackagesdir}/pyNN/nest/_build/" ]; then
+ cd "${pkgdir}/${python2sitepackagesdir}/pyNN/nest/_build/"
+ mv pynn_extensions.so "${pkgdir}/usr/lib"
+ mv libpynn_extensions.so "${pkgdir}/usr/lib"
+ fi
+
+ cd "${pkgdir}/usr/bin"
+ mv get_cores_in_run_state get_cores_in_run_state2
+ mv spalloc spalloc2
+ mv spalloc-job spalloc-job2
+ mv spalloc-machine spalloc-machine2
+ mv spalloc-ps spalloc-ps2
+ mv spalloc-where-is spalloc-where-is2
+}
+
+package_python-spynnaker-git() {
+ depends+=('python')
+
+ cd "${srcdir}/spalloc"
+ python setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/SpiNNaker_DataSpecification"
+ python setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/SpiNNaker_PACMAN"
+ python setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/SpiNNMachine"
+ python setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/SpiNNMan"
+ python setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/SpiNNStorageHandlers"
+ python setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/SpiNNUtilities"
+ python setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/SpiNNFrontEndCommon"
+ python setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/SpiNNakerGraphFrontEnd"
+ python setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/sPyNNaker"
+ python setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/PyNN-0.9.4"
+ python setup.py install --root="${pkgdir}"
+
+ cd "${srcdir}/spynnaker8"
+ python setup.py install --root="${pkgdir}"
+
+ python3sitepackagesdir=`python -c "import site; print(site.getsitepackages()[0])"`
+
+ echo -n "directory to install python3 packages: "
+ echo ${python3sitepackagesdir}
+
+ if [ -d "${pkgdir}/${python3sitepackagesdir}/pyNN/nest/_build/" ]; then
+ cd "${pkgdir}/${python3sitepackagesdir}/pyNN/nest/_build/"
+ rm pynn_extensions.so
+ rm libpynn_extensions.so
+ fi
+}