# TODO:
# - install fonts system-wide (subpackage?)
-# - why not having the plugin in single dir, /usr/lib/nsplugins, and
-# all the browsers symlink there?
+# - install one copy of vrml.jar
%include /usr/lib/rpm/macros.perl
-Summary: FreeWRL - VRML browser
-Summary(pl): FreeWRL - przegl±darka VRML
+%define pdir VRML
+%define pnam VRMLFunc
+Summary: FreeWRL - VRML/X3D browser
+Summary(pl.UTF-8): FreeWRL - przeglądarka VRM/X3D
Name: freewrl
-Version: 1.12
+Version: 1.19.8
Release: 1
-License: LGPL
+License: LGPL v2
Group: X11/Applications/Graphics
-Source0: http://dl.sourceforge.net/freewrl/FreeWRL-%{version}.tar.gz
-# Source0-md5: cc717ca6587be7096e06338cd841350f
+Source0: http://dl.sourceforge.net/freewrl/%{name}-%{version}.tar.gz
+# Source0-md5: c193a1eb6e88c4253b6aec02098a9d3c
Patch0: %{name}-config.patch
-Patch1: %{name}-system-js.patch
-Patch2: %{name}-make.patch
+Patch1: %{name}-makefile.patch
+Patch2: %{name}-system-js.patch
+Patch3: %{name}-optimize.patch
URL: http://freewrl.sourceforge.net/
-BuildRequires: ImageMagick
+BuildRequires: ImageMagick-devel
BuildRequires: OpenGL-devel
-BuildRequires: XFree86-devel
BuildRequires: freetype-devel >= 2.0
-BuildRequires: jar
BuildRequires: jdk
BuildRequires: js-devel
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
-BuildRequires: mozilla-devel
-BuildRequires: mozilla-embedded(gtk2)
+BuildRequires: motif-devel
BuildRequires: perl-devel >= 1:5.8.0
BuildRequires: rpm-perlprov >= 4.1-13
-BuildRequires: rpmbuild(macros) >= 1.213
+BuildRequires: rpmbuild(macros) >= 1.357
BuildRequires: saxon
+BuildRequires: xorg-lib-libXaw-devel
%ifarch %{x8664} ia64 ppc64 s390x sparc64
Provides: libFreeWRLFunc.so()(64-bit)
%else
Requires: perl(DynaLoader) = %(%{__perl} -MDynaLoader -e 'print DynaLoader->VERSION')
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define mozilladir /usr/%{_lib}/mozilla
-%define netscapedir /usr/%{_lib}/netscape
-
%define _noautoreqdep libGL.so.1 libGLU.so.1
# false positives found by perlreq from rpm 4.1
%define _noautoreq 'perl(VRML::Events)' 'perl(VRML::VRMLCU)' 'perl(VRML::VRMLFields)' 'perl(VRML::VRMLNodes)' 'perl(VRMLFields)' 'perl(VRMLNodes)' 'perl(VRMLRend)'
%description
-FreeWRL - VRML browser.
-
-%description -l pl
-FreeWRL - przegl±darka VRML.
-
-%package -n mozilla-plugin-%{name}
-Summary: VRML plugin for Mozilla WWW browser
-Summary(pl): Wtyczka VRML dla przegl±darki WWW Mozilla
-Group: Libraries
-Requires: %{name} = %{version}-%{release}
-Requires: mozilla-embedded(gtk2)
-
-%description -n mozilla-plugin-%{name}
-VRML plugin for Mozilla WWW browser.
-
-%description -n mozilla-plugin-%{name} -l pl
-Wtyczka VRML dla przegl±darki WWW Mozilla.
-
-%package -n netscape-plugin-%{name}
-Summary: VRML plugin for Netscape WWW browser
-Summary(pl): Wtyczka VRML dla przegl±darki WWW Netscape
-Group: Libraries
-Requires: %{name} = %{version}-%{release}
-
-%description -n netscape-plugin-%{name}
-VRML plugin for Netscape WWW browser.
-
-%description -n netscape-plugin-%{name} -l pl
-Wtyczka VRML dla przegl±darki WWW Netscape.
-
-%package -n mozilla-firefox-plugin-%{name}
-Summary: VRML plugin for Mozilla Firefox browser
-Summary(pl): Wtyczka VRML dla przegl±darki Mozilla Firefox
-Group: Libraries
-PreReq: mozilla-firefox
-Requires: %{name} = %{version}-%{release}
-
-%description -n mozilla-firefox-plugin-%{name}
-VRML plugin for Mozilla Firefox browser.
+FreeWRL - VRML/X3D browser.
-%description -n mozilla-firefox-plugin-%{name} -l pl
-Wtyczka VRML dla przegl±darki Mozilla Firefox.
+%description -l pl.UTF-8
+FreeWRL - przeglądarka VRM/X3D.
-%package -n konqueror-plugin-%{name}
-Summary: VRML plugin for Konqueror browser
-Summary(pl): Wtyczka VRML dla przegl±darki Konqueror
+%package -n browser-plugin-%{name}
+Summary: VRML/X3D plugin for WWW browser
+Summary(pl.UTF-8): Wtyczka VRML/X3D dla przeglądarki WWW
Group: Libraries
-PreReq: konqueror >= 3.0.8-2.3
Requires: %{name} = %{version}-%{release}
+Requires: browser-plugins >= 2.0
+Obsoletes: konqueror-plugin-freewrl
+Obsoletes: mozilla-firefox-plugin-freewrl
+Obsoletes: mozilla-plugin-freewrl
+Obsoletes: netscape-plugin-freewrl
-%description -n konqueror-plugin-%{name}
-VRML plugin for Konqueror browser.
+%description -n browser-plugin-%{name}
+VRML and X3D plugin for WWW browser.
-%description -n konqueror-plugin-%{name} -l pl
-Wtyczka VRML dla przegl±darki Konqueror.
+%description -n browser-plugin-%{name} -l pl.UTF-8
+Wtyczka VRML i X3D dla przeglądarki WW.
%prep
-%setup -q -n FreeWRL-%{version}
+%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1
+%patch3 -p1
-# this file causes unnecessary/unwanted rebuilds of JS module
-rm -f JS/Makefile.aqua.PL
+# avoid using included js
+rm -rf JS
+
+%{__sed} -i -e 's#\(NETSCAPE_\(INST\|CLASSES\|PLUGINS\)\) =>.*#\1 => "%{_browserpluginsdir}",#' vrml.conf*
%build
%{__perl} Makefile.PL \
INSTALLDIRS=vendor
-%{__make} \
+
+%{__make} -j1 \
CC="%{__cc}" \
OPTIMIZE="%{rpmcflags}" \
- OPTIMIZER="%{rpmcflags}" \
DESTINSTALLPRIVLIB=%{perl_vendorlib}
%{__make} -C Plugin \
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{mozilladir}/plugins,%{netscapedir}/plugins} \
- $RPM_BUILD_ROOT%{_libdir}/{mozilla-firefox/plugins,kde3/plugins/konqueror} \
- $RPM_BUILD_ROOT%{perl_vendorlib}/VRML
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_browserpluginsdir},%{perl_vendorlib}/VRML}
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT \
SITEARCHEXP=$RPM_BUILD_ROOT%{perl_vendorarch} \
- DESTINSTALLPRIVLIB=$RPM_BUILD_ROOT%{perl_vendorlib}
-
-# mozilla plugin is installed by make install
-install Plugin/npfreewrl.so $RPM_BUILD_ROOT%{netscapedir}/plugins
-install Plugin/npfreewrl.so $RPM_BUILD_ROOT%{_libdir}/mozilla-firefox/plugins
-install Plugin/npfreewrl.so $RPM_BUILD_ROOT%{_libdir}/kde3/plugins/konqueror
+ DESTINSTALLPRIVLIB=$RPM_BUILD_ROOT%{perl_vendorlib} \
+ PLUGDIR=%{_browserpluginsdir} \
+ CHCON=true
# specified in java/classes/Makefile.PL, but finally not installed
install java/classes/vrml.jar $RPM_BUILD_ROOT%{perl_vendorlib}/VRML
install java/classes/java.policy $RPM_BUILD_ROOT%{perl_vendorlib}/VRML
-# remove copy, make a symlink
-rm -f $RPM_BUILD_ROOT%{perl_vendorarch}/auto/VRML/VRMLFunc/libFreeWRLFunc.so
-ln -sf %{perl_vendorarch}/auto/VRML/VRMLFunc/VRMLFunc.so $RPM_BUILD_ROOT%{_libdir}/libFreeWRLFunc.so
+rm -f $RPM_BUILD_ROOT%{_datadir}/%{name}/fonts/{COPYRIGHT,README,RELEASENOTES}.TXT
%clean
rm -rf $RPM_BUILD_ROOT
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
+%post -n browser-plugin-%{name}
+%update_browser_plugins
+
+%postun -n browser-plugin-%{name}
+if [ "$1" = 0 ]; then
+ %update_browser_plugins
+fi
+
%files
%defattr(644,root,root,755)
-%doc README.html
-%attr(755,root,root) %{_bindir}/*
+%doc CHANGELOG README.html
+%attr(755,root,root) %{_bindir}/FreeWRL_Message
+%attr(755,root,root) %{_bindir}/FreeWRL_SoundServer
+%attr(755,root,root) %{_bindir}/freewrl
%attr(755,root,root) %{_libdir}/libFreeWRLFunc.so
%dir %{perl_vendorlib}/VRML
-%attr(755,root,root) %{perl_vendorlib}/VRML/fw2init.pl
%{perl_vendorlib}/VRML/java.policy
%{perl_vendorlib}/VRML/vrml.jar
-%dir %{perl_vendorlib}/VRML/fonts
-# Bitstream Amerigo, BauerBodni, Futura fonts
-%{perl_vendorlib}/VRML/fonts/*.ttf
-%{perl_vendorarch}/VRML
-%dir %{perl_vendorarch}/auto/VRML
-%dir %{perl_vendorarch}/auto/VRML/*
-%{perl_vendorarch}/auto/VRML/*/*.bs
-%attr(755,root,root) %{perl_vendorarch}/auto/VRML/*/*.so
-%{_mandir}/man1/*.1*
-%{_mandir}/man3/*.3*
-
-%files -n mozilla-plugin-%{name}
-%defattr(644,root,root,755)
-%attr(755,root,root) %{mozilladir}/plugins/*.so
-
-%files -n netscape-plugin-%{name}
-%defattr(644,root,root,755)
-%attr(755,root,root) %{netscapedir}/plugins/*.so
-
-%files -n mozilla-firefox-plugin-%{name}
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/mozilla-firefox/plugins/*.so
-
-%files -n konqueror-plugin-%{name}
+%dir %{_datadir}/%{name}
+%dir %{_datadir}/%{name}/fonts
+%{_datadir}/%{name}/fonts/*.ttf
+%{_datadir}/%{name}/fonts/*.conf
+%{_pixmapsdir}/%{name}.png
+%{_desktopdir}/%{name}.desktop
+
+%files -n browser-plugin-%{name}
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/kde3/plugins/konqueror/*.so
+%attr(755,root,root) %{_browserpluginsdir}/npfreewrl.so
+%{_browserpluginsdir}/vrml.jar