Makefile 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. #!/usr/bin/make -f
  2. # file: slac/Makefile
  3. # ====================================================================
  4. # environment definitions;
  5. # --------------------------------------------------------------------
  6. include ../make.def
  7. # ====================================================================
  8. # symbols;
  9. # --------------------------------------------------------------------
  10. # CFLAGS+= -DSLAC_DEBUG
  11. LDFLAGS+=
  12. TRASH=*.o *.obj *.exe t t.* *~ *.[0-9][0-9][0-9]
  13. FILES=Makefile *.mak *.sh *.c *.h
  14. TOOLS=evse pev
  15. PAGES=evse.1 pev.1
  16. # ====================================================================
  17. # pseudo targets;
  18. # --------------------------------------------------------------------
  19. all compile: ${TOOLS}
  20. compact: compile
  21. if [ ! -z ${STRIP} ]; then ${STRIP} ${TOOLS}; fi
  22. if [ -x /usr/local/bin/upx ]; then upx --best ${TOOLS}; fi
  23. library:
  24. install -m ${DIR_PERM} -o ${OWNER} -g ${GROUP} -d ${BIN}
  25. scripts:
  26. manuals:
  27. if [ ! -d ${MAN} ]; then install -m ${DIR_PERM} -o ${OWNER} -g ${GROUP} -d ${MAN}; fi
  28. install -m ${MAN_PERM} -o ${OWNER} -g ${GROUP} ${PAGES} ${MAN}
  29. install: compile library
  30. install -m ${SUID_PERM} -o ${OWNER} -g ${GROUP} ${TOOLS} ${BIN}
  31. uninstall:
  32. cd ${BIN}; rm -f ${TOOLS}
  33. cd ${MAN}; rm -f ${PAGES}
  34. clean:
  35. rm -f ${TRASH} ${TOOLS}
  36. check:
  37. ${SHELL} slac.sh
  38. ignore:
  39. echo ${TOOLS} | tr ' ' '\n' > .gitignore
  40. # ====================================================================
  41. # rules;
  42. # --------------------------------------------------------------------
  43. %: %.o
  44. ${CC} -o ${@} ${^} ${LDFLAGS}
  45. %.o: %.c
  46. ${CC} -c ${<} ${CFLAGS}
  47. # ====================================================================
  48. # programs;
  49. # --------------------------------------------------------------------
  50. evse: evse.o Devices.o EthernetHeader.o QualcommHeader.o HomePlugHeader1.o UnwantedMessage.o channel.o closechannel.o config.o decdecode.o decstring.o error.o evse_cm_atten_char.o evse_cm_mnbc_sound.o evse_cm_slac_match.o evse_cm_slac_param.o evse_cm_start_atten_char.o evse_cm_set_key.o getoptv.o hexdecode.o hexdump.o hexencode.o hexout.o hexstring.o openchannel.o putoptv.o readmessage.o readpacket.o sendmessage.o sendpacket.o slac_session.o strfbits.o todigit.o uintspec.o version.o slac_debug.o
  51. pev: pev.o Devices.o EthernetHeader.o QualcommHeader.o HomePlugHeader1.o UnwantedMessage.o channel.o closechannel.o config.o decdecode.o decstring.o error.o getoptv.o hexdecode.o hexdump.o hexencode.o hexstring.o memincr.o openchannel.o pev_cm_atten_char.o pev_cm_mnbc_sound.o pev_cm_slac_match.o pev_cm_slac_param.o pev_cm_start_atten_char.o pev_cm_set_key.o putoptv.o readmessage.o readpacket.o sendmessage.o sendpacket.o slac_connect.o slac_session.o strfbits.o todigit.o uintspec.o version.o slac_debug.o
  52. # ====================================================================
  53. # includes;
  54. # --------------------------------------------------------------------
  55. include ../tools/tools.mak
  56. include ../ether/ether.mak
  57. include ../mme/mme.mak
  58. include ../plc/plc.mak
  59. include ../key/key.mak