Sindbad~EG File Manager

Current Path : /usr/home/beeson/Otter-Lambda/otter/
Upload File :
Current File : /usr/home/beeson/Otter-Lambda/otter/Makefile

#############################################################################
#
#  Makefile for building Otter 3.1.  There is no configuration script
#  or higher-level make.  Edit this file to configure compilation of
#  Otter.  There are three things you may need to change:
#
#    DFLAGS  - to control conditional compilation to enable/disable things
#    CC      - to specify the C compiler (usually cc or gcc)
#    CFLAGS  - to specify optimization, debugging, and profiling
#
#  This should work as is for recent versions of Linux.
#
#  To compile otter, "make" and cross your fingers!
#  The binary will be left in this directory.  There is no man page.
#
#  !!!NOTE!!!  On Solaris, you'll probably want to add -DTP_NO_CLOCKS
#  to the DFLAGS line.  If you don't, Otter might run VERY slowly.
#
#############################################################################

#############################################################################
#
#  The DFLAGS symbol, defined after this section of comments, controls
#  conditional compilation; it enables or disables various features.
#
#  Enable features:
#
#    -DTP_NAMES will get username, hostname.
#        Don't use if you get errors about gethostname, getuid, getpwuid.
#    -DTP_SIGNAL will cause some signals to be caught.
#        Don't use if you get errors about signal, SIGINT, SIGSEGV.
#    -DTP_FORK will allow interactive forks and case splitting.
#        Don't use if you get errors about fork, wait.
#    -DTP_RUSAGE for calls to getrusage() (user time, system time).
#        Don't use if you get errors about rusage, getrusage, RUSAGE_SELF.
#        For HP-UX, you might need -DHP_UX to use getrusage().
#
#  Disable features:
#
#    -DTP_NO_CLOCKS disables most timing---this can save a lot of system
#        CPU time, because many operations are timed.
#        This should definitely be used on FreeBSD (2.1.0), which seems
#        to have a REALLY SLOW getrusage() system call.
#    -DTP_ABSOLUTELY_NO_CLOCKS disables all of the timing.
#        Use this as a last resort for timing or clock errrors.
#
#  The full set of features:
#
#  DFLAGS = -DTP_NAMES -DTP_SIGNAL -DTP_FORK -DTP_RUSAGE
#
###############
#
#  Here are some notes about which features work on various OSs:
#
#  Solaris (SunOS 5.7) - has a very slow getrusage() system call, so use
#
#  DFLAGS = -DTP_NAMES -DTP_SIGNAL -DTP_FORK -DTP_RUSAGE -DTP_NO_CLOCKS
#
#  HP-UX A.09.01 (snake) needs HP_UX to be defined (for getrusage macro):
#
#  DFLAGS = -DHP_UX -DTP_NAMES -DTP_SIGNAL -DTP_FORK -DTP_RUSAGE
#
#  MS Windows - see nonport.c, see DOS_GCC in the source.
#
#  Macintosh - ???? - see macutils.c, see nonport.c, see THINK_C in the source
#
###############
# OK, here is where to define the DFLAGS:

DFLAGS = -DTP_NAMES -DTP_SIGNAL -DTP_FORK -DTP_RUSAGE

#############################################################################
#############################################################################
#
# Specify the C compiler.  I recommend gcc (GNU C Compiler) if you have it.
# In many Linux environments, cc is just a symlink to gcc.

CC = gcc

#############################################################################
#
# Specify the compiler flags; include DFLAGS (above) -- Pick one of these
#
# optimized

CFLAGS = -O $(DFLAGS)

#
# check for strict ANSI conformance with Solaris cc:
#
# CFLAGS = -Xc $(DFLAGS)
#
# various checks for gcc:
#
# CFLAGS = -ansi -pedantic -Wall $(DFLAGS)
# CFLAGS = -Wtraditional -Wpointer-arith -Wcast-qual -Wcast-align $(DFLAGS)
# CFLAGS = -Wconversion -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wnested-externs  $(DFLAGS)
#
# save symbols for debuggers
# CFLAGS = -g $(DFLAGS)
#
# optimized, debugging
# CFLAGS = -O -g $(DFLAGS)
#
# gprof profiling
# CFLAGS = -pg -O $(DFLAGS)
#
#############################################################################

FILES =   av.c io.c share.c fpa.c clocks.c unify.c demod.c weight.c imd.c is.c clause.c options.c resolve.c index.c paramod.c formula.c process.c misc.c lrpo.c linkur.c linkhyp.c foreign.c geometry.c hot.c nonport.c check.c hints.c attrib.c case.c lisp.c ivy.c pickdiff.c overbeek.c

OBJECTS = av.o io.o share.o fpa.o clocks.o unify.o demod.o weight.o imd.o is.o clause.o options.o resolve.o index.o paramod.o formula.o process.o misc.o lrpo.o linkur.o linkhyp.o foreign.o geometry.o hot.o nonport.o check.o hints.o attrib.o case.o lisp.o ivy.o pickdiff.o overbeek.o

#############################################################################

otter: main.o $(OBJECTS)
	$(CC) $(CFLAGS) main.o $(OBJECTS) -o otter

otterlib: main.o $(OBJECTS)

clean:
	/bin/rm -f *.o

realclean:
	/bin/rm -f *.o otter ../examples/*/*.out examples/Run_all.out[0-9]*
	/bin/rm -f *~ ../*~ */*~ ../documents/*.{aux,dvi,log,bbl,blg}

prototypes:
	/bin/csh make-prototypes main.c $(FILES)

lint:
	lint $(DFLAGS) main.c $(FILES)

main.o $(OBJECTS): header.h
main.o $(OBJECTS): types.h
main.o $(OBJECTS): macros.h
main.o $(OBJECTS): cos.h
main.o $(OBJECTS): proto.h
foreign.o: foreign.h
lisp.o: lisp.h

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists