summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorJan Moskyto Matejka <mq@ucw.cz>2016-04-12 11:14:54 +0200
committerJan Moskyto Matejka <mq@ucw.cz>2016-05-10 14:07:34 +0200
commit7152e5efbb0fade868d5f2d2c7bc10ed52b3d19d (patch)
treeebb3ff35e34cdf37c0757e0aa6a6e8de30a71278 /doc
parent4bdf1881dc6230b742d7efcaad8eeac4ed25f445 (diff)
Build system reworked to one global Makefile with includes and no nesting
Also removed the lib-dir merging with sysdep. Updated #include's accordingly. Fixed make doc on recent Debian together with moving generated doc into objdir. Moved Makefile.in into root dir Retired all.o and birdlib.a Linking the final binaries directly from all the .o files.
Diffstat (limited to 'doc')
-rw-r--r--doc/LinuxDocTools.pm2
-rw-r--r--doc/Makefile68
-rwxr-xr-xdoc/sgml2html8
-rwxr-xr-xdoc/sgml2latex8
-rwxr-xr-xdoc/sgml2txt8
5 files changed, 52 insertions, 42 deletions
diff --git a/doc/LinuxDocTools.pm b/doc/LinuxDocTools.pm
index 51d4a04c..39bb401d 100644
--- a/doc/LinuxDocTools.pm
+++ b/doc/LinuxDocTools.pm
@@ -372,6 +372,8 @@ sub process_file
}
}
#
+
+ local $ENV{PATH} = "$ENV{PATH}:/usr/lib/linuxdoc-tools";
my($precmd) = "|sgmlpre output=$global->{format} $global->{define}";
#
diff --git a/doc/Makefile b/doc/Makefile
index f88c3205..3ff73389 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -1,46 +1,48 @@
-root-rel=../
-dir-name=doc
-
-ifneq ($(wildcard ../Rules),)
-include ../Rules
-else
-srcdir=$(shell cd $(root-rel) ; pwd)
-srcdir_abs=$(srcdir)
-endif
-
# Force rebuilds
-.PHONY: prog.sgml bird.sgml
+.PHONY: progspell docs progdocs userdocs
+
+doc-srcdir := $(shell cd $(s) && pwd)
+sgml2 := $(doc-srcdir)/sgml2
docs: progdocs userdocs
-progdocs: prog.html prog.ps
-userdocs: bird.html bird.ps
-prog.sgml:
- $(srcdir)/tools/progdoc $(srcdir_abs)
+doc-fmt = $(1): $(o)prog.$(1) $(o)bird.$(1)
+$(call doc-fmt,html)
+$(call doc-fmt,dvi)
+$(call doc-fmt,ps)
+$(call doc-fmt,pdf)
+
+progdocs: $(o)prog.html $(o)prog.pdf
+userdocs: $(o)bird.html $(o)bird.pdf
+progspell: $(o)prog.spell
+
+$(o)prog.sgml: $(srcdir)/tools/progdoc $(objdir)/.dir-stamp
+ $(srcdir)/tools/progdoc $(srcdir) $@
+
+$(o)%.sgml: $(s)%.sgml $(objdir)/.dir-stamp
+ cp $< $@
-%.html: %.sgml
- ./sgml2html $<
+$(o)%.html: $(o)%.sgml
+ cd $(dir $@) && $(sgml2)html $(notdir $<)
-%.dvi: %.tex
- latex $<
- latex $<
+$(o)%.dvi: $(o)%.tex
+ cd $(dir $@) && TEXINPUTS=$(TEXINPUTS):$(doc-srcdir)/tex latex $(notdir $<)
+ cd $(dir $@) && TEXINPUTS=$(TEXINPUTS):$(doc-srcdir)/tex latex $(notdir $<)
-%.ps: %.dvi
+$(o)%.ps: $(o)%.dvi
dvips -D600 -ta4 -o $@ $<
-%.tex: %.sgml
- ./sgml2latex --output=tex $<
+$(o)%.pdf: $(o)%.ps
+ ps2pdf $< $@
-%.txt: %.sgml
- ./sgml2txt $<
+$(o)%.tex: $(o)%.sgml
+ cd $(dir $@) && $(sgml2)latex --output=tex $(notdir $<)
-progspell: prog.sgml
- sed -f prog-spell.sed <prog.sgml >prog.spell
- ispell prog.spell
+$(o)%.txt: $(o)%.sgml
+ cd $(dir $@) && $(sgml2)txt $(notdir $<)
-clean:
- rm -f *.tex *.dvi *.log *.txt *.aux *.toc *.spell
- rm -f prog.sgml
+$(o)prog.spell: $(o)prog.sgml $(s)prog-spell.sed
+ sed -f $(lastword $^) <$< >$@
+ ispell $@
-distclean: clean
- rm -f *.html *.ps
+$(call clean,prog.spell $(addprefix *.,html dvi ps pdf sgml tex txt aux log toc))
diff --git a/doc/sgml2html b/doc/sgml2html
index 774a03d5..a5bbee9e 100755
--- a/doc/sgml2html
+++ b/doc/sgml2html
@@ -17,8 +17,10 @@ use strict;
use vars qw($prefix $DataDir $BinDir $progs);
+use FindBin;
+
$prefix = "/usr";
-$DataDir = "sbase";
+$DataDir = "$FindBin::Bin/sbase";
$BinDir = "/usr/bin";
use lib "/usr/share/linuxdoc-tools";
@@ -32,9 +34,9 @@ $progs = {
"GROFFMACRO" => "-ms",
"AWK" => "/usr/share/linuxdoc-tools/awkwhich"
};
-$ENV{"SGML_CATALOG_FILES"} = "sbase/dtd/catalog";
+$ENV{"SGML_CATALOG_FILES"} = "$DataDir/dtd/catalog";
-require "./LinuxDocTools.pm";
+require "$FindBin::Bin/LinuxDocTools.pm";
&LinuxDocTools::init;
my @FileList = LinuxDocTools::process_options ("html", @ARGV);
diff --git a/doc/sgml2latex b/doc/sgml2latex
index 27aae4c8..02b60d94 100755
--- a/doc/sgml2latex
+++ b/doc/sgml2latex
@@ -17,8 +17,10 @@ use strict;
use vars qw($prefix $DataDir $BinDir $progs);
+use FindBin;
+
$prefix = "/usr";
-$DataDir = "sbase";
+$DataDir = "$FindBin::Bin/sbase";
$BinDir = "/usr/bin";
use lib "/usr/share/linuxdoc-tools";
@@ -32,9 +34,9 @@ $progs = {
"GROFFMACRO" => "-ms",
"AWK" => "/usr/share/linuxdoc-tools/awkwhich"
};
-$ENV{"SGML_CATALOG_FILES"} = "sbase/dtd/catalog";
+$ENV{"SGML_CATALOG_FILES"} = "$DataDir/dtd/catalog";
-require "./LinuxDocTools.pm";
+require "$FindBin::Bin/LinuxDocTools.pm";
&LinuxDocTools::init;
my @FileList = LinuxDocTools::process_options ("latex", @ARGV);
diff --git a/doc/sgml2txt b/doc/sgml2txt
index 90dc4855..dfc017de 100755
--- a/doc/sgml2txt
+++ b/doc/sgml2txt
@@ -17,8 +17,10 @@ use strict;
use vars qw($prefix $DataDir $BinDir $progs);
+use FindBin;
+
$prefix = "/usr";
-$DataDir = "sbase";
+$DataDir = "$FindBin::Bin/sbase";
$BinDir = "/usr/bin";
use lib "/usr/share/linuxdoc-tools";
@@ -32,9 +34,9 @@ $progs = {
"GROFFMACRO" => "-ms",
"AWK" => "/usr/share/linuxdoc-tools/awkwhich"
};
-$ENV{"SGML_CATALOG_FILES"} = "sbase/dtd/catalog";
+$ENV{"SGML_CATALOG_FILES"} = "$DataDir/dtd/catalog";
-require "./LinuxDocTools.pm";
+require "$FindBin::Bin/LinuxDocTools.pm";
&LinuxDocTools::init;
my @FileList = LinuxDocTools::process_options ("txt", @ARGV);