Merge pull request #2799 from BrzVlad/fix-conc-card-clean
[mono.git] / mcs / tools / linker / Makefile
index 107cac7cea631ae74554c97b7571d0f11422c97d..63c5eb6adce769bff8c1b9107149ad02576bd708 100644 (file)
@@ -1,44 +1,25 @@
+thisdir = tools/linker
+SUBDIRS =
+include ../../build/rules.make
 
-MCS = mcs
-KEY_FILE = ../../mcs/class/mono.snk
-MONO.CECIL.DLL = Mono.Cecil.dll
-MCS_FLAGS = -debug -keyfile:$(KEY_FILE) -r:$(MONO.CECIL.DLL) -resource:Descriptors/mscorlib.xml -resource:Descriptors/System.xml -resource:Descriptors/System.Web.xml -resource:Descriptors/Mono.Posix.xml -resource:Descriptors/System.Drawing.xml
-LINKER = monolinker.exe
-
-all: config.make monolinker.exe monolinker
-
-monolinker: monolinker.in Makefile
-       sed "s,@prefix@,$(prefix)," < monolinker.in > monolinker
-       chmod +x monolinker
-
-monolinker.exe: Mono.Cecil.dll
-       $(MCS) $(MCS_FLAGS) @$(LINKER).sources /out:$(LINKER)
-
-Mono.Cecil.dll:
-       if pkg-config --atleast-version=0.5 mono-cecil; then \
-               cp `pkg-config --variable=Libraries mono-cecil` .; \
-       else \
-               echo You must install Mono.Cecil first; \
-               exit 1; \
-       fi
-
-clean:
-       rm -f $(LINKER) $(MONO.CECIL.DLL) monolinker
-
-install: all
-       mkdir -p $(prefix)/bin
-       mkdir -p $(prefix)/lib/monolinker
-       cp $(LINKER) $(MONO.CECIL.DLL) $(prefix)/lib/monolinker
-       cp monolinker $(prefix)/bin
-       cp man/monolinker.1 $(prefix)/share/man/man1
-
-config.make:
-       echo You must run configure first
-       exit 1
-
-include config.make
-
-run-test: all
-       cd ./Tests; \
-       make clean run-test; \
-       cd ..;
+PROGRAM_SNK = ../../class/mono.snk
+
+CECIL = $(topdir)/class/lib/$(PROFILE)/Mono.Cecil.dll
+
+RESOURCES = \
+       Descriptors/mscorlib.xml        \
+       Descriptors/System.xml          \
+       Descriptors/System.Core.xml             \
+       Descriptors/System.Drawing.xml  \
+       Descriptors/System.Web.xml              \
+       Descriptors/Mono.Posix.xml              \
+
+PROGRAM = monolinker.exe
+
+$(PROGRAM): $(RESOURCES)
+
+LOCAL_MCS_FLAGS = /r:$(CECIL) /r:System.Xml.dll /r:System.Core.dll /r:System.dll $(RESOURCES:%=-resource:%)
+
+EXTRA_DISTFILES = $(RESOURCES)
+
+include ../../build/executable.make