# $Id: src.trafos.pgs2cmr.Makefile,v 1.10 1992/06/24 09:15:51 cogito Exp $
# 

# default to a safe place for target location
DESTDIR = /tmp
DISTRIB = /tmp

# OPTIONS can be used to replace option "-O" by others, e.g. "-g" 
# to get a debugging version
CFLAGS  = 
PFLAGS  = -w -temp=.
COFLAGS = -q

IDL	= ../../idl
LIB	= ../../lib

DERIVE	= derive
FILES =	comar.specs comar.con comar.sym comar.gla \
	comar.lido comar.head comar.init comar.finl \
	comar_ins.h comar_ins.c mkstrsupp.c
EXTHDR=	$(IDL)/comar.h $(IDL)/comar_func.h $(IDL)/comarMacros.h \
	$(IDL)/global.h $(IDL)/name.h $(LIB)/cmrlib.h $(LIB)/cmrinternal.h
LIBS  = $(IDL)/IDL.a $(LIB)/lib.a
EXE	= ../../cola_pgs2cmr.exe

TIDY	= *.o *.a ERRS
CLEAN	= $(TIDY) *.exe
CLOBBER = $(CLEAN) COMPILER
RCS	= # $(FILES)

# generates the sources for the frontend

all:
	cd COMPILER; make CC="$(CC)" CFLAGS="$(CFLAGS)" PFLAGS="$(PFLAGS)"
	rm -f $(EXE); ln COMPILER/comar.exe $(EXE); chmod 0755 $(EXE)

gen:    CACHE $(FILES) $(LIBS) $(EXTHDR)
	$(DESTDIR)/bin/eli -c CACHE < $(DERIVE)
	sed -e '/\$$(OBJS)/s|\$$(OBJS)|\$$(OBJS) ../../../lib/lib.a ../../../idl/IDL.a|g' \
		COMPILER/Makefile.cpp > COMPILER/Makefile.new; \
	mv COMPILER/Makefile.new COMPILER/Makefile.cpp
	cd COMPILER; Configure

CACHE:  
	$(DESTDIR)/bin/eli -c $(DESTDIR) -n CACHE -q

# installation

install: $(EXE)


# distribution

distrib:	clean Makefile
	rm -rf $(DISTRIB)/trafos/pgs2cmr
	- mkdir $(DISTRIB)/trafos/pgs2cmr
	cp Makefile $(DISTRIB)/trafos/pgs2cmr
	cd $(DISTRIB)/trafos/pgs2cmr; chmod 0644 Makefile
	cp -r COMPILER $(DISTRIB)/trafos/pgs2cmr/COMPILER
	chmod 0644 $(DISTRIB)/trafos/pgs2cmr/COMPILER/*

# checkout
 
checkout:
	co -q $(FILES)

# SourceDistr

SourceDistr:	Makefile
	cp -r $(ELI)/COMPILER .
	cd COMPILER; make clean

# cleaning targets

.PHONY:		tidy clean rcsclean clobber

tidy:
		rm -rf $(TIDY)

clean:
		rm -rf $(CLEAN)
		-cd COMPILER; make clean

clobber:
		rm -rf $(CLOBBER)

rcsclean:
		rm -rf $(CLEAN)
		-rcsclean $(COFLAGS) $(RCS)

save:
		-mkdir RCS
		-ci -k -t/dev/null -nOriginal -u -q Makefile $(RCS)
		-rcs -bOriginal.1 -q Makefile $(RCS)
		-ci -fOriginal.1 -m/dev/null -q -u Makefile
		-ci -fOriginal.1 -m/dev/null -q $(RCS)

