icedtea-web/icedtea-web.spec

310 lines
10 KiB
RPMSpec
Raw Permalink Normal View History

%define origin openjdk
%define buildver 0
%define javaver 8
%define jppname java-%{javaver}-%{origin}-%{_arch}
%define sdkdir %{jppname}
%define jredir %{jppname}/jre
%define jrelnk jre-%{javaver}-%{origin}
%define jrebindir %{_jvmdir}/%{jredir}/bin
%define installdir %{_jvmdir}/%{jppname}
%define archbuild %{_target_cpu}
%ifarch %{ix86}
%define archbuild i386
%endif
%ifarch x86_64
%define archbuild amd64
%endif
Name: icedtea-web
Version: 1.8.1
Release: 2mamba
Summary: IcedTea Web Start implementation
Group: System/Libraries/Java
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: http://icedtea.classpath.org/
#Source: http://icedtea.classpath.org/download/source/icedtea-web-%{version}.tar.gz
Source: https://github.com/AdoptOpenJDK/IcedTea-Web/archive/icedtea-web-%{version}.tar.gz
License: GPL
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
BuildRequires: libgcc
BuildRequires: libglib-devel
BuildRequires: libstdc++6-devel
## AUTOBUILDREQ-END
BuildRequires: desktop-file-utils
BuildRequires: eclipse-ecj
BuildRequires: java-openjdk
BuildRequires: xulrunner-devel
BuildRequires: rust-bin
BuildRequires: java-junit48
BuildRequires: java-rhino
BuildRequires: java-hamcrest
BuildRequires: java-tagsoup
BuildRequires: objectweb-asm
#BuildRequires: zsh
Requires: java-openjdk-runtime
Requires: java-junit48
Requires: java-rhino
Requires: java-hamcrest
Requires: java-tagsoup
Requires: objectweb-asm
BuildRoot: %{_tmppath}/%{name}-%{version}-root
%description
The IcedTea-Web project provides a Free Software web browser plugin for running applets written in the Java programming language and an implementation of Java Web Start, originally based on the NetX project.
%package plugin
Summary: IcedTea Java browser plugin
Group: Applications/Networking
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
Requires: java-openjdk-runtime
#Requires: %{_libdir}/mozilla/plugins
Obsoletes: java-openjdk-plugin
Provides: java-plugins = %{javaver}
%description plugin
The IcedTea Java browser plugin.
%package javadoc
Summary: IcedTea Web API Documentation
Group: Documentation
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description javadoc
The IcedTea Web API documentation.
%prep
%setup -q -n IcedTea-Web-%{name}-%{version}
#-D -T
%build
#:<< _EOF
./autogen.sh
unset JAVA_HOME CLASSPATH
./configure \
--prefix=%{installdir} \
--with-jdk-home=%{_jvmdir}/%{jppname} \
--datadir=%{_datadir} \
--mandir=%{_mandir} \
--docdir=%{_docdir}/icedtea-web \
--htmldir=%{_javadocdir}/icedtea-web \
--with-ecj-jar=$(build-classpath eclipse-ecj) \
--enable-docs \
--with-chromium=%{_bindir}/chromium \
--with-itw-libs=BUNDLED
%make
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
mkdir -p %{buildroot}%{_jvmdir}/%{sdkdir}/share/icedtea-web
make -j1 DESTDIR=%{buildroot} install
#pushd %{buildroot}%{_jvmdir}
# ln -sf %{jredir} %{jrelnk}
#popd
install -d -m 755 %{buildroot}%{_libdir}/mozilla/plugins
install -D -m0644 javaws.desktop %{buildroot}%{_datadir}/applications/javaws.desktop
install -D -m0644 itweb-settings.desktop %{buildroot}%{_datadir}/applications/itweb-settings.desktop
install -D -m0644 javaws.png %{buildroot}%{_datadir}/pixmaps/javaws.png
install -d -m 755 %{buildroot}%{jrebindir}
(
cd %{buildroot}%{_jvmdir}
ln -sf ../../bin/itweb-settings %{buildroot}%{jrebindir}/itweb-settings
ln -sf ../../bin/javaws %{buildroot}%{jrebindir}/javaws
)
ln -sf %{_jvmdir}/java-%{javaver}-openjdk/lib/IcedTeaPlugin.so \
%{buildroot}%{_libdir}/mozilla/plugins/IcedTeaPlugin.so
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%pre
if [ $1 -ge 1 ]; then
# legacy cleanups
/usr/sbin/update-alternatives --remove javaws %{jrebindir}/javaws 2>/dev/null
/usr/sbin/update-alternatives --remove itweb-settings %{jrebindir}/itweb-settings 2>/dev/null
fi
exit 0
%post
if [ $1 -ge 1 ]; then
# Fix for directory which should be a symlink
[ -L %{_jvmdir}/java-%{javaver}-%{origin} ] || {
mv %{_jvmdir}/java-%{javaver}-%{origin} %{_jvmdir}/java-%{javaver}-%{origin}.bak
ln -sf %{jppname} %{_jvmdir}/java-%{javaver}-%{origin}
}
fi
[ -L /usr/bin/javaws -a "`readlink /usr/bin/javaws`" != "/etc/alternatives/javaws" ] &&
rm -f /usr/bin/javaws 2>/dev/null
/usr/sbin/update-alternatives --install %{_bindir}/javaws javaws %{jrebindir}/javaws 70
[ -L /usr/bin/itweb-settings -a "`readlink /usr/bin/itweb-settings`" != "/etc/alternatives/itweb-settings" ] &&
rm -f /usr/bin/itweb-settings 2>/dev/null
/usr/sbin/update-alternatives --install %{_bindir}/itweb-settings itweb-settings %{jrebindir}/itweb-settings 70
update-desktop-database %{_datadir}/applications &> /dev/null || :
touch --no-create %{_datadir}/icons/hicolor
if [ -x %{_bindir}/gtk-update-icon-cache ] ; then
%{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor
fi
exit 0
%preun
if [ $1 -eq 0 ]; then
[ -L /usr/bin/javaws -a "`readlink /usr/bin/javaws`" != "/etc/alternatives/javaws" ] &&
rm -f /usr/bin/javaws
/usr/sbin/update-alternatives --remove javaws %{jrebindir}/javaws
[ -L /usr/bin/itweb-settings -a "`readlink /usr/bin/itweb-settings`" != "/etc/alternatives/itweb-settings" ] &&
rm -f /usr/bin/itweb-settings
/usr/sbin/update-alternatives --remove javaws %{jrebindir}/itweb-settings
fi
exit 0
%postun
if [ $1 -eq 0 ]; then
[ -L /usr/bin/javaws -a "`readlink /usr/bin/javaws`" != "/etc/alternatives/javaws" ] && rm -f /usr/bin/javaws
/usr/sbin/update-alternatives --remove javaws %{jrebindir}/javaws
[ -L /usr/bin/itweb-settings -a "`readlink /usr/bin/itweb-settings`" != "/etc/alternatives/itweb-settings" ] &&
rm -f /usr/bin/itweb-settings
/usr/sbin/update-alternatives --remove javaws %{jrebindir}/itweb-settings
fi
update-desktop-database %{_datadir}/applications &> /dev/null || :
touch --no-create %{_datadir}/icons/hicolor
if [ -x %{_bindir}/gtk-update-icon-cache ] ; then
%{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor
fi
:
%pre plugin
if [ $1 -ge 1 ]; then
# legacy cleanups
/usr/sbin/update-alternatives --remove libnpjp2_sun_plugin.so %{_jvmdir}/java-1.6.0-sun/jre/lib/%{archbuild}/libnpjp2.so 2>/dev/null
/usr/sbin/update-alternatives --remove libjavaplugin_sun_oji.so %{_jvmdir}/java-1.6.0-sun/jre/plugin/%{archbuild}/ns7/libjavaplugin_oji.so 2>/dev/null
/usr/sbin/update-alternatives --remove libjavaplugin_sun.so %{_jvmdir}/java-1.6.0-sun/jre/plugin/%{archbuild}/ns7/libjavaplugin_oji.so 2>/dev/null
/usr/sbin/update-alternatives --remove libjavaplugin_sun_jni.so %{_jvmdir}/java-1.6.0-sun/jre/lib/%{archbuild}/libjavaplugin_jni.so 2>/dev/null
/usr/sbin/update-alternatives --remove libjavaplugin_%{origin}_nscp.so %{_jvmdir}/java-1.6.0-sun/jre/lib/%{archbuild}/libjavaplugin_nscp.so 2>/dev/null
/usr/sbin/update-alternatives --remove libjavaplugin.so %{_jvmdir}/%{jrelnk}/lib/%{archbuild}/IcedTeaNPPlugin.so 2>/dev/null
fi
exit 0
%post plugin
/usr/sbin/update-alternatives --install %{_libdir}/mozilla/plugins/libjavaplugin.so libjavaplugin.so \
%{_jvmdir}/%{jrelnk}/lib/%{archbuild}/IcedTeaPlugin.so 70
exit 0
%preun plugin
if [ $1 -eq 0 ]; then
/usr/sbin/update-alternatives --remove libjavaplugin.so %{_jvmdir}/%{jrelnk}/lib/%{archbuild}/IcedTeaNPPlugin.so
fi
exit 0
%postun plugin
if [ $1 -eq 0 ]; then
/usr/sbin/update-alternatives --remove libjavaplugin.so %{_jvmdir}/%{jrelnk}/lib/%{archbuild}/IcedTeaNPPlugin.so
fi
:
%files
%defattr(-,root,root)
%{_jvmdir}/%{sdkdir}/bin/itweb-settings
%{_jvmdir}/%{sdkdir}/bin/itw-modularjdk.args
%{_jvmdir}/%{sdkdir}/bin/javaws
%{jrebindir}/itweb-settings
%{jrebindir}/javaws
%dir %{_datadir}/icedtea-web
%{_datadir}/icedtea-web/*
%{_jvmdir}/%{sdkdir}/bin/policyeditor
%{_jvmdir}/%{sdkdir}/lib/IcedTeaPlugin.so
%{_datadir}/applications/itweb-settings.desktop
%{_datadir}/applications/javaws.desktop
%{_datadir}/bash-completion/completions/*.bash
%{_datadir}/pixmaps/javaws.png
%{_mandir}/man1/icedtea-web-plugin.1.gz
%{_mandir}/man1/icedtea-web.1.gz
%{_mandir}/man1/itweb-settings.1*
%{_mandir}/man1/javaws.1*
%{_mandir}/man1/policyeditor.1*
#%lang(cs) %{_mandir}/cs/man1/*.1*
%lang(de) %{_mandir}/de/man1/*.1*
%lang(pl) %{_mandir}/pl/man1/*.1*
%doc AUTHORS COPYING
%files plugin
%defattr(-,root,root)
%dir %{_libdir}/mozilla/plugins
%{_libdir}/mozilla/plugins/IcedTeaPlugin.so
%files javadoc
%defattr(-,root,root)
%{_javadocdir}/icedtea-web
%changelog
* Mon Jun 24 2019 Silvan Calarco <silvan.calarco@mambasoft.it> 1.8.1-2mamba
- rebuilt passing --with-chromium
* Wed Jun 12 2019 Silvan Calarco <silvan.calarco@mambasoft.it> 1.8.1-1mamba
- update to 1.8.1
* Wed Sep 19 2018 Silvan Calarco <silvan.calarco@mambasoft.it> 1.7.1-1mamba
- update to 1.7.1
* Wed Feb 03 2016 Automatic Build System <autodist@mambasoft.it> 1.6.2-1mamba
- automatic version update by autodist
* Mon Sep 14 2015 Silvan Calarco <silvan.calarco@mambasoft.it> 1.6.1-1mamba
- update to 1.6.1
* Tue Jul 28 2015 Silvan Calarco <silvan.calarco@mambasoft.it> 1.6-3mamba
- fix java installation dir (add -%{_arch})
* Sun Jul 26 2015 Silvan Calarco <silvan.calarco@mambasoft.it> 1.6-2mamba
- plugin: remove requirement for java-openjdk-runtime = 7
* Tue May 19 2015 Automatic Build System <autodist@mambasoft.it> 1.6-1mamba
- automatic version update by autodist
* Thu Nov 27 2014 Automatic Build System <autodist@mambasoft.it> 1.5.2-1mamba
- automatic version update by autodist
* Sat Aug 16 2014 Automatic Build System <autodist@mambasoft.it> 1.5.1-1mamba
- automatic update by autodist
* Wed Jun 18 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 1.5-3mamba
- don't require directory %{_libdir}/mozilla/plugins
* Wed Jun 11 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 1.5-2mamba
- fix plugin symlink
* Wed Jun 04 2014 Automatic Build System <autodist@mambasoft.it> 1.5-1mamba
- automatic update by autodist
* Tue Oct 01 2013 Automatic Build System <autodist@mambasoft.it> 1.4.1-1mamba
- automatic update by autodist
* Mon Mar 14 2011 gil <puntogil@libero.it> 1.0.1-2mamba
- rebuilt with new java-openjdk
* Sat Mar 12 2011 gil <puntogil@libero.it> 1.0.1-1mamba
- package created by autospec