blob: 8f4c8b45ac985555bdc498412e6a7f5b8332674d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
|
include config.mk
GHMAKE=$(GHC) --make
GHCFLAGS=-package lang -package util -fglasgow-exts
GHCOPTFLAGS=-O $(GHCFLAGS)
GHCFUDFLAG=-package Fudgets
HUGSINCLUDE =.:for-hugs:api:source:canonical:cf:grammar:infra:shell:useGrammar:compile:newparsing:trace:
BASICINCLUDE =-iapi -icompile -igrammar -iinfra -ishell -isource -icanonical -iuseGrammar -icf -inewparsing -iparsers -inotrace
GHCINCLUDE =-ifor-ghc $(BASICINCLUDE)
GHCINCLUDENOFUD=-ifor-ghc-nofud $(BASICINCLUDE)
GHCINCLUDEGFT =-ifor-gft $(BASICINCLUDE)
WINDOWSINCLUDE =-ifor-windows $(BASICINCLUDE)
DIST_DIR=GF-$(PACKAGE_VERSION)
NOT_IN_DIST= \
from-peb \
doc/release2.html \
grammars/resource \
grammars/aggregation \
grammars/numerals \
grammars/ocl \
grammars/testConversions \
grammars/timetable \
src/parsing \
src/conversions \
src/util/AlphaConvGF.hs
all: unix
unix: today nofud-links opt
windows: today nofud-links justwindows
install-java: javac
-rm -f ../bin/java
ln -s ../src/java ../bin
@echo "PLEASE edit GFHOME in bin/jgf2"
opt:
$(GHMAKE) $(GHCOPTFLAGS) $(GHCINCLUDENOFUD) GF.hs -o gf2
strip gf2
mv gf2 ../bin/
ghc: nofud
ghci: nofud-links ghci-nofud
fud:
$(GHMAKE) $(GHCFLAGS) $(GHCINCLUDE) $(GHCFUDFLAG) GF.hs -o gf2+
strip gf2+
mv gf2+ ../bin/
gft:
$(GHMAKE) $(GHCFLAGS) $(GHCINCLUDENOFUD) -itranslate translate/GFT.hs -o gft
strip gft
mv gft ../bin/
nofud: nofud-links
$(GHMAKE) $(GHCFLAGS) $(GHCINCLUDENOFUD) GF.hs -o gf2
strip gf2
mv gf2 ../bin/
justwindows:
$(GHMAKE) $(GHCOPTFLAGS) $(WINDOWSINCLUDE) GF.hs -o gf2.exe
strip gf2.exe
mv gf2.exe ../bin/
nofud-links:
mkdir -p for-ghc-nofud
rm -f for-ghc-nofud/*.hs
ln -s ../for-ghc/Arch.hs for-ghc-nofud
ln -s ../for-hugs/ArchEdit.hs for-ghc-nofud
batch:
$(GHMAKE) $(GHCFLAGS) $(GHCINCLUDE) GF2.hs -o gf2
strip gf2
api:
$(GHMAKE) $(GHCFLAGS) $(GHCINCLUDE) API.hs
shell:
$(GHMAKE) $(GHCFLAGS) $(GHCINCLUDE) Shell.hs
clean:
-rm -rf */*.o */*.hi *.o *.hi */*.ghi *.ghi *~ */*~
-rm -f java/*.class
distclean: clean
-rm -f for-ghc-nofud/*.hs
-rm -f java/gf-java.jar jgf2
-rm -f config.status config.mk config.log
-rm -f *.tar.gz *.zip
hugs:
hugs -h10M -P$(HUGSINCLUDE)
ghci-nofud:
$(GHCI) $(GHCFLAGS) $(GHCINCLUDENOFUD)
today:
util/mktoday.sh
javac:
javac -target 1.4 java/*.java
jar: javac
cd java; jar -cmf manifest.txt gf-java.jar *.class
help:
cd util ; runhugs MkHelpFile ; mv HelpFile.hs .. ; cd ..
# added by peb:
tracing:
$(GHMAKE) $(GHCFLAGS) -itrace $(GHCINCLUDENOFUD) GF.hs -o gf2
strip gf2
mv gf2 ../bin/
dist:
-rm -rf $(DIST_DIR)
mkdir $(DIST_DIR)
cvs export -d $(DIST_DIR) -rHEAD GF2.0
cd $(DIST_DIR)/src && autoconf && rm -rf autom4te.cache
find $(DIST_DIR) -name .cvsignore -exec rm -f {} ';'
cd $(DIST_DIR) && rm -rf $(NOT_IN_DIST)
tar -zcf $(DIST_DIR).tar.gz $(DIST_DIR)
zip -r $(DIST_DIR).zip $(DIST_DIR)
rm -rf $(DIST_DIR)
rpm: dist
rpmbuild -ta $(DIST_DIR).tar.gz
install:
$(INSTALL) -d $(bindir)
$(INSTALL) -d $(libdir)/GF-$(PACKAGE_VERSION)
$(INSTALL) ../bin/gf2 $(bindir)
$(INSTALL) jgf2 $(bindir)
$(INSTALL) java/gf-java.jar $(libdir)/GF-$(PACKAGE_VERSION)
|