Blob Blame History Raw
%global         maven_version %(rpm -q --qf "%%{version}" maven)
Name:           takari-smart-builder
Version:        0.6.1
Release:        1%{?dist}
Summary:        A replacement scheduling projects builds in a Maven multi-module build

# https://github.com/takari/takari-smart-builder/issues/7 says that the package
# WILL be licensed under ASL 2.0,
# but the parent pom of this project is using EPL.
License:        EPL and ASL 2.0
URL:            https://github.com/takari/%{name}
BuildArch:      noarch

Source0:        https://github.com/takari/%{name}/archive/takari-smart-builder-%{version}.tar.gz

BuildRequires:  maven
BuildRequires:  maven-local
BuildRequires:  junit
BuildRequires:  mvn(com.google.guava:guava)
BuildRequires:  mvn(io.takari:incrementalbuild)
BuildRequires:  mvn(io.takari.m2e.workspace:org.eclipse.m2e.workspace.cli)
# Only takari-lifecycle-plugin >= 1.12.0 provides:
# org.eclipse.jdt.internal.compiler.classfmt.MethodInfo.getParameterAnnotations(I)
BuildRequires:  mvn(io.takari.maven.plugins:takari-lifecycle-plugin) >= 1.12.0
BuildRequires:  mvn(io.takari.maven.plugins:takari-plugin-testing)
BuildRequires:  mvn(io.takari:takari-archiver)
BuildRequires:  mvn(io.takari:takari:pom:)


%description
The Takari Smart Builder is a replacement scheduling projects builds in
a Maven multi-module build.

Documentation for usage and more is available in the Takari TEAM documentation
at http://takari.io/book/index.html

%package javadoc
Summary:        API documentation for %{name}

%description javadoc
This package provides %{summary}.

%prep
%setup -q -n %{name}-%{name}-%{version}

# No need to test maven-3.3.1 installation
# src/test/java/io/takari/maven/builder/smart/TestProjectDependencyGraph.java Does not implement
# ProjectDependencyGraph.getAllProjects()
# Thus remove test under smart/
rm -fr src/test/java/io/takari/maven/builder/smart/*

%build
%mvn_build -X -- -Dproject.build.sourceEncoding=UTF-8 -Dmaven.version=%{maven_version}

rm -f target/site/apidocs/javadoc.sh

%install
%mvn_install -X
mkdir -p %{buildroot}/%{_datadir}/maven/lib/ext
ln -s %{_javadir}/%{name}/%{name}.jar %{buildroot}/%{_datadir}/maven/lib/ext/%{name}.jar


%files -f .mfiles
%license LICENSE
%doc README.md
%{_datadir}/maven/lib/ext/%{name}.jar

%files javadoc -f .mfiles-javadoc
%license LICENSE

%changelog
* Mon Jun 25 2018  Ding-Yi Chen <dchen@redhat.com> - 0.6.1-1
- Upstream update to 0.6.1
  + Add maven wrapper for 3.5.0
  + Update takari parent

* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.6.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild

* Mon Mar 20 2017 Ding-Yi Chen <dchen@redhat.com> - 0.6.0-1
- Run aggregator mojos only once per reactor build
- Don't persist/read build timing
- Reworked builder metrics and critical path reporting
- LICENSE file is now in tar ball

* Mon Mar 06 2017 Ding-Yi Chen <dchen@redhat.com> - 0.5.0-4
- Upstream provides LICENSE file

* Fri Mar 03 2017 Ding-Yi Chen <dchen@redhat.com> - 0.5.0-3
- Rebuild for Fedora 26

* Mon Feb 27 2017 Ding-Yi Chen <dchen@redhat.com> - 0.5.0-2
- Add comment regarding license

* Fri Feb 24 2017 Ding-Yi Chen <dchen@redhat.com> - 0.5.0-1
- Initial import