Blob Blame History Raw
%define base_name	modeler
%define short_name	commons-%{base_name}
%define name		jakarta-%{short_name}
%define version		1.1
%define release		3jpp_3fc
%define	section		free

Name:		%{name}
Version:	%{version}
Release:	%{release}
Epoch:		0
Summary:	Jakarta Commons Modeler Package
License:	Apache Software License
Group:		Development/Libraries/Java
Source0:	%{base_name}-%{version}-src.tar.gz
#Patch:		%{name}.no-licence.build.patch
Url:		http://jakarta.apache.org/commons/%{base_name}
BuildRequires:	ant
BuildRequires:	jaxp_parser_impl
BuildRequires:	xml-commons-apis
BuildRequires:	jaxp_transform_impl
BuildRequires:	jmxri
BuildRequires:	junit >= 3.7
BuildRequires:	jakarta-commons-beanutils >= 1.3
BuildRequires:	jakarta-commons-collections >= 2.0
BuildRequires:	jakarta-commons-digester >= 1.2
BuildRequires:	jakarta-commons-logging >= 1.0
Requires:	jaxp_parser_impl
Requires:	xml-commons-apis
Requires:	jaxp_transform_impl
Requires:	jmxri
Requires:	jakarta-commons-beanutils >= 1.3
Requires:	jakarta-commons-collections >= 2.0
Requires:	jakarta-commons-digester >= 1.2
Requires:	jakarta-commons-logging >= 1.0
BuildRoot:	%{_tmppath}/%{name}-%{version}-buildroot
# RHEL3 and FC2
Obsoletes:	%{short_name} <= 0:1.0
# libgcj aot-compiled native libraries
BuildRequires:         gcc-java >= 4.0.0-0.43
BuildRequires:         java-1.4.2-gcj-compat >= 1.4.2.0-40jpp_16rh
Requires(post,postun): java-1.4.2-gcj-compat >= 1.4.2.0-40jpp_16rh
ExclusiveArch:         i386 x86_64 ppc

%description
The Modeler project shall create and maintain a set of Java
classes to provide the facilities described in the preceeding section, plus
unit tests and small examples of using these facilities to instrument
Java classes with Model MBean support.

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

%description javadoc
Javadoc for %{name}.

%prep
rm -rf $RPM_BUILD_ROOT
%setup -n %{short_name}-%{version}-src
#%patch
# remove all binary libs
find . -name "*.jar" -exec rm -f {} \;

%build

export CLASSPATH=$(build-classpath xml-commons-apis jaxp_parser_impl jaxp_transform_impl jmxri junit commons-beanutils commons-collections commons-digester commons-logging)

ant dist

aot-compile \
    dist/%{short_name}.jar \
    lib%{name}-%{version}.jar.so \
    "$RPM_OPT_FLAGS -fPIC"

%install
# jars
install -d -m 755 $RPM_BUILD_ROOT%{_javadir}
install -m 644 dist/%{short_name}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar
(cd $RPM_BUILD_ROOT%{_javadir} && for jar in *-%{version}*; do ln -sf ${jar} `echo $jar| sed  "s|jakarta-||g"`; done)
(cd $RPM_BUILD_ROOT%{_javadir} && for jar in *-%{version}*; do ln -sf ${jar} `echo $jar| sed  "s|-%{version}||g"`; done)
# javadoc
install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
cp -pr dist/docs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
# solibs
install -d -m 755 $RPM_BUILD_ROOT%{_libdir}
install -m 755 lib%{name}-%{version}.jar.so $RPM_BUILD_ROOT%{_libdir}
ln -sf lib%{name}-%{version}.jar.so $RPM_BUILD_ROOT%{_libdir}/lib%{name}.jar.so
# gcjdb
gcjdbdir=`gcj-dbtool -p %{_libdir}`.d
mkdir -p $RPM_BUILD_ROOT$gcjdbdir
gcj-dbtool -n $RPM_BUILD_ROOT$gcjdbdir/%{name}-%{version}.db 80000
gcj-dbtool -f $RPM_BUILD_ROOT$gcjdbdir/%{name}-%{version}.db \
  $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar \
  %{_libdir}/lib%{name}-%{version}.jar.so

