# Makefile  to build a module
# locate in the source (/src) directory for a bundle
#Copyright (C) 1992, California Institute of Technology. */
#U.S. Government Sponsorship under NASA Contract NAS7-918 */
#is acknowledged. */
#
# OPSDIR, CONFIGROOT, and SUPERDIR are inherited from ../Makefile
#

# Insert the name of this Bundle as MODULE
MODULE= flatten
# Almost always needed, ok to change per Bundle needs
LIBS=		-lm -lc
OPSDIR= .
LDIR=           $(OPSDIR)/lib
INCLUDEDIR=     $(OPSDIR)

# Where to Install it
INSTALLDIR= ../..
#
BINDIR=$(INSTALLDIR)/bin
#
MANDIR=$(INSTALLDIR)/man
#
EXPORTDIR= ../../export/$(MODULE)
# Local libraries
ILIBS=           $(INSTALLDIR)/lib/libim.a

#CFLAGS=         -f
CFLAGS=         -O -I${INCLUDEDIR}

LINTFLAGS=	-h

CFILES= conductor.c main.c flatten.c \
        getimaginfo.c hdrclean.c nlengths.c squawk.c timestamp.c

OBJS=  conductor.o main.o flatten.o \
        getimaginfo.o hdrclean.o nlengths.o squawk.o timestamp.o

SPECIALS= flatten.h squawk.h imaginfo.h

$(MODULE): $(OBJS) $(ILIBS)
	cc $(LDFLAGS) -o $(MODULE) $(OBJS) $(ILIBS) $(LIBS)

# This is required by higher level makes, it must leave a help.txt
# file in the bundle src directory, even it that means doing nothing
help.txt:help.nrf
	nroff -man help.nrf | colcrt - > help.txt

##install: installbin installman
install: $(BINDIR)/$(MODULE)

$(BINDIR)/$(MODULE): $(MODULE)
	rm -f $(BINDIR)/$(MODULE)
	cp $(MODULE) $(BINDIR)
	chmod 755 $(BINDIR)/$(MODULE)
installman:
	rm -f $(MANDIR)/man1/$(MODULE).1
	cp $(MODULE).1 $(MANDIR)/man1/$(MODULE).1
	chmod 644 $(MANDIR)/man1/$(MODULE).1

# Godliness...
clean :
	rm -f $(OBJS) core a.out flatten

veryclean :
	rm -f $(OBJS) core a.out $(MODULE)

export:
	mkdir $(EXPORTDIR)
	cp COPYRIGHT Makefile* $(CFILES) $(SPECIALS) $(EXPORTDIR)

ctags :
	ctags $(CFILES) $(INCLUDES) $(SPECIALS)

lint : $(CFILES)
	lint $(LINTFLAGS) $(CFILES) $(LIBS)

print :	filelist $(CFILES) $(INCLUDES) $(SPECIALS)
	lpr $?

printall: filelist
	pr filelist Makefile $(CFILES) $(INCLUDES) $(SPECIALS) | lpr

filelist  : $(CFILES) $(SPECIALS)
	rm -f filelist
	for i in $(CFILES) $(INCLUDES) $(SPECIALS);  do \
	 echo $$i >> filelist; done

depend:
	${CC} -M ${CFLAGS} ${CFILES} | \
	sed -e ':loop' \
	    -e 's/\.\.\/[^ /]*\/\.\./../' \
	    -e 't loop' | \
	awk ' { if ($$1 != prev) { print rec; rec = $$0; prev = $$1; } \
		else { if (length(rec $$2) > 78) { print rec; rec = $$0; } \
		       else rec = rec " " $$2 } } \
	      END { print rec } ' > makedep
	echo '/^# DO NOT DELETE THIS LINE/+1,$$d' >eddep
	echo '$$r makedep' >>eddep
	echo 'w' >>eddep
	cp Makefile Makefile.bak
	ex - Makefile < eddep
	rm eddep makedep

hdrclean.o: hdrclean.c
#	@echo "Some compilers will needlessly complain about integer"
#	@echo "overflows occuring when -2147483648 is assigned to int"
	${CC} -c ${CFLAGS} hdrclean.c

# DO NOT DELETE THIS LINE -- make depend uses it
# IF YOU PUT STUFF HERE IT WILL GO AWAY
# This is just primer, it will go away.
