OS!=uname -s
.include "../platform/${OS}/Makefile.inc"
.include "../Makefile.inc"

LIBS+=	${SYMON_LIBS} -L../lib -lsym -lprobe
MODS!=	( for s in ../platform/stub/sm_*.c; do \
		f=../platform/${OS}/`basename $$s`; \
		g=../platform/generic/`basename $$s`; \
		if [ -f $$f ]; then      echo $$f; \
		else if [ -f $$g ]; then echo $$g; \
		else                     echo $$s; \
		fi; fi; \
	  done )

SRCS=	symon.c readconf.c symonnet.c ${MODS} ${EXTRA_SRC}
OBJS+=	${SRCS:R:S/$/.o/g}
CFLAGS+=-I../lib -I../platform/${OS} -I.

all: symon symon.cat8

${OBJS}: conf.h

symon: ${OBJS}
	${CC} -o $@ ${OBJS} ${LIBS}
.ifndef DEBUG
	${STRIP} $@
.endif

clean:
	rm -f conf.h symon symon.cat8 symon.core ${OBJS}

install: symon symon.8 symon.conf
	${INSTALL} -d -m 555 -g ${INSTALLGROUPDIR} -o ${INSTALLUSER} ${PREFIX}/${BINDIR}
	${INSTALL} -c -m 555 -g ${INSTALLGROUPFILE} -o ${INSTALLUSER} symon      ${PREFIX}/${BINDIR}/
	${INSTALL} -d -m 555 -g ${INSTALLGROUPDIR} -o ${INSTALLUSER} ${PREFIX}/${MANDIR}/man8
	${INSTALL} -c -m 444 -g ${INSTALLGROUPFILE} -o ${INSTALLUSER} symon.8 ${PREFIX}/${MANDIR}/man8/symon.8
	${INSTALL} -d -m 555 -g ${INSTALLGROUPDIR} -o ${INSTALLUSER} ${PREFIX}/${SHRDIR}
	${INSTALL} -c -m 555 -g ${INSTALLGROUPFILE} -o ${INSTALLUSER} c_config.sh ${PREFIX}/${SHRDIR}/
	${INSTALL} -d -m 555 -g ${INSTALLGROUPDIR} -o ${INSTALLUSER} ${PREFIX}/${EXADIR}
	${INSTALL} -c -m 444 -g ${INSTALLGROUPFILE} -o ${INSTALLUSER} symon.conf ${PREFIX}/${EXADIR}/

conf.h:  Makefile ../Makefile.inc
	@echo Generating $@ on ${OS}
	@echo "/* This file was automagically generated by make */" > $@
	@echo "#define SYMON_CONFIG_FILE \"$(SYSCONFDIR)/symon.conf\""  >> $@
	@echo "#define SYMON_VERSION \"$(V)\"" >> $@
	@echo "#define SYMON_PLATFORM \"${OS}\"" >> $@
	@echo "#include \"../platform/${OS}/platform.h\"" >> $@
	@if [ -f ../platform/${OS}/conf.sh ]; then sh ../platform/${OS}/conf.sh >> $@; fi

symon.h: conf.h

symon.o: symon.h
