%global namedreltag %{nil} %global namedversion %{version}%{?namedreltag} %global nameddottag %(echo %{?namedreltag} | tr - . ) %global bootstrap 0 # TODO grails-core.jar http://repo1.maven.org/maven2/org/grails/grails-core/1.3.7/grails-core-1.3.7.jar # https://github.com/grails/grails-core/ # sonar plugin # gradle/lib/plugins/gradle-sonar-1.0-milestone-9.jar # gradle/lib/plugins/sonar-batch-bootstrapper-2.9.jar # maven plugin # gradle/lib/plugins/pmaven-common-0.8-20100325.jar # gradle/lib/plugins/pmaven-groovy-0.8-20100325.jar # jetty 6.x plugin # gradle/lib/plugins/core-3.1.1.jar # gradle/lib/plugins/geronimo-annotation_1.0_spec-1.0.jar # gradle/lib/plugins/gradle-jetty-1.0-milestone-9.jar # gradle/lib/plugins/jetty-6.1.25.jar # gradle/lib/plugins/jetty-annotations-6.1.25.jar # gradle/lib/plugins/jetty-naming-6.1.25.jar # gradle/lib/plugins/jetty-plus-6.1.25.jar # gradle/lib/plugins/jetty-util-6.1.25.jar # gradle/lib/plugins/jsp-2.1-6.1.14.jar # gradle/lib/plugins/jsp-api-2.1-6.1.14.jar # gradle/lib/plugins/servlet-api-2.5-20081211.jar # FIXME http://issues.gradle.org/browse/GRADLE-2210 Name: gradle Version: 1.0 Release: %mkrel 13%{?nameddottag} Summary: Groovy based build system Group: Development/Java License: ASL 2.0 Url: http://www.gradle.org/ Source0: http://services.gradle.org/distributions/gradle-%{namedversion}-src.zip Source3: gradle-%{namedversion}-wrapper Source4: gradle-%{namedversion}-build.xml Source5: gradle.desktop # Tanks to C. de Wolf, A. Grimm, J. Hernandez, M. Goldmann, M. Izdebski for their contribution # mgoldmann # On Fedora we have the jnidispatch.so file in a well known location, so we use it directly from there Patch0: gradle-%{namedversion}-Proper-path-to-jnidispatch.patch # unavailable deps polyglot-maven Patch1: gradle-%{namedversion}-Disabled-polyglot-maven-support.patch # fix for maven plugin Patch2: gradle-%{namedversion}-Missing-method-in-PlexusLoggerAdapter.patch # jhernand unavailable file Patch3: gradle-%{namedversion}-css3-pie-not-available.patch # jhernand use jnr-posix instead of jna-posix Patch4: gradle-%{namedversion}-POSIX-changes.patch Patch5: gradle-%{namedversion}-script.patch # fix setting.xml in non boostrap mode Patch6: gradle-%{namedversion}-core-releases_xml.patch # mgoldmann Patch7: gradle-%{namedversion}-Use-Exception-instead-CloneNotSupportedException.patch # jhernand # fix user home for gradle applications Patch8: gradle-%{namedversion}-Use-proper-system-environment-variables.patch # mgoldmann # fix for http://issues.gradle.org/browse/GRADLE-2210 Patch9: gradle-%{namedversion}-Maven-3-support.patch # Since Gradle uses groovy-all.jar which bundles all dependencies and this is NOT allowed in Fedora # we need to use clean groovy.jar and point Gradle to its dependencies Patch10: gradle-%{namedversion}-Fix-classpath-after-splitting-groovy-all-into-multip.patch # Related to PATCH10 - we need to use the deps (asm, antlr) directly, not bundled versions Patch11: gradle-%{namedversion}-Change-groovy-all-references-to-valid-package-names.patch # mgoldmann # Checkstyle requires antlr, it was provided by groovy-all, but we removed it # We cannot have two antlr libraries in classpath when executing checkstyle Patch12: gradle-%{namedversion}-Add-proper-checkstyle-dependencies.patch # Another tricky one, but I remember I had serious issues with classpath creation for codenarc # Using LOCAL_GROOVY instead of GROOVY did the trick. Yep, ugly Patch13: gradle-%{namedversion}-Add-proper-codenarc-dependencies.patch # disable this modules for unavailable build deps # depend on maven2 Patch14: gradle-%{namedversion}-Disable-maven-plugin.patch # depend on gradle-maven module Patch15: gradle-%{namedversion}-Disable-signing-plugin.patch # disable. require sonar http://www.sonarsource.org/ Patch16: gradle-%{namedversion}-Disable-sonar-plugin.patch # jhernand # change jna-posix with jnr-posix and add jnr-constant and jaffl Patch17: gradle-%{namedversion}-Change-dependency-from-jna-to-jnr-for-native.patch # mgoldmann # Since we operate on symlinks Java is fooled by it and we need to specify the patch to gradle home manually Patch18: gradle-%{namedversion}-Set-the-libdir-to-usr-share-gradle.patch # TODO remove this patch when spock-core is available in rawhide Patch19: gradle-%{namedversion}-No-spock-library-available.patch # fix gradle checkstyle deps Patch20: gradle-%{namedversion}-Add-missing-dependencies-when-using-clean-checkstyle.patch # TODO remove this patch when codenarc is available in rawhide Patch21: gradle-%{namedversion}-Disable-codenarc-plugin-since-CodeNarc-is-not-avaial.patch # remove docbook-xml@zip references Patch22: gradle-%{namedversion}-No-zipped-docbook-available.patch # disable require jets3t (not available for now... see https://bugzilla.redhat.com/show_bug.cgi?id=847109 ) Patch23: gradle-%{namedversion}-Disable-website-module.patch # fix the location of the build deps Patch24: gradle-%{namedversion}-Use-local-available-libraries.patch # remove jetty plugin references, prevent gradle error: unavailable module, gradle-jetty Patch25: gradle-%{namedversion}-Disable-jetty-plugin.patch # remove not required timestamp from artifacts version Patch26: gradle-%{namedversion}-Fix-version-remove-timestamp.patch # unavailable deps require jmock 2.5.1 # disable also the releaseArtifacts, docs and samples tasks (require gradle maven plugin) Patch27: gradle-%{namedversion}-disable-tests.patch # workaround # disable userguide and dslHtml tasks (unavailable deps: docbook:docbook-xsl:1.75.2@zip) # docs depend on test tasks Patch28: gradle-%{namedversion}-docs.patch # Build requirements (alphabetical): BuildRequires: aether BuildRequires: ant BuildRequires: ant-antlr BuildRequires: antlr BuildRequires: antlr-tool BuildRequires: apache-commons-beanutils BuildRequires: apache-commons-cli BuildRequires: apache-commons-codec BuildRequires: apache-commons-collections BuildRequires: apache-commons-io BuildRequires: apache-commons-lang BuildRequires: apache-ivy # require bnd ant task BuildRequires: aqute-bnd BuildRequires: aqute-bndlib BuildRequires: beust-jcommander BuildRequires: bouncycastle BuildRequires: bouncycastle-pg BuildRequires: bsh BuildRequires: checkstyle BuildRequires: desktop-file-utils BuildRequires: dom4j BuildRequires: findbugs BuildRequires: findbugs-bcel BuildRequires: git BuildRequires: groovy >= 1.8.6 BuildRequires: groovy-javadoc >= 1.8.6 BuildRequires: guava BuildRequires: hamcrest BuildRequires: httpcomponents-client BuildRequires: httpcomponents-core BuildRequires: jaffl BuildRequires: jansi BuildRequires: java-devel BuildRequires: java-javadoc BuildRequires: jaxen BuildRequires: jcifs BuildRequires: jcip-annotations BuildRequires: jna BuildRequires: jnr-constants BuildRequires: jnr-posix >= 1.1.8 BuildRequires: jnr-ffi BuildRequires: jpackage-utils BuildRequires: jsch BuildRequires: junit BuildRequires: logback >= 1.0.1 BuildRequires: maven BuildRequires: objectweb-asm BuildRequires: plexus-classworlds BuildRequires: plexus-component-api BuildRequires: plexus-containers-component-annotations BuildRequires: plexus-containers-container-default BuildRequires: plexus-interpolation BuildRequires: plexus-utils # TODO BuildRequires: polyglot-maven https://bugzilla.redhat.com/show_bug.cgi?id=855331 BuildRequires: slf4j BuildRequires: snakeyaml BuildRequires: testng %if !%bootstrap BuildRequires: gradle BuildRequires: cglib BuildRequires: classycle BuildRequires: codenarc BuildRequires: flyingsaucer # unavailable test deps # TODO BuildRequires: jmock = 2.5.1 https://bugzilla.redhat.com/show_bug.cgi?id=847742 BuildRequires: jsoup BuildRequires: nekohtml BuildRequires: objenesis BuildRequires: pegdown BuildRequires: spock-core BuildRequires: xalan-j2 BuildRequires: xerces-j2 BuildRequires: xmlunit # TODO BuildRequires: xslthl https://bugzilla.redhat.com/show_bug.cgi?id=844179 %endif # work in progress BuildRequires: sonar https://bugzilla.redhat.com/show_bug.cgi?id=848096 Requires: aether Requires: ant Requires: ant-antlr Requires: antlr Requires: antlr-tool Requires: apache-commons-beanutils Requires: apache-commons-cli Requires: apache-commons-codec Requires: apache-commons-collections Requires: apache-commons-io Requires: apache-commons-lang Requires: apache-ivy Requires: aqute-bnd Requires: aqute-bndlib Requires: beust-jcommander Requires: bouncycastle Requires: bouncycastle-pg # Requires: bsh2 Requires: bsh Requires: checkstyle Requires: dom4j Requires: findbugs Requires: findbugs-bcel Requires: groovy Requires: guava Requires: hamcrest Requires: httpcomponents-client Requires: httpcomponents-core Requires: jansi Requires: jaxen Requires: jcifs Requires: jcip-annotations Requires: jna Requires: jnr-constants Requires: jnr-posix Requires: jnr-ffi Requires: jsch Requires: junit Requires: logback Requires: maven # BuildRequires: bsh2 already packaged BuildRequires: maven-ant-tasks # BuildRequires: maven-artifact-manager # BuildRequires: maven-error-diagnostics # BuildRequires: maven-model # BuildRequires: maven-project # BuildRequires: maven-wagon Requires: maven-ant-tasks # Requires: maven-artifact-manager # Requires: maven-error-diagnostics # Requires: maven-model # Requires: maven-project # Requires: maven-wagon Requires: objectweb-asm Requires: plexus-classworlds Requires: plexus-component-api Requires: plexus-containers-component-annotations Requires: plexus-containers-container-default Requires: plexus-interpolation Requires: plexus-utils Requires: slf4j Requires: snakeyaml Requires: testng Requires: java-devel >= 1:1.6.0 Requires: jpackage-utils BuildArch: noarch %description Gradle is a build system written in Groovy. It uses Groovy also as the language for its build scripts. It has a powerful multi-project build support. It has a layer on top of Ivy that provides a build-by-convention integration for Ivy. It gives you always the choice between the flexibility of Ant and the convenience of a build-by-convention behavior. %package javadoc Group: Documentation Summary: Javadoc for %{name} Requires: jpackage-utils %description javadoc This package contains javadoc for %{name}. %prep %setup -q -n %{name}-%{namedversion} # cleanup find . -name '*.jar' -delete find . -name '*.class' -delete %patch0 -p1 %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 %if %bootstrap # gradle bin is generate during the non bootstrap build (task assemble only...?) cat gradlew >> gradle.sh %patch5 -p0 # setting.xml is generate during the non bootstrap build %patch6 -p0 %endif %patch7 -p1 %patch8 -p1 %patch9 -p1 %patch10 -p1 %patch11 -p1 %patch12 -p1 %patch13 -p1 %patch14 -p1 %patch15 -p1 %patch16 -p1 %patch17 -p1 %patch18 -p1 %patch19 -p1 %patch20 -p1 %patch21 -p1 %patch22 -p1 %patch23 -p1 %patch24 -p1 %patch25 -p1 %patch26 -p1 %patch27 -p1 %patch28 -p0 cp -p %{SOURCE4} build.xml cp -p %{SOURCE5} . # fix non ASCII chars for s in subprojects/core/src/main/groovy/org/gradle/api/Named.java \ subprojects/core/src/main/groovy/org/gradle/api/internal/ExtensibleDynamicObject.java \ subprojects/core/src/main/groovy/org/gradle/api/internal/plugins/DslObject.java \ subprojects/core/src/main/groovy/org/gradle/api/plugins/ExtensionAware.java \ subprojects/core/src/main/groovy/org/gradle/api/plugins/ExtensionContainer.java \ subprojects/core/src/main/groovy/org/gradle/api/plugins/ExtraPropertiesExtension.java \ subprojects/core/src/main/groovy/org/gradle/initialization/GradleLauncherAction.java \ subprojects/core/src/main/groovy/org/gradle/process/internal/JvmOptions.java \ subprojects/core-impl/src/main/groovy/org/gradle/api/internal/externalresource/cached/CachedExternalResource.java \ subprojects/core-impl/src/main/groovy/org/gradle/api/internal/externalresource/transfer/DefaultCacheAwareExternalResourceAccessor.java \ subprojects/core-impl/src/main/groovy/org/gradle/api/internal/externalresource/transfer/ExternalResourceAccessor.java \ subprojects/core-impl/src/main/groovy/org/gradle/api/internal/externalresource/metadata/ExternalResourceMetaData.java \ subprojects/core-impl/src/main/groovy/org/gradle/api/internal/externalresource/local/LocallyAvailableResourceCandidates.java \ subprojects/launcher/src/main/java/org/gradle/launcher/daemon/client/DaemonClientInputForwarder.java \ subprojects/launcher/src/main/java/org/gradle/launcher/daemon/protocol/Failure.java \ subprojects/launcher/src/main/java/org/gradle/launcher/daemon/registry/EmbeddedDaemonRegistry.java \ subprojects/launcher/src/main/java/org/gradle/launcher/daemon/server/DaemonStateCoordinator.java \ subprojects/launcher/src/main/java/org/gradle/launcher/daemon/server/exec/BuildCommandOnly.java \ subprojects/launcher/src/main/java/org/gradle/launcher/daemon/server/exec/DaemonCommandAction.java \ subprojects/launcher/src/main/java/org/gradle/launcher/daemon/server/exec/DaemonCommandExecution.java \ subprojects/launcher/src/main/java/org/gradle/launcher/daemon/server/exec/ExecuteBuild.java \ subprojects/plugins/src/main/groovy/org/gradle/api/reporting/Reporting.java;do native2ascii -encoding UTF8 ${s} ${s} done %build %if %bootstrap ant dist javadoc %else # TODO maven signing # java/docs and test suite for unavailable deps require jmock, jets3t, docbook-xml@zip, xslthl,... # fix deps proper name sed -i "s|xercesImpl:2.9.1|xerces-j2:2.9.1|" subprojects/core/core.gradle sed -i "s|cglib-nodep|cglib|" buildSrc/build.gradle sed -i "s|bndlib|aqute-bnd|" subprojects/osgi/osgi.gradle sed -i "s|plexus/container-default|plexus/containers-container-default|" subprojects/core-impl/core-impl.gradle # groovydoc (more complete than javadoc) task could derail the compilation (requires groovy-all.jar) docs:userguide gradle --full-stacktrace --debug assemble javadoc \ -g $PWD/gradlehome -b $PWD/build.gradle %endif %install mkdir -p %{buildroot}%{_datadir}/%{name}/{bin,lib,lib/plugins,media} mkdir -p %{buildroot}%{_javadir}/%{name} # TODO maven signing %if %bootstrap cp -pr src/toplevel/media/* %{buildroot}%{_datadir}/%{name}/media/ cp -p src/toplevel/LICENSE %{buildroot}%{_datadir}/%{name}/ cp -p src/toplevel/NOTICE %{buildroot}%{_datadir}/%{name}/ cp -p src/toplevel/changelog.txt %{buildroot}%{_datadir}/%{name}/ cp -p src/toplevel/LICENSE . cp -p src/toplevel/NOTICE . install -pm 755 %{name}.sh %{buildroot}%{_datadir}/%{name}/bin/%{name} # WARNING in newer release there are new artifacts, please update these lists # gradle-launcher-%%{namedversion}.jar is special and cannot be moved, # because the launcher inspects its own _dereferenced_ file path to determine where to find other jars. # The others can be in javadir install -pm 644 dist/lib/%{name}-launcher-%{namedversion}.jar %{buildroot}%{_datadir}/%{name}/lib/%{name}-launcher-%{namedversion}.jar for m in base-services cli core native open-api tooling-api ui wrapper; do install -pm 644 dist/lib/%{name}-${m}-%{namedversion}.jar %{buildroot}%{_javadir}/%{name}/%{name}-${m}.jar ln -sf %{_javadir}/%{name}/%{name}-${m}.jar %{buildroot}%{_datadir}/%{name}/lib/%{name}-${m}-%{namedversion}.jar done for m in announce antlr code-quality core-impl cpp ear ide osgi plugins scala; do install -pm 644 dist/lib/plugins/%{name}-${m}-%{namedversion}.jar %{buildroot}%{_javadir}/%{name}/%{name}-${m}.jar ln -sf %{_javadir}/%{name}/%{name}-${m}.jar %{buildroot}%{_datadir}/%{name}/lib/plugins/%{name}-${m}-%{namedversion}.jar done %else mkdir -p gradlehome ( cd gradlehome rm -rf * unzip ../build/distributions/%{name}-%{namedversion}-all.zip rm -rf src find %{name}-%{namedversion} -name "*.bat" -delete ( cd %{name}-%{namedversion} sed -i "s|# Attempt to set APP_HOME|export JAVA_HOME=/usr/lib/jvm/java|" bin/%{name} sed -i 's|APP_HOME="`pwd -P`"|export APP_HOME=$GRADLE_HOME|' bin/%{name} install -pm 755 bin/%{name} %{buildroot}%{_datadir}/%{name}/bin/ cp -pr media/* %{buildroot}%{_datadir}/%{name}/media/ cp -p LICENSE %{buildroot}%{_datadir}/%{name}/ cp -p NOTICE %{buildroot}%{_datadir}/%{name}/ cp -p changelog.txt %{buildroot}%{_datadir}/%{name}/ # WARNING in newer release there are new artifacts, please update these lists # gradle-launcher-%%{namedversion}.jar is special and cannot be moved, # because the launcher inspects its own _dereferenced_ file path to determine where to find other jars. # The others can be in javadir install -pm 644 lib/%{name}-launcher-%{namedversion}.jar %{buildroot}%{_datadir}/%{name}/lib/%{name}-launcher-%{namedversion}.jar for m in base-services cli core native open-api tooling-api ui wrapper; do install -pm 644 lib/%{name}-${m}-%{namedversion}.jar %{buildroot}%{_javadir}/%{name}/%{name}-${m}.jar ln -sf %{_javadir}/%{name}/%{name}-${m}.jar %{buildroot}%{_datadir}/%{name}/lib/%{name}-${m}-%{namedversion}.jar done for m in announce antlr code-quality core-impl cpp ear ide osgi plugins scala; do install -pm 644 lib/plugins/%{name}-${m}-%{namedversion}.jar %{buildroot}%{_javadir}/%{name}/%{name}-${m}.jar ln -sf %{_javadir}/%{name}/%{name}-${m}.jar %{buildroot}%{_datadir}/%{name}/lib/plugins/%{name}-${m}-%{namedversion}.jar done cp -p LICENSE ../../ cp -p NOTICE ../../ ) ) %endif # TODO once the tests task is fixed... change with the proper dir (docs/) mkdir -p %{buildroot}%{_javadocdir}/%{name} cp -pr subprojects/docs/build/docs/*doc*/* %{buildroot}%{_javadocdir}/%{name} ln -sf %{_javadir}/ant.jar %{buildroot}%{_datadir}/%{name}/lib/ant-1.8.2.jar ln -sf $(build-classpath ant-launcher) %{buildroot}%{_datadir}/%{name}/lib/ant-launcher-1.8.2.jar # groovy deps ln -sf $(build-classpath antlr) %{buildroot}%{_datadir}/%{name}/lib/antlr-2.7.7.jar ln -sf $(build-classpath objectweb-asm/asm-all) %{buildroot}%{_datadir}/%{name}/lib/asm-all-3.3.1.jar ln -sf $(build-classpath commons-cli) %{buildroot}%{_datadir}/%{name}/lib/commons-cli-1.2.jar ln -sf $(build-classpath commons-collections) %{buildroot}%{_datadir}/%{name}/lib/commons-collections-3.2.1.jar ln -sf $(build-classpath commons-io) %{buildroot}%{_datadir}/%{name}/lib/commons-io-1.4.jar ln -sf $(build-classpath commons-lang) %{buildroot}%{_datadir}/%{name}/lib/commons-lang-2.6.jar ln -sf $(build-classpath constantine) %{buildroot}%{_datadir}/%{name}/lib/constantine-0.7.jar ln -sf $(build-classpath dom4j) %{buildroot}%{_datadir}/%{name}/lib/dom4j-1.6.1.jar ln -sf $(build-classpath groovy) %{buildroot}%{_datadir}/%{name}/lib/groovy-all-1.8.6.jar ln -sf $(build-classpath groovy) %{buildroot}%{_datadir}/%{name}/lib/groovy-1.8.6.jar ln -sf $(build-classpath guava) %{buildroot}%{_datadir}/%{name}/lib/guava-11.0.1.jar ln -sf $(build-classpath ivy) %{buildroot}%{_datadir}/%{name}/lib/ivy-2.2.0.jar ln -sf $(build-classpath jansi) %{buildroot}%{_datadir}/%{name}/lib/jansi-1.2.1.jar ln -sf $(build-classpath jaxen) %{buildroot}%{_datadir}/%{name}/lib/jaxen-1.1.jar ln -sf $(build-classpath jcip-annotations) %{buildroot}%{_datadir}/%{name}/lib/jcip-annotations-1.0.jar ln -sf $(build-classpath jna) %{buildroot}%{_datadir}/%{name}/lib/jna-3.2.7.jar ln -sf $(build-classpath jnr-constants) %{buildroot}%{_datadir}/%{name}/lib/jnr-constants.jar ln -sf $(build-classpath jnr-posix) %{buildroot}%{_datadir}/%{name}/lib/jnr-posix-1.0.3.jar # gradle -gui Starting external process java.lang.NoClassDefFoundError: com/kenai/jaffl/struct/Struct ln -sf $(build-classpath jaffl) %{buildroot}%{_datadir}/%{name}/lib/jaffl.jar ln -sf $(build-classpath jsch) %{buildroot}%{_datadir}/%{name}/lib/jsch-0.1.46.jar ln -sf $(build-classpath logback/logback-classic) %{buildroot}%{_datadir}/%{name}/lib/logback-classic-1.0.0.jar ln -sf $(build-classpath logback/logback-core) %{buildroot}%{_datadir}/%{name}/lib/logback-core-1.0.0.jar ln -sf $(build-classpath slf4j/api) %{buildroot}%{_datadir}/%{name}/lib/slf4j-api-1.6.4.jar ln -sf $(build-classpath slf4j/jcl-over-slf4j) %{buildroot}%{_datadir}/%{name}/lib/jcl-over-slf4j-1.6.4.jar ln -sf $(build-classpath slf4j/jul-to-slf4j) %{buildroot}%{_datadir}/%{name}/lib/jul-to-slf4j-1.6.4.jar ln -sf $(build-classpath slf4j/log4j-over-slf4j) %{buildroot}%{_datadir}/%{name}/lib/log4j-over-slf4j-1.6.4.jar ln -sf $(build-classpath ant/ant-antlr) %{buildroot}%{_datadir}/%{name}/lib/plugins/ant-antlr-1.8.2.jar ln -sf $(build-classpath antlr) %{buildroot}%{_datadir}/%{name}/lib/plugins/antlr-2.7.7.jar ln -sf $(build-classpath bcpg) %{buildroot}%{_datadir}/%{name}/lib/plugins/bcpg-jdk15-1.46.jar ln -sf $(build-classpath bcprov) %{buildroot}%{_datadir}/%{name}/lib/plugins/bcprov-jdk15-1.46.jar ln -sf $(build-classpath bsh) %{buildroot}%{_datadir}/%{name}/lib/plugins/bsh-2.0b4.jar # bsh2/bsh ln -sf $(build-classpath commons-beanutils) %{buildroot}%{_datadir}/%{name}/lib/plugins/commons-beanutils.jar ln -sf $(build-classpath commons-cli) %{buildroot}%{_datadir}/%{name}/lib/plugins/commons-cli-1.2.jar ln -sf $(build-classpath commons-codec) %{buildroot}%{_datadir}/%{name}/lib/plugins/commons-codec-1.4.jar ln -sf $(build-classpath hamcrest/core) %{buildroot}%{_datadir}/%{name}/lib/plugins/hamcrest-core-1.1.jar ln -sf $(build-classpath httpcomponents/httpclient) %{buildroot}%{_datadir}/%{name}/lib/plugins/httpclient-4.1.2.jar ln -sf $(build-classpath httpcomponents/httpcore) %{buildroot}%{_datadir}/%{name}/lib/plugins/httpcore-4.1.2.jar ln -sf $(build-classpath jcifs) %{buildroot}%{_datadir}/%{name}/lib/plugins/jcifs-1.3.17.jar ln -sf $(build-classpath beust-jcommander) %{buildroot}%{_datadir}/%{name}/lib/plugins/jcommander-1.12.jar ln -sf $(build-classpath aqute-bnd) %{buildroot}%{_datadir}/%{name}/lib/plugins/bndlib-1.50.0.jar ln -sf $(build-classpath junit) %{buildroot}%{_datadir}/%{name}/lib/plugins/junit-4.10.jar ln -sf $(build-classpath checkstyle) %{buildroot}%{_datadir}/%{name}/lib/plugins/checkstyle.jar ln -sf $(build-classpath maven-ant-tasks) %{buildroot}%{_datadir}/%{name}/lib/plugins/maven-ant-tasks-2.1.3.jar ln -sf $(build-classpath maven/maven-artifact) %{buildroot}%{_datadir}/%{name}/lib/plugins/maven-artifact.jar ln -sf $(build-classpath maven/maven-compat) %{buildroot}%{_datadir}/%{name}/lib/plugins/maven-compat.jar ln -sf $(build-classpath maven/maven-core) %{buildroot}%{_datadir}/%{name}/lib/plugins/maven-core.jar # java.lang.ClassNotFoundException: org.sonatype.aether.* aether-api.jar,aether-util.jar ln -sf $(build-classpath aether/api) %{buildroot}%{_datadir}/%{name}/lib/plugins/aether-api.jar ln -sf $(build-classpath aether/util) %{buildroot}%{_datadir}/%{name}/lib/plugins/aether-util.jar ln -sf $(build-classpath maven/maven-model) %{buildroot}%{_datadir}/%{name}/lib/plugins/maven-model.jar ln -sf $(build-classpath maven/maven-settings) %{buildroot}%{_datadir}/%{name}/lib/plugins/maven-settings.jar ln -sf $(build-classpath maven/maven-settings-builder) %{buildroot}%{_datadir}/%{name}/lib/plugins/maven-settings-builder.jar ln -sf $(build-classpath plexus/plexus-component-api) %{buildroot}%{_datadir}/%{name}/lib/plugins/plexus-component-api.jar ln -sf $(build-classpath plexus/containers-container-default) %{buildroot}%{_datadir}/%{name}/lib/plugins/plexus-container-default.jar ln -sf $(build-classpath plexus/classworlds) %{buildroot}%{_datadir}/%{name}/lib/plugins/plexus-classworlds.jar ln -sf $(build-classpath plexus/interpolation) %{buildroot}%{_datadir}/%{name}/lib/plugins/plexus-interpolation.jar ln -sf $(build-classpath plexus/containers-component-annotations) %{buildroot}%{_datadir}/%{name}/lib/plugins/plexus-component-annotations-1.5.2.jar ln -sf $(build-classpath plexus/utils) %{buildroot}%{_datadir}/%{name}/lib/plugins/plexus-utils.jar ln -sf $(build-classpath snakeyaml) %{buildroot}%{_datadir}/%{name}/lib/plugins/snakeyaml-1.6.jar ln -sf $(build-classpath testng) %{buildroot}%{_datadir}/%{name}/lib/plugins/testng-6.3.1.jar mkdir -p %{buildroot}%{_bindir} install -pm 755 %{SOURCE3} %{buildroot}%{_bindir}/%{name} ( cd %{buildroot}%{_datadir}/%{name}/media for png in 16x16 24x24 32x32 48x48 64x64 128x128 256x256 512x512;do mkdir -p %{buildroot}%{_datadir}/icons/hicolor/${png}/apps ln -sf ../../../../%{name}/media/%{name}-icon-${png}.png %{buildroot}%{_datadir}/icons/hicolor/${png}/apps/%{name}.png done ) desktop-file-validate %{name}.desktop mkdir -p %{buildroot}%{_datadir}/applications desktop-file-install --vendor="" \ --dir=%{buildroot}%{_datadir}/applications %{name}.desktop %files %{_bindir}/%{name} %{_javadir}/%{name} %dir %{_datadir}/%{name} %dir %{_datadir}/%{name}/bin %{_datadir}/%{name}/bin/%{name} %{_datadir}/%{name}/lib %{_datadir}/%{name}/media %{_datadir}/applications/%{name}.desktop %{_datadir}/icons/hicolor/*x*/apps/%{name}.png %doc %{_datadir}/%{name}/LICENSE %doc %{_datadir}/%{name}/NOTICE %doc %{_datadir}/%{name}/changelog.txt %files javadoc %{_javadocdir}/%{name} %doc LICENSE NOTICE %changelog * Sat Jan 19 2013 dmorgan <dmorgan> 1.0-13.mga3 + Revision: 389565 - Clean spec file / Sync with fedora * Sat Jan 12 2013 umeabot <umeabot> 1.0-12.mga3 + Revision: 352558 - Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild * Mon Sep 17 2012 dmorgan <dmorgan> 1.0-11.mga3 + Revision: 295298 - Fix groovy requires * Sun Sep 09 2012 dmorgan <dmorgan> 1.0-10.mga3 + Revision: 290858 - New version 1.0 ( spec file from fedora) * Thu Mar 22 2012 gil <gil> 1.0-9.mga3 + Revision: 225724 - build fix applied patch14 removed unavailable resources * Thu Dec 08 2011 dmorgan <dmorgan> 1.0-8.mga2 + Revision: 178772 - disable bootstrap - disable bootstrap * Thu Dec 01 2011 dmorgan <dmorgan> 1.0-7.mga2 + Revision: 175003 - We need the same name for all arches - Rebuild without bootstrap to see if x86_64 build is fixed + gil <gil> - added Obsoletes/Provides for gradle32 - added Obsoletes/Provides for gradle32 - try to fix multiarch support * Thu Dec 01 2011 dmorgan <dmorgan> 1.0-4.mga2 + Revision: 174810 - Enable bootstrap again + gil <gil> - build fix tryed to add multiarch support * Mon Nov 28 2011 gil <gil> 1.0-3.mga2 + Revision: 173866 - build fixed removed gradle-1.0-groovy17.patch (gradle requires groovy == 1.7.10) removed classpath export (gradle requires groovy-all-1.7.10.jar with internal asm) - edit spec file, rebuilt with groovy17 support (dont work with groovy 1.8.x), bootstrap mode - imported package gradle + dmorgan <dmorgan> - Fix group