mirror of
https://github.com/qpdf/qpdf.git
synced 2024-12-22 10:58:58 +00:00
Update documentation build/installation
This commit is contained in:
parent
eb20b4d0cb
commit
426b4ce856
37
.github/workflows/main.yml
vendored
37
.github/workflows/main.yml
vendored
@ -19,21 +19,20 @@ on:
|
|||||||
# have reliable testing.
|
# have reliable testing.
|
||||||
- cron: '12 4 * * 5'
|
- cron: '12 4 * * 5'
|
||||||
jobs:
|
jobs:
|
||||||
Distfiles:
|
Prebuild:
|
||||||
# Generate distfiles.zip, which is a prerequisite for the mac and
|
# Run steps that are needed by the Windows build but are easier to
|
||||||
# Windows builds. Only the mac and Windows builds actually "need"
|
# build on Linux. Although only the Windows builds need this,
|
||||||
# it, but declaring all the jobs to need it forces it to run
|
# other jobs depend on it to force it to run early.
|
||||||
# first.
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: 'Create distfiles.zip'
|
- name: 'Run pre-build steps'
|
||||||
run: build-scripts/make-distfiles
|
run: build-scripts/prebuild
|
||||||
- name: 'Upload extra distribution files'
|
- name: 'Upload extra distribution files'
|
||||||
uses: actions/upload-artifact@v1
|
uses: actions/upload-artifact@v1
|
||||||
with:
|
with:
|
||||||
name: distfiles
|
name: doc
|
||||||
path: distfiles.zip
|
path: doc.zip
|
||||||
- name: 'Upload external libs'
|
- name: 'Upload external libs'
|
||||||
uses: actions/upload-artifact@v1
|
uses: actions/upload-artifact@v1
|
||||||
with:
|
with:
|
||||||
@ -52,7 +51,7 @@ jobs:
|
|||||||
path: distribution
|
path: distribution
|
||||||
Windows:
|
Windows:
|
||||||
runs-on: windows-latest
|
runs-on: windows-latest
|
||||||
needs: Distfiles
|
needs: Prebuild
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
max-parallel: 4
|
max-parallel: 4
|
||||||
@ -64,10 +63,10 @@ jobs:
|
|||||||
shell: bash
|
shell: bash
|
||||||
run: git config --global core.autocrlf input
|
run: git config --global core.autocrlf input
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: 'Download distribution files'
|
- name: 'Download documentation'
|
||||||
uses: actions/download-artifact@v2
|
uses: actions/download-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: distfiles
|
name: doc
|
||||||
path: .
|
path: .
|
||||||
- name: 'Download external libs'
|
- name: 'Download external libs'
|
||||||
uses: actions/download-artifact@v2
|
uses: actions/download-artifact@v2
|
||||||
@ -84,13 +83,9 @@ jobs:
|
|||||||
path: distribution
|
path: distribution
|
||||||
macOS:
|
macOS:
|
||||||
runs-on: macos-latest
|
runs-on: macos-latest
|
||||||
needs: Distfiles
|
needs: Prebuild
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: 'Download distribution files'
|
|
||||||
uses: actions/download-artifact@v2
|
|
||||||
with:
|
|
||||||
name: distfiles
|
|
||||||
- name: 'Download external libs'
|
- name: 'Download external libs'
|
||||||
uses: actions/download-artifact@v2
|
uses: actions/download-artifact@v2
|
||||||
with:
|
with:
|
||||||
@ -100,7 +95,7 @@ jobs:
|
|||||||
run: build-scripts/build-mac
|
run: build-scripts/build-mac
|
||||||
AppImage:
|
AppImage:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: Distfiles
|
needs: Prebuild
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: 'Build AppImage'
|
- name: 'Build AppImage'
|
||||||
@ -112,21 +107,21 @@ jobs:
|
|||||||
path: distribution
|
path: distribution
|
||||||
Linux32:
|
Linux32:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: Distfiles
|
needs: Prebuild
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: 'Linux 32-bit'
|
- name: 'Linux 32-bit'
|
||||||
run: build-scripts/build-linux32
|
run: build-scripts/build-linux32
|
||||||
Fuzzers:
|
Fuzzers:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: Distfiles
|
needs: Prebuild
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: 'Build Fuzzer'
|
- name: 'Build Fuzzer'
|
||||||
run: build-scripts/build-fuzzer
|
run: build-scripts/build-fuzzer
|
||||||
Sanitizers:
|
Sanitizers:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: Distfiles
|
needs: Prebuild
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: 'Sanitizer Tests'
|
- name: 'Sanitizer Tests'
|
||||||
|
2
.gitignore
vendored
2
.gitignore
vendored
@ -5,8 +5,8 @@ autoconf.mk
|
|||||||
autom4te.cache/
|
autom4te.cache/
|
||||||
config.log
|
config.log
|
||||||
config.status
|
config.status
|
||||||
distfiles.zip
|
|
||||||
doc
|
doc
|
||||||
|
doc.zip
|
||||||
examples/build/
|
examples/build/
|
||||||
external-libs
|
external-libs
|
||||||
fuzz/build/
|
fuzz/build/
|
||||||
|
9
Makefile
9
Makefile
@ -97,23 +97,16 @@ $(foreach B,$(BUILD_ITEMS),$(eval \
|
|||||||
clean_$(B): ; \
|
clean_$(B): ; \
|
||||||
$(RM) -r $(B)/$(OUTPUT_DIR)))
|
$(RM) -r $(B)/$(OUTPUT_DIR)))
|
||||||
|
|
||||||
DISTFILES = doc/qpdf-manual.html doc/qpdf-manual.pdf
|
|
||||||
distfiles.zip: $(DISTFILES)
|
|
||||||
$(RM) distfiles.zip
|
|
||||||
zip -r distfiles.zip $(DISTFILES) doc/_static
|
|
||||||
|
|
||||||
distclean: clean
|
distclean: clean
|
||||||
$(RM) -r autoconf.mk autom4te.cache config.log config.status libtool
|
$(RM) -r autoconf.mk autom4te.cache config.log config.status libtool
|
||||||
$(RM) libqpdf/qpdf/qpdf-config.h
|
$(RM) libqpdf/qpdf/qpdf-config.h
|
||||||
$(RM) manual/html.xsl
|
$(RM) manual/html.xsl
|
||||||
$(RM) manual/print.xsl
|
$(RM) manual/print.xsl
|
||||||
$(RM) doc/*.1
|
|
||||||
$(RM) libqpdf.pc libqpdf.map
|
$(RM) libqpdf.pc libqpdf.map
|
||||||
|
|
||||||
maintainer-clean: distclean
|
maintainer-clean: distclean
|
||||||
$(RM) doc/qpdf-manual.*
|
|
||||||
$(RM) -r install-mingw* install-msvc* external-libs
|
$(RM) -r install-mingw* install-msvc* external-libs
|
||||||
$(RM) distfiles.zip
|
$(RM) -rf doc
|
||||||
|
|
||||||
.PHONY: $(TEST_TARGETS)
|
.PHONY: $(TEST_TARGETS)
|
||||||
|
|
||||||
|
@ -119,7 +119,7 @@ RELEASE PREPARATION
|
|||||||
git --no-pager grep -i -n -P "copyright.*$(expr $(date +%Y) - 1).*berkenbilt"
|
git --no-pager grep -i -n -P "copyright.*$(expr $(date +%Y) - 1).*berkenbilt"
|
||||||
|
|
||||||
Also update the copyright in these places:
|
Also update the copyright in these places:
|
||||||
* manual
|
* manual/conf.py
|
||||||
* debian package -- search for copyright.*berkenbilt in debian/copyright
|
* debian package -- search for copyright.*berkenbilt in debian/copyright
|
||||||
* qtest-driver, TestDriver.pm in qtest source
|
* qtest-driver, TestDriver.pm in qtest source
|
||||||
|
|
||||||
@ -210,14 +210,12 @@ RELEASE PREPARATION
|
|||||||
* Make sure version numbers are consistent in the following locations:
|
* Make sure version numbers are consistent in the following locations:
|
||||||
* configure.ac
|
* configure.ac
|
||||||
* libqpdf/QPDF.cc
|
* libqpdf/QPDF.cc
|
||||||
* manual/qpdf-manual.xml
|
* manual/conf.py
|
||||||
* qpdf/qpdf.cc
|
* qpdf/qpdf.cc
|
||||||
`make_dist` verifies this consistency.
|
`make_dist` verifies this consistency.
|
||||||
|
|
||||||
* Update release notes in manual. Look at diffs and ChangeLog.
|
* Update release notes in manual. Look at diffs and ChangeLog.
|
||||||
Update release date in `manual/qpdf-manual.xml`. Remember to
|
Update release date in `manual/release-notes.rst`.
|
||||||
ensure that the entities at the top of the document are consistent
|
|
||||||
with the release notes for both version and release date.
|
|
||||||
|
|
||||||
* Add a release entry to ChangeLog: "x.y.z: release"
|
* Add a release entry to ChangeLog: "x.y.z: release"
|
||||||
|
|
||||||
@ -327,7 +325,7 @@ Template for release notes:
|
|||||||
```
|
```
|
||||||
This is qpdf version x.y.z. (Brief description)
|
This is qpdf version x.y.z. (Brief description)
|
||||||
|
|
||||||
For a full list of changes from previous releases, please see the [release notes](http://qpdf.sourceforge.net/files/qpdf-manual.html#release-notes). See also [README-what-to-download](./README-what-to-download.md) for details about the available source and binary distributions.
|
For a full list of changes from previous releases, please see the [release notes](https://qpdf.sourceforge.io/doc/html/release-notes.html). See also [README-what-to-download](./README-what-to-download.md) for details about the available source and binary distributions.
|
||||||
```
|
```
|
||||||
|
|
||||||
# Publish release
|
# Publish release
|
||||||
@ -348,7 +346,7 @@ rsync -vrlcO ./ jay_berkenbilt,qpdf@frs.sourceforge.net:/home/frs/project/q/qp/q
|
|||||||
|
|
||||||
(cd /tmp; mkdir -p z; cd z; \
|
(cd /tmp; mkdir -p z; cd z; \
|
||||||
tar xf ~/Q/storage/releases/qpdf/qpdf/$version/qpdf-$version.tar.gz qpdf-$version/doc; \
|
tar xf ~/Q/storage/releases/qpdf/qpdf/$version/qpdf-$version.tar.gz qpdf-$version/doc; \
|
||||||
scp -p qpdf-$version/doc/qpdf-* jay_berkenbilt,qpdf@frs.sourceforge.net:htdocs/files/)
|
rsync -avx --delete --force --exclude '*.1' qpdf-$version/doc/ jay_berkenbilt,qpdf@frs.sourceforge.net:htdocs/doc/)
|
||||||
|
|
||||||
* Upload the debian package and Ubuntu ppa backports.
|
* Upload the debian package and Ubuntu ppa backports.
|
||||||
|
|
||||||
|
@ -68,7 +68,7 @@ The PDF file format used to rely on RC4 for encryption. Using 256-bit keys alway
|
|||||||
|
|
||||||
# Building from a pristine checkout
|
# Building from a pristine checkout
|
||||||
|
|
||||||
When building qpdf from a pristine checkout from version control, generated documentation files are not present. You may either generate them (by passing `--enable-doc-maintenance` to `./configure` and satisfying the extra build-time dependencies) or obtain them from a released source package, which includes them. If you want to grab just the files that are in the source distribution but not in the repository, extract a source distribution in a temporary directory, and run `make CLEAN=1 distfiles.zip`. This will create a file called `distfiles.zip`, which can you can extract in a checkout of the source repository. This step is optional unless you are running make install and want the html and PDF versions of the documentation to be installed.
|
When building qpdf from a pristine checkout from version control, generated HTML and PDF documentation files are not present. You don't need them unless you are going to run `make install` and want the documentation to be installed. If you want them, you can either extract the `doc` directory from a source distribution, or you can satisfy the additional requirements for building documentation and pass `--enable-doc-maintenance` to `./configure`.
|
||||||
|
|
||||||
# Building from source distribution on UNIX/Linux
|
# Building from source distribution on UNIX/Linux
|
||||||
|
|
||||||
|
22
TODO
22
TODO
@ -1,8 +1,6 @@
|
|||||||
Next
|
Next
|
||||||
====
|
====
|
||||||
|
|
||||||
* Add spell check to CI
|
|
||||||
|
|
||||||
* High-level API/doc overhaul: #593
|
* High-level API/doc overhaul: #593
|
||||||
|
|
||||||
* Refactor test_driver.cc so that runtest is not one huge function.
|
* Refactor test_driver.cc so that runtest is not one huge function.
|
||||||
@ -19,24 +17,6 @@ Next
|
|||||||
thrown when an uninitialized trailer is accessed provides useful
|
thrown when an uninitialized trailer is accessed provides useful
|
||||||
information. Test from the C API as well as the C++ API.
|
information. Test from the C API as well as the C++ API.
|
||||||
|
|
||||||
Doc conversion
|
|
||||||
==============
|
|
||||||
|
|
||||||
Before release:
|
|
||||||
|
|
||||||
* Figure out what to do about the fact that the release notes are now
|
|
||||||
at #release-notes instead of #ref.release-notes. This invalidates
|
|
||||||
the link in all previous release announcements, but there's not much
|
|
||||||
I can do about, and it doesn't seem worth fixing. Maybe mention it
|
|
||||||
somewhere?
|
|
||||||
* README-maintainer: Fix installation of documentation to website
|
|
||||||
|
|
||||||
Soon:
|
|
||||||
|
|
||||||
* :ref: -- would be nice if it were suitable for printed documentation
|
|
||||||
* Decide about readthedocs; if using, with multiple versions/latest
|
|
||||||
* Generate stuff (options, code samples, etc.) as needed
|
|
||||||
|
|
||||||
Documentation
|
Documentation
|
||||||
=============
|
=============
|
||||||
|
|
||||||
@ -52,6 +32,8 @@ Documentation
|
|||||||
* See #530 -- add an appendix explaining PDF encryption in general
|
* See #530 -- add an appendix explaining PDF encryption in general
|
||||||
plus how it's handled by qpdf. Or maybe this should go on the wiki.
|
plus how it's handled by qpdf. Or maybe this should go on the wiki.
|
||||||
|
|
||||||
|
* Decide about readthedocs including supporting multiple released
|
||||||
|
versions of the docs and docs from main.
|
||||||
|
|
||||||
Document-level work
|
Document-level work
|
||||||
===================
|
===================
|
||||||
|
@ -8,9 +8,6 @@ cd jpeg-*
|
|||||||
make -k
|
make -k
|
||||||
sudo make install
|
sudo make install
|
||||||
cd ..
|
cd ..
|
||||||
if [ -f distfiles/distfiles.zip ]; then
|
|
||||||
unzip distfiles/distfiles.zip
|
|
||||||
fi
|
|
||||||
./configure --enable-werror --enable-show-failed-test-output
|
./configure --enable-werror --enable-show-failed-test-output
|
||||||
make -j$(nproc) -k
|
make -j$(nproc) -k
|
||||||
make -k check
|
make -k check
|
||||||
|
@ -20,7 +20,7 @@ if [[ $tool == mingw ]]; then
|
|||||||
elif [[ $tool == msvc ]]; then
|
elif [[ $tool == msvc ]]; then
|
||||||
cl
|
cl
|
||||||
fi
|
fi
|
||||||
unzip distfiles.zip
|
unzip doc.zip
|
||||||
unzip qpdf-external-libs-bin.zip
|
unzip qpdf-external-libs-bin.zip
|
||||||
cwd=`pwd`
|
cwd=`pwd`
|
||||||
PATH=$cwd/libqpdf/build:$PATH
|
PATH=$cwd/libqpdf/build:$PATH
|
||||||
|
@ -7,5 +7,6 @@ sudo apt-get -y install \
|
|||||||
python3-pip texlive-latex-extra latexmk inkscape imagemagick
|
python3-pip texlive-latex-extra latexmk inkscape imagemagick
|
||||||
pip3 install sphinx
|
pip3 install sphinx
|
||||||
./configure --enable-doc-maintenance
|
./configure --enable-doc-maintenance
|
||||||
make -j$(nproc) distfiles.zip
|
make -j$(nproc) build_manual
|
||||||
|
zip -r doc.zip doc/*html doc/*.pdf
|
||||||
build-scripts/download-external-libs
|
build-scripts/download-external-libs
|
@ -11,6 +11,7 @@
|
|||||||
"afdh",
|
"afdh",
|
||||||
"afdhph",
|
"afdhph",
|
||||||
"ageneration",
|
"ageneration",
|
||||||
|
"agogo",
|
||||||
"aitems",
|
"aitems",
|
||||||
"annots",
|
"annots",
|
||||||
"aobjid",
|
"aobjid",
|
||||||
@ -73,6 +74,7 @@
|
|||||||
"dctdecode",
|
"dctdecode",
|
||||||
"decrypter",
|
"decrypter",
|
||||||
"deduplicating",
|
"deduplicating",
|
||||||
|
"deps",
|
||||||
"destdir",
|
"destdir",
|
||||||
"dests",
|
"dests",
|
||||||
"devel",
|
"devel",
|
||||||
@ -80,7 +82,6 @@
|
|||||||
"diffutils",
|
"diffutils",
|
||||||
"directpagerefcount",
|
"directpagerefcount",
|
||||||
"distclean",
|
"distclean",
|
||||||
"distfiles",
|
|
||||||
"ditems",
|
"ditems",
|
||||||
"docbook",
|
"docbook",
|
||||||
"docdir",
|
"docdir",
|
||||||
@ -299,6 +300,7 @@
|
|||||||
"pluggable",
|
"pluggable",
|
||||||
"pngify",
|
"pngify",
|
||||||
"poppler",
|
"poppler",
|
||||||
|
"prebuild",
|
||||||
"precheck",
|
"precheck",
|
||||||
"prepended",
|
"prepended",
|
||||||
"prepending",
|
"prepending",
|
||||||
|
@ -17,11 +17,12 @@ installwin: all
|
|||||||
cp qpdf/$(OUTPUT_DIR)/fix-qdf.exe $(DEST)/bin
|
cp qpdf/$(OUTPUT_DIR)/fix-qdf.exe $(DEST)/bin
|
||||||
cp include/qpdf/*.h $(DEST)/include/qpdf
|
cp include/qpdf/*.h $(DEST)/include/qpdf
|
||||||
cp include/qpdf/*.hh $(DEST)/include/qpdf
|
cp include/qpdf/*.hh $(DEST)/include/qpdf
|
||||||
if [ -f doc/qpdf-manual.html ]; then \
|
|
||||||
mkdir $(DEST)/doc/_static; \
|
|
||||||
cp doc/qpdf-manual.html $(DEST)/doc; \
|
|
||||||
cp doc/_static/* $(DEST)/doc/_static; \
|
|
||||||
fi
|
|
||||||
if [ -f doc/qpdf-manual.pdf ]; then \
|
if [ -f doc/qpdf-manual.pdf ]; then \
|
||||||
cp doc/qpdf-manual.pdf $(DEST)/doc; \
|
cp doc/qpdf-manual.pdf $(DEST)/doc; \
|
||||||
fi
|
fi
|
||||||
|
if [ -d doc/html ]; then \
|
||||||
|
cp -r doc/html $(DEST)/doc; \
|
||||||
|
fi
|
||||||
|
if [ -d doc/singlehtml ]; then \
|
||||||
|
cp -r doc/singlehtml $(DEST)/doc; \
|
||||||
|
fi
|
||||||
|
@ -121,8 +121,6 @@ install-libs: build_libqpdf
|
|||||||
# NOTE: If installing any new executables, remember to update the
|
# NOTE: If installing any new executables, remember to update the
|
||||||
# lambda layer code in build-scripts/build-appimage.
|
# lambda layer code in build-scripts/build-appimage.
|
||||||
|
|
||||||
# NOTE: See comments in manual/build.mk about html documentation.
|
|
||||||
|
|
||||||
# Ensure that installwin in make/installwin.mk is consistent with
|
# Ensure that installwin in make/installwin.mk is consistent with
|
||||||
# this.
|
# this.
|
||||||
|
|
||||||
@ -139,12 +137,13 @@ install: all install-libs
|
|||||||
$(LIBTOOL) --mode=install ./install-sh \
|
$(LIBTOOL) --mode=install ./install-sh \
|
||||||
qpdf/$(OUTPUT_DIR)/fix-qdf \
|
qpdf/$(OUTPUT_DIR)/fix-qdf \
|
||||||
$(DESTDIR)$(bindir)/fix-qdf
|
$(DESTDIR)$(bindir)/fix-qdf
|
||||||
if [ -f doc/qpdf-manual.html ]; then \
|
|
||||||
./mkinstalldirs -m 0755 $(DESTDIR)$(docdir)/_static; \
|
|
||||||
./install-sh -m 0644 doc/qpdf-manual.html $(DESTDIR)$(docdir); \
|
|
||||||
./install-sh -m 0644 doc/_static/* $(DESTDIR)$(docdir)/_static; \
|
|
||||||
fi
|
|
||||||
if [ -f doc/qpdf-manual.pdf ]; then \
|
if [ -f doc/qpdf-manual.pdf ]; then \
|
||||||
./install-sh -m 0644 doc/qpdf-manual.pdf $(DESTDIR)$(docdir); \
|
./install-sh -m 0644 doc/qpdf-manual.pdf $(DESTDIR)$(docdir); \
|
||||||
fi
|
fi
|
||||||
|
if [ -d doc/html ]; then \
|
||||||
|
cp -r doc/html $(DESTDIR)/$(docdir); \
|
||||||
|
fi
|
||||||
|
if [ -d doc/singlehtml ]; then \
|
||||||
|
cp -r doc/singlehtml $(DESTDIR)/$(docdir); \
|
||||||
|
fi
|
||||||
./install-sh -m 0644 doc/*.1 $(DESTDIR)$(mandir)/man1
|
./install-sh -m 0644 doc/*.1 $(DESTDIR)$(mandir)/man1
|
||||||
|
@ -8,10 +8,10 @@ PDF_TARGET := $(PDF_OUT)/qpdf.pdf
|
|||||||
|
|
||||||
TARGETS_manual := doc/qpdf.1 doc/fix-qdf.1 doc/zlib-flate.1
|
TARGETS_manual := doc/qpdf.1 doc/fix-qdf.1 doc/zlib-flate.1
|
||||||
ifeq ($(BUILD_HTML),1)
|
ifeq ($(BUILD_HTML),1)
|
||||||
TARGETS_manual += doc/qpdf-manual.html $(HTML_TARGET)
|
TARGETS_manual += $(HTML_TARGET) $(S_HTML_TARGET)
|
||||||
endif
|
endif
|
||||||
ifeq ($(BUILD_PDF),1)
|
ifeq ($(BUILD_PDF),1)
|
||||||
TARGETS_manual += doc/qpdf-manual.pdf
|
TARGETS_manual += $(PDF_TARGET)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
MANUAL_DEPS = $(wildcard manual/*.rst) manual/conf.py
|
MANUAL_DEPS = $(wildcard manual/*.rst) manual/conf.py
|
||||||
@ -22,33 +22,20 @@ MANUAL_DEPS = $(wildcard manual/*.rst) manual/conf.py
|
|||||||
# the error "_pickle.UnpicklingError: pickle data was truncated"
|
# the error "_pickle.UnpicklingError: pickle data was truncated"
|
||||||
$(HTML_TARGET): $(MANUAL_DEPS)
|
$(HTML_TARGET): $(MANUAL_DEPS)
|
||||||
$(SPHINX) -M html manual $(DOC_OUT) -W
|
$(SPHINX) -M html manual $(DOC_OUT) -W
|
||||||
|
mkdir -p doc
|
||||||
|
rm -rf doc/html
|
||||||
|
cp -r $(DOC_OUT)/html doc
|
||||||
|
|
||||||
$(S_HTML_TARGET): $(MANUAL_DEPS) | $(HTML_TARGET)
|
$(S_HTML_TARGET): $(MANUAL_DEPS) | $(HTML_TARGET)
|
||||||
$(SPHINX) -M singlehtml manual $(DOC_OUT) -W
|
$(SPHINX) -M singlehtml manual $(DOC_OUT) -W
|
||||||
|
mkdir -p doc
|
||||||
|
rm -rf doc/singlehtml
|
||||||
|
cp -r $(DOC_OUT)/singlehtml doc
|
||||||
|
|
||||||
$(PDF_TARGET): $(MANUAL_DEPS) | $(S_HTML_TARGET) $(HTML_TARGET)
|
$(PDF_TARGET): $(MANUAL_DEPS) | $(S_HTML_TARGET) $(HTML_TARGET)
|
||||||
$(SPHINX) -M latexpdf manual $(DOC_OUT) -W
|
$(SPHINX) -M latexpdf manual $(DOC_OUT) -W
|
||||||
|
|
||||||
# This depends on sphinx-build's singlehtml target creating index.html
|
|
||||||
# and a _static directory. If that changes, this code has to be
|
|
||||||
# adjusted. It will also be necessary to adjust the install target in
|
|
||||||
# make/libtool.mk.
|
|
||||||
doc/qpdf-manual.html: $(S_HTML_TARGET)
|
|
||||||
mkdir -p doc
|
mkdir -p doc
|
||||||
@if [ "$(shell find $(S_HTML_OUT)/ -mindepth 1 -type d -print)" != \
|
cp $(PDF_TARGET) doc/qpdf-manual.pdf
|
||||||
"$(S_HTML_OUT)/_static" ]; then \
|
|
||||||
echo "***"; \
|
|
||||||
echo Expected only directory in $(S_HTML_OUT) to be _static; \
|
|
||||||
echo "***"; \
|
|
||||||
false; \
|
|
||||||
fi
|
|
||||||
cp $< $@
|
|
||||||
mkdir -p doc/_static
|
|
||||||
cp -p $(S_HTML_OUT)/_static/* doc/_static
|
|
||||||
|
|
||||||
doc/qpdf-manual.pdf: $(PDF_TARGET)
|
|
||||||
mkdir -p doc
|
|
||||||
cp $< $@
|
|
||||||
|
|
||||||
doc/%.1: manual/%.1.in
|
doc/%.1: manual/%.1.in
|
||||||
mkdir -p doc
|
mkdir -p doc
|
||||||
|
@ -14,5 +14,5 @@ the same file with stream lengths, cross-reference table entries, and
|
|||||||
object stream offset tables regenerated.
|
object stream offset tables regenerated.
|
||||||
.PP
|
.PP
|
||||||
For details about fix-qdf and about PDF files in QDF mode, please see
|
For details about fix-qdf and about PDF files in QDF mode, please see
|
||||||
the qpdf manual, which can be found in @docdir@/qpdf-manual.html or
|
the qpdf manual, which can be found in @docdir@/html/index.html or
|
||||||
@docdir@/qpdf-manual.pdf.
|
@docdir@/qpdf-manual.pdf.
|
||||||
|
@ -64,7 +64,7 @@ Pre-built documentation is distributed with qpdf, so you should
|
|||||||
generally not need to rebuild the documentation. In order to build the
|
generally not need to rebuild the documentation. In order to build the
|
||||||
documentation from source, you need to install `Sphinx
|
documentation from source, you need to install `Sphinx
|
||||||
<https://sphinx-doc.org>`__. To build the PDF version of the
|
<https://sphinx-doc.org>`__. To build the PDF version of the
|
||||||
documentation, you need `pdflatex`, `latexmk`, and a fairly complete
|
documentation, you need ``pdflatex``, ``latexmk``, and a fairly complete
|
||||||
LaTeX installation. Detailed requirements can be found in the Sphinx
|
LaTeX installation. Detailed requirements can be found in the Sphinx
|
||||||
documentation.
|
documentation.
|
||||||
|
|
||||||
|
@ -16,4 +16,4 @@ useful primarily to PDF developers.
|
|||||||
.PP
|
.PP
|
||||||
For a summary of qpdf's options, please run
|
For a summary of qpdf's options, please run
|
||||||
\fBqpdf \-\-help\fR. A complete manual can be found in
|
\fBqpdf \-\-help\fR. A complete manual can be found in
|
||||||
@docdir@/qpdf-manual.html or @docdir@/qpdf-manual.pdf.
|
@docdir@/html/index.html or @docdir@/qpdf-manual.pdf.
|
||||||
|
@ -7,6 +7,25 @@ For a detailed list of changes, please see the file
|
|||||||
:file:`ChangeLog` in the source distribution.
|
:file:`ChangeLog` in the source distribution.
|
||||||
|
|
||||||
10.5.0: XXX Month dd, YYYY
|
10.5.0: XXX Month dd, YYYY
|
||||||
|
- Packaging changes
|
||||||
|
|
||||||
|
- The structure of the ``doc`` directory is different. The PDF
|
||||||
|
documentation is in the same place, but the files for the
|
||||||
|
previous HTML documentation are no longer there. Instead, there
|
||||||
|
are ``html`` and ``singlehtml`` directories, each of which
|
||||||
|
contain ``index.html`` and other files and directories. The
|
||||||
|
distribution files and ``make install`` target handle this, but
|
||||||
|
if you are building your own packages and including
|
||||||
|
documentation, please double check to make sure that you are
|
||||||
|
including the right documentation files.
|
||||||
|
|
||||||
|
- The documentation sources have been switched from docbook to
|
||||||
|
reStructuredText processed with `Sphinx
|
||||||
|
<https://sphinx-doc.org>`__. This will break previous
|
||||||
|
documentation links. A redirect is in place on the main website.
|
||||||
|
A top-to-bottom review of the documentation is planned for an
|
||||||
|
upcoming release.
|
||||||
|
|
||||||
- Library Enhancements
|
- Library Enhancements
|
||||||
|
|
||||||
- Since qpdf version 8, using object accessor methods on an
|
- Since qpdf version 8, using object accessor methods on an
|
||||||
@ -58,16 +77,6 @@ For a detailed list of changes, please see the file
|
|||||||
|
|
||||||
- Add ``qpdf_oh_get_type_code`` and ``qpdf_oh_get_type_name``.
|
- Add ``qpdf_oh_get_type_code`` and ``qpdf_oh_get_type_name``.
|
||||||
|
|
||||||
- Documentation change
|
|
||||||
|
|
||||||
- The documentation sources have been switched from docbook to
|
|
||||||
reStructuredText processed with `Sphinx
|
|
||||||
<https://sphinx-doc.org>`__. This is mostly transparent (other
|
|
||||||
than format change) with the exception that all section links
|
|
||||||
have changed. What used to be `#ref.something` is now
|
|
||||||
`#something`. A top-to-bottom review of the documentation is
|
|
||||||
planned for an upcoming release.
|
|
||||||
|
|
||||||
10.4.0: November 16, 2021
|
10.4.0: November 16, 2021
|
||||||
- Handling of Weak Cryptography Algorithms
|
- Handling of Weak Cryptography Algorithms
|
||||||
|
|
||||||
|
@ -21,6 +21,6 @@ This program should not be used as a general purpose compression
|
|||||||
tool. Use something like gzip(1) instead.
|
tool. Use something like gzip(1) instead.
|
||||||
.PP
|
.PP
|
||||||
For details about qpdf, please see the qpdf manual, which can be found
|
For details about qpdf, please see the qpdf manual, which can be found
|
||||||
in @docdir@/qpdf-manual.html or @docdir@/qpdf-manual.pdf.
|
in @docdir@/html/index.html or @docdir@/qpdf-manual.pdf.
|
||||||
.SH "SEE ALSO"
|
.SH "SEE ALSO"
|
||||||
qpdf(1), gzip(1)
|
qpdf(1), gzip(1)
|
||||||
|
Loading…
Reference in New Issue
Block a user