X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=doc%2Fautomake.mk;h=37a62153cb53c02e65b055ecb104d2b0116a0328;hb=6014da385d5f3f2a3971f0049d2d54c0dc6e95f8;hp=d5fb00b62377396c43f2f947a04c073d6dbf124c;hpb=02a682272552710b1c4c869db3fea1d83b0eb3a7;p=pspp diff --git a/doc/automake.mk b/doc/automake.mk index d5fb00b623..37a62153cb 100644 --- a/doc/automake.mk +++ b/doc/automake.mk @@ -1,6 +1,22 @@ +## PSPP - a program for statistical analysis. +## Copyright (C) 2019, 2020 Free Software Foundation, Inc. +## +## This program is free software: you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation, either version 3 of the License, or +## (at your option) any later version. +## +## This program is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. +## +## You should have received a copy of the GNU General Public License +## along with this program. If not, see . + ## Process this file with automake to produce Makefile.in -*- makefile -*- -info_TEXINFOS = doc/pspp.texinfo doc/pspp-dev.texinfo +info_TEXINFOS = doc/pspp.texi doc/pspp-dev.texi doc_pspp_TEXINFOS = doc/version.texi \ doc/bugs.texi \ @@ -19,6 +35,8 @@ doc_pspp_TEXINFOS = doc/version.texi \ doc/language.texi \ doc/license.texi \ doc/pspp-convert.texi \ + doc/pspp-output.texi \ + doc/pspp-dump-sav.texi \ doc/ni.texi \ doc/not-implemented.texi \ doc/statistics.texi \ @@ -28,7 +46,7 @@ doc_pspp_TEXINFOS = doc/version.texi \ doc/regression.texi \ doc/utilities.texi \ doc/variables.texi \ - doc/fdl.texi + doc/fdl.texi doc_pspp_dev_TEXINFOS = doc/version-dev.texi \ doc/dev/intro.texi \ @@ -38,51 +56,179 @@ doc_pspp_dev_TEXINFOS = doc/version-dev.texi \ doc/dev/i18n.texi \ doc/dev/output.texi \ doc/dev/system-file-format.texi \ + doc/dev/pc+-file-format.texi \ doc/dev/portable-file-format.texi \ + doc/dev/spv-file-format.texi \ + doc/dev/tlo-file-format.texi \ + doc/dev/encrypted-file-wrappers.texi \ doc/dev/q2c.texi -EXTRA_DIST += doc/pspp.man \ - doc/get-commands.pl +dist_man_MANS += doc/pspp.1 \ + doc/psppire.1 + +EXTRA_DIST += doc/get-commands.pl \ + doc/help-pages-list \ + doc/prepdoc.sh $(srcdir)/doc/ni.texi: $(top_srcdir)/src/language/command.def doc/get-commands.pl - @$(MKDIR_P) doc - $(PERL) $(top_srcdir)/doc/get-commands.pl $(top_srcdir)/src/language/command.def > $@ + $(AM_V_GEN)$(PERL) $(top_srcdir)/doc/get-commands.pl $(top_srcdir)/src/language/command.def > $@ $(srcdir)/doc/tut.texi: - @$(MKDIR_P) doc - echo "@set example-dir $(examplesdir)" > $@ - - -# The SED and AWK filters in this rule, are to work-around some nasty bugs in makeinfo version 4.13, which produces -# broken docbook xml. These workarounds are rather horrible and must be removed asap. -$(srcdir)/doc/pspp.xml: doc/pspp.texinfo $(doc_pspp_TEXINFOS) - @$(MKDIR_P) doc - $(MAKEINFO) $(AM_MAKEINFOFLAGS) --docbook -I $(top_srcdir) \ - $(top_srcdir)/doc/pspp.texinfo -o - \ - | $(SED) -e 's/Time-&-Date/Time-\&-Date/g' \ - -e 's/“/\“/g' \ - -e 's/”/\”/g' \ - -e 's/‘/\‘/g' \ - -e 's/’/\’/g' \ - -e 's/—/\—/g' \ - -e 's/–/\′/g' \ - -e 's/é/\é/g' \ - -e 's/©/\©/g' \ - -e 's/−/\−/g' \ - -e 's/…/\…/g' \ - -e 's/•/\ߦ/g' \ - -e 's/././g' \ - -e 's%\(
]*\)>%\1/>%g' \ - | $(AWK) '/.*.*<\/para>/{x=sub("",""); print; s=1;next}/<\/table>/{print; if (s==1) print ""; s=0; next}1' \ - > $@ - $(XMLLINT) --output /dev/null $@ || ( $(RM) $@ ; false) + $(AM_V_GEN)echo "@set example-dir $(examplesdir)" > $@ + + +doc/pspp.xml: doc/pspp.texi $(doc_pspp_TEXINFOS) doc/help-pages-list +if BROKEN_DOCBOOK_XML + touch $@ +else + $(AM_V_GEN)$(MAKEINFO) $(AM_MAKEINFOFLAGS) --docbook -I $(top_srcdir) \ + $< -o $@ +endif docbookdir = $(docdir) dist_docbook_DATA = doc/pspp.xml - -EXTRA_DIST += doc/OChangeLog -CLEANFILES += pspp-dev.dvi $(docbook_DATA) + +CLEANFILES += pspp-dev.dvi $(docbook_DATA) doc/pspp.info* doc/pspp.xml + doc: $(INFO_DEPS) $(DVIS) $(PDFS) $(PSS) $(HTMLS) $(dist_docbook_DATA) -.PHONY: doc +PHONY += doc + +doc/help-pages-list: $(UI_FILES) + $(AM_V_GEN)cat $^ | grep '"help[-_]page"' | \ + $(SED) -e 's% *\([^<]*\)%//*[@id='"'"'\1'"'"']%' \ + -e 's%#%'"'"']/*[@id='"'"'%g' > $@,tmp + test -s $@,tmp + mv $@,tmp $@ + +EXTRA_DIST += \ + doc/help-pages-list \ + doc/pspp-manual.css + + +AM_MAKEINFOFLAGS=-I $(top_srcdir)/doc/pspp-figures -I $(top_builddir)/doc/pspp-figures +am__TEXINFO_TEX_DIR=:$(top_srcdir)/doc/pspp-figures:$(top_builddir)/doc/pspp-figures + +################# Example programs ############################## + +FIGURE_SYNTAX = \ + doc/pspp-figures/autorecode.sps \ + doc/pspp-figures/chisquare.sps \ + doc/pspp-figures/compute.sps \ + doc/pspp-figures/count.sps \ + doc/pspp-figures/descriptives.sps \ + doc/pspp-figures/flip.sps \ + doc/pspp-figures/frequencies.sps \ + doc/pspp-figures/means.sps \ + doc/pspp-figures/one-sample-t.sps \ + doc/pspp-figures/independent-samples-t.sps \ + doc/pspp-figures/reliability.sps \ + doc/pspp-figures/split.sps \ + doc/pspp-figures/tutorial1.sps \ + doc/pspp-figures/tutorial2.sps \ + doc/pspp-figures/tutorial3.sps \ + doc/pspp-figures/tutorial4.sps \ + doc/pspp-figures/tutorial5.sps \ + doc/pspp-figures/tutorial6.sps \ + doc/pspp-figures/tutorial7.sps \ + doc/pspp-figures/weight.sps + + +EXTRA_DIST += $(FIGURE_SYNTAX) + +FIGURE_SPVS = $(FIGURE_SYNTAX:.sps=.spv) \ + doc/pspp-figures/tutorial2a.spv \ + doc/pspp-figures/tutorial2b.spv \ + doc/pspp-figures/tutorial5a.spv \ + doc/pspp-figures/tutorial5b.spv \ + doc/pspp-figures/tutorial7a.spv \ + doc/pspp-figures/tutorial7b.spv +FIGURE_TXTS = $(FIGURE_SPVS:.spv=.txt) +FIGURE_TEXIS = $(FIGURE_TXTS:.txt=.texi) +FIGURE_HTML = $(FIGURE_SPVS:.spv=.html) +FIGURE_PDF = $(FIGURE_SPVS:.spv=.pdf) + +figure-spv: $(FIGURE_SPVS) +figure-txts: $(FIGURE_TXTS) +figure-texis: $(FIGURE_TEXIS) +figure-html: $(FIGURE_HTML) +figure-pdf: $(FIGURE_PDF) +PHONY += figure-spv figure-txts figure-texis figure-html figure-pdf + +$(top_builddir)/doc/pspp.info: $(FIGURE_TEXIS) +$(top_builddir)/doc/pspp.ps: $(FIGURE_TEXIS) +$(top_builddir)/doc/pspp.dvi: $(FIGURE_TEXIS) +$(top_builddir)/doc/pspp.html: $(FIGURE_HTML) +$(top_builddir)/doc/pspp.pdf: $(FIGURE_TEXIS) +$(top_builddir)/doc/pspp.xml: $(FIGURE_TEXIS) + +CLEANFILES += $(FIGURE_TXTS) $(FIGURE_SPVS) $(FIGURE_TEXIS) $(FIGURE_HTML) +SUFFIXES += .sps .spv .txt .html .texi .pdf + +# Use pspp to process a syntax file into an output file. +pspp = src/ui/terminal/pspp +$(FIGURE_SPVS): $(pspp)$(EXEEXT) +.sps.spv: + $(AM_V_GEN)(cd $(top_srcdir)/examples \ + && $(abs_top_builddir)/$(pspp) ../doc/pspp-figures/$( $@.tmp + $(AM_V_at)mv $@.tmp $@ + +# In some cases, the tutorial only wants some parts of the output. +pspp_output = utilities/pspp-output +convert = $(AM_V_GEN)$(pspp_output) convert $< $@ +doc/pspp-figures/tutorial2a.spv: doc/pspp-figures/tutorial2.spv $(pspp_output) + $(convert) --command='Descriptives' +doc/pspp-figures/tutorial2b.spv: doc/pspp-figures/tutorial2.spv $(pspp_output) + $(convert) --label='Extreme Values' +doc/pspp-figures/tutorial5a.spv: doc/pspp-figures/tutorial5.spv $(pspp_output) + $(convert) --commands=examine --nth-command=1 --labels=descriptives +doc/pspp-figures/tutorial5b.spv: doc/pspp-figures/tutorial5.spv $(pspp_output) + $(convert) --commands=examine --nth-command=2 --labels=descriptives +doc/pspp-figures/tutorial7a.spv: doc/pspp-figures/tutorial7.spv $(pspp_output) + $(convert) --commands=regression --nth-command=1 --subtypes=coefficients +doc/pspp-figures/tutorial7b.spv: doc/pspp-figures/tutorial7.spv $(pspp_output) + $(convert) --commands=regression --nth-command=2 --subtypes=coefficients + +# Convert an output file into a text file or HTML file. +$(FIGURE_TXTS) $(FIGURE_HTML): $(pspp_output) +.spv.txt: + $(AM_V_GEN)utilities/pspp-output convert $< $@ +.spv.pdf: + $(AM_V_GEN)utilities/pspp-output convert $< $@ -O left-margin=0pt -O right-margin=0pt -O top-margin=0pt -O bottom-margin=0pt -O paper-size=6x20in -O font-size=12000 --table-look=$(HOME)/pspp/spss15/Looks/report.tlo +.spv.html: + $(AM_V_GEN)utilities/pspp-output convert $< $@ -O format=html -O bare=true + +# Convert a text file into a Texinfo file. +.txt.texi: + $(AM_V_GEN)$(SED) -e 's/@/@@/g' $< > $@ + +AM_MAKEINFOHTMLFLAGS = $(AM_MAKEINFOFLAGS) --css-ref=pspp-manual.css +html-local: + +install-html-local: html-local + $(MKDIR_P) $(DESTDIR)$(prefix)/share/doc/pspp/pspp.html + $(INSTALL_DATA) ${top_srcdir}/doc/pspp-manual.css $(DESTDIR)$(prefix)/share/doc/pspp/pspp.html + + + + +desktopdir = $(datadir)/applications + +doc/org.fsf.pspp.metainfo.xml: doc/org.fsf.pspp.metainfo.xml.in $(POFILES) + $(AM_V_GEN)$(MSGFMT) --xml --template $< -o $@ -d $(top_srcdir)/po || \ + $(MSGFMT) -L appdata --xml --template $< -o $@ -d $(top_srcdir)/po + +doc/org.fsf.pspp.desktop: doc/org.fsf.pspp.desktop.in $(POFILES) + $(AM_V_GEN)$(MSGFMT) --desktop --template $< -o $@ -d $(top_srcdir)/po + +CLEANFILES+=doc/org.fsf.pspp.desktop \ + doc/org.fsf.pspp.metainfo.xml + +desktop_DATA = doc/org.fsf.pspp.desktop + +appdatadir = $(datadir)/metainfo +dist_appdata_DATA = doc/org.fsf.pspp.metainfo.xml + +EXTRA_DIST += doc/org.fsf.pspp.metainfo.xml.in \ + doc/org.fsf.pspp.desktop.in