
subdir = contrib/pg_sphere
top_builddir = ../..
include $(top_builddir)/src/Makefile.global

MODULE_big = pg_sphere
OBJS       = sscan.o sparse.o sbuffer.o vector3d.o point.o \
             euler.o circle.o line.o ellipse.o polygon.o \
             path.o box.o output.o btree.o gq_cache.o gist.o key.o

DATA_built = pg_sphere.sql
DOCS       = README.pg_sphere

REGRESS      = init tables points euler circle line ellipse poly path box index
CRUSH_TESTS  = init_extended circle_extended 

crushtest: REGRESS += $(CRUSH_TESTS)
crushtest: installcheck

# order of sql files is important
PGS_SQL    =  pgs_types.sql pgs_point.sql pgs_euler.sql pgs_circle.sql \
 pgs_line.sql pgs_ellipse.sql pgs_polygon.sql pgs_path.sql \
 pgs_box.sql pgs_gist.sql pgs_btree.sql


sscan.o : sparse.c

sparse.c: sparse.y
ifdef YACC
	$(YACC) -d $(YFLAGS) -p sphere_yy -o sparse.c $<
else
	@$(missing) bison $< $@
endif


sscan.c : sscan.l
ifdef FLEX
	$(FLEX) $(FLEXFLAGS) -Psphere -o$@ $<
else
	@$(missing) flex $< $@
endif

EXTRA_CLEAN = sscan.c sparse.c sparse.h $(PGS_SQL)

include $(top_srcdir)/contrib/contrib-global.mk

pg_sphere.sql : $(PGS_SQL)
	cat $(PGS_SQL) > $@

%.sql: %.sql.in
	sed 's:MODULE_PATHNAME:$(libdir)/pg_sphere:g' $< >$@

