Merge pull request #2417 from razzfazz/guard_substr
[mono.git] / mcs / class / System.Windows.Forms / Makefile
index 431a12924400aca5604da9b9b03f3904c8bb6021..06eacbcbcf7cd073d64de672105b60d866fa266a 100644 (file)
 thisdir = class/System.Windows.Forms
-SUBDIRS = SWFTest
-DIST_ONLY_SUBDIRS = Gtk
 include ../../build/rules.make
 
 LIBRARY = System.Windows.Forms.dll
+
+LIB_REFS = System System.Xml System.Drawing Accessibility System.Data Mono.Posix Mono.WebBrowser System.Configuration System.Runtime.Serialization.Formatters.Soap
 LIB_MCS_FLAGS = /unsafe \
-       /r:$(corlib) /r:System.dll /r:System.Xml.dll \
-       /r:System.Drawing.dll /r:Accessibility.dll \
-       /nowarn:649 /nowarn:169 /nowarn:67 /nowarn:108 /nowarn:114
+       @System.Windows.Forms.dll.resources \
+       -nowarn:618,612,809
+
+ifeq (true, $(GENERATE_RESOURCES))
+LIB_MCS_FLAGS += /define:GENERATING_RESOURCES
+endif
+
+RESX_RESOURCES = \
+       resources/keyboards.resources
+
+CLEAN_FILES += $(RESX_RESOURCES)
+
+CUR_RESOURCES = resources/NWSE.cur resources/NESW.cur \
+       resources/SplitterNS.cur \
+       resources/SplitterWE.cur \
+       resources/NWSE.cur \
+       resources/NESW.cur \
+       resources/DnDNo.cur \
+       resources/DnDCopy.cur \
+       resources/DnDLink.cur \
+       resources/DnDMove.cur
+
+RESOURCES = $(RESX_RESOURCES) $(CUR_RESOURCES)
+
+PREBUILT = $(RESX_RESOURCES:=.prebuilt)
+
+IMAGES_RESOURCES = \
+       resources/16_computer.png               \
+       resources/32_computer.png               \
+       resources/computer.png                  \
+       resources/16_document-open.png          \
+       resources/32_document-open.png          \
+       resources/document-open.png             \
+       resources/16_folder.png                 \
+       resources/folder-new.png                \
+       resources/folder.png                    \
+       resources/16_folder-remote.png          \
+       resources/32_folder-remote.png          \
+       resources/folder-remote.png             \
+       resources/go-previous.png               \
+       resources/go-top.png                    \
+       resources/22_page-magnifier.png         \
+       resources/preferences-system-windows.png\
+       resources/16_printer.png                \
+       resources/32_printer.png                \
+       resources/text-x-generic.png            \
+       resources/16_user-desktop.png           \
+       resources/32_user-desktop.png           \
+       resources/user-desktop.png              \
+       resources/16_user-home.png              \
+       resources/32_user-home.png              \
+       resources/user-home.png         \
+       resources/16_dialog-error.png           \
+       resources/16_dialog-information.png     \
+       resources/16_dialog-warning.png         \
+       resources/1-up.png                      \
+       resources/2-up.png                      \
+       resources/3-up.png                      \
+       resources/4-up.png                      \
+       resources/6-up.png                      \
+       resources/nav_delete.png                \
+       resources/nav_end.png                   \
+       resources/nav_first.png                 \
+       resources/nav_previous.png              \
+       resources/nav_next.png                  \
+       resources/nav_plus.png                  \
+       resources/image-missing.png             \
+       resources/image-x-generic.png           \
+       resources/propertygrid-alphabetical.png \
+       resources/propertygrid-categorized.png  \
+       resources/EventsTab.bmp                 \
+       resources/PropertiesTab.bmp             \
+       resources/propertygrid-propertypages.png        \
+       resources/mono.ico                      \
+       resources/errorProvider.ico
+
+
+TEST_DISTFILES = \
+       M.gif \
+       Test/resources/a.cur \
+       Test/resources/32x32.ico \
+       Test/System.Resources/compat_1_1.resx \
+       Test/System.Resources/compat_2_0.resx \
+       Test/System.Windows.Forms/bitmaps/a.png \
+       Test/DummyAssembly/AnotherSerializable.cs \
+       Test/DummyAssembly/Convertable.cs \
+       Test/DummyAssembly/Properties/AssemblyInfo.cs \
 
 EXTRA_DISTFILES = \
-       CheckOutList                    \
-       README
+       README System.Windows.Forms.dll.resources \
+       $(RESX_RESOURCES:.resources=.resx) $(CUR_RESOURCES) $(PREBUILT) \
+       $(IMAGES_RESOURCES) \
+       $(TEST_DISTFILES)
+
+TEST_LIB_REFS = System.Data System.Drawing Accessibility System System.Xml System.Runtime.Serialization.Formatters.Soap
+TEST_MCS_FLAGS = \
+       -resource:Test/resources/a.cur,a.cur \
+       -resource:Test/resources/32x32.ico,32x32.ico \
+       -nowarn:618,612
 
-NO_TEST = yes
+DummyAssembly.dll:
+       $(CSCOMPILE) /target:library /out:$@ Test/DummyAssembly/AnotherSerializable.cs Test/DummyAssembly/Convertable.cs Test/DummyAssembly/Properties/AssemblyInfo.cs \
+       -r:$(topdir)/class/lib/$(PROFILE)/System.dll
 
-# FIXME: there is a lot of undisted test stuff at the moment,
-# I think.
+test-local: DummyAssembly.dll
 
 include ../../build/library.make
+
+TEST_HARNESS_EXCLUDES = -exclude=Interactive,NotWorking,ValueAdd,CAS,InetAccess
+TEST_HARNESS_EXCLUDES_ONDOTNET = -exclude=Interactive,NotDotNet,CAS
+
+$(the_lib): $(RESOURCES)
+
+$(RESX_RESOURCES): %.resources: %.resx
+       $(RESGEN) $< || cp $@.prebuilt $@
+
+$(LIBRARY): $(CUR_RESOURCES)
+
+$(PREBUILT): %.prebuilt: %
+       cp $* $@
+
+dist-default: $(PREBUILT)