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

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

Parent Directory Parent Directory | Revision Log Revision Log


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

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