#################### Start of OS dependent part ##############################

# Choose compiler:
#include MakeEmx.def	# gcc/emx compiler under OS/2
include MakeGcc.def	# g++ compiler under Unix
#include MakeSgi.def	# CC compiler under Silicon Graphics
#include MakeHpcc.def	# HP CC C++ compiler on HP Unix (HP-UX)

#################### End of OS dependent part ################################

########################## Project part ######################################

MAIN    = abrefr

ANSICPP = ansicpp.$(H)
PMMATH  = pmmath.$(H)
LINDEF3 = lindef3.$(H)

PMUNITS_H_FILES = $(ANSICPP) $(PMMATH) $(LINDEF3)
PMUNITS_O_FILES = $(PMUNITS_H_FILES:.$(H)=.$(O))
PMUNITS_LIBRARY =

OTHER_H = mfcht.$(H)
OTHER_O = $(OTHER_H:.$(H)=.$(O))

####################### End of project part ##################################


### Definitions

SAY = $(ECHO) === Makefile for  $(TITLE)   ===

CC = $(COMPILER) $(CFLAGS) -I. -c

MAIN_O = $(MAIN).$(O)
MAIN_EXE = $(MAIN)$(ISEXE)

BASE = $(PMUNITS_H_FILES) $(OTHER_H)

ALL_O   = $(PMUNITS_O_FILES) $(OTHER_O)
ALL_LIB = $(PMUNITS_LIBRARY) $(OTHER_LIB) $(LINKLIB)


### Dependencies

all: $(MAIN_EXE)

$(ALL_O): $(ANSICPP)


### Main:
 
# rename *.$(CPP) to *.cxx under Unix
$(MAIN).$(CPP) : 
	chmod +x cpp2cxx
	sh cpp2cxx


$(MAIN_EXE) : $(MAIN_O) $(ALL_O)
	$(SAY)
	$(LINK) -o $(MAIN_EXE) $(MAIN_O) $(ALL_O) $(ALL_LIB)
	$(LINK2)
	$(LINK3)
	$(LINK4)
	$(LINK5)
	$(LINK6)
	$(LINK7)
	$(LINK8)
	$(LINK9)


$(PMUNITS_O_FILES): %.$(O): %.$(CPP) %.$(H)
	$(CC) $<

$(OTHER_O): %.$(O): %.$(CPP) %.$(H)
	$(CC) $<

$(MAIN_O) : $(MAIN).$(CPP) $(BASE) 
	$(SAY)
	$(CC) $<

clean:
	$(DEL) *.$(O)
	$(DEL) $(MAIN_EXE)
