Makefile.am 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. ## Process this file with automake to produce Makefile.in
  2. if BUILD_DSELECT
  3. MAYBE_DSELECT = dselect
  4. endif
  5. SUBDIRS = \
  6. lib \
  7. dpkg-deb \
  8. dpkg-split \
  9. src \
  10. utils \
  11. $(MAYBE_DSELECT) \
  12. scripts \
  13. po \
  14. man
  15. ACLOCAL_AMFLAGS = -I m4
  16. dist_pkgdata_DATA = \
  17. cputable \
  18. ostable \
  19. abitable \
  20. triplettable
  21. EXTRA_DIST = \
  22. .mailmap \
  23. ChangeLog.old \
  24. README.translators \
  25. get-version \
  26. run-script \
  27. doc/README.api \
  28. doc/README.feature-removal-schedule \
  29. doc/coding-style.txt \
  30. doc/frontend.txt \
  31. doc/lcov-epilog \
  32. doc/lcov-prolog \
  33. doc/triggers.txt \
  34. debian/changelog \
  35. debian/compat \
  36. debian/control \
  37. debian/copyright \
  38. debian/dpkg-dev.docs \
  39. debian/dpkg-dev.install \
  40. debian/dpkg-dev.manpages \
  41. debian/dpkg-dev.preinst \
  42. debian/dpkg-dev.lintian-overrides \
  43. debian/dpkg.cfg \
  44. debian/dpkg.cron.daily \
  45. debian/dpkg.docs \
  46. debian/dpkg.install \
  47. debian/dpkg.manpages \
  48. debian/dpkg.postinst \
  49. debian/dpkg.postrm \
  50. debian/dpkg.preinst \
  51. debian/dpkg.prerm \
  52. debian/dpkg.logrotate \
  53. debian/dpkg.lintian-overrides \
  54. debian/dselect.cfg \
  55. debian/dselect.docs \
  56. debian/dselect.install \
  57. debian/dselect.manpages \
  58. debian/dselect.preinst \
  59. debian/dselect.lintian-overrides \
  60. debian/libdpkg-dev.docs \
  61. debian/libdpkg-dev.install \
  62. debian/libdpkg-dev.lintian-overrides \
  63. debian/libdpkg-perl.docs \
  64. debian/libdpkg-perl.install \
  65. debian/libdpkg-perl.lintian-overrides \
  66. debian/source/lintian-overrides \
  67. debian/source/format \
  68. debian/source/options \
  69. debian/usertags \
  70. debian/rules \
  71. debian/shlibs.default \
  72. debian/shlibs.override \
  73. $(test_cases) \
  74. $(test_data) \
  75. $(nil)
  76. .PHONY: doc
  77. doc: doc/Doxyfile
  78. $(DOXYGEN) doc/Doxyfile
  79. doc-clean:
  80. rm -rf doc/html/
  81. # Code coverage support
  82. .PHONY: coverage coverage-clean
  83. if COVERAGE_ENABLED
  84. LCOV_OPTS = -q --checksum
  85. LCOV_CAPTURE_OPTS = $(LCOV_OPTS) --no-recursion \
  86. -d $(top_builddir)/lib/dpkg \
  87. -d $(top_builddir)/src \
  88. -d $(top_builddir)/utils
  89. coverage: all
  90. $(RM) -f *.lcov
  91. find -name '*.gcda' -o -name '*.gcov' | xargs $(RM) -f
  92. $(LCOV) $(LCOV_CAPTURE_OPTS) -c -o dpkg_base.lcov -i
  93. $(MAKE) -C lib/dpkg check
  94. $(MAKE) -C src check
  95. $(MAKE) -C utils check
  96. $(LCOV) $(LCOV_CAPTURE_OPTS) -c -o dpkg_test.lcov
  97. $(LCOV) $(LCOV_OPTS) -a dpkg_base.lcov -a dpkg_test.lcov \
  98. -o dpkg_merge.lcov
  99. $(LCOV) $(LCOV_OPTS) -r dpkg_merge.lcov '/usr/include/*' -o dpkg.lcov
  100. $(LCOV_GENHTML) -q --legend --title "dpkg C code coverage" \
  101. --html-prolog $(top_srcdir)/doc/lcov-prolog \
  102. --html-epilog $(top_srcdir)/doc/lcov-epilog \
  103. -o doc/coverage dpkg.lcov
  104. $(MAKE) -C scripts $@
  105. coverage-clean:
  106. rm -rf doc/coverage/
  107. find -name '*.gcno' -o -name '*.gcda' -o \
  108. -name '*.gcov' -o -name '*.lcov' | xargs rm -f
  109. else
  110. coverage:
  111. @echo "Need to reconfigure with --enable-coverage"
  112. coverage-clean:
  113. endif
  114. test_cases = \
  115. test/000_pod.t \
  116. test/100_critic.t \
  117. $(nil)
  118. test_data = \
  119. test/100_critic/perlcriticrc \
  120. $(nil)
  121. include $(top_srcdir)/Makecheck.am
  122. .PHONY: update-po
  123. update-po:
  124. $(MAKE) -C po update-po
  125. $(MAKE) -C scripts/po update-po
  126. $(MAKE) -C dselect/po update-po
  127. $(MAKE) -C man update-po
  128. .PHONY: ChangeLog
  129. DISTCLEANFILES = ChangeLog
  130. ChangeLog:
  131. git log -C --stat 1.15.0.. >$@
  132. # If we create the dist tarball from the git repository, make sure
  133. # that we're not forgetting some files...
  134. dist-hook:
  135. echo $(VERSION) >$(distdir)/.dist-version
  136. if [ -e .git ]; then \
  137. for file in `git ls-files | grep -v .gitignore`; do \
  138. if [ ! -e "$(distdir)/$$file" ]; then \
  139. echo "$$file is missing in $(distdir)" >&2 ; \
  140. exit 1 ; \
  141. fi ; \
  142. done ; \
  143. fi
  144. clean-local: doc-clean coverage-clean check-clean