Blob Blame History Raw
%global namedreltag .Beta2
%global namedversion %{version}%{?namedreltag}

Name:             infinispan
Version:          6.0.0
Release:          0.1%{namedreltag}%{?dist}
Summary:          Data grid platform
License:          LGPLv2+
URL:              http://www.jboss.org/infinispan
Source0:          https://github.com/infinispan/infinispan/archive/%{namedversion}.tar.gz

Patch0:           0001-Avro-1.6.2-support.patch

BuildArch:        noarch

BuildRequires:    apache-commons-math
BuildRequires:    apache-commons-pool
BuildRequires:    avro
BuildRequires:    c3p0
BuildRequires:    jcip-annotations
BuildRequires:    jboss-logging-tools
BuildRequires:    jboss-marshalling
BuildRequires:    jboss-naming
BuildRequires:    jboss-transaction-1.1-api
BuildRequires:    jgroups
BuildRequires:    lucene
BuildRequires:    geronimo-jpa
BuildRequires:    xstream
BuildRequires:    narayana
BuildRequires:    maven-local
BuildRequires:    maven-enforcer-plugin
BuildRequires:    maven-plugin-exec
BuildRequires:    maven-resources-plugin
BuildRequires:    maven-remote-resources-plugin
BuildRequires:    rhq-plugin-annotations
BuildRequires:    staxmapper
BuildRequires:    antlr3-java
BuildRequires:    maven-failsafe-plugin
BuildRequires:    maven-invoker-plugin
BuildRequires:    lucene
BuildRequires:    lucene-contrib
BuildRequires:    maven-dependency-plugin
BuildRequires:    maven-plugin-bundle
BuildRequires:    hibernate-search
BuildRequires:    hibernate-hql
BuildRequires:    infinispan
BuildRequires:    protostream
BuildRequires:    gnu-getopt

%description
Infinispan is an extremely scalable, highly available data grid
platform - 100% open source, and written in Java. The purpose of
Infinispan is to expose a data structure that is highly concurrent,
designed ground-up to make the most of modern multi-processor/multi-core
architectures while at the same time providing distributed cache
capabilities.  At its core Infinispan exposes a Cache interface which
extends java.util.Map. It is also optionally is backed by a peer-to-peer
network architecture to distribute state efficiently around a data grid.

%package javadoc
Summary:          Javadocs for %{name}

%description javadoc
This package contains the API documentation for %{name}.

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

%patch0 -p1

# Rename the license file
cp -r license/src/main/resources/META-INF/LICENSE.txt.vm LICENSE.txt

# Disable unnecessary at this point modules
%pom_disable_module extended-statistics
%pom_disable_module tools
%pom_disable_module tree
%pom_disable_module lucene/lucene-v4
%pom_disable_module server
%pom_disable_module server/core
%pom_disable_module server/memcached
%pom_disable_module server/hotrod
%pom_disable_module server/websocket
%pom_disable_module server/rest
%pom_disable_module cli/cli-server
%pom_disable_module cli/cli-client
%pom_disable_module rhq-plugin
%pom_disable_module spring
%pom_disable_module demos/gui
%pom_disable_module demos/ec2
%pom_disable_module demos/distexec
%pom_disable_module demos/ec2-ui
%pom_disable_module demos/directory
%pom_disable_module demos/lucene-directory-demo
%pom_disable_module demos/gridfs-webdav
%pom_disable_module demos/nearcache
%pom_disable_module demos/nearcache-client
%pom_disable_module cdi/extension
%pom_disable_module integrationtests/luceneintegration
%pom_disable_module remote-query/remote-query-server

%pom_disable_module as-modules
%pom_disable_module jcache

%pom_remove_dep "org.jboss.arquillian:arquillian-bom" parent/pom.xml
%pom_remove_dep "org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-bom" parent/pom.xml

%pom_remove_plugin ":maven-remote-resources-plugin" parent/pom.xml

%pom_xpath_remove "pom:dependencies/pom:dependency[pom:scope = 'test']/pom:scope" lucene/lucene-directory/pom.xml

# Remove test deps from hotrod client
%pom_xpath_remove "pom:dependencies/pom:dependency[pom:scope = 'test']" client/hotrod-client/pom.xml

# Lucene 4 is unavailable
%pom_remove_dep ":infinispan-lucene-v4" lucene/lucene-directory/pom.xml
%pom_remove_dep ":infinispan-lucene-v4" parent/pom.xml
%pom_xpath_remove "pom:build/pom:plugins/pom:plugin[pom:artifactId = 'maven-dependency-plugin']/pom:executions/pom:execution/pom:configuration/pom:artifactItems/pom:artifactItem[pom:artifactId = 'infinispan-lucene-v4']" lucene/lucene-directory/pom.xml

%pom_remove_plugin ":animal-sniffer-maven-plugin" parent/pom.xml

# Support for JGroups 3.4.0
sed -i "s|SiteUUID.getSiteName(src.getSite())|src.getSite()|" core/src/main/java/org/infinispan/xsite/BackupReceiverRepositoryImpl.java

# TMP
sed -i "s|error|first|" lucene/lucene-directory/pom.xml

%pom_remove_dep "org.scala-lang:scala-library" server/pom.xml
%pom_remove_plugin "org.scala-tools:maven-scala-plugin" server/core/pom.xml

%build
%mvn_build -f

%install
%mvn_install

%files -f .mfiles
%dir %{_javadir}/%{name}
%doc LICENSE.txt README.md

%files javadoc -f .mfiles-javadoc
%doc LICENSE.txt

%changelog
* Thu Oct 24 2013 Marek Goldmann <mgoldman@redhat.com> - 6.0.0-0.1.Beta2
- Upstream release 6.0.0.Beta2

* Wed Oct 23 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 5.3.0-5
- Rebuild to regenerate broken POMs
- Related: rhbz#1021484

* Mon Oct 21 2013 Marek Goldmann <mgoldman@redhat.com> - 5.3.0-4
- Enabled in full query module

* Thu Oct 10 2013 Marek Goldmann <mgoldman@redhat.com> - 5.3.0-3
- Enabled lucene module

* Thu Oct 10 2013 Marek Goldmann <mgoldman@redhat.com> - 5.3.0-2
- Enabled lucene-directory and lucene-v3 modules

* Thu Aug 01 2013 Marek Goldmann <mgoldman@redhat.com> - 5.3.0-1
- Upsteam release 5.3.0.Final
- New guidelines

* Wed Feb 20 2013 Ricardo Arguello <ricardo@fedoraproject.org> - 5.1.2-6
- Added apache-commons-pool dependency

* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.1.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild

* Wed Feb 06 2013 Java SIG <java-devel@lists.fedoraproject.org> - 5.1.2-4
- Update for https://fedoraproject.org/wiki/Fedora_19_Maven_Rebuild
- Replace maven BuildRequires with maven-local

* Mon Aug 6 2012 Ricardo Arguello <ricardo@fedoraproject.org> - 5.1.2-3
- Added BR: maven-enforcer-plugin

* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.1.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild

* Thu Mar 22 2012 Ricardo Arguello <ricardo@fedoraproject.org> 5.1.2-1
- Updated to 5.1.2 from upstream
- Use JAR filenames assigned by the build
- Add license file

* Wed Mar 7 2012 Ricardo Arguello <ricardo@fedoraproject.org> 5.1.1-2
- Cleanup of the spec file

* Tue Feb 21 2012 Marek Goldmann <mgoldman@redhat.com> 5.1.1-1
- Initial packaging