#
# The following 'make' description file should be used as a 'Makefile'        
# template for all new ODE TM development.  This template along with the      
# included description file, 'tmMakefile,' support a hierarchical or          
# distributed development environment.  Each directory within the             
# development environment has its own 'make' description file, which          
# controls the build process for that directory's 'product.'  A               
# 'product' can be either an archive library (e.g. pio.a), an actual          
# binary (e.g. TDIAG), or null (i.e. the directory contains only include      
# files).  The actual binary for the TM should only be specified in the       
# root directory where linking will occur.  Furthermore, the              
# description file in the individual directories is also responsible          
# for launching 'makes' in subordinate directories  as appropriate       
#                                                                             
# The available macros to be filled in are described below (the description 
# is above each macro)
#

#
# Specifies the root directory for the ODE platform files.  Typically         
# this macro should be defined as "/source/ODE/Current" during development    
# and as "/source/ODE/Int" during integration.  For integration, its value 
# should be specified on the command line.                 
# (e.g. $> make ODE_ROOT=/source/ODE/Int ). 
#
ODE_ROOT = /source/ODE/64_BIT
BLDDIR = /source/RAGE/$(LOGNAME)/src/build

#
# Specifies a pattern that matches editor or other temporary files.           
# This macro is used by several utility rules                                 
#
TMPFILES = *~

#
# Specifies the name of the product, which will be built in this              
# directory. If this directory is not the link directory than this macro      
# should be an archive library or null.                                       
#
PRODUCT = 

#
# Specifies C source files in this directory                                  
#
CFILES = 




#
# Specifies assembly source files in this directory                           
#
SFILES = 


#
# Specifies header files in this directory                                    
#

CALLER_HFILE = 

# Please note that there are quite a lot of header files. Any new file,
# if added, should go in the sorted order as here.
#
HFILES =  big_endian.h \
	  generic.h \
	  little_endian.h \
	  pdp_endian.h \
	  swab.h \
	  swabb.h

#
# Specifies any archive libraries whose 'Makefiles' will be launched          
# from the 'Makefile' in this directory.                                      
#
SUBLIBS = 


#
# Specifies any "include-file-only" directories whose 'Makefiles' will        
# be launched from the 'Makefile' in this directory.  Note, the trailing      
# "/" must be included in the path.                                           
#
INC = 

#
# Specifies any ODE shared library stub files.  This macro should only be     
# defined in the link directory's 'Makefile.'                                
#
SHAREDLIBSTUBS = 


#
# Specifies any archive libraries or object files for which source is         
# not available.  This macro should only be defined in the link               
# directory's 'Makefile.'  Note, the files defined in this macro are
# considered to be under RCS control.                                         
#
LOCALLIBS = 

#
# Specifies any other libraries needed to complete the build.  This macro     
# should only be defined in the link directory's 'Makefile.'  Note, any       
# files defined in this macro are not considered to be under RCS control.
#
OTHERLIBS = 

#
# Specifies paths for include files. Note the '-I' options must preceed every 
# include path.  Note--it is not necessary to include the paths to tm.h or
# dl_syslib.h in this macro.                                                   
#
INCLUDEPATHS = -I ../include
               

#
# Specifies "define" options to the complier.  Typically this would be        
# specified on the 'make' command line.                                       
# (e.g. $> make DEF="-DDEBUG -DFOO" )                                         
#
DEF = -D__KERNEL__

#
# Specifies any complier flags other than the default
# When expanded the complier command-line flags are the following:
# CFLAGS = -Aa +ESrel $(OTHERCFLAGS) $(DEF) -c $(INCLUDEPATHS) -I
#          $(ODE_ROOT)/inc                                                    
#
OTHERCFLAGS =


#
# Specifies a prefix string for all object files and products.  If non-null, 
# this macro always forces a rebuild of the object files. A prefix would
# typically be used on the 'make' command line in conjunction with the 
# DEF macro.
# (e.g. $> make DEF=-DDEBUG PFX=DBG )                                         
#
PFX = 

#
# Forces a rebuild of the object files if non-null.  Typically this           
# would be specified on the 'make' command line.                              
# (e.g. $> make FRC=t )                                                       
#
FRC = 

