File log4j-mini.spec of Package log4j

#
# spec file for package log4j-mini (Version 1.2.15)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#


%define gcj_support %{?_with_gcj_support:1}%{!?_with_gcj_support:%{?_without_gcj_support:0}%{!?_without_gcj_support:%{?_gcj_support:%{_gcj_support}}%{!?_gcj_support:0}}}
##### WARNING: please do not edit this auto generated spec file. Use the log4j.spec! #####
%define bootstrap 1
%define section free
%define real log4j

Name:           log4j-mini
# This line is not a comment, please do not remove it!
#%(sh %{_sourcedir}/jpackage-mini-prepare.sh %{_sourcedir} %{name})
Version:        1.2.15
Release:        14
Summary:        Java logging tool (internal featureless package breaking dependency loop)
License:        The Apache Software License
Url:            http://logging.apache.org/log4j/
Source0:        http://www.apache.org/dist/logging/log4j/%{version}/apache-log4j-%{version}.tar.bz2
#Source0:        logging-log4j-1.2.13-RHCLEAN.tar.gz
# Converted from src/java/org/apache/log4j/lf5/viewer/images/lf5_small_icon.gif
Source1:        %{real}-logfactor5.png
Source2:        %{real}-logfactor5.sh
Source3:        %{real}-logfactor5.desktop
# Converted from docs/images/logo.jpg
Source4:        %{real}-chainsaw.png
Source5:        %{real}-chainsaw.sh
Source6:        %{real}-chainsaw.desktop
Source7:        %{real}.catalog
Source1000:     jpackage-mini-prepare.sh
Patch0:         %{real}-logfactor5-userdir.patch
Patch1:         %{real}-javadoc-xlink.patch
Patch2:         %{real}-mx4j-tools.patch
Patch3:         %{real}-jmx-Agent.patch
BuildRequires:  jpackage-utils >= 1.6
BuildRequires:  ant
%if ! %{bootstrap}
BuildRequires:  geronimo-jaf-1_0_2-api
BuildRequires:  classpathx-mail
BuildRequires:  geronimo-jms-1_1-api
BuildRequires:  mx4j
%endif
BuildRequires:  jndi
%if %defined suse_version
BuildRequires:  perl
BuildRequires:  java-devel
BuildRequires:  update-desktop-files
PreReq:         coreutils
%else
BuildRequires:  %{__perl}
BuildRequires:  java-javadoc
%endif
Requires:       jpackage-utils >= 1.6
Requires:       xml-commons-apis
Requires:       jaxp_parser_impl
Group:          Development/Libraries/Java
%if ! %{gcj_support}
BuildArch:      noarch
%endif
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
Provides:       %{real} = %{version}-%{release}
%if %{gcj_support}
BuildRequires:  gnu-crypto
BuildRequires:  java-gcj-compat-devel
Requires(post):   java-gcj-compat
Requires(postun): java-gcj-compat
%endif

%description
Log4j is a tool to help the programmer output log statements to a
variety of output targets.



%if ! %{bootstrap}

%package        manual
License:        The Apache Software License
Summary:        Java logging tool (internal featureless package breaking dependency loop)
Group:          Development/Libraries/Java

%description    manual
Log4j is a tool to help the programmer output log statements to a
variety of output targets.



%package        javadoc
License:        The Apache Software License
PreReq:         coreutils
Summary:        Java logging tool (Documentation)
Group:          Development/Libraries/Java

%description    javadoc
Javadoc for log4j.



%endif

%prep
%setup -q -n apache-log4j-%{version}
%patch0 -b .sav
%patch1 -b .sav
%patch2 -b .sav2
%patch3 -b .sav
%{__perl} -pi -e 's/\r//g' LICENSE
%{__perl} -pi -e 's/\r//g' NOTICE
# remove all the stuff we'll build ourselves
find . \( -name "*.jar" -o -name "*.class" \) -exec %__rm -f {} \;
%__rm -rf docs/api

