1602a628创建于 2021年5月31日历史提交
Name:          hazelcast
Version:       3.2.2
Release:       13
Summary:       Hazelcast CE In-Memory DataGrid
License:       ASL 2.0
URL:           http://www.hazelcast.com/
Source0:       https://github.com/hazelcast/hazelcast/archive/v%{version}.tar.gz


BuildRequires: mvn(log4j:log4j:1.2.17)
BuildRequires: mvn(net.sourceforge.findbugs:annotations)
BuildRequires: mvn(org.apache.tomcat:tomcat-servlet-api)
BuildRequires: mvn(org.codehaus.groovy:groovy)
BuildRequires: mvn(org.hibernate:hibernate-core:4)
BuildRequires: mvn(org.jboss.spec.javax.resource:jboss-connector-api_1.6_spec)
BuildRequires: mvn(org.jruby:jruby-core)
BuildRequires: mvn(org.osgi:org.osgi.core)
BuildRequires: mvn(org.slf4j:slf4j-api)
BuildRequires: glassfish-jsp-api

%if 0
BuildRequires: hibernate3
BuildRequires: mvn(javax.annotation:jsr250-api)
BuildRequires: mvn(org.springframework:spring-beans)
BuildRequires: mvn(org.springframework:spring-context)
BuildRequires: mvn(org.springframework:spring-core)
BuildRequires: mvn(org.mongodb:mongo-java-driver) >= 2.7.3
BuildRequires: mvn(org.springframework.data:spring-data-mongodb) >= 1.0.1.RELEASE

BuildRequires: mvn(org.springframework:spring-tx)
BuildRequires: mvn(org.springframework:spring-test)

BuildRequires: mvn(javassist:javassist)
BuildRequires: mvn(org.hsqldb:hsqldb)
BuildRequires: mvn(org.eclipse.jetty:jetty-webapp)
BuildRequires: mvn(org.slf4j:slf4j-simple)
%endif

BuildRequires: mvn(junit:junit)
BuildRequires: mvn(org.mockito:mockito-core)

BuildRequires: maven-local
BuildRequires: maven-dependency-plugin
BuildRequires: maven-assembly-plugin
BuildRequires: maven-antrun-plugin
BuildRequires: maven-plugin-bundle
BuildRequires: maven-source-plugin

BuildArch:     noarch

%description
Hazelcast CE is an open source highly scalable data distribution platform.
Hazelcast allows you to easily share and partition your data across your
cluster.

%package client
Summary:       Hazelcast Client

%description client
Hazelcast Client enables you to do all Hazelcast
operations without being a member of the cluster.

%package cloud
Summary:       Hazelcast EC2 Auto Discovery

%description cloud
Hazelcast EC2 Auto Discovery.

%package hibernate
Summary:       Integration of Hazelcast with Hibernate 3
Provides:      %{name}-hibernate3 = %{version}-%{release}
Obsoletes:     %{name}-hibernate3 < %{version}-%{release}

%description hibernate
Hazelcast second level cache provider for Hibernate 3.

%package ra
Summary:       Hazelcast Resource Adapter
Requires:      %{name} = %{version}-%{release}

%description ra
Hazelcast Resource Adapter.

%if 0
%package spring
Summary:       Integration of Hazelcast with Spring

%description spring
Hazelcast Spring cache provider.
%endif

%package wm
Summary:       Hazelcast WebFilter

%description wm
Hazelcast dynamic HTTP session clustering.

%package javadoc
Summary:       Javadoc for %{name}

%description javadoc
This package contains javadoc for %{name}.

%prep
%setup -q -n %{name}-%{version}
find . -name "*.bat" -delete
find . -name "*.class" -delete
find . -name "*.jar" -delete
find . -name "*.rar" -delete
find . -name "*.war" -delete

%pom_remove_plugin :findbugs-maven-plugin
%pom_remove_plugin -r :maven-source-plugin
%pom_remove_plugin -r :animal-sniffer-maven-plugin 
%pom_remove_plugin -r :jetty-maven-plugin

%pom_disable_module %{name}-documentation
%pom_disable_module hazelcast-hibernate3 %{name}-hibernate
%pom_disable_module hazelcast-jca-rar %{name}-ra
# requires org.springframework.data:spring-data-mongodb
%pom_disable_module %{name}-spring