#
# Specifies the name of the linker command file.                              
#
LNKCMDFILE = 

#
# Specifies an RCS label to associate with each source file.  Typically       
# this would be specified on the 'make' command line along with the           
# 'label' rule.                                                               
# (e.g. $> make label LABEL=UX903IC1 )                                        
#
LABEL = 

#
# Note, when invoking 'make' to do an actual product build, the               
# definition of the above four macros, FRC, DEF, PFX, and LABEL are           
# passed down to the 'Makefiles' in the INC and SUBLIBS directories.          
#

#
# The following line should be included in every 'Makefile' in every          
# directory.  It specifies that the description file, 'tmMakefile,' should be 
# included. 'tmMakefile' contains all the build rules as well as a host of    
# utility rules.                                                              
#                                                                             
# Any developer-specific utility rules or header file dependencies should     
# go after this line.                                                         
#
include	$(BLDDIR)/tmMakefile64

#TMCRT0 = $(ODE_ROOT)/lib/sl_crt064.o
TMCRT0 = 

install:
	$(RM) -f $(ODE_ROOT)/inc/$(CALLER_HFILE)
	cp $(CALLER_HFILE) $(ODE_ROOT)/inc/$(CALLER_HFILE)
	strip $(PRODUCT)
	cp $(PRODUCT) $(ODE_ROOT)/src/bld
	/source/newtools/crunch $(PRODUCT) $(PRODUCT).z
	cp $(PRODUCT) /mnt/ftp/pub/Sldev
	cp $(PRODUCT).z /mnt/ftp/pub/Sldev

#
# The following utility rules are available in 'tmMakefile.'                  
#

#
# Removes all o-files with prefix 'PFX' in current directory
#
# clean:

#
# Performs a 'clean' and removes the 'product' from the current directory     
#
# clobber: 

#
# Remove all tmp files in current directory                                   
#
# cleanTmp:

#
# Echos sources                                                               
#
# echo:

#
# Echos all sources                                                           
#
# echoAll:

#
# Echos sources with absolute path names                                      
#
# echoPath:

#
# Echos all sources with absolute path names                                  
#
# echoPathAll:

#
# Checks out sources in current directory                                     
#
# checkOut: 

#
# Performs a 'make' but doesn't check out sources from RCS                    
#
# noCheckOut:

#
# Checks out sources in current directory and all subdirectories              
#
# checkOutAll:

#
# Labels sources in current directory with $(LABEL)                           
#
# label:

#
# Label all sources in current directory and subdirectories                   
#
# labelAll:

#
# Performs a 'clobber' in current directory and all subdirectories            
#
# nuke: 

#
# Performs a 'cleanTmp' in current directory and all subdirectories           
#
# nukeTmp: 

ODELIB    = $(ODE_ROOT)/lib
FTP_ROOT  = /mnt3/ftp/pub/offline
FTP_EXP   = $(FTP_ROOT)/exp
FTP_HACK  = $(FTP_ROOT)/hack
FTP_STABLE = $(FTP_ROOT)/stable

SYSLIB      = $(ODE_ROOT)/lib/SYSLIB
ODE         = $(ODE_ROOT)/lib/ODE
ISL         = $(ODE_ROOT)/lib/isl
MAP_FILE    = $(FTP_EXP)/MAPFILE
CONFIG_FILE = $(FTP_EXP)/CONFIGDATA
SL_DRIVERS  = $(FTP_EXP)/SLDRV2
SL_MOD      = $(FTP_EXP)/SLMOD2

LIF = $(PRODUCT)lif

lif:
	rm -f $(LIF)
	mkbootlf -d$(LIF) -i$(ISL) -n $(PRODUCT) \
	12960 $(ODE) \
	12280 $(SYSLIB) \
	12277 $(MAP_FILE) \
	12278 $(CONFIG_FILE) \
	12276 $(SL_MOD) \
	12276 $(PRODUCT) \
	12276 $(SL_DRIVERS) \
	12279 $(FTP_EXP)/MAPPER

include $(ODE_ROOT)/src/tm/lifMakefile
