# This file was generated by `gxv' from `sort_gui.G'.

include ../config.mk

# Parameters.

PROGRAM = sunsort
SOURCES.c = read_spec.c data_disk.c data_tape.c data_remote.c sort_thread.c \
	sort_io.c discsubs.c sdb.c eg.c sort_comms.c sort_notify.c demon.c
SOURCES.h = sort_extern.h datatape.h sdb.h eg.h 
SOURCES.F = 
SOURCES.f = 
SOURCES.y =
SOURCES.l =

# Derived parameters.

SOURCES = \
	$(SOURCES.h) \
	$(SOURCES.l) \
	$(SOURCES.y) \
	$(SOURCES.c) \
	$(SOURCES.f)

TARGETS.c = sort_main.c 

TARGETS.h = sort_thread.h version.h

TARGETS = \
	$(TARGETS.h) \
	$(TARGETS.c)

OBJECTS = \
	$(SOURCES.c:%.c=%.o) \
	$(SOURCES.f:%.f=%.o) \
	$(SOURCES.F:%.F=%.o) \
	$(TARGETS.c:%.c=%.o)

# Compiler flags.

# for solaris 2.x
CFLAGS = -DSVR4 -D _REENTRANT -g #-xO4
CPPFLAGS += 
LDFLAGS += -L../sort-spy
LDLIBS += -lspy -lthread libacqfynu.a -lsocket -lnsl

# Standard targets.

all:	 $(PROGRAM)
objects: $(SOURCES.c) $(TARGETS.c) $(TARGETS.h) $(OBJECTS)
sources: $(SOURCES)
targets: $(SOURCES) $(TARGETS)

$(PROGRAM): $(SOURCES.c) $(TARGETS.c) $(TARGETS.h) $(OBJECTS)
	$(LINK.c) -o $(PROGRAM) $(OBJECTS) $(LDLIBS)

data_remote.o := CPPFLAGS += -I../sort-spy 
data_remote.o: 
	$(COMPILE.c) data_remote.c 

clean :
	-rm -f *.o core *~ *%

install: $(PROGRAM)
	mv $(PROGRAM) ..
	@echo "sunsort installed ..."


lint:
	lint $(CFLAGS) $(SOURCES.c) -I../sort-spy -m $(TARGETS.c)

version.h: ../config.mk
	echo "#define VERSION \"$(VERS)\"" > version.h
	echo "#define VERLINE \"`echo $(VERS) | \
		awk '{for(i=0; i<length($0); i++) printf "-"}'`\"" >> version.h

../sunsort_lib/formats.h: ../sunsort_lib/formats.lst
	(cd ../sunsort_lib; make formats.h)

data_disk.o: data_disk.c
data_remote.o: data_remote.c ../sort-spy/libspy.h sort_def.h
data_tape.o: data_tape.c datatape.h
discsubs.o: discsubs.c sort_extern.h sort_thread.h sort_def.h
eg.o: eg.c sort_thread.h sort_def.h eg.h
read_spec.o: read_spec.c sort_thread.h sort_def.h eg.h
sdb.o: sdb.c sdb.h
sort_comms.o: sort_comms.c sort_extern.h sort_thread.h sort_def.h sort_mem.h
sort_comms.o: sort_def.h sort_thread.h datatape.h ../sunsort_lib/formats.h
sort_io.o: sort_io.c sort_mem.h sort_def.h
sort_main.o: sort_main.c sort_thread.h sort_def.h sort_extern.h sort_thread.h
sort_main.o: sort_mem.h sort_def.h version.h
sort_notify.o: sort_notify.c sort_extern.h sort_thread.h sort_def.h sort_mem.h
sort_notify.o: sort_def.h
sort_thread.o: sort_thread.c sort_thread.h sort_def.h