%pom_xpath_remove "pom:project/pom:build/pom:plugins/pom:plugin[pom:artifactId='maven-bundle-plugin']/pom:executions/pom:execution/pom:configuration/pom:instructions/pom:Import-Package" %{name}-all
%pom_xpath_inject "pom:project/pom:build/pom:plugins/pom:plugin[pom:artifactId='maven-bundle-plugin']/pom:executions/pom:execution/pom:configuration/pom:instructions" "
<Import-Package>
    !junit.framework,
    !org.junit,
    !org.mockito,
    org.apache.log4j;resolution:=optional,
    org.apache.log4j.*;resolution:=optional,
    org.slf4j;resolution:=optional,
    org.hibernate;resolution:=optional,
    org.hibernate.*;resolution:=optional,
    *
</Import-Package>" %{name}-all

%pom_remove_plugin :maven-shade-plugin %{name}-all

%pom_change_dep :hazelcast-hibernate3 :hazelcast-hibernate4 %{name}-all

%pom_change_dep -r org.mockito: :mockito-core
%pom_change_dep org.jruby: :jruby-core %{name}
%pom_change_dep org.codehaus.groovy: :groovy %{name}

%pom_change_dep :geronimo-j2ee-connector_1.5_spec org.jboss.spec.javax.resource:jboss-connector-api_1.6_spec %{name}-ra/%{name}-jca

%pom_remove_dep org.jboss.spec:jboss-javaee-6.0 %{name}-ra/%{name}-jca
%pom_remove_dep org.jboss.arquillian.extension:arquillian-transaction-bom %{name}-ra/%{name}-jca
%pom_remove_dep org.jboss.arquillian:arquillian-bom %{name}-ra/%{name}-jca

%pom_change_dep javax.servlet:javax.servlet-api org.apache.tomcat:tomcat-servlet-api %{name}-wm

cp -p src/main/resources/apache-v2-license.txt license.txt
cp -p src/main/resources/notice.txt .

sed -i 's|../lib/hazelcast-${project.version}.jar|%{_javadir}/%{name}/%{name}.jar|' \
 %{name}/src/main/resources/*.sh
sed -i 's|../lib/hazelcast-client-${project.version}.jar|%{_javadir}/%{name}/%{name}-client.jar|' \
%{name}/src/main/resources/client.sh

%pom_xpath_remove -r "pom:project/pom:dependencies/pom:dependency[pom:scope='test']"
rm -rf hazelcast*/src/test/java/*

%pom_xpath_set -r "pom:properties/pom:log4j.version" 1.2.17
%pom_xpath_set -r "pom:properties/pom:hibernate.core.version" 4

%mvn_package ":%{name}-root" %{name}
%mvn_package ":%{name}-hibernate*" %{name}-hibernate
%mvn_package ":%{name}-jca" %{name}-ra

%build

%mvn_build -f -s

%install
%mvn_install

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

%files client -f .mfiles-%{name}-client
%license license.txt notice.txt

%files cloud -f .mfiles-%{name}-cloud
%license license.txt notice.txt

%files hibernate -f .mfiles-%{name}-hibernate
%license license.txt notice.txt

%files ra -f .mfiles-%{name}-ra
%license license.txt notice.txt

%if 0
%files spring -f .mfiles-%{name}-spring
%license license.txt notice.txt
%endif

%files wm -f .mfiles-%{name}-wm
%license license.txt notice.txt

%files javadoc -f .mfiles-javadoc
%license license.txt notice.txt

%changelog
* Mon May 31 2021 yaozc7 <yaozc7@foxmail.com> - 3.2.2-13
- Package init 

* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild

* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild

* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

* Fri Aug 05 2016 gil cattaneo <puntogil@libero.it> 3.2.2-6
- add support for hibernate4

* Mon Feb 22 2016 gil cattaneo <puntogil@libero.it> 3.2.2-5
- rebuilt

* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild

* Tue Jan 20 2015 gil cattaneo <puntogil@libero.it> 3.2.2-2
- introduce license macro

* Wed Jun 11 2014 gil cattaneo <puntogil@libero.it> 3.2.2-1
- update to 3.2.2

* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.6.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild

* Wed Oct 02 2013 gil cattaneo <puntogil@libero.it> 2.6.3-1
- update to 2.6.3

* Fri Aug 30 2013 gil cattaneo <puntogil@libero.it> 2.6.2-1
- update to 2.6.2

* Wed Jun 05 2013 gil cattaneo <puntogil@libero.it> 2.6-1
- initial rpm