Sophie

Sophie

distrib > Mageia > 3 > i586 > media > core-release-src > by-pkgid > a6bb7a3a7e9248063a0303f6afa9acfc > files > 2

jgroups3-3.0.5-2.mga3.src.rpm


%define with_maven 1
%global namedreltag .Final
%global namedversion %{version}%{?namedreltag}


Name:          jgroups3
Version:       3.0.5
Release:       %mkrel 2
Summary:       A Toolkit for Reliable Multicast Communication
Group:         Development/Java
License:       LGPLv2+
Url:           http://www.jgroups.org/
# mkdir jgroups-3.0.4.Final
# git clone git://github.com/belaban/JGroups.git
# git archive JGroups_3_0_4_Final | tar -x -C ../jgroups-3.0.4.Final
# cd ../jgroups-3.0.4.Final
# find . -name '*.class' -delete
# find . -name '*.jar' -delete
# lib/ant-junit.jar
# lib/ant-launcher.jar
# lib/ant.jar
# lib/bnd.jar
# lib/bouncycastle.jar
# lib/bsh.jar
# lib/log4j.jar
# lib/serializer.jar
# lib/testng.jar
# lib/xalan.jar
# cd .. && tar czf jgroups-3.0.4.Final-src-git.tar.gz jgroups-3.0.4.Final
Source0:       jgroups-%{namedversion}-src-git.tar.gz

BuildRequires: java-devel
BuildRequires: jpackage-utils

BuildRequires: ant
BuildRequires: bsh2
BuildRequires: liblog4j-java
BuildRequires: testng
BuildRequires: xalan-j2

%if !%with_maven
BuildRequires: ant-junit
BuildRequires: aqute-bndlib
BuildRequires: bouncycastle
%else
BuildRequires: maven
BuildRequires: maven-antrun-plugin
BuildRequires: maven-compiler-plugin
BuildRequires: maven-jar-plugin
BuildRequires: maven-plugin-bundle
BuildRequires: maven-source-plugin
BuildRequires: maven-surefire-provider-junit
%endif

Requires:      bsh2
Requires:      liblog4j-java

Requires:      java
Requires:      jpackage-utils
BuildArch:     noarch

%description
JGroups is a toolkit for reliable multicast communication. (Note that
this doesn't necessarily mean IP Multicast, JGroups can also use
transports such as TCP). It can be used to create groups of processes
whose members can send messages to each other.

The main features include

* Group creation and deletion. Group members can be spread across LANs or WANs
* Joining and leaving of groups
* Membership detection and notification about joined/left/crashed members
* Detection and removal of crashed members
* Sending and receiving of member-to-group messages (point-to-multipoint)
* Sending and receiving of member-to-member messages (point-to-point)

%package javadoc
Group:         Development/Java
Summary:       Javadoc for %{name}

%description javadoc
Reliable group communication based on IP multicast and
configurable protocol stack

This package contains Javadoc for %{name}.

%if !%with_maven
%package manual
Group:         Development/Java
Summary:       Documents for %{name}

%description manual
Reliable group communication based on IP multicast and
configurable protocol stack

This package contains documents for %{name}
%endif

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

%if !%with_maven
pushd lib
  ln -sf $(build-classpath ant) ant.jar
  ln -sf $(build-classpath ant/ant-junit) ant-junit.jar
  ln -sf $(build-classpath ant-launcher) ant-launcher.jar
  ln -sf $(build-classpath bcprov) bouncycastle.jar
  ln -sf $(build-classpath bsh2/bsh) bsh.jar
  ln -sf $(build-classpath aqute-bndlib) bnd.jar
  ln -sf $(build-classpath log4j) log4j.jar
  ln -sf $(build-classpath xalan-j2-serializer) serializer.jar
  ln -sf $(build-classpath testng) testng.jar
  ln -sf $(build-classpath xalan-j2) xalan.jar
popd
%endif

%build

%if !%with_maven
  export OPT_JAR_LIST=`cat %{_sysconfdir}/ant.d/{junit}`
  export CLASSPATH=""
  CLASSPATH=$CLASSPATH:$(build-classpath xalan-j2 xalan-j2-serializer bcprov ant-launcher ant/ant-junit)
  ant  -Dant.build.javac.source=1.6 -Dant.build.javac.target=1.6 jar javadoc
%else
  mvn-rpmbuild install javadoc:aggregate
%endif

%install

mkdir -p %{buildroot}%{_javadir}
install -m 644 target/jgroups-%{namedversion}.jar %{buildroot}%{_javadir}/%{name}.jar

mkdir -p %{buildroot}%{_mavenpomdir}
install -m 644 pom.xml %{buildroot}%{_mavenpomdir}/JPP-%{name}.pom
%add_maven_depmap JPP-%{name}.pom %{name}.jar

mkdir -p %{buildroot}%{_javadocdir}/%{name}
cp -pr target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}

%files
%{_javadir}/%{name}.jar
%{_mavenpomdir}/JPP-%{name}.pom
%{_mavendepmapfragdir}/%{name}
%doc LICENSE README

%files javadoc
%{_javadocdir}/%{name}

%if !%with_maven
%files manual
%doc doc/*
%endif

%changelog

* Sat Jan 12 2013 umeabot <umeabot> 3.0.5-2.mga3
+ Revision: 355442
- Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild

* Sat Feb 18 2012 gil <gil> 3.0.5-1.mga3
+ Revision: 210507
- imported package jgroups3