# SccsId = "@(#)Makefile 1.7 Delft University of Technology 02/25/93"
##############################################################################

VPATH     = ../..
SHELL     = /bin/sh

CONFIGDIR = $(CACDSRCHOME)/CONFIG

# in contrast to other nelsis/cacd tools, this one requires ANSI-C:
ANSICC    = $CC

SOURCEDIR = SRC

OSTYPE    = SYSV

ICDPATH   = $(CACDSRCHOME)/DEVWSPC/$(ARCHITECTURE)

BIN       = $(ICDPATH)/bin/$(MACHINE)
MAN       = $(ICDPATH)/man
LIB       = $(ICDPATH)/lib/$(MACHINE)
LIBINCL   = $(ICDPATH)/lib/include
LIBPROC   = $(ICDPATH)/lib/process
LDFLAGS   = -L$(LIB)
OLIBS     = -ll -lm
CFLAGS    = $(OCFLAGS) -D$(OSTYPE) -I$(LIBINCL)

DMLIB     = -lddm
FMTLIBS   = -llayfmt

TARGET    = layflat
MANSRC1   = $(TARGET)

SRC1      = layflat.h prototypes.h
SRC2      = bbx_stuff.c err.c main.c mtx.c term_stuff.c \
            dmUserError.c flattenmc.c memman.c put_stuff.c
SRC3      = thedate.c
SRCS      = $(SRC1) $(SRC2) $(SRC3)

THEDATE   = $(SRC3:.c=.o)
OBJS      = $(SRC2:.c=.o)

default all: $(TARGET)

$(TARGET): TheDate $(OBJS) 
	$(LD) $(LDFLAGS) $(CFLAGS) $(OBJS) $(THEDATE) \
	      $(FMTLIBS) $(DMLIB) $(OLIBS) -o $(TARGET)

# three rules to make sure that thedate.c is always recompiled:
TheDate: rmdate $(THEDATE)
rmdate:; rm -f $(THEDATE)
$(THEDATE):
	$(CC) $(CFLAGS) \
	      "-DTHEDATE=\"`date | awk '{print $$1,$$2,$$3,$$6}'`\"" \
	      "-DTHEHOST=\"`hostname`\"" \
	      "-DTHEMAN=\"`whoami`\"" \
	      -c ../../$(@F:.o=.c) -o $@

install: $(TARGET)
	@echo cp $(TARGET) $(BIN)/$(TARGET) ; \
	 rm -f $(BIN)/$(TARGET) ; cp $(TARGET) $(BIN)/$(TARGET)
	@if [ -d $(MAN)/man1 ] ; then \
	   echo cp $(MANSRC1).1 $(MAN)/man1/$(MANSRC1).1 $ ; \
	   rm -f $(MAN)/man1/$(MANSRC1).1 ; cd ../.. ; \
           cp $(MANSRC1).1 $(MAN)/man1 ; \
	 fi

clean:
	rm -f $(OBJS) $(THEDATE) $(TARGET) core LINT

LINT: $(SRCS)
	lint $(CFLAGS) $(SRC2) > LINT

$(OBJS): $(SRC1) $(SRC2)

.c.o:
	$(ANSICC) -I. -I../.. -c $(CFLAGS) -o $@ $<

$(SRCS):
	-@$(TESTLINK) $@ || ln -s $(SOURCEDIR)/$@ .; \
	cd $(SOURCEDIR) ; \
	test -f $@ || get -s SCCS/s.$@;

#EOF
