]> git.pld-linux.org Git - packages/opera.git/blobdiff - opera.spec
- include snapshot version in release, to be able to upgrade from snapshots
[packages/opera.git] / opera.spec
index 9ccf6ef1e30ff0d73c81392e3c8db500eeefdf39..6e72f65fb7c187ebe68a1d3b5a2e77d1f4f27c0f 100644 (file)
+# TODO:
+# - move translations into a separate, noarch package
 #
-# There're some problems with "shared" version
-#
-%bcond_with    shared
+%bcond_without shared          # static or shared version
+%bcond_without distributable   # distributable or not
+%bcond_without incall          # include all tarballs into src.rpm (but splitted into shared/static)
+%bcond_with    snap            # snap version
+
+%ifarch sparc64 sparc
+%undefine with_shared
+%endif
+
+%if %{with snap}
+%define        ver             8.01
+%define        sver            %{ver}
+%define        fix             %{nil}
+%define        dirrel          20050509
+%define        reltype         Preview-1
+%else
+%define        ver             8.01
+%define        sver            8.01
+%define        fix             %{nil}
+%define        dirrel          20050602
+%define        reltype         final
+%endif
 
-%define        ver             7.50
-%define        dirrel          20040218
-%define        shared_rel      %{dirrel}.5
-%define        static_rel      %{dirrel}.1
+%define        shver           %(echo %{ver} | tr -d .)%{fix}
+%define        x86_shared_rel          %{dirrel}.4
+%define        x86_static_rel          %{dirrel}.1
+%define        sparc_shared_rel        %{dirrel}.2
+%define        sparc_static_rel        %{dirrel}.1
+%define        ppc_shared_rel          %{dirrel}.3
+%define        ppc_static_rel          %{dirrel}.1
 %if %{with shared}
-%define        rel             %{shared_rel}
 %define        type            shared
+# We should be able to build src.rpm also on not supported archs
+%define        rel             %{x86_shared_rel}
+%ifarch sparc64 sparc
+#%%define      rel             %{sparc_shared_rel}
+%define        rel             %{sparc_static_rel}
+%endif
+%ifarch ppc
+%define        rel             %{ppc_shared_rel}
+%endif
 %else
-%define        rel             %{static_rel}
 %define        type            static
+%define        rel             %{x86_static_rel}
+%ifarch sparc sparc64
+%define        rel             %{sparc_static_rel}
+%endif
+%ifarch ppc
+%define        rel             %{ppc_static_rel}
+%endif
+%endif
+
+# define to 0 and then redefine to avoid
+# not defined macros
+%define        need_ix86_shared_snap   0
+%define        need_sparc_shared_snap  0
+%define        need_ppc_shared_snap    0
+%define        need_ix86_static_snap   0
+%define        need_sparc_static_snap  0
+%define        need_ppc_static_snap    0
+
+%define        need_ix86_shared        0
+%define        need_sparc_shared       0
+%define        need_ppc_shared         0
+%define        need_ix86_static        0
+%define        need_sparc_static       0
+%define        need_ppc_static         0
+
+%if %{with incall}
+#      with incall?    [if]
+%if    %{with snap}
+#              with snap?      [if]
+%if    %{with shared}
+#                      with shared?    [if]
+%define        need_ix86_shared_snap   1
+%define        need_sparc_shared_snap  1
+%define        need_ppc_shared_snap    1
+%else
+#                      with shared:    [else]
+%define        need_ix86_static_snap   1
+%define        need_sparc_static_snap  1
+%define        need_ppc_static_snap    1
+%endif
+#                      with shared;    [endif]
+%else
+#              with snap:      [else]
+%if %{with shared}
+#                      with shared?    [if]
+%define        need_ix86_shared        1
+#%%define      need_sparc_shared       1
+%define        need_sparc_static       1
+%define        need_ppc_shared 1
+%else
+#                      with shared:    [else]
+%define        need_ix86_static        1
+%define        need_sparc_static       1
+%define        need_ppc_static 1
+%endif
+#                      with shared;    [endif]
+%endif
+#              with snap;      [endif]
+%else
+#      with incall:    [else]
+%ifarch        %{ix86}
+#              is ix86?        [if]
+%if    %{with snap}
+#                      with snap?      [if]
+%if    %{with shared}
+#                              with shared?    [if]
+%define        need_ix86_shared_snap   1
+%else
+#                              with shared:    [else]
+%define        need_ix86_static_snap   1
+%endif
+#                              with shared;    [endif]
+%else
+#                      with snap:      [else]
+%if    %{with shared}
+#                              with shared?    [if]
+%define        need_ix86_shared        1
+%else
+#                              with shared:    [else]
+%define        need_ix86_static        1
+%endif
+#                              with shared;    [endif]
+%endif
+#                      with snap;      [endif]
+%endif
+#              is ix86;        [endif]
+%ifarch        sparc sparc64
+#              is sparc?       [if]
+%if    %{with snap}
+#                      with snap?      [if]
+%if    %{with shared}
+#                              with shared?    [if]
+%define        need_sparc_shared_snap  1
+%else
+#                              with shared:    [else]
+%define        need_sparc_static_snap  1
+%endif
+#                              with shared;    [endif]
+%else
+#                      with snap:      [else]
+%if    %{with shared}
+#                              with shared?    [if]
+#%%define      need_sparc_shared       1
+%define        need_sparc_static       1
+%else
+#                              with shared:    [else]
+%define        need_sparc_static       1
+%endif
+#                              with shared;    [endif]
+%endif
+#                      with snap;      [endif]
+%endif
+#              is sparc;       [endif]
+%ifarch        ppc
+#              is ppc?         [if]
+%if    %{with snap}
+#                      with snap?      [if]
+%if    %{with shared}
+#                              with shared?    [if]
+%define        need_ppc_shared_snap    1
+%else
+#                              with shared:    [else]
+%define        need_ppc_static_snap    1
+%endif
+#                              with shared;    [endif]
+%else
+#                      with snap:      [else]
+%if    %{with shared}
+#                              with shared?    [if]
+%define        need_ppc_shared 1
+%else
+#                              with shared:    [else]
+%define        need_ppc_static 1
+%endif
+#                              with shared;    [endif
+%endif
+#                      with snap;      [endif
 %endif
