# SccsId = "@(#)Makefile 4.5 (TU-Delft) 03/11/92"
########################################################################
## the env vars
## CACDSRCHOME	path to cacdsrc home
## NELSISHOME	path to nelsis home
## ARCHITECTURE
## HOSTNAME
## defined automagically
## IF etdisrc entered correctly e.g set home=~cacdsrc;newgrp etdisrc

## ARCHITECTURE DEPENDENT DEFINES ############################################
CONFIGDIR=$(CACDSRCHOME)/CONFIG
include $(CONFIGDIR)/M.$(ARCHITECTURE)

## and you could use this
#include $(CONFIGDIR)/M.$(HOSTNAME)

SHELL=/bin/sh

#ICDPATH        =       $(NELSISHOME)
ICDPATH         =       $(CACDSRCHOME)/DEVWSPC/$(ARCHITECTURE)
#ICDPATH=/usr1/nelsis
#ICDPATH=/usr0/cacd
DEBUGFLAGS      =

BIN=$(ICDPATH)/bin
LIB=$(ICDPATH)/lib
LIBINCL=$(LIB)/include
LIBPROC=$(LIB)/process

OSTYPE=SYSV
LDFLAGS=
# ESE = -DESE

DMLIB=$(LIB)/libddm.a
ESELIB=$(LIB)/libese.a
FMTLIBS=$(LIB)/libcirfmt.a

LDFLSLS=$(LDFLAGS)
#OCFLAGS=-Ddmpath=TMPath -Dprojectid=projID -DNCF_RELEASE=410 -DEXPDATE=9110
#OCFLAGS= -DNCF_RELEASE=300

CFLAGS=$(OCFLAGS) -D$(OSTYPE) -DLDFLSLS="\"$(LDFLSLS)\"" $(ESE) -I$(LIBINCL)

TARGET=sls_exp
ESETARGET=netexp

# NOTE: The files bsearch.c deb.c find.c hiername.c monit.c and vfunc.c
#       are equal for the expander and the simulator, 
#       and the include files gntype.h and gndefine.h must 
#       always exactly be equal for the expander and the simulator

SRC1= gndefine.h define.h gntype.h type.h extern.h search.h
SRC2= compact.c dberror.c deb.c find.c findhash.c getdev.c\
	getnet.c getterm.c hiername.c inbin.c linkntw.c main.c modtype.c\
	mksim.c new.c outbin.c rmnoterm.c sort.c vfunc.c
SRC3= bsearch.c hsearch.c monit.c
SRCS= $(SRC1) $(SRC2) $(SRC3)

OBJ2= compact.o dberror.o deb.o find.o findhash.o getdev.o\
	getnet.o getterm.o hiername.o inbin.o linkntw.o main.o modtype.o\
	mksim.o new.o outbin.o rmnoterm.o sort.o vfunc.o
OBJ3= bsearch.o hsearch.o monit.o
OBJS= $(OBJ2) $(OBJ3)

$(TARGET): $(OBJS)
	$(CC) $(LDFLAGS) $(CFLAGS) $(OBJS) $(FMTLIBS) $(DMLIB) $(OLIBS) -o $(TARGET)

$(ESETARGET): $(OBJS)
	$(CC) $(LDFLAGS) $(CFLAGS) $(OBJS) $(FMTLIBS) $(DMLIB) $(ESELIB) $(OLIBS) -o $@

ese: $(ESETARGET)

install: $(TARGET)
	cp $(TARGET) $(BIN)
	rm $(TARGET) 

eseinstall: $(ESETARGET)
	cp $(ESETARGET) $(BIN)
	rm $(ESETARGET) 

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

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

$(OBJ2): $(SRC1)

hsearch.o: search.h

$(SRCS):
	-@if [ ! -h $@ ]; then \
	    ln -f -s $(SOURCEDIR)/$@ .; \
	fi; \
	cd $(SOURCEDIR) ; \
	if [ ! -f $@ ]; then \
	    get -s SCCS/s.$@; \
	fi;
#EOF
