146 lines
4.7 KiB
RPMSpec
146 lines
4.7 KiB
RPMSpec
#
|
|
# spec file for package gradle
|
|
#
|
|
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
#
|
|
|
|
%define javaversion 11
|
|
|
|
Name: gradle
|
|
Version: 7.5.1
|
|
%define binversion 7.5
|
|
Release: 0
|
|
Summary: A powerful build system for the JVM
|
|
License: Apache-2.0
|
|
Group: Development/Libraries/Java
|
|
Url: http://www.gradle.org
|
|
Source0: %{name}-%{version}.tar.gz
|
|
# https://services.gradle.org/versions/all
|
|
Source1: all-released-versions.json
|
|
# generated via --write-verification-metadata sha256 in gradle-kit
|
|
Source2: verification-metadata.xml
|
|
Patch1: 0001-make-asciidoctor-version-explicit.patch
|
|
Patch2: 0002-Introduce-JvmImplementation.ANY-to-truly-select-any-.patch
|
|
Patch3: 0003-drop-setVendor-for-Java.patch
|
|
|
|
Provides: gradle7
|
|
Conflicts: gradle
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
BuildRequires: git
|
|
BuildRequires: gradle-kit = %{version}
|
|
BuildRequires: java-devel = %{javaversion}
|
|
BuildRequires: procps
|
|
BuildRequires: unzip
|
|
BuildArch: noarch
|
|
Requires: java-headless = %{javaversion}
|
|
|
|
%description
|
|
Gradle is a build tool with a focus on build automation and support
|
|
for multi-language development. If you are building, testing,
|
|
publishing, and deploying software on any platform, Gradle offers a
|
|
flexible model that can support the entire development lifecycle from
|
|
compiling and packaging code to publishing web sites. Gradle has been
|
|
designed to support build automation across multiple languages and
|
|
platforms including Java, Scala, Android, C/C++, and Groovy, and is
|
|
closely integrated with development tools and continuous integration
|
|
servers including Eclipse, IntelliJ, and Jenkins.
|
|
|
|
For more information about Gradle, please visit: http://gradle.org
|
|
|
|
%prep
|
|
%setup -q -n %{name}-%{version}
|
|
#%patch1 -p1
|
|
%patch2 -p1
|
|
%patch3 -p1
|
|
|
|
cp %{S:2} gradle
|
|
|
|
cd ..
|
|
|
|
if [ -d %{_datadir}/tetra/gradle ]; then
|
|
rm -rf /tmp/gradle*
|
|
cp -Rf --remove-destination %{_datadir}/tetra/gradle* /tmp
|
|
else
|
|
cp -Rf %{_datadir}/tetra kit
|
|
fi
|
|
|
|
unzip -o %{_datadir}/tetra/%{name}-%{binversion}-bin.zip
|
|
|
|
%build
|
|
|
|
# from debian:rules
|
|
#mkdir --parents buildSrc/src/main/java
|
|
|
|
export GRADLE_USER_HOME=/tmp/gradle
|
|
export GRADLE_CACHE=/tmp/gradle-cache
|
|
export BUILD_VCS_NUMBER=%{version}
|
|
export M2_HOME=`pwd`/../kit/m2
|
|
export GRADLE_OPTS="-Xmx1024m"
|
|
export LANG=en_US.UTF-8
|
|
export YARN_CACHE_FOLDER=/tmp/gradle/yarn
|
|
export JAVA_HOME=%{_libdir}/jvm/java-%{javaversion}-openjdk-%{javaversion}
|
|
|
|
mkdir build
|
|
mkdir -p ~/.m2
|
|
ln -sf /home/abuild/rpmbuild/BUILD/kit/m2 ~/.m2/repository
|
|
cp %{S:1} build
|
|
|
|
# --stacktrace --info --debug \
|
|
|
|
../%{name}-%{binversion}/bin/gradle \
|
|
--gradle-user-home $GRADLE_USER_HOME \
|
|
--project-cache-dir $GRADLE_CACHE \
|
|
-Dfile.encoding=UTF-8 \
|
|
--project-prop finalRelease=true \
|
|
--project-prop org.gradle.java.installations.auto-detect=false \
|
|
--project-prop org.gradle.java.installations.auto-download=false \
|
|
--project-prop org.gradle.java.installations.fromEnv=JAVA_HOME \
|
|
--offline \
|
|
assemble
|
|
|
|
%install
|
|
export GRADLE_USER_HOME=/tmp/gradle
|
|
export GRADLE_CACHE=/tmp/gradle-cache
|
|
export BUILD_VCS_NUMBER=%{version}
|
|
export NO_BRP_CHECK_BYTECODE_VERSION=true
|
|
export LANG=en_US.UTF-8
|
|
export YARN_CACHE_FOLDER=/tmp/gradle/yarn
|
|
export JAVA_HOME=%{_libdir}/jvm/java-%{javaversion}-openjdk-%{javaversion}
|
|
|
|
../%{name}-%{binversion}/bin/gradle \
|
|
--gradle-user-home $GRADLE_USER_HOME \
|
|
--project-cache-dir $GRADLE_CACHE \
|
|
--project-prop finalRelease=true \
|
|
--project-prop org.gradle.java.installations.auto-detect=false \
|
|
--project-prop org.gradle.java.installations.auto-download=false \
|
|
--project-prop org.gradle.java.installations.fromEnv=JAVA_HOME \
|
|
--offline \
|
|
--project-prop gradle_installPath=%{buildroot}%{_datadir}/%{name} \
|
|
install
|
|
|
|
chmod 644 %{buildroot}%{_datadir}/%{name}/lib/*.jar
|
|
chmod 644 %{buildroot}%{_datadir}/%{name}/lib/plugins/*.jar
|
|
|
|
mkdir %{buildroot}%{_bindir}
|
|
ln -s %{_datadir}/%{name}/bin/gradle %{buildroot}%{_bindir}
|
|
rm -f %{buildroot}%{_datadir}/%{name}/bin/gradle.bat
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
%dir %{_datadir}/%{name}
|
|
%{_datadir}/%{name}
|
|
%{_bindir}/*
|
|
|
|
%changelog
|