+#              is ppc;         [endif]
+%endif
+#      with incall;    [endif]
+
 Summary:       World fastest web browser
 Summary(pl):   Najszybsza przegl±darka WWW na ¶wiecie
 Name:          opera
-Version:       %{ver}.%{rel}
-Release:       0.1
-License:       Restricted, see file LICENSE
+Version:       %{ver}%{fix}
+Release:       %{?with_snap:0.%{rel}.}1
+Epoch:         2
+License:       Distributable for PLD until 31 Dec 2006 - http://distribute.opera.com/ (otherwise restricted, see file LICENSE)
 Group:         X11/Applications/Networking
-# Source0:     ftp://ftp.opera.com/pub/opera/linux/723/final/en/i386/static/%{name}-%{ver}-%{static_rel}-static-qt.i386-en.tar.bz2
-Source0:       http://snapshot.opera.com/unix/7.50-Preview-2/intel-linux/en/%{name}-%{ver}-%{static_rel}-static-qt.i386-en.tar.bz2
-# Source1:     ftp://ftp.opera.com/pub/opera/linux/723/final/en/sparc/static/%{name}-%{ver}-%{static_rel}-static-qt.sparc-en.tar.bz2
-Source1:       http://snapshot.opera.com/unix/7.50-Preview-2/sparc-linux/en/%{name}-%{ver}-%{static_rel}-static-qt.sparc-en.tar.bz2
-# Source2:     ftp://ftp.opera.com/pub/opera/linux/723/final/en/ppc/static/%{name}-%{ver}-%{static_rel}-static-qt.ppc-en.tar.bz2
-Source2:        http://snapshot.opera.com/unix/7.50-Preview-2/ppc-linux/en/%{name}-%{ver}-%{static_rel}-static-qt.ppc-en.tar.bz2
-# polish language file (taken from where?)
-Source3:       %{name}-2887.lng
+
+%if %{need_ix86_static}
+Source0:       ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/i386/static/%{name}-%{sver}-%{x86_static_rel}-static-qt.i386-en.tar.bz2
+# Source0-md5: 94d1d86f42d9aa912c288e47c4b3893f
+%{!?with_distributable:NoSource:       0}
+%endif
+
+%if %{need_ix86_static_snap}
+Source100:     http://snapshot.opera.com/unix/%{ver}-%{reltype}/intel-linux/en/%{name}-%{sver}-%{x86_static_rel}-static-qt.i386-en.tar.bz2
+%{!?with_distributable:NoSource:       100}
+%endif
+
+%if %{need_sparc_static}
+Source1:       ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/sparc/en/%{name}-%{sver}-%{sparc_static_rel}-static-qt.sparc-en.tar.bz2
+# Source1-md5: a2a0eab9c4e45d55f2b93c87c80448be
+%{!?with_distributable:NoSource:       1}
+%endif
+
+%if %{need_sparc_static_snap}
+Source101:     http://snapshot.opera.com/unix/%{ver}-%{reltype}/sparc-linux/en/%{name}-%{sver}-%{sparc_static_rel}-static-qt.sparc-en.tar.bz2
+# Source101-md5:       913ccb28106f9f5acd3d9e4c8dc71ae1
+%{!?with_distributable:NoSource:       101}
+%endif
+
+%if %{need_ppc_static}
+Source2:       ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/ppc/static/%{name}-%{sver}-%{ppc_static_rel}-static-qt.ppc-en.tar.bz2
+# Source2-md5: 5fe172a95df147f709af5bff021edc15
+%{!?with_distributable:NoSource:       2}
+%endif
+
+%if %{need_ppc_static_snap}
+Source102:     http://snapshot.opera.com/unix/%{ver}-%{reltype}/ppc-linux/en/%{name}-%{sver}-%{ppc_static_rel}-static-qt.ppc-en.tar.bz2
+%{!?with_distributable:NoSource:       102}
+%endif
+
+%if %{need_ix86_shared}
+Source20:      ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/i386/%{name}-%{sver}-%{x86_shared_rel}-shared-qt.i386-en.tar.bz2
+# Source20-md5:        1cf47863f9fd9d5838b704481beb7c1a
+%{!?with_distributable:NoSource:       20}
+%endif
+
+%if %{need_ix86_shared_snap}
+Source1020:    http://snapshot.opera.com/unix/%{ver}-%{reltype}/intel-linux/en/%{name}-%{sver}-%{x86_shared_rel}-shared-qt.i386-en.tar.bz2
+# Source1020-md5:      e3602032ae454a86cc2854685043c1aa
+%{!?with_distributable:NoSource:       1020}
+%endif
+
+%if %{need_sparc_shared}
+Source21:      ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/sparc/shared/gcc-2.95/%{name}-%{sver}-%{sparc_shared_rel}-shared-qt.sparc-en.tar.bz2
+# Source21-md5:        883df8058672cf52678a07d7194dcfce
+%{!?with_distributable:NoSource:       21}
+%endif
+
+%if %{need_sparc_shared_snap}
+Source1021:    http://snapshot.opera.com/unix/%{ver}-%{reltype}/sparc-linux/en/%{name}-%{sver}-%{sparc_shared_rel}-shared-qt.sparc-en.tar.bz2
+# Source1021-md5:      e98aeabb57962b6577a10d43c7b3efa0
+%{!?with_distributable:NoSource:       1021}
+%endif
+
+%if %{need_ppc_shared}
+Source22:      ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/ppc/%{name}-%{sver}-%{ppc_shared_rel}-shared-qt.ppc-en.tar.bz2
+# Source22-md5:        b005627dadd4664e6b2ff06b860d1e33
+%{!?with_distributable:NoSource:       22}
+%endif
+
+%if %{need_ppc_shared_snap}
+Source1022:    http://snapshot.opera.com/unix/%{ver}-%{reltype}/ppc-linux/en/%{name}-%{sver}-%{ppc_shared_rel}-shared-qt.ppc-en.tar.bz2
+# Source1022-md5:      50836edd6eae80c202edea641229a902
+%{!?with_distributable:NoSource:       1022}
+%endif
+
 Source4:       %{name}.desktop
