88 lines
2.8 KiB
RPMSpec
88 lines
2.8 KiB
RPMSpec
#
|
||
# spec file for package vavr
|
||
#
|
||
# Copyright (c) 2025 SUSE LLC
|
||
#
|
||
# 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 https://bugs.opensuse.org/
|
||
#
|
||
|
||
|
||
Name: vavr
|
||
Version: 0.10.6
|
||
Release: 0
|
||
Summary: An object-functional language extension to Java 8
|
||
License: Apache-2.0
|
||
Group: Development/Libraries/Java
|
||
URL: https://github.com/vavr-io/%{name}
|
||
Source0: %{url}/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
||
BuildRequires: fdupes
|
||
BuildRequires: java-devel >= 1.8
|
||
BuildRequires: maven-local
|
||
BuildRequires: mvn(org.apache.felix:maven-bundle-plugin)
|
||
BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin)
|
||
BuildRequires: mvn(org.moditect:moditect-maven-plugin)
|
||
BuildRequires: mvn(org.sonatype.oss:oss-parent:pom:)
|
||
BuildArch: noarch
|
||
|
||
%description
|
||
Vavr is an object-functional language extension to Java 8, which aims to reduce
|
||
the lines of code and increase code quality. It provides persistent
|
||
collections, functional abstractions for error handling, concurrent
|
||
programming, pattern matching and much more.
|
||
|
||
Vavr fuses the power of object-oriented programming with the elegance and
|
||
robustness of functional programming. The most interesting part is a
|
||
feature-rich, persistent collection library that smoothly integrates with
|
||
Java’s standard collections.
|
||
|
||
Because Vavr does not depend on any libraries (other than the JVM) you can
|
||
easily add it as standalone .jar to your classpath.
|
||
|
||
%package javadoc
|
||
Summary: API documentation for %{name}
|
||
Group: Documentation/HTML
|
||
|
||
%description javadoc
|
||
API documentation for %{name}.
|
||
|
||
%prep
|
||
%autosetup
|
||
|
||
%pom_disable_module %{name}-benchmark
|
||
|
||
%pom_remove_plugin -r :maven-source-plugin
|
||
%pom_remove_plugin -r :maven-enforcer-plugin
|
||
# Use the already generated files to avoid having to run scala script
|
||
%pom_remove_plugin -r :maven-clean-plugin
|
||
%pom_remove_plugin -r :scala-maven-plugin
|
||
|
||
%pom_xpath_remove -r "pom:arg[.='-Werror']"
|
||
|
||
%pom_xpath_remove -r "pom:executions/pom:execution/pom:configuration/pom:jvmVersion"
|
||
|
||
%build
|
||
%{mvn_build} -f -- \
|
||
-Dsource=8
|
||
|
||
%install
|
||
%mvn_install
|
||
%fdupes -s %{buildroot}%{_javadocdir}
|
||
|
||
%files -f .mfiles
|
||
%license LICENSE
|
||
%doc {CONTRIBUTING,README}.md
|
||
|
||
%files javadoc -f .mfiles-javadoc
|
||
%license LICENSE
|
||
|
||
%changelog
|