25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Makefile 2.4 KiB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. CC = /usr/bin/gcc
  2. CFLAGS = -Wall -g -O3 -Wextra -Wpedantic
  3. LDLIBS = -lcrypto
  4. SOURCES = params.c hash.c fips202.c hash_address.c randombytes.c wots.c xmss.c xmss_core.c xmss_commons.c
  5. HEADERS = params.h hash.h fips202.h hash_address.h randombytes.h wots.h xmss.h xmss_core.h xmss_commons.h
  6. SOURCES_FAST = $(subst core,core_fast,$(SOURCES))
  7. HEADERS_FAST = $(subst core,core_fast,$(HEADERS))
  8. TESTS = test/wots \
  9. test/xmss_determinism \
  10. test/xmss \
  11. test/xmssmt \
  12. test/xmss_core_fast \
  13. test/xmssmt_core_fast \
  14. # These currently do not work, as xmss_core_fast does not match the xmss_core.h API
  15. # test/xmss_fast \
  16. # test/xmssmt_fast \
  17. UI = ui/xmss_keypair \
  18. ui/xmss_sign \
  19. ui/xmss_open \
  20. ui/xmssmt_keypair \
  21. ui/xmssmt_sign \
  22. ui/xmssmt_open \
  23. # These currently do not work, as xmss_core_fast does not match the xmss_core.h API
  24. # ui/xmss_keypair_fast \
  25. # ui/xmss_sign_fast \
  26. # ui/xmss_open_fast \
  27. # ui/xmssmt_keypair_fast \
  28. # ui/xmssmt_sign_fast \
  29. # ui/xmssmt_open_fast \
  30. all: tests ui
  31. tests: $(TESTS)
  32. ui: $(UI)
  33. test: $(TESTS:=.exec)
  34. .PHONY: clean test
  35. test/%.exec: test/%
  36. @$<
  37. test/xmss_fast: test/xmss.c $(SOURCES_FAST) $(OBJS) $(HEADERS_FAST)
  38. $(CC) $(CFLAGS) -o $@ $(SOURCES_FAST) $< $(LDLIBS)
  39. test/xmss: test/xmss.c $(SOURCES) $(OBJS) $(HEADERS)
  40. $(CC) $(CFLAGS) -o $@ $(SOURCES) $< $(LDLIBS)
  41. test/xmssmt_fast: test/xmss.c $(SOURCES_FAST) $(OBJS) $(HEADERS_FAST)
  42. $(CC) -DXMSSMT $(CFLAGS) -o $@ $(SOURCES_FAST) $< $(LDLIBS)
  43. test/xmssmt: test/xmss.c $(SOURCES) $(OBJS) $(HEADERS)
  44. $(CC) -DXMSSMT $(CFLAGS) -o $@ $(SOURCES) $< $(LDLIBS)
  45. test/xmss_core_fast: test/xmss_core_fast.c $(SOURCES_FAST) $(OBJS) $(HEADERS_FAST)
  46. $(CC) $(CFLAGS) -o $@ $(SOURCES_FAST) $< $(LDLIBS)
  47. test/xmssmt_core_fast: test/xmss_core_fast.c $(SOURCES_FAST) $(OBJS) $(HEADERS_FAST)
  48. $(CC) $(CFLAGS) -o $@ $(SOURCES_FAST) $< $(LDLIBS)
  49. test/%: test/%.c $(SOURCES) $(OBJS) $(HEADERS)
  50. $(CC) $(CFLAGS) -o $@ $(SOURCES) $< $(LDLIBS)
  51. ui/xmss_%_fast: ui/%.c $(SOURCES_FAST) $(OBJS) $(HEADERS_FAST)
  52. $(CC) $(CFLAGS) -o $@ $(SOURCES_FAST) $< $(LDLIBS)
  53. ui/xmssmt_%_fast: ui/%.c $(SOURCES_FAST) $(OBJS) $(HEADERS_FAST)
  54. $(CC) -DXMSSMT $(CFLAGS) -o $@ $(SOURCES_FAST) $< $(LDLIBS)
  55. ui/xmss_%: ui/%.c $(SOURCES) $(OBJS) $(HEADERS)
  56. $(CC) $(CFLAGS) -o $@ $(SOURCES) $< $(LDLIBS)
  57. ui/xmssmt_%: ui/%.c $(SOURCES) $(OBJS) $(HEADERS)
  58. $(CC) -DXMSSMT $(CFLAGS) -o $@ $(SOURCES) $< $(LDLIBS)
  59. clean:
  60. -$(RM) $(TESTS)
  61. -$(RM) $(UI)