Flush
[mono.git] / runtime / Makefile.am
index 3a3257403d624ea176d8d1f432070bb97b465177..88be6ea53c856838d3163ef40ff03be1874f3743 100644 (file)
 # being compiled on windows.
 #
 
-assemblies_DATA =      \
-       Accessibility.dll                                       \
-       ByteFX.Data.dll                                         \
-       Commons.Xml.Relaxng.dll                                 \
-       mscorlib.dll                                            \
-       Cscompmgd.dll                                           \
-       I18N.CJK.dll                                            \
-       I18N.dll                                                \
-       I18N.MidEast.dll                                        \
-       I18N.Other.dll                                          \
-       I18N.Rare.dll                                           \
-       I18N.West.dll                                           \
-       ICSharpCode.SharpZipLib.dll                             \
-       Microsoft.VisualBasic.dll                               \
-       Microsoft.VisualC.dll                                   \
-       Microsoft.Vsa.dll                                       \
-       Mono.Cairo.dll                                  \
-       Mono.CSharp.Debugger.dll                                \
-       Mono.Data.SqliteClient.dll                              \
-       Mono.Data.SybaseClient.dll                              \
-       Mono.Data.TdsClient.dll                                 \
-       Mono.Data.Tds.dll                                       \
-       Novell.Directory.Ldap.dll                                       \
-       Mono.GetOptions.dll                                     \
-       Mono.Http.dll                                           \
-       Mono.PEToolkit.dll                                      \
-       Mono.Posix.dll                                          \
-       Mono.Security.dll                                       \
-       Mono.Security.Win32.dll                                 \
-       Npgsql.dll                                              \
-       NUnit.Util.dll                                          \
-       NUnit.Framework.dll                                     \
-       PEAPI.dll                                               \
-       System.Configuration.Install.dll                        \
-       System.Data.dll                                         \
-       System.Data.OracleClient.dll                            \
-       System.dll                                              \
-       System.Design.dll                                       \
-       System.DirectoryServices.dll                            \
-       System.Drawing.Design.dll                               \
-       System.Drawing.dll                                      \
-       System.EnterpriseServices.dll                           \
-       System.Management.dll                                   \
-       System.Messaging.dll                                    \
-       System.Runtime.Remoting.dll                             \
-       System.Runtime.Serialization.Formatters.Soap.dll        \
-       System.Security.dll                                     \
-       System.ServiceProcess.dll                               \
-       System.Web.dll                                          \
-       System.Web.Services.dll                                 \
-       System.Windows.Forms.dll                                \
-       System.Xml.dll
+SUBDIRS = . net_1_1 net_2_0
 
-monobins_DATA = mcs.exe mbas.exe monoresgen.exe secutil.exe ilasm.exe cilc.exe xsd.exe wsdl.exe genxs.exe al.exe disco.exe sqlsharp.exe signcode.exe chktrust.exe soapsuds.exe monop.exe setreg.exe cert2spc.exe certmgr.exe MakeCert.exe
+mcs_topdir=$(top_srcdir)/../mcs
 
-EXTRA_DIST = $(monobins_DATA) $(assemblies_DATA)
+monobins_DATA = \
+       monoresgen.exe                          \
+       secutil.exe                             \
+       ilasm.exe                               \
+       cilc.exe                                \
+       xsd.exe                                 \
+       wsdl.exe                                \
+       genxs.exe                               \
+       al.exe                                  \
+       disco.exe                               \
+       sqlsharp.exe                            \
+       signcode.exe                            \
+       chktrust.exe                            \
+       soapsuds.exe                            \
+       monop.exe                               \
+       mono-find-provides.exe                  \
+       mono-find-requires.exe                  \
+       setreg.exe                              \
+       cert2spc.exe                            \
+       certmgr.exe                             \
+       MakeCert.exe                            \
+       gacutil.exe                             \
+       sn.exe
+
+monoone_DATA = \
+       mcs.exe                                 \
+       mbas.exe
+
+monotwo_DATA = \
+       gmcs.exe
+
+EXTRA_DIST= $(monobins_DATA) $(monoone_DATA) $(monotwo_DATA)
+
+MAINTAINERCLEANFILES = $(EXTRA_DIST)
 
 #
 # Keep in sync with mono/mono/metadata/Makefile.am
 #
-assembliesdir = $(libdir)
+if PLATFORM_WIN32
+monobinsdir = $(libdir)
+monoonedir = $(libdir)
+monotwodir = $(libdir)
+else
 monobinsdir = $(bindir)
+monoonedir = $(libdir)/mono/1.0/
+monotwodir = $(libdir)/mono/2.0/
+endif
 
-$(assemblies_DATA):
-       -cp $(top_srcdir)/../mcs/class/lib/$@ . || cp $(assembliesdir)/$@ . 
+$(monoone_DATA):
+       if test -f $(mcs_topdir)/mcs/mcs.exe; then f=$(mcs_topdir)/mcs/mcs.exe; else f=$(fx11dir)/mcs.exe; fi; \
+       echo "cp -f $$f $(srcdir)"; \
+       cp -f $$f $(srcdir)
+       if test -f $(mcs_topdir)/mbas/mbas.exe; then f=$(mcs_topdir)/mbas/mbas.exe; else f=$(fx11dir)/mbas.exe; fi; \
+       echo "cp -f $$f $(srcdir)"; \
+       cp -f $$f $(srcdir)
 
