hamcrest/hamcrest.spec
2023-09-27 10:22:56 +08:00

95 lines
2.7 KiB
RPMSpec

%bcond_with tests
Name: hamcrest
Version: 2.2
Release: 1
Epoch: 0
Summary: Library of matcher objects for building test expressions
License: BSD-3-Clause
URL: https://github.com/hamcrest/JavaHamcrest
Source0: https://github.com/hamcrest/JavaHamcrest/archive/hamcrest-java-%{version}.tar.gz
Source1: %{name}-build.xml
Source2: https://repo1.maven.org/maven2/org/hamcrest/hamcrest/%{version}/hamcrest-%{version}.pom
Patch0001: 0001-Fix-build-with-OpenJDK-11.patch
BuildArch: noarch
BuildRequires: ant
BuildRequires: fdupes
BuildRequires: java-devel >= 1.8
BuildRequires: javapackages-local
%if %{with tests}
BuildRequires: ant-junit
%endif
Provides: %{name}-core = %{epoch}:%{version}-%{release}
Obsoletes: %{name}-core < %{epoch}:%{version}-%{release}
Obsoletes: %{name}-demo < %{epoch}:%{version}-%{release}
%description
Provides a library of matcher objects (also known as constraints or
predicates) allowing 'match' rules to be defined declaratively, to be
used in other frameworks. Typical scenarios include testing frameworks,
mocking libraries and UI validation rules.
%package help
Summary: Javadoc for hamcrest package
Provides: %{name}-javadoc = %{epoch}:%{version}-%{release}
Obsoletes: %{name}-javadoc < %{epoch}:%{version}-%{release}
%description help
Javadoc for hamcrest package.
%prep
%autosetup -n JavaHamcrest-%{version} -p1
# Only build hamcrest
mkdir ../bak
cp -r hamcrest/* ../bak
cp LICENSE.txt ../bak
cp README.md ../bak
rm -rf *
cp -r ../bak/* .
rm -rf ../bak
cp %{SOURCE1} build.xml
cp %{SOURCE2} .
%build
%ant \
%if %{without tests}
-Dtest.skip=true \
%endif
jar javadoc
%install
# jars
install -dm 0755 %{buildroot}%{_javadir}/%{name}
install -pm 0644 target/%{name}-%{version}.jar %{buildroot}%{_javadir}/%{name}/%{name}.jar
ln -sf %{name}.jar %{buildroot}%{_javadir}/%{name}/all.jar
ln -sf %{name}.jar %{buildroot}%{_javadir}/%{name}/core.jar
ln -sf %{name}.jar %{buildroot}%{_javadir}/%{name}/library.jar
# poms
install -dm 0755 %{buildroot}%{_mavenpomdir}/%{name}
install -pm 0644 %{SOURCE2} %{buildroot}%{_mavenpomdir}/%{name}/%{name}.pom
%add_maven_depmap %{name}/%{name}.pom %{name}/%{name}.jar -a "org.hamcrest:hamcrest-all,org.hamcrest:hamcrest-core,org.hamcrest:hamcrest-library"
# javadoc
install -dm 0755 %{buildroot}%{_javadocdir}/%{name}
cp -pr target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}
%fdupes -s %{buildroot}%{_javadocdir}
%files -f .mfiles
%{_javadir}/%{name}
%license LICENSE.txt
%doc README.md
%files help
%{_javadocdir}/%{name}
%changelog
* Mon Sep 25 2023 wangkai <13474090681@163.com> - 0:2.2-1
- Update to 2.2
* Tue Dec 03 2019 daiqianwen <daiqianwen@huawei.com> - 0:1.3-25
- Package init