%clean
rm -rf $RPM_BUILD_ROOT

%pre
rm -f %{_javadir}/%{short_name}*.jar
rm -f %{_javadir}/%{name}*.jar

%triggerpostun -- commons-modeler < 1.2
pushd %{_javadir} &> /dev/null
    ln -sf %{name}-%{version}.jar %{short_name}-%{version}.jar
    ln -sf %{short_name}-%{version}.jar %{short_name}.jar
popd &> /dev/null

%post
rebuild-gcj-db %{_libdir}

%postun
rebuild-gcj-db %{_libdir}

%files
%defattr(-,root,root)
%doc STATUS.html RELEASE-NOTES.txt PROPOSAL.html
%{_javadir}/*
%attr(0755,root,root) %{_libdir}/lib*.jar.so
%{_libdir}/*/*/%{name}-%{version}.db

%files javadoc
%defattr(-,root,root)
%{_javadocdir}/%{name}-%{version}

%changelog
* Thu May  5 2005 Gary Benson <gbenson@redhat.com> - 0:1.1-3jpp_3fc
- Add dependencies for %post and %postun scriptlets (#156901).

* Wed May  4 2005 Gary Benson <gbenson@redhat.com> - 0:1.1-3jpp_2fc
- BC-compile.

* Mon Mar  7 2005 Gary Benson <gbenson@redhat.com> - 0:1.1-3jpp_1fc
- Build into Fedora.

* Fri Oct 22 2004 Fernando Nasser <fnasser@redhat.com> - 0:1.1-3jpp_1rh
- Merge with upstream version

* Sun Aug 23 2004 Randy Watler <rwatler at finali.com> - 0:1.1-3jpp
- Rebuild with ant-1.6.2

* Fri Jul  2 2004 Aizaz Ahmed <aahmed@redhat.com> 0:1.1-2jpp_4rh
- Added trigger to restore symlinks that are removed if ugrading
  from a commons-modeler rhug package

* Fri Apr  2 2004 Frank Ch. Eigler <fche@redhat.com> 0:1.1-2jpp_3rh
- more of the same, for version-suffixed .jar files

* Fri Mar 26 2004 Frank Ch. Eigler <fche@redhat.com> 0:1.1-2jpp_2rh
- add RHUG upgrade cleanup

* Thu Mar  4 2004 Frank Ch. Eigler <fche@redhat.com> 0:1.1-2jpp_1rh
- RH vacuuming

* Thu Oct 09 2003 Henri Gomez <hgomez at users.sourceforge.net> 0:1.1-2jpp
- fix junit typo (reported by Kaj J. Niemi)

* Wed Oct 08 2003 Henri Gomez <hgomez at users.sourceforge.net> 0:1.1-1jpp
- modeler 1.1

* Tue Mar 25 2003 Nicolas Mailhot <Nicolas.Mailhot (at) JPackage.org> 1.0-6jpp
- for jpackage-utils 1.5

* Thu Feb 27 2003 Henri Gomez <hgomez@users.sourceforge.net> 1.0-5jpp
- fix ASF license

* Thu Feb 27 2003 Henri Gomez <hgomez@users.sourceforge.net> 1.0-4jpp
- fix missing packager tag
- fix new mx4j jar name (mx4j-jmx.jar)

* Fri Jul 12 2002 Henri Gomez <hgomez@users.sourceforge.net> 1.0-3jpp
- updated requires for jaxp_parser_impl and xml-commons-apis

* Mon Jun 10 2002 Henri Gomez <hgomez@users.sourceforge.net> 1.0-2jpp
- use sed instead of bash 2.x extension in link area to make spec compatible
  with distro using bash 1.1x

* Fri Jun 07 2002 Henri Gomez <hgomez@users.sourceforge.net> 1.0-1jpp 
- 1.0
- added short names in %{_javadir}, as does jakarta developpers
- first jPackage release