Makefile.am 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. ## Process this file with automake to produce Makefile.in.
  2. ##
  3. ## Copyright (C) 1998, 1999, 2000, 2001, 2002, 2006, 2007,
  4. ## 2008, 2009, 2010, 2011, 2012, 2013,
  5. ## 2014, 2015, 2016, 2022, 2023 Free Software Foundation, Inc.
  6. ##
  7. ## This file is part of GUILE.
  8. ##
  9. ## GUILE is free software; you can redistribute it and/or modify it
  10. ## under the terms of the GNU Lesser General Public License as
  11. ## published by the Free Software Foundation; either version 3, or
  12. ## (at your option) any later version.
  13. ##
  14. ## GUILE is distributed in the hope that it will be useful, but
  15. ## WITHOUT ANY WARRANTY; without even the implied warranty of
  16. ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  17. ## GNU Lesser General Public License for more details.
  18. ##
  19. ## You should have received a copy of the GNU Lesser General Public
  20. ## License along with GUILE; see the file COPYING.LESSER. If not,
  21. ## write to the Free Software Foundation, Inc., 51 Franklin Street,
  22. ## Fifth Floor, Boston, MA 02110-1301 USA
  23. # want automake 1.10 or higher so that AM_GNU_GETTEXT can tell automake that
  24. # config.rpath is needed
  25. #
  26. AUTOMAKE_OPTIONS = 1.10
  27. SUBDIRS = \
  28. lib \
  29. meta \
  30. libguile \
  31. module \
  32. stage0 \
  33. stage1 \
  34. stage2 \
  35. guile-readline \
  36. examples \
  37. test-suite \
  38. doc
  39. DIST_SUBDIRS = $(SUBDIRS) prebuilt
  40. libguileincludedir = $(pkgincludedir)/$(GUILE_EFFECTIVE_VERSION)
  41. libguileinclude_HEADERS = libguile.h
  42. schemelibdir = $(pkgdatadir)/$(GUILE_EFFECTIVE_VERSION)
  43. schemelib_DATA = libguile/guile-procedures.txt
  44. # Our own implementation of Gnulib's lock interface.
  45. noinst_HEADERS = lib/glthread/lock.h
  46. # Our lib/glthreads/lock.h header indirectly includes
  47. # libguile/scmconfig.h. Make sure it is built before we recurse into
  48. # lib/.
  49. BUILT_SOURCES = libguile/scmconfig.h
  50. libguile/scmconfig.h:
  51. $(MAKE) -C libguile scmconfig.h
  52. # Build it from here so that all the modules are compiled by the time we
  53. # build it.
  54. libguile/guile-procedures.txt: libguile/guile-procedures.texi
  55. $(AM_V_GEN) \
  56. $(top_builddir)/meta/guile --no-auto-compile \
  57. "$(srcdir)/libguile/texi-fragments-to-docstrings" \
  58. "$(builddir)/libguile/guile-procedures.texi" \
  59. > $@.tmp
  60. @mv $@.tmp $@
  61. EXTRA_DIST = LICENSE HACKING GUILE-VERSION \
  62. am/maintainer-dirs \
  63. am/guilec \
  64. am/ChangeLog-2008 \
  65. m4/ChangeLog-2008 \
  66. m4/gnulib-cache.m4 \
  67. ChangeLog-2008 \
  68. .version \
  69. gnulib-local/lib/localcharset.h.diff \
  70. gnulib-local/lib/localcharset.c.diff \
  71. gnulib-local/m4/clock_time.m4.diff \
  72. gnulib-local/build-aux/git-version-gen.diff \
  73. libguile/texi-fragments-to-docstrings \
  74. gdbinit \
  75. guix.scm \
  76. .guix/modules/guile-package.scm \
  77. .guix/manifest.scm
  78. ACLOCAL_AMFLAGS = -I m4
  79. CLEANFILES = libguile/guile-procedures.txt
  80. DISTCLEANFILES = check-guile.log
  81. DISTCHECK_CONFIGURE_FLAGS = --enable-error-on-warning --enable-mini-gmp
  82. dist-hook: gen-ChangeLog gen-tarball-version \
  83. assert-no-store-file-names ensure-guile-readline
  84. # 'guile-readline/Makefile.am' conditionally includes various files to
  85. # the distribution. Bail out when 'HAVE_READLINE' is false.
  86. if HAVE_READLINE
  87. ensure-guile-readline:
  88. @true
  89. else !HAVE_READLINE
  90. ensure-guile-readline:
  91. @echo "error: Readline support is required for 'make dist'." >&2
  92. @exit 1
  93. endif !HAVE_READLINE
  94. .PHONY: ensure-guile-readline
  95. clean-local:
  96. rm -rf cache/
  97. gen_start_rev = 61db429e251bfd2f75cb4632972e0238056eb24b
  98. .PHONY: gen-ChangeLog
  99. gen-ChangeLog:
  100. if test -d .git; then \
  101. $(top_srcdir)/build-aux/gitlog-to-changelog \
  102. $(gen_start_rev)..HEAD > $(distdir)/cl-t; \
  103. rm -f $(distdir)/ChangeLog; \
  104. mv $(distdir)/cl-t $(distdir)/ChangeLog; \
  105. fi
  106. # Make sure we're not shipping a file that embeds a /gnu/store file
  107. # name, for maintainers who use Guix.
  108. .PHONY: assert-no-store-file-names
  109. assert-no-store-file-names:
  110. if grep --exclude=ChangeLog -rE "/gnu/store/[a-z0-9]{32}-" $(distdir) ; \
  111. then \
  112. echo "error: store file names embedded in the distribution" >&2 ; \
  113. exit 1 ; \
  114. fi
  115. BUILT_SOURCES += $(top_srcdir)/.version
  116. $(top_srcdir)/.version: Makefile
  117. echo $(VERSION) > $@-t && mv $@-t $@
  118. gen-tarball-version:
  119. echo $(VERSION) > $(distdir)/.tarball-version
  120. include benchmark-suite/local.mk
  121. include gc-benchmarks/local.mk
  122. # Makefile.am ends here