From 85535b49c47cc8cec1dd802c716155e08a75aeb4 Mon Sep 17 00:00:00 2001 From: Patrick J Volkerding Date: Fri, 31 Jul 2020 22:00:05 +0000 Subject: Fri Jul 31 22:00:05 UTC 2020 a/kernel-generic-5.4.55-x86_64-1.txz: Upgraded. a/kernel-huge-5.4.55-x86_64-1.txz: Upgraded. a/kernel-modules-5.4.55-x86_64-1.txz: Upgraded. ap/sysstat-12.4.0-x86_64-1.txz: Upgraded. d/cmake-3.18.1-x86_64-1.txz: Upgraded. d/kernel-headers-5.4.55-x86-1.txz: Upgraded. d/python-pip-20.2-x86_64-1.txz: Upgraded. d/re2c-2.0.1-x86_64-1.txz: Upgraded. d/rust-1.45.1-x86_64-1.txz: Upgraded. k/kernel-source-5.4.55-noarch-1.txz: Upgraded. l/libvpx-1.9.0-x86_64-1.txz: Upgraded. l/mozjs60-60.9.0esr-x86_64-1.txz: Removed. l/mozjs68-68.11.0esr-x86_64-1.txz: Added. IMPORTANT: This is needed for polkit-0.117. l/polkit-0.117-x86_64-1.txz: Upgraded. x/libX11-1.6.10-x86_64-1.txz: Upgraded. xap/mozilla-thunderbird-68.11.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.11.0/releasenotes/ https://www.mozilla.org/en-US/security/advisories/mfsa2020-35/ https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15652 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-6514 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-6463 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15659 (* Security fix *) isolinux/initrd.img: Rebuilt. kernels/*: Upgraded. usb-and-pxe-installers/usbboot.img: Rebuilt. --- .../autoconf-2.13-consolidated_fixes-1.patch | 504 --------------------- source/l/mozjs60/autoconf/autoconf.build | 81 ---- source/l/mozjs60/mozjs60.SlackBuild | 179 -------- ...quivalent-year-to-determine-the-time-zone.patch | 100 ---- ...-for-generated-unboxed-object-constructor.patch | 64 --- ...efore-clobbering-it-in-the-regex-compiler.patch | 97 ---- .../l/mozjs60/patches/build-icu-big-endian.patch | 13 - source/l/mozjs60/patches/copy-headers.patch | 29 -- source/l/mozjs60/patches/emitter.patch | 15 - source/l/mozjs60/patches/emitter_test.patch | 26 -- source/l/mozjs60/patches/fix-soname.patch | 25 - ...s_data-Write-command-output-to-our-stderr.patch | 34 -- ...ata.py-Decouple-from-Mozilla-build-system.patch | 26 -- source/l/mozjs60/patches/init_patch.patch | 12 - ...that-are-skipped-on-64-bit-mips64-is-also.patch | 41 -- .../l/mozjs60/patches/tests-increase-timeout.patch | 22 - source/l/mozjs60/slack-desc | 20 - .../autoconf-2.13-consolidated_fixes-1.patch | 504 +++++++++++++++++++++ source/l/mozjs68/autoconf/autoconf.build | 81 ++++ source/l/mozjs68/mozjs68.SlackBuild | 178 ++++++++ ...on262-extensions-clone-errors.js-on-s390x.patch | 15 + ...e-unused-LLVM-and-Rust-build-dependencies.patch | 72 +++ ...able_WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS.patch | 10 + .../l/mozjs68/patches/build-icu-big-endian.patch | 12 + source/l/mozjs68/patches/copy-headers.patch | 29 ++ source/l/mozjs68/patches/emitter.patch | 14 + source/l/mozjs68/patches/emitter_test.patch | 27 ++ source/l/mozjs68/patches/fix-soname.patch | 25 + ...s_data-Write-command-output-to-our-stderr.patch | 34 ++ ...ata.py-Decouple-from-Mozilla-build-system.patch | 26 ++ source/l/mozjs68/patches/init_patch.patch | 13 + source/l/mozjs68/patches/jstests_python-3.patch | 57 +++ .../patches/spidermonkey_checks_disable.patch | 10 + .../spidermonkey_style_check_disable_s390x.patch | 11 + .../l/mozjs68/patches/tests-increase-timeout.patch | 22 + source/l/mozjs68/slack-desc | 20 + source/l/polkit/polkit.SlackBuild | 8 +- 37 files changed, 1166 insertions(+), 1290 deletions(-) delete mode 100644 source/l/mozjs60/autoconf/autoconf-2.13-consolidated_fixes-1.patch delete mode 100755 source/l/mozjs60/autoconf/autoconf.build delete mode 100755 source/l/mozjs60/mozjs60.SlackBuild delete mode 100644 source/l/mozjs60/patches/Always-use-the-equivalent-year-to-determine-the-time-zone.patch delete mode 100644 source/l/mozjs60/patches/Save-and-restore-non-volatile-x28-on-ARM64-for-generated-unboxed-object-constructor.patch delete mode 100644 source/l/mozjs60/patches/Save-x28-before-clobbering-it-in-the-regex-compiler.patch delete mode 100644 source/l/mozjs60/patches/build-icu-big-endian.patch delete mode 100644 source/l/mozjs60/patches/copy-headers.patch delete mode 100644 source/l/mozjs60/patches/emitter.patch delete mode 100644 source/l/mozjs60/patches/emitter_test.patch delete mode 100644 source/l/mozjs60/patches/fix-soname.patch delete mode 100644 source/l/mozjs60/patches/icu_sources_data-Write-command-output-to-our-stderr.patch delete mode 100644 source/l/mozjs60/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch delete mode 100644 source/l/mozjs60/patches/init_patch.patch delete mode 100644 source/l/mozjs60/patches/tests-For-tests-that-are-skipped-on-64-bit-mips64-is-also.patch delete mode 100644 source/l/mozjs60/patches/tests-increase-timeout.patch delete mode 100644 source/l/mozjs60/slack-desc create mode 100644 source/l/mozjs68/autoconf/autoconf-2.13-consolidated_fixes-1.patch create mode 100755 source/l/mozjs68/autoconf/autoconf.build create mode 100755 source/l/mozjs68/mozjs68.SlackBuild create mode 100644 source/l/mozjs68/patches/Don-t-run-non262-extensions-clone-errors.js-on-s390x.patch create mode 100644 source/l/mozjs68/patches/Remove-unused-LLVM-and-Rust-build-dependencies.patch create mode 100644 source/l/mozjs68/patches/armv7_disable_WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS.patch create mode 100644 source/l/mozjs68/patches/build-icu-big-endian.patch create mode 100644 source/l/mozjs68/patches/copy-headers.patch create mode 100644 source/l/mozjs68/patches/emitter.patch create mode 100644 source/l/mozjs68/patches/emitter_test.patch create mode 100644 source/l/mozjs68/patches/fix-soname.patch create mode 100644 source/l/mozjs68/patches/icu_sources_data-Write-command-output-to-our-stderr.patch create mode 100644 source/l/mozjs68/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch create mode 100644 source/l/mozjs68/patches/init_patch.patch create mode 100644 source/l/mozjs68/patches/jstests_python-3.patch create mode 100644 source/l/mozjs68/patches/spidermonkey_checks_disable.patch create mode 100644 source/l/mozjs68/patches/spidermonkey_style_check_disable_s390x.patch create mode 100644 source/l/mozjs68/patches/tests-increase-timeout.patch create mode 100644 source/l/mozjs68/slack-desc (limited to 'source/l') diff --git a/source/l/mozjs60/autoconf/autoconf-2.13-consolidated_fixes-1.patch b/source/l/mozjs60/autoconf/autoconf-2.13-consolidated_fixes-1.patch deleted file mode 100644 index 5e7b23113..000000000 --- a/source/l/mozjs60/autoconf/autoconf-2.13-consolidated_fixes-1.patch +++ /dev/null @@ -1,504 +0,0 @@ -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/l/mozjs60/autoconf/autoconf.build b/source/l/mozjs60/autoconf/autoconf.build deleted file mode 100755 index 05e53f1a5..000000000 --- a/source/l/mozjs60/autoconf/autoconf.build +++ /dev/null @@ -1,81 +0,0 @@ -#!/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=i486 ;; - 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 -# js52, since it somewhat inexplicably requires this ancient version: - -rm -rf $TMP/autoconf-tmp -mkdir -p $TMP/autoconf-tmp -# This will be at the beginning of the $PATH, so protect against nonsense -# happening in /tmp: -chmod 700 $TMP/autoconf-tmp -rm -rf $TMP/autoconf-tmp/* -mkdir -p $TMP/autoconf-tmp/usr - -./configure \ - --prefix=$TMP/autoconf-tmp/usr \ - --program-suffix=-2.13 \ - --infodir=$TMP/autoconf-tmp/usr/info \ - --mandir=$TMP/autoconf-tmp/usr/man \ - --build=$ARCH-slackware-linux || exit 1 - -make $NUMJOBS || make || exit 1 -make install || exit 1 - diff --git a/source/l/mozjs60/mozjs60.SlackBuild b/source/l/mozjs60/mozjs60.SlackBuild deleted file mode 100755 index 1c35eb129..000000000 --- a/source/l/mozjs60/mozjs60.SlackBuild +++ /dev/null @@ -1,179 +0,0 @@ -#!/bin/bash - -# Slackware build script for SpiderMonkey - -# Copyright 2011, 2018 Robby Workman, Tuscaloosa, Alabama, USA -# Copyright 2019 Patrick J. Volkerding, Sebeka, MN, 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. - -cd $(dirname $0) ; CWD=$(pwd) - -PKGNAM=mozjs60 -SRCNAME=firefox -VERSION=60.9.0esr -BUILD=${BUILD:-1} - - -# Automatically determine the architecture we're building on: -if [ -z "$ARCH" ]; then - case "$( uname -m )" in - i?86) ARCH=i586 ;; - arm*) ARCH=arm ;; - # Unless $ARCH is already set, use uname -m for all other archs: - *) ARCH=$( uname -m ) ;; - esac -fi - -# If the variable PRINT_PACKAGE_NAME is set, then this script will report what -# the name of the created package would be, and then exit. This information -# could be useful to other scripts. -if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then - echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz" - exit 0 -fi - -NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "} - -TMP=${TMP:-/tmp} -PKG=$TMP/package-$PKGNAM - -if [ "$ARCH" = "i586" ]; then - SLKCFLAGS="-O2 -march=i586 -mtune=i686" - LIBDIRSUFFIX="" -elif [ "$ARCH" = "i686" ]; then - SLKCFLAGS="-O2 -march=i686 -mtune=i686" - LIBDIRSUFFIX="" -elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2 -fPIC" - LIBDIRSUFFIX="64" -else - SLKCFLAGS="-O2" - LIBDIRSUFFIX="" -fi - -rm -rf $PKG -mkdir -p $TMP $PKG -cd $TMP -rm -rf $SRCNAME-$VERSION ; rm -rf $SRCNAME-$(echo $VERSION | cut -f 1 -d e) -# Unpack this in a subdirectory to prevent changing permissions on /tmp: -rm -rf firefox-unpack -mkdir firefox-unpack -cd firefox-unpack -tar xvf $CWD/$SRCNAME-$VERSION.source.tar.?z || exit 1 -mv * .. -cd .. -rm -rf firefox-unpack -cd $SRCNAME-$(echo $VERSION | cut -f 1 -d e) || cd $SRCNAME-$VERSION || 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 {} \+ - -# We need to use the incredibly ancient autoconf-2.13 for this :/ -( cd $CWD/autoconf ; ./autoconf.build ) -PATH=$TMP/autoconf-tmp/usr/bin:$PATH - -# Patches from Fedora: -zcat $CWD/patches/fix-soname.patch.gz | patch -p1 --verbose || exit 1 -zcat $CWD/patches/copy-headers.patch.gz | patch -p1 --verbose || exit 1 -zcat $CWD/patches/tests-increase-timeout.patch.gz | patch -p1 --verbose || exit 1 -zcat $CWD/patches/Always-use-the-equivalent-year-to-determine-the-time-zone.patch.gz | patch -p1 --verbose || exit 1 -zcat $CWD/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch.gz | patch -p1 --verbose || exit 1 -zcat $CWD/patches/icu_sources_data-Write-command-output-to-our-stderr.patch.gz | patch -p1 --verbose || exit 1 -zcat $CWD/patches/tests-For-tests-that-are-skipped-on-64-bit-mips64-is-also.patch.gz | patch -p1 --verbose || exit 1 -zcat $CWD/patches/emitter.patch.gz | patch -p1 --verbose || exit 1 -zcat $CWD/patches/emitter_test.patch.gz | patch -p1 --verbose || exit 1 -zcat $CWD/patches/init_patch.patch.gz | patch -p1 --verbose || exit 1 - -# DON'T APPLY THIS ONE UNLESS YOU ENJOY A FAILED COMPILE: -#zcat $CWD/patches/build-icu-big-endian.patch.gz | patch -p1 --verbose || exit 1 - -zcat $CWD/patches/Save-x28-before-clobbering-it-in-the-regex-compiler.patch.gz | patch -p1 --verbose || exit 1 -zcat $CWD/patches/Save-and-restore-non-volatile-x28-on-ARM64-for-generated-unboxed-object-constructor.patch.gz | patch -p1 --verbose || exit 1 - -# Remove bundled security libraries so that we don't link to them: -rm -rf security - -# Remove bundled zlib directory and use system version: -rm -rf modules/zlib - -cd js/src - -# We need to do this because patches above touch configure.in: -autoconf-2.13 - -CFLAGS+="$SLKCFLAGS -fno-delete-null-pointer-checks -fno-strict-aliasing -fno-tree-vrp " \ -CXXFLAGS+="$SLKCFLAGS -fno-delete-null-pointer-checks -fno-strict-aliasing -fno-tree-vrp " \ -./configure \ - --prefix=/usr \ - --libdir=/usr/lib${LIBDIRSUFFIX} \ - --sysconfdir=/etc \ - --localstatedir=/var \ - --mandir=/usr/man \ - --without-system-icu \ - --enable-posix-nspr-emulation \ - --with-system-zlib \ - --enable-tests \ - --disable-strip \ - --with-intl-api \ - --enable-readline \ - --enable-shared-js \ - --disable-optimize \ - --enable-pie \ - --disable-jemalloc \ - --build=$ARCH-slackware-linux \ - -make $NUMJOBS || make || exit 1 -make install DESTDIR=$PKG || exit 1 - -# No need for the huge static library: -rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libjs_static.* - -# Don't ship -config: -rm -f $PKG/usr/bin/js*-config - -# Rename shared library to have a proper soname: -mv $PKG/usr/lib${LIBDIRSUFFIX}/libmozjs-60.so $PKG/usr/lib${LIBDIRSUFFIX}/libmozjs-60.so.0.0.0 -( cd $PKG/usr/lib${LIBDIRSUFFIX} - ln -sf libmozjs-60.so.0.0.0 libmozjs-60.so.0 - ln -sf libmozjs-60.so.0 libmozjs-60.so -) - -mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION -cp ../../README.txt README.html $PKG/usr/doc/$PKGNAM-$VERSION - -# If there's a ChangeLog, installing at least part of the recent history -# is useful, but don't let it get totally out of control: -if [ -r ChangeLog ]; then - DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION) - cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog - touch -r ChangeLog $DOCSDIR/ChangeLog -fi - -find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ - | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true - -mkdir -p $PKG/install -cat $CWD/slack-desc > $PKG/install/slack-desc - -cd $PKG -/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz diff --git a/source/l/mozjs60/patches/Always-use-the-equivalent-year-to-determine-the-time-zone.patch b/source/l/mozjs60/patches/Always-use-the-equivalent-year-to-determine-the-time-zone.patch deleted file mode 100644 index 81474a42b..000000000 --- a/source/l/mozjs60/patches/Always-use-the-equivalent-year-to-determine-the-time-zone.patch +++ /dev/null @@ -1,100 +0,0 @@ -From: =?utf-8?q?Andr=C3=A9_Bargull?= -Date: Wed, 8 Nov 2017 03:23:41 -0800 -Subject: Always use the equivalent year to determine the time zone offset and - name - -Reviewed-by: Jeff Walden -Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1415202 -Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1479687 -Origin: upstream -Applied-upstream: 62, commit:https://hg.mozilla.org/mozilla-central/rev/ce9f1466ec78 ---- - js/src/jsdate.cpp | 11 +++++++---- - js/src/vm/Time.cpp | 14 ++++---------- - js/src/vm/Time.h | 2 +- - 3 files changed, 12 insertions(+), 15 deletions(-) - -diff --git a/js/src/jsdate.cpp b/js/src/jsdate.cpp -index 07af3d18c865..ff8fd6c3763c 100644 ---- a/js/src/jsdate.cpp -+++ b/js/src/jsdate.cpp -@@ -2353,12 +2353,15 @@ static PRMJTime ToPRMJTime(double localTime, double utcTime) { - static size_t FormatTime(char* buf, int buflen, const char* fmt, double utcTime, - double localTime) { - PRMJTime prtm = ToPRMJTime(localTime, utcTime); -- int eqivalentYear = IsRepresentableAsTime32(utcTime) -- ? prtm.tm_year -- : EquivalentYearForDST(prtm.tm_year); -+ // If an equivalent year was used to compute the date/time components, use -+ // the same equivalent year to determine the time zone name and offset in -+ // PRMJ_FormatTime(...). -+ int timeZoneYear = IsRepresentableAsTime32(utcTime) -+ ? prtm.tm_year -+ : EquivalentYearForDST(prtm.tm_year); - int offsetInSeconds = (int)floor((localTime - utcTime) / msPerSecond); - -- return PRMJ_FormatTime(buf, buflen, fmt, &prtm, eqivalentYear, -+ return PRMJ_FormatTime(buf, buflen, fmt, &prtm, timeZoneYear, - offsetInSeconds); - } - -diff --git a/js/src/vm/Time.cpp b/js/src/vm/Time.cpp -index f59977f0d0e9..5ee4794b3e83 100644 ---- a/js/src/vm/Time.cpp -+++ b/js/src/vm/Time.cpp -@@ -247,7 +247,7 @@ static void PRMJ_InvalidParameterHandler(const wchar_t* expression, - - /* Format a time value into a buffer. Same semantics as strftime() */ - size_t PRMJ_FormatTime(char* buf, int buflen, const char* fmt, -- const PRMJTime* prtm, int equivalentYear, -+ const PRMJTime* prtm, int timeZoneYear, - int offsetInSeconds) { - size_t result = 0; - #if defined(XP_UNIX) || defined(XP_WIN) -@@ -280,7 +280,8 @@ size_t PRMJ_FormatTime(char* buf, int buflen, const char* fmt, - * Fill out |td| to the time represented by |prtm|, leaving the - * timezone fields zeroed out. localtime_r will then fill in the - * timezone fields for that local time according to the system's -- * timezone parameters. -+ * timezone parameters. Use |timeZoneYear| for the year to ensure the -+ * time zone name matches the time zone offset used by the caller. - */ - struct tm td; - memset(&td, 0, sizeof(td)); -@@ -290,19 +291,12 @@ size_t PRMJ_FormatTime(char* buf, int buflen, const char* fmt, - td.tm_mday = prtm->tm_mday; - td.tm_mon = prtm->tm_mon; - td.tm_wday = prtm->tm_wday; -- td.tm_year = prtm->tm_year - 1900; -+ td.tm_year = timeZoneYear - 1900; - td.tm_yday = prtm->tm_yday; - td.tm_isdst = prtm->tm_isdst; - - time_t t = mktime(&td); - -- // If |prtm| cannot be represented in |time_t| the year is probably -- // out of range, try again with the DST equivalent year. -- if (t == static_cast(-1)) { -- td.tm_year = equivalentYear - 1900; -- t = mktime(&td); -- } -- - // If either mktime or localtime_r failed, fill in the fallback time - // zone offset |offsetInSeconds| and set the time zone identifier to - // the empty string. -diff --git a/js/src/vm/Time.h b/js/src/vm/Time.h -index 3a51d869c922..37b7faeec028 100644 ---- a/js/src/vm/Time.h -+++ b/js/src/vm/Time.h -@@ -49,7 +49,7 @@ inline void PRMJ_NowShutdown() {} - - /* Format a time value into a buffer. Same semantics as strftime() */ - extern size_t PRMJ_FormatTime(char* buf, int buflen, const char* fmt, -- const PRMJTime* tm, int equivalentYear, -+ const PRMJTime* tm, int timeZoneYear, - int offsetInSeconds); - - /** --- -2.21.0 - diff --git a/source/l/mozjs60/patches/Save-and-restore-non-volatile-x28-on-ARM64-for-generated-unboxed-object-constructor.patch b/source/l/mozjs60/patches/Save-and-restore-non-volatile-x28-on-ARM64-for-generated-unboxed-object-constructor.patch deleted file mode 100644 index 46d280d06..000000000 --- a/source/l/mozjs60/patches/Save-and-restore-non-volatile-x28-on-ARM64-for-generated-unboxed-object-constructor.patch +++ /dev/null @@ -1,64 +0,0 @@ -# HG changeset patch -# User Lars T Hansen -# Date 1519822672 -3600 -# Node ID 800abe66894d6b07b24bccecbf6a65e2261076f6 -# Parent 223c97459e96183eb616aed39147207bdb953ba8 -Bug 1375074 - Save and restore non-volatile x28 on ARM64 for generated unboxed object constructor. r=sstangl - -Origin: upstream -Applied-upstream: 61, commit: https://hg.mozilla.org/mozilla-central/rev/800abe66894d ---- - js/src/vm/UnboxedObject.cpp | 30 ++++++++++++++++++++++++++---- - 1 file changed, 26 insertions(+), 4 deletions(-) - -diff --git a/js/src/vm/UnboxedObject.cpp b/js/src/vm/UnboxedObject.cpp -index 35ca20d7405f..1c20a1093d13 100644 ---- a/js/src/vm/UnboxedObject.cpp -+++ b/js/src/vm/UnboxedObject.cpp -@@ -86,9 +86,16 @@ static const uintptr_t CLEAR_CONSTRUCTOR_CODE_TOKEN = 0x1; - #endif - - #ifdef JS_CODEGEN_ARM64 -- // ARM64 communicates stack address via sp, but uses a pseudo-sp for -- // addressing. -- masm.initStackPtr(); -+ // ARM64 communicates stack address via sp, but uses a pseudo-sp (PSP) for -+ // addressing. The register we use for PSP may however also be used by -+ // calling code, and it is nonvolatile, so save it. Do this as a special -+ // case first because the generic save/restore code needs the PSP to be -+ // initialized already. -+ MOZ_ASSERT(PseudoStackPointer64.Is(masm.GetStackPointer64())); -+ masm.Str(PseudoStackPointer64, vixl::MemOperand(sp, -16, vixl::PreIndex)); -+ -+ // Initialize the PSP from the SP. -+ masm.initStackPtr(); - #endif - - MOZ_ASSERT(propertiesReg.volatile_()); -@@ -239,7 +246,22 @@ static const uintptr_t CLEAR_CONSTRUCTOR_CODE_TOKEN = 0x1; - if (ScratchDoubleReg.volatile_()) masm.pop(ScratchDoubleReg); - masm.PopRegsInMask(savedNonVolatileRegisters); - -- masm.abiret(); -+#ifdef JS_CODEGEN_ARM64 -+ // Now restore the value that was in the PSP register on entry, and return. -+ -+ // Obtain the correct SP from the PSP. -+ masm.Mov(sp, PseudoStackPointer64); -+ -+ // Restore the saved value of the PSP register, this value is whatever the -+ // caller had saved in it, not any actual SP value, and it must not be -+ // overwritten subsequently. -+ masm.Ldr(PseudoStackPointer64, vixl::MemOperand(sp, 16, vixl::PostIndex)); -+ -+ // Perform a plain Ret(), as abiret() will move SP <- PSP and that is wrong. -+ masm.Ret(vixl::lr); -+#else -+ masm.abiret(); -+#endif - - masm.bind(&failureStoreOther); - --- -2.21.0 - diff --git a/source/l/mozjs60/patches/Save-x28-before-clobbering-it-in-the-regex-compiler.patch b/source/l/mozjs60/patches/Save-x28-before-clobbering-it-in-the-regex-compiler.patch deleted file mode 100644 index 3886c0e9b..000000000 --- a/source/l/mozjs60/patches/Save-x28-before-clobbering-it-in-the-regex-compiler.patch +++ /dev/null @@ -1,97 +0,0 @@ -# HG changeset patch -# User Lars T Hansen -# Date 1521449886 -3600 -# Node ID 903a79a1efff18fc7cc50db09a3fe5d768adc9a8 -# Parent 4d2955a9ca7e30ca4c3af9c214ccc77fb2fe7fb8 -Bug 1445907 - Save x28 before clobbering it in the regex compiler. r=sstangl - -Origin: upstream -Applied-upstream: 61, commit: https://hg.mozilla.org/mozilla-central/rev/903a79a1efff ---- -diff --git a/js/src/irregexp/NativeRegExpMacroAssembler.cpp b/js/src/irregexp/NativeRegExpMacroAssembler.cpp ---- a/js/src/irregexp/NativeRegExpMacroAssembler.cpp -+++ b/js/src/irregexp/NativeRegExpMacroAssembler.cpp -@@ -118,17 +118,25 @@ NativeRegExpMacroAssembler::GenerateCode - - Label return_temp0; - - // Finalize code - write the entry point code now we know how many - // registers we need. - masm.bind(&entry_label_); - - #ifdef JS_CODEGEN_ARM64 -- // ARM64 communicates stack address via sp, but uses a pseudo-sp for addressing. -+ // ARM64 communicates stack address via SP, but uses a pseudo-sp (PSP) for -+ // addressing. The register we use for PSP may however also be used by -+ // calling code, and it is nonvolatile, so save it. Do this as a special -+ // case first because the generic save/restore code needs the PSP to be -+ // initialized already. -+ MOZ_ASSERT(PseudoStackPointer64.Is(masm.GetStackPointer64())); -+ masm.Str(PseudoStackPointer64, vixl::MemOperand(sp, -16, vixl::PreIndex)); -+ -+ // Initialize the PSP from the SP. - masm.initStackPtr(); - #endif - - // Push non-volatile registers which might be modified by jitcode. - size_t pushedNonVolatileRegisters = 0; - for (GeneralRegisterForwardIterator iter(savedNonVolatileRegisters); iter.more(); ++iter) { - masm.Push(*iter); - pushedNonVolatileRegisters++; -@@ -416,17 +424,32 @@ NativeRegExpMacroAssembler::GenerateCode - masm.pop(temp0); - masm.movePtr(temp0, StackPointer); - #endif - - // Restore non-volatile registers which were saved on entry. - for (GeneralRegisterBackwardIterator iter(savedNonVolatileRegisters); iter.more(); ++iter) - masm.Pop(*iter); - -+#ifdef JS_CODEGEN_ARM64 -+ // Now restore the value that was in the PSP register on entry, and return. -+ -+ // Obtain the correct SP from the PSP. -+ masm.Mov(sp, PseudoStackPointer64); -+ -+ // Restore the saved value of the PSP register, this value is whatever the -+ // caller had saved in it, not any actual SP value, and it must not be -+ // overwritten subsequently. -+ masm.Ldr(PseudoStackPointer64, vixl::MemOperand(sp, 16, vixl::PostIndex)); -+ -+ // Perform a plain Ret(), as abiret() will move SP <- PSP and that is wrong. -+ masm.Ret(vixl::lr); -+#else - masm.abiret(); -+#endif - - // Backtrack code (branch target for conditional backtracks). - if (backtrack_label_.used()) { - masm.bind(&backtrack_label_); - Backtrack(); - } - - // Backtrack stack overflow code. -diff --git a/js/src/jit-test/tests/regexp/bug1445907.js b/js/src/jit-test/tests/regexp/bug1445907.js -new file mode 100644 ---- /dev/null -+++ b/js/src/jit-test/tests/regexp/bug1445907.js -@@ -0,0 +1,15 @@ -+// On ARM64, we failed to save x28 properly when generating code for the regexp -+// matcher. -+// -+// There's wasm and Debugger code here because the combination forces the use of -+// x28 and exposes the bug when running on the simulator. -+ -+if (!wasmIsSupported()) -+ quit(); -+ -+var g = newGlobal(''); -+var dbg = new Debugger(g); -+g.eval(`var m = new WebAssembly.Instance(new WebAssembly.Module(wasmTextToBinary('(module (func (export "test")))')))`); -+var re = /./; -+dbg.onEnterFrame = function(frame) { re.exec("x") }; -+result = g.eval("m.exports.test()"); - --- -2.21.0 - diff --git a/source/l/mozjs60/patches/build-icu-big-endian.patch b/source/l/mozjs60/patches/build-icu-big-endian.patch deleted file mode 100644 index 2cfc8396a..000000000 --- a/source/l/mozjs60/patches/build-icu-big-endian.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up firefox-60.0/build/autoconf/icu.m4.icu firefox-60.0/build/autoconf/icu.m4 ---- firefox-60.0/build/autoconf/icu.m4.icu 2018-04-24 13:13:03.938961958 +0200 -+++ firefox-60.0/build/autoconf/icu.m4 2018-04-24 13:14:44.472714375 +0200 -@@ -78,7 +78,7 @@ if test -n "$USE_ICU"; then - # TODO: the l is actually endian-dependent - # We could make this set as 'l' or 'b' for little or big, respectively, - # but we'd need to check in a big-endian version of the file. -- ICU_DATA_FILE="icudt${version}l.dat" -+ ICU_DATA_FILE="icudt${version}b.dat" - - MOZ_ICU_DATA_ARCHIVE= - fi - diff --git a/source/l/mozjs60/patches/copy-headers.patch b/source/l/mozjs60/patches/copy-headers.patch deleted file mode 100644 index aec3b10a2..000000000 --- a/source/l/mozjs60/patches/copy-headers.patch +++ /dev/null @@ -1,29 +0,0 @@ -From: Rico Tzschichholz -Date: Wed, 5 Jul 2017 22:45:59 -0700 -Subject: build: Copy headers on install instead of symlinking - -Patch ported forward to mozjs52 by Philip Chimento -. ---- - python/mozbuild/mozbuild/backend/recursivemake.py | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/python/mozbuild/mozbuild/backend/recursivemake.py b/python/mozbuild/mozbuild/backend/recursivemake.py -index dd9020d..6918ef8 100644 ---- a/python/mozbuild/mozbuild/backend/recursivemake.py -+++ b/python/mozbuild/mozbuild/backend/recursivemake.py -@@ -1427,11 +1427,11 @@ class RecursiveMakeBackend(CommonBackend): - raise Exception("Wildcards are only supported in the filename part of " - "srcdir-relative or absolute paths.") - -- install_manifest.add_pattern_link(basepath, wild, path) -+ install_manifest.add_pattern_copy(basepath, wild, path) - else: -- install_manifest.add_pattern_link(f.srcdir, f, path) -+ install_manifest.add_pattern_copy(f.srcdir, f, path) - else: -- install_manifest.add_link(f.full_path, dest) -+ install_manifest.add_copy(f.full_path, dest) - else: - install_manifest.add_optional_exists(dest) - backend_file.write('%s_FILES += %s\n' % ( diff --git a/source/l/mozjs60/patches/emitter.patch b/source/l/mozjs60/patches/emitter.patch deleted file mode 100644 index 0f414d7cd..000000000 --- a/source/l/mozjs60/patches/emitter.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- a/python/mozbuild/mozbuild/frontend/emitter.py -+++ b/python/mozbuild/mozbuild/frontend/emitter.py -@@ -1127,11 +1127,6 @@ - raise SandboxValidationError('Path specified in LOCAL_INCLUDES ' - 'does not exist: %s (resolved to %s)' % (local_include, - full_path), context) -- if (full_path == context.config.topsrcdir or -- full_path == context.config.topobjdir): -- raise SandboxValidationError('Path specified in LOCAL_INCLUDES ' -- 'is not allowed: %s (resolved to %s)' % (local_include, -- full_path), context) - include_obj = LocalInclude(context, local_include) - local_includes.append(include_obj.path.full_path) - yield include_obj - diff --git a/source/l/mozjs60/patches/emitter_test.patch b/source/l/mozjs60/patches/emitter_test.patch deleted file mode 100644 index dad8ddc14..000000000 --- a/source/l/mozjs60/patches/emitter_test.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- a/python/mozbuild/mozbuild/test/frontend/test_emitter.py -+++ b/python/mozbuild/mozbuild/test/frontend/test_emitter.py -@@ -999,22 +999,6 @@ - - self.assertEqual(local_includes, expected) - -- def test_local_includes_invalid(self): -- """Test that invalid LOCAL_INCLUDES are properly detected.""" -- reader = self.reader('local_includes-invalid/srcdir') -- -- with self.assertRaisesRegexp( -- SandboxValidationError, -- 'Path specified in LOCAL_INCLUDES is not allowed:'): -- objs = self.read_topsrcdir(reader) -- -- reader = self.reader('local_includes-invalid/objdir') -- -- with self.assertRaisesRegexp( -- SandboxValidationError, -- 'Path specified in LOCAL_INCLUDES is not allowed:'): -- objs = self.read_topsrcdir(reader) -- - def test_generated_includes(self): - """Test that GENERATED_INCLUDES is emitted correctly.""" - reader = self.reader('generated_includes') - diff --git a/source/l/mozjs60/patches/fix-soname.patch b/source/l/mozjs60/patches/fix-soname.patch deleted file mode 100644 index fc8052a88..000000000 --- a/source/l/mozjs60/patches/fix-soname.patch +++ /dev/null @@ -1,25 +0,0 @@ -From: "Laszlo Boszormenyi (GCS)" -Date: Fri, 2 May 2014 22:20:45 +0200 -Subject: fix soname - -Add soname switch to linker, regardless of Operating System - -Bug-Debian: http://bugs.debian.org/746705 ---- - config/rules.mk | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/config/rules.mk b/config/rules.mk -index eb86b0c..1bb3988 100644 ---- a/config/rules.mk -+++ b/config/rules.mk -@@ -359,6 +359,9 @@ endif - endif - EXTRA_DEPS += $(SYMBOLS_FILE) - endif -+ -+EXTRA_DSO_LDOPTS += -Wl,-soname,lib$(JS_LIBRARY_NAME).so.0 -+ - # - # GNU doesn't have path length limitation - # diff --git a/source/l/mozjs60/patches/icu_sources_data-Write-command-output-to-our-stderr.patch b/source/l/mozjs60/patches/icu_sources_data-Write-command-output-to-our-stderr.patch deleted file mode 100644 index 19c0cc05d..000000000 --- a/source/l/mozjs60/patches/icu_sources_data-Write-command-output-to-our-stderr.patch +++ /dev/null @@ -1,34 +0,0 @@ -From: Simon McVittie -Date: Mon, 9 Oct 2017 09:23:14 +0100 -Subject: icu_sources_data: Write command output to our stderr - -Saying "See output in /tmp/foobar" is all very well for a developer -build, but on a buildd our /tmp is going to get thrown away after -the build. Just log the usual way instead. ---- - intl/icu_sources_data.py | 7 ++----- - 1 file changed, 2 insertions(+), 5 deletions(-) - -diff --git a/intl/icu_sources_data.py b/intl/icu_sources_data.py -index 8cf9290..7d2d983 100644 ---- a/intl/icu_sources_data.py -+++ b/intl/icu_sources_data.py -@@ -84,16 +84,13 @@ def update_sources(topsrcdir): - - def try_run(name, command, cwd=None, **kwargs): - try: -- with tempfile.NamedTemporaryFile(prefix=name, delete=False) as f: -- subprocess.check_call(command, cwd=cwd, stdout=f, -+ subprocess.check_call(command, cwd=cwd, stdout=sys.stderr, - stderr=subprocess.STDOUT, **kwargs) - except subprocess.CalledProcessError: -- print('''Error running "{}" in directory {} -- See output in {}'''.format(' '.join(command), cwd, f.name), -+ print('''Error running "{}" in directory {}'''.format(' '.join(command), cwd), - file=sys.stderr) - return False - else: -- os.unlink(f.name) - return True - - diff --git a/source/l/mozjs60/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch b/source/l/mozjs60/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch deleted file mode 100644 index 5c75a895d..000000000 --- a/source/l/mozjs60/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch +++ /dev/null @@ -1,26 +0,0 @@ -From: Simon McVittie -Date: Mon, 9 Oct 2017 09:22:12 +0100 -Subject: icu_sources_data.py: Decouple from Mozilla build system - -mozpack.path is a wrapper around os.path that normalizes path -separators on Windows, but on Unix we only have one path separator -so there's nothing to normalize. Avoid needing to import all of it. ---- - intl/icu_sources_data.py | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/intl/icu_sources_data.py b/intl/icu_sources_data.py -index 98c0ccb..8cf9290 100644 ---- a/intl/icu_sources_data.py -+++ b/intl/icu_sources_data.py -@@ -19,7 +19,9 @@ import subprocess - import sys - import tempfile - --from mozpack import path as mozpath -+# Close enough -+import os.path as mozpath -+mozpath.normsep = lambda p: p - - - def find_source_file(dir, filename): diff --git a/source/l/mozjs60/patches/init_patch.patch b/source/l/mozjs60/patches/init_patch.patch deleted file mode 100644 index 2c1db67c8..000000000 --- a/source/l/mozjs60/patches/init_patch.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/python/mozbuild/mozbuild/configure/__init__.py -+++ b/python/mozbuild/mozbuild/configure/__init__.py -@@ -421,7 +421,7 @@ - # All options should have been removed (handled) by now. - for arg in self._helper: - without_value = arg.split('=', 1)[0] -- raise InvalidOptionError('Unknown option: %s' % without_value) -+ # raise InvalidOptionError('Unknown option: %s' % without_value) - - # Run the execution queue - for func, args in self._execution_queue: - diff --git a/source/l/mozjs60/patches/tests-For-tests-that-are-skipped-on-64-bit-mips64-is-also.patch b/source/l/mozjs60/patches/tests-For-tests-that-are-skipped-on-64-bit-mips64-is-also.patch deleted file mode 100644 index d7ac4410b..000000000 --- a/source/l/mozjs60/patches/tests-For-tests-that-are-skipped-on-64-bit-mips64-is-also.patch +++ /dev/null @@ -1,41 +0,0 @@ -From: Simon McVittie -Date: Mon, 9 Oct 2017 09:46:31 +0100 -Subject: tests: For tests that are skipped on 64-bit, mips64 is also 64-bit - -mips64 is a 64-bit platform and a Debian release architecture. ---- - js/src/tests/non262/Array/regress-157652.js | 2 +- - js/src/tests/non262/Array/regress-330812.js | 2 +- - js/src/tests/non262/regress/regress-422348.js | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/js/src/tests/non262/Array/regress-157652.js b/js/src/tests/non262/Array/regress-157652.js -index 6916fe1..b21dcc3 100644 ---- a/js/src/tests/non262/Array/regress-157652.js -+++ b/js/src/tests/non262/Array/regress-157652.js -@@ -1,4 +1,4 @@ --// |reftest| skip-if(xulRuntime.XPCOMABI.match(/x86_64|aarch64|ppc64|ppc64le|s390x/)||Android) -- No test results -+// |reftest| skip-if(xulRuntime.XPCOMABI.match(/x86_64|aarch64|ppc64|ppc64le|s390x|mips64/)||Android) -- No test results - /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ - /* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this -diff --git a/js/src/tests/non262/Array/regress-330812.js b/js/src/tests/non262/Array/regress-330812.js -index c48f4c8..6b1ba2a 100644 ---- a/js/src/tests/non262/Array/regress-330812.js -+++ b/js/src/tests/non262/Array/regress-330812.js -@@ -1,4 +1,4 @@ --// |reftest| skip-if(xulRuntime.XPCOMABI.match(/x86_64|aarch64|ppc64|ppc64le|s390x/)||Android) -- No test results -+// |reftest| skip-if(xulRuntime.XPCOMABI.match(/x86_64|aarch64|ppc64|ppc64le|s390x|mips64/)||Android) -- No test results - /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ - /* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this -diff --git a/js/src/tests/non262/regress/regress-422348.js b/js/src/tests/non262/regress/regress-422348.js -index 2c28d5a..e94c397 100644 ---- a/js/src/tests/non262/regress/regress-422348.js -+++ b/js/src/tests/non262/regress/regress-422348.js -@@ -1,4 +1,4 @@ --// |reftest| skip-if(xulRuntime.XPCOMABI.match(/x86_64|aarch64|ppc64|ppc64le|s390x/)) -- On 64-bit, takes forever rather than throwing -+// |reftest| skip-if(xulRuntime.XPCOMABI.match(/x86_64|aarch64|ppc64|ppc64le|s390x|mips64/)) -- On 64-bit, takes forever rather than throwing - /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ - /* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this diff --git a/source/l/mozjs60/patches/tests-increase-timeout.patch b/source/l/mozjs60/patches/tests-increase-timeout.patch deleted file mode 100644 index 91f5fa76e..000000000 --- a/source/l/mozjs60/patches/tests-increase-timeout.patch +++ /dev/null @@ -1,22 +0,0 @@ -From: Adrian Bunk -Date: Tue, 3 Jul 2018 10:03:37 +0100 -Subject: Increase the test timeout for slower buildds - -Bug-Debian: https://bugs.debian.org/878284 ---- - js/src/Makefile.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/js/src/Makefile.in b/js/src/Makefile.in -index 4ac9f48..6ab5582 100644 ---- a/js/src/Makefile.in -+++ b/js/src/Makefile.in -@@ -72,7 +72,7 @@ check:: check-style check-masm check-js-msg check-opcode - - check-jstests: - $(wildcard $(RUN_TEST_PROGRAM)) $(PYTHON) -u $(srcdir)/tests/jstests.py \ -- --no-progress --format=automation --timeout 300 \ -+ --no-progress --format=automation --timeout 600 \ - $(JSTESTS_EXTRA_ARGS) \ - $(DIST)/bin/$(JS_SHELL_NAME)$(BIN_SUFFIX) - diff --git a/source/l/mozjs60/slack-desc b/source/l/mozjs60/slack-desc deleted file mode 100644 index 496f7cfa5..000000000 --- a/source/l/mozjs60/slack-desc +++ /dev/null @@ -1,20 +0,0 @@ -# HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line -# up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must -# make exactly 11 lines for the formatting to be correct. It's also -# customary to leave one space after the ':'. - - |-----handy-ruler------------------------------------------------------| -mozjs60: mozjs60 (Mozilla's JavaScript Engine) -mozjs60: -mozjs60: SpiderMonkey is Mozilla's JavaScript engine written in C/C++. It is -mozjs60: used in various Mozilla products (including Firefox) and is available -mozjs60: under MPL/GPL/LGPL tri-license. -mozjs60: -mozjs60: Homepage: -mozjs60: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey -mozjs60: -mozjs60: -mozjs60: -mozjs60: diff --git a/source/l/mozjs68/autoconf/autoconf-2.13-consolidated_fixes-1.patch b/source/l/mozjs68/autoconf/autoconf-2.13-consolidated_fixes-1.patch new file mode 100644 index 000000000..5e7b23113 --- /dev/null +++ b/source/l/mozjs68/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/l/mozjs68/autoconf/autoconf.build b/source/l/mozjs68/autoconf/autoconf.build new file mode 100755 index 000000000..05e53f1a5 --- /dev/null +++ b/source/l/mozjs68/autoconf/autoconf.build @@ -0,0 +1,81 @@ +#!/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=i486 ;; + 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 +# js52, since it somewhat inexplicably requires this ancient version: + +rm -rf $TMP/autoconf-tmp +mkdir -p $TMP/autoconf-tmp +# This will be at the beginning of the $PATH, so protect against nonsense +# happening in /tmp: +chmod 700 $TMP/autoconf-tmp +rm -rf $TMP/autoconf-tmp/* +mkdir -p $TMP/autoconf-tmp/usr + +./configure \ + --prefix=$TMP/autoconf-tmp/usr \ + --program-suffix=-2.13 \ + --infodir=$TMP/autoconf-tmp/usr/info \ + --mandir=$TMP/autoconf-tmp/usr/man \ + --build=$ARCH-slackware-linux || exit 1 + +make $NUMJOBS || make || exit 1 +make install || exit 1 + diff --git a/source/l/mozjs68/mozjs68.SlackBuild b/source/l/mozjs68/mozjs68.SlackBuild new file mode 100755 index 000000000..2f1a4bf37 --- /dev/null +++ b/source/l/mozjs68/mozjs68.SlackBuild @@ -0,0 +1,178 @@ +#!/bin/bash + +# Slackware build script for SpiderMonkey + +# Copyright 2011, 2018 Robby Workman, Tuscaloosa, Alabama, USA +# Copyright 2019, 2020 Patrick J. Volkerding, Sebeka, MN, 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. + +cd $(dirname $0) ; CWD=$(pwd) + +PKGNAM=mozjs68 +SRCNAME=firefox +VERSION=68.11.0esr +BUILD=${BUILD:-1} + + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i586 ;; + arm*) ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) ARCH=$( uname -m ) ;; + esac +fi + +# If the variable PRINT_PACKAGE_NAME is set, then this script will report what +# the name of the created package would be, and then exit. This information +# could be useful to other scripts. +if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then + echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz" + exit 0 +fi + +NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "} + +TMP=${TMP:-/tmp} +PKG=$TMP/package-$PKGNAM + +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +rm -rf $PKG +mkdir -p $TMP $PKG +cd $TMP +rm -rf $SRCNAME-$VERSION ; rm -rf $SRCNAME-$(echo $VERSION | cut -f 1 -d e) +# Unpack this in a subdirectory to prevent changing permissions on /tmp: +rm -rf firefox-unpack +mkdir firefox-unpack +cd firefox-unpack +tar xvf $CWD/$SRCNAME-$VERSION.source.tar.?z || exit 1 +mv * .. +cd .. +rm -rf firefox-unpack +cd $SRCNAME-$(echo $VERSION | cut -f 1 -d e) || cd $SRCNAME-$VERSION || 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 {} \+ + +# We need to use the incredibly ancient autoconf-2.13 for this :/ +( cd $CWD/autoconf ; ./autoconf.build ) +PATH=$TMP/autoconf-tmp/usr/bin:$PATH + +# Patches from Fedora: +zcat $CWD/patches/fix-soname.patch.gz | patch -p1 --verbose || exit 1 +zcat $CWD/patches/copy-headers.patch.gz | patch -p1 --verbose || exit 1 +zcat $CWD/patches/tests-increase-timeout.patch.gz | patch -p1 --verbose || exit 1 +zcat $CWD/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch.gz | patch -p1 --verbose || exit 1 +zcat $CWD/patches/icu_sources_data-Write-command-output-to-our-stderr.patch.gz | patch -p1 --verbose || exit 1 +zcat $CWD/patches/emitter.patch.gz | patch -p1 --verbose || exit 1 +zcat $CWD/patches/emitter_test.patch.gz | patch -p1 --verbose || exit 1 +zcat $CWD/patches/init_patch.patch.gz | patch -p1 --verbose || exit 1 +zcat $CWD/patches/spidermonkey_checks_disable.patch.gz | patch -p1 --verbose || exit 1 +zcat $CWD/patches/Remove-unused-LLVM-and-Rust-build-dependencies.patch.gz | patch -p1 --verbose || exit 1 +#zcat $CWD/patches/encies.armv7_disable_WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS.patch.gz | patch -p1 --verbose || exit 1 +zcat $CWD/patches/jstests_python-3.patch.gz | patch -p1 --verbose || exit 1 + +# DON'T APPLY THIS ONE UNLESS YOU ENJOY A FAILED COMPILE: +#zcat $CWD/patches/build-icu-big-endian.patch.gz | patch -p1 --verbose || exit 1 + +# Remove bundled security libraries so that we don't link to them: +rm -rf security + +# Remove bundled zlib directory and use system version: +rm -rf modules/zlib + +cd js/src + +# We need to do this because patches above touch configure.in: +autoconf-2.13 + +CFLAGS+="$SLKCFLAGS -fno-delete-null-pointer-checks -fno-strict-aliasing -fno-tree-vrp " \ +CXXFLAGS+="$SLKCFLAGS -fno-delete-null-pointer-checks -fno-strict-aliasing -fno-tree-vrp " \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --mandir=/usr/man \ + --without-system-icu \ + --enable-posix-nspr-emulation \ + --with-system-zlib \ + --enable-tests \ + --disable-strip \ + --with-intl-api \ + --enable-readline \ + --enable-shared-js \ + --disable-optimize \ + --enable-pie \ + --disable-jemalloc \ + --build=$ARCH-slackware-linux \ + +make $NUMJOBS || make || exit 1 +make install DESTDIR=$PKG || exit 1 + +# No need for the huge static library: +rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libjs_static.* + +# Don't ship -config: +rm -f $PKG/usr/bin/js*-config + +# Rename shared library to have a proper soname: +mv $PKG/usr/lib${LIBDIRSUFFIX}/libmozjs-68.so $PKG/usr/lib${LIBDIRSUFFIX}/libmozjs-68.so.0.0.0 +( cd $PKG/usr/lib${LIBDIRSUFFIX} + ln -sf libmozjs-68.so.0.0.0 libmozjs-68.so.0 + ln -sf libmozjs-68.so.0 libmozjs-68.so +) + +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION +cp ../../README.txt README.html $PKG/usr/doc/$PKGNAM-$VERSION + +# If there's a ChangeLog, installing at least part of the recent history +# is useful, but don't let it get totally out of control: +if [ -r ChangeLog ]; then + DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION) + cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog + touch -r ChangeLog $DOCSDIR/ChangeLog +fi + +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz diff --git a/source/l/mozjs68/patches/Don-t-run-non262-extensions-clone-errors.js-on-s390x.patch b/source/l/mozjs68/patches/Don-t-run-non262-extensions-clone-errors.js-on-s390x.patch new file mode 100644 index 000000000..f493643a8 --- /dev/null +++ b/source/l/mozjs68/patches/Don-t-run-non262-extensions-clone-errors.js-on-s390x.patch @@ -0,0 +1,15 @@ +Index: firefox-68.5.0/js/src/tests/jstests.list +=================================================================== +--- firefox-68.0/js/src/tests/jstests.list ++++ firefox-68.0/js/src/tests/jstests.list +@@ -493,6 +493,10 @@ skip script test262/language/expressions + skip script test262/language/statements/class/elements/derived-cls-direct-eval-err-contains-superproperty-1.js + skip script test262/language/statements/class/elements/derived-cls-direct-eval-err-contains-superproperty-2.js + ++# Crashes on s390x and ppc64, avoid it ++# ++skip-if(xulRuntime.XPCOMABI.match(/s390x|ppc64-/)) script non262/extensions/clone-errors.js ++ + + ########################################################### + # Tests disabled due to issues in test262 importer script # diff --git a/source/l/mozjs68/patches/Remove-unused-LLVM-and-Rust-build-dependencies.patch b/source/l/mozjs68/patches/Remove-unused-LLVM-and-Rust-build-dependencies.patch new file mode 100644 index 000000000..d98b577eb --- /dev/null +++ b/source/l/mozjs68/patches/Remove-unused-LLVM-and-Rust-build-dependencies.patch @@ -0,0 +1,72 @@ +Description: Remove unused LLVM and Rust build dependencies + Since the Javascript engine is normally part of Firefox, its build + system has dependencies on the LLVM and Rust toolchains. This limits + the number of architectures which mozjs68 can be built on. + . + It turns out, however, that neither LLVM nor Rust are used when mozjs68 + is being built and these build dependencies are therefore not necessary. + . + This patch removes them and allows mozjs68 to be built on any architecture. + . +Author: John Paul Adrian Glaubitz +Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=959144 +Forwarded: no +Last-Update: 2020-04-30 + +Index: mozjs68-68.6.0/js/moz.configure +=================================================================== +--- mozjs68-68.6.0.orig/js/moz.configure ++++ mozjs68-68.6.0/js/moz.configure +@@ -18,11 +18,6 @@ def building_js(build_project): + option(env='JS_STANDALONE', default=building_js, + help='Reserved for internal use') + +-include('../build/moz.configure/rust.configure', +- when='--enable-compile-environment') +-include('../build/moz.configure/bindgen.configure', +- when='--enable-compile-environment') +- + @depends('JS_STANDALONE') + def js_standalone(value): + if value: +Index: mozjs68-68.6.0/moz.configure +=================================================================== +--- mozjs68-68.6.0.orig/moz.configure ++++ mozjs68-68.6.0/moz.configure +@@ -598,36 +598,6 @@ set_config('MAKENSISU_FLAGS', nsis_flags + + check_prog('7Z', ('7z', '7za'), allow_missing=True, when=target_is_windows) + +- +-@depends(host_c_compiler, c_compiler, bindgen_config_paths) +-def llvm_objdump(host_c_compiler, c_compiler, bindgen_config_paths): +- clang = None +- for compiler in (host_c_compiler, c_compiler): +- if compiler and compiler.type == 'clang': +- clang = compiler.compiler +- break +- elif compiler and compiler.type == 'clang-cl': +- clang = os.path.join(os.path.dirname(compiler.compiler), 'clang') +- break +- +- if not clang and bindgen_config_paths: +- clang = bindgen_config_paths.clang_path +- llvm_objdump = 'llvm-objdump' +- if clang: +- out = check_cmd_output(clang, '--print-prog-name=llvm-objdump', +- onerror=lambda: None) +- if out: +- llvm_objdump = out.rstrip() +- return (llvm_objdump,) +- +- +-llvm_objdump = check_prog('LLVM_OBJDUMP', llvm_objdump, what='llvm-objdump', +- when='--enable-compile-environment', +- paths=toolchain_search_path) +- +-add_old_configure_assignment('LLVM_OBJDUMP', llvm_objdump) +- +- + # Please do not add configure checks from here on. + + # Fallthrough to autoconf-based configure diff --git a/source/l/mozjs68/patches/armv7_disable_WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS.patch b/source/l/mozjs68/patches/armv7_disable_WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS.patch new file mode 100644 index 000000000..0cb26ac76 --- /dev/null +++ b/source/l/mozjs68/patches/armv7_disable_WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS.patch @@ -0,0 +1,10 @@ +--- firefox-68.0/js/src/wasm/WasmSignalHandlers.cpp ++++ firefox-68.0/js/src/wasm/WasmSignalHandlers.cpp +@@ -243,7 +243,7 @@ + // If you run into compile problems on a tier-3 platform, you can disable the + // emulation here. + +-#if defined(__linux__) && defined(__arm__) ++#if 0 && defined(__linux__) && defined(__arm__) + # define WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS + #endif diff --git a/source/l/mozjs68/patches/build-icu-big-endian.patch b/source/l/mozjs68/patches/build-icu-big-endian.patch new file mode 100644 index 000000000..70a54817d --- /dev/null +++ b/source/l/mozjs68/patches/build-icu-big-endian.patch @@ -0,0 +1,12 @@ +diff -up firefox-68.0/build/autoconf/icu.m4.icu firefox-68.0/build/autoconf/icu.m4 +--- firefox-68.0/build/autoconf/icu.m4.icu 2018-04-24 13:13:03.938961958 +0200 ++++ firefox-68.0/build/autoconf/icu.m4 2018-04-24 13:14:44.472714375 +0200 +@@ -78,7 +78,7 @@ + # TODO: the l is actually endian-dependent + # We could make this set as 'l' or 'b' for little or big, respectively, + # but we'd need to check in a big-endian version of the file. +- ICU_DATA_FILE="icudt${version}l.dat" ++ ICU_DATA_FILE="icudt${version}b.dat" + fi + + AC_SUBST(MOZ_ICU_VERSION) diff --git a/source/l/mozjs68/patches/copy-headers.patch b/source/l/mozjs68/patches/copy-headers.patch new file mode 100644 index 000000000..aec3b10a2 --- /dev/null +++ b/source/l/mozjs68/patches/copy-headers.patch @@ -0,0 +1,29 @@ +From: Rico Tzschichholz +Date: Wed, 5 Jul 2017 22:45:59 -0700 +Subject: build: Copy headers on install instead of symlinking + +Patch ported forward to mozjs52 by Philip Chimento +. +--- + python/mozbuild/mozbuild/backend/recursivemake.py | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/python/mozbuild/mozbuild/backend/recursivemake.py b/python/mozbuild/mozbuild/backend/recursivemake.py +index dd9020d..6918ef8 100644 +--- a/python/mozbuild/mozbuild/backend/recursivemake.py ++++ b/python/mozbuild/mozbuild/backend/recursivemake.py +@@ -1427,11 +1427,11 @@ class RecursiveMakeBackend(CommonBackend): + raise Exception("Wildcards are only supported in the filename part of " + "srcdir-relative or absolute paths.") + +- install_manifest.add_pattern_link(basepath, wild, path) ++ install_manifest.add_pattern_copy(basepath, wild, path) + else: +- install_manifest.add_pattern_link(f.srcdir, f, path) ++ install_manifest.add_pattern_copy(f.srcdir, f, path) + else: +- install_manifest.add_link(f.full_path, dest) ++ install_manifest.add_copy(f.full_path, dest) + else: + install_manifest.add_optional_exists(dest) + backend_file.write('%s_FILES += %s\n' % ( diff --git a/source/l/mozjs68/patches/emitter.patch b/source/l/mozjs68/patches/emitter.patch new file mode 100644 index 000000000..42545534a --- /dev/null +++ b/source/l/mozjs68/patches/emitter.patch @@ -0,0 +1,14 @@ +--- a/python/mozbuild/mozbuild/frontend/emitter.py ++++ b/python/mozbuild/mozbuild/frontend/emitter.py +@@ -1195,11 +1195,6 @@ + raise SandboxValidationError('Path specified in LOCAL_INCLUDES ' + 'is a filename, but a directory is required: %s ' + '(resolved to %s)' % (local_include, full_path), context) +- if (full_path == context.config.topsrcdir or +- full_path == context.config.topobjdir): +- raise SandboxValidationError('Path specified in LOCAL_INCLUDES ' +- '(%s) resolves to the topsrcdir or topobjdir (%s), which is ' +- 'not allowed' % (local_include, full_path), context) + include_obj = LocalInclude(context, local_include) + local_includes.append(include_obj.path.full_path) + yield include_obj diff --git a/source/l/mozjs68/patches/emitter_test.patch b/source/l/mozjs68/patches/emitter_test.patch new file mode 100644 index 000000000..59366d360 --- /dev/null +++ b/source/l/mozjs68/patches/emitter_test.patch @@ -0,0 +1,27 @@ +--- a/python/mozbuild/mozbuild/test/frontend/test_emitter.py ++++ b/python/mozbuild/mozbuild/test/frontend/test_emitter.py +@@ -1051,24 +1051,6 @@ + + self.assertEqual(local_includes, expected) + +- def test_local_includes_invalid(self): +- """Test that invalid LOCAL_INCLUDES are properly detected.""" +- reader = self.reader('local_includes-invalid/srcdir') +- +- with self.assertRaisesRegexp( +- SandboxValidationError, +- 'Path specified in LOCAL_INCLUDES.*resolves to the ' +- 'topsrcdir or topobjdir'): +- objs = self.read_topsrcdir(reader) +- +- reader = self.reader('local_includes-invalid/objdir') +- +- with self.assertRaisesRegexp( +- SandboxValidationError, +- 'Path specified in LOCAL_INCLUDES.*resolves to the ' +- 'topsrcdir or topobjdir'): +- objs = self.read_topsrcdir(reader) +- + def test_local_includes_file(self): + """Test that a filename can't be used in LOCAL_INCLUDES.""" + reader = self.reader('local_includes-filename') diff --git a/source/l/mozjs68/patches/fix-soname.patch b/source/l/mozjs68/patches/fix-soname.patch new file mode 100644 index 000000000..fc8052a88 --- /dev/null +++ b/source/l/mozjs68/patches/fix-soname.patch @@ -0,0 +1,25 @@ +From: "Laszlo Boszormenyi (GCS)" +Date: Fri, 2 May 2014 22:20:45 +0200 +Subject: fix soname + +Add soname switch to linker, regardless of Operating System + +Bug-Debian: http://bugs.debian.org/746705 +--- + config/rules.mk | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/config/rules.mk b/config/rules.mk +index eb86b0c..1bb3988 100644 +--- a/config/rules.mk ++++ b/config/rules.mk +@@ -359,6 +359,9 @@ endif + endif + EXTRA_DEPS += $(SYMBOLS_FILE) + endif ++ ++EXTRA_DSO_LDOPTS += -Wl,-soname,lib$(JS_LIBRARY_NAME).so.0 ++ + # + # GNU doesn't have path length limitation + # diff --git a/source/l/mozjs68/patches/icu_sources_data-Write-command-output-to-our-stderr.patch b/source/l/mozjs68/patches/icu_sources_data-Write-command-output-to-our-stderr.patch new file mode 100644 index 000000000..e2ed48454 --- /dev/null +++ b/source/l/mozjs68/patches/icu_sources_data-Write-command-output-to-our-stderr.patch @@ -0,0 +1,34 @@ +From: Simon McVittie +Date: Mon, 9 Oct 2017 09:23:14 +0100 +Subject: icu_sources_data: Write command output to our stderr + +Saying "See output in /tmp/foobar" is all very well for a developer +build, but on a buildd our /tmp is going to get thrown away after +the build. Just log the usual way instead. +--- + intl/icu_sources_data.py | 7 ++----- + 1 file changed, 2 insertions(+), 5 deletions(-) + +diff --git a/intl/icu_sources_data.py b/intl/icu_sources_data.py +index 8cf9290..7d2d983 100644 +--- a/intl/icu_sources_data.py ++++ b/intl/icu_sources_data.py +@@ -187,16 +187,13 @@ + + def try_run(name, command, cwd=None, **kwargs): + try: +- with tempfile.NamedTemporaryFile(prefix=name, delete=False) as f: +- subprocess.check_call(command, cwd=cwd, stdout=f, +- stderr=subprocess.STDOUT, **kwargs) ++ subprocess.check_call(command, cwd=cwd, stdout=sys.stderr, ++ stderr=subprocess.STDOUT, **kwargs) + except subprocess.CalledProcessError: +- print('''Error running "{}" in directory {} +- See output in {}'''.format(' '.join(command), cwd, f.name), +- file=sys.stderr) ++ print('''Error running "{}" in directory {}'''.format(' '.join(command), cwd), ++ file=sys.stderr) + return False + else: +- os.unlink(f.name) + return True diff --git a/source/l/mozjs68/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch b/source/l/mozjs68/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch new file mode 100644 index 000000000..a853a16d1 --- /dev/null +++ b/source/l/mozjs68/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch @@ -0,0 +1,26 @@ +From: Simon McVittie +Date: Mon, 9 Oct 2017 09:22:12 +0100 +Subject: icu_sources_data.py: Decouple from Mozilla build system + +mozpack.path is a wrapper around os.path that normalizes path +separators on Windows, but on Unix we only have one path separator +so there's nothing to normalize. Avoid needing to import all of it. +--- + intl/icu_sources_data.py | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/intl/icu_sources_data.py b/intl/icu_sources_data.py +index 98c0ccb..8cf9290 100644 +--- a/intl/icu_sources_data.py ++++ b/intl/icu_sources_data.py +@@ -21,7 +21,9 @@ + import sys + import tempfile + +-from mozpack import path as mozpath ++# Close enough ++import os.path as mozpath ++mozpath.normsep = lambda p: p + + # The following files have been determined to be dead/unused by a + # semi-automated analysis. You can just remove any of the files below diff --git a/source/l/mozjs68/patches/init_patch.patch b/source/l/mozjs68/patches/init_patch.patch new file mode 100644 index 000000000..fd09eb797 --- /dev/null +++ b/source/l/mozjs68/patches/init_patch.patch @@ -0,0 +1,13 @@ +--- a/python/mozbuild/mozbuild/configure/__init__.py ++++ b/python/mozbuild/mozbuild/configure/__init__.py +@@ -473,8 +473,8 @@ + msg = 'Unknown option: %s' % without_value + if self._help: + self._logger.warning(msg) +- else: +- raise InvalidOptionError(msg) ++ #else: ++ # raise InvalidOptionError(msg) + + # Run the execution queue + for func, args in self._execution_queue: diff --git a/source/l/mozjs68/patches/jstests_python-3.patch b/source/l/mozjs68/patches/jstests_python-3.patch new file mode 100644 index 000000000..484a02c68 --- /dev/null +++ b/source/l/mozjs68/patches/jstests_python-3.patch @@ -0,0 +1,57 @@ +From e75a1c531767f3efd158fd8309084cf5157307be Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= +Date: Tue, 5 Nov 2019 19:14:38 +0100 +Subject: [PATCH] Python 3 + +--- + js/src/jit-test/jit_test.py | 2 +- + js/src/tests/lib/manifest.py | 5 ++++- + js/src/tests/lib/tasks_unix.py | 3 +++ + 3 files changed, 8 insertions(+), 2 deletions(-) + +diff --git a/js/src/jit-test/jit_test.py b/js/src/jit-test/jit_test.py +index 8fcd0c5..f51c544 100755 +--- a/js/src/jit-test/jit_test.py ++++ b/js/src/jit-test/jit_test.py +@@ -138,7 +138,7 @@ def main(argv): + help='With --write-failures=FILE, additionally write the' + ' output of failed tests to [FILE]') + op.add_option('--jitflags', dest='jitflags', default='none', +- choices=valid_jitflags(), ++ choices=list(valid_jitflags()), + help='IonMonkey option combinations. One of %s.' % ', '.join(valid_jitflags())) + op.add_option('--ion', dest='jitflags', action='store_const', const='ion', + help='Run tests once with --ion-eager and once with' +diff --git a/js/src/tests/lib/manifest.py b/js/src/tests/lib/manifest.py +index 617f0f1..f54cc1e 100644 +--- a/js/src/tests/lib/manifest.py ++++ b/js/src/tests/lib/manifest.py +@@ -105,7 +105,10 @@ class XULInfoTester: + '-e', self.js_prologue, + '-e', 'print(!!({}))'.format(cond) + ] +- p = Popen(cmd, stdin=PIPE, stdout=PIPE, stderr=PIPE) ++ try: ++ p = Popen(cmd, stdin=PIPE, stdout=PIPE, stderr=PIPE, encoding="utf-8") ++ except TypeError: ++ p = Popen(cmd, stdin=PIPE, stdout=PIPE, stderr=PIPE) + out, err = p.communicate() + if out in ('true\n', 'true\r\n'): + ans = True +diff --git a/js/src/tests/lib/tasks_unix.py b/js/src/tests/lib/tasks_unix.py +index 40528b8..5edfe92 100644 +--- a/js/src/tests/lib/tasks_unix.py ++++ b/js/src/tests/lib/tasks_unix.py +@@ -182,6 +182,9 @@ def reap_zombies(tasks, timeout): + if os.WIFSIGNALED(status): + returncode = -os.WTERMSIG(status) + ++ ended.out=[x.decode('utf-8') for x in ended.out] ++ ended.err=[x.decode('utf-8') for x in ended.err] ++ + finished.append( + TestOutput( + ended.test, +-- +2.23.0 + diff --git a/source/l/mozjs68/patches/spidermonkey_checks_disable.patch b/source/l/mozjs68/patches/spidermonkey_checks_disable.patch new file mode 100644 index 000000000..14ba0ad71 --- /dev/null +++ b/source/l/mozjs68/patches/spidermonkey_checks_disable.patch @@ -0,0 +1,10 @@ +--- a/config/run_spidermonkey_checks.py ++++ b/config/run_spidermonkey_checks.py +@@ -11,5 +11,5 @@ + for script in scripts: + retcode = subprocess.call( + [sys.executable, script], cwd=buildconfig.topsrcdir) +- if retcode != 0: +- raise Exception(script + " failed") ++ #if retcode != 0: ++ # raise Exception(script + " failed") diff --git a/source/l/mozjs68/patches/spidermonkey_style_check_disable_s390x.patch b/source/l/mozjs68/patches/spidermonkey_style_check_disable_s390x.patch new file mode 100644 index 000000000..690c1c57d --- /dev/null +++ b/source/l/mozjs68/patches/spidermonkey_style_check_disable_s390x.patch @@ -0,0 +1,11 @@ +--- a/config/check_spidermonkey_style.py ++++ b/config/check_spidermonkey_style.py + +@@ -766,6 +766,7 @@ + + + def main(): ++ sys.exit(0) + if sys.argv[1:] == ["--fixup"]: + # Sort #include directives in-place. Fixup mode doesn't solve + # all possible silliness that the script checks for; it's just a diff --git a/source/l/mozjs68/patches/tests-increase-timeout.patch b/source/l/mozjs68/patches/tests-increase-timeout.patch new file mode 100644 index 000000000..91f5fa76e --- /dev/null +++ b/source/l/mozjs68/patches/tests-increase-timeout.patch @@ -0,0 +1,22 @@ +From: Adrian Bunk +Date: Tue, 3 Jul 2018 10:03:37 +0100 +Subject: Increase the test timeout for slower buildds + +Bug-Debian: https://bugs.debian.org/878284 +--- + js/src/Makefile.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/js/src/Makefile.in b/js/src/Makefile.in +index 4ac9f48..6ab5582 100644 +--- a/js/src/Makefile.in ++++ b/js/src/Makefile.in +@@ -72,7 +72,7 @@ check:: check-style check-masm check-js-msg check-opcode + + check-jstests: + $(wildcard $(RUN_TEST_PROGRAM)) $(PYTHON) -u $(srcdir)/tests/jstests.py \ +- --no-progress --format=automation --timeout 300 \ ++ --no-progress --format=automation --timeout 600 \ + $(JSTESTS_EXTRA_ARGS) \ + $(DIST)/bin/$(JS_SHELL_NAME)$(BIN_SUFFIX) + diff --git a/source/l/mozjs68/slack-desc b/source/l/mozjs68/slack-desc new file mode 100644 index 000000000..496f7cfa5 --- /dev/null +++ b/source/l/mozjs68/slack-desc @@ -0,0 +1,20 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +mozjs60: mozjs60 (Mozilla's JavaScript Engine) +mozjs60: +mozjs60: SpiderMonkey is Mozilla's JavaScript engine written in C/C++. It is +mozjs60: used in various Mozilla products (including Firefox) and is available +mozjs60: under MPL/GPL/LGPL tri-license. +mozjs60: +mozjs60: Homepage: +mozjs60: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey +mozjs60: +mozjs60: +mozjs60: +mozjs60: diff --git a/source/l/polkit/polkit.SlackBuild b/source/l/polkit/polkit.SlackBuild index 6501e1f6f..3182b9958 100755 --- a/source/l/polkit/polkit.SlackBuild +++ b/source/l/polkit/polkit.SlackBuild @@ -2,7 +2,7 @@ # Copyright 2009, 2011, 2015 Robby Workman, Northport, Alabama, USA # Copyright 2010 Eric Hameleers, Eindhoven, NL -# Copyright 2009, 2010, 2011, 2012, 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2009, 2010, 2011, 2012, 2013, 2018, 2020 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # Redistribution and use of this script, with or without modification, is @@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=polkit VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-3} +BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -98,6 +98,10 @@ else SHADOW_OPTIONS="--with-authfw=shadow" fi +if [ ! -r configure ]; then + NOCONFIGURE=1 ./autogen.sh +fi + CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ ./configure \ -- cgit v1.2.3