/[ascend]/trunk/base/generic/ConfigAscend.in
ViewVC logotype

Annotation of /trunk/base/generic/ConfigAscend.in

Parent Directory Parent Directory | Revision Log Revision Log


Revision 569 - (hide annotations) (download)
Tue May 9 00:10:03 2006 UTC (19 years, 7 months ago) by johnpye
File size: 16474 byte(s)
Changing from 'tcltk98' to 'tcltk', in progress.
1 aw0a 22 # @configure_input@
2     #
3     # This is a configuration file for ASCEND.
4     # If it has the name "ConfigAscend.in", then it is a template
5     # for the "ConfigAscend" configuration file. To generate the
6     # actual "ConfigAscend" file, run "./configure", which is a
7     # configuration script generated by the "autoconf" program.
8     # Constructs like @foo@ will be replaced in the actual
9     # "ConfigAscend" configuration file.
10     #
11     # This file contains the definitions and macros needed by all the
12     # ascend sub-makefiles.
13     #
14     # by Ben Allan June 25, 1994.
15     # $Revision: 1.18 $
16     # $Date: 1999/01/19 16:09:02 $
17     # $Author: mthomas $
18     # $Source: /afs/cs.cmu.edu/project/ascend/Repository/ascend4/ConfigAscend.in,v $
19     #
20     # To build ASCEND you must set some configuration information in
21     # this file and then type 'make'.
22     #
23    
24 ben.allan 411 # tcl/tk basis
25     LIB_RUNTIME_DIR=@TCLCONFIG@
26     @NOTCLCONFIG@include $(LIB_RUNTIME_DIR)/tclConfig.sh
27     @NOTCLCONFIG@include $(LIB_RUNTIME_DIR)/tkConfig.sh
28    
29 aw0a 22 ####>>> C <<<###############################################################
30    
31     # CC
32     # your ansi-compliant C compiler and C preprocessor
33     #
34     CC = @CC@
35     CPP = @CPP@
36    
37     # CFLAGS
38     # options for the C compilter
39     # This is where optimization and debugging options should be set.
40     #
41     # The flags which `configure' sets should be sufficient to compile
42     # ascend; however for more error checking and warnings at compile
43     # time, you may want to add the following to the CFLAGS variable.
44     # Note that these flags are compiler and OS dependent.
45     #
46     # Any GCC
47     #CCWARN = -ansi -Wall -Wshadow -W -pedantic -D_GNU_SOURCE
48     # DEC Alpha OSF or Digital-Unix
49     #CCWARN = -std1 -verbose
50     # DEC Ultrix
51     #CCWARN = -std -w0
52     # HP/UX
53     #CCWARN = +w1
54     # IBM AIX
55     #CCWARN =
56     # SGI IRIX
57     #CCWARN = +w
58     # Sun Solaris (2.x) (/opt/SUNWspro/bin/cc)
59     #CCWARN = -v -Xc
60     # Sun SunOS (Solaris 1.x) (/usr/lang/cc)
61     #CCWARN = -vc -Xc
62     #
63     CFLAGS = -O $(CCWARN) # for optimization
64     CFLAGS = -g $(CCWARN) # for debugging
65     CFLAGS = @CFLAGS@ $(CCWARN)
66    
67     # All switches to pass to the C compiler
68     #
69     CC_SWITCHES = $(INCLUDES) $(DEFINES) $(CFLAGS)
70    
71     # The list of includes. DIR_SPECIFIC_INCS are includes that are specific
72     # to a particular subdirectory of the ASCEND build
73     #
74     INCLUDES = $(ASC_INCS) $(DIR_SPECIFIC_INCS)
75    
76     # The list of defines. DIR_SPECIFIC_DEFS are defines that are specific
77     # to a particular subdirectory of the ASCEND build
78     #
79     DEFINES = $(CONFIGURE_DEFS) $(DIR_SPECIFIC_DEFS) \
80     $(MOD_ASCMALLOC) $(FATFUNC) $(MEM_DECREASE)
81    
82     # DEBUGGER LIBRARIES
83     # any special files/libraries needed for building a debugging version
84     # of a binary
85     #
86     DEBUG_LIBS = @DEBUG_LIBS@
87    
88     # DEFINES
89     # definitions that `configure' generates
90     #
91     CONFIGURE_DEFS = @DEFS@
92    
93     # AR
94     # the archiver (normally /bin/ar)
95     #
96     AR = ar
97    
98     # RANLIB
99     # set this to ":" on SysV systems; to "ranlib" elsewhere
100     #
101     RANLIB = @RANLIB@
102    
103     # LD
104     # the linker/loader
105     #
106     LD = ld
107    
108     # YACC
109     # On some old systems yacc writes some K&R extern definitions to
110     # the .c file that it generates. This has caused havoc on at least
111     # one system. Define your yacc here. For the Suns in particular
112     # /usr/lang/SC1.0/ansi/yacc was required. If you cannot find an ansi
113     # compatible yacc, delete the 'extern char *malloc(), realloc() definitions
114     # if generated at the top of your .c created from the .y file.
115     #
116     YACC = @YACC@
117    
118     # LEX
119     # We require the flex lexer
120     #
121     LEX = @LEX@
122     LEXLIB = @LEXLIB@
123    
124     # UNSIGNED CHARACTERS
125     # Some compilers (notably AIX3.1 cc) default chars to be unsigned which
126     # causes many things to break in file operations, particularly the
127     # detection of EOF conditions. Uncomment one of the CHAR_SIGNS
128     # if your compiler defaults char to be unsigned char.
129     #
130     #CHAR_SIGNS = -qchars=signed
131    
132    
133     ####>>> FILE UTILITIES <<<##################################################
134    
135     # Basic File Utilities
136     #
137     CMP = cmp
138     CP = cp
139     ECHO = echo
140     LN_S = @LN_S@
141     MKDIR = mkdir
142     MV = mv
143     RM = rm -f
144     SED = sed
145    
146    
147     ####>>> MATH <<<############################################################
148    
149     # Some compilers need to be told where to find the math libraries
150     #
151     MATH_LIBS = @MATH_LIBS@
152    
153    
154     ####>>> X11 <<<#############################################################
155    
156     # The interface and 1 file in the solver directory need to know where the
157     # include files and library for X11 are. If your C compiler doesn't know
158     # automatically where the X files are, or if they are in a non-standard
159     # place, set the following variables to point at them. These should be
160     # the same X files that Tk was built with on your system.
161     # Most systems do not need these variables to be set.
162     #
163     # The include files for X11:
164     X11_INCS = @X11_INCLUDES@
165    
166     # The libraries files for X11:
167     X11_LIBS = @X11_LIBRARIES@ -lX11 @X11_EXTRA_LIBS@ @X11_RUN_PATH@
168    
169    
170    
171     ####>>> TCL / TK <<<########################################################
172    
173    
174     # Set the location of the Tcl/Tk libraries and include files.
175     #
176     # The location of the libtk.a and libtcl.a libraries.
177     # The order should be -ltk -ltcl
178 johnpye 363 TCL_LIBRARY = @TCLLIB@
179 ben.allan 411 TK_LIBRARY = @TKLIB@
180     TK_LIBS = $(TK_LIBRARY) $(TCL_LIBRARY) $(TK_LD_SEARCH_FLAGS) $(DL_LIBS)
181 aw0a 22
182     # The location of the tcl.h and tk.h header files
183 ben.allan 411 TK_INCS = -I@TCLINCLUDE@ @TK_HDR@
184 aw0a 22
185     # If TK_LIBS and TK_INCS are not properly set, ASCEND cannot build.
186    
187    
188     # We also need the TkTable widget which does not come as a
189     # standard part of the Tcl/Tk distribution. This library can
190     # either be loaded statically or dynamically. If the configure
191     # script found libTktable.a, use static loading; otherwise, use
192     # dynamic loading.
193     #
194     HAVE_TKTABLE = @HAVE_TKTABLE@
195     TKTABLE_LIB = @TKTABLE_LIB@
196    
197    
198     ####>>> SOLVERS / INTEGRATORS <<<###########################################
199    
200     # If you are linking to MINOS or other external solvers, the solver
201     # interface needs to know about it.
202     # Set the comment flags as appropriate on the following definitions.
203     # If the settings here do not match the libraries you link, you will
204     # almost certainly get runtime errors if not link errors.
205    
206     # to build with slv, uncomment the next line
207     #EXT_SLV = -DSTATIC_SLV
208    
209     # to build with optsqp, uncomment the next line
210     #AWW20041129:EXT_OPTSQP = @HAVE_OPTSQP@
211     #
212     # location of the rsqp library
213     #AWW20041206:OPTSQPLIB = @OPTSQPLIB@
214    
215     # to build with qrslv, uncomment the next line
216     EXT_QRSLV = -DSTATIC_QRSLV
217    
218     # to build with mps, uncomment the next line
219     #EXT_MPS = -DSTATIC_MPS
220    
221     # to build with ngslv, uncomment the next line
222     #EXT_NGSLV = -DSTATIC_NGSLV
223    
224     # to build with cmslv, uncomment the next line
225 johnpye 148 EXT_CMSLV = -DSTATIC_CMSLV
226 aw0a 22
227     # to build with lrslv, uncomment the next line
228     #EXT_LRSLV = -DSTATIC_LRSLV
229    
230     # the configure script sets the following depending on its search for minos.
231     # to force a build WITHOUT minos, comment the next line
232     #EXT_MINOS = @HAVE_MINOS@
233     #
234     # location of the minos library
235     #MINOSLIB = @MINOSLIB@
236    
237     # the configure script sets the following depending on its search for conopt.
238     # to force a build WITHOUT conopt, comment the next line
239     #AWW20041129:EXT_CONOPT = @HAVE_CONOPT@
240     #
241     # location of the conopt library
242     #AWW20041206:CONOPTLIB = @CONOPTLIB@
243    
244     # the configure script sets the following depending on its search for lsode.
245     # to force a build WITHOUT lsode, comment the next line
246     EXT_LSOD = @HAVE_LSOD@
247     #
248     # location of the lsode library
249     LSODLIB = @LSODLIB@
250    
251     # combine all the defines for the solver into a single variable
252     #AWW20041206:SOLVER_DEFS = $(EXT_SLV) $(EXT_OPTSQP) $(EXT_QRSLV) $(EXT_MPS) $(EXT_NGSLV) \
253     #AWW20041206: $(EXT_CMSLV) $(EXT_LRSLV) $(EXT_MINOS) $(EXT_CONOPT) $(EXT_LSOD) \
254     #AWW20041206: $(EXT_OPTSQP)
255 johnpye 148 SOLVER_DEFS = $(EXT_QRSLV) $(EXT_LSOD) $(EXT_CMSLV) $(EXT_LRSLV) $(EXT_NGSLV) $(EXT_MINOS) $(EXT_CONOPT)
256 aw0a 22
257    
258    
259    
260     ####>>> PACKAGES <<<########################################################
261    
262     # Build ascend with packages.
263     # Packages are bits of compiled code that represent models, or solvers,
264     # or, in general, any bits of external code.
265    
266     # Packages may be dynamically or statically linked/loaded. Add one or
267     # the other defines : -DSTATIC_PACKAGES or -DDYNAMIC_PACKAGES
268     #
269 ben.allan 411 #HAVE_PACKAGES = -DSTATIC_PACKAGES
270 aw0a 22 #HAVE_PACKAGES = -DDYNAMIC_PACKAGES
271    
272     # If statically linked, i.e. -DSTATIC_PACKAGES, then set PACK_LIBS
273     # to where your external packages exist. If dynamically linked or
274     # if you are building with NO_PACKAGES, leave PACK_LIBS empty.
275     #
276 johnpye 141 PACK_LIBS = ../archive/libascpackages.a
277 aw0a 22 #PACK_LIBS =
278    
279     # The default behavor is to have packages, so if you don't want
280     # packages, you have to uncomment the following line
281     #HAVE_PACKAGES = -DNO_PACKAGES
282    
283    
284     ####>>> SHARED OBJECTS <<<##################################################
285    
286     # When using dynamic packages or no packages, the Makefile needs
287     # to know how to make a shared object and what suffix the
288     # shared object should have.
289     #
290     # Library file(s) to link against for dynamic loading to work
291     DL_LIBS = @DL_LIBS@
292     #
293     # Flags to pass to the C compiler when linking object files
294     # into an executable application binary
295     LD_FLAGS = @LD_FLAGS@
296     #
297     # Flags to pass to ld to tell the run-time linker where to find
298     # shared objects
299     LD_SEARCH_FLAGS = @LD_SEARCH_FLAGS@
300     #
301     # Flags to pass to the C compiler when compiling the components
302     # of a shared library
303     SHLIB_CFLAGS = @SHLIB_CFLAGS@
304     #
305     # Base command to use to combing object files into a shared library
306     SHLIB_LD = @SHLIB_LD@
307     #
308     # Dependent libraries for the linker to scan when creating a shared
309     # library
310     SHLIB_LD_LIBS = @SHLIB_LD_LIBS@
311     #
312     # Suffix to use for the names of dynamically loadable objects.
313     SHLIB_SUFFIX = @SHLIB_SUFFIX@
314     #
315     # Specifies everything that comes after libfoo in the shared library
316     # "foo"
317     ASC_LIB_SUFFIX = @ASC_LIB_SUFFIX@
318    
319    
320     ####>>> F77 <<<#############################################################
321    
322     # F77
323     # your f77 compiler
324     #
325     F77 = @F77@
326    
327     # Fortran compilation flags:
328     # These are used for making the ASCEND libraries based on FORTRAN codes.
329     # These should be set to get the best performance possible out of your
330     # f77 compiler without optimizing away functions that are not obviously
331     # called, as some compilers do by default.
332     #
333     F77FLAGS = -I4 -O
334     #
335     # F77LIBS is for the base f77 libraries. If you are linking no f77
336     # objects to ascend, it may be left undefined.
337     # Set F77LIBS appropriate for your machine and desired loader behavior.
338     #
339     F77_LIBS = @F77LIBS@
340     #
341     # F77_OPTS are for miscellaneous options, such as -tmpdir=
342     #
343     F77_OPTS =
344     #
345     # All the flags to pass to F77
346     #
347     F77_SWITCHES = $(F77FLAGS) $(F77_OPTS)
348    
349     ####>>> FORTRAN LIBRARIES <<<###############################################
350    
351     # If building ASCEND with MINOS or other FORTRAN based solvers/packages,
352     # uncomment one of the FOR_LIBS definitions below to indicate the FORTRAN
353     # libraries to link into ASCEND.
354     #
355     # Set the BLAS and LINPACK library definitions to point at
356     # machine specific libraries (if you have them) to get the
357     # best speed out of ASCEND.
358     #
359     BLASLIB = @BLASLIB@
360     LPAKLIB = @LPAKLIB@
361    
362     FOR_LIBS = $(LSODLIB) $(MINOSLIB) $(OPTSQPLIB) $(CONOPTLIB) \
363     $(LPAKLIB) $(BLASLIB) \
364     $(F77_LIBS)
365    
366    
367     ####>>> INSTALL <<<#########################################################
368    
369     # Location to install program, libs, etc, and the install program
370    
371     # First, set INSTALL to the location of a BSD-compatible install program
372     #
373     INSTALL = @INSTALL@
374     INSTALL_PROGRAM = @INSTALL_PROGRAM@
375     INSTALL_DATA = @INSTALL_DATA@
376    
377     # Where to install information
378     #
379     # prefix for platform dependent files:
380     exec_prefix = @exec_prefix@
381     #
382     # prefix for platfrom independent files (.h, .tcl, .asc, etc)
383     prefix = @prefix@
384     #
385     # directory for ascend binary
386     BIN_DIR = $(exec_prefix)/bin
387     #
388     # directory for ascend scripts
389     SCRIPT_DIR = $(prefix)/bin
390     #
391     # directory for ascend documentation
392     DOC_DIR = $(prefix)/doc
393     #
394     # directory for ascend include files
395     INCLUDE_DIR = $(prefix)/include
396     #
397     # directory for ascend info-style files
398     INFO_DIR = $(prefix)/info
399     #
400     # directory for ascend platform-dependent libraries
401     LIB_DIR = $(exec_prefix)/lib
402     #
403     # top level directory for ascend man pages
404     MAN_DIR = $(prefix)/man
405     #
406     # directories for specific man pages
407     MAN1_DIR = $(MAN_DIR)/man1
408     MAN3_DIR = $(MAN_DIR)/man3
409     MAN5_DIR = $(MAN_DIR)/man5
410     MAN8_DIR = $(MAN_DIR)/man8
411     MANn_DIR = $(MAN_DIR)/mann
412     #
413     # directory for ascend help files
414     HELP_DIR = $(prefix)/help
415     #
416     # directory for ascend models (libraries & examples)
417     MODELS_DIR = $(prefix)/models
418     #
419     # directory for ascend package code
420     PACK_DIR = $(prefix)/packages
421     #
422     # directory for general tcl/tk code
423     TK_LIBRARY_DIR = $(prefix)/lib/tcl
424     #
425     # directory for ascend specific tcl/tk code
426     ASCEND_TK_DIR = $(prefix)/TK
427    
428    
429     ####>>> CMU DEVELOPERS <<<##################################################
430    
431     # The following flags control sources that are not part of the standard
432     # distribution. Do not uncomment any of these lines unless you know
433     # what you are doing; in particular, don't mess with these and then
434     # expect us to be able to help you when it won't build.
435    
436     # Tom Epperly's malloc debugger:
437     #
438     # slow
439     #MOD_ASCMALLOC = -DMOD_ASCMALLOC -DMALLOC_DEBUG
440     # slower
441     #MOD_ASCMALLOC = -DMOD_ASCMALLOC -DMALLOC_DEBUG -DALLOCATED_TESTS
442    
443     # Damned expensive malloc debugger (sources not distributed):
444     #
445     # slowest
446     #DEBUG_MALLOC_LIBS = ../dbmalloc/libdbmalloc.a
447     #DEBUG_MALLOC = -DBEBUG_MALLOC
448    
449     # Find Dependencies: makedepend/g++dep executable
450     #
451     # all dependencies
452     DEPEND = /usr/local/bin/makedepend
453     DEPEND = /usr/local/lib/ascend/etc/g++dep
454     #
455     # all but system dependencies
456     DEPEND_NOSYS = /usr/local/lib/ascend/etc/g++dep_nosys
457     # to make without-system-dependencies the default, uncomment the next line
458     #DEPEND = $(DEPEND_NOSYS)
459     #
460     # remove dependencies information version
461     DEPEND_RM = /usr/local/lib/ascend/etc/g++nodep
462     #
463     # All switches to pass to the dependency generator
464     #
465     DEPEND_FLAGS = $(INCLUDES) $(DEFINES)
466    
467    
468     # Tags
469     #
470     ETAGS = /usr/local/bin/etags
471     CTAGS = /usr/local/bin/ctags
472    
473    
474     # cflow, sparc only. on other platforms cflow and dot, if they exist,
475     # may need different switches. dot works well on sun/solaris/hpux OS.
476     # with a bit of hacking on usr/local/lib/ascend we could have dot on
477     # all but alphas since Ben has the sources. Finding cflow may be harder.
478     CFLFLAGS = -DNDEBUG -I.. -I.
479     RCFLFLAGS = -DNDEBUG -I.. -I. -r
480    
481     # replaces tabs with 2 blanks for human consumption, and eat externals
482     #CPRCOM = |/usr/5bin/pr -e2 -t | eatcflowext
483     # eat external function calls (fprintf, etc) only
484     CPRCOM = | eatcflowext
485    
486     # eat external calls and convert to dot input format
487     CPSCOM = | eatcflowext | eatcflow2dot
488    
489     # note sunos4 /bin/cflow is fatally stupid. use sys5 version
490     CFLOW = /usr/lang/cflow
491     # you probably don't have this. It's in my path (~ballan/bin/dot)
492     # dot can be stunningly slow on twisty files.
493     DOT = dot
494     # can also generate mif (-Tmif), etc. see dot man page.
495     DOTFLAGS = -Tps
496     # eatcflowext,eatcflow2dot are tcl script ben wrote. vagu:~ballan/bin
497     # dot is the proprietary lucent graph utility.
498    
499    
500     # Purify
501     #
502     PURIFY = purify
503     QUANTIFY = quantify
504     #set dirs in the next 3 accordingly
505     PURIFY_OPTS = -always-use-cache-dir -cache-dir=/usr1/ballan/tmp/purify \
506     -windows=no -inuse-at-exit=yes
507     PURIFY_OPTS = -always-use-cache-dir -cache-dir=/usr1/ballan/tmp/purify \
508     -inuse-at-exit=yes
509     QUANTIFY_OPTS = $(PURIFY_OPTS) -record-system-calls=no
510     # use these if you haven't paid pureatria yet.
511     PURIFY_OPTS =
512     QUANTIFY_OPTS = $(PURIFY_OPTS)
513    
514    
515     # Pixie
516     # (only available on the alpha)
517     #
518     PIXIE = pixie
519     PIXIE_OPTS = -pixie -heavy -lines -invocations -procedures
520     PIXIEDIR= a4
521    
522    
523     # set the following to -DCHRIS_FUNC to get the extra fucn properties
524     # needed for the Chris Welhelmy solver.
525     #
526     #FATFUNC = -DCHRIS_FUNC
527    
528    
529     # if your machine's memory is allocated in decreasing order, set the
530     # following to -DMEM_DECREASE to try to keep memory usage more compact
531     #
532     #MEM_DECREASE = -DMEM_DECREASE
533    
534    
535     ####>>> MISC <<<############################################################
536    
537     # include files for ascend
538     #
539     #AWW: See comments in configure.in just before asc_include is set. I am
540     #AWW: not sure why -I@asc_include@ is here, but I know the others are
541     #AWW: needed - based on those comments.
542     #AWW20041206: ASC_INCS = -I@asc_include@ -I..
543 johnpye 569 ASC_INCS = -I@fullpathsrcdir@/../generic -I@fullpathsrcdir@/../../tcltk/generic -I..
544 aw0a 22
545     # library files for ascend
546     #
547 johnpye 141 ASC_LIB_STEMS=if compiler solver utilities general
548     ASC_LIBS=$(ASC_LIB_STEMS:%=../archive/libasc%.a) $(PACK_LIBS)
549    
550 aw0a 22 # The time/place stamp for the executable.
551     # Reverse the comment flags if your cpp doesn't understand it
552     #
553     TIMESTAMP = -DTIMESTAMP="\"by `whoami`@`hostname`\""
554     #TIMESTAMP = -DTIMESTAMP="\"\""
555    
556     # Force emacs to treat this file as a Makefile
557     #
558     # Local Variables: ***
559     # mode:Makefile ***
560     # End: ***

john.pye@anu.edu.au
ViewVC Help
Powered by ViewVC 1.1.22