diff --git a/.gitignore b/.gitignore index 3e34a24..4c1c307 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /libneurosim-7d074da.tar.gz +/libneurosim-0364674.tar.gz diff --git a/libneurosim.spec b/libneurosim.spec index f83b51d..e23d25b 100644 --- a/libneurosim.spec +++ b/libneurosim.spec @@ -1,14 +1,7 @@ -# Issues reported upstream -# Python libraries are not installed in the right location -# https://github.com/INCF/libneurosim/issues/12 -# PR opened here: -# https://github.com/INCF/libneurosim/pull/14 - # Obsolete autotools m4 used # https://github.com/INCF/libneurosim/issues/11 -# %%global commit 57b76e222dd3196fa3c97ddfa2f8132627814c23 -%global commit 7d074da5124d6d2db4fd129706fa8465f99ffe9f +%global commit 03646747c8fe64fa3439ac2d282623b659f60c22 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global _description \ @@ -37,13 +30,12 @@ developed to support the use of libcsa from NEST. Name: libneurosim Version: 0 -Release: 2.20181028.git%{shortcommit}%{?dist} +Release: 3.20181124.git%{shortcommit}%{?dist} Summary: Common interfaces for neuronal simulators License: GPLv3+ URL: https://github.com/INCF/%{name} -# Source0: https://github.com/INCF/%%{name}/archive/%%{commit}/%%{name}-%%{shortcommit}.tar.gz -Source0: https://github.com/sanjayankur31/%{name}/archive/%{commit}/%{name}-%{shortcommit}.tar.gz +Source0: https://github.com/INCF/%{name}/archive/%{commit}/%{name}-%{shortcommit}.tar.gz BuildRequires: automake BuildRequires: autoconf @@ -77,24 +69,6 @@ BuildArch: noarch %description common The %{name}-common package contains files required by all sub packages. -%package -n python3-%{name} -Summary: Python3 support for %{name} -Requires: %{name}-common = %{version}-%{release} -%{?python_provide:%python_provide python3-%{name}} - -%description -n python3-%{name} -%{_description} - -%if %{with_py2} -%package -n python2-%{name} -Summary: Python2 support for %{name} -Requires: %{name}-common = %{version}-%{release} -%{?python_provide:%python_provide python2-%{name}} - -%description -n python2-%{name} -%{_description} -%endif - %if %{with_openmpi} %package openmpi Summary: %{name} built with openmpi @@ -114,29 +88,6 @@ Requires: %{name}-openmpi%{?_isa} = %{version}-%{release} %description openmpi-devel %{_description} -%package -n python3-%{name}-openmpi -Summary: Python3 support for %{name} built with openmpi -BuildRequires: openmpi-devel -BuildRequires: rpm-mpi-hooks -Requires: openmpi -Requires: %{name}-common = %{version}-%{release} -%{?python_provide:%python_provide python3-%{name}-openmpi} - -%description -n python3-%{name}-openmpi -%{_description} - -%if %{with_py2} -%package -n python2-%{name}-openmpi -Summary: Python2 support for %{name} built with openmpi -BuildRequires: openmpi-devel -BuildRequires: rpm-mpi-hooks -Requires: openmpi -Requires: %{name}-common = %{version}-%{release} -%{?python_provide:%python_provide python2-%{name}-openmpi} - -%description -n python2-%{name}-openmpi -%{_description} -%endif %endif @@ -160,29 +111,6 @@ Requires: %{name}-mpich%{?_isa} = %{version}-%{release} %description mpich-devel %{_description} -%package -n python3-%{name}-mpich -Summary: Python3 support for %{name} built with mpich -BuildRequires: mpich-devel -BuildRequires: rpm-mpi-hooks -Requires: mpich -Requires: %{name}-common = %{version}-%{release} -%{?python_provide:%python_provide python3-%{name}-mpich} - -%description -n python3-%{name}-mpich -%{_description} - -%if %{with_py2} -%package -n python2-%{name}-mpich -Summary: Python2 support for %{name} built with mpich -BuildRequires: mpich-devel -BuildRequires: rpm-mpi-hooks -Requires: mpich -Requires: %{name}-common = %{version}-%{release} -%{?python_provide:%python_provide python2-%{name}-mpich} - -%description -n python2-%{name}-mpich -%{_description} -%endif %endif %prep @@ -296,11 +224,6 @@ MPI_YES="yes" %global do_install \ %make_install -C %{name}-%{commit}$MPI_COMPILE_TYPE STRIP=/bin/true || exit -1 -# Move the python mpi files to the right place -%global correct_python_loc \ -mkdir $RPM_BUILD_ROOT/$PYTHON_LOC -v \ -mv $RPM_BUILD_ROOT/%{_libdir}/$MPI_TYPE/%{_lib}/python$PY_VERSION/site-packages/libpy*neurosim.so $RPM_BUILD_ROOT/$PYTHON_LOC/ -v - # Python 3 MPI_COMPILE_TYPE="" @@ -322,18 +245,14 @@ MPI_TYPE="mpich" MPI_COMPILE_TYPE="-mpich" PYTHON_VERSION=3 PY_VERSION=%{python3_version} -PYTHON_LOC=$MPI_PYTHON3_SITEARCH %{do_install} -%{correct_python_loc} # Python 2 %if %{with_py2} MPI_COMPILE_TYPE="-mpich-py2" PYTHON_VERSION=2 PY_VERSION=%{python2_version} -PYTHON_LOC=$MPI_PYTHON2_SITEARCH %{do_install} -%{correct_python_loc} %endif %{_mpich_unload} %endif @@ -346,18 +265,14 @@ MPI_TYPE="openmpi" MPI_COMPILE_TYPE="-openmpi" PYTHON_VERSION=3 PY_VERSION=%{python3_version} -PYTHON_LOC=$MPI_PYTHON3_SITEARCH %{do_install} -%{correct_python_loc} # Python 2 %if %{with_py2} MPI_COMPILE_TYPE="-openmpi-py2" PYTHON_VERSION=2 PY_VERSION=%{python2_version} -PYTHON_LOC=$MPI_PYTHON2_SITEARCH %{do_install} -%{correct_python_loc} %endif %{_openmpi_unload} %endif @@ -369,40 +284,48 @@ find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';' %files %{_libdir}/%{name}.so.0 %{_libdir}/%{name}.so.0.0.0 +%{_libdir}/libpy3neurosim.so.0 +%{_libdir}/libpy3neurosim.so.0.0.0 +%if %{with_py2} +%{_libdir}/libpy2neurosim.so.0 +%{_libdir}/libpy2neurosim.so.0.0.0 +%{_libdir}/libpyneurosim.so.0 +%{_libdir}/libpyneurosim.so.0.0.0 +%endif %files devel %{_includedir}/neurosim -%{_libdir}/*.so +%{_libdir}/%{name}.so +%{_libdir}/libpy3neurosim.so +%if %{with_py2} +%{_libdir}/libpy2neurosim.so +%{_libdir}/libpyneurosim.so +%endif %files common %license COPYING %doc README.md -%files -n python3-%{name} -%{python3_sitearch}/libpy3neurosim.so - -%if %{with_py2} -%files -n python2-%{name} -%{python2_sitearch}/libpy2neurosim.so -%{python2_sitearch}/libpyneurosim.so -%endif - %if %{with_mpich} %files mpich %{_libdir}/mpich/lib/%{name}.so.0 %{_libdir}/mpich/lib/%{name}.so.0.0.0 +%{_libdir}/mpich/lib/libpy3neurosim.so.0 +%{_libdir}/mpich/lib/libpy3neurosim.so.0.0.0 +%if %{with_py2} +%{_libdir}/mpich/lib/libpy2neurosim.so.0 +%{_libdir}/mpich/lib/libpy2neurosim.so.0.0.0 +%{_libdir}/mpich/lib/libpyneurosim.so.0 +%{_libdir}/mpich/lib/libpyneurosim.so.0.0.0 +%endif %files mpich-devel %{_includedir}/mpich*/neurosim -%{_libdir}/mpich/lib/*.so - -%files -n python3-%{name}-mpich -%{python3_sitearch}/mpich/libpy3neurosim.so - +%{_libdir}/mpich/lib/%{name}.so +%{_libdir}/mpich/lib/libpy3neurosim.so %if %{with_py2} -%files -n python2-%{name}-mpich -%{python2_sitearch}/mpich/libpy2neurosim.so -%{python2_sitearch}/mpich/libpyneurosim.so +%{_libdir}/mpich/lib/libpy2neurosim.so +%{_libdir}/mpich/lib/libpyneurosim.so %endif %endif @@ -410,22 +333,33 @@ find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';' %files openmpi %{_libdir}/openmpi/lib/%{name}.so.0 %{_libdir}/openmpi/lib/%{name}.so.0.0.0 +%{_libdir}/openmpi/lib/libpy3neurosim.so.0 +%{_libdir}/openmpi/lib/libpy3neurosim.so.0.0.0 +%if %{with_py2} +%{_libdir}/openmpi/lib/libpy2neurosim.so.0 +%{_libdir}/openmpi/lib/libpy2neurosim.so.0.0.0 +%{_libdir}/openmpi/lib/libpyneurosim.so.0 +%{_libdir}/openmpi/lib/libpyneurosim.so.0.0.0 +%endif %files openmpi-devel %{_includedir}/openmpi*/neurosim -%{_libdir}/openmpi/lib/*.so - -%files -n python3-%{name}-openmpi -%{python3_sitearch}/openmpi/libpy3neurosim.so - +%{_libdir}/openmpi/lib/%{name}.so +%{_libdir}/openmpi/lib/libpy3neurosim.so %if %{with_py2} -%files -n python2-%{name}-openmpi -%{python2_sitearch}/openmpi/libpy2neurosim.so -%{python2_sitearch}/openmpi/libpyneurosim.so +%{_libdir}/openmpi/lib/libpy2neurosim.so +%{_libdir}/openmpi/lib/libpyneurosim.so %endif %endif + %changelog +* Sat Nov 24 2018 Ankur Sinha - 0-3.20181124.git0364674 +- Update to latest upstream commit +- Put libraries in correct locations. libpyneurosim is NOT a python extension module +- Remove python sub packages: other software must link against both libneurosim and libpyneurosim +- All explained in: https://github.com/INCF/libneurosim/issues/12 + * Sun Oct 28 2018 Ankur Sinha - 0-2.20181028.git7d074da - Rebuild using conditional diff --git a/sources b/sources index 2aa0512..f44c1a9 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libneurosim-7d074da.tar.gz) = cbc0b5e505c7203906f605be74094acaa044aa4ec3377fc08c2eb275307a56ccb44750347e1112b7cab6615841e67ae56d6660a57f6c28acb10dea1717b96f75 +SHA512 (libneurosim-0364674.tar.gz) = 0a5fa2f7925b386c1a16cf8c28a1355ed7af171113fa5986a435fda4424054abb07446f8d672d24404d1d8871ac19c710a0869ef503a972211b7f4908c393a9b