summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Makefile111
1 files changed, 58 insertions, 53 deletions
diff --git a/src/Makefile b/src/Makefile
index 2e54972f8..1981945b2 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -4,15 +4,10 @@ include config.mk
GHMAKE=$(GHC) --make
GHCXMAKE=ghcxmake
GHCFLAGS=-package lang -package util -fglasgow-exts $(CPPFLAGS) $(LDFLAGS)
-GHCOPTFLAGS=-O2 $(GHCFLAGS)
+GHCOPTFLAGS=-O2
GHCFUDFLAG=
JAVAFLAGS=-target 1.4 -source 1.4
-GHCINCLUDE =-ifor-ghc
-GHCINCLUDENOFUD=-ifor-ghc-nofud
-GHCINCLUDEGFT =-ifor-gft
-WINDOWSINCLUDE =-ifor-windows
-
DIST_DIR=GF-$(PACKAGE_VERSION)
NOT_IN_DIST= \
grammars \
@@ -28,59 +23,46 @@ SNAPSHOT_DIR=GF-$(shell date +%Y%m%d)
all: unix tools/gfdoc jar
+unix: today touch-files opt
+
+windows: today touch-files justwindows
+
temp: today touch-files noopt
-unix: today touch-files nofud-links opt
-windows: today touch-files nofud-links justwindows
-install-java: javac
- -rm -f ../bin/java
- ln -s ../src/JavaGUI ../bin
- @echo "PLEASE edit GFHOME in bin/jgf"
-opt:
- $(GHMAKE) $(GHCOPTFLAGS) $(GHCINCLUDENOFUD) GF.hs -o gf-bin
- strip gf-bin
- mv gf-bin ../bin/gf
-noopt:
- $(GHMAKE) $(GHCFLAGS) $(GHCINCLUDENOFUD) GF.hs -o gf-bin
+build:
+ $(GHMAKE) $(GHCFLAGS) GF.hs -o gf-bin
strip gf-bin
mv gf-bin ../bin/gf
-ghc: nofud
+opt: GHCFLAGS += $(GHCOPTFLAGS)
+opt: build
+
+noopt: build
-ghci: touch-files nofud-links ghci-nofud
+ghci: touch-files ghci-nofud
fud:
- $(GHCXMAKE) $(GHCFLAGS) $(GHCINCLUDE) $(GHCFUDFLAG) GF.hs -o fgf
+ $(GHCXMAKE) $(GHCFLAGS) $(GHCFUDFLAG) GF.hs -o fgf
strip fgf
mv fgf ../bin/
gft:
- $(GHMAKE) $(GHCFLAGS) $(GHCINCLUDENOFUD) -itranslate translate/GFT.hs -o gft-bin
+ $(GHMAKE) $(GHCFLAGS) -itranslate translate/GFT.hs -o gft-bin
strip gft-bin
mv gft-bin ../bin/gft
-nofud: nofud-links
- $(GHMAKE) $(GHCFLAGS) $(GHCINCLUDENOFUD) GF.hs -o gf-bin
- strip gf-bin
- mv gf-bin ../bin/gf
-
justwindows:
- $(GHMAKE) $(GHCOPTFLAGS) $(WINDOWSINCLUDE) GF.hs -o gf.exe
+ $(GHMAKE) $(GHCOPTFLAGS) GF.hs -o gf.exe
strip gf.exe
mv gf.exe ../bin/
-nofud-links:
- mkdir -p for-ghc-nofud
- rm -f for-ghc-nofud/Arch.hs
- ln -s ../for-ghc/Arch.hs for-ghc-nofud
-
api:
- $(GHMAKE) $(GHCFLAGS) $(GHCINCLUDE) GF/API.hs
+ $(GHMAKE) $(GHCFLAGS) GF/API.hs
shell:
- $(GHMAKE) $(GHCFLAGS) $(GHCINCLUDE) GF/Shell.hs
+ $(GHMAKE) $(GHCFLAGS) GF/Shell.hs
clean:
-rm -rf */*.o */*.hi *.o *.hi */*.ghi *.ghi *~ */*~
@@ -88,7 +70,6 @@ clean:
-rm -f JavaGUI/*.class
distclean: clean
- -rm -f for-ghc-nofud/*.hs
-rm -f JavaGUI/gf-java.jar jgf
-rm -f tools/gfdoc
-rm -f config.status config.mk config.log
@@ -96,7 +77,7 @@ distclean: clean
-rm -rf $(DIST_DIR) $(BIN_DIST_DIR)
ghci-nofud:
- $(GHCI) $(GHCFLAGS) $(GHCINCLUDENOFUD)
+ $(GHCI) $(GHCFLAGS)
today:
tools/mktoday.sh
@@ -107,13 +88,7 @@ javac:
jar: javac
cd JavaGUI; $(JAR) -cmf manifest.txt gf-java.jar *.class
-tools/MkHelpFile: tools/MkHelpFile.hs
- $(GHMAKE) -o $@ $^
-help: GF/Shell/HelpFile.hs
-
-GF/Shell/HelpFile.hs: tools/MkHelpFile HelpFile
- tools/MkHelpFile
# added by peb:
tracing: GHCFLAGS += -DTRACING
@@ -129,31 +104,55 @@ touch-files:
prof: GHCOPTFLAGS += -prof -auto-all -auto-dicts
prof: all
-lib:
- cd ../grammars
- sh mkLib.sh
+
+
+#
+# Help file
+#
+
+tools/MkHelpFile: tools/MkHelpFile.hs
+ $(GHMAKE) -o $@ $^
+
+help: GF/Shell/HelpFile.hs
+
+GF/Shell/HelpFile.hs: tools/MkHelpFile HelpFile
+ tools/MkHelpFile
+
+#
+# Tools
+#
+
+tools/gfdoc: tools/GFDoc.hs
+ $(GHMAKE) -o $@ $^
+
+#
+# Distribution
+#
dist:
-rm -rf $(DIST_DIR)
mkdir $(DIST_DIR)
- cvs export -d $(DIST_DIR) -rHEAD GF2.0
+ cvs export -d $(DIST_DIR) -rHEAD GF
cd $(DIST_DIR)/src && autoconf && rm -rf autom4te.cache
find $(DIST_DIR) -name .cvsignore -exec rm -f {} ';'
- cd $(DIST_DIR)/grammars && sh mkLib.sh
+# cd $(DIST_DIR)/grammars && sh mkLib.sh
cd $(DIST_DIR) && rm -rf $(NOT_IN_DIST)
gtar -zcf $(DIST_DIR).tgz $(DIST_DIR)
rm -rf $(DIST_DIR)
+snapshot: DIST_DIR=$(SNAPSHOT_DIR)
+snapshot: dist
+
rpm: dist
rpmbuild -ta $(DIST_DIR).tgz
-snapshot: DIST_DIR=$(SNAPSHOT_DIR)
-snapshot: dist
binary-dist:
rm -rf $(BIN_DIST_DIR)
mkdir $(BIN_DIST_DIR)
- ./configure --host="$(host)" CPPFLAGS="`lib__readline -I` `lib__ncurses -I`" LDFLAGS="`lib__readline -l` `lib__ncurses -l`"
+ ./configure --host="$(host)" \
+ CPPFLAGS="`lib__readline -I` `lib__ncurses -I`" \
+ LDFLAGS="`lib__readline -l` `lib__ncurses -l`"
$(MAKE) all
$(INSTALL) ../bin/gf tools/gfdoc $(BIN_DIST_DIR)
$(INSTALL) -m 0644 JavaGUI/gf-java.jar $(BIN_DIST_DIR)
@@ -165,6 +164,10 @@ binary-dist:
gtar -zcf GF-$(PACKAGE_VERSION)-$(host).tgz $(BIN_DIST_DIR)
rm -rf $(BIN_DIST_DIR)
+#
+# Installation
+#
+
install: install-gf install-gfdoc install-editor
install-gf:
@@ -180,5 +183,7 @@ install-editor:
$(INSTALL) jgf $(bindir)
$(INSTALL) -m 0644 JavaGUI/gf-java.jar $(datadir)/GF-$(PACKAGE_VERSION)
-tools/gfdoc: tools/GFDoc.hs
- $(GHMAKE) -o $@ $^
+install-java: javac
+ -rm -f ../bin/JavaGUI
+ ln -s ../src/JavaGUI ../bin
+ @echo "PLEASE edit GFHOME in bin/jgf"