From 9453113a8dafd58cd1b8a4719bdb7ccc5c8915e0 Mon Sep 17 00:00:00 2001 From: Daniel Jacobowitz Date: Tue, 27 Mar 2007 18:09:36 +0000 Subject: [PATCH] Add "make pdf" and "make install-pdf", from Brooks Moses . --- etc/ChangeLog | 4 ++++ etc/Makefile.in | 41 +++++++++++++++++++++++++++++++++++++++ gdb/ChangeLog | 4 ++++ gdb/Makefile.in | 4 +++- gdb/doc/ChangeLog | 7 +++++++ gdb/doc/Makefile.in | 32 +++++++++++++++++++++++++++++- gdb/doc/refcard.tex | 6 +++++- gdb/gdbserver/ChangeLog | 4 ++++ gdb/gdbserver/Makefile.in | 3 ++- gdb/testsuite/ChangeLog | 4 ++++ gdb/testsuite/Makefile.in | 2 ++ readline/ChangeLog.gdb | 4 ++++ readline/Makefile.in | 2 +- sim/ChangeLog | 4 ++++ sim/Makefile.in | 1 + 15 files changed, 117 insertions(+), 5 deletions(-) diff --git a/etc/ChangeLog b/etc/ChangeLog index 8cfab9d69c8..ecddf2a6cc4 100644 --- a/etc/ChangeLog +++ b/etc/ChangeLog @@ -1,3 +1,7 @@ +2007-03-27 Brooks Moses + + * Makefile.in: Add support for "pdf" and "install-pdf" targets. + 2006-12-19 Paolo Bonzini * configure.texi: Fix botched commit. diff --git a/etc/Makefile.in b/etc/Makefile.in index 7d0607d960c..9642e076c1d 100644 --- a/etc/Makefile.in +++ b/etc/Makefile.in @@ -28,6 +28,7 @@ man9dir = $(mandir)/man9 datarootdir = @datarootdir@ docdir = @docdir@ infodir = @infodir@ +pdfdir = @docdir@ htmldir = @htmldir@ SHELL = /bin/sh @@ -42,6 +43,9 @@ MAKEINFO = `if [ -f ../texinfo/makeinfo/makeinfo ]; \ TEXI2DVI = `if [ -f ../texinfo/util/texi2dvi ]; \ then echo ../texinfo/util/texi2dvi; \ else echo texi2dvi; fi` +TEXI2PDF = `if [ -f ../texinfo/util/texi2dvi ]; \ + then echo "../texinfo/util/texi2dvi --pdf"; \ + else echo "texi2dvi --pdf"; fi` TEXI2HTML = `if [ -f ../texinfo/makeinfo/makeinfo ]; \ then echo "../texinfo/makeinfo/makeinfo --html"; \ else echo "makeinfo --html"; fi` @@ -56,6 +60,7 @@ TEXIDIR = $(srcdir)/../texinfo INFOFILES = standards.info configure.info DVIFILES = standards.dvi configure.dvi +PDFFILES = standards.pdf configure.pdf HTMLFILES = standards.html configure.html all: info @@ -126,6 +131,32 @@ dvi: fi; \ done +pdf: + for f in $(PDFFILES); do \ + if test -f $(srcdir)/`echo $$f | sed -e 's/.pdf$$/.texi/'`; then \ + if $(MAKE) "TEXI2PDF=$(TEXI2PDF)" $$f; then \ + true; \ + else \ + exit 1; \ + fi; \ + fi; \ + done + +install-pdf: pdf + $(SHELL) $(srcdir)/../mkinstalldirs $(DESTDIR)$(pdfdir)/etc + if test ! -f standards.pdf; then cd $(srcdir); fi; \ + if test -f standards.pdf; then \ + for i in standards.pdf*; do \ + $(INSTALL_DATA) $$i $(DESTDIR)$(pdfdir)/etc/$$i; \ + done; \ + fi + if test ! -f configure.pdf; then cd $(srcdir); fi; \ + if test -f configure.pdf; then \ + for i in configure.pdf*; do \ + $(INSTALL_DATA) $$i $(DESTDIR)$(pdfdir)/etc/$$i; \ + done; \ + fi + standards.info: $(srcdir)/standards.texi $(srcdir)/make-stds.texi $(MAKEINFO) --no-split -I$(srcdir) -o standards.info $(srcdir)/standards.texi @@ -138,6 +169,9 @@ standards.dvi: $(srcdir)/standards.texi standards.ps: standards.dvi $(DVIPS) standards.dvi -o standards.ps +standards.pdf: $(srcdir)/standards.texi + TEXINPUTS=$(TEXIDIR):$$TEXINPUTS $(TEXI2PDF) $(srcdir)/standards.texi + # makeinfo requires images to be in the current directory. configure.info: $(srcdir)/configure.texi $(srcdir)/configdev.tin $(srcdir)/configbuild.tin rm -f configdev.txt configbuild.txt @@ -166,6 +200,13 @@ configure.ps: configure.dvi $(srcdir)/configdev.ein $(srcdir)/configbuild.ein $(DVIPS) configure.dvi -o configure.ps rm -f configdev.eps configbuild.eps +configure.pdf: $(srcdir)/configure.texi $(srcdir)/configdev.tin $(srcdir)/configbuild.tin $(srcdir)/configdev.ein $(srcdir)/configbuild.ein + rm -f configdev.pdf configbuild.pdf + epstopdf $(srcdir)/configdev.ein -outfile=configdev.pdf + epstopdf $(srcdir)/configbuild.ein -outfile=configbuild.pdf + TEXINPUTS=$(TEXIDIR):$$TEXINPUTS $(TEXI2PDF) $(srcdir)/configure.texi + rm -f configdev.pdf configbuild.pdf + configure.html: $(srcdir)/configure.texi cp $(srcdir)/configdev.jin configdev.jpg cp $(srcdir)/configbuild.jin configbuild.jpg diff --git a/gdb/ChangeLog b/gdb/ChangeLog index bdb281fa4c6..b69d208eb31 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2007-03-27 Brooks Moses + + * Makefile.in: Add support for a "pdf" target. + 2007-03-27 Daniel Jacobowitz * amd64-tdep.c (amd64_init_frame_cache): New function. diff --git a/gdb/Makefile.in b/gdb/Makefile.in index 041f2ebefa8..199715c2097 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in @@ -42,6 +42,7 @@ man7dir = $(mandir)/man7 man8dir = $(mandir)/man8 man9dir = $(mandir)/man9 infodir = @infodir@ +pdfdir = $(prefix)/share/doc/gdb htmldir = $(prefix)/html includedir = @includedir@ @@ -435,6 +436,7 @@ FLAGS_TO_PASS = \ "prefix=$(prefix)" \ "exec_prefix=$(exec_prefix)" \ "infodir=$(infodir)" \ + "pdfdir=$(pdfdir)" \ "libdir=$(libdir)" \ "mandir=$(mandir)" \ "datadir=$(datadir)" \ @@ -1055,7 +1057,7 @@ check//%: force "$$target"; \ else true; fi -info dvi install-info clean-info html install-html: force +info install-info clean-info dvi pdf install-pdf html install-html: force @$(MAKE) $(FLAGS_TO_PASS) DO=$@ "DODIRS=$(SUBDIRS)" subdir_do gdb.z:gdb.1 diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index ad8c031c708..61d07089d52 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,3 +1,10 @@ +2007-03-27 Brooks Moses + + * Makefile.in: Add "pdfdir" installation + directory, PDFTEX macro, support for "install-pdf" target, + and rules for making a pdf version of refcard.texi. + * refcard.tex: Specify paper size for PDF output. + 2007-03-26 Bob Wilson * gdb.texinfo (Omissions from Ada, Additions to Ada): Wrap long lines. diff --git a/gdb/doc/Makefile.in b/gdb/doc/Makefile.in index 2f5eed5c24b..e15939a912b 100644 --- a/gdb/doc/Makefile.in +++ b/gdb/doc/Makefile.in @@ -24,6 +24,7 @@ VPATH = @srcdir@ prefix = @prefix@ infodir = @infodir@ +pdfdir = $(prefix)/share/doc/gdb htmldir = $(prefix)/html SHELL = @SHELL@ @@ -34,6 +35,8 @@ INSTALL = @INSTALL@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ +mkinstalldirs = $(SHELL) $(srcdir)/../../mkinstalldirs + # main GDB source directory gdbdir = $(srcdir)/.. @@ -69,6 +72,9 @@ SET_TEXINPUTS = \ # Files which should be generated via 'info' and installed by 'install-info' INFO_DEPS = gdb.info gdbint.info stabs.info annotate.info +# Files which should be generated via 'pdf' and installed by 'install-pdf' +PDFFILES = gdb.pdf gdbint.pdf stabs.pdf refcard.pdf annotate.pdf + # There may be alternate predefined collections of switches to configure # the GDB manual. Normally this is not done in synch with the software # config system, since this choice tends to be independent; most people @@ -92,6 +98,7 @@ REFEDITS = # Don Knuth's TeX formatter TEX = tex +PDFTEX = pdftex # Program to generate Postscript files from DVI files. DVIPS = dvips @@ -151,7 +158,7 @@ info: $(INFO_DEPS) dvi: gdb.dvi gdbint.dvi stabs.dvi refcard.dvi annotate.dvi ps: gdb.ps gdbint.ps stabs.ps refcard.ps annotate.ps html: gdb_toc.html gdbint_toc.html stabs_toc.html annotate_toc.html -pdf: gdb.pdf gdbint.pdf stabs.pdf annotate.pdf +pdf: $(PDFFILES) all-doc: info dvi ps # pdf diststuff: info @@ -197,6 +204,18 @@ install-html: html $(INSTALL_DATA) $$i $(DESTDIR)$(htmldir)/$$i ; \ done +pdf__strip_dir = `echo $$p | sed -e 's|^.*/||'`; + +install-pdf: $(PDFFILES) + @$(NORMAL_INSTALL) + test -z "$(pdfdir)" || $(mkinstalldirs) "$(DESTDIR)$(pdfdir)" + @list='$(PDFFILES)'; for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + f=$(pdf__strip_dir) \ + echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(pdfdir)/$$f'"; \ + $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(pdfdir)/$$f"; \ + done + STAGESTUFF = *.info* gdb-all.texi GDBvn.texi *.ps *.dvi *.pdf # Copy the object files from a particular stage into a subdirectory. @@ -244,6 +263,17 @@ refcard.dvi : refcard.tex $(REFEDITS) refcard.ps : refcard.dvi $(DVIPS) -t landscape -o $@ $? +refcard.pdf : refcard.tex $(REFEDITS) + echo > tmp.sed + for f in x $(REFEDITS) ; do \ + test x$$f = xx && continue ; \ + cat $(srcdir)/$$f >>tmp.sed ; \ + done + sed -f tmp.sed $(srcdir)/refcard.tex >sedref.tex + $(SET_TEXINPUTS) $(PDFTEX) sedref.tex + mv sedref.pdf refcard.pdf + rm -f sedref.log sedref.tex tmp.sed + # File to record current GDB version number (copied from main dir version.in) GDBvn.texi : ${gdbdir}/version.in echo "@set GDBVN `sed q $(srcdir)/../version.in`" > ./GDBvn.new diff --git a/gdb/doc/refcard.tex b/gdb/doc/refcard.tex index f6f0a0f1f6b..6d4830275ae 100644 --- a/gdb/doc/refcard.tex +++ b/gdb/doc/refcard.tex @@ -1,7 +1,7 @@ %%%%%%%%%%%%%%%% gdb-refcard.tex %%%%%%%%%%%%%%%% %This file is TeX source for a reference card describing GDB, the GNU debugger. -%Copyright (C) 1991, 1992, 1993, 1996, 1998, 1999, 2000 +%Copyright (C) 1991, 1992, 1993, 1996, 1998, 1999, 2000, 2007 %Free Software Foundation, Inc. %Permission is granted to make and distribute verbatim copies of %this reference provided the copyright notices and permission notices @@ -98,6 +98,10 @@ \vmargin=.25in % vertical margin width \secskip=1pc % space between refcard secs \lskip=2pt % extra skip between \sec entries +\ifx\pdfoutput\undefined\else % check if we are using pdfTeX + \pdfpagewidth=\totalwidth % width of paper in pdf output + \pdfpageheight=\totalheight % height of paper in pdf output +\fi %------- end papersize params %% %% change according to personal taste, not papersize dependent diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index 4d60b8760f4..eb596801d0e 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,3 +1,7 @@ +2007-03-27 Brooks Moses + + * Makefile.in: Add dummy "pdf" and "install-pdf" targets. + 2007-02-27 Daniel Jacobowitz * terminal.h: Check HAVE_SGTTY_H. diff --git a/gdb/gdbserver/Makefile.in b/gdb/gdbserver/Makefile.in index dfb08032ffa..5b2a3ed0e2e 100644 --- a/gdb/gdbserver/Makefile.in +++ b/gdb/gdbserver/Makefile.in @@ -177,8 +177,9 @@ uninstall: force installcheck: check: -info dvi: +info dvi pdf: install-info: +install-pdf: html: install-html: clean-info: diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index bc82912d630..3d3af041411 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2007-03-27 Brooks Moses + + * Makefile.in: Add dummy "pdf" and "install-pdf" targets. + 2007-03-27 Daniel Jacobowitz * config/gdbserver.exp (gdbserver_gdb_load): Update argument list. diff --git a/gdb/testsuite/Makefile.in b/gdb/testsuite/Makefile.in index 44dc0a1336b..edcd35cfb42 100644 --- a/gdb/testsuite/Makefile.in +++ b/gdb/testsuite/Makefile.in @@ -91,6 +91,8 @@ INFODIRS=doc info: install-info: dvi: +pdf: +install-pdf: html: install-html: diff --git a/readline/ChangeLog.gdb b/readline/ChangeLog.gdb index 67514730306..e185fdfadc0 100644 --- a/readline/ChangeLog.gdb +++ b/readline/ChangeLog.gdb @@ -1,3 +1,7 @@ +2007-03-27 Brooks Moses + + * Makefile.in: Add dummy "pdf" target. + 2006-11-13 Denis Pilat * terminal.c (_rl_get_screen_size): use wr and wc variable to store diff --git a/readline/Makefile.in b/readline/Makefile.in index e14318b54cb..acf706f0e2e 100644 --- a/readline/Makefile.in +++ b/readline/Makefile.in @@ -297,7 +297,7 @@ distclean maintainer-clean: clean $(RM) $(CREATED_CONFIGURE) $(RM) $(CREATED_TAGS) -info dvi: +info dvi pdf: -( cd doc && $(MAKE) $(MFLAGS) $@ ) install-info: diff --git a/sim/ChangeLog b/sim/ChangeLog index f34b86250db..6f110ef5bb2 100644 --- a/sim/ChangeLog +++ b/sim/ChangeLog @@ -1,3 +1,7 @@ +2007-03-27 Brooks Moses + + * Makefile.in: Add dummy "pdf" target. + 2007-02-20 Hans-Peter Nilsson * cris/traps.c (dump_statistics): Change format for cycle numbers diff --git a/sim/Makefile.in b/sim/Makefile.in index 86f08e483f6..c7a37febc4e 100644 --- a/sim/Makefile.in +++ b/sim/Makefile.in @@ -186,6 +186,7 @@ check: force info: install-info: dvi: +pdf: ### ### -- 2.34.1