From 1c35025416b4295915f499a01d0cee8899971321 Mon Sep 17 00:00:00 2001 From: Patrick J Volkerding Date: Thu, 12 Sep 2019 03:58:53 +0000 Subject: Thu Sep 12 03:58:53 UTC 2019 a/glibc-zoneinfo-2019c-noarch-1.txz: Upgraded. This package provides the latest timezone updates. a/openssl-solibs-1.1.1d-x86_64-1.txz: Upgraded. a/openssl10-solibs-1.0.2t-x86_64-1.txz: Upgraded. ap/mariadb-10.4.8-x86_64-1.txz: Upgraded. l/netpbm-10.87.02-x86_64-1.txz: Upgraded. n/curl-7.66.0-x86_64-1.txz: Upgraded. This update fixes security issues: FTP-KRB double-free TFTP small blocksize heap buffer overflow For more information, see: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5481 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5482 (* Security fix *) n/openssl-1.1.1d-x86_64-1.txz: Upgraded. This update fixes low severity security issues: Fixed a fork protection issue Fixed a padding oracle in PKCS7_dataDecode and CMS_decrypt_set1_pkey Compute ECC cofactors if not provided during EC_GROUP construction For more information, see: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1547 (* Security fix *) n/openssl10-1.0.2t-x86_64-1.txz: Upgraded. This update fixes low severity security issues: Fixed a padding oracle in PKCS7_dataDecode and CMS_decrypt_set1_pkey Compute ECC cofactors if not provided during EC_GROUP construction For more information, see: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1547 (* Security fix *) n/p11-kit-0.23.17-x86_64-1.txz: Upgraded. xap/mozilla-thunderbird-68.1.0-x86_64-1.txz: Upgraded. This release contains security fixes and improvements. For more information, see: https://www.mozilla.org/en-US/thunderbird/68.1.0/releasenotes/ https://www.mozilla.org/security/known-vulnerabilities/thunderbird.html (* Security fix *) extra/google-chrome/google-chrome.SlackBuild: Upgraded. Patched the packaging script to account for the internal change of control.tar.gz to control.tar.xz. Thanks to _RDS_ and Tim Thomas who both provided the same patch. --- source/xap/mozilla-thunderbird/build-deps.sh | 41 ++ .../autoconf-2.13-consolidated_fixes-1.patch | 504 +++++++++++++++++++++ .../build-deps/autoconf/autoconf.build | 75 +++ .../build-deps/cbindgen/cbindgen.build | 54 +++ .../build-deps/nodejs/nodejs.build | 91 ++++ .../build-deps/nodejs/nodejs.url | 2 + .../gkrust.a.no.networking.check.diff | 23 + source/xap/mozilla-thunderbird/gold/gold | 3 +- source/xap/mozilla-thunderbird/gold/ld | 2 +- source/xap/mozilla-thunderbird/gold/ld.gold | 6 + .../mozilla-thunderbird.SlackBuild | 70 +-- .../mozilla-thunderbird.gettid.diff | 10 - .../mozilla-thunderbird/tb.ui.scrollToClick.diff | 12 +- source/xap/mozilla-thunderbird/unbreakdocs.diff | 23 +- 14 files changed, 851 insertions(+), 65 deletions(-) create mode 100755 source/xap/mozilla-thunderbird/build-deps.sh create mode 100644 source/xap/mozilla-thunderbird/build-deps/autoconf/autoconf-2.13-consolidated_fixes-1.patch create mode 100755 source/xap/mozilla-thunderbird/build-deps/autoconf/autoconf.build create mode 100755 source/xap/mozilla-thunderbird/build-deps/cbindgen/cbindgen.build create mode 100755 source/xap/mozilla-thunderbird/build-deps/nodejs/nodejs.build create mode 100644 source/xap/mozilla-thunderbird/build-deps/nodejs/nodejs.url create mode 100644 source/xap/mozilla-thunderbird/gkrust.a.no.networking.check.diff mode change 100755 => 120000 source/xap/mozilla-thunderbird/gold/gold create mode 100755 source/xap/mozilla-thunderbird/gold/ld.gold delete mode 100644 source/xap/mozilla-thunderbird/mozilla-thunderbird.gettid.diff (limited to 'source/xap/mozilla-thunderbird') diff --git a/source/xap/mozilla-thunderbird/build-deps.sh b/source/xap/mozilla-thunderbird/build-deps.sh new file mode 100755 index 000000000..69d1a8b29 --- /dev/null +++ b/source/xap/mozilla-thunderbird/build-deps.sh @@ -0,0 +1,41 @@ +#!/bin/bash + +# Copyright 2019 Patrick J. Volkerding, Sebeka, Minnesota, USA +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# Clear out any existing build deps: +rm -rf $TMP/mozilla-thunderbird-build-deps +mkdir -p $TMP/mozilla-thunderbird-build-deps +# This will be at the beginning of the $PATH, so protect against nonsense +# happening in /tmp: +chmod 700 $TMP/mozilla-thunderbird-build-deps +PATH=$TMP/mozilla-thunderbird-build-deps/usr/bin:$HOME/.cargo/bin:$PATH + +# cbindgen is a build-time dependency: +( cd $CWD/build-deps/cbindgen ; ./cbindgen.build ) || exit 1 + +if /bin/ls build-deps*.txz 1> /dev/null 2> /dev/null ; then # use prebuilt autoconf/nodejs + ( cd $TMP/mozilla-thunderbird-build-deps ; tar xf $CWD/build-deps*.txz ) +else + # We need to use the incredibly ancient autoconf-2.13 for this :/ + ( cd $CWD/build-deps/autoconf ; ./autoconf.build ) || exit 1 + # And node.js... WHY + ( cd $CWD/build-deps/nodejs ; ./nodejs.build ) || exit 1 +fi diff --git a/source/xap/mozilla-thunderbird/build-deps/autoconf/autoconf-2.13-consolidated_fixes-1.patch b/source/xap/mozilla-thunderbird/build-deps/autoconf/autoconf-2.13-consolidated_fixes-1.patch new file mode 100644 index 000000000..5e7b23113 --- /dev/null +++ b/source/xap/mozilla-thunderbird/build-deps/autoconf/autoconf-2.13-consolidated_fixes-1.patch @@ -0,0 +1,504 @@ +Submitted By: Ken Moffat +Date: 2016-06-11 +Initial Package Version: 2.13 +Upstream Status: Version is historic and unmaintained. +Origin: Found at fedora, plus fixes for LFS. +Description: All of the patches currently used by fedora, except for +the patch which ensures gawk is used in preference to mawk (we do not +install mawk). For LFS: we put mktemp in /usr/bin not /bin, remove +the install-info target because that will overwrite standards.info +with an old version (fedora always use a DESTDIR), and change the +man and info dirs to ${datadir}/ i.e. /usr/share (an empty /usr/info +will otherwise be created). + +diff -Naur a/acgeneral.m4 b/acgeneral.m4 +--- a/acgeneral.m4 1999-01-05 13:27:37.000000000 +0000 ++++ b/acgeneral.m4 2016-06-11 00:18:24.429043947 +0100 +@@ -1817,10 +1817,6 @@ + [cat > conftest.$ac_ext </dev/null +@@ -1988,12 +1984,12 @@ + AC_MSG_CHECKING(size of $1) + AC_CACHE_VAL(AC_CV_NAME, + [AC_TRY_RUN([#include +-main() ++int main() + { + FILE *f=fopen("conftestval", "w"); +- if (!f) exit(1); ++ if (!f) return(1); + fprintf(f, "%d\n", sizeof($1)); +- exit(0); ++ return(0); + }], AC_CV_NAME=`cat conftestval`, AC_CV_NAME=0, ifelse([$2], , , AC_CV_NAME=$2))])dnl + AC_MSG_RESULT($AC_CV_NAME) + AC_DEFINE_UNQUOTED(AC_TYPE_NAME, $AC_CV_NAME) +@@ -2160,20 +2156,38 @@ + dnl AC_OUTPUT_MAKE_DEFS() + define(AC_OUTPUT_MAKE_DEFS, + [# Transform confdefs.h into DEFS. +-dnl Using a here document instead of a string reduces the quoting nightmare. + # Protect against shell expansion while executing Makefile rules. + # Protect against Makefile macro expansion. +-cat > conftest.defs <<\EOF ++# ++# If the first sed substitution is executed (which looks for macros that ++# take arguments), then we branch to the quote section. Otherwise, ++# look for a macro that doesn't take arguments. ++cat >confdef2opt.sed <<\_ACEOF + changequote(<<, >>)dnl +-s%<<#define>> \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g +-s%[ `~<<#>>$^&*(){}\\|;'"<>?]%\\&%g +-s%\[%\\&%g +-s%\]%\\&%g +-s%\$%$$%g ++t clear ++: clear ++s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g ++t quote ++s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g ++t quote ++d ++: quote ++s,[ `~#$^&*(){}\\|;'"<>?],\\&,g ++s,\[,\\&,g ++s,\],\\&,g ++s,\$,$$,g ++p + changequote([, ])dnl +-EOF +-DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '` +-rm -f conftest.defs ++_ACEOF ++# We use echo to avoid assuming a particular line-breaking character. ++# The extra dot is to prevent the shell from consuming trailing ++# line-breaks from the sub-command output. A line-break within ++# single-quotes doesn't work because, if this script is created in a ++# platform that uses two characters for line-breaks (e.g., DOS), tr ++# would break. ++ac_LF_and_DOT=`echo; echo .` ++DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'` ++rm -f confdef2opt.sed + ]) + + dnl Do the variable substitutions to create the Makefiles or whatever. +diff -Naur a/acspecific.m4 b/acspecific.m4 +--- a/acspecific.m4 1999-01-05 13:27:52.000000000 +0000 ++++ b/acspecific.m4 2016-06-11 00:18:17.533078644 +0100 +@@ -152,8 +152,41 @@ + CXXFLAGS= + fi + fi ++ ++AC_PROG_CXX_EXIT_DECLARATION + ]) + ++ ++# AC_PROG_CXX_EXIT_DECLARATION ++# ----------------------------- ++# Find a valid prototype for exit and declare it in confdefs.h. ++AC_DEFUN(AC_PROG_CXX_EXIT_DECLARATION, ++[for ac_declaration in \ ++ ''\ ++ '#include ' \ ++ 'extern "C" void std::exit (int) throw (); using std::exit;' \ ++ 'extern "C" void std::exit (int); using std::exit;' \ ++ 'extern "C" void exit (int) throw ();' \ ++ 'extern "C" void exit (int);' \ ++ 'void exit (int);' ++do ++ AC_TRY_COMPILE([#include ++$ac_declaration], ++ [exit (42);], ++ [], ++ [continue]) ++ AC_TRY_COMPILE([$ac_declaration], ++ [exit (42);], ++ [break]) ++done ++if test -n "$ac_declaration"; then ++ echo '#ifdef __cplusplus' >>confdefs.h ++ echo $ac_declaration >>confdefs.h ++ echo '#endif' >>confdefs.h ++fi ++])# AC_PROG_CXX_EXIT_DECLARATION ++ ++ + dnl Determine a Fortran 77 compiler to use. If `F77' is not already set + dnl in the environment, check for `g77', `f77' and `f2c', in that order. + dnl Set the output variable `F77' to the name of the compiler found. +@@ -1010,7 +1043,7 @@ + ]) + + AC_DEFUN(AC_FUNC_MMAP, +-[AC_CHECK_HEADERS(unistd.h) ++[AC_CHECK_HEADERS(stdlib.h unistd.h sys/stat.h sys/types.h) + AC_CHECK_FUNCS(getpagesize) + AC_CACHE_CHECK(for working mmap, ac_cv_func_mmap_fixed_mapped, + [AC_TRY_RUN([ +@@ -1039,11 +1072,24 @@ + #include + #include + ++#if HAVE_SYS_TYPES_H ++# include ++#endif ++ ++#if HAVE_STDLIB_H ++# include ++#endif ++ ++#if HAVE_SYS_STAT_H ++# include ++#endif ++ ++#if HAVE_UNISTD_H ++# include ++#endif ++ + /* This mess was copied from the GNU getpagesize.h. */ + #ifndef HAVE_GETPAGESIZE +-# ifdef HAVE_UNISTD_H +-# include +-# endif + + /* Assume that all systems that can run configure have sys/param.h. */ + # ifndef HAVE_SYS_PARAM_H +@@ -1373,6 +1419,8 @@ + r.ru_majflt = r.ru_minflt = 0; + switch (fork()) { + case 0: /* Child. */ ++ /* Unless we actually _do_ something, the kernel sometimes doesn't chalk up any system time to this process. */ ++ if(fork()) { i = 123; wait(NULL); } else { i = 234; exit(0); } + sleep(1); /* Give up the CPU. */ + _exit(0); + case -1: _exit(0); /* What can we do? */ +diff -Naur a/autoconf.sh b/autoconf.sh +--- a/autoconf.sh 1999-01-05 13:27:53.000000000 +0000 ++++ b/autoconf.sh 2016-06-11 00:22:17.351872133 +0100 +@@ -45,20 +45,20 @@ + esac + + : ${TMPDIR=/tmp} +-tmpout=${TMPDIR}/acout.$$ ++tmpout=`/usr/bin/mktemp ${TMPDIR}/acout.XXXXXX` + localdir= + show_version=no + + while test $# -gt 0 ; do + case "${1}" in + -h | --help | --h* ) +- echo "${usage}" 1>&2; exit 0 ;; ++ echo "${usage}" 1>&2; rm -f $tmpout ; exit 0 ;; + --localdir=* | --l*=* ) + localdir="`echo \"${1}\" | sed -e 's/^[^=]*=//'`" + shift ;; + -l | --localdir | --l*) + shift +- test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; } ++ test $# -eq 0 && { echo "${usage}" 1>&2; rm -f $tmpout; exit 1; } + localdir="${1}" + shift ;; + --macrodir=* | --m*=* ) +@@ -66,7 +66,7 @@ + shift ;; + -m | --macrodir | --m* ) + shift +- test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; } ++ test $# -eq 0 && { echo "${usage}" 1>&2; rm -f $tmpout; exit 1; } + AC_MACRODIR="${1}" + shift ;; + --version | --v* ) +@@ -76,7 +76,7 @@ + - ) # Use stdin as input. + break ;; + -* ) +- echo "${usage}" 1>&2; exit 1 ;; ++ echo "${usage}" 1>&2; rm -f $tmpout; exit 1 ;; + * ) + break ;; + esac +@@ -86,23 +86,25 @@ + version=`sed -n 's/define.AC_ACVERSION.[ ]*\([0-9.]*\).*/\1/p' \ + $AC_MACRODIR/acgeneral.m4` + echo "Autoconf version $version" ++ rm -f $tmpout + exit 0 + fi + + case $# in + 0) infile=configure.in ;; + 1) infile="$1" ;; +- *) echo "$usage" >&2; exit 1 ;; ++ *) echo "$usage" >&2; rm -f $tmpout; exit 1 ;; + esac + + trap 'rm -f $tmpin $tmpout; exit 1' 1 2 15 + +-tmpin=${TMPDIR}/acin.$$ # Always set this, to avoid bogus errors from some rm's. ++tmpin=`/usr/bin/mktemp ${TMPDIR}/acin.XXXXXX` ++# Always set this, to avoid bogus errors from some rm's. + if test z$infile = z-; then + infile=$tmpin +- cat > $infile + elif test ! -r "$infile"; then + echo "autoconf: ${infile}: No such file or directory" >&2 ++ rm -f $tmpin $tmpout + exit 1 + fi + +@@ -111,6 +113,8 @@ + else + use_localdir= + fi ++# Make sure we don't leave those around - they are annoying ++trap 'rm -f $tmpin $tmpout' 0 + + # Use the frozen version of Autoconf if available. + r= f= +@@ -118,7 +122,7 @@ + case `$M4 --help < /dev/null 2>&1` in + *reload-state*) test -r $AC_MACRODIR/autoconf.m4f && { r=--reload f=f; } ;; + *traditional*) ;; +-*) echo Autoconf requires GNU m4 1.1 or later >&2; rm -f $tmpin; exit 1 ;; ++*) echo Autoconf requires GNU m4 1.1 or later >&2; rm -f $tmpin $tmpout; exit 1 ;; + esac + + $M4 -I$AC_MACRODIR $use_localdir $r autoconf.m4$f $infile > $tmpout || +@@ -154,6 +158,6 @@ + /__oline__/s/^\([0-9][0-9]*\):\(.*\)__oline__/\2\1/ + ' >&4 + +-rm -f $tmpout ++rm -f $tmpout $tmpin + + exit $status +diff -Naur a/autoconf.texi b/autoconf.texi +--- a/autoconf.texi 1999-01-05 13:28:37.000000000 +0000 ++++ b/autoconf.texi 2016-06-11 00:18:46.360933604 +0100 +@@ -1,7 +1,7 @@ + \input texinfo @c -*-texinfo-*- + @c %**start of header +-@setfilename autoconf.info +-@settitle Autoconf ++@setfilename autoconf.info ++@settitle Autoconf + @c For double-sided printing, uncomment: + @c @setchapternewpage odd + @c %**end of header +@@ -17,7 +17,8 @@ + @ifinfo + @format + START-INFO-DIR-ENTRY +-* Autoconf: (autoconf). Create source code configuration scripts. ++* Autoconf: (autoconf). Create source code configuration scripts. ++ This is a legacy version of autoconf. + END-INFO-DIR-ENTRY + @end format + +diff -Naur a/autoheader.sh b/autoheader.sh +--- a/autoheader.sh 1999-01-05 13:28:39.000000000 +0000 ++++ b/autoheader.sh 2016-06-11 00:22:17.351872133 +0100 +@@ -194,9 +194,9 @@ + # Some fgrep's have limits on the number of lines that can be in the + # pattern on the command line, so use a temporary file containing the + # pattern. +- (fgrep_tmp=${TMPDIR-/tmp}/autoh$$ ++ (fgrep_tmp=`/usr/bin/mktemp ${TMPDIR-/tmp}/autoh$$.XXXXXX` + trap "rm -f $fgrep_tmp; exit 1" 1 2 15 +- cat > $fgrep_tmp <> $fgrep_tmp <&2; exit 0 ;; ++ echo "${usage}" 1>&2; rm -f $sedtmp; exit 0 ;; + --macrodir=* | --m*=* ) + AC_MACRODIR="`echo \"${1}\" | sed -e 's/^[^=]*=//'`" + shift ;; + -m | --macrodir | --m* ) + shift +- test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; } ++ test $# -eq 0 && { echo "${usage}" 1>&2; rm -f $sedtmp; exit 1; } + AC_MACRODIR="${1}" + shift ;; + --version | --versio | --versi | --vers) +@@ -51,7 +51,7 @@ + - ) # Use stdin as input. + break ;; + -* ) +- echo "${usage}" 1>&2; exit 1 ;; ++ echo "${usage}" 1>&2; rm -f $sedtmp; exit 1 ;; + * ) + break ;; + esac +@@ -61,6 +61,7 @@ + version=`sed -n 's/define.AC_ACVERSION.[ ]*\([0-9.]*\).*/\1/p' \ + $AC_MACRODIR/acgeneral.m4` + echo "Autoconf version $version" ++ rm -f $sedtmp + exit 0 + fi + +@@ -68,6 +69,7 @@ + + tmpout=acupo.$$ + trap 'rm -f $sedtmp $tmpout; exit 1' 1 2 15 ++trap 'rm -f $sedtmp' 0 + case $# in + 0) infile=configure.in; out="> $tmpout" + # Make sure $infile can be read, and $tmpout has the same permissions. +diff -Naur a/configure b/configure +--- a/configure 1999-01-05 13:28:57.000000000 +0000 ++++ b/configure 2016-06-11 00:50:57.771231914 +0100 +@@ -43,8 +43,8 @@ + libdir='${exec_prefix}/lib' + includedir='${prefix}/include' + oldincludedir='/usr/include' +-infodir='${prefix}/info' +-mandir='${prefix}/man' ++infodir='${datadir}/info' ++mandir='${datadir}/man' + + # Initialize some other variables. + subdirs= +diff -Naur a/Makefile.in b/Makefile.in +--- a/Makefile.in 1999-01-05 13:27:16.000000000 +0000 ++++ b/Makefile.in 2016-06-11 00:29:34.005678107 +0100 +@@ -49,7 +49,7 @@ + + # Directory in which to install library files. + datadir = @datadir@ +-acdatadir = $(datadir)/autoconf ++acdatadir = $(datadir)/autoconf-2.13 + + # Directory in which to install documentation info files. + infodir = @infodir@ +@@ -68,8 +68,8 @@ + DISTFILES = AUTHORS COPYING ChangeLog ChangeLog.1 INSTALL \ + Makefile.in NEWS README TODO $(M4FILES) \ + acconfig.h acfunctions acheaders acidentifiers \ +- acmakevars acprograms autoconf.info* \ +- autoconf.sh autoconf.texi install.texi \ ++ acmakevars acprograms autoconf.info* \ ++ autoconf.sh autoconf.texi install.texi \ + autoheader.sh autoscan.pl autoreconf.sh autoupdate.sh ifnames.sh \ + config.guess config.sub configure configure.in \ + install-sh mkinstalldirs texinfo.tex \ +@@ -106,11 +106,11 @@ + autoconf.m4f: autoconf.m4 acgeneral.m4 acspecific.m4 acoldnames.m4 + autoheader.m4f: autoheader.m4 acgeneral.m4 acspecific.m4 acoldnames.m4 + +-info: autoconf.info @standards_info@ INSTALL ++info: autoconf.info @standards_info@ INSTALL + + # Use --no-split to avoid creating filenames > 14 chars. +-autoconf.info: autoconf.texi install.texi +- $(MAKEINFO) -I$(srcdir) $(srcdir)/autoconf.texi --no-split --output=$@ ++autoconf.info: autoconf.texi install.texi ++ $(MAKEINFO) -I$(srcdir) $(srcdir)/autoconf.texi --no-split --output=$@ + + INSTALL: install.texi + $(MAKEINFO) -I$(srcdir) $(srcdir)/install.texi --output=$@ \ +@@ -121,8 +121,8 @@ + + dvi: autoconf.dvi @standards_dvi@ + +-autoconf.dvi: autoconf.texi +- $(TEXI2DVI) $(srcdir)/autoconf.texi ++autoconf.dvi: autoconf.texi ++ $(TEXI2DVI) $(srcdir)/autoconf.texi + + standards.dvi: standards.texi make-stds.texi + $(TEXI2DVI) $(srcdir)/standards.texi +@@ -137,35 +137,35 @@ + cd testsuite && ${MAKE} AUTOCONF=${bindir}/autoconf $@ + + installdirs: +- $(SHELL) ${srcdir}/mkinstalldirs $(bindir) $(infodir) $(acdatadir) ++ $(SHELL) ${srcdir}/mkinstalldirs $(DESTDIR)/$(bindir) $(DESTDIR)/$(infodir) $(DESTDIR)/$(acdatadir) + +-install: all $(M4FILES) acconfig.h installdirs install-info ++install: all $(M4FILES) acconfig.h installdirs + for p in $(ASCRIPTS); do \ +- $(INSTALL_PROGRAM) $$p $(bindir)/`echo $$p|sed '$(transform)'`; \ ++ $(INSTALL_PROGRAM) $$p $(DESTDIR)/$(bindir)/`echo $$p|sed '$(transform)'`; \ + done + for i in $(M4FROZEN); do \ +- $(INSTALL_DATA) $$i $(acdatadir)/$$i; \ ++ $(INSTALL_DATA) $$i $(DESTDIR)/$(acdatadir)/$$i; \ + done + for i in $(M4FILES) acconfig.h; do \ +- $(INSTALL_DATA) $(srcdir)/$$i $(acdatadir)/$$i; \ ++ $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)/$(acdatadir)/$$i; \ + done + -if test -f autoscan; then \ +- $(INSTALL_PROGRAM) autoscan $(bindir)/`echo autoscan|sed '$(transform)'`; \ ++ $(INSTALL_PROGRAM) autoscan $(DESTDIR)/$(bindir)/`echo autoscan|sed '$(transform)'`; \ + for i in acfunctions acheaders acidentifiers acprograms \ + acmakevars; do \ +- $(INSTALL_DATA) $(srcdir)/$$i $(acdatadir)/$$i; \ ++ $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)/$(acdatadir)/$$i; \ + done; \ + else :; fi + + # Don't cd, to avoid breaking install-sh references. + install-info: info installdirs +- if test -f autoconf.info; then \ ++ if test -f autoconf.info; then \ + for i in *.info*; do \ +- $(INSTALL_DATA) $$i $(infodir)/$$i; \ ++ $(INSTALL_DATA) $$i $(DESTDIR)/$(infodir)/$$i; \ + done; \ + else \ + for i in $(srcdir)/*.info*; do \ +- $(INSTALL_DATA) $$i $(infodir)/`echo $$i | sed 's|^$(srcdir)/||'`; \ ++ $(INSTALL_DATA) $$i $(DESTDIR)/$(infodir)/`echo $$i | sed 's|^$(srcdir)/||'`; \ + done; \ + fi + +@@ -174,7 +174,7 @@ + rm -f $(bindir)/`echo $$p|sed '$(transform)'`; \ + done + rm -fr $(acdatadir) +- cd $(infodir) && rm -f autoconf.info* ++ cd $(infodir) && rm -f autoconf.info* + if test -f standards.info || test -f $(srcdir)/standards.info; \ + then cd $(infodir) && rm -f standards.info*; fi + +diff -Naur a/testsuite/autoconf.s/syntax.exp b/testsuite/autoconf.s/syntax.exp +--- a/testsuite/autoconf.s/syntax.exp 1999-01-05 13:29:54.000000000 +0000 ++++ b/testsuite/autoconf.s/syntax.exp 2016-06-11 00:18:51.996905247 +0100 +@@ -2,7 +2,7 @@ + + send_user "Checking for syntax errors in the specific tests...\n" + set script {s/^AC_DEFUN(\([^,]*\).*/\1/p} +-set macros [exec sed -n $script $srcdir/../acspecific.m4] ++set macros [exec sed -n $script $srcdir/../acspecific.m4 | grep -v -e AC_FUNC_GETLOADAVG -e F77] + + foreach mac $macros { + send_user "$mac\n" diff --git a/source/xap/mozilla-thunderbird/build-deps/autoconf/autoconf.build b/source/xap/mozilla-thunderbird/build-deps/autoconf/autoconf.build new file mode 100755 index 000000000..b3bf16699 --- /dev/null +++ b/source/xap/mozilla-thunderbird/build-deps/autoconf/autoconf.build @@ -0,0 +1,75 @@ +#!/bin/sh + +# Copyright 2005-2016 Patrick J. Volkerding, Sebeka, Minnesota, USA +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +PKGNAM=autoconf +VERSION=2.13 +BUILD=${BUILD:-1} + +NUMJOBS=${NUMJOBS:-" -j7 "} + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i586 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp} +PKG=$TMP/package-autoconf + +rm -rf $PKG +mkdir -p $TMP $PKG + +cd $TMP +rm -rf autoconf-$VERSION +tar xvf $CWD/autoconf-$VERSION.tar.xz || exit 1 +cd autoconf-$VERSION + +zcat $CWD/autoconf-2.13-consolidated_fixes-1.patch.gz | patch -p1 --verbose || exit 1 + +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +# Build a temporary copy of autoconf-2.13 only to be used to compile +# Firefox, since it somewhat inexplicably requires this ancient version: + +mkdir -p $TMP/mozilla-thunderbird-build-deps/usr + +./configure \ + --prefix=$TMP/mozilla-thunderbird-build-deps/usr \ + --program-suffix=-2.13 \ + --infodir=$TMP/mozilla-thunderbird-build-deps/usr/info \ + --mandir=$TMP/mozilla-thunderbird-build-deps/usr/man \ + --build=$ARCH-slackware-linux || exit 1 + +make $NUMJOBS || make || exit 1 +make install || exit 1 + diff --git a/source/xap/mozilla-thunderbird/build-deps/cbindgen/cbindgen.build b/source/xap/mozilla-thunderbird/build-deps/cbindgen/cbindgen.build new file mode 100755 index 000000000..06116e435 --- /dev/null +++ b/source/xap/mozilla-thunderbird/build-deps/cbindgen/cbindgen.build @@ -0,0 +1,54 @@ +#!/bin/sh + +# Copyright 2019 Patrick J. Volkerding, Sebeka, Minnesota, USA +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +PKGNAM=cbindgen +VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i586 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp} + +mkdir -p $TMP + +cd $TMP +rm -rf cbindgen-$VERSION +tar xvf $CWD/cbindgen-$VERSION.tar.?z || exit 1 +cd cbindgen-$VERSION + +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +cargo install --force cbindgen diff --git a/source/xap/mozilla-thunderbird/build-deps/nodejs/nodejs.build b/source/xap/mozilla-thunderbird/build-deps/nodejs/nodejs.build new file mode 100755 index 000000000..6f98074fe --- /dev/null +++ b/source/xap/mozilla-thunderbird/build-deps/nodejs/nodejs.build @@ -0,0 +1,91 @@ +#!/bin/sh + +# Copyright 2019 Patrick J. Volkerding, Sebeka, Minnesota, USA +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +PKGNAM=node +VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i586 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac +fi + +NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "} + +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +elif [ "$ARCH" = "armv7hl" ]; then + SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16" + LIBDIRSUFFIX="" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp} + +mkdir -p $TMP +mkdir -p $TMP/mozilla-thunderbird-build-deps/usr + +cd $TMP +rm -rf node-$VERSION +tar xvf $CWD/node-$VERSION.tar.?z || exit 1 +cd node-$VERSION + +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +# Fix paths for $LIBDIRSUFFIX (if needed): +if [ ! -z $LIBDIRSUFFIX ]; then + sed -i "s|\"lib\"|\"lib${LIBDIRSUFFIX}\"|" deps/npm/lib/npm.js + sed -i "s/'lib'/'lib${LIBDIRSUFFIX}'/" lib/module.js + sed -i "s|lib/|lib${LIBDIRSUFFIX}/|g" tools/install.py +fi + +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=$TMP/mozilla-thunderbird-build-deps/usr \ + --shared-zlib \ + --without-ssl + make $NUMJOBS || make || exit 1 + make install DESTDIR=$PKG || exit 1 diff --git a/source/xap/mozilla-thunderbird/build-deps/nodejs/nodejs.url b/source/xap/mozilla-thunderbird/build-deps/nodejs/nodejs.url new file mode 100644 index 000000000..75f7f4d38 --- /dev/null +++ b/source/xap/mozilla-thunderbird/build-deps/nodejs/nodejs.url @@ -0,0 +1,2 @@ +https://nodejs.org/dist/v10.16.0/node-v10.16.0.tar.gz +#https://github.com/nodejs/node diff --git a/source/xap/mozilla-thunderbird/gkrust.a.no.networking.check.diff b/source/xap/mozilla-thunderbird/gkrust.a.no.networking.check.diff new file mode 100644 index 000000000..e2f3f98d3 --- /dev/null +++ b/source/xap/mozilla-thunderbird/gkrust.a.no.networking.check.diff @@ -0,0 +1,23 @@ +--- ./config/makefiles/rust.mk.orig 2019-08-26 16:32:05.000000000 -0500 ++++ ./config/makefiles/rust.mk 2019-08-28 15:33:32.393489657 -0500 +@@ -243,13 +243,13 @@ + # When we are building in --enable-release mode; we add an additional check to confirm + # that we are not importing any networking-related functions in rust code. This reduces + # the chance of proxy bypasses originating from rust code. +-ifndef DEVELOPER_OPTIONS +-ifndef MOZ_DEBUG_RUST +-ifeq ($(OS_ARCH), Linux) +- $(call py_action,check_binary,--target --networking $@) +-endif +-endif +-endif ++#ifndef DEVELOPER_OPTIONS ++#ifndef MOZ_DEBUG_RUST ++#ifeq ($(OS_ARCH), Linux) ++# $(call py_action,check_binary,--target --networking $@) ++#endif ++#endif ++#endif + + force-cargo-library-check: + $(call CARGO_CHECK) --lib $(cargo_target_flag) $(rust_features_flag) diff --git a/source/xap/mozilla-thunderbird/gold/gold b/source/xap/mozilla-thunderbird/gold/gold deleted file mode 100755 index 8c86d3b06..000000000 --- a/source/xap/mozilla-thunderbird/gold/gold +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/bash -/usr/bin/ld.gold "$@" diff --git a/source/xap/mozilla-thunderbird/gold/gold b/source/xap/mozilla-thunderbird/gold/gold new file mode 120000 index 000000000..6cd03701c --- /dev/null +++ b/source/xap/mozilla-thunderbird/gold/gold @@ -0,0 +1 @@ +ld.gold \ No newline at end of file diff --git a/source/xap/mozilla-thunderbird/gold/ld b/source/xap/mozilla-thunderbird/gold/ld index 78a06a2a1..6cd03701c 120000 --- a/source/xap/mozilla-thunderbird/gold/ld +++ b/source/xap/mozilla-thunderbird/gold/ld @@ -1 +1 @@ -gold \ No newline at end of file +ld.gold \ No newline at end of file diff --git a/source/xap/mozilla-thunderbird/gold/ld.gold b/source/xap/mozilla-thunderbird/gold/ld.gold new file mode 100755 index 000000000..f1d76b3a4 --- /dev/null +++ b/source/xap/mozilla-thunderbird/gold/ld.gold @@ -0,0 +1,6 @@ +#!/bin/bash +# Doing this for 32-bit... sigh. May have to try to figure out how to only +# use it in 32-bit userspace even when running under a 64-bit kernel. +/usr/bin/ld.gold --no-map-whole-files --no-keep-memory --no-keep-files-mapped "$@" +# Old simple way: +#/usr/bin/ld.gold "$@" diff --git a/source/xap/mozilla-thunderbird/mozilla-thunderbird.SlackBuild b/source/xap/mozilla-thunderbird/mozilla-thunderbird.SlackBuild index 6047eb6ec..9b6c6e69b 100755 --- a/source/xap/mozilla-thunderbird/mozilla-thunderbird.SlackBuild +++ b/source/xap/mozilla-thunderbird/mozilla-thunderbird.SlackBuild @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2008, 2009, 2010, 2011, 2012, 2014, 2016, 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA +# Copyright 2008, 2009, 2010, 2011, 2012, 2014, 2016, 2017, 2018, 2019 Patrick J. Volkerding, Sebeka, Minnesota, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -36,7 +36,7 @@ BUILD=${BUILD:-1} # For example, to build a version of Thunderbird with Italian support, run # the build script like this: # -# MOZLOCALIZE=it ./mozilla-firefox.SlackBuild +# MOZLOCALIZE=it ./mozilla-thunderbird.SlackBuild # MOZLOCALIZE=${MOZLOCALIZE:-} @@ -74,23 +74,23 @@ fi if [ "$ARCH" = "i586" ]; then SLKCFLAGS="" LIBDIRSUFFIX="" - OPTIMIZE=${OPTIMIZE:-"-O1"} + OPTIMIZE=${OPTIMIZE:-"-Os"} elif [ "$ARCH" = "i686" ]; then SLKCFLAGS="" LIBDIRSUFFIX="" - OPTIMIZE=${OPTIMIZE:-"-O1"} + OPTIMIZE=${OPTIMIZE:-"-Os"} elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-fPIC" LIBDIRSUFFIX="64" - OPTIMIZE=${OPTIMIZE:-"-O1"} + OPTIMIZE=${OPTIMIZE:-"-O2"} elif [ "$ARCH" = "arm" ]; then SLKCFLAGS="-march=armv4 -mtune=xscale" LIBDIRSUFFIX="" - OPTIMIZE=${OPTIMIZE:-"-O1"} + OPTIMIZE=${OPTIMIZE:-"-O2"} else SLKCFLAGS="" LIBDIRSUFFIX="" - OPTIMIZE=${OPTIMIZE:-"-O1"} + OPTIMIZE=${OPTIMIZE:-"-O2"} fi # Thunderbird has been requiring more and more memory, especially while linking @@ -101,27 +101,30 @@ fi if [ "$(uname -m)" = "x86_64" -a "$(file -L /usr/bin/gcc | grep 80386 | grep 32-bit)" != "" ]; then COMPILE_X86_UNDER_X86_64=true ARCH=i686 - # Also use the gold linker for this: - PATH="$(pwd)/gold:$PATH" - export CC=${CC:-"gcc -B$(pwd)/gold"} - export CXX=${CXX:-"g++ -B$(pwd)/gold"} -elif [ "$ARCH" = "i686" ]; then - # This might also help with the linker memory situation on some $ARCH. Feel free - # to match any other $ARCH that could benefit from this. - SLKLDFLAGS=" -Wl,--as-needed -Wl,--reduce-memory-overheads -Wl,--no-keep-memory -Wl,--stats" - export LDFLAGS="$SLKLDFLAGS" - export MOZ_LINK_FLAGS="$SLKLDFLAGS" -else - # Link using gold. This also helps prevent running out of memory on 32-bit - # systems, and avoids a recurring build failure with GNU ld on other systems. - PATH="$(pwd)/gold:$PATH" - export CC=${CC:-"gcc -B$(pwd)/gold"} - export CXX=${CXX:-"g++ -B$(pwd)/gold"} fi +# Choose a compiler (gcc/g++ or clang/clang++): +export CC=${CC:-gcc} +export CXX=${CXX:-g++} + +## Link using gold. This avoids running out of memory on 32-bit systems, and +## avoids a recurring build failure with GNU ld on other systems. +#PATH="$(pwd)/gold:$PATH" +#export CC="$CC -B$(pwd)/gold" +#export CXX="$CXX -B$(pwd)/gold" + +# Keep memory usage as low as possible when linking: +SLKLDFLAGS=" -Wl,--as-needed -Wl,--no-keep-memory -Wl,--stats" +export LDFLAGS="$SLKLDFLAGS" +export MOZ_LINK_FLAGS="$SLKLDFLAGS" + +# If you don't give this _something_ then it defaults to -g, causing more +# link time memory issues: +export MOZ_DEBUG_FLAGS="-g0" + # Put Rust objects on a diet to keep the linker from running into memory # issues (especially on 32-bit): -export RUSTFLAGS="-Cdebuginfo=0" +export RUSTFLAGS="-Cdebuginfo=0 -Copt-level=0" TMP=${TMP:-/tmp} PKG=$TMP/package-mozilla-thunderbird @@ -142,9 +145,8 @@ NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "} rm -rf $PKG mkdir -p $TMP $PKG/usr/lib${LIBDIRSUFFIX} -# We need to use the incredibly ancient autoconf-2.13 for this :/ -( cd $CWD/autoconf ; ./autoconf.build ) -PATH=$TMP/autoconf-tmp/usr/bin:$PATH +# Build or unpack build-time dependencies: +. build-deps.sh cd $TMP rm -rf thunderbird-$RELEASEVER @@ -158,14 +160,17 @@ cd .. rm -rf thunderbird-unpack cd thunderbird-$RELEASEVER || exit 1 +# Delete object directory if it was mistakenly included in the tarball: +rm -rf obj-x86_64-pc-linux-gnu + # Retain GTK+ v2 scrolling behavior: -zcat $CWD/tb.ui.scrollToClick.diff.gz | patch -p2 --verbose || exit 1 +zcat $CWD/tb.ui.scrollToClick.diff.gz | patch -p1 --verbose || exit 1 # Fix building with latest Rust: zcat $CWD/unbreakdocs.diff.gz | patch -p1 --verbose || exit 1 -# Fix for glibc-2.30's new gettid() definition: -zcat $CWD/mozilla-thunderbird.gettid.diff.gz | patch -p1 --verbose || exit 1 +# Bypass a test that fails the build: +zcat $CWD/gkrust.a.no.networking.check.diff.gz | patch -p1 --verbose || exit 1 # Fetch localization, if requested: if [ ! -z $MOZLOCALIZE ]; then @@ -179,7 +184,7 @@ fi # Arch-dependent patches: case "$ARCH" in armv7hl) ARCH_CONFIG="--with-arch=armv7-a --with-float-abi=hard --with-fpu=vfpv3-d16 --disable-elf-hack" - # Make firefox compile on ARM platforms lacking neon support: + # Make Thunderbird compile on ARM platforms lacking neon support: zcat $CWD/mozilla-firefox.xpcom_arm.patch.gz | patch -p1 --verbose || exit 1 ;; *) ARCH_CONFIG=" " @@ -272,6 +277,9 @@ echo "ac_add_options --disable-tests" >> .mozconfig ./mach buildsymbols || exit 1 DESTDIR=$PKG ./mach install || exit 1 +# Clean up the build time dependencies: +rm -rf $TMP/mozilla-thunderbird-build-deps + # We don't need these (just symlinks anyway): rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/thunderbird-devel-$RELEASEVER diff --git a/source/xap/mozilla-thunderbird/mozilla-thunderbird.gettid.diff b/source/xap/mozilla-thunderbird/mozilla-thunderbird.gettid.diff deleted file mode 100644 index 83d607a5d..000000000 --- a/source/xap/mozilla-thunderbird/mozilla-thunderbird.gettid.diff +++ /dev/null @@ -1,10 +0,0 @@ ---- ./tools/profiler/core/platform.h.orig 2019-07-03 10:25:38.000000000 -0500 -+++ ./tools/profiler/core/platform.h 2019-08-20 13:15:02.648307043 -0500 -@@ -47,7 +47,6 @@ - #if defined(__GLIBC__) - #include - #include --static inline pid_t gettid() { return (pid_t)syscall(SYS_gettid); } - #elif defined(GP_OS_darwin) - #include - #include diff --git a/source/xap/mozilla-thunderbird/tb.ui.scrollToClick.diff b/source/xap/mozilla-thunderbird/tb.ui.scrollToClick.diff index d3eb0e1e1..3997ee633 100644 --- a/source/xap/mozilla-thunderbird/tb.ui.scrollToClick.diff +++ b/source/xap/mozilla-thunderbird/tb.ui.scrollToClick.diff @@ -1,12 +1,12 @@ ---- ./mozilla/modules/libpref/init/all.js.orig 2017-06-12 15:12:08.000000000 -0500 -+++ ./mozilla/modules/libpref/init/all.js 2017-06-14 18:42:42.342920194 -0500 -@@ -235,6 +235,9 @@ +--- ./modules/libpref/init/all.js.orig 2019-08-26 16:32:16.000000000 -0500 ++++ ./modules/libpref/init/all.js 2019-08-27 11:34:41.749716932 -0500 +@@ -258,6 +258,9 @@ // If true, all popups won't hide automatically on blur pref("ui.popup.disable_autohide", false); +// Default to GTK+ v2 type scrolling: +pref("ui.scrollToClick", 0); + - pref("browser.display.use_document_fonts", 1); // 0 = never, 1 = quick, 2 = always - // 0 = default: always, except in high contrast mode - // 1 = always + #ifdef XP_MACOSX + pref("ui.touchbar.layout", "Back,Forward,Reload,OpenLocation,NewTab,Share"); + #endif diff --git a/source/xap/mozilla-thunderbird/unbreakdocs.diff b/source/xap/mozilla-thunderbird/unbreakdocs.diff index b76dc71d7..03d8e6b42 100644 --- a/source/xap/mozilla-thunderbird/unbreakdocs.diff +++ b/source/xap/mozilla-thunderbird/unbreakdocs.diff @@ -1,11 +1,5 @@ - -https://lists.freebsd.org/pipermail/freebsd-gecko/2019-March/009206.html -https://github.com/grahamperrin/Waterfox/pull/7/files - - -diff -urN firefox-60.6.0_orig/servo/components/style/lib.rs firefox-60.6.0/servo/components/style/lib.rs ---- firefox-60.6.0_orig/servo/components/style/lib.rs 2019-03-13 21:33:48.000000000 +0000 -+++ firefox-60.6.0/servo/components/style/lib.rs 2019-03-20 13:06:18.611024453 +0000 +--- ./servo/components/style/lib.rs.orig 2019-07-05 20:44:35.000000000 -0500 ++++ ./servo/components/style/lib.rs 2019-07-08 13:51:55.460242952 -0500 @@ -23,7 +23,7 @@ //! [cssparser]: ../cssparser/index.html //! [selectors]: ../selectors/index.html @@ -15,7 +9,7 @@ diff -urN firefox-60.6.0_orig/servo/components/style/lib.rs firefox-60.6.0/servo extern crate app_units; extern crate arrayvec; -@@ -148,7 +148,7 @@ +@@ -196,7 +196,7 @@ /// Generated from the properties.mako.rs template by build.rs #[macro_use] #[allow(unsafe_code)] @@ -24,15 +18,14 @@ diff -urN firefox-60.6.0_orig/servo/components/style/lib.rs firefox-60.6.0/servo pub mod properties { include!(concat!(env!("OUT_DIR"), "/properties.rs")); } -diff -urN firefox-60.6.0_orig/servo/components/style_traits/lib.rs firefox-60.6.0/servo/components/style_traits/lib.rs ---- firefox-60.6.0_orig/servo/components/style_traits/lib.rs 2019-03-13 21:33:48.000000000 +0000 -+++ firefox-60.6.0/servo/components/style_traits/lib.rs 2019-03-20 13:06:47.137024070 +0000 -@@ -9,7 +9,7 @@ +--- ./servo/components/style_traits/lib.rs.orig 2019-07-08 13:51:55.462242953 -0500 ++++ ./servo/components/style_traits/lib.rs 2019-07-08 13:53:44.853249956 -0500 +@@ -8,7 +8,7 @@ + #![crate_name = "style_traits"] #![crate_type = "rlib"] - -#![deny(unsafe_code, missing_docs)] +#![deny(unsafe_code)] extern crate app_units; - #[macro_use] extern crate bitflags; + #[macro_use] -- cgit v1.2.3