*** empty log message ***
[m17n/m17n-lib-cs.git] / Makefile
index 959f128..c2b2490 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,15 +1,47 @@
-CORE_SRC = MSymbol.cs MPlist.cs MText.cs temp.cs
+CS=gmcs2
+DEBUG_FLAG = -debug
+CODEPAGE = 65001
 
-all: M17N.exe temp.exe
+RUNCS = ${CS} ${DEBUG_FLAG} -codepage:${CODEPAGE}
 
-M17N.exe: M17N.cs M17NCore.dll
-       mcs /r:M17NCore M17N.cs
+M17N_SRC = M17N.cs
+CORE_SRC = MSymbol.cs MPlist.cs MCharTable.cs MText.cs MDatabase.cs
+INPUT_SRC = MInputMethod.cs
+XEX_SRC = XmlExpr.cs
+DLL = M17N.dll M17NCore.dll M17NIM.dll XmlExpr.dll
+EXAMPLE = symbol.exe plist.exe chartab.exe text.exe textprop.exe database.exe \
+       xex.exe
+TEST = rearsticky.exe frontsticky.exe bothsticky.exe \
+       sensitive.exe frontsensitive.exe rearsensitive.exe
 
-M17NCore.dll: ${CORE_SRC}
-       mcs /out:$@ /t:library ${CORE_SRC}
+all: ${DLL} ${EXAMPLE} ${TEST}
 
-temp.exe: temp.cs M17NCore.dll
-       mcs /r:M17NCore temp.cs
+M17N.dll: ${M17N_SRC}
+       $(RUNCS) -out:$@ -t:library ${M17N_SRC}
+
+M17NCore.dll: M17N.dll ${CORE_SRC}
+       $(RUNCS) -out:$@ -t:library -r:M17N.dll ${CORE_SRC}
+
+M17NIM.dll: ${INPUT_SRC} M17N.dll M17NCore.dll XmlExpr.dll
+       $(RUNCS) -out:$@ -t:library -r:M17N.dll -r:M17NCore.dll -r:XmlExpr.dll ${INPUT_SRC}
+
+XmlExpr.dll: ${XEX_SRC}
+       $(RUNCS) -out:$@ -t:library ${XEX_SRC}
+
+input.exe: input.cs M17NIM.dll XmlExpr.dll
+       $(RUNCS) -r:M17N.dll -r:M17NCore -r:XmlExpr -r:M17NIM.dll $<
+
+expr.exe: expr.cs
+       $(RUNCS) -r:M17N.dll -r:M17NCore -r:M17NExpr $<
+
+xex.exe: xex.cs XmlExpr.dll
+       $(RUNCS) -r:XmlExpr.dll $<
+
+%.exe: %.cs ${DLL}
+       $(RUNCS) -r:M17N.dll -r:M17NCore $<
 
 clean:
-       rm -f *.dll *.exe
+       rm -f $(DLL) *.exe
+
+temp.exe: temp.cs
+       $(CS) temp.cs