CUR_REL_PATH := libs/himath

include ../../config.mk

LIB = libhimath.a

CFLAGS= -c ${OPTIMIZEFLAG} ${C_OPT} -D${MACH_OS} \
        -I../../include -I${IRIS_ROOT}/include

CXXFLAGS= -c ${OPTIMIZEFLAG} ${CC_OPT} -D${MACH_OS} \
        -I../../include -I${IRIS_ROOT}/include
CCFLAGS = ${CXXFLAGS}

CFLAGS_NOOPT= -c ${DEBUGFLAG} ${C_OPT} -D${MACH_OS} \
	-I../../include -I${IRIS_ROOT}/include

CPPMSG= -DMESSAGE_ONLY -I../../include -I${IRIS_ROOT}/include

LDFLAGS      = -L../../libs/lib -L${IRIS_ROOT}/libs/lib 

LIB_C_SRCS =	\
		fft.c \
		linefit.c \
		maproj.c \
		MapProjInt.c \
		matrix.c \
		poly.c \
		triangle.c \
		xypoly.c

LIB_C_OBJS = ${LIB_C_SRCS:.c=.o}

MKDEPEND_CSRCS = ${LIB_C_SRCS}

all: ${LIB_DIR} ${LIB_DIR}/${LIB} ${MSG_CAT}

depend: makefile.d

makefile.d: ${MKDEPEND_CSRCS}
	touch makefile.d
	makedepend -fmakefile.d -- ${CFLAGS} -- ${MKDEPEND_CSRCS} ; 

map_test: map_test.o
	${CXX} ${LD_OPT} map_test.o ${LDFLAGS} -lhimath -luser -lm ${LSEARCH_BSD} -o map_test

xypoly: xypoly.c
	${CXX} ${CCFLAGS} xypoly.c -DXYPOLYTEST
	${CXX} ${LD_OPT} xypoly.o ${LDFLAGS} -lhimath -luser -lm ${LSEARCH_BSD} -o xypoly

cleanexe:
	rm -f core map_test
clean: cleanexe
	rm -f *.o *~ *.a *.usg *.cat* map_test xypoly *.d *.d.bak ${LIB_DIR}/${LIB}

install: all ${IRIS_BIN} ${IRIS_NLS} ${IRIS_LIB}
	install -m 0664 -o ${IRIS_USER} -g ${IRIS_GROUP} ${LIB} ${IRIS_LIB}
	install -m 0664 -o ${IRIS_USER} -g ${IRIS_GROUP} ${MSG_CAT} ${IRIS_NLS}

uninstall:
	cd ${IRIS_NLS}; rm -f ${MSG_CAT}
	cd ${IRIS_LIB}; rm -f ${LIB}

install_src: ${INST_SRC_DIR}
	install -m 0664 -o ${IRIS_USER} -g ${IRIS_GROUP} Makefile *.[cCh] *.msg ${INST_SRC_DIR}

uninstall_src:
	rm -rf ${INST_SRC_DIR}

${LIB}: ${LIB_C_OBJS}
	rm -f $@; $(AR) -rsc $@ $^

-include makefile.d
