MozillaFirefox/MozillaFirefox.spec
branchfirefox63
changeset 1081 9fec29d2ead2
parent 1079 1663e876731f
child 1082 821cfbe8efcc
equal deleted inserted replaced
1079:1663e876731f 1081:9fec29d2ead2
    17 #
    17 #
    18 
    18 
    19 
    19 
    20 # changed with every update
    20 # changed with every update
    21 %define major          63
    21 %define major          63
    22 %define mainver        %major.0.1
    22 %define mainver        %major.0.3
    23 %define orig_version   63.0.1
    23 %define orig_version   63.0.3
    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    20181030165643
    27 %define releasedate    20181114214635
    28 %define source_prefix  firefox-%{orig_version}
    28 %define source_prefix  firefox-%{orig_version}
    29 
    29 
    30 # PIE, full relro (x86_64 for now)
    30 # PIE, full relro (x86_64 for now)
    31 %define build_hardened 1
    31 %define build_hardened 1
    32 
    32 
    64 %if 0%{?suse_version} <= 1320
    64 %if 0%{?suse_version} <= 1320
    65 BuildRequires:  gcc7-c++
    65 BuildRequires:  gcc7-c++
    66 %else
    66 %else
    67 BuildRequires:  gcc-c++
    67 BuildRequires:  gcc-c++
    68 %endif
    68 %endif
       
    69 BuildRequires:  cargo >= 1.28
    69 BuildRequires:  libXcomposite-devel
    70 BuildRequires:  libXcomposite-devel
    70 BuildRequires:  libcurl-devel
    71 BuildRequires:  libcurl-devel
    71 BuildRequires:  libidl-devel
    72 BuildRequires:  libidl-devel
    72 BuildRequires:  libiw-devel
    73 BuildRequires:  libiw-devel
    73 BuildRequires:  libnotify-devel
    74 BuildRequires:  libnotify-devel
    78 BuildRequires:  nodejs8 >= 8.11
    79 BuildRequires:  nodejs8 >= 8.11
    79 BuildRequires:  python-devel
    80 BuildRequires:  python-devel
    80 BuildRequires:  python2-xml
    81 BuildRequires:  python2-xml
    81 BuildRequires:  python3 >= 3.5
    82 BuildRequires:  python3 >= 3.5
    82 BuildRequires:  rust >= 1.28
    83 BuildRequires:  rust >= 1.28
    83 BuildRequires:  cargo >= 1.28
       
    84 BuildRequires:  rust-cbindgen >= 0.6.2
    84 BuildRequires:  rust-cbindgen >= 0.6.2
    85 BuildRequires:  startup-notification-devel
    85 BuildRequires:  startup-notification-devel
    86 BuildRequires:  unzip
    86 BuildRequires:  unzip
    87 BuildRequires:  update-desktop-files
    87 BuildRequires:  update-desktop-files
    88 BuildRequires:  xorg-x11-libXt-devel
    88 BuildRequires:  xorg-x11-libXt-devel
   160 Patch7:         mozilla-aarch64-startup-crash.patch
   160 Patch7:         mozilla-aarch64-startup-crash.patch
   161 Patch8:         mozilla-bmo256180.patch
   161 Patch8:         mozilla-bmo256180.patch
   162 Patch9:         mozilla-bmo1463035.patch
   162 Patch9:         mozilla-bmo1463035.patch
   163 Patch10:        mozilla-bmo1491289.patch
   163 Patch10:        mozilla-bmo1491289.patch
   164 Patch11:        mozilla-cubeb-noreturn.patch
   164 Patch11:        mozilla-cubeb-noreturn.patch
   165 Patch12:        mozilla-newer-cbindgen.patch
       
   166 # Firefox/browser
   165 # Firefox/browser
   167 Patch101:       firefox-kde.patch
   166 Patch101:       firefox-kde.patch
   168 Patch102:       firefox-branded-icons.patch
   167 Patch102:       firefox-branded-icons.patch
   169 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
   168 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
   170 Requires(post):   coreutils shared-mime-info desktop-file-utils
   169 Requires(post):   coreutils shared-mime-info desktop-file-utils
   272 %patch7 -p1
   271 %patch7 -p1
   273 %patch8 -p1
   272 %patch8 -p1
   274 %patch9 -p1
   273 %patch9 -p1
   275 %patch10 -p1
   274 %patch10 -p1
   276 %patch11 -p1
   275 %patch11 -p1
   277 %patch12 -p1
       
   278 # Firefox
   276 # Firefox
   279 %patch101 -p1
   277 %patch101 -p1
   280 %patch102 -p1
   278 %patch102 -p1
   281 
   279 
   282 %build
   280 %build
   306 export CFLAGS="%{optflags} -fno-strict-aliasing"
   304 export CFLAGS="%{optflags} -fno-strict-aliasing"
   307 # boo#986541: add -fno-delete-null-pointer-checks for gcc6
   305 # boo#986541: add -fno-delete-null-pointer-checks for gcc6
   308 %if 0%{?suse_version} > 1320
   306 %if 0%{?suse_version} > 1320
   309 export CFLAGS="$CFLAGS -fno-delete-null-pointer-checks"
   307 export CFLAGS="$CFLAGS -fno-delete-null-pointer-checks"
   310 %endif
   308 %endif
   311 %ifarch %arm
       
   312 export CFLAGS="${CFLAGS/-g / }"
       
   313 %endif
       
   314 %ifarch %arm %ix86
   309 %ifarch %arm %ix86
   315 # Limit RAM usage during link
   310 # Limit RAM usage during link
   316 export LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
   311 export LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
   317 %endif
   312 %endif
   318 %if 0%{?build_hardened}
   313 %if 0%{?build_hardened}
   322 %endif
   317 %endif
   323 %ifarch ppc64 ppc64le
   318 %ifarch ppc64 ppc64le
   324 export CFLAGS="$CFLAGS -mminimal-toc"
   319 export CFLAGS="$CFLAGS -mminimal-toc"
   325 %endif
   320 %endif
   326 export CXXFLAGS="$CFLAGS"
   321 export CXXFLAGS="$CFLAGS"
   327 %ifarch %{arm}
       
   328 export RUSTFLAGS="-Cdebuginfo=0"
       
   329 %endif
       
   330 export MOZCONFIG=$RPM_BUILD_DIR/mozconfig
   322 export MOZCONFIG=$RPM_BUILD_DIR/mozconfig
   331 %limit_build -m 1500
   323 %limit_build -m 1500
   332 cat << EOF > $MOZCONFIG
   324 cat << EOF > $MOZCONFIG
   333 mk_add_options MOZILLA_OFFICIAL=1
   325 mk_add_options MOZILLA_OFFICIAL=1
   334 mk_add_options BUILD_OFFICIAL=1
   326 mk_add_options BUILD_OFFICIAL=1
   348 %endif
   340 %endif
   349 # gcc7 (boo#104105)
   341 # gcc7 (boo#104105)
   350 %if 0%{?suse_version} > 1320
   342 %if 0%{?suse_version} > 1320
   351 ac_add_options --enable-optimize="-g -O2"
   343 ac_add_options --enable-optimize="-g -O2"
   352 %endif
   344 %endif
   353 %ifarch %arm
       
   354 %if 0%{?suse_version} > 1230
       
   355 ac_add_options --disable-optimize
       
   356 %endif
       
   357 %endif
       
   358 # bmo#1441155 - Disable the generation of Rust debug symbols on Linux32
   345 # bmo#1441155 - Disable the generation of Rust debug symbols on Linux32
   359 %ifarch %ix86
   346 %ifarch %ix86 %arm
   360 ac_add_options --disable-debug-symbols
   347 ac_add_options --disable-debug-symbols
   361 %endif
   348 %endif
   362 %ifarch %arm
   349 %if 0%{?suse_version} > 1549
       
   350 %ifnarch aarch64 ppc64 ppc64le
   363 ac_add_options --disable-elf-hack
   351 ac_add_options --disable-elf-hack
   364 %endif
   352 %endif
   365 %if 0%{?suse_version} > 1549
       
   366 ac_add_options --disable-elf-hack
       
   367 %endif
   353 %endif
   368 ac_add_options --with-system-nspr
   354 ac_add_options --with-system-nspr
   369 ac_add_options --with-system-nss
   355 ac_add_options --with-system-nss
   370 %if %{localize}
   356 %if %{localize}
   371 ac_add_options --with-l10n-base=$RPM_BUILD_DIR/l10n
   357 ac_add_options --with-l10n-base=$RPM_BUILD_DIR/l10n