Files
mbassador/mbassador.spec

77 lines
2.4 KiB
RPMSpec

#
# spec file for package mbassador
#
# Copyright (c) 2022 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: mbassador
Version: 1.3.1
Release: 0
Summary: An event bus aiming at ease of use and performance
License: MIT
URL: https://github.com/bennidi/mbassador.git
Source0: %{name}-%{version}.tar.xz
BuildRequires: fdupes
BuildRequires: java-devel >= 1.8
BuildRequires: maven-local
BuildRequires: mvn(de.odysseus.juel:juel-impl)
BuildRequires: mvn(de.odysseus.juel:juel-spi)
BuildRequires: mvn(javax.el:el-api)
BuildRequires: mvn(org.apache.felix:maven-bundle-plugin)
BuildArch: noarch
%description
MBassador is a light-weight, high-performance message (event) bus
implementation based on the publish subscribe pattern. It is designed
for ease of use and aims to be feature rich and extensible while
preserving resource efficiency and performance.
The core of MBassador's high performance is a specialized data
structure that minimizes lock contention such that performance
degradation of concurrent read/write access is minimal. The
advantages of this design are illustrated in the eventbus
performance github repository.
%package javadoc
Summary: API Documentation for %{name}
%description javadoc
JavaDoc documentation for %{name}
%prep
%setup -q
%pom_remove_plugin :nexus-staging-maven-plugin
%pom_remove_plugin :maven-source-plugin
%pom_remove_plugin :maven-javadoc-plugin
%pom_xpath_set "pom:project/pom:properties/pom:jdk.version" "1.8"
%pom_xpath_set "pom:project/pom:properties/pom:project.build.java.version" "1.8"
%build
%{mvn_build} -f -- \
-Dproject.build.outputTimestamp=$(date -u -d @${SOURCE_DATE_EPOCH:-$(date +%%s)} +%%Y-%%m-%%dT%%H:%%M:%%SZ)
%install
%mvn_install
%fdupes -s %{buildroot}%{_javadocdir}
%files -f .mfiles
%license LICENSE
%files javadoc -f .mfiles-javadoc
%changelog