Makefile.am 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. ## Process this file with automake to produce Makefile.in
  2. # Copyright (C) 2000-2012 Free Software Foundation, Inc.
  3. # Copyright (C) 2020, 2021 Maxime Devos
  4. #
  5. # Author (GnuTLS): Nikos Mavrogiannopoulos
  6. # Author (scheme-GNUnet): Maxime Devos
  7. #
  8. # This file was part of scheme-GNUnet.
  9. #
  10. # scheme-GNUnet is free software; you can redistribute it and/or modify it
  11. # under the terms of the GNU General Public License as published by
  12. # the Free Software Foundation; either version 3 of the License, or (at
  13. # your option) any later version.
  14. #
  15. # scheme-GNUnet is distributed in the hope that it will be useful, but
  16. # WITHOUT ANY WARRANTY; without even the implied warranty of
  17. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  18. # GNU General Public License for more details.
  19. #
  20. # You should have received a copy of the GNU General Public License
  21. # along with scheme-GNUnet. If not, see <http://www.gnu.org/licenses/>.
  22. # This file is partially based upon guile/Makefile.am in GnuTLS.
  23. # Not all scheme-GNUnet code is licensed as GPL, some is licensed as AGPL.
  24. ACLOCAL_AMFLAGS = -I m4
  25. AM_CPPFLAGS = -I$(top_srcdir)/include
  26. SUFFIXES = .scm .go
  27. # Scheme code that works
  28. modules = \
  29. gnu/gnunet/scripts/download-store.scm \
  30. gnu/gnunet/scripts/publish-store.scm \
  31. gnu/gnunet/scripts/guix-stuff.scm \
  32. \
  33. gnu/gnunet/message/protocols.scm \
  34. \
  35. gnu/gnunet/concurrency/update.scm \
  36. gnu/gnunet/concurrency/repeated-condition.scm \
  37. \
  38. gnu/gnunet/mq/envelope.scm \
  39. gnu/gnunet/mq/handler.scm \
  40. gnu/gnunet/mq/prio-prefs.scm \
  41. gnu/gnunet/mq/prio-prefs2.scm \
  42. gnu/gnunet/mq.scm \
  43. \
  44. gnu/gnunet/mq-impl/stream.scm \
  45. \
  46. gnu/gnunet/utils/bv-slice.scm \
  47. gnu/gnunet/utils/hat-let.scm \
  48. gnu/gnunet/utils/netstruct.scm \
  49. gnu/gnunet/utils/platform-enum.scm \
  50. gnu/gnunet/utils/tokeniser.scm \
  51. \
  52. gnu/gnunet/config/parser.scm \
  53. gnu/gnunet/config/value-parser.scm \
  54. gnu/gnunet/config/expand.scm \
  55. gnu/gnunet/config/db.scm \
  56. \
  57. gnu/gnunet/util/cmsg.scm \
  58. gnu/gnunet/icmp/struct.scm \
  59. \
  60. gnu/gnunet/util/struct.scm \
  61. gnu/gnunet/crypto/struct.scm \
  62. gnu/gnunet/hashcode/struct.scm \
  63. gnu/gnunet/nse/struct.scm \
  64. \
  65. gnu/gnunet/netstruct/procedural.scm \
  66. gnu/gnunet/netstruct/syntactic.scm
  67. dist_guilesite_DATA = $(modules)
  68. # Scheme code compilation
  69. if HAVE_GUILD
  70. nodist_guilesiteccache_DATA = $(modules:%.scm=%.go)
  71. # Do not unset 'GUILE_LOAD_COMPILED_PATH', as guile-pfds as installed
  72. # in Guix does not have .scm files (but it does in Guile).
  73. # XXX: Use the C locale for when Guile lacks
  74. # <https://git.sv.gnu.org/cgit/guile.git/commit/?h=stable-2.0&id=e2c6bf3866d1186c60bacfbd4fe5037087ee5e3f>.
  75. %.go: %.scm
  76. $(AM_V_GUILEC)$(MKDIR_P) "`dirname "$@"`" ; \
  77. $(AM_V_P) && out=1 || out=- ; \
  78. LC_ALL=C \
  79. builddir="$(top_builddir)" \
  80. GUILE_AUTO_COMPILE=0 \
  81. $(GUILD) compile --target="$(host)" \
  82. -L "$(top_srcdir)" \
  83. -Wformat -Wunbound-variable -Warity-mismatch \
  84. -o "$@" "$<" >&$$out
  85. endif
  86. TEST_EXTENSIONS = .scm
  87. TESTS =
  88. # Scheme tests
  89. # FIXME ./pre-inst-env & ./test-env
  90. SCM_LOG_DRIVER = \
  91. $(GUILE) -L $(top_srcdir) -C $(top_builddir) \
  92. -e main $(top_srcdir)/build-aux/test-driver.scm
  93. SCM_TESTS = \
  94. tests/envelope.scm \
  95. tests/message-handler.scm \
  96. tests/mq.scm \
  97. tests/mq-stream.scm \
  98. tests/update.scm \
  99. tests/repeated-condition.scm \
  100. tests/bv-slice.scm \
  101. tests/cmsg.scm \
  102. tests/config-parser.scm \
  103. tests/config-value-parser.scm \
  104. tests/config-expander.scm \
  105. tests/config-db.scm \
  106. tests/netstruct.scm \
  107. tests/tokeniser.scm
  108. SCM_TESTS_ENVIRONMENT = \
  109. GUILE_AUTO_COMPILE=0 \
  110. GUILE_WARN_DEPRECATED=detailed
  111. TESTS += $(SCM_TESTS)