forked from Ermentrout/xppaut
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Makefile.avi
executable file
·242 lines (227 loc) · 7.65 KB
/
Makefile.avi
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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
VERSION= xppaut4.71
#
# This Makefile should be read and edited for your architecture.
# All of the machines on which I have tested the software are
# included here. Copy it first so you dont screw up the original
#
# -DSTRUPR - your compiler has strupr
# -DNORAND48 - your compiler does not have drand48 and srand48
# -DNOERRNO - errno is undefined for your compiler
#
# Standard C compiler
#CC= cc
# Use Gnu compiler
CC= gcc
#for just making XPP delete -DAUTO
#CFLAGS= -I/usr/openwin/include
#### Some CFLAGS for different compilers
#
#### HP, Linux
#
#CFLAGS= -O -DAUTO -DCVODE_YES -I/usr/X11R6/include
#CFLAGS= -O -DAUTO -DCVODE_YES -DHAVEDLL -I/usr/X11R6/include
CFLAGS= -O -DAUTO -DCVODE_YES -DHAVEDLL -DMKAVI -I/usr/X11R6/include
#
# Cygwin gcc for windows
#
# CFLAGS= -O -DNORAND48 -DMKAVI -DNOGIF -DSTRUPR -DNOERRNO -DAUTO -DCVODE_YES -I/usr/x11r6.3/include
#### SPARC or SOLARIS using gcc
#
#CFLAGS= -O -DAUTO -DCVODE_YES -I/usr/openwin/include
#
#
#### SPARC or SOLARIS using SunPro cc compiler
#CFLAGS= -O -DSUNPRO -DAUTO -DCVODE_YES -I/usr/openwin/include
#
#
### SGI Iris
#
#CFLAGS= -cckr -O -DAUTO -DCVODE_YES
#
#
# DEC Alpha OSF
#
#CFLAGS= -O -DAUTO -DCVODE_YES -Olimit 1000
#
###########################
# LD flags #
##########################
#
# This is the usual for LINUX, HP, SGI
#
LDFLAGS= -L/usr/X11R6/lib
#
#
# Cygwin
#
#LDFLAGS= -L/usr/x11r6.3/lib
#
# ?????????????
# LDFLAGS= -L/usr/X11R6/lib -pg
#
# SPARC
#
# LDFLAGS= -L/usr/openwin/lib
#
# Some versions of Linux need
#LDFLAGS= -static
#
#
# Libraries
#
# LINUX with the f2c libraries (recommended)
#
AUTLIBS= -lf2c -lX11 -lm
#
# Some versions of LINUX that use the -static
#AUTLIBS= -lf2c -lX11 -lm -lieee
#
# SPARC with the built in f2c libraries
#AUTLIBS= -lI77 -lF77 -lX11 -lm
#
# AUTLIBS for some SGI setups
# AUTLIBS= -lI77 -lF77 -lisam -lX11 -lm
# (compliments of John Wagner)
#
# If you made your own f2c stuff (works for DEC, HP,SPARC,LINUX,MACH)
#LIBS= -lX11 -lm
LIBS= -lX11 -lm -ldl -lstdc++
# if you have dynamic loading
# LIBS= -lX11 -lm -ldl
#
#OTHERLIBS= libcvode.a libf2cm.a
OTHERLIBS= libcvode.a libmkavi.a libf2cm.a
### All the sources etc
#
#
#
#
#
HEADERS = browse.h form_ode.h gear.h help_defs.h my_pars.h \
newhome.h numerics.h odesol.h parser.h phsplan.h \
shoot.h struct.h volterra.h auto_define.h xpplim.h \
mykeydef.h newpars.h myfonts.h f2c.h menus.h toons.h \
parserslow.h dormpri.h fftn.h
BITMAPS = bc.bitmap browse.bitmap delay.bitmap eqns.bitmap\
equilib.bitmap graph.bitmap ic.bitmap array.bitmap\
param.bitmap pp.bitmap auto.bitmap aniwin.bitmap
ODES = cable.ode cuplamdif.ode delay.ode delta.ode fhn.ode \
fieldnoy.ode gberg.ode hhred.ode kepler.ode lamomeg.ode \
lamvolt.ode lecar.ode lin.ode lorenz.ode ml1.ode nnet.ode \
pend.ode pp.ode torus.ode tstvol2.ode tyson.ode vdp.ode \
voltex1.ode voltex2.ode wta.ode wave.ode forcpend.ode \
wcring.ode wave.ani pend.ani pend2.ani lamprey.ode \
fish.ani lorenz2.ode lorenz.ani junk.ode junk2.ode \
nnet2.ode dae_ex1.ode dae_ex2.ode dae_ex3.ode 6x6.ode 6x6.ani\
forcpend.ode cobweb2.ode del_log.ode waterwheel.ode \
waterwheel.ani myret.ode pp.ode rossler.ode vlsi.ode fr.ode \
vtst.ode nochaos.ode geisel.ode elaspen.ani elaspen.ode \
julia.ode r3b.ode borcol.ode invpend.ode invpend.ani transient.ode \
tstdll.ode
SOURCES = main.c ggets.c menu.c rubber.c derived.c init_condold.c \
many_pops.c pop_list.c graphics.c dialog_box.c \
numerics.c choice_box.c color.c init_conds.c \
browse.c kinescope.c axes2.c abort.c \
parser2.c storage.c load_eqn.c lunch-new.c \
form_ode.c odesol2.c gear.c eig_list.c \
integrate.c delay_handle.c graf_par.c\
my_ps.c nullcline.c torus.c pp_shoot.c\
lunch.c calc.c adj2.c my_rhs.c dormpri.c\
volterra2.c tabular.c markov.c histogram.c \
autlib1.c autlib2.c autlib3.c autevd.c run_auto.c autpp.c \
diagram.c auto.c flowkm.c comline.c edit_rhs.c do_fit.c \
flags.c del_stab.c stiff.c arrayplot.c array_print.c \
aniparse.c simplenet.c dae_fun.c read_dir.c parserslow2.c \
kinescope_old.c fftn.c extra.c funexample.c scrngif.c
OBJECTS = main.o ggets.o menu.o rubber.o derived.o\
many_pops.o pop_list.o graphics.o dialog_box.o \
numerics.o choice_box.o color.o init_conds.o \
browse.o kinescope.o axes2.o abort.o \
parser2.o storage.o load_eqn.o\
form_ode.o odesol2.o gear.o eig_list.o\
integrate.o delay_handle.o graf_par.o dormpri.o\
my_ps.o nullcline.o torus.o pp_shoot.o \
lunch-new.o calc.o adj2.o my_rhs.o read_dir.o\
volterra2.o tabular.o markov.o histogram.o \
comline.o edit_rhs.o do_fit.o flags.o del_stab.o stiff.o \
arrayplot.o array_print.o aniparse.o simplenet.o dae_fun.o \
fftn.o extra.o scrngif.o
LIB_OBJECTS = main.o ggets.o menu.o rubber.o derived.o\
many_pops.o pop_list.o graphics.o dialog_box.o \
numerics.o choice_box.o color.o init_conds.o \
browse.o kinescope.o axes2.o abort.o \
parser2.o storage.o load_eqn.o\
form_ode.o odesol2.o gear.o eig_list.o\
integrate.o delay_handle.o graf_par.o dormpri.o\
my_ps.o nullcline.o torus.o pp_shoot.o \
lunch-new.o calc.o adj2.o read_dir.o\
volterra2.o tabular.o markov.o histogram.o \
comline.o edit_rhs.o do_fit.o flags.o del_stab.o stiff.o \
arrayplot.o array_print.o aniparse.o simplenet.o dae_fun.o
AUTOOBJ = autlib1.o autlib2.o autlib3.o autevd.o run_auto.o autpp.o \
diagram.o auto.o flowkm.o
###########################################################
###########################################################
#xppaut: mkI77 mkcvode mkmyfun $(OBJECTS) $(AUTOOBJ)
#
#
xppaut: mkI77 mkcvode mkmkavi $(OBJECTS) $(AUTOOBJ)
#
#
###############################################
# The three different cases for compiling:
# Use case (1) for DEC ALPHA/OSF
#### Using the reduced library that comes with XPP (1)
##### This is the recommended way!
$(CC) -DAUTO -o xppaut $(OBJECTS) $(AUTOOBJ) $(LDFLAGS) $(OTHERLIBS) $(LIBS)
#####
## shared library method - delete my_fun.o from OBJECTS
# $(CC) -DAUTO -o xppaut $(OBJECTS) $(AUTOOBJ) $(LDFLAGS) libcvode.a libf2cm.a libmyfun.so $(LIBS)
#### You made your own libraries but installed locally (2)
# $(CC) -DAUTO -o xppaut $(OBJECTS) $(AUTOOBJ) $(LDFLAGS) libcvode.a libI77.a libF77.a $(LIBS)
##
#### You have previously installed the f2c libraries
# $(CC) -DAUTO -o xppaut $(OBJECTS) $(AUTOOBJ) $(LDFLAGS) libcvode.a $(AUTLIBS)
#
#
mkmyfun:
make -f Makefile.lib
mkI77:
cd libI77 ; make
mkcvode:
cd cvodesrc ; make
mkmkavi:
cd mkavi ; make
##############################################
# most users can ignore below here
##############################################
xpplib: $(LIB_OBJECTS) $(AUTOOBJ)
(ar rcv libxpp.a $(LIB_OBJECTS) $(AUTOOBJ) cvodesrc/*.o libI77/*.o ; ranlib libxpp.a)
xpp: $(OBJECTS) $(AUTOOBJ)
$(CC) -o xppnoaut $(OBJECTS) $(LDFLAGS) $(LIBS)
src: $(SOURCES) $(AUTSRC)
#cmode
#load -DAUTO -C $(CFLAGS) $(SOURCES) $(AUTSRC) $(AUTLIBS)
obj: $(OBJS)
#load $(CFLAGS) $(SOURCES) $(LIBS)
tarfile:
tar cf $(VERSION).tar $(SOURCES) $(AUTOSRC) $(HEADERS) $(BITMAPS) default.opt \
xpp_doc.tex README Makefile Makefile.lib \
$(ODES) xpp_doc.ps xpp_sum.tex xpp_sum.ps nullcline_bw.c \
libI77/*.c libI77/*.h libI77/Makefile \
cvodesrc/*.c cvodesrc/*.h cvodesrc/Makefile \
mkavi/*.cc mkavi/*.h mkavi/Makefile mkavi/drive.c
gzip $(VERSION).tar
binary:
tar cf binary.tar xppaut $(ODES) README xpp_doc.ps
compress binary.tar
clean:
rm *.o;rm libI77/*.o;rm cvodesrc/*.o
doc:
latex xpp_doc
latex xpp_doc
latex xpp_doc
dvips -o xpp_doc.ps xpp_doc
latex xpp_sum
latex xpp_sum
dvips -o xpp_sum.ps xpp_sum