diff --git a/.gitignore b/.gitignore
index c0029107..179afe55 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,11 +3,22 @@
# Everything else is managed by the conda-smithy rerender process.
# Please do not modify
+# Ignore all files and folders in root
*
!/conda-forge.yml
-!/*/
+# Don't ignore any files/folders if the parent folder is 'un-ignored'
+# This also avoids warnings when adding an already-checked file with an ignored parent.
+!/**/
+# Don't ignore any files/folders recursively in the following folders
!/recipe/**
!/.ci_support/**
+# Since we ignore files/folders recursively, any folders inside
+# build_artifacts gets ignored which trips some build systems.
+# To avoid that we 'un-ignore' all files/folders recursively
+# and only ignore the root build_artifacts folder.
+!/build_artifacts/**
+/build_artifacts
+
*.pyc
diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh
index b92838e0..d2be208a 100755
--- a/.scripts/build_steps.sh
+++ b/.scripts/build_steps.sh
@@ -65,12 +65,6 @@ if [[ -f "${FEEDSTOCK_ROOT}/LICENSE.txt" ]]; then
cp "${FEEDSTOCK_ROOT}/LICENSE.txt" "${RECIPE_ROOT}/recipe-scripts-license.txt"
fi
-if [[ "${sha:-}" == "" ]]; then
- pushd ${FEEDSTOCK_ROOT}
- sha=$(git rev-parse HEAD)
- popd
-fi
-
if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then
if [[ "x${BUILD_OUTPUT_ID:-}" != "x" ]]; then
EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --output-id ${BUILD_OUTPUT_ID}"
diff --git a/.scripts/run_docker_build.sh b/.scripts/run_docker_build.sh
index b70ef014..00f377a8 100755
--- a/.scripts/run_docker_build.sh
+++ b/.scripts/run_docker_build.sh
@@ -21,6 +21,12 @@ if [ -z ${FEEDSTOCK_NAME} ]; then
export FEEDSTOCK_NAME=$(basename ${FEEDSTOCK_ROOT})
fi
+if [[ "${sha:-}" == "" ]]; then
+ pushd "${FEEDSTOCK_ROOT}"
+ sha=$(git rev-parse HEAD)
+ popd
+fi
+
docker info
# In order for the conda-build process in the container to write to the mounted
diff --git a/README.md.orig b/README.md.orig
deleted file mode 100644
index 65d16b4f..00000000
--- a/README.md.orig
+++ /dev/null
@@ -1,238 +0,0 @@
-About nest-simulator
-====================
-
-Home: http://www.nest-simulator.org/
-
-Package license: GPL-2.0-or-later
-
-Feedstock license: [BSD-3-Clause](https://github.com/conda-forge/nest-simulator-feedstock/blob/master/LICENSE.txt)
-
-Summary: NEST is a simulator for spiking neural network models that focuses on the dynamics, size and structure of neural
-systems rather than on the exact morphology of individual neurons.
-
-
-Development: https://github.com/nest/nest-simulator
-
-Documentation: https://nest-simulator.readthedocs.io/en/latest/
-
-You can use NEST either as a for the interpreted programming language Python (PyNEST) or as a stand alone
-application (nest). PyNEST provides a set of commands to the Python interpreter which give you access to NEST's
-simulation kernel. With these commands, you describe and run your network simulation. You can also complement
-PyNEST with PyNN, a simulator-independent set of Python commands to formulate and run neural simulations. While
-you define your simulations in Python, the actual simulation is executed within NEST's highly optimized
-simulation kernel which is written in C++. A NEST simulation tries to follow the logic of an
-electrophysiological experiment that takes place inside a computer with the difference, that the neural system
-to be investigated must be defined by the experimenter. The neural system is defined by a possibly large number
-of neurons and their connections. In a NEST network, different neuron and synapse models can coexist. Any two
-neurons can have multiple connections with different properties. Thus, the connectivity can in general not
-be described by a weight or connectivity matrix but rather as an adjacency list. To manipulate or observe the
-network dynamics, the experimenter can define so-called devices which represent the various instruments (for
-measuring and stimulation) found in an experiment. These devices write their data either to memory or to file.
-NEST is extensible and new models for neurons, synapses, and devices can be added. To get started with NEST,
-please see the documentation page .
-
-
-Current build status
-====================
-
-
-
-
-
- Azure |
-
-
-
-
-
-
-
-
- Variant | Status |
-
-<<<<<<< HEAD
- linux_64_numpy1.18python3.8.____cpython |
-
-
-
-
- |
-
- linux_64_numpy1.19python3.9.____cpython |
-
-
-
-
- |
-
- osx_64_numpy1.18python3.8.____cpython |
-
-
-
-
- |
-
- osx_64_numpy1.19python3.9.____cpython |
-
-
-
-=======
- | linux_64_python3.6.____cpython |
-
-
-
-
- |
-
- linux_64_python3.7.____cpython |
-
-
-
-
- |
-
- linux_64_python3.8.____cpython |
-
-
-
-
- |
-
- linux_64_python3.9.____cpython |
-
-
-
-
- |
-
- osx_64_python3.6.____cpython |
-
-
-
-
- |
-
- osx_64_python3.7.____cpython |
-
-
-
-
- |
-
- osx_64_python3.8.____cpython |
-
-
-
-
- |
-
- osx_64_python3.9.____cpython |
-
-
-
->>>>>>> upstream/master
-
- |
-
-
-
-
- |
-
-
-
-Current release info
-====================
-
-| Name | Downloads | Version | Platforms |
-| --- | --- | --- | --- |
-| [![Conda Recipe](https://img.shields.io/badge/recipe-nest--simulator-green.svg)](https://anaconda.org/conda-forge/nest-simulator) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/nest-simulator.svg)](https://anaconda.org/conda-forge/nest-simulator) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/nest-simulator.svg)](https://anaconda.org/conda-forge/nest-simulator) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/nest-simulator.svg)](https://anaconda.org/conda-forge/nest-simulator) |
-
-Installing nest-simulator
-=========================
-
-Installing `nest-simulator` from the `conda-forge` channel can be achieved by adding `conda-forge` to your channels with:
-
-```
-conda config --add channels conda-forge
-conda config --set channel_priority strict
-```
-
-Once the `conda-forge` channel has been enabled, `nest-simulator` can be installed with:
-
-```
-conda install nest-simulator
-```
-
-It is possible to list all of the versions of `nest-simulator` available on your platform with:
-
-```
-conda search nest-simulator --channel conda-forge
-```
-
-
-About conda-forge
-=================
-
-[![Powered by NumFOCUS](https://img.shields.io/badge/powered%20by-NumFOCUS-orange.svg?style=flat&colorA=E1523D&colorB=007D8A)](http://numfocus.org)
-
-conda-forge is a community-led conda channel of installable packages.
-In order to provide high-quality builds, the process has been automated into the
-conda-forge GitHub organization. The conda-forge organization contains one repository
-for each of the installable packages. Such a repository is known as a *feedstock*.
-
-A feedstock is made up of a conda recipe (the instructions on what and how to build
-the package) and the necessary configurations for automatic building using freely
-available continuous integration services. Thanks to the awesome service provided by
-[CircleCI](https://circleci.com/), [AppVeyor](https://www.appveyor.com/)
-and [TravisCI](https://travis-ci.com/) it is possible to build and upload installable
-packages to the [conda-forge](https://anaconda.org/conda-forge)
-[Anaconda-Cloud](https://anaconda.org/) channel for Linux, Windows and OSX respectively.
-
-To manage the continuous integration and simplify feedstock maintenance
-[conda-smithy](https://github.com/conda-forge/conda-smithy) has been developed.
-Using the ``conda-forge.yml`` within this repository, it is possible to re-render all of
-this feedstock's supporting files (e.g. the CI configuration files) with ``conda smithy rerender``.
-
-For more information please check the [conda-forge documentation](https://conda-forge.org/docs/).
-
-Terminology
-===========
-
-**feedstock** - the conda recipe (raw material), supporting scripts and CI configuration.
-
-**conda-smithy** - the tool which helps orchestrate the feedstock.
- Its primary use is in the construction of the CI ``.yml`` files
- and simplify the management of *many* feedstocks.
-
-**conda-forge** - the place where the feedstock and smithy live and work to
- produce the finished article (built conda distributions)
-
-
-Updating nest-simulator-feedstock
-=================================
-
-If you would like to improve the nest-simulator recipe or build a new
-package version, please fork this repository and submit a PR. Upon submission,
-your changes will be run on the appropriate platforms to give the reviewer an
-opportunity to confirm that the changes result in a successful build. Once
-merged, the recipe will be re-built and uploaded automatically to the
-`conda-forge` channel, whereupon the built conda packages will be available for
-everybody to install and use from the `conda-forge` channel.
-Note that all branches in the conda-forge/nest-simulator-feedstock are
-immediately built and any created packages are uploaded, so PRs should be based
-on branches in forks and branches in the main repository should only be used to
-build distinct package versions.
-
-In order to produce a uniquely identifiable distribution:
- * If the version of a package **is not** being increased, please add or increase
- the [``build/number``](https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#build-number-and-string).
- * If the version of a package **is** being increased, please remember to return
- the [``build/number``](https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#build-number-and-string)
- back to 0.
-
-Feedstock Maintainers
-=====================
-
-* [@steffengraber](https://github.com/steffengraber/)
-
diff --git a/recipe/activate.sh b/recipe/activate.sh
deleted file mode 100755
index 5679c21d..00000000
--- a/recipe/activate.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/bash
-
-. "${CONDA_PREFIX}"/bin/nest_vars.sh
\ No newline at end of file
diff --git a/recipe/build.sh b/recipe/build.sh
index 25ab9dbf..052cc74c 100644
--- a/recipe/build.sh
+++ b/recipe/build.sh
@@ -46,9 +46,3 @@ if [[ -d ${PREFIX}/lib64 ]]
then
cp -R "${PREFIX}"/lib64/* "${PREFIX}"/lib
fi
-
-for CHANGE in "activate" "deactivate"
-do
- mkdir -p "${PREFIX}/etc/conda/${CHANGE}.d"
- sed "s#!!!SP_DIR!!!#${SP_DIR}#g" "${RECIPE_DIR}/${CHANGE}.sh" > "${PREFIX}/etc/conda/${CHANGE}.d/${PKG_NAME}_${CHANGE}.sh"
-done
\ No newline at end of file
diff --git a/recipe/deactivate.sh b/recipe/deactivate.sh
deleted file mode 100644
index 5f20f74f..00000000
--- a/recipe/deactivate.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-unset NEST_INSTALL_DIR
-unset NEST_DATA_DIR
-unset NEST_DOC_DIR
-unset NEST_MODULE_PATH
-unset NEST_PYTHON_PREFIX
\ No newline at end of file
diff --git a/recipe/meta.yaml b/recipe/meta.yaml
index 2167aecb..8133926d 100644
--- a/recipe/meta.yaml
+++ b/recipe/meta.yaml
@@ -1,6 +1,6 @@
{% set name = "nest-simulator" %}
{% set version = "3.6" %}
-{% set build = 3 %}
+{% set build = 4 %}
package:
name: {{ name|lower }}
@@ -82,7 +82,6 @@ test:
imports:
- nest
commands:
- - python -c "import nest; nest.help();"
- nest --help
- sli --help
diff --git a/recipe/post-link.sh b/recipe/post-link.sh
index de151dfd..1664cd8f 100644
--- a/recipe/post-link.sh
+++ b/recipe/post-link.sh
@@ -1,28 +1,30 @@
#!/bin/bash
-. "${CONDA_PREFIX}/bin/nest_vars.sh"
+now=$(date +"%b%d-%Y-%H%M%S")
COMPILER_FULL=$(bash nest-config --compiler)
-COMPILER_NAME=$(basename "${CXX}")
-#COMPILER_RUN="${CONDA_PREFIX}/bin/${COMPILER_NAME}"
-COMPILER_RUN=$(which "${COMPILER_NAME}")
+COMPILER_NAME=$(basename "${COMPILER_FULL}")
+COMPILER="${CONDA_PREFIX}/bin/${COMPILER_NAME}"
+
+# Install the same compiler then on build time.env list
+# To use nest with nestml in linux install
+# mamba install -c conda-forge gxx_linux-64
+#
+# To use nest with nestml in osx-64 install
+# mamba install -c conda-forge clangxx_osx-64
+#
+# To use nest with nestml in osx-arm64 install
+# mamba install -c conda-forge clangxx_osx-arm64
+#
+# Update `nest-config.sh` with `bash .nest-simulator-post-link.sh`
if [[ "$OSTYPE" == "linux-gnu"* ]]; then
- echo "COMPILER LINUX BUILD" >> "${PREFIX}"/.messages.txt
- bash nest-config --compiler >> "${PREFIX}"/.messages.txt
- sed -i "s|${COMPILER_FULL}|${COMPILER_RUN}|g" "${CONDA_PREFIX}"/bin/nest-config
- echo "COMPILER LINUX RUN" >> "${PREFIX}"/.messages.txt
- bash nest-config --compiler >> "${PREFIX}"/.messages.txt
+ cp "${CONDA_PREFIX}"/bin/nest-config "${CONDA_PREFIX}"/bin/nest-config-"${now}".orig
+ sed -i "s|${COMPILER_FULL}|${COMPILER}|g" "${CONDA_PREFIX}"/bin/nest-config
elif [[ "$OSTYPE" == "darwin"* ]]; then
- echo "COMPILER DARWIN BUILD" >> "${PREFIX}"/.messages.txt
- bash nest-config --compiler >> "${PREFIX}"/.messages.txt
- sed -i "s|${COMPILER_FULL}|${COMPILER_RUN}|g" "${CONDA_PREFIX}"/bin/nest-config
- sed -i "s|-fopenmp=libomp|-Xclang -fopenmp|g" "${CONDA_PREFIX}"/bin/nest-config
- echo "COMPILER DARWIN RUN" >> "${PREFIX}"/.messages.txt
- bash nest-config --compiler >> "${PREFIX}"/.messages.txt
- cat "${CONDA_PREFIX}"/bin/nest-config >> "${PREFIX}"/.messages.txt
+ cp "${CONDA_PREFIX}"/bin/nest-config "${CONDA_PREFIX}"/bin/nest-config-"${now}".orig
+ sed -i'.bac' "s|${COMPILER_FULL}|${COMPILER}|g" "${CONDA_PREFIX}"/bin/nest-config
+ sed -i'.bac' "s|-fopenmp=libomp|-Xclang -fopenmp|g" "${CONDA_PREFIX}"/bin/nest-config
else
- echo "$OSTYPE" >> "${PREFIX}"/.messages.txt
-fi
-
-
+ echo $OSTYPE
+fi
\ No newline at end of file