-$(monobins_DATA):
-       -cp $(top_srcdir)/../mcs/mcs/mcs.exe . || cp $(monobinsdir)/mcs.exe . 
-       -cp $(top_srcdir)/../mcs/mbas/mbas.exe . || cp $(monobinsdir)/mbas.exe .
-       -cp $(top_srcdir)/../mcs/tools/security/secutil.exe . || cp $(monobinsdir)/secutil.exe . 
-       -cp $(top_srcdir)/../mcs/monoresgen/monoresgen.exe . || cp $(monobinsdir)/monoresgen.exe . 
-       -cp $(top_srcdir)/../mcs/ilasm/ilasm.exe . || cp $(monobinsdir)/ilasm.exe .
-       -cp $(top_srcdir)/../mcs/tools/cilc/cilc.exe . || cp $(monobinsdir)/cilc.exe .
-       -cp $(top_srcdir)/../mcs/tools/mono-xsd/xsd.exe . || cp $(monobinsdir)/xsd.exe .
-       -cp $(top_srcdir)/../mcs/tools/wsdl/wsdl.exe . || cp $(monobinsdir)/wsdl.exe .
-       -cp $(top_srcdir)/../mcs/tools/genxs/genxs.exe . || cp $(monobinsdir)/genxs.exe .
-       -cp $(top_srcdir)/../mcs/tools/al/al.exe . || cp $(monobinsdir)/al.exe .
-       -cp $(top_srcdir)/../mcs/tools/disco/disco.exe . || cp $(monobinsdir)/disco.exe .
-       -cp $(top_srcdir)/../mcs/tools/soapsuds/soapsuds.exe . || cp $(monobinsdir)/soapsuds.exe .
-       -cp $(top_srcdir)/../mcs/tools/SqlSharp/sqlsharp.exe . || cp $(monobinsdir)/sqlsharp.exe .
-       -cp $(top_srcdir)/../mcs/tools/security/chktrust.exe . || cp $(monobinsdir)/chktrust.exe .
-       -cp $(top_srcdir)/../mcs/tools/security/signcode.exe . || cp $(monobinsdir)/signcode.exe .
-       -cp $(top_srcdir)/../mcs/tools/security/MakeCert.exe . || cp $(monobinsdir)/MakeCert.exe .
-       -cp $(top_srcdir)/../mcs/tools/security/cert2spc.exe . || cp $(monobinsdir)/cert2spc.exe .
-       -cp $(top_srcdir)/../mcs/tools/security/certmgr.exe . || cp $(monobinsdir)/certmgr.exe .
-       -cp $(top_srcdir)/../mcs/tools/security/setreg.exe . || cp $(monobinsdir)/setreg.exe .
-       -cp $(top_srcdir)/../mcs/tools/monop/monop.exe . || cp $(monobinsdir)/monop.exe .
-       -cp $(top_srcdir)/../mcs/tools/browsercaps-updater/browsercaps-updater.exe . || cp $(monobinsdir)/browsercaps-updater.exe .
+$(monotwo_DATA):
+       if test -f $(mcs_topdir)/gmcs/gmcs.exe; then f=$(mcs_topdir)/gmcs/gmcs.exe; else f=$(fx20dir)/gmcs.exe; fi; \
+       echo "cp -f $$f $(srcdir)"; \
+       cp -f $$f $(srcdir)
 
-dist-hook:
-       for i in $(monobins_DATA) $(assemblies_DATA); do        \
-               if test ! -s $(srcdir)/$$i; then echo $$i is empty && exit 1; fi        \
-       done
+$(monobins_DATA):
+       @case "$@" in \
+       monoresgen.exe)          d=monoresgen                   ;; \
+       ilasm.exe)               d=ilasm                        ;; \
+       cilc.exe)                d=tools/cilc                   ;; \
+       xsd.exe)                 d=tools/mono-xsd               ;; \
+       wsdl.exe)                d=tools/wsdl                   ;; \
+       genxs.exe)               d=tools/genxs                  ;; \
+       al.exe)                  d=tools/al                     ;; \
+       disco.exe)               d=tools/disco                  ;; \
+       soapsuds.exe)            d=tools/soapsuds               ;; \
+       sqlsharp.exe)            d=tools/SqlSharp               ;; \
+       chktrust.exe)            d=tools/security               ;; \
+       signcode.exe)            d=tools/security               ;; \
+       MakeCert.exe)            d=tools/security               ;; \
+       cert2spc.exe)            d=tools/security               ;; \
+       certmgr.exe)             d=tools/security               ;; \
+       secutil.exe)             d=tools/security               ;; \
+       setreg.exe)              d=tools/security               ;; \
+       sn.exe)                  d=tools/security               ;; \
+       monop.exe)               d=tools/monop                  ;; \
+       mono-find-provides.exe)  d=tools/mono-rpm-helpers/mono-find-provides    ;; \
+       mono-find-requires.exe)  d=tools/mono-rpm-helpers/mono-find-requires    ;; \
+       browsercaps-updater.exe) d=tools/browsercaps-updater    ;; \
+       gacutil.exe)             d=tools/gacutil                ;; \
+       gmcs.exe)                d=gmcs                         ;; \
+       esac; \
+       f=$(mcs_topdir)/$$d/$@; \
+       if test -f $$f; then :; else f=$(monobinsdir)/$@; fi ; \
+       echo "cp -f $$f $(srcdir)"; \
+       cp -f $$f $(srcdir)
 
 copy_dlls:
        cp /nt/mono/mcs/class/*/*.dll .
 
 push_dlls:
        scp -o "Protocol 1" *.dll *.exe snapshot@mono-cvs.ximian.com:dlls
+
+cleanassemblies:
+       find -name \*.dll -exec rm -vf {} \;
+       find -name \*.exe -exec rm -vf {} \;