My package (gant 1.9.11) fails when i run rpmbuild -bb gant.spec -vv - because
of javadoc generation. Even using --skip-javadoc as an argument for
%gradle_build doesn't change anything.
I guess that's because the build.gradle file contains some sections for building
the javadoc.
I'm not sure how i should deal with that. Would be removing the javadoc sections
via a patchfile a suitable solution? Is there a way to fix the javadoc
generation? (i.e. without removing it)
The Build log and the specfile are listed below.
regards,
Tobi/toogley
---------------------------[ rpmbuild -bb gant.spec -vv ]---------------------
ufdio: 1 reads, 16652 total bytes in 0.000017 secs
ufdio: 1 reads, 3936 total bytes in 0.000004 secs
ufdio: 1 reads, 16652 total bytes in 0.000017 secs
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.K9OvrN
+ umask 022
+ cd /home/toogley/rpmbuild/BUILD
+ cd /home/toogley/rpmbuild/BUILD
+ rm -rf Gant-1.9.11
+ /usr/bin/gzip -dc /home/toogley/rpmbuild/SOURCES/1.9.11.tar.gz
+ /usr/bin/tar -xof -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd Gant-1.9.11
+ /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ find . -name '*.bat' -delete
+ find . -name '*.class' -delete
+ find . -name '*.jar' -delete
+ exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.V5WcuX
+ umask 022
+ cd /home/toogley/rpmbuild/BUILD
+ cd Gant-1.9.11
+ sed -i /metaInf/d /home/toogley/rpmbuild/BUILD/Gant-1.9.11/build.gradle
+ /usr/bin/python3 /usr/share/java-utils/mvn_build.py --gradle --skip-javadoc
--xmvn-debug
Executing: gradle-local --no-daemon --offline
-Dorg.slf4j.simpleLogger.log.org.fedoraproject.xmvn=debug build xmvnInstall
['gradle-local', '--no-daemon', '--offline',
'-Dorg.slf4j.simpleLogger.log.org.fedoraproject.xmvn=debug', 'build',
'xmvnInstall']
Ignoring metadata for artifact org.eclipse.jdt:org.eclipse.jdt.annotation:jar:SYSTEM as it
has duplicate metadata
:gant:compileJava UP-TO-DATE
:gant:compileGroovy
Using Groovy version 2.2.2
warning: [options] bootstrap class path not set in conjunction with -source 1.6
1 warning
:gant:processResources UP-TO-DATE
:gant:classes
:gant:groovydoc
:gant:groovydocArtifact
:gant:jar
:gant:javadoc
javadoc: error - Error while reading file overview.html
1 error
:gant:javadoc FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':gant:javadoc'.
Javadoc generation failed. Generated Javadoc options file (useful for
troubleshooting):
'/home/toogley/rpmbuild/BUILD/Gant-1.9.11/gant/build/tmp/javadoc/javadoc.options'
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug
option to get more log
output.
BUILD FAILED
Total time: 17.24 secs
error: Bad exit status from /var/tmp/rpm-tmp.V5WcuX (%build)
RPM build errors:
Bad exit status from /var/tmp/rpm-tmp.V5WcuX (%build)
-------------------------------[ gant.spec ]----------------------------------
%global gmajver 2.3
Name: gant
Version: 1.9.11
Release: 1%{?dist}
Summary: Groovy-based build system that uses Ant tasks
Group: Development/Tools
License: ASL 2.0
URL:
http://gant.github.io/
Source0:
https://github.com/Gant/Gant/archive/%{version}.tar.gz
# TODO remove these poms when gradle maven plugin work properly
# or change the pom file with proper groovy version
Source1:
https://repo1.maven.org/maven2/org/codehaus/gant/gant_groovy%{gmajver}/%{...
Source2: %{name}-script
BuildArch: noarch
BuildRequires: gradle-local
BuildRequires: javapackages-local
BuildRequires: java-devel
BuildRequires: jpackage-utils
BuildRequires: antlr-tool
BuildRequires: objectweb-asm
# main deps
BuildRequires: ant
BuildRequires: apache-commons-cli
BuildRequires: groovy
BuildRequires: gradle
# test deps
BuildRequires: apache-ivy
BuildRequires: junit
Requires: ant
Requires: antlr-tool
Requires: apache-commons-cli
Requires: groovy
Requires: objectweb-asm
Requires: java-devel
%description
Gant is a tool for scripting Ant tasks using Groovy instead of XML
to specify the logic. A Gant specification is a Groovy script and so can bring
all the power of Groovy to bear directly, something not possible with Ant
scripts. Whilst it might be seen as a competitor to Ant, Gant uses Ant tasks for
many of the actions, so Gant is really an alternative way of doing things using
Ant, but using a programming language rather than XML to specify the rules.
%package javadoc
Group: Documentation
Summary: Javadoc for %{name}
%description javadoc
This package contains javadoc for %{name}.
%prep
%autosetup -n Gant-%{version}
find . -name "*.bat" -delete
find . -name "*.class" -delete
find . -name "*.jar" -delete
%build
# build fails when metaInf is set.
# ---> "Could not find property 'metaInf' on project
':gant'."
# therefore remove that line.
sed -i '/metaInf/d' $PWD/build.gradle
# automatic javadoc generation for gradle is not yet implemented in XMvn.
%gradle_build --skip-javadoc --xmvn-debug
%install
%mvn_install
%files -f .mfiles
#%files javadoc -f .mfiles-javadoc
%changelog
* Thu Oct 04 2012 gil cattaneo <puntogil(a)libero.it> 1.9.8-1
- update to 1.9.8
- built with groovy 1.8.x support
- added maven pom
- adapted to current guideline
- added new sub package: javadoc