makefile: improve the install target to work in more unix environments
[neatroff_make.git] / makefile
blobb3520db813f8e02a732933eda3259cc3fc203fe3
1 # Neatroff top-level makefile
3 # Installation prefix
4 PREFIX = /opt
5 # Input fonts directory; containing ghostscript-fonts and other fonts
6 GSFONTS = /usr/share/ghostscript/fonts
8 # Output device directory
9 FDIR = $(PREFIX)/share/neatroff/font
10 # Macro directory
11 MDIR = $(PREFIX)/share/neatroff/tmac
12 # Directory to install the executables
13 BDIR = $(PREFIX)/bin
15 all: init
16 @cd neatroff && $(MAKE) FDIR="$(FDIR)" MDIR="$(MDIR)"
17 @cd neatpost && $(MAKE) FDIR="$(FDIR)" MDIR="$(MDIR)"
18 @cd neateqn && $(MAKE)
19 @cd neatmkfn && $(MAKE)
20 @cd neatrefer && $(MAKE)
21 @test -d devutf || (cd neatmkfn && ./gen.sh $(GSFONTS) ../devutf)
23 init:
24 @test -d neatroff || git clone git://repo.or.cz/neatroff.git
25 @test -d neatpost || git clone git://repo.or.cz/neatpost.git
26 @test -d neatmkfn || git clone git://repo.or.cz/neatmkfn.git
27 @test -d neateqn || git clone git://repo.or.cz/neateqn.git
28 @test -d neatrefer || git clone git://repo.or.cz/neatrefer.git
30 pull: init
31 cd neatroff && git pull
32 cd neatpost && git pull
33 cd neatmkfn && git pull
34 cd neateqn && git pull
35 cd neatrefer && git pull
37 install: all
38 mkdir -p $(BDIR)
39 cp neatroff/roff $(BDIR)/neatroff
40 cp neatpost/post $(BDIR)/neatpost
41 cp neateqn/eqn $(BDIR)/neateqn
42 cp neatmkfn/mkfn $(BDIR)/neatmkfn
43 cp neatrefer/refer $(BDIR)/neatrefer
44 chmod 755 $(BDIR)/neat{roff,post,eqn,mkfn,refer}
46 mkdir -p -m 755 $(MDIR)
47 cp -r tmac/* $(MDIR)/
48 chmod 755 $(MDIR)/*/
49 chmod 644 $(MDIR)/*.* $(MDIR)/*/*
51 mkdir -p -m 755 $(FDIR)/devutf
52 cp -r devutf/* $(FDIR)/devutf/
53 chmod 644 $(FDIR)/devutf/*
55 help:
56 @echo "Neatroff top-level makefile"
57 @echo
58 @echo " init Initialise git repositories"
59 @echo " pull Pull git repositories"
60 @echo " all Compile the programs"
61 @echo " install Install the executables and data"
62 @echo " clean Remove generated files"
64 clean:
65 cd neatroff && $(MAKE) clean
66 cd neatpost && $(MAKE) clean
67 cd neateqn && $(MAKE) clean
68 cd neatmkfn && $(MAKE) clean
69 cd neatrefer && $(MAKE) clean
70 rm -rf devutf/