%build
# javac.source=1.1 doesn't work with Sun's 1.4.2_09/1.5.0_05
%ant \
        -Djavamail.jar=$(build-classpath javamail/mailapi) \
        -Dactivation.jar=$(build-classpath jaf) \
        -Djaxp.jaxp.jar.jar=$(build-classpath jaxp_parser_impl) \
        -Djms.jar=$(build-classpath jms) \
        -Djmx.jar=$(build-classpath mx4j/mx4j) \
        -Djmx-extra.jar=$(build-classpath mx4j/mx4j-tools) \
        -Djndi.jar=$(build-classpath jndi) \
        -Djavac.source=1.2 \
        -Djdk.javadoc=%{_javadocdir}/java \
        jar \
%if ! %{bootstrap}
        javadoc
%endif

%install
%__rm -rf %{buildroot}
# jars
%__mkdir_p %{buildroot}%{_javadir}
%__cp -a dist/lib/log4j-%{version}.jar %{buildroot}%{_javadir}
(cd %{buildroot}%{_javadir} && for jar in *-%{version}*; do ln -sf ${jar} `echo $jar| sed  "s|-%{version}||g"`; done)
%if ! %{bootstrap}
# javadoc
%__mkdir_p %{buildroot}%{_javadocdir}/%{name}-%{version}
%__cp -a docs/api/* %{buildroot}%{_javadocdir}/%{name}-%{version}
(cd %{buildroot}%{_javadocdir} && %__ln_s %{name}-%{version} %{name})
%__rm -rf docs/api
ln -s %{_javadocdir}/log4j docs/api
%endif
# scripts
%__mkdir_p %{buildroot}%{_bindir}
%__install -p -m 755 %{SOURCE2} %{buildroot}%{_bindir}/logfactor5
%__install -p -m 755 %{SOURCE5} %{buildroot}%{_bindir}/chainsaw
# freedesktop.org menu entries and icons
%__mkdir_p %{buildroot}%{_datadir}/{applications,pixmaps}
%__cp -a %{SOURCE1} \
  %{buildroot}%{_datadir}/pixmaps/logfactor5.png
%__cp -a %{SOURCE3} \
  %{buildroot}%{_datadir}/applications/jpackage-logfactor5.desktop
%__cp -a %{SOURCE4} \
  %{buildroot}%{_datadir}/pixmaps/chainsaw.png
%__cp -a %{SOURCE6} \
  %{buildroot}%{_datadir}/applications/jpackage-chainsaw.desktop
# DTD and the SGML catalog (XML catalog handled in scriptlets)
%__mkdir_p %{buildroot}%{_datadir}/sgml/%{name}
%__cp -a src/main/resources/org/apache/log4j/xml/log4j.dtd \
  %{buildroot}%{_datadir}/sgml/%{name}
%__cp -a %{SOURCE7} \
  %{buildroot}%{_datadir}/sgml/%{name}/catalog
# fix perl location
%__perl -p -i -e 's|/opt/perl5/bin/perl|%{__perl}|' \
contribs/KitchingSimon/udpserver.pl
%suse_update_desktop_file jpackage-chainsaw Development Debugger
%suse_update_desktop_file jpackage-logfactor5 Development Debugger
%if %{gcj_support}
export CLASSPATH=$(build-classpath gnu-crypto)
%{_bindir}/aot-compile-rpm
%endif

%clean
%__rm -rf %{buildroot}

%post
# Note that we're using versioned catalog, so this is always ok.
if [ -x %{_bindir}/install-catalog -a -d %{_sysconfdir}/sgml ]; then
  %{_bindir}/install-catalog --add \
    %{_sysconfdir}/sgml/%{name}-%{version}-%{release}.cat \
    %{_datadir}/sgml/%{name}/catalog > /dev/null || :
fi
if [ -x %{_bindir}/xmlcatalog -a -w %{_sysconfdir}/xml/catalog ]; then
  %{_bindir}/xmlcatalog --noout --add system log4j.dtd \
    file://%{_datadir}/sgml/%{name}/log4j.dtd %{_sysconfdir}/xml/catalog \
    > /dev/null || :
fi
%if %{gcj_support}
if [ -x %{_bindir}/rebuild-gcj-db ]
then
  %{_bindir}/rebuild-gcj-db
fi
%endif

%preun
if [ $1 -eq 0 ]; then
  if [ -x %{_bindir}/xmlcatalog -a -w %{_sysconfdir}/xml/catalog ]; then
    %{_bindir}/xmlcatalog --noout --del log4j.dtd \
      %{_sysconfdir}/xml/catalog > /dev/null || :
  fi
fi
%if %{gcj_support}
if [ -x %{_bindir}/rebuild-gcj-db ]
then
  %{_bindir}/rebuild-gcj-db
fi
%endif

%postun
# Note that we're using versioned catalog, so this is always ok.
if [ -x %{_bindir}/install-catalog -a -d %{_sysconfdir}/sgml ]; then
  %{_bindir}/install-catalog --remove \
    %{_sysconfdir}/sgml/%{name}-%{version}-%{release}.cat \
    %{_datadir}/sgml/%{name}/catalog > /dev/null || :
fi
%if %{gcj_support}
if [ -x %{_bindir}/rebuild-gcj-db ]
then
  %{_bindir}/rebuild-gcj-db
fi
%endif
%if ! %{bootstrap}

%post javadoc
%__rm -f %{_javadocdir}/%{name}
%__ln_s %{name}-%{version} %{_javadocdir}/%{name}

%postun javadoc
if [ $1 -eq 0 ]; then
  %__rm -f %{_javadocdir}/%{name}
fi
%endif

%files
%defattr(-,root,root,-)
%doc LICENSE
%doc NOTICE
%{_bindir}/*
%{_javadir}/*
%{_datadir}/applications/*
%{_datadir}/pixmaps/*
%{_datadir}/sgml/%{name}
%if %{gcj_support}
%attr(-,root,root) %{_libdir}/gcj/%{name}/%{name}-%{version}.jar.*
%endif
%if ! %{bootstrap}

%files manual
%defattr(0644,root,root,0755)
%doc docs/* contribs

%files javadoc
%defattr(0644,root,root,0755)
%dir %{_javadocdir}/%{name}-%{version}
%{_javadocdir}/%{name}-%{version}/*
%ghost %dir %{_javadocdir}/%{name}
%endif

%changelog
* Tue May 06 2008 mvyskocil@suse.cz
- removed a dots in a names of geronimo-* packages
* Tue Apr 08 2008 mvyskocil@suse.cz
- updated to 1.2.5 [bnc#355798]
- merged a spec with jpackage 1.7
  - the ant arguments was splitted to several lines
  - new BuildRequires:
    - classpathx-javamail
    - geronimo-jaf
    - geronimo-jms
  - a new patches to break of a dependendy on Sun's HtmlAdaptorServer
  (replaced by HttpAdaptor from mx4j package)
  - added a gjc build branch
- created an autogenerated -mini specfile used for bootstrap (hint from sbrabec@suse.cz)
  - added an explicit provides of log4j symbol for log4j-mini (automatically by script)
- replaced a name `macro' by `real', because the -mini package has a different name
- disable the javadoc and manual subpackages for -mini build
* Thu Jun 07 2007 sbrabec@suse.cz
- Removed invalid desktop Category "Application" (#254654).
* Fri May 18 2007 dbornkessel@suse.de
- removed mx4j BuildReq to avoid build cycle ... apparently it was not used at compile time
* Tue May 08 2007 dbornkessel@suse.de
- use mx4j instead of jmx
* Wed Feb 15 2006 stbinner@suse.de
- add GenericName to .desktop files
* Wed Jan 25 2006 mls@suse.de
- converted neededforbuild to BuildRequires
* Tue Nov 08 2005 jsmeix@suse.de
- Current version 1.2.12 from JPackage.org
* Thu Sep 29 2005 dmueller@suse.de
- add norootforbuild
* Thu Nov 25 2004 ro@suse.de
- added suse_update_desktop_file
* Thu Sep 23 2004 mskibbe@suse.de
- change specfile(suse_update_desktop_file)
* Thu Sep 16 2004 skh@suse.de
- Fix prerequires for javadoc subpackage.
* Thu Sep 02 2004 skh@suse.de
- Initial package created with version 1.2.8 (JPackage 1.5)
openSUSE Build Service is sponsored by