Makefile.am 8.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294
  1. ## Process this file with automake to produce Makefile.in
  2. SUBDIRS = mk po
  3. bin_SCRIPTS = \
  4. dpkg-architecture \
  5. dpkg-buildflags \
  6. dpkg-buildpackage \
  7. dpkg-checkbuilddeps \
  8. dpkg-distaddfile \
  9. dpkg-genchanges \
  10. dpkg-gencontrol \
  11. dpkg-gensymbols \
  12. dpkg-maintscript-helper \
  13. dpkg-mergechangelogs \
  14. dpkg-name \
  15. dpkg-parsechangelog \
  16. dpkg-scanpackages \
  17. dpkg-scansources \
  18. dpkg-shlibdeps \
  19. dpkg-source \
  20. dpkg-vendor
  21. changelogdir = $(pkglibdir)/parsechangelog
  22. changelog_SCRIPTS = \
  23. changelog/debian
  24. EXTRA_DIST = \
  25. dpkg-architecture.pl \
  26. dpkg-buildflags.pl \
  27. dpkg-buildpackage.pl \
  28. dpkg-checkbuilddeps.pl \
  29. dpkg-distaddfile.pl \
  30. dpkg-genchanges.pl \
  31. dpkg-gencontrol.pl \
  32. dpkg-gensymbols.pl \
  33. dpkg-maintscript-helper.sh \
  34. dpkg-mergechangelogs.pl \
  35. dpkg-name.pl \
  36. dpkg-parsechangelog.pl \
  37. dpkg-scanpackages.pl \
  38. dpkg-scansources.pl \
  39. dpkg-shlibdeps.pl \
  40. dpkg-source.pl \
  41. dpkg-vendor.pl \
  42. changelog/debian.pl \
  43. $(test_cases) \
  44. $(test_data)
  45. CLEANFILES = \
  46. $(test_data_objects) \
  47. $(bin_SCRIPTS) $(changelog_SCRIPTS)
  48. perllibdir = $(PERL_LIBDIR)
  49. nobase_dist_perllib_DATA = \
  50. Dpkg/Arch.pm \
  51. Dpkg/BuildEnv.pm \
  52. Dpkg/BuildFlags.pm \
  53. Dpkg/BuildOptions.pm \
  54. Dpkg/Changelog.pm \
  55. Dpkg/Changelog/Debian.pm \
  56. Dpkg/Changelog/Entry.pm \
  57. Dpkg/Changelog/Entry/Debian.pm \
  58. Dpkg/Changelog/Parse.pm \
  59. Dpkg/Checksums.pm \
  60. Dpkg/Compression.pm \
  61. Dpkg/Compression/FileHandle.pm \
  62. Dpkg/Compression/Process.pm \
  63. Dpkg/Conf.pm \
  64. Dpkg/Control.pm \
  65. Dpkg/Control/Changelog.pm \
  66. Dpkg/Control/FieldsCore.pm \
  67. Dpkg/Control/Fields.pm \
  68. Dpkg/Control/Info.pm \
  69. Dpkg/Control/HashCore.pm \
  70. Dpkg/Control/Hash.pm \
  71. Dpkg/Control/Types.pm \
  72. Dpkg/Deps.pm \
  73. Dpkg/ErrorHandling.pm \
  74. Dpkg/Exit.pm \
  75. Dpkg/File.pm \
  76. Dpkg/Gettext.pm \
  77. Dpkg/Index.pm \
  78. Dpkg/Interface/Storable.pm \
  79. Dpkg/IPC.pm \
  80. Dpkg/Package.pm \
  81. Dpkg/Path.pm \
  82. Dpkg/Shlibs.pm \
  83. Dpkg/Shlibs/Objdump.pm \
  84. Dpkg/Shlibs/Symbol.pm \
  85. Dpkg/Shlibs/SymbolFile.pm \
  86. Dpkg/Shlibs/Cppfilt.pm \
  87. Dpkg/Source/Archive.pm \
  88. Dpkg/Source/Functions.pm \
  89. Dpkg/Source/Package.pm \
  90. Dpkg/Source/Package/V1.pm \
  91. Dpkg/Source/Package/V2.pm \
  92. Dpkg/Source/Package/V3/Bzr.pm \
  93. Dpkg/Source/Package/V3/Custom.pm \
  94. Dpkg/Source/Package/V3/Native.pm \
  95. Dpkg/Source/Package/V3/Git.pm \
  96. Dpkg/Source/Package/V3/Quilt.pm \
  97. Dpkg/Source/Patch.pm \
  98. Dpkg/Source/Quilt.pm \
  99. Dpkg/Substvars.pm \
  100. Dpkg/Util.pm \
  101. Dpkg/Vars.pm \
  102. Dpkg/Vendor.pm \
  103. Dpkg/Vendor/Debian.pm \
  104. Dpkg/Vendor/Default.pm \
  105. Dpkg/Vendor/Ubuntu.pm \
  106. Dpkg/Version.pm \
  107. Dpkg.pm
  108. # Keep it even if empty to have man3dir correctly set
  109. man3_MANS =
  110. do_perl_subst = $(AM_V_GEN) \
  111. sed -e "s:^\#![[:space:]]*/usr/bin/perl:\#!$(PERL):" \
  112. -e "s:\$$CONFDIR[[:space:]]*=[[:space:]]*['\"][^'\"]*['\"]:\$$CONFDIR='$(pkgconfdir)':" \
  113. -e "s:\$$ADMINDIR[[:space:]]*=[[:space:]]*['\"][^'\"]*['\"]:\$$ADMINDIR='$(admindir)':" \
  114. -e "s:\$$LIBDIR[[:space:]]*=[[:space:]]*['\"][^'\"]*['\"]:\$$LIBDIR='$(pkglibdir)':" \
  115. -e "s:\$$DATADIR[[:space:]]*=[[:space:]]*['\"][^'\"]*['\"]:\$$DATADIR='$(pkgdatadir)':" \
  116. -e "s:\$$PROGVERSION[[:space:]]*=[[:space:]]*['\"][^'\"]*[\"']:\$$PROGVERSION='$(PACKAGE_VERSION)':"
  117. do_shell_subst = $(AM_V_GEN) \
  118. sed -e "s:^version[[:space:]]*=[[:space:]]*['\"][^'\"]*[\"']:version=\"$(PACKAGE_VERSION)\":"
  119. %: %.pl Makefile
  120. @test -d `dirname $@` || $(MKDIR_P) `dirname $@`
  121. $(do_perl_subst) <$< >$@
  122. $(AM_V_at) chmod +x $@
  123. %: %.sh Makefile
  124. @test -d `dirname $@` || $(MKDIR_P) `dirname $@`
  125. $(do_shell_subst) <$< >$@
  126. $(AM_V_at) chmod +x $@
  127. install-data-local:
  128. if BUILD_POD_DOC
  129. # Install manual pages for perl modules manually as make can't deal
  130. # properly with filenames containing colons
  131. # Remove empty manual pages (perl modules not documented)
  132. $(MKDIR_P) $(DESTDIR)$(man3dir)
  133. for module in $(nobase_dist_perllib_DATA); do \
  134. name=`echo $$module | sed -e 's|/|::|g' -e 's/\.pm$$//'`; \
  135. $(POD2MAN) --utf8 --center=libdpkg-perl --release=$(VERSION) \
  136. --name="$$name" --section=3 $(srcdir)/$$module \
  137. >$(DESTDIR)$(man3dir)/$$name.3; \
  138. test -s $(DESTDIR)$(man3dir)/$$name.3 || \
  139. rm -f $(DESTDIR)$(man3dir)/$$name.3; \
  140. done
  141. endif
  142. # Ideally we'd use 'sed -i', but unfortunately that's not portable.
  143. install-data-hook:
  144. cp -p $(DESTDIR)$(perllibdir)/Dpkg.pm \
  145. $(DESTDIR)$(perllibdir)/Dpkg.pm.tmp
  146. $(do_perl_subst) <$(DESTDIR)$(perllibdir)/Dpkg.pm.tmp \
  147. >$(DESTDIR)$(perllibdir)/Dpkg.pm
  148. rm $(DESTDIR)$(perllibdir)/Dpkg.pm.tmp
  149. uninstall-local:
  150. if BUILD_POD_DOC
  151. for module in $(nobase_dist_perllib_DATA); do \
  152. rm -f $(DESTDIR)$(man3dir)/`echo $$module | sed -e 's|/|::|g' -e 's/\.pm$$/.3/'`; \
  153. done
  154. endif
  155. coverage: check
  156. $(PERL_COVER) -silent \
  157. -ignore_re '^t/.*\.t' \
  158. -outputdir $(top_builddir)/doc/coverage/scripts
  159. coverage-clean:
  160. rm -rf cover_db
  161. TEST_ENV_VARS = \
  162. DPKG_DATADIR=$(srcdir)/.. \
  163. DPKG_ORIGINS_DIR=$(srcdir)/t/origins
  164. TEST_COVERAGE = $(PERL_COVERAGE)
  165. test_tmpdir = t.tmp
  166. test_cases = \
  167. t/100_Dpkg_Version.t \
  168. t/110_Dpkg_Arch.t \
  169. t/150_Dpkg_Package.t \
  170. t/190_Dpkg_Shlibs_Cppfilt.t \
  171. t/200_Dpkg_Shlibs.t \
  172. t/300_Dpkg_BuildOptions.t \
  173. t/400_Dpkg_Deps.t \
  174. t/500_Dpkg_Path.t \
  175. t/550_Dpkg_Util.t \
  176. t/600_Dpkg_Changelog.t \
  177. t/600_Dpkg_Changelog_Ubuntu.t \
  178. t/700_Dpkg_Control.t \
  179. t/750_Dpkg_Substvars.t \
  180. t/800_Dpkg_IPC.t \
  181. t/850_Dpkg_Compression.t \
  182. t/910_merge_changelogs.t
  183. test_data = \
  184. t/200_Dpkg_Shlibs/symbols.fake-1 \
  185. t/200_Dpkg_Shlibs/symbols.fake-2 \
  186. t/200_Dpkg_Shlibs/symbols.fake-3 \
  187. t/200_Dpkg_Shlibs/symbols.include-1 \
  188. t/200_Dpkg_Shlibs/symbols.include-2 \
  189. t/200_Dpkg_Shlibs/symbols.include-3 \
  190. t/200_Dpkg_Shlibs/basictags.symbols \
  191. t/200_Dpkg_Shlibs/basictags.c \
  192. t/200_Dpkg_Shlibs/patterns.symbols \
  193. t/200_Dpkg_Shlibs/patterns.cpp \
  194. t/200_Dpkg_Shlibs/patterns.map \
  195. t/200_Dpkg_Shlibs/ld.so.conf \
  196. t/200_Dpkg_Shlibs/ld.so.conf_2 \
  197. t/200_Dpkg_Shlibs/ld.so.conf.d/normal.conf \
  198. t/200_Dpkg_Shlibs/ld.so.conf.d/inf_recurse.conf \
  199. t/200_Dpkg_Shlibs/ld.so.conf.d/recursive.conf \
  200. t/200_Dpkg_Shlibs/objdump.space \
  201. t/200_Dpkg_Shlibs/objdump.basictags-amd64 \
  202. t/200_Dpkg_Shlibs/objdump.basictags-i386 \
  203. t/200_Dpkg_Shlibs/objdump.patterns \
  204. t/200_Dpkg_Shlibs/objdump.glib-ia64 \
  205. t/200_Dpkg_Shlibs/objdump.libc6-2.3 \
  206. t/200_Dpkg_Shlibs/objdump.libc6-2.6 \
  207. t/200_Dpkg_Shlibs/objdump.dbd-pg \
  208. t/200_Dpkg_Shlibs/objdump.ls \
  209. t/600_Dpkg_Changelog/countme \
  210. t/600_Dpkg_Changelog/fields \
  211. t/600_Dpkg_Changelog/misplaced-tz \
  212. t/600_Dpkg_Changelog/regressions \
  213. t/600_Dpkg_Changelog/shadow \
  214. t/700_Dpkg_Control/control-1 \
  215. t/700_Dpkg_Control/bogus-unsigned.dsc \
  216. t/700_Dpkg_Control/bogus-armor-double.dsc \
  217. t/700_Dpkg_Control/bogus-armor-no-sig.dsc \
  218. t/700_Dpkg_Control/bogus-armor-trail.dsc \
  219. t/700_Dpkg_Control/bogus-armor-inline.dsc \
  220. t/700_Dpkg_Control/bogus-armor-nested.dsc \
  221. t/700_Dpkg_Control/bogus-armor-spaces.dsc \
  222. t/750_Dpkg_Substvars/substvars1 \
  223. t/910_merge_changelogs/ch-old \
  224. t/910_merge_changelogs/ch-a \
  225. t/910_merge_changelogs/ch-b \
  226. t/910_merge_changelogs/ch-badver-a \
  227. t/910_merge_changelogs/ch-badver-b \
  228. t/910_merge_changelogs/ch-badver-merged \
  229. t/910_merge_changelogs/ch-badver-old \
  230. t/910_merge_changelogs/ch-merged \
  231. t/910_merge_changelogs/ch-merged-basic \
  232. t/910_merge_changelogs/ch-merged-pr \
  233. t/910_merge_changelogs/ch-merged-pr-basic \
  234. t/origins/debian \
  235. t/origins/default \
  236. t/origins/ubuntu
  237. test_data_objects = \
  238. t/200_Dpkg_Shlibs/libobjdump.basictags-amd64.so \
  239. t/200_Dpkg_Shlibs/libobjdump.basictags-i386.so \
  240. t/200_Dpkg_Shlibs/libobjdump.patterns.so
  241. $(srcdir)/t/200_Dpkg_Shlibs/libobjdump.basictags-amd64.so: $(srcdir)/t/200_Dpkg_Shlibs/basictags.c
  242. $(CC) $(CFLAGS) -shared -fPIC -Wl,-soname -Wl,libbasictags.so.1 $< \
  243. -DAMD64 -o $@
  244. $(srcdir)/t/200_Dpkg_Shlibs/libobjdump.basictags-i386.so: $(srcdir)/t/200_Dpkg_Shlibs/basictags.c
  245. $(CC) $(CFLAGS) -shared -fPIC -Wl,-soname -Wl,libbasictags.so.1 $< \
  246. -o $@
  247. $(srcdir)/t/200_Dpkg_Shlibs/libobjdump.patterns.so: $(srcdir)/t/200_Dpkg_Shlibs/patterns.cpp $(srcdir)/t/200_Dpkg_Shlibs/patterns.map
  248. $(CXX) $(CXXFLAGS) -shared -fPIC -Wl,-soname -Wl,libpatterns.so.1 \
  249. -Wl,--version-script=$(srcdir)/t/200_Dpkg_Shlibs/patterns.map $< \
  250. -o $@
  251. .PHONY: refresh-test-data
  252. OBJDUMP = objdump -w -f -p -T -R
  253. refresh-test-data: $(test_data_objects)
  254. $(OBJDUMP) $(srcdir)/t/200_Dpkg_Shlibs/libobjdump.basictags-amd64.so \
  255. >$(srcdir)/t/200_Dpkg_Shlibs/objdump.basictags-amd64
  256. $(OBJDUMP) $(srcdir)/t/200_Dpkg_Shlibs/libobjdump.basictags-i386.so \
  257. >$(srcdir)/t/200_Dpkg_Shlibs/objdump.basictags-i386
  258. $(OBJDUMP) $(srcdir)/t/200_Dpkg_Shlibs/libobjdump.patterns.so \
  259. >$(srcdir)/t/200_Dpkg_Shlibs/objdump.patterns
  260. $(OBJDUMP) `which ls` >$(srcdir)/t/200_Dpkg_Shlibs/objdump.ls
  261. include $(top_srcdir)/Makecheck.am
  262. clean-local: check-clean coverage-clean
  263. rm -fr man