mizdebsk / rpms / xbean

Forked from rpms/xbean 5 years ago
Clone
e9ea394
Name:           xbean
e9ea394
Version:        3.7
e9ea394
BuildArch:      noarch
e9ea394
e9ea394
Release:        2%{?dist}
e9ea394
Summary:        Java plugin based web server
e9ea394
e9ea394
Group:          Development/Libraries
e9ea394
License:        ASL 2.0
e9ea394
URL:            http://geronimo.apache.org/xbean/
e9ea394
e9ea394
# unfortunately no source/binary releases are being made lately, just
e9ea394
# tags in repos and binary releases in maven repositories
e9ea394
# svn export http://svn.apache.org/repos/asf/geronimo/xbean/tags/xbean-3.7
e9ea394
# tar caf xbean-3.7.tar.xz xbean-3.7
e9ea394
Source0:        xbean-%{version}.tar.xz
e9ea394
Source1:        xbean.depmap
e9ea394
e9ea394
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
e9ea394
e9ea394
Patch0:         pom-%{version}.patch
e9ea394
e9ea394
BuildRequires:  java-devel
e9ea394
BuildRequires:  apache-commons-beanutils
e9ea394
BuildRequires:  apache-commons-logging
e9ea394
BuildRequires:  mx4j
e9ea394
BuildRequires:  objectweb-asm
e9ea394
BuildRequires:  ant
e9ea394
BuildRequires:  qdox
e9ea394
BuildRequires:  slf4j
e9ea394
BuildRequires:  felix-osgi-core >= 1.4.0
e9ea394
BuildRequires:  maven-plugin-bundle
e9ea394
BuildRequires:  maven-antrun-plugin
e9ea394
BuildRequires:  maven-compiler-plugin
e9ea394
BuildRequires:  maven-idea-plugin
e9ea394
BuildRequires:  maven-install-plugin
e9ea394
BuildRequires:  maven-javadoc-plugin
e9ea394
BuildRequires:  maven-resources-plugin
e9ea394
BuildRequires:  maven-surefire-maven-plugin
e9ea394
BuildRequires:  maven-site-plugin
e9ea394
BuildRequires:  maven2-plugin-shade
e9ea394
e9ea394
Requires:       java
e9ea394
Requires:       objectweb-asm
e9ea394
Requires:       apache-commons-logging
e9ea394
e9ea394
e9ea394
%description
e9ea394
The goal of XBean project is to create a plugin based server
e9ea394
analogous to Eclipse being a plugin based IDE. XBean will be able to
e9ea394
discover, download and install server plugins from an Internet based
e9ea394
repository. In addition, we include support for multiple IoC systems,
e9ea394
support for running with no IoC system, JMX without JMX code,
e9ea394
lifecycle and class loader management, and a rock solid Spring
e9ea394
integration.
e9ea394
e9ea394
%package        javadoc
e9ea394
Summary:        API documentation for %{name}
e9ea394
Group:          Documentation
e9ea394
Requires:       jpackage-utils
e9ea394
e9ea394
%description    javadoc
e9ea394
%{summary}.
e9ea394
e9ea394
%prep
e9ea394
%setup -q
e9ea394
# build failing on this due to doxia-sitetools problems
e9ea394
rm src/site/site.xml
e9ea394
e9ea394
# removes dependency on springframework and prevents building of
e9ea394
# modules depending on it. If other modules are required,
e9ea394
# springframework will have to be brought in first
e9ea394
%patch0 -p1
e9ea394
e9ea394
# Fix dependency on xbean-asm-shaded to original objectweb-asm
e9ea394
sed -i 's/org.apache.xbean.asm/org.objectweb.asm/' \
e9ea394
    xbean-reflect/src/main/java/org/apache/xbean/recipe/XbeanAsmParameterNameLoader.java
e9ea394
e9ea394
%build
e9ea394
export MAVEN_REPO_LOCAL=$(pwd)/.m2/repository
e9ea394
mvn-jpp -e \
e9ea394
        -Dmaven.repo.local=$MAVEN_REPO_LOCAL \
e9ea394
        -Dmaven2.jpp.depmap.file="%{SOURCE1}" \
e9ea394
        install javadoc:javadoc
e9ea394
e9ea394
e9ea394
%install
e9ea394
rm -rf $RPM_BUILD_ROOT
e9ea394
e9ea394
# for every module we want to be built
e9ea394
for sub in reflect naming classpath; do
e9ea394
    # install jar
e9ea394
    install -Dpm 644 %{name}-${sub}/target/%{name}-${sub}-%{version}.jar \
e9ea394
            $RPM_BUILD_ROOT/%{_javadir}/xbean/%{name}-${sub}-%{version}.jar;
e9ea394
e9ea394
    # intall pom
e9ea394
    install -Dpm 644 %{name}-${sub}/pom.xml $RPM_BUILD_ROOT/%{_mavenpomdir}/JPP-%{name}-${sub}.pom
e9ea394
e9ea394
    # maven depmap
e9ea394
    %add_to_maven_depmap org.apache.xbean %{name}-${sub} %{version} JPP/xbean %{name}-${sub}
e9ea394
e9ea394
    # javadoc
e9ea394
    install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}/%{name}-${sub}-%{version}
e9ea394
    cp -pr %{name}-${sub}/target/site/apidocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}/%{name}-${sub}-%{version}
e9ea394
done
e9ea394
ln -sf %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name}
e9ea394
e9ea394
# unversioned symlinks
e9ea394
pushd $RPM_BUILD_ROOT%{_javadir}/%{name}
e9ea394
for jar in *-%{version}*; do
e9ea394
    ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`
e9ea394
done
e9ea394
popd # come back from javadir
e9ea394
e9ea394
# parent pom
e9ea394
install -pm 644 pom.xml $RPM_BUILD_ROOT/%{_mavenpomdir}/JPP-%{name}.pom
e9ea394
e9ea394
%clean
e9ea394
rm -rf $RPM_BUILD_ROOT
e9ea394
e9ea394
%post
e9ea394
%update_maven_depmap
e9ea394
e9ea394
%postun
e9ea394
%update_maven_depmap
e9ea394
e9ea394
%files
e9ea394
%defattr(-,root,root,-)
e9ea394
%doc LICENSE NOTICE
e9ea394
%{_mavenpomdir}/JPP-*.pom
e9ea394
%{_mavendepmapfragdir}/%{name}
e9ea394
%{_javadir}/%{name}
e9ea394
e9ea394
%files javadoc
e9ea394
%defattr(-,root,root,-)
e9ea394
%doc LICENSE
e9ea394
%{_javadocdir}/%{name}
e9ea394
%{_javadocdir}/%{name}-%{version}
e9ea394
e9ea394
%changelog
e9ea394
* Fri Jul  9 2010 Stanislav Ochotnicky <sochotnicky@redhat.com> - 3.7-2
e9ea394
- Add license to javadoc subpackage
e9ea394
e9ea394
* Mon Jun 21 2010 Stanislav Ochotnicky <sochotnicky@redhat.com> - 3.7-1
e9ea394
- First release
e9ea394