Name: derby
Version: 10.6.1.0
Release: 3%{?dist}
Summary: Relational database implemented entirely in Java
Group: Applications/Databases
License: ASL 2.0
URL: http://db.apache.org/derby/
Source0: http://www.apache.org/dist/db/%{name}/db-%{name}-%{version}/db-%{name}-%{version}-src.tar.gz
Source1: derby-script
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
Source10: http://repo1.maven.org/maven2/org/apache/%{name}/derby/%{version}/derby-%{version}.pom
Source11: http://repo1.maven.org/maven2/org/apache/%{name}/derby-project/%{version}/derby-project-%{version}.pom
Source12: http://repo1.maven.org/maven2/org/apache/%{name}/derbyLocale_cs/%{version}/derbyLocale_cs-%{version}.pom
Source13: http://repo1.maven.org/maven2/org/apache/%{name}/derbyLocale_de_DE/%{version}/derbyLocale_de_DE-%{version}.pom
Source14: http://repo1.maven.org/maven2/org/apache/%{name}/derbyLocale_es/%{version}/derbyLocale_es-%{version}.pom
Source15: http://repo1.maven.org/maven2/org/apache/%{name}/derbyLocale_fr/%{version}/derbyLocale_fr-%{version}.pom
Source16: http://repo1.maven.org/maven2/org/apache/%{name}/derbyLocale_hu/%{version}/derbyLocale_hu-%{version}.pom
Source17: http://repo1.maven.org/maven2/org/apache/%{name}/derbyLocale_it/%{version}/derbyLocale_it-%{version}.pom
Source18: http://repo1.maven.org/maven2/org/apache/%{name}/derbyLocale_ja_JP/%{version}/derbyLocale_ja_JP-%{version}.pom
Source19: http://repo1.maven.org/maven2/org/apache/%{name}/derbyLocale_ko_KR/%{version}/derbyLocale_ko_KR-%{version}.pom
Source20: http://repo1.maven.org/maven2/org/apache/%{name}/derbyLocale_pl/%{version}/derbyLocale_pl-%{version}.pom
Source21: http://repo1.maven.org/maven2/org/apache/%{name}/derbyLocale_pt_BR/%{version}/derbyLocale_pt_BR-%{version}.pom
Source22: http://repo1.maven.org/maven2/org/apache/%{name}/derbyLocale_ru/%{version}/derbyLocale_ru-%{version}.pom
Source23: http://repo1.maven.org/maven2/org/apache/%{name}/derbyLocale_zh_CN/%{version}/derbyLocale_zh_CN-%{version}.pom
Source24: http://repo1.maven.org/maven2/org/apache/%{name}/derbyLocale_zh_TW/%{version}/derbyLocale_zh_TW-%{version}.pom
Source25: http://repo1.maven.org/maven2/org/apache/%{name}/derbyclient/%{version}/derbyclient-%{version}.pom
Source26: http://repo1.maven.org/maven2/org/apache/%{name}/derbynet/%{version}/derbynet-%{version}.pom
Source27: http://repo1.maven.org/maven2/org/apache/%{name}/derbytools/%{version}/derbytools-%{version}.pom
BuildRequires: java-devel >= 1.6
BuildRequires: jpackage-utils
BuildRequires: servletapi5
BuildRequires: jakarta-oro
BuildRequires: javacc
BuildRequires: junit4
BuildRequires: xalan-j2
BuildRequires: xerces-j2
BuildRequires: ant-nodeps
Requires: java
Requires: jpackage-utils
BuildArch: noarch
%description
Apache Derby, an Apache DB sub-project, is a relational database implemented
entirely in Java. Some key advantages include a small footprint, conformance
to Java, JDBC, and SQL standards and embedded JDBC driver.
%prep
%setup -q -c
%build
cd db-%{name}-%{version}-src
find -name '*.jar' -delete
# tools/ant/properties/extrapath.properties
ln -sf $(build-classpath javacc) tools/java/javacc.jar
ln -sf $(build-classpath servletapi5) \
tools/java/geronimo-spec-servlet-2.4-rc4.jar
ln -sf $(build-classpath xalan-j2) tools/java/xalan.jar
ln -sf $(build-classpath oro) tools/java/jakarta-oro-2.0.8.jar
ln -sf $(build-classpath xerces-j2) tools/java/xercesImpl.jar
ln -sf $(build-classpath xalan-j2-serializer) tools/java/serializer.jar
ln -sf $(build-classpath junit4) tools/java/junit.jar
# Using generics
find -name build.xml |xargs sed '
s/target="1.4"/target="1.5"/
s/source="1.4"/source="1.5"/
/Class-Path/d
' -i
# Fire
ant buildsource -Dderby.source.rpm=%{version}
ant buildjars -Dderby.source.rpm=%{version}
%install
cd db-%{name}-%{version}-src
rm -rf $RPM_BUILD_ROOT
# Library
install -d $RPM_BUILD_ROOT%{_javadir}/%{name}
for i in jars/insane/*.jar
do
B=$(basename $i |sed 's/.jar$//')
install -m644 $i $RPM_BUILD_ROOT%{_javadir}/%{name}/$B-%{version}.jar
ln -sf $B-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}/$B.jar
done
# We hardlink instead of symlinking so that default security policy
# applies to derbynet.jar
ln -f $RPM_BUILD_ROOT%{_javadir}/%{name}/derbynet-%{version}.jar \
$RPM_BUILD_ROOT%{_javadir}/%{name}/derbynet.jar
# Wrapper scripts
install -d $RPM_BUILD_ROOT%{_bindir}
install -p -m755 %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}/%{name}-ij
for P in sysinfo NetworkServerControl startNetworkServer stopNetworkServer
do
ln $RPM_BUILD_ROOT%{_bindir}/%{name}-ij \
$RPM_BUILD_ROOT%{_bindir}/%{name}-$P
done
# POMs
install -d $RPM_BUILD_ROOT%{_mavenpomdir}
install -p -m644 %{SOURCE10} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derby.pom
install -p -m644 %{SOURCE11} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derby-project.pom
install -p -m644 %{SOURCE12} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derbyLocale_cs.pom
install -p -m644 %{SOURCE13} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derbyLocale_de_DE.pom
install -p -m644 %{SOURCE14} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derbyLocale_es.pom
install -p -m644 %{SOURCE15} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derbyLocale_fr.pom
install -p -m644 %{SOURCE16} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derbyLocale_hu.pom
install -p -m644 %{SOURCE17} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derbyLocale_it.pom
install -p -m644 %{SOURCE18} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derbyLocale_ja_JP.pom
install -p -m644 %{SOURCE19} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derbyLocale_ko_KR.pom
install -p -m644 %{SOURCE20} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derbyLocale_pl.pom
install -p -m644 %{SOURCE21} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derbyLocale_pt_BR.pom
install -p -m644 %{SOURCE22} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derbyLocale_ru.pom
install -p -m644 %{SOURCE23} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derbyLocale_zh_CN.pom
install -p -m644 %{SOURCE24} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derbyLocale_zh_TW.pom
install -p -m644 %{SOURCE25} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derbyclient.pom
install -p -m644 %{SOURCE26} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derbynet.pom
install -p -m644 %{SOURCE27} $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-derbytools.pom
# Dependency maps
%add_to_maven_depmap org.apache.derby derby %{version} JPP derby/derby
%add_to_maven_depmap org.apache.derby derby-project %{version} JPP derby/derby-project
%add_to_maven_depmap org.apache.derby derbyLocale_cs %{version} JPP derby/derbyLocale_cs
%add_to_maven_depmap org.apache.derby derbyLocale_de_DE %{version} JPP derby/derbyLocale_de_DE
%add_to_maven_depmap org.apache.derby derbyLocale_es %{version} JPP derby/derbyLocale_es
%add_to_maven_depmap org.apache.derby derbyLocale_fr %{version} JPP derby/derbyLocale_fr
%add_to_maven_depmap org.apache.derby derbyLocale_hu %{version} JPP derby/derbyLocale_hu
%add_to_maven_depmap org.apache.derby derbyLocale_it %{version} JPP derby/derbyLocale_it
%add_to_maven_depmap org.apache.derby derbyLocale_ja_JP %{version} JPP derby/derbyLocale_ja_JP
%add_to_maven_depmap org.apache.derby derbyLocale_ko_KR %{version} JPP derby/derbyLocale_ko_KR
%add_to_maven_depmap org.apache.derby derbyLocale_pl %{version} JPP derby/derbyLocale_pl
%add_to_maven_depmap org.apache.derby derbyLocale_pt_BR %{version} JPP derby/derbyLocale_pt_BR
%add_to_maven_depmap org.apache.derby derbyLocale_ru %{version} JPP derby/derbyLocale_ru
%add_to_maven_depmap org.apache.derby derbyLocale_zh_CN %{version} JPP derby/derbyLocale_zh_CN
%add_to_maven_depmap org.apache.derby derbyLocale_zh_TW %{version} JPP derby/derbyLocale_zh_TW
%add_to_maven_depmap org.apache.derby derbyclient %{version} JPP derby/derbyclient
%add_to_maven_depmap org.apache.derby derbynet %{version} JPP derby/derbynet
%add_to_maven_depmap org.apache.derby derbytools %{version} JPP derby/derbytools
%check
#TODO
#ant junit-all
%clean
rm -rf $RPM_BUILD_ROOT
%post
%update_maven_depmap
%postun
%update_maven_depmap
%files
%defattr(-,root,root,-)
%{_bindir}/*
%{_javadir}/%{name}
%doc db-%{name}-%{version}-src/LICENSE
%doc db-%{name}-%{version}-src/NOTICE
%doc db-%{name}-%{version}-src/published_api_overview.html
%doc db-%{name}-%{version}-src/RELEASE-NOTES.html
%doc db-%{name}-%{version}-src/README
%{_mavenpomdir}/JPP-*.pom
%{_mavendepmapfragdir}/%{name}
%changelog
* Tue Jul 27 2010 Lubomir Rintel <lkundrak@v3.sk> - 10.6.1.0-3
- Fix buildrequires
* Tue Jul 27 2010 Lubomir Rintel <lkundrak@v3.sk> - 10.6.1.0-2
- Add tool launchers
- Add POMs
* Mon Jun 28 2010 Lubomir Rintel <lkundrak@v3.sk> - 10.6.1.0-1
- Initial packaging