makefile 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. VERSION=0.13.99
  2. DIRS=jay nant mcs class nunit nunit20 monoresgen ilasm tools
  3. INSTALL= /usr/bin/install
  4. all:
  5. if test x$(OS) = xWindows_NT; then make linux; else make -f makefile.gnu; fi
  6. install:
  7. if test x$(OS) = xWindows_NT; then make windowsinstall; else make -f makefile.gnu install; fi
  8. windows:
  9. for i in $(DIRS); do \
  10. (cd $$i; make linux) || exit 1; \
  11. done
  12. linux:
  13. for i in $(DIRS); do \
  14. (cd $$i; make linux) || exit 1; \
  15. done
  16. test:
  17. if test x$(OS) = xWindows_NT; then make testwindows; else make -f makefile.gnu test; fi
  18. testwindows:
  19. (cd nunit; make)
  20. (cd nunit20; make)
  21. (cd class; make test)
  22. clean:
  23. if test x$(OS) = xWindows_NT; then make cleanwindows; else make cleanlinux; fi
  24. cleanwindows:
  25. for i in $(DIRS); do \
  26. (cd $$i; make clean) \
  27. done
  28. cleanlinux:
  29. for i in $(DIRS); do \
  30. (cd $$i; make -f makefile.gnu clean) \
  31. done
  32. dist:
  33. (c=`pwd`; d=`basename $$c`; cd ..; cp -a $$d mcs-$(VERSION); cd mcs-$(VERSION); make clean; cd ..; \
  34. tar czvf $$d/mcs-$(VERSION).tar.gz --exclude=CVS --exclude='.#*' --exclude=core --exclude='*~' --exclude='*.exe' mcs-$(VERSION); \
  35. rm -rf mcs-$(VERSION))
  36. windowsinstall:
  37. if test x$$prefix = x; then \
  38. echo Usage is: make install prefix=X:/cygwin/home/MyHome/mono/install; exit 1; \
  39. fi
  40. mkdir -p $(prefix)/bin/
  41. for iexe in $(MONO_WIN_INSTALL_BIN) ; do \
  42. echo Installing exe $$iexe; \
  43. ($(INSTALL) -m 755 $$iexe $(prefix)/bin/) || exit 1; \
  44. sed -e 's^\@bindir\@^$(prefix)^g' -e "s^\\@thewindowexe\\@^`basename \"$$iexe\"`^g" < ./winexe.in > ./winexe.tmp; \
  45. mv ./winexe.tmp ./$$iexe.sh; \
  46. ($(INSTALL) -m 755 $$iexe.sh $(prefix)/bin/) || exit 1; \
  47. done
  48. mkdir -p $(prefix)/lib/
  49. for idll in $(MONO_WIN_INSTALL_LIB) ; do \
  50. echo Installing dll $$idll; \
  51. ($(INSTALL) -m 755 $$idll $(prefix)/lib/) || exit 1; \
  52. done
  53. MONO_WIN_INSTALL_LIB= \
  54. class/lib/I18N.CJK.dll \
  55. class/lib/I18N.MidEast.dll \
  56. class/lib/I18N.Other.dll \
  57. class/lib/I18N.Rare.dll \
  58. class/lib/I18N.West.dll \
  59. class/lib/I18N.dll \
  60. class/lib/Microsoft.VisualBasic.dll \
  61. class/lib/Mono.Data.MySql.dll \
  62. class/lib/Mono.Data.PostgreSqlClient.dll \
  63. class/lib/Mono.Data.SqliteClient.dll \
  64. class/lib/Mono.Data.SybaseClient.dll \
  65. class/lib/Mono.Data.Tds.dll \
  66. class/lib/Mono.Data.TdsClient.dll \
  67. class/lib/Mono.PEToolkit.dll \
  68. class/lib/System.Configuration.Install.dll \
  69. class/lib/System.Data.dll \
  70. class/lib/System.Drawing.dll \
  71. class/lib/System.EnterpriseServices.dll \
  72. class/lib/System.Runtime.Remoting.dll \
  73. class/lib/System.Runtime.Serialization.Formatters.Soap.dll \
  74. class/lib/System.Web.Services.dll \
  75. class/lib/System.Web.dll \
  76. class/lib/System.Xml.dll \
  77. class/lib/System.dll \
  78. class/lib/corlib.dll \
  79. class/lib/corlib_cmp.dll \
  80. nunit/NUnitBase.dll \
  81. nunit/NUnitCore.dll \
  82. nunit/NUnitCore_mono.dll
  83. MONO_WIN_INSTALL_BIN= \
  84. mcs/mcs.exe \
  85. nant/NAnt.exe \
  86. nunit/NUnitConsole.exe \
  87. nunit/NUnitConsole_mono.exe \
  88. ilasm/ilasm.exe \
  89. monoresgen/monoresgen.exe \
  90. tools/EnumCheck.exe \
  91. tools/IFaceDisco.exe \
  92. tools/verifier.exe \
  93. tools/GenerateDelegate.exe \
  94. tools/monostyle.exe \
  95. tools/SqlSharp/sqlsharp.exe \
  96. tools/type-reflector/type-reflector.exe \
  97. tools/corcompare/CorCompare.exe