File eclipse-nebula.spec of Package eclipse-nebula

#
# spec file for package eclipse-nebula
#
# 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:           eclipse-nebula
Version:        2.4.3
Release:        0
Summary:        Nebula Project
License:        EPL-2.0
Group:          Development/Libraries/Java
URL:            https://www.eclipse.org/nebula/
Source:         https://github.com/eclipse/nebula/archive/V%{version}.tar.gz#/%{name}-%{version}.tar.gz
BuildRequires:  fdupes
BuildRequires:  java-devel
BuildRequires:  maven-local
BuildRequires:  tycho
BuildRequires:  mvn(org.mockito:mockito-core)
BuildRequires:  osgi(org.eclipse.draw2d)
BuildConflicts: java >= 12
BuildConflicts: java-devel >= 12
BuildConflicts: java-headless >= 12
BuildArch:      noarch
# Upstream Eclipse no longer supports non-64bit arches
ExcludeArch:    s390 %{arm} %{ix86}

%description
Set of UI elements that can be used in fat or thin client applications based on Java and SWT.

%package javadoc
Summary:        API documentation for %{name}
Group:          Documentation/HTML

%description javadoc
API documentation for %{name}.

%prep
%autosetup -n nebula-%{version}

# code coverage checks aren't required for building
%pom_remove_plugin :jacoco-maven-plugin releng/org.eclipse.nebula.nebula-parent/pom.xml

# Remove jgit deps because building from source tarball, not a git repo
%pom_remove_dep :tycho-sourceref-jgit releng/org.eclipse.nebula.nebula-parent
%pom_xpath_remove 'pom:configuration/pom:sourceReferences' releng/org.eclipse.nebula.nebula-parent

# not relevant for RPM builds
%pom_disable_module ../org.eclipse.nebula.updatesite releng/org.eclipse.nebula.nebula-release/pom.xml

# disable UI tests
%pom_disable_module org.eclipse.nebula.widgets.tablecombo.test widgets/tablecombo
%pom_disable_module org.eclipse.nebula.widgets.cdatetime.tests widgets/cdatetime
%pom_disable_module org.eclipse.nebula.cwt.tests widgets/cwt
%pom_disable_module org.eclipse.nebula.widgets.formattedtext.tests widgets/formattedtext
%pom_disable_module org.eclipse.nebula.widgets.gallery.tests widgets/gallery
%pom_disable_module org.eclipse.nebula.widgets.oscilloscope.tests widgets/oscilloscope
%pom_disable_module org.eclipse.nebula.paperclips.tests widgets/paperclips
%pom_disable_module org.eclipse.nebula.widgets.radiogroup.tests widgets/radiogroup
%pom_disable_module org.eclipse.nebula.widgets.timeline.tests widgets/timeline
%pom_disable_module org.eclipse.nebula.widgets.treemapper.tests widgets/treemapper
%pom_disable_module org.eclipse.nebula.widgets.xviewer.tests widgets/xviewer

# disable examples mostly due to dependencies
%pom_disable_module ../../examples/org.eclipse.nebula.examples releng/org.eclipse.nebula.nebula-release/pom.xml
%pom_disable_module ../../examples/org.eclipse.nebula.examples.feature releng/org.eclipse.nebula.nebula-release/pom.xml
%pom_disable_module ../org.eclipse.nebula.examples.release.feature releng/org.eclipse.nebula.nebula-release/pom.xml

%pom_disable_module org.eclipse.nebula.widgets.calendarcombo.example widgets/calendarcombo
%pom_disable_module org.eclipse.nebula.widgets.cdatetime.example widgets/cdatetime
%pom_disable_module org.eclipse.nebula.widgets.cdatetime.example.e4 widgets/cdatetime
%pom_disable_module org.eclipse.nebula.widgets.collapsiblebuttons.example widgets/collapsiblebuttons
%pom_disable_module org.eclipse.nebula.widgets.datechooser.example widgets/datechooser
%pom_disable_module org.eclipse.nebula.effects.stw.example widgets/effects
%pom_disable_module org.eclipse.nebula.widgets.gallery.example widgets/gallery
%pom_disable_module org.eclipse.nebula.widgets.ganttchart.example widgets/ganttchart
%pom_disable_module org.eclipse.nebula.widgets.geomap.example widgets/geomap
%pom_disable_module org.eclipse.nebula.widgets.grid.example widgets/grid
%pom_disable_module org.eclipse.nebula.widgets.grid.example.e4 widgets/grid
%pom_disable_module org.eclipse.nebula.widgets.oscilloscope.example widgets/oscilloscope/
%pom_disable_module org.eclipse.nebula.widgets.oscilloscope.example.e4 widgets/oscilloscope/
%pom_disable_module org.eclipse.nebula.widgets.pagination.example widgets/pagination
%pom_disable_module org.eclipse.nebula.widgets.paperclips.example widgets/paperclips
%pom_disable_module org.eclipse.nebula.widgets.picture.example widgets/picture
%pom_disable_module org.eclipse.nebula.widgets.pshelf.example widgets/pshelf
%pom_disable_module org.eclipse.nebula.widgets.pgroup.example widgets/pgroup
%pom_disable_module org.eclipse.nebula.widgets.richtext.example widgets/richtext
%pom_disable_module org.eclipse.nebula.widgets.richtext.example.e4 widgets/richtext
%pom_disable_module org.eclipse.nebula.widgets.tablecombo.example widgets/tablecombo
%pom_disable_module org.eclipse.nebula.widgets.tablecombo.example.e4 widgets/tablecombo
%pom_disable_module org.eclipse.nebula.widgets.timeline.example widgets/timeline
%pom_disable_module org.eclipse.nebula.widgets.treemapper.examples widgets/treemapper
%pom_disable_module org.eclipse.nebula.visualization.example widgets/visualization
%pom_disable_module org.eclipse.nebula.visualization.xygraph.exampleview widgets/visualization
%pom_disable_module org.eclipse.nebula.widgets.xviewer.example widgets/xviewer

%build
# https://www.eclipse.org/lists/nebula-dev/msg03418.html
cd releng/org.eclipse.nebula.nebula-release
%{mvn_build} -f -- -Dsource=8 -Dencoding=utf-8

%install
cd releng/org.eclipse.nebula.nebula-release
%mvn_install
%fdupes -s %{buildroot}%{_javadocdir}
%fdupes %{buildroot}%{_datadir}/eclipse/droplets/nebula/

%files -f releng/org.eclipse.nebula.nebula-release/.mfiles
%doc README.md
%license LICENSE

%files javadoc -f releng/org.eclipse.nebula.nebula-release/.mfiles-javadoc
%license LICENSE

%changelog
openSUSE Build Service is sponsored by