#++++++++++++++++
#.IDENTIFICATION Makefile
#.LANGUAGE       Make (makefile script)
#.AUTHOR         Francois Ochsenbein [CDS]
#.ENVIRONMENT    Unix
#.KEYWORDS       
#.VERSION  1.0   03-Mar-1997
#.VERSION  2.0   19-Oct-1998: USNO-A2.0
#.VERSION  2.1   13-Nov-2004: Use ROOTdir
#.VERSION  2.2   09-Nov-2005: counts
#.PURPOSE        (Re)Create dependent files in this Directory
#.COMMENTS       
#----------------

SHELL=/bin/sh
PACKAGE=USNO_B1

# Defaut rule (e.g. copy from a public directory)
.DEFAULT:

PREFIX   = ..
VERSION  = 1.94
DISTRIB  = $(PACKAGE)
#DISTRIB  = $(PACKAGE)-$(VERSION)

# Programs:
CC      = gcc -Wall
COPY    = cp -p
STRIP   = strip
RANLIB  = ranlib
AR      = ar ruv
int4    = int
int8    = long long

# Directories:
BINDIR   = $(PREFIX)/bin
SHSDIR   = $(PREFIX)/bin
MANDIR   = $(PREFIX)/man
ROOTdir  =

# Files:
EXPORT  = usnob1.h usnob1def.h ReadMe pmm80.c tycho_index.c \
	  usnob1.c usnob1_read.c usnob_sub.c
BIN     = usnob1 tycho_index usnob1_read usnob_make usnob_sub
SHS     =
MAN     =

# Options:
DEBUG = -O
C_OPT = -Dint4="$(int4)" -Dint8="$(int8)" 
SYS =
CFLAGS = $(C_OPT) $(DEBUG) $(SYS) -I. 
COMPILE= $(CC) $(CFLAGS) -c
LIBSYS = -lm

# RULES: If the default rules haven't to be applied, remove the #
.SUFFIXES: 


# Dependencies:
default: usnob1 
	-find . -type d -name \*cache\* -exec rm -rf {} \;

install: install_bin 
	-find . -type d -name \*cache\* -exec rm -rf {} \;
	$(MAKE) test

usnob1: usnob1.c usnob_sub.c Makefile
	if test "$(ROOTdir)" = ""; then d=`pwd`; d=`dirname $$d`; fi; \
	echo "....ROOTdir=$$d"; \
	$(CC) -DROOTdir='"'$$d'"' $(CFLAGS) usnob1.c usnob_sub.c -o $@ -lm

install_bin: usnob1
	@if test -d $(BINDIR); then echo ....$(BINDIR) exists; \
	else echo ....Creating $(BINDIR) && mkdir $(BINDIR); \
	fi
	-(cd ../bin; for p in $(BIN); do test -x $$p && mv -f $$p $$p.old; done)
	$(COPY) usnob1 ../bin

test:
	./test.sh

pmm80: pmm80.c usnob1.h
	$(CC) -I. pmm80.c -o $@

counts:	../bin/usnob1 
	../bin/usnob1 -whole | acut -c1-12 | gawk -F- '\
	  BEGIN{z=-1}/^#/{next} END{printf "%7d\n", n}\
	  { if($$1!=z){ printf "%7d\n",n; \
	      printf "z=%04d: %+11d ", $$1, id; z=$$1; n=0 } \
	    id++; n++}'

usnob_make: usnob_make.c
	if test "$(ROOTdir)" = ""; then d=`pwd`; d=`dirname $$d`; fi; \
	$(CC) -DROOTdir='"'$$d'"' $(CFLAGS) $@.c -o $@

usnob_sub: usnob_sub.c
	$(CC) -DTEST -DROOTdir='"'$$d'"' $(CFLAGS) $@.c -o $@ -lm

tycho_index: tycho_index.c
	$(CC) $(CFLAGS) $@.c usnob_sub.c -o $@ -lm

usnob1_read: usnob1_read.c 
	if test "$(ROOTdir)" = ""; then d=`pwd`; d=`dirname $$d`; fi; \
	$(CC) $(CFLAGS) $@.c usnob_sub.c -o $@ -lm

export: /tmp/usnob.tar.gz

/tmp/usnob.tar.gz: $(EXPORT) Makefile
	$(MAKE) CLEAN
	-test -d /tmp/src && rm -rf /tmp/src
	mkdir /tmp/src
	cp -p $(EXPORT) Makefile.in configure /tmp/src
	cd /tmp && tar cfv /tmp/usnob.tar src
	gzip -v9 /tmp/usnob.tar
	rm -rf /tmp/usnob

# Clean up everything
clean:
	rm -f core a.out *.o *.log *.lis *.dvi *.ps *.aux *.trace $(BIN)

CLEAN:	clean
