Makefile 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. #!/usr/bin/make -f
  2. # file: pib/Makefile
  3. # ====================================================================
  4. # environment definitions;
  5. # --------------------------------------------------------------------
  6. include ../make.def
  7. # ====================================================================
  8. # symbols;
  9. # --------------------------------------------------------------------
  10. CFLAGS+=
  11. LDFLAGS+=
  12. TRASH=*.o *.obj *.exe t t.* *~ *.[0-9][0-9][0-9] *.test
  13. FILES=Makefile *.mak *.sh *.txt *.c *.h *.xml *.css
  14. TOOLS=chkpib chkpib2 setpib getpib modpib pib2xml pibcomp pibdump pibruin xml2pib psin psout pskey
  15. TOOLS+=psgraph psnotch pibrump
  16. PAGES=chkpib.1 chkpib2.1 setpib.1 getpib.1 modpib.1 pib2xml.1 pibcomp.1 pibdump.1 xml2pib.1 psin.1 psout.1 pskey.1
  17. PAGES+=pibrump.1 pibruin.1 psgraph.1 psnotch.1
  18. # ====================================================================
  19. # pseudo targets;
  20. # --------------------------------------------------------------------
  21. all compile: ${TOOLS}
  22. compact: compile
  23. if [ ! -z ${STRIP} ]; then ${STRIP} ${TOOLS}; fi
  24. if [ -x /usr/local/bin/upx ]; then upx --best ${TOOLS}; fi
  25. scripts:
  26. manuals:
  27. test -d ${MAN} || install -m ${DIR_PERM} -o ${OWNER} -g ${GROUP} -d ${MAN}
  28. install -m ${MAN_PERM} -o ${OWNER} -g ${GROUP} ${PAGES} ${MAN}
  29. library:
  30. install -m ${DIR_PERM} -o ${OWNER} -g ${GROUP} -d ${BIN}
  31. install: $(TOOLS) library
  32. install -m ${BIN_PERM} -o ${OWNER} -g ${GROUP} ${TOOLS} ${BIN}
  33. uninstall:
  34. cd ${BIN}; rm -f ${TOOLS}
  35. cd ${MAN}; rm -f ${PAGES}
  36. check:
  37. ${SHELL} pib.sh
  38. fresh: clean compile
  39. clean:
  40. rm -f ${TRASH} ${TOOLS}
  41. ignore:
  42. echo ${TOOLS} | tr ' ' '\n' > .gitignore
  43. # ====================================================================
  44. # rules;
  45. # --------------------------------------------------------------------
  46. %: %.o
  47. ${CC} -o ${@} ${^} ${LDFLAGS}
  48. %.o: %.c
  49. ${CC} -c ${<} ${CFLAGS}
  50. %.h: %.h
  51. # ====================================================================
  52. # Build C version;
  53. # --------------------------------------------------------------------
  54. fetchpib: fetchpib.o getoptv.o putoptv.o version.o checksum32.o error.o
  55. chkpib: chkpib.o getoptv.o putoptv.o version.o pibpeek1.o pibpeek2.o checksum32.o fdchecksum32.o keys.o hexstring.o error.o hexdecode.o SHA256.o HPAVKeyNID.o fdmanifest.o manifest.o strfbits.o
  56. chkpib2: chkpib2.o getoptv.o putoptv.o version.o pibpeek1.o pibpeek2.o checksum32.o fdchecksum32.o keys.o hexstring.o error.o hexdecode.o SHA256.o HPAVKeyNID.o manifest.o strfbits.o
  57. modpib: modpib.o getoptv.o putoptv.o version.o hexencode.o hexdecode.o todigit.o memincr.o fdchecksum32.o keys.o uintspec.c error.o pibpeek1.o pibpeek2.o hexstring.o pibfile.o pibfile1.o pibfile2.o SHA256.o HPAVKeyNID.o checksum32.o synonym.o
  58. getpib: getpib.o getoptv.o putoptv.o version.o uintspec.o basespec.o todigit.o hexout.o error.o nvmseek2.o checksum32.o fdchecksum32.o
  59. mrgpib: mrgpib.o getoptv.o putoptv.o version.o error.o fdchecksum32.o pibfile1.o
  60. setpib: setpib.o getoptv.o putoptv.o version.o hexpeek.o hexdump.o dataspec.o basespec.o error.o todigit.o uintspec.o bytespec.o pibfile1.o checksum32.o fdchecksum32.o memencode.o nvmseek2.o
  61. setpib1: setpib1.o getoptv.o putoptv.o version.o hexpeek.o hexdump.o dataspec.o basespec.o error.o todigit.o uintspec.o bytespec.o pibfile1.o checksum32.o fdchecksum32.o memencode.o
  62. setpib2: setpib2.o getoptv.o putoptv.o version.o hexpeek.o hexdump.o dataspec.o basespec.o error.o todigit.o uintspec.o bytespec.o pibfile1.o checksum32.o fdchecksum32.o memencode.o
  63. psin: psin.o getoptv.o putoptv.o version.o hexdecode.o hexstring.o todigit.o error.o pibfile.o pibfile1.o pibfile2.o piblock.o pibscalers.o fdchecksum32.o checksum32.o
  64. pskey: pskey.o getoptv.o putoptv.o version.o error.o hexdecode.o hexstring.o hexout.o pibfile1.o SHA256Reset.o SHA256Write.o SHA256Block.o SHA256Fetch.o keys.o fdchecksum32.o
  65. psout: psout.o getoptv.o putoptv.o version.o error.o pibfile.o pibfile1.o pibfile2.o pibscalers.o checksum32.o fdchecksum32.o
  66. psnotch: psnotch.o getoptv.o putoptv.o version.o error.o todigit.o uintspec.o
  67. psgraph: psgraph.o getoptv.o putoptv.o version.o error.o todigit.o uintspec.o pibscalers.o
  68. pibrump: pibrump.o getoptv.o putoptv.o version.o error.o pibfile1.o fdchecksum32.o reword.o hexstring.o hexdecode.o memout.o rules.o
  69. pibruin: pibruin.o getoptv.o putoptv.o version.o error.o pibfile1.o nvmseek2.o checksum32.o fdchecksum32.o reword.o getargv.o hexstring.o hexdecode.o memout.o lookup.o assist.o bytespec.o basespec.o ipv4spec.o ipv6spec.o todigit.o codelist.o emalloc.o rules.o ParseRule.o piblock.o ruledump.o
  70. pib2xml: pib2xml.o checksum32.o error.o fdchecksum32.o getoptv.o hexview.o output.o nvmseek2.o putoptv.o version.o xmlschema.o
  71. pibdump: pibdump.o getoptv.o putoptv.o version.o hexoffset.o hexview.o emalloc.o error.o checksum32.o fdchecksum32.o nvmseek2.o
  72. pibcomp: pibcomp.o getoptv.o putoptv.o version.o hexoffset.o hexview.o emalloc.o error.o checksum32.o fdchecksum32.o nvmseek2.o
  73. xml2pib: xml2pib.o HPAVKeyNID.o SHA256Block.o SHA256Fetch.o SHA256Reset.o SHA256Write.o checksum32.o emalloc.o error.o fdchecksum32.o getoptv.o hexdecode.o hexstring.o keys.o manifest.o pibpeek1.o pibpeek2.o putoptv.o strfbits.o todigit.o version.o xmledit.o xmlfree.o xmlnode.o xmlopen.o xmlscan.o xmltree.o output.o
  74. # ====================================================================
  75. # includes;
  76. # --------------------------------------------------------------------
  77. include ../tools/tools.mak
  78. include ../nodes/nodes.mak
  79. include ../key/key.mak
  80. include ../pib/pib.mak
  81. include ../plc/plc.mak