Makefile 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. OS!=uname -s
  2. .include "../platform/${OS}/Makefile.inc"
  3. .include "../Makefile.inc"
  4. LIBS+= ${SYMON_LIBS} -L../lib -lsym -lprobe
  5. MODS!= ( for s in ../platform/stub/sm_*.c; do \
  6. f=../platform/${OS}/`basename $$s`; \
  7. g=../platform/generic/`basename $$s`; \
  8. if [ -f $$f ]; then echo $$f; \
  9. else if [ -f $$g ]; then echo $$g; \
  10. else echo $$s; \
  11. fi; fi; \
  12. done )
  13. SRCS= symon.c readconf.c symonnet.c ${MODS}
  14. OBJS+= ${SRCS:R:S/$/.o/g}
  15. CFLAGS+=-I../lib -I../platform/${OS} -I.
  16. all: symon symon.cat8
  17. ${OBJS}: conf.h
  18. symon: ${OBJS}
  19. ${CC} -o $@ ${OBJS} ${LIBS}
  20. .ifndef DEBUG
  21. ${STRIP} $@
  22. .endif
  23. clean:
  24. rm -f conf.h symon symon.cat8 symon.core ${OBJS}
  25. install: symon symon.8 symon.conf
  26. ${INSTALL} -c -m 555 -g ${INSTALLGROUPFILE} -o ${INSTALLUSER} symon ${PREFIX}/${BINDIR}/
  27. ${INSTALL} -d -m 555 -g ${INSTALLGROUPDIR} -o ${INSTALLUSER} ${PREFIX}/${MANDIR}/man8
  28. ${INSTALL} -c -m 444 -g ${INSTALLGROUPFILE} -o ${INSTALLUSER} symon.8 ${PREFIX}/${MANDIR}/man8/symon.8
  29. ${INSTALL} -d -m 555 -g ${INSTALLGROUPDIR} -o ${INSTALLUSER} ${PREFIX}/${SHRDIR}
  30. ${INSTALL} -c -m 555 -g ${INSTALLGROUPFILE} -o ${INSTALLUSER} c_config.sh ${PREFIX}/${SHRDIR}/
  31. ${INSTALL} -d -m 555 -g ${INSTALLGROUPDIR} -o ${INSTALLUSER} ${PREFIX}/${EXADIR}
  32. ${INSTALL} -c -m 444 -g ${INSTALLGROUPFILE} -o ${INSTALLUSER} symon.conf ${PREFIX}/${EXADIR}/
  33. conf.h: Makefile ../Makefile.inc
  34. @echo Generating $@ on ${OS}
  35. @echo "/* This file was automagically generated by make */" > $@
  36. @echo "#define SYMON_CONFIG_FILE \"$(SYSCONFDIR)/symon.conf\"" >> $@
  37. @echo "#define SYMON_VERSION \"$(V)\"" >> $@
  38. @echo "#define SYMON_PLATFORM \"${OS}\"" >> $@
  39. @echo "#include \"../platform/${OS}/platform.h\"" >> $@
  40. @if [ -f ../platform/${OS}/conf.sh ]; then sh ../platform/${OS}/conf.sh >> $@; fi
  41. symon.h: conf.h
  42. symon.o: symon.h