Makefile.am 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244
  1. #
  2. # Scripts that we install
  3. #
  4. # Starting with Mono 2.0, the majority of the tools default to the
  5. # 2.0 profile. Commands that support the 1.0 toolchain and must
  6. # run under 1.0 have the number 1 appended to their command names
  7. # (for example mcs1 is the C# 1.0 compiler) and are listed in the
  8. # scripts_1_0 compat variable.
  9. #
  10. # To preserve compatibility with old Makefiles and tools we keep the
  11. # command names that had the suffix 2 (like wsdl2)
  12. #
  13. if USE_BATCH_FILES
  14. SCRIPT_IN=script.bat.in
  15. SMCS_IN=smcs.bat.in
  16. FILTER=sed -e 's,\.bat\.exe,\.exe,g' -e 's,/,\\,g'
  17. SCRIPT_SUFFIX=.bat
  18. else
  19. SCRIPT_IN=script.in
  20. SMCS_IN=smcs.in
  21. FILTER=cat
  22. SCRIPT_SUFFIX=
  23. endif
  24. COMPAT_1_0_SUFFIX=1$(SCRIPT_SUFFIX)
  25. COMPAT_2_0_SUFFIX=2$(SCRIPT_SUFFIX)
  26. bin_SCRIPTS = \
  27. $(scripts_1_0) \
  28. $(scripts_1_0_umask) \
  29. $(scripts_1_0_compat) \
  30. $(scripts_defaults) \
  31. $(scripts_2_0) \
  32. $(scripts_2_1) \
  33. $(scripts_service) \
  34. $(scripts_nunit) \
  35. $(scripts_rpmhelpers) \
  36. $(MDOC_SUBCOMMANDS) \
  37. $(MDOC_COMPAT) \
  38. mod \
  39. mono-test-install
  40. scripts_1_0_compat = \
  41. al1$(SCRIPT_SUFFIX) \
  42. genxs1$(SCRIPT_SUFFIX) \
  43. ilasm1$(SCRIPT_SUFFIX) \
  44. mcs1$(SCRIPT_SUFFIX) \
  45. mkbundle1$(SCRIPT_SUFFIX) \
  46. gacutil1$(SCRIPT_SUFFIX) \
  47. monop1$(SCRIPT_SUFFIX) \
  48. resgen1$(SCRIPT_SUFFIX) \
  49. wsdl1$(SCRIPT_SUFFIX)
  50. scripts_1_0 = \
  51. caspol$(SCRIPT_SUFFIX) \
  52. cert2spc$(SCRIPT_SUFFIX) \
  53. certmgr$(SCRIPT_SUFFIX) \
  54. chktrust$(SCRIPT_SUFFIX) \
  55. cilc$(SCRIPT_SUFFIX) \
  56. disco$(SCRIPT_SUFFIX) \
  57. dtd2xsd$(SCRIPT_SUFFIX) \
  58. dtd2rng$(SCRIPT_SUFFIX) \
  59. installvst$(SCRIPT_SUFFIX) \
  60. genxs$(SCRIPT_SUFFIX) \
  61. macpack$(SCRIPT_SUFFIX) \
  62. mcs$(SCRIPT_SUFFIX) \
  63. mjs$(SCRIPT_SUFFIX) \
  64. monolinker$(SCRIPT_SUFFIX) \
  65. mono-cil-strip$(SCRIPT_SUFFIX) \
  66. mono-xmltool$(SCRIPT_SUFFIX) \
  67. mozroots$(SCRIPT_SUFFIX) \
  68. permview$(SCRIPT_SUFFIX) \
  69. prj2make$(SCRIPT_SUFFIX) \
  70. secutil$(SCRIPT_SUFFIX) \
  71. setreg$(SCRIPT_SUFFIX) \
  72. signcode$(SCRIPT_SUFFIX) \
  73. soapsuds$(SCRIPT_SUFFIX) \
  74. xsd$(SCRIPT_SUFFIX)
  75. scripts_1_0_umask = \
  76. makecert$(SCRIPT_SUFFIX) \
  77. sn$(SCRIPT_SUFFIX)
  78. scripts_2_0 = \
  79. al2$(SCRIPT_SUFFIX) \
  80. csharp$(SCRIPT_SUFFIX) \
  81. gacutil2$(SCRIPT_SUFFIX) \
  82. gmcs$(SCRIPT_SUFFIX) \
  83. httpcfg$(SCRIPT_SUFFIX) \
  84. ilasm2$(SCRIPT_SUFFIX) \
  85. mconfig$(SCRIPT_SUFFIX) \
  86. mkbundle2$(SCRIPT_SUFFIX) \
  87. mdoc$(SCRIPT_SUFFIX) \
  88. mono-api-info$(SCRIPT_SUFFIX) \
  89. mono-shlib-cop$(SCRIPT_SUFFIX) \
  90. monop2$(SCRIPT_SUFFIX) \
  91. resgen2$(SCRIPT_SUFFIX) \
  92. wsdl2$(SCRIPT_SUFFIX) \
  93. xsd2$(SCRIPT_SUFFIX) \
  94. sgen$(SCRIPT_SUFFIX) \
  95. sqlsharp$(SCRIPT_SUFFIX) \
  96. xbuild$(SCRIPT_SUFFIX)
  97. MDOC_SUBCOMMANDS = \
  98. mdoc-assemble \
  99. mdoc-export-html \
  100. mdoc-export-msxdoc \
  101. mdoc-update \
  102. mdoc-validate
  103. MDOC_COMPAT = \
  104. mdassembler \
  105. mdvalidater \
  106. monodocer \
  107. monodocs2html \
  108. monodocs2slashdoc
  109. #
  110. # these are the new defaults, 2.0 profile-based commands
  111. #
  112. # we can move scripts_1_0 scripts here as we see fit, if we need to
  113. # keep a 1.0 command available, we should additionally put it on
  114. # the scripts_1_0_compat list
  115. #
  116. scripts_defaults = \
  117. al$(SCRIPT_SUFFIX) \
  118. ilasm$(SCRIPT_SUFFIX) \
  119. gacutil$(SCRIPT_SUFFIX) \
  120. mkbundle$(SCRIPT_SUFFIX) \
  121. monop$(SCRIPT_SUFFIX) \
  122. resgen$(SCRIPT_SUFFIX) \
  123. wsdl$(SCRIPT_SUFFIX)
  124. scripts_2_1 = smcs$(SCRIPT_SUFFIX)
  125. scripts_service = mono-service mono-service2
  126. scripts_nunit = nunit-console$(SCRIPT_SUFFIX) nunit-console2$(SCRIPT_SUFFIX)
  127. scripts_rpmhelpers = mono-find-provides mono-find-requires
  128. CLEANFILES = $(scripts_1_0) $(scripts_1_0_umask) $(scripts_2_0) $(scripts_2_1) $(scripts_defaults) $(scripts_1_0_compat) mono-service mono-service2 nunit-console nunit-console2 mono-find-provides mono-find-requires mod $(MDOC_SUBCOMMANDS)
  129. DISTCLEANFILES = $(pkgconfig_DATA) $(scripts_rpmhelpers)
  130. EXTRA_DIST = \
  131. script.in \
  132. script.bat.in \
  133. script_umask.in \
  134. script_umask.bat.in \
  135. smcs.in \
  136. smcs.bat.in \
  137. mod.in \
  138. mono-service.in \
  139. mono-find-provides.in \
  140. mono-find-requires.in \
  141. mono-test-install \
  142. $(MDOC_COMPAT) \
  143. patch-quiet.sh
  144. if USE_JIT
  145. mono_interp = mono
  146. else
  147. mono_interp = mint
  148. endif
  149. if PLATFORM_WIN32
  150. if CROSS_COMPILING
  151. plat_bindir = $(bindir)
  152. mono_instdir = $(prefix)/lib/mono
  153. else
  154. plat_bindir = $(shell cygpath -m $(libdir))
  155. mono_instdir = $(shell cygpath -m $(libdir))/mono
  156. endif
  157. else
  158. plat_bindir = $(bindir)
  159. mono_instdir = $(prefix)/lib/mono
  160. endif
  161. REWRITE_COMMON = sed \
  162. -e 's,@''bindir@,$(bindir),g' \
  163. -e 's,@''plat_bindir@,$(plat_bindir),g' \
  164. -e 's,@''mono_instdir@,$(mono_instdir),g' \
  165. -e 's,@''gtkdir@,$(gtkdir),g'
  166. REWRITE = $(REWRITE_COMMON) -e 's,@''mono_interp@,$(mono_interp),g'
  167. REWRITE_DEBUG = $(REWRITE_COMMON) -e 's,@''mono_interp@,$(mono_interp) --debug,g'
  168. REWRITE1 = $(REWRITE) -e 's,@''framework_version@,1.0,g'
  169. REWRITE2 = $(REWRITE) -e 's,@''framework_version@,2.0,g'
  170. REWRITE2_1 = $(REWRITE) -e 's,@''framework_version@,2.1,g'
  171. REWRITE1_DEBUG = $(REWRITE_DEBUG) -e 's,@''framework_version@,1.0,g'
  172. REWRITE2_DEBUG = $(REWRITE_DEBUG) -e 's,@''framework_version@,2.0,g'
  173. mono-service: mono-service.in Makefile
  174. $(REWRITE1) -e 's,@''exe_name@,$@,g' $(srcdir)/mono-service.in > [email protected]
  175. mv [email protected] $@
  176. mono-service2: mono-service.in Makefile
  177. $(REWRITE2) -e 's,@''exe_name@,$@,g' $(srcdir)/mono-service.in > [email protected]
  178. mv [email protected] $@
  179. nunit-console$(SCRIPT_SUFFIX): $(SCRIPT_IN) Makefile
  180. $(REWRITE1_DEBUG) -e 's,@''exe_name@,nunit-console,g' $(srcdir)/$(SCRIPT_IN) | $(FILTER) > [email protected]
  181. mv [email protected] $@
  182. nunit-console2$(SCRIPT_SUFFIX): $(SCRIPT_IN) Makefile
  183. $(REWRITE2_DEBUG) -e 's,@''exe_name@,nunit-console,g' $(srcdir)/$(SCRIPT_IN) | $(FILTER) > [email protected]
  184. mv [email protected] $@
  185. smcs$(SCRIPT_SUFFIX): $(SMCS_IN) Makefile
  186. $(REWRITE2_1) -e "s,@""exe_name@,smcs,g" $(srcdir)/$(SMCS_IN) | $(FILTER) > [email protected]
  187. mv [email protected] $@
  188. mod$(SCRIPT_SUFFIX): mod.in Makefile
  189. $(REWRITE1) -e "s,@""exe_name@,mod,g" $(srcdir)/mod.in > [email protected]
  190. mv [email protected] $@
  191. $(scripts_1_0): $(SCRIPT_IN) Makefile
  192. $(REWRITE1) -e 's,@''exe_name@,$@,g' $(srcdir)/$(SCRIPT_IN) | $(FILTER) > [email protected]
  193. mv [email protected] $@
  194. $(scripts_1_0_umask): script_umask.in Makefile
  195. $(REWRITE1) -e 's,@''exe_name@,$@,g' $(srcdir)/script_umask.in > [email protected]
  196. mv [email protected] $@
  197. $(scripts_1_0_compat): $(SCRIPT_IN) Makefile
  198. t=`basename $@ $(COMPAT_1_0_SUFFIX)`; $(REWRITE1) -e "s,@exe_name@,$$t,g" $(srcdir)/$(SCRIPT_IN) | $(FILTER) > [email protected]
  199. mv [email protected] $@
  200. $(scripts_defaults): $(SCRIPT_IN) Makefile
  201. $(REWRITE2) -e "s,@exe_name@,$@,g" $(srcdir)/$(SCRIPT_IN) | $(FILTER) > [email protected]
  202. mv [email protected] $@
  203. $(scripts_2_0): $(SCRIPT_IN) Makefile
  204. n=`echo $@ | sed 's,$(COMPAT_2_0_SUFFIX)$$,,'`; \
  205. $(REWRITE2) -e "s,@""exe_name@,$$n,g" $(srcdir)/$(SCRIPT_IN) | $(FILTER) > [email protected]
  206. mv [email protected] $@
  207. $(MDOC_SUBCOMMANDS): Makefile
  208. for script in $(MDOC_SUBCOMMANDS) ; do \
  209. cmd=`echo $$script | sed 's/mdoc-//'` ; \
  210. echo "#!/bin/sh" > $$script ; \
  211. echo "exec mdoc $$cmd \"\$$@\"" >> $$script; \
  212. done