#
# $Name:  $
#
# $Log: Makefile,v $
# Revision 1.7  2003/06/07 23:04:46  robert
# Add trigger install, dbTypes
#
# Revision 1.6  2002/02/19 14:47:35  robc
# Add support for tassiv_triggers.so
#
# Revision 1.5  2002/01/29 04:36:35  robc
# Add popt library.
#
# Revision 1.4  2001/12/11 05:55:27  robc
# Remove meanCreate and medianCreate in favor of darkCreate
#
# Revision 1.3  2001/11/23 16:27:56  robc
# Add a couple more programs
#
# Revision 1.2  2001/11/14 03:49:56  robc
# Add compositCreate to builds
#
# Revision 1.1  2001/10/06 09:52:37  robc
# First entry
#

CC = gcc
CXX = g++
LOADLIBES = -lcfitsio -lm -lpopt
CFLAGS = -I./ -I/usr/local/include -O2 -Wall -Wmissing-prototypes -Wmissing-declarations
PGSQL_INC = -I/usr/local/src/postgresql-7.3.3/src/include
CFLAGS += $(PGSQL_INC)

PSQL = /usr/local/pgsql/bin/psql

all: stdbox darkCreate flatCreate compositCreate reduce \
	compress_fits uncompress_fits tassiv_triggers.so

reduce: reduce.c
stdbox: stdbox.c
darkCreate: darkCreate.c
flatCreate: flatCreate.c
compostCreate: compostCreate.c

compress_fits: compress_fits.c
uncompress_fits: uncompress_fits.c

dbTypes.so: dbTypes.c
	$(CC) $(CFLAGS) $(PGSQL_INC) -fpic -c -o dbTypes.o dbTypes.c

tassiv_triggers.o: tassiv_triggers.c

tassiv_triggers.so: tassiv_triggers.o
	$(CC) -shared -o tassiv_triggers.so tassiv_triggers.o
	chmod g+rx tassiv_triggers.so

%.so : %.c
	$(CC) $(CFLAGS) $(PGSQL_INC) -fpic -shared -c -o $@ $< 

tassiv_triggers.install: tassiv_triggers.so
	- $(PSQL) -d tassiv -c "DROP TRIGGER obs_u_trig ON obs_u"
	- $(PSQL) -d tassiv -c "DROP TRIGGER obs_b_trig ON obs_b"
	- $(PSQL) -d tassiv -c "DROP TRIGGER obs_v_trig ON obs_v"
	- $(PSQL) -d tassiv -c "DROP TRIGGER obs_r_trig ON obs_r"
	- $(PSQL) -d tassiv -c "DROP TRIGGER obs_i_trig ON obs_i"
	- $(PSQL) -d tassiv -c "DROP FUNCTION observations_trigger( )"
	install -D tassiv_triggers.so /usr/local/pgsql/triggers/tassiv_triggers.so
	$(PSQL) -d tassiv -f dbTriggers.sql