-# Source20:    ftp://ftp.opera.com/pub/opera/linux/723/final/en/i386/shared/%{name}-%{ver}-%{shared_rel}-shared-qt.i386-en.tar.bz2
-Source20:      http://snapshot.opera.com/unix/7.50-Preview-2/intel-linux/en/%{name}-%{ver}-%{shared_rel}-shared-qt.i386-en.tar.bz2
-# Source21:    ftp://ftp.opera.com/pub/opera/linux/723/final/en/sparc/shared/gcc-2.95/%{name}-%{ver}-%{dirrel}.2-shared-qt.sparc-en.tar.bz2
-Source21:      http://snapshot.opera.com/unix/7.50-Preview-2/sparc-linux/en/%{name}-%{ver}-%{dirrel}.2-shared-qt.sparc-en.tar.bz2
-# Source22:    ftp://ftp.opera.com/pub/opera/linux/723/final/en/ppc/shared/gcc-2.95/%{name}-%{ver}-%{dirrel}.2-shared-qt.ppc-en.tar.bz2
-Source22:      http://snapshot.opera.com/unix/7.50-Preview-2/ppc-linux/en/%{name}-%{ver}-%{dirrel}.2-shared-qt.ppc-en.tar.bz2
-NoSource:      0
-NoSource:      1
-NoSource:      2
-NoSource:      20
-NoSource:      21
-NoSource:      22
+
 URL:           http://www.opera.com/
 ExclusiveArch: %{ix86} ppc sparc sparc64
 Requires:      freetype >= 2
 Requires:      openmotif >= 2
