1
# handle Mono secondary dependencies
2
export MONO_PATH := $(MONO_PATH)
4
Service_CSFILES = $(srcdir)/AssemblyInfo.cs $(srcdir)/BaseProcessService.cs $(srcdir)/IThreadService.cs $(srcdir)/Manager.cs $(srcdir)/Message.cs $(srcdir)/ProcessServiceCtl.cs $(srcdir)/ServiceCtl.cs $(srcdir)/ServiceType.cs $(srcdir)/State.cs $(srcdir)/ThreadServiceCtl.cs
5
Service_CSFILES_CSC := $(subst /,$(SEP),$(Service_CSFILES))
8
Service_FLAGS = $(CSC_LIBFLAG)
9
Service_LIBS = System.dll System.Data.dll $(SYSTEM_XML) Common.dll
10
Service_LIBPATH = /opt/gnome2/lib /usr/lib ../Common ../CollectionEvents
12
NUNIT_TESTS := ServiceTests.exe ThreadServiceTest.dll ProcessServiceTest.exe
14
ServiceTests_CSFILES = $(srcdir)/ServiceTests/AssemblyInfo.cs $(srcdir)/ServiceTests/ServiceTests.cs
15
ServiceTests_CSFILES_CSC := $(subst /,$(SEP),$(ServiceTests_CSFILES))
16
ServiceTests_INCLUDES =
17
ServiceTests_RESOURCES =
18
ServiceTests_FLAGS = $(CSC_EXEFLAG)
19
ServiceTests_LIBS = System.dll System.Data.dll $(SYSTEM_XML) nunit.util.dll nunit.framework.dll Common.dll Simias.Service.dll
20
ServiceTests_LIBPATH = $(NUNIT_LIBPATH) ../Common
22
ThreadServiceTest_CSFILES = $(srcdir)/ThreadServiceTest/AssemblyInfo.cs $(srcdir)/ThreadServiceTest/ThreadServiceTest.cs
23
ThreadServiceTest_CSFILES_CSC := $(subst /,$(SEP),$(ThreadServiceTest_CSFILES))
24
ThreadServiceTest_INCLUDES =
25
ThreadServiceTest_RESOURCES =
26
ThreadServiceTest_FLAGS = $(CSC_LIBFLAG)
27
ThreadServiceTest_LIBS = System.dll System.Data.dll $(SYSTEM_XML) nunit.util.dll nunit.framework.dll Common.dll Simias.Service.dll
28
ThreadServiceTest_LIBPATH = $(NUNIT_LIBPATH) ../Common
30
ProcessServiceTest_CSFILES = $(srcdir)/ProcessServiceTest/AssemblyInfo.cs $(srcdir)/ProcessServiceTest/ProcessServiceTest.cs
31
ProcessServiceTest_CSFILES_CSC := $(subst /,$(SEP),$(ProcessServiceTest_CSFILES))
32
ProcessServiceTest_INCLUDES =
33
ProcessServiceTest_RESOURCES =
34
ProcessServiceTest_FLAGS = $(CSC_EXEFLAG)
35
ProcessServiceTest_LIBS = System.dll System.Data.dll $(SYSTEM_XML) nunit.util.dll nunit.framework.dll Common.dll Simias.Service.dll
36
ProcessServiceTest_LIBPATH = $(NUNIT_LIBPATH) ../Common
38
EXTRA_DIST = $(Service_CSFILES) $(ServiceTests_CSFILES) $(ThreadServiceTest_CSFILES) $(ProcessServiceTest_CSFILES)
41
DOC_FILE = $(basename $@).doc.xml
42
DOC_FILE_CMD = /doc:$(DOC_FILE)
43
DOC_FILE_CLEAN = *.doc.xml
46
CUR_DIR := $(shell pwd)
48
all: Simias.Service.dll
50
Simias.Service.dll: $(Service_CSFILES) $(Service_RESOURCES)
51
$(CSC) /out:$@ $(CSCFLAGS) $(Service_FLAGS) $(Service_LIBS:%=/r:%) $(Service_LIBPATH:%=/lib:%) $(Service_CSFILES_CSC) $(DOC_FILE_CMD)
53
ServiceTests.exe: $(ServiceTests_CSFILES) $(ServiceTests_RESOURCES)
54
$(CSC) /out:$@ $(CSCFLAGS) $(ServiceTests_FLAGS) $(ServiceTests_LIBS:%=/r:%) $(ServiceTests_LIBPATH:%=/lib:%) $(ServiceTests_CSFILES_CSC)
56
ProcessServiceTest.exe: $(ProcessServiceTest_CSFILES) $(ProcessServiceTest_RESOURCES)
57
$(CSC) /out:$@ $(CSCFLAGS) $(ProcessServiceTest_FLAGS) $(ProcessServiceTest_LIBS:%=/r:%) $(ProcessServiceTest_LIBPATH:%=/lib:%) $(ProcessServiceTest_CSFILES_CSC)
59
ThreadServiceTest.dll: $(ThreadServiceTest_CSFILES) $(ThreadServiceTest_RESOURCES)
60
$(CSC) /out:$@ $(CSCFLAGS) $(ThreadServiceTest_FLAGS) $(ThreadServiceTest_LIBS:%=/r:%) $(ThreadServiceTest_LIBPATH:%=/lib:%) $(ThreadServiceTest_CSFILES_CSC)
64
DEBUG_FILES = Simias.Service.pdb
68
install-exec-local: Simias.Service.dll
69
$(mkinstalldirs) $(DESTDIR)$(bindir)
70
$(INSTALL_PROGRAM) Simias.Service.dll $(DEBUG_FILES) $(DESTDIR)$(bindir)
73
cd $(DESTDIR)$(bindir); rm -f Simias.Service.dll ServiceTests.test.xml $(NUNIT_TESTS) $(DEBUG_FILES)
75
installcheck-local: install $(NUNIT_TESTS)
76
$(mkinstalldirs) $(DESTDIR)$(bindir)
77
$(INSTALL_PROGRAM) $(NUNIT_TESTS) $(DESTDIR)$(bindir)
78
cd $(DESTDIR)$(bindir); $(MONO) $(CUR_DIR)/$(NUNIT) $(NUNIT_FLAGS) /xml:ServiceTest.test.xml $(NUNIT_TESTS)
81
CLEAN_FILES = Simias.Service.dll $(NUNIT_TESTS) $(DOC_FILE_CLEAN)
84
rm -rf $(CLEAN_FILES) $(COMMON_CLEAN_FILES)
87
rm -rf $(COMMON_DISTCLEAN_FILES)
89
maintainer-clean-local:
90
rm -rf $(COMMON_MAINTAINER_CLEAN_FILES)