MozillaFirefox/MozillaFirefox.spec
branchfirefox64
changeset 1082 821cfbe8efcc
parent 1081 9fec29d2ead2
child 1083 2f7023025374
equal deleted inserted replaced
1081:9fec29d2ead2 1082:821cfbe8efcc
    16 # Please submit bugfixes or comments via https://bugs.opensuse.org/
    16 # Please submit bugfixes or comments via https://bugs.opensuse.org/
    17 #
    17 #
    18 
    18 
    19 
    19 
    20 # changed with every update
    20 # changed with every update
    21 %define major          63
    21 %define major          64
    22 %define mainver        %major.0.3
    22 %define mainver        %major.0
    23 %define orig_version   63.0.3
    23 %define orig_version   64.0
    24 %define orig_suffix    %{nil}
    24 %define orig_suffix    %{nil}
    25 %define update_channel release
    25 %define update_channel release
    26 %define branding       1
    26 %define branding       1
    27 %define releasedate    20181114214635
    27 %define releasedate    20181206201918
    28 %define source_prefix  firefox-%{orig_version}
    28 %define source_prefix  firefox-%{orig_version}
       
    29 
       
    30 # use clang (upstream default since 64.0)
       
    31 %if 0%{?suse_version} > 1320
       
    32 %define clang_build 1
       
    33 %endif
    29 
    34 
    30 # PIE, full relro (x86_64 for now)
    35 # PIE, full relro (x86_64 for now)
    31 %define build_hardened 1
    36 %define build_hardened 1
    32 
    37 
    33 # Firefox only supports i686
    38 # Firefox only supports i686
    64 %if 0%{?suse_version} <= 1320
    69 %if 0%{?suse_version} <= 1320
    65 BuildRequires:  gcc7-c++
    70 BuildRequires:  gcc7-c++
    66 %else
    71 %else
    67 BuildRequires:  gcc-c++
    72 BuildRequires:  gcc-c++
    68 %endif
    73 %endif
    69 BuildRequires:  cargo >= 1.28
       
    70 BuildRequires:  libXcomposite-devel
    74 BuildRequires:  libXcomposite-devel
    71 BuildRequires:  libcurl-devel
    75 BuildRequires:  libcurl-devel
    72 BuildRequires:  libidl-devel
    76 BuildRequires:  libidl-devel
    73 BuildRequires:  libiw-devel
    77 BuildRequires:  libiw-devel
    74 BuildRequires:  libnotify-devel
    78 BuildRequires:  libnotify-devel
    75 BuildRequires:  libproxy-devel
    79 BuildRequires:  libproxy-devel
    76 BuildRequires:  makeinfo
    80 BuildRequires:  makeinfo
    77 BuildRequires:  mozilla-nspr-devel >= 4.20
    81 BuildRequires:  mozilla-nspr-devel >= 4.20
    78 BuildRequires:  mozilla-nss-devel >= 3.39
    82 BuildRequires:  mozilla-nss-devel >= 3.40.1
    79 BuildRequires:  nodejs8 >= 8.11
    83 BuildRequires:  nodejs8 >= 8.11
    80 BuildRequires:  python-devel
    84 BuildRequires:  python-devel
    81 BuildRequires:  python2-xml
    85 BuildRequires:  python2-xml
    82 BuildRequires:  python3 >= 3.5
    86 BuildRequires:  python3 >= 3.5
    83 BuildRequires:  rust >= 1.28
    87 BuildRequires:  rust >= 1.29
    84 BuildRequires:  rust-cbindgen >= 0.6.2
    88 BuildRequires:  cargo >= 1.29
       
    89 BuildRequires:  rust-cbindgen >= 0.6.4
    85 BuildRequires:  startup-notification-devel
    90 BuildRequires:  startup-notification-devel
    86 BuildRequires:  unzip
    91 BuildRequires:  unzip
    87 BuildRequires:  update-desktop-files
    92 BuildRequires:  update-desktop-files
    88 BuildRequires:  xorg-x11-libXt-devel
    93 BuildRequires:  xorg-x11-libXt-devel
    89 BuildRequires:  yasm
    94 BuildRequires:  yasm
   158 Patch4:         mozilla-openaes-decl.patch
   163 Patch4:         mozilla-openaes-decl.patch
   159 Patch6:         mozilla-reduce-files-per-UnifiedBindings.patch
   164 Patch6:         mozilla-reduce-files-per-UnifiedBindings.patch
   160 Patch7:         mozilla-aarch64-startup-crash.patch
   165 Patch7:         mozilla-aarch64-startup-crash.patch
   161 Patch8:         mozilla-bmo256180.patch
   166 Patch8:         mozilla-bmo256180.patch
   162 Patch9:         mozilla-bmo1463035.patch
   167 Patch9:         mozilla-bmo1463035.patch
   163 Patch10:        mozilla-bmo1491289.patch
   168 Patch10:        mozilla-cubeb-noreturn.patch
   164 Patch11:        mozilla-cubeb-noreturn.patch
       
   165 # Firefox/browser
   169 # Firefox/browser
   166 Patch101:       firefox-kde.patch
   170 Patch101:       firefox-kde.patch
   167 Patch102:       firefox-branded-icons.patch
   171 Patch102:       firefox-branded-icons.patch
   168 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
   172 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
   169 Requires(post):   coreutils shared-mime-info desktop-file-utils
   173 Requires(post):   coreutils shared-mime-info desktop-file-utils
   270 %endif
   274 %endif
   271 %patch7 -p1
   275 %patch7 -p1
   272 %patch8 -p1
   276 %patch8 -p1
   273 %patch9 -p1
   277 %patch9 -p1
   274 %patch10 -p1
   278 %patch10 -p1
   275 %patch11 -p1
       
   276 # Firefox
   279 # Firefox
   277 %patch101 -p1
   280 %patch101 -p1
   278 %patch102 -p1
   281 %patch102 -p1
   279 
   282 
   280 %build
   283 %build
   301 %if 0%{?suse_version} <= 1320
   304 %if 0%{?suse_version} <= 1320
   302 export CC=gcc-7
   305 export CC=gcc-7
   303 %endif
   306 %endif
   304 export CFLAGS="%{optflags} -fno-strict-aliasing"
   307 export CFLAGS="%{optflags} -fno-strict-aliasing"
   305 # boo#986541: add -fno-delete-null-pointer-checks for gcc6
   308 # boo#986541: add -fno-delete-null-pointer-checks for gcc6
       
   309 %if 0%{?clang_build} == 0
   306 %if 0%{?suse_version} > 1320
   310 %if 0%{?suse_version} > 1320
   307 export CFLAGS="$CFLAGS -fno-delete-null-pointer-checks"
   311 export CFLAGS="$CFLAGS -fno-delete-null-pointer-checks"
       
   312 %endif
   308 %endif
   313 %endif
   309 %ifarch %arm %ix86
   314 %ifarch %arm %ix86
   310 # Limit RAM usage during link
   315 # Limit RAM usage during link
   311 export LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
   316 export LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
   312 %endif
   317 %endif
   334 ac_add_options --enable-default-toolkit=cairo-gtk3
   339 ac_add_options --enable-default-toolkit=cairo-gtk3
   335 %if 0%{?suse_version} >= 1550
   340 %if 0%{?suse_version} >= 1550
   336 ac_add_options --disable-gconf
   341 ac_add_options --disable-gconf
   337 %endif
   342 %endif
   338 %if 0%{?build_hardened}
   343 %if 0%{?build_hardened}
       
   344 %if 0%{?clang_build} == 0
   339 ac_add_options --enable-pie
   345 ac_add_options --enable-pie
       
   346 %endif
   340 %endif
   347 %endif
   341 # gcc7 (boo#104105)
   348 # gcc7 (boo#104105)
   342 %if 0%{?suse_version} > 1320
   349 %if 0%{?suse_version} > 1320
   343 ac_add_options --enable-optimize="-g -O2"
   350 ac_add_options --enable-optimize="-g -O2"
   344 %endif
   351 %endif