+BuildRequires: sed >= 4.0
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _plugindir      %{_libdir}/opera/plugins
@@ -60,97 +286,92 @@ qt.
 
 %description -l pl
 Opera jest najszybsz± przegl±dark± WWW na ¶wiecie. Obs³uguje wiêkszo¶æ
-dzisiejszych rozszerzeñ HTMLa. Dodatkowo jest w miarê stabilna. Jedyn±
+dzisiejszych rozszerzeñ HTML-a. Dodatkowo jest w miarê stabilna. Jedyn±
 niedogodno¶ci± s± reklamy ukazuj±ce siê w górze okna. Wersja
 statycznie skonsolidowana z qt.
 
 %prep
 %ifarch %{ix86}
-%setup -q %{?_with_shared:-T -b 20} -n %{name}-%{ver}-%{rel}-%{type}-qt.i386-en
+%setup -q -T -b %{?with_snap:10}%{?with_shared:2}0 -n %{name}-%{sver}-%{rel}-%{type}-qt.i386-en
 %endif
 %ifarch sparc sparc64
-%setup -q -T -b %{?_with_shared:2}1 -n %{name}-%{ver}-%{rel}-%{type}-qt.sparc-en
+%setup -q -T -b %{?with_snap:10}%{?with_shared:2}1 -n %{name}-%{sver}-%{rel}-%{type}-qt.sparc-en
 %endif
 %ifarch ppc
-%setup -q -T -b %{?_with_shared:2}2 -n %{name}-%{ver}-%{rel}-%{type}-qt.ppc-en
+%setup -q -T -b %{?with_snap:10}%{?with_shared:2}2 -n %{name}-%{sver}-%{rel}-%{type}-qt.ppc-en
 %endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
-install -d $RPM_BUILD_ROOT{/etc,%{_mandir}/man1,%{_pixmapsdir},%{_desktopdir}}
+install -d $RPM_BUILD_ROOT{/etc,%{_libdir},%{_mandir}/man1,%{_pixmapsdir},%{_desktopdir}}
+ln -s $RPM_BUILD_ROOT/etc  $RPM_BUILD_ROOT%{_prefix}/etc
 
-cat install.sh | sed 's|/etc|$RPM_BUILD_ROOT%{_sysconfdir}|' > install2.sh
-mv install2.sh install.sh
+sed -i -e 's|/etc|$RPM_BUILD_ROOT%{_sysconfdir}|' install.sh
 
 echo y |\
 sh install.sh \
-  --prefix=$RPM_BUILD_ROOT%{_prefix} \
-  --wrapperdir=$RPM_BUILD_ROOT%{_bindir} \
-  --docdir=$RPM_BUILD_ROOT%{_operadocdir} \
-  --sharedir=$RPM_BUILD_ROOT%{_datadir}/opera \
-  --exec_prefix=$RPM_BUILD_ROOT%{_datadir}/opera/bin \
-  --plugindir=$RPM_BUILD_ROOT%{_plugindir}
-
-# Polish locale
-install %{SOURCE3} $RPM_BUILD_ROOT%{_datadir}/opera/locale/
+       --prefix=$RPM_BUILD_ROOT%{_prefix} \
+       --wrapperdir=$RPM_BUILD_ROOT%{_bindir} \
+       --docdir=$RPM_BUILD_ROOT%{_operadocdir} \
+       --sharedir=$RPM_BUILD_ROOT%{_datadir}/opera \
+       --exec_prefix=$RPM_BUILD_ROOT%{_libdir}/opera/bin \
+       --plugindir=$RPM_BUILD_ROOT%{_plugindir}
 
 # man install
 install man/opera.1 $RPM_BUILD_ROOT%{_mandir}/man1
 
 # wrapper correction
-sed s#$RPM_BUILD_ROOT## > $RPM_BUILD_ROOT%{_bindir}/opera2 $RPM_BUILD_ROOT%{_bindir}/opera
-mv $RPM_BUILD_ROOT%{_bindir}/opera2 $RPM_BUILD_ROOT%{_bindir}/opera
+sed -i -e "s#$RPM_BUILD_ROOT##" $RPM_BUILD_ROOT%{_bindir}/opera
 
 # install in kde etc.
 install images/opera.xpm $RPM_BUILD_ROOT%{_pixmapsdir}
 
 install %{SOURCE4} $RPM_BUILD_ROOT%{_desktopdir}
 
-# symlink który niweluje burkanie siê opery :>
-#ln -sf %{_datadir}/opera/ $RPM_BUILD_ROOT/usr/share/
-#ln -sf %{_libdir}/opera $RPM_BUILD_ROOT/usr/lib/
-
 sed -i -e "s#$RPM_BUILD_ROOT##g" $RPM_BUILD_ROOT%{_datadir}/opera/java/*.policy
 
-# always use wrapper linked with libXm.so.3
-rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/operamotifwrapper-3
-ln -sf operamotifwrapper $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/operamotifwrapper
+# always use latest possible wrapper
+rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/operamotifwrapper
+if [ -f "$RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/operamotifwrapper-3" ]; then
+       ln -sf operamotifwrapper-3 $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/operamotifwrapper-1
+       ln -sf operamotifwrapper-3 $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/operamotifwrapper-2
+elif [ -f "$RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/operamotifwrapper-2" ]; then
+       ln -sf operamotifwrapper-2 $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/operamotifwrapper-1
+       ln -sf operamotifwrapper-2 $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/operamotifwrapper-3
+elif [ -f "$RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/operamotifwrapper-1" ]; then
+       ln -sf operamotifwrapper-1 $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/operamotifwrapper-2
+       ln -sf operamotifwrapper-1 $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/operamotifwrapper-3
+fi
+
+# clean unneeded files
+rm -rf $RPM_BUILD_ROOT%{_datadir}/%{name}/config
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %files
 %defattr(644,root,root,755)
-%doc LICENSE bugreport help
+%doc LICENSE bugreport
 %attr(755,root,root) %{_bindir}/*
+%dir %{_libdir}/opera
+%dir %{_libdir}/opera/bin
+%attr(755,root,root) %{_libdir}/opera/bin/*
+%dir %{_plugindir}
+%attr(755,root,root) %{_plugindir}/*
 %dir %{_datadir}/opera
-%dir %{_datadir}/opera/bin
-%attr(755,root,root) %{_datadir}/opera/bin/*
-%{_datadir}/opera/config
-%{_datadir}/opera/help
+%{_datadir}/opera/*.*
 %{_datadir}/opera/images
+%{_datadir}/opera/ini
 %{_datadir}/opera/java
-%{_datadir}/opera/locale
 %{_datadir}/opera/skin
 %{_datadir}/opera/styles
-%{_datadir}/opera/ini
-%{_datadir}/opera/search.ini
-%{_datadir}/opera/*.html
-%{_datadir}/opera/*.ssr
-%{_datadir}/opera/*.txt
-%ifarch %{ix86}
-%attr(755,root,root) %{_datadir}/opera/chartables.bin
-%endif
-%ifarch ppc
-%attr(755,root,root) %{_datadir}/opera/chartables-be.bin
-%endif
-%attr(755,root,root) %{_datadir}/opera/opera6.adr
-%dir %{_libdir}/opera
-%dir %{_plugindir}
-%attr(755,root,root) %{_plugindir}/*
-
+%dir %{_datadir}/opera/locale
+%{_datadir}/opera/locale/en
+%{_datadir}/opera/locale/english.lng
 %{_pixmapsdir}/opera.xpm
 %{_desktopdir}/*.desktop
 
 %{_mandir}/man1/opera.1*
+
+%config(noreplace) %verify(not md5 size mtime) /etc/opera*rc*
This page took 0.053192 seconds and 4 git commands to generate.