diff --git a/0001-Unbundle-Random123.patch b/0001-Unbundle-Random123.patch index db8333f..d10cd48 100644 --- a/0001-Unbundle-Random123.patch +++ b/0001-Unbundle-Random123.patch @@ -1,7 +1,7 @@ From b5a4df18e249b9b0181698e3353b57e1063ebede Mon Sep 17 00:00:00 2001 From: "Ankur Sinha (Ankur Sinha Gmail)" Date: Wed, 19 Jun 2019 18:35:39 +0100 -Subject: [PATCH 1/3] Unbundle Random123 +Subject: [PATCH 1/6] Unbundle Random123 --- configure.ac | 2 +- diff --git a/0002-Unbundle-readline.patch b/0002-Unbundle-readline.patch index 820b57c..3f58f23 100644 --- a/0002-Unbundle-readline.patch +++ b/0002-Unbundle-readline.patch @@ -1,7 +1,7 @@ From 6acd994ba41f05cef28c789c9125f264f0d4e9cc Mon Sep 17 00:00:00 2001 From: "Ankur Sinha (Ankur Sinha Gmail)" Date: Wed, 19 Jun 2019 18:37:49 +0100 -Subject: [PATCH 2/3] Unbundle readline +Subject: [PATCH 2/6] Unbundle readline --- configure.ac | 3 +-- diff --git a/0003-Install-ivstream-header.patch b/0003-Install-ivstream-header.patch index 09178f3..5f9bbe5 100644 --- a/0003-Install-ivstream-header.patch +++ b/0003-Install-ivstream-header.patch @@ -1,7 +1,7 @@ From a9e73c36d673e02d5cf946a4356d2feec04993d2 Mon Sep 17 00:00:00 2001 From: "Ankur Sinha (Ankur Sinha Gmail)" Date: Wed, 19 Jun 2019 22:15:36 +0100 -Subject: [PATCH 3/3] Install ivstream header +Subject: [PATCH 3/6] Install ivstream header --- src/ivos/Makefile.am | 2 +- diff --git a/0004-Install-all-headers.patch b/0004-Install-all-headers.patch new file mode 100644 index 0000000..893ca71 --- /dev/null +++ b/0004-Install-all-headers.patch @@ -0,0 +1,257 @@ +From 69b24f44f1bf0b5ee8d76c81b190832b60d2864d Mon Sep 17 00:00:00 2001 +From: "Ankur Sinha (Ankur Sinha Gmail)" +Date: Sun, 23 Jun 2019 18:19:28 +0100 +Subject: [PATCH 4/6] Install all headers + +--- + src/gnu/Makefile.am | 2 +- + src/ivoc/Makefile.am | 2 +- + src/memacs/Makefile.am | 2 +- + src/mesch/Makefile.am | 2 +- + src/modlunit/Makefile.am | 2 +- + src/ni_pci_6229/Makefile.am | 2 +- + src/nmodl/Makefile.am | 2 +- + src/nrniv/Makefile.am | 2 +- + src/nrnoc/Makefile.am | 2 +- + src/nrnpython/Makefile.am | 2 +- + src/oc/Makefile.am | 2 +- + src/readline/Makefile.am | 2 +- + src/scopmath/Makefile.am | 2 +- + src/sparse13/Makefile.am | 2 +- + src/sundials/cvodes/Makefile.am | 2 +- + src/sundials/ida/Makefile.am | 2 +- + src/sundials/shared/Makefile.am | 2 +- + src/uxnrnbbs/Makefile.am | 2 +- + 18 files changed, 18 insertions(+), 18 deletions(-) + +diff --git a/src/gnu/Makefile.am b/src/gnu/Makefile.am +index 533cf878..27f7d682 100755 +--- a/src/gnu/Makefile.am ++++ b/src/gnu/Makefile.am +@@ -18,7 +18,7 @@ libneuron_gnu_la_SOURCES = ACG.cpp Binomial.cpp Complex.cpp DiscUnif.cpp \ + Normal.cpp Poisson.cpp RNG.cpp Random.cpp RndInt.cpp SmplHist.cpp \ + SmplStat.cpp Uniform.cpp Weibull.cpp builtin.cpp d_avec.cpp d_vec.cpp + +-noinst_HEADERS = ACG.h Binomial.h Complex.h DiscUnif.h Erlang.h \ ++pkginclude_HEADERS = ACG.h Binomial.h Complex.h DiscUnif.h Erlang.h \ + Geom.h HypGeom.h LogNorm.h MLCG.h NegExp.h Normal.h Poisson.h RNG.h \ + Random.h RndInt.h SmplHist.h SmplStat.h Uniform.h Weibull.h \ + neuron_gnu_builtin.h d_avec.h d_defs.h d_vec.h neuron_gnu_std.h +diff --git a/src/ivoc/Makefile.am b/src/ivoc/Makefile.am +index 4ab2fdd2..8c0b2a6f 100755 +--- a/src/ivoc/Makefile.am ++++ b/src/ivoc/Makefile.am +@@ -61,7 +61,7 @@ libivoc_la_SOURCES = ivoc.cpp xmenu.cpp graph.cpp rubband.cpp grmanip.cpp \ + ocpointer.cpp gifimage.cpp ocnoiv1.cpp grglyph.cpp mlinedit.cpp \ + $(sysdep_sources) ivocman1.cpp ocptrvector.cpp + +-noinst_HEADERS = apwindow.h axis.h bndedval.h cbwidget.h checkpnt.h \ ++pkginclude_HEADERS = apwindow.h axis.h bndedval.h cbwidget.h checkpnt.h \ + datapath.h dbrowser.h epsprint.h field.h fourier.h \ + graph.h hocmark.h idraw.h ivoc.h ivocconf.h mymath.h htlist.h \ + objcmd.h oc2iv.h ocbox.h ocbrowsr.h occlass.h ocdeck.h ocfile.h \ +diff --git a/src/memacs/Makefile.am b/src/memacs/Makefile.am +index 57ae9354..c59b7bbf 100755 +--- a/src/memacs/Makefile.am ++++ b/src/memacs/Makefile.am +@@ -16,7 +16,7 @@ libmemacs_la_SOURCES = ansi.c basic.c bind.c buffer.c display.c file.c \ + search.c spawn.c tcap.c termio.c window.c word.c + + ## The list of header files that also have to go into the distribution. +-noinst_HEADERS = ebind.h edef.h efunc.h epath.h estruct.h redef.h intfunc.h ++pkginclude_HEADERS = ebind.h edef.h efunc.h epath.h estruct.h redef.h intfunc.h + + ## Extra stuff that should be put in a distribution but doesn't get + ## compiled. +diff --git a/src/mesch/Makefile.am b/src/mesch/Makefile.am +index 0b4faae2..5cd86d22 100755 +--- a/src/mesch/Makefile.am ++++ b/src/mesch/Makefile.am +@@ -14,5 +14,5 @@ libmeschach_la_SOURCES = arnoldi.c bdfactor.c bkpfacto.c chfactor.c \ + zmatio.c zmatlab.c zmatop.c zmemory.c znorm.c zqrfctr.c zschur.c \ + zsolve.c zvecop.c + +-noinst_HEADERS = err.h iter.h machine.h matlab.h matrix.h matrix2.h \ ++pkginclude_HEADERS = err.h iter.h machine.h matlab.h matrix.h matrix2.h \ + meminfo.h oldnames.h sparse.h sparse2.h zmatrix.h zmatrix2.h +diff --git a/src/modlunit/Makefile.am b/src/modlunit/Makefile.am +index 88c10563..309a6ab3 100755 +--- a/src/modlunit/Makefile.am ++++ b/src/modlunit/Makefile.am +@@ -5,7 +5,7 @@ modlunit_SOURCES = parse1.y lex.l consist.c declare.c init.c io.c \ + units1.c version.c + + ## The list of .h files that are needed in the distribution. +-noinst_HEADERS = extargs.h extdef.h model.h symbol.h units.h parse1.h \ ++pkginclude_HEADERS = extargs.h extdef.h model.h symbol.h units.h parse1.h \ + macmunit.h modlunit.h + + ## for building a dos version +diff --git a/src/ni_pci_6229/Makefile.am b/src/ni_pci_6229/Makefile.am +index 5362243b..fead6aa7 100644 +--- a/src/ni_pci_6229/Makefile.am ++++ b/src/ni_pci_6229/Makefile.am +@@ -35,6 +35,6 @@ $(NOD)/ai.o $(NOD)/ao.o + + libni6229_la_LIBADD = $(LO) + +-noinst_HEADERS = nrndaq.h ++pkginclude_HEADERS = nrndaq.h + + EXTRA_DIST = notes_niddk run .runinfo test1.hoc test5.hoc +diff --git a/src/nmodl/Makefile.am b/src/nmodl/Makefile.am +index 2d14a3b6..29281fba 100755 +--- a/src/nmodl/Makefile.am ++++ b/src/nmodl/Makefile.am +@@ -19,7 +19,7 @@ EXTRA_DIST = cout.c lex.c nmodl.mak + AM_YFLAGS = -d + + ## The list of .h files that are needed in the distribution. +-noinst_HEADERS = extdef.h extdef2.h extdef5.h modl.h symbol.h parse1.h \ ++pkginclude_HEADERS = extdef.h extdef2.h extdef5.h modl.h symbol.h parse1.h \ + difeqdef.h macnmodl.h carbonnmodl.h nmodlfunc.h + + +diff --git a/src/nrniv/Makefile.am b/src/nrniv/Makefile.am +index 97e9cdaf..45b48b8d 100755 +--- a/src/nrniv/Makefile.am ++++ b/src/nrniv/Makefile.am +@@ -152,7 +152,7 @@ nrniv_DEPENDENCIES = \ + + + ## Header files that must be included in the distribution: +-noinst_HEADERS = ndatclas.h nrnclass.h nrnmenu.h nrnoc2iv.h ppshape.h \ ++pkginclude_HEADERS = ndatclas.h nrnclass.h nrnmenu.h nrnoc2iv.h ppshape.h \ + rot3band.h rotate3d.h secbrows.h shape.h shapeplt.h singlech.h \ + linmod.h nrnste.h arraypool.h structpool.h \ + kschan.h kssingle.h nonlinz.h nrnhash.h \ +diff --git a/src/nrnoc/Makefile.am b/src/nrnoc/Makefile.am +index 8d38192b..25dea7db 100755 +--- a/src/nrnoc/Makefile.am ++++ b/src/nrnoc/Makefile.am +@@ -104,7 +104,7 @@ pkginclude_HEADERS = neuron.h md1redef.h md2redef.h section.h nrnoc_ml.h \ + options.h nrnredef.h multisplit.h multicore.h nmodlmutex.h + + ## Header files that need to be included in the distribution but not installed: +-noinst_HEADERS = hocusr.h \ ++pkginclude_HEADERS = hocusr.h \ + osxdlfcn.h osxdlfcn.c multicore.c \ + nonvintblock.h nrndae_c.h + +diff --git a/src/nrnpython/Makefile.am b/src/nrnpython/Makefile.am +index 1bf86d8c..52b452e3 100755 +--- a/src/nrnpython/Makefile.am ++++ b/src/nrnpython/Makefile.am +@@ -27,7 +27,7 @@ libnrnpython@npy_pyver10@_la_SOURCES = nrnpython.cpp nrnpy_hoc.cpp nrnpy_nrn.cpp + + librxdmath_la_SOURCES = rxdmath.c $(EXTEND) + +-noinst_HEADERS = nrnpython.h nrnwrap_Python.h nrnpy_reg.h \ ++pkginclude_HEADERS = nrnpython.h nrnwrap_Python.h nrnpy_reg.h \ + nrnpy_hoc_2.h nrnpy_hoc_3.h \ + nrnpy_nrn_2.h nrnpy_nrn_3.h hoccontext.h \ + nrnpy_utils.h rxd.h grids.h +diff --git a/src/oc/Makefile.am b/src/oc/Makefile.am +index 7c673b85..fd5e3884 100755 +--- a/src/oc/Makefile.am ++++ b/src/oc/Makefile.am +@@ -66,7 +66,7 @@ pkginclude_HEADERS = hoc.h hoclist.h hocdec.h hocassrt.h nrnisaac.h \ + + ## Header files that need to be copied into the distribution but do not need + ## to be installed: +-noinst_HEADERS = code.h equation.h hocmodl.h hocstr.h \ ++pkginclude_HEADERS = code.h equation.h hocmodl.h hocstr.h \ + profile.h redef.h parse.h mcran4.h nrnmpi.h nrnrt.h isaac64.h \ + nrnfilewrap.h nrn_vsscanf.c classreg.h + +diff --git a/src/readline/Makefile.am b/src/readline/Makefile.am +index 53dab988..60438d2c 100755 +--- a/src/readline/Makefile.am ++++ b/src/readline/Makefile.am +@@ -3,7 +3,7 @@ lib_LTLIBRARIES = libreadline.la + + libreadline_la_SOURCES = readline.c history.c funmap.c keymaps.c + +-noinst_HEADERS = chardefs.h emacs_keymap.h history.h keymaps.h \ ++pkginclude_HEADERS = chardefs.h emacs_keymap.h history.h keymaps.h \ + readline.h vi_keymap.h + + install-exec-hook: +diff --git a/src/scopmath/Makefile.am b/src/scopmath/Makefile.am +index 6de7c306..93c2d15b 100755 +--- a/src/scopmath/Makefile.am ++++ b/src/scopmath/Makefile.am +@@ -14,7 +14,7 @@ libscopmath_la_SOURCES = abort.c adams.c adeuler.c adrunge.c advance.c \ + ssimplic_thread.c + + ## Header files that need to be included in the distribution: +-noinst_HEADERS = errcodes.h f2c.h scopenv.h newton_struct.h ++pkginclude_HEADERS = errcodes.h f2c.h scopenv.h newton_struct.h + + EXTRA_DIST = scpmth.mak + +diff --git a/src/sparse13/Makefile.am b/src/sparse13/Makefile.am +index 04bcdd17..5a8d8341 100755 +--- a/src/sparse13/Makefile.am ++++ b/src/sparse13/Makefile.am +@@ -10,7 +10,7 @@ libsparse13_la_SOURCES = spalloc.c spbuild.c spfactor.c spoutput.c \ + + pkginclude_HEADERS = spmatrix.h spconfig.h cspmatrix.h cspredef.h + +-noinst_HEADERS = spdefs.h ++pkginclude_HEADERS = spdefs.h + + + +diff --git a/src/sundials/cvodes/Makefile.am b/src/sundials/cvodes/Makefile.am +index 5178f3b8..a88ca359 100755 +--- a/src/sundials/cvodes/Makefile.am ++++ b/src/sundials/cvodes/Makefile.am +@@ -16,7 +16,7 @@ libcvodes_la_SOURCES = \ + cvodesio.c \ + cvspgmr.c + +-noinst_HEADERS = \ ++pkginclude_HEADERS = \ + cvband.h \ + cvband_impl.h \ + cvbandpre.h \ +diff --git a/src/sundials/ida/Makefile.am b/src/sundials/ida/Makefile.am +index 0bf005d0..17aff4ab 100755 +--- a/src/sundials/ida/Makefile.am ++++ b/src/sundials/ida/Makefile.am +@@ -14,7 +14,7 @@ libida_la_SOURCES = \ + idaio.c \ + idaspgmr.c + +-noinst_HEADERS = \ ++pkginclude_HEADERS = \ + idaband.h \ + idaband_impl.h \ + idabbdpre.h \ +diff --git a/src/sundials/shared/Makefile.am b/src/sundials/shared/Makefile.am +index e1d22cc5..4d71b36c 100755 +--- a/src/sundials/shared/Makefile.am ++++ b/src/sundials/shared/Makefile.am +@@ -25,7 +25,7 @@ libshared_la_SOURCES = band.c dense.c iterative.c \ + nvector.c nvector_serial.c smalldense.c spgmr.c sundialsmath.c \ + $(PARSRC1) + +-noinst_HEADERS = band.h dense.h iterative.h \ ++pkginclude_HEADERS = band.h dense.h iterative.h \ + nvector.h nvector_serial.h smalldense.h spgmr.h \ + sundialsmath.h sundialstypes.h \ + $(PARINC1) +diff --git a/src/uxnrnbbs/Makefile.am b/src/uxnrnbbs/Makefile.am +index 8bf07048..f5e10ac2 100755 +--- a/src/uxnrnbbs/Makefile.am ++++ b/src/uxnrnbbs/Makefile.am +@@ -10,4 +10,4 @@ bin_PROGRAMS = mos2nrn + + mos2nrn_SOURCES = mos2nrn.cpp + +-noinst_HEADERS = nrnbbs.h ++pkginclude_HEADERS = nrnbbs.h +-- +2.21.0 + diff --git a/0005-Disable-python-bits-in-install-exec-hook.patch b/0005-Disable-python-bits-in-install-exec-hook.patch new file mode 100644 index 0000000..fbcf796 --- /dev/null +++ b/0005-Disable-python-bits-in-install-exec-hook.patch @@ -0,0 +1,36 @@ +From 8efe1debbf55107a0b49754d8159de55792684b0 Mon Sep 17 00:00:00 2001 +From: "Ankur Sinha (Ankur Sinha Gmail)" +Date: Wed, 19 Jun 2019 21:45:15 +0100 +Subject: [PATCH 5/6] Disable python bits in install exec hook + +--- + Makefile.am | 13 ------------- + 1 file changed, 13 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 6e7b64d6..9f5c4deb 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -67,19 +67,6 @@ mswin: + + endif + +-if BUILD_NRNPYTHON +-install-exec-hook: +- echo "enter install-exec-hook in nrn/Makefile.am" +- if test "@ac_pysetup@" != "no" ; then \ +- cd src/nrnpython ; \ +- $(PYTHON) setup.py install @ac_pysetup@ ;\ +- fi +- if test "@ac_diagnose@" != "no" ; then \ +- sh bin/nrndiagnose.sh ; \ +- fi +- echo "leave install-exec-hook in nrn/Makefile.am" +-endif +- + ALPHADIR = hines@neuron.yale.edu:/home/htdocs/ftp/neuron/versions/alpha + + if MAKE_RPMS +-- +2.21.0 + diff --git a/0006-Remove-duplicate-file-installation.patch b/0006-Remove-duplicate-file-installation.patch new file mode 100644 index 0000000..fd4f9a6 --- /dev/null +++ b/0006-Remove-duplicate-file-installation.patch @@ -0,0 +1,25 @@ +From 4063feaca8f35071c0b93b7fb875d4b89e5b653b Mon Sep 17 00:00:00 2001 +From: "Ankur Sinha (Ankur Sinha Gmail)" +Date: Sun, 23 Jun 2019 18:31:52 +0100 +Subject: [PATCH 6/6] Remove duplicate file installation + +--- + src/nrniv/Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/nrniv/Makefile.am b/src/nrniv/Makefile.am +index 45b48b8d..1c2e40a3 100755 +--- a/src/nrniv/Makefile.am ++++ b/src/nrniv/Makefile.am +@@ -162,7 +162,7 @@ pkginclude_HEADERS = ndatclas.h nrnclass.h nrnmenu.h nrnoc2iv.h ppshape.h \ + multisplitcontrol.h nvector_nrnthread.h \ + bbsavestate.h nrnbbcore_write.h nrnsection_mapping.h\ + nrnmusic.cpp nrndae.h matrixmap.h \ +- structpool.h nrnhash_alt.h ++ nrnhash_alt.h + + ## We have to play a trick on automake to get it to install the .o files in + ## an architecture-dependent subdirectory. (Apparently automake's authors +-- +2.21.0 + diff --git a/neuron.spec b/neuron.spec index abe1eca..cb15ed5 100644 --- a/neuron.spec +++ b/neuron.spec @@ -27,7 +27,7 @@ Please install the %{name}-devel package to compile nmodl files and so on. Name: neuron Version: 7.7.1 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A flexible and powerful simulator of neurons and networks License: GPLv3+ @@ -43,6 +43,9 @@ Patch0: 0001-Unbundle-Random123.patch # Unbundle readline Patch1: 0002-Unbundle-readline.patch Patch2: 0003-Install-ivstream-header.patch +Patch3: 0004-Install-all-headers.patch +Patch4: 0005-Disable-python-bits-in-install-exec-hook.patch +Patch5: 0006-Remove-duplicate-file-installation.patch # Random123 does not build on these, so neither can NEURON @@ -265,6 +268,9 @@ mv $RPM_BUILD_ROOT/%{_bindir}/oc $RPM_BUILD_ROOT/%{_bindir}/hoc %{_datadir}/%{tarname}/demo %changelog +* Sun Jun 23 2019 Ankur Sinha - 7.7.1-4 +- Install all header files + * Wed Jun 19 2019 Ankur Sinha - 7.7.1-3 - Replace patch to inclde required headers