/usr/lib/neuron/bin/nrniv_makefile is in neuron-dev 7.5-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 | #
# This makefile has the rules necessary for making the custom version of nrniv
# called "special" from various mod files. The variable "MODOBJFILES" should
# be set on the command line to list the .o files that are needed.
#
prefix = /usr
exec_prefix = /usr/lib/neuron
bindir = ${exec_prefix}/bin
sbindir = ${exec_prefix}/sbin
libexecdir = ${prefix}/lib/x86_64-linux-gnu
datadir = ${prefix}/share
sysconfdir = /etc
sharedstatedir = ${prefix}/com
localstatedir = /var
libdir = ${prefix}/lib/x86_64-linux-gnu
infodir = ${prefix}/share/info
mandir = ${prefix}/share/man
includedir = ${prefix}/include
pkgdatadir = $(datadir)/nrn
pkglibdir = $(libdir)/nrn
pkgincludedir = $(includedir)/nrn
libobjdir = $(libdir)
DEFS = -DHAVE_CONFIG_H
LDFLAGS = $(UserLDFLAGS) -Wl,-Bsymbolic-functions -Wl,-z,relro
LIBS = $(BGTRACE_LIBS) -lm -ldl
X_CFLAGS =
X_LIBS = -lX11
X_EXTRA_LIBS =
X_PRE_LIBS =
IV_LIBS = /build/neuron-Ii8qHH/neuron-7.5/debian/tmp_iv/usr/lib/x86_64-linux-gnu/libIVhines.la $(X_PRE_LIBS) $(X_LIBS) $(X_EXTRA_LIBS)
IVOS_LIB =
PVM_LIBS =
NJ_LIBS =
PY_LIBS = -lnrnpython -L/usr/lib -lpython3.6m -lpthread -ldl -lutil -lexpat -L/usr/lib -lz -lexpat -R/usr/lib
NRNNI_LIBS =
PTHREAD_CC=mpicc
PTHREAD_CFLAGS=
PTHREAD_LIBS=
INCLUDES = -I. -I.. -I$(pkgincludedir) -I$(libdir) $(UserINCFLAGS)
LIBTOOL = $(pkgdatadir)/libtool --tag=CC
CC = mpicc
CXX = mpic++
CFLAGS = -g -O2 -fdebug-prefix-map=/build/neuron-Ii8qHH/neuron-7.5=. -fstack-protector-strong -Wformat -Werror=format-security $(PTHREAD_CFLAGS)
CXXFLAGS = -g -O2 -fdebug-prefix-map=/build/neuron-Ii8qHH/neuron-7.5=. -fstack-protector-strong -Wformat -Werror=format-security $(PTHREAD_CFLAGS)
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
CCLD = $(CC)
CXXLD = $(CXX)
CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS)
#CXXPURELINK = $(LIBTOOL) --tag=purify --mode=link purify $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS)
LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS)
#lnrnmpi =
lnrnmpi = -lnrnmpi
NRNLIBS = -L$(libdir) -lnrnoc -loc \
-lnrniv -livoc -loc \
-lneuron_gnu -lscopmath $(lnrnmpi) \
-lmemacs -lmeschach \
$(IVOS_LIB) $(IV_LIBS) \
-L/usr/lib/x86_64-linux-gnu/lib -lreadline -ltermcap \
$(NJ_LIBS) $(PY_LIBS) $(NRNNI_LIBS) $(PVM_LIBS) $(PTHREAD_LIBS)
NRNOCOBJS = $(libobjdir)/ocmain.o $(libobjdir)/nrnnoiv.o $(libobjdir)/ocnoiv.o
NRNIVOBJS = $(libobjdir)/nrnmain.o $(libobjdir)/ivocmain.o $(libobjdir)/nvkludge.o
.SUFFIXES:
.SUFFIXES: .c .mod .o
#
# How to make a .o file from a .mod file. Note that we have to delete the
# .c file, or else make will get confused. We have to go directly from
# a .mod to a .o file because otherwise GNU make will try to use a rule
# involving m2c. Argh!! Why did they have to build in so many implicit
# rules?
#
#.mod.o:
# $(bindir)/nocmodl $* || (rm -f $*.c; exit 1)
# $(COMPILE) -c $*.c
# rm -f $*.c
#
# some experimentation gave promising results for the following.
# it remains to be seen how portable it is. It seems to work
# for gnu make and the /usr/ccs/bin/make distributed with solaris.
#%.o : %.mod
.mod.c:
$(bindir)/nocmodl $*
.c.o:
$(COMPILE) -c $*.c
.mod.o:
$(bindir)/nocmodl $*
$(COMPILE) -c $*.c
mod_func.o: mod_func.c
$(COMPILE) -c $<
special: $(MODOBJFILES) $(COBJFILES) mod_func.o
$(CXXLINK) -o special $(NRNIVOBJS) $(MODOBJFILES) mod_func.o $(COBJFILES) $(NRNLIBS) $(LIBS)
#special: $(MODOBJFILES) $(COBJFILES) mod_func.o
# if test "$(USEPURIFY)" = "yes" ; then \
# $(CXXPURELINK) -o special $(NRNIVOBJS) $(MODOBJFILES) mod_func.o $(COBJFILES) $(NRNLIBS) $(LIBS) ;\
# echo "if there is an error perhaps you need '/opt/Rational/config/start_lmgrd_on_NeuronDev'"; \
# echo 'if you cannot run then perhaps you need a LD_LIBRARY_PATH as in:'; \
# echo 'export LD_LIBRARY_PATH=/home/hines/pcache/home/hines/neuron/iv/i686/lib:/home/hines/pcache/home/hines/neuron/purify/i686/lib:/home/hines/neuron/iv/i686/lib:/home/hines/neuron/purify/i686/lib:/usr/X11R6/lib:/usr/X11R6/lib/modules'; \
# else \
# $(CXXLINK) -o special $(NRNIVOBJS) $(MODOBJFILES) mod_func.o $(COBJFILES) $(NRNLIBS) $(LIBS) ;\
# fi
|