Bug 36987 - fop теперь "не видит" JAVA_HOME
Summary: fop теперь "не видит" JAVA_HOME
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: java-9-openjdk (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: viy
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-07-06 20:00 MSK by Michael Shigorin
Modified: 2019-07-06 22:41 MSK (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Shigorin 2019-07-06 20:00:03 MSK
Выглядит это на примере mkimage-profiles так
(fop для сборки chunked и xhtml не задействуется):

On Sat, Jul 06, 2019 at 01:37:38PM +0000, ALT beekeeper wrote:
> Package: mkimage-profiles-1.3.10-alt1
> Status: Sisyphus/i586 test rebuild failed
[...]
> + cd mkimage-profiles-1.3.10
> + make BUILDDIR=/usr/src/docs docs
> make: Entering directory '/usr/src/RPM/BUILD/mkimage-profiles-1.3.10'
> ** building chunked book
> ** building xhtml book
> ** building pdf book
> a2x: WARNING: --destination-dir option is only applicable to HTML based outputs
> a2x: ERROR: "fop" -c .fop.xconf  -fo "/usr/src/docs/mkimage-profiles.fo" -pdf "/usr/src/docs/mkimage-profiles.pdf" returned non-zero exit status 1
> make[1]: *** [Makefile:62: pdf] Error 1
> make: *** [Makefile:74: docs] Error 2

В doc/Makefile этот вызов выглядит так:

A2X = a2x
FXC = .fop.xconf

L = ru
DEPTH = 3

# common args (and the source file to process) come last
XSLT_ARGS = --stringparam toc.max.depth $(DEPTH)
COMMON_ARGS = -d book -a lang="$L" $(DEST) $(VERBOSE) $(TOPLEVEL_DOC)
HTML_ARGS = -a data-uri --icons -r $(RESOURCE_FILES) -r . \
            --xsltproc-opts='$(XSLT_ARGS)' $(COMMON_ARGS)

[...]

pdf: prep
        @echo "** building $@ book"
        @$(A2X) --xsltproc-opts='$(XSLT_ARGS) \
                --stringparam title.font.family "DejaVu Sans" \
                --stringparam body.font.family "DejaVu Serif" \
                --stringparam monospace.font.family "DejaVu Sans Mono"' \
                --fop --fop-opts='-c $(FXC)' -f pdf $(COMMON_ARGS)

При добавлении в строку -v начинает ругаться чуточку более внятно:

a2x: chdir /usr/src/RPM/BUILD/mkimage-profiles-1.3.10/doc
a2x: executing: "fop" -c .fop.xconf  -fo "/usr/src/RPM/BUILD/mkimage-profiles-1.3.10/doc/mkimage-profiles.fo" -pdf "/usr/src/RPM/BUILD/mkimage-profiles-1.3.10/doc/mkimage-profiles.pdf"

/usr/bin/fop: JAVA_HOME is not set and default java installation was not found. JAVA_HOME for system applications can be set in java.conf in /etc/java

a2x: ERROR: "fop" -c .fop.xconf  -fo "/usr/src/RPM/BUILD/mkimage-profiles-1.3.10/doc/mkimage-profiles.fo" -pdf "/usr/src/RPM/BUILD/mkimage-profiles-1.3.10/doc/mkimage-profiles.pdf" returned non-zero exit status 1
make: *** [Makefile:62: pdf] Error 1

В pdf: prep
        @echo "** building $@ book"
        @$(A2X) --xsltproc-opts='$(XSLT_ARGS) \
                --stringparam title.font.family "DejaVu Sans" \
                --stringparam body.font.family "DejaVu Serif" \
                --stringparam monospace.font.family "DejaVu Sans Mono"' \
                --fop --fop-opts='-c $(FXC)' -f pdf $(COMMON_ARGS)

При добавлении -v начинает ругаться чуточку более внятно:

a2x: chdir /usr/src/RPM/BUILD/mkimage-profiles-1.3.10/doc
a2x: executing: "fop" -c .fop.xconf  -fo "/usr/src/RPM/BUILD/mkimage-profiles-1.3.10/doc/mkimage-profiles.fo" -pdf "/usr/src/RPM/BUILD/mkimage-profiles-1.3.10/doc/mkimage-profiles.pdf"

/usr/bin/fop: JAVA_HOME is not set and default java installation was not found. JAVA_HOME for system applications can be set in java.conf in /etc/java

a2x: ERROR: "fop" -c .fop.xconf  -fo "/usr/src/RPM/BUILD/mkimage-profiles-1.3.10/doc/mkimage-profiles.fo" -pdf "/usr/src/RPM/BUILD/mkimage-profiles-1.3.10/doc/mkimage-profiles.pdf" returned non-zero exit status 1
make: *** [Makefile:62: pdf] Error 1

В .fop.xconf путей нет, только параметры вёрстки.

Если вручную выставить JAVA_HOME (и обеспечить /proc), всё собирается:

export JAVA_HOME=/usr/lib/jvm/java-9-openjdk-9.0.4.11-6.x86_64

[builder@localhost doc]$ rpm -qa | grep java
java-9-openjdk-9.0.4.11-alt1_6jpp8.x86_64
javapackages-filesystem-5.3.0-alt1_1jpp8.noarch
javapackages-tools-5.3.0-alt1_1jpp8.noarch
java-common-1.5.0-alt1.noarch
javazi-2019b-alt1.noarch
java-9-openjdk-headless-9.0.4.11-alt1_6jpp8.x86_64
ca-trust-java-0.1.2-alt1.noarch
[builder@localhost doc]$ rpm -q fop asciidoc-a2x
fop-2.2-alt1_4jpp8.noarch
asciidoc-a2x-8.6.9-alt1.1.noarch

PS: начал было писать вопрос в devel@, в процессе докопал хотя бы до этого...
Comment 1 viy 2019-07-06 20:14:45 MSK
Спасибо, буду разбираться.
Comment 2 viy 2019-07-06 20:31:02 MSK
Как быстрый хак, доустановить пакет java-devel (java-9-openjdk-devel)
все заработает, а я тем временем буду разбираться.
Comment 3 Repository Robot 2019-07-06 21:21:09 MSK
java-common-1.6.0-alt1 -> sisyphus:

Sat Jul 06 2019 Igor Vlasenko <viy@altlinux.ru> 1.6.0-alt1
- dropped /etc/.java/.systemPrefs
- fixed javahome.sh (closes: #36987)
Comment 4 Michael Shigorin 2019-07-06 22:41:36 MSK
Ух ты, это было молниеносно :-)
Спасибо, так опять работает.