Files
vavr/vavr.spec

88 lines
2.8 KiB
RPMSpec
Raw Permalink Normal View History

#
# 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
Javas 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