%global reltag .v20111125-r10461
%global namedversion %{version}%{?reltag}
Name: eclipselink
# for the next release is require hibernate-jpa-2.1-api unavailable at the moment
Version: 2.3.2
Release: 1%{?dist}
Summary: Eclipse Persistence Services Project
Group: Development/Libraries
License: EPL and BSD
Url: http://www.eclipse.org/eclipselink/
Source0: http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/rt/%{name}/releases/%{version}/%{name}-src-%{namedversion}.zip
Source1: %{name}-2.1.3-build.properties
Source2: %{name}-%{version}-06-build.xml
Source3: http://maven.eclipse.org/nexus/content/repositories/build/org/eclipse/persistence/%{name}/%{version}/%{name}-%{version}.pom
Source4: http://maven.eclipse.org/nexus/content/repositories/build/org/eclipse/persistence/org.eclipse.persistence.core/%{version}/org.eclipse.persistence.core-%{version}.pom
Source5: http://maven.eclipse.org/nexus/content/repositories/build/org/eclipse/persistence/org.eclipse.persistence.jpa/%{version}/org.eclipse.persistence.jpa-%{version}.pom
# use system libraries
Patch0: %{name}-2.2.1-disable_antlr3_embedded_copy.patch
Patch1: %{name}-%{version}-disable_asm_embedded_copy.patch
# change
# org.eclipse.persistence org.eclipse.persistence.asm in asm asm (and requires asm libraries)
# org.eclipse.persistence org.eclipse.persistence.antlr in org.antlr antlr (and requires antlr3 libraries)
Patch2: %{name}-%{version}-core-pom.patch
Patch3: %{name}-%{version}-jpa-pom.patch
Patch4: %{name}-%{version}-jdk7.patch
# the org.osgi.enterprise license is not free for Fedora
# this patch remove org.osgi.enterprise support only
Patch5: %{name}-%{version}-disable-non-free-osgi-enterprise.patch
BuildRequires: java-devel
BuildRequires: jpackage-utils
BuildRequires: ant
BuildRequires: antlr3-java
BuildRequires: antlr3-tool
BuildRequires: felix-framework
BuildRequires: geronimo-jms
BuildRequires: geronimo-validation
BuildRequires: hibernate-jpa-2.0-api
BuildRequires: javamail
BuildRequires: jboss-connector-1.6-api
BuildRequires: jboss-transaction-1.1-api
BuildRequires: objectweb-asm
BuildRequires: tomcat-servlet-3.0-api
BuildRequires: tuscany-sdo-java
BuildRequires: wsdl4j
Requires: antlr3-tool
Requires: objectweb-asm
Requires: java
Requires: jpackage-utils
BuildArch: noarch
%description
Eclipse Persistence Services Project, more commonly known as EclipseLink,
is a Java comprehensive persistence framework delivering a set of persistence
services based around standards. This lets you rapidly build applications
that combine the best aspects of object technology and the specific data
source.
EclipseLink was started by a donation of the full source code and
test suites of Oracle's TopLink product.
EclipseLink's services currently include object-relational with JPA,
object-XML binding in MOXy (with support for JAXB), a Service Data Objects
(SDO) implementation and support for another technologies like: Database Web
Services (DWS), XML-Relational (XRM) and Non-Relational (EIS via JCA).
%package javadoc
Group: Documentation
Summary: Javadoc for %{name}
Requires: jpackage-utils
%description javadoc
This package contains javadoc for %{name}.
%prep
%setup -q -c
%patch0 -p1
%patch1 -p1
cp -p %{SOURCE1} build.properties
cp -p %{SOURCE2} build.xml
cp -p %{SOURCE4} .
cp -p %{SOURCE5} .
%patch2 -p0
%patch3 -p0
%patch4 -p0
%patch5 -p0
# fix non ASCII chars
for s in org/eclipse/persistence/jpa/internal/jpql/GrammarValidator.java\
org/eclipse/persistence/platform/database/MaxDBPlatform.java\
org/eclipse/persistence/jpa/internal/jpql/SemanticValidator.java;do
native2ascii -encoding UTF8 ${s} ${s}
done
%build
ant
%install
mkdir -p %{buildroot}%{_javadir}/%{name}
install -m 644 target/%{name}.jar \
%{buildroot}%{_javadir}/%{name}/%{name}.jar
(
cd %{buildroot}%{_javadir}/%{name}
ln -sf %{name}.jar org.eclipse.persistence.core.jar
ln -sf %{name}.jar org.eclipse.persistence.jpa.jar
)
mkdir -p %{buildroot}%{_mavenpomdir}
install -pm 644 %{SOURCE3} %{buildroot}%{_mavenpomdir}/JPP.%{name}-%{name}.pom
%add_maven_depmap JPP.%{name}-%{name}.pom %{name}/%{name}.jar
install -pm 644 org.eclipse.persistence.core-%{version}.pom %{buildroot}%{_mavenpomdir}/JPP.%{name}-org.eclipse.persistence.core.pom
%add_maven_depmap JPP.%{name}-org.eclipse.persistence.core.pom %{name}/org.eclipse.persistence.core.jar
install -pm 644 org.eclipse.persistence.jpa-%{version}.pom %{buildroot}%{_mavenpomdir}/JPP.%{name}-org.eclipse.persistence.jpa.pom
%add_maven_depmap JPP.%{name}-org.eclipse.persistence.jpa.pom %{name}/org.eclipse.persistence.jpa.jar
mkdir -p %{buildroot}%{_javadocdir}/%{name}
cp -pr target/api/* %{buildroot}%{_javadocdir}/%{name}
%files
%{_javadir}/%{name}
%{_mavenpomdir}/JPP.%{name}-*.pom
%{_mavendepmapfragdir}/%{name}
%doc about.html license.html readme.html
%files javadoc
%{_javadocdir}/%{name}
%doc license.html
%changelog
* Tue Apr 03 2012 gil cattaneo <puntogil@libero.it> 2.3.2-1
- initial rpm