aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorErlang/OTP <[email protected]>2010-04-08 08:32:56 +0000
committerErlang/OTP <[email protected]>2010-04-08 08:32:56 +0000
commit6ba7c11891441a0a67d62d4ea278b101d53dbdbf (patch)
tree0c0d9d7ac272637ad4b9e8df9d704e037c04be7b
parent2e4e428c1f773ed63102ea5628c22e5bf32b8082 (diff)
parentbdb41b943e42b4a550dbf4db6c9a2c1d4d242b43 (diff)
downloadotp-6ba7c11891441a0a67d62d4ea278b101d53dbdbf.tar.gz
otp-6ba7c11891441a0a67d62d4ea278b101d53dbdbf.tar.bz2
otp-6ba7c11891441a0a67d62d4ea278b101d53dbdbf.zip
Merge branch 'ta/doc-fakefop' into dev
* ta/doc-fakefop: Build placeholder PDF files if FOP is not found OTP-8559 ta/doc-fakefop If the 'fop' program (needed for building PDF files) cannot not be found, it is now possible to build the HTML and man pages anyway (there will also be dummy PDF files with no real content created).
-rw-r--r--configure.in10
-rw-r--r--erts/configure.in5
-rwxr-xr-xmake/fakefop113
3 files changed, 125 insertions, 3 deletions
diff --git a/configure.in b/configure.in
index 9c815414da..eb29b13bcc 100644
--- a/configure.in
+++ b/configure.in
@@ -386,10 +386,18 @@ if test -f "erts/doc/CONF_INFO"; then
echo '*********************************************************************'
echo
printf "%-15s: \n" documentation;
+ havexsltproc="yes"
for cmd in `cat erts/doc/CONF_INFO`; do
echo " $cmd is missing."
+ if test $cmd = "xsltproc"; then
+ havexsltproc="no"
+ fi
done
- echo ' The documentation can not be built.'
+ if test $havexsltproc = "no"; then
+ echo ' The documentation can not be built.'
+ else
+ echo ' Using fakefop to generate placeholder PDF files.'
+ fi
echo
echo '*********************************************************************'
fi
diff --git a/erts/configure.in b/erts/configure.in
index 6278af3a2e..e5202b75cb 100644
--- a/erts/configure.in
+++ b/erts/configure.in
@@ -821,13 +821,14 @@ fi
AC_CHECK_PROGS(XSLTPROC, xsltproc)
if test -z "$XSLTPROC"; then
echo "xsltproc" >> doc/CONF_INFO
- AC_MSG_WARN([No 'xsltproc' command found: the documentation can not be built])
+ AC_MSG_WARN([No 'xsltproc' command found: the documentation cannot be built])
fi
AC_CHECK_PROGS(FOP, fop)
if test -z "$FOP"; then
+ FOP="$ERL_TOP/make/fakefop"
echo "fop" >> doc/CONF_INFO
- AC_MSG_WARN([No 'fop' command found: the documentation can not be built])
+ AC_MSG_WARN([No 'fop' command found: going to generate placeholder PDF files])
fi
dnl
diff --git a/make/fakefop b/make/fakefop
new file mode 100755
index 0000000000..bbe81ef3b1
--- /dev/null
+++ b/make/fakefop
@@ -0,0 +1,113 @@
+#!/bin/sh
+#
+# Copyright Tuncer Ayaz 2010. All Rights Reserved.
+#
+# %CopyrightBegin%
+#
+# Copyright Ericsson AB 2010. All Rights Reserved.
+#
+# The contents of this file are subject to the Erlang Public License,
+# Version 1.1, (the "License"); you may not use this file except in
+# compliance with the License. You should have received a copy of the
+# Erlang Public License along with this software. If not, it can be
+# retrieved online at http://www.erlang.org/.
+#
+# Software distributed under the License is distributed on an "AS IS"
+# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+# the License for the specific language governing rights and limitations
+# under the License.
+#
+# %CopyrightEnd%
+#
+# Author: Tuncer Ayaz
+#
+
+if [ $# -lt 4 ]
+then
+ echo "Usage: fakefop -fo IGNORED -pdf OUTFILE"
+ exit 1
+fi
+
+OUTFILE=$4
+NAME=`basename $4 .pdf`
+
+echo Write $OUTFILE
+cat > $OUTFILE <<EndOfFile
+%PDF-1.4
+1 0 obj
+ << /Type /Catalog
+ /Outlines 2 0 R
+ /Pages 3 0 R
+ >>
+endobj
+
+2 0 obj
+ << /Type /Outlines
+ /Count 0
+ >>
+endobj
+
+3 0 obj
+ << /Type /Pages
+ /Kids [4 0 R]
+ /Count 1
+ >>
+endobj
+
+4 0 obj
+ << /Type /Page
+ /Parent 3 0 R
+ /MediaBox [0 0 612 492]
+ /Contents 5 0 R
+ /Resources << /ProcSet 6 0 R
+ /Font << /F1 7 0 R >>
+ >>
+ >>
+endobj
+
+5 0 obj
+ << /Length 73 >>
+stream
+ BT
+ /F1 24 Tf
+ 10 400 Td
+ ($NAME) Tj
+ ET
+ BT
+ /F1 24 Tf
+ 10 350 Td
+ (\(placeholder PDF generated without FOP\)) Tj
+ ET
+endstream
+endobj
+
+6 0 obj
+ [/PDF /Text]
+endobj
+7 0 obj
+ << /Type /Font
+ /Subtype /Type1
+ /Name /F1
+ /BaseFont /Helvetica
+ /Encoding /MacRomanEncoding
+ >>
+endobj
+xref
+0 8
+0000000000 65535 f
+0000000009 00000 n
+0000000074 00000 n
+0000000120 00000 n
+0000000179 00000 n
+0000000364 00000 n
+0000000466 00000 n
+0000000496 00000 n
+
+trailer
+ << /Size 8
+ /Root 1 0 R
+ >>
+startxref
+625
+%%EOF
+EndOfFile