From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pl0-f66.google.com (mail-pl0-f66.google.com [209.85.160.66]) by mail.openembedded.org (Postfix) with ESMTP id C40E974603 for ; Tue, 17 Jul 2018 00:43:20 +0000 (UTC) Received: by mail-pl0-f66.google.com with SMTP id s17-v6so6614228plp.7 for ; Mon, 16 Jul 2018 17:43:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:organization:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=8eBsGg6u7ztiP4ZrQP0HLDz1qdtW2MJ4ch7mlQsd/qg=; b=lfQI0H4sGVErM1IAjht8ngXj8kWeEFSPLBbWsNWMcP/xiVOoazRwtx8DIyDgdQaIIv 10BR4qSCbM3nXU0Y9oN21CB2I7Bgt8XgXQEwAoluRFVLr2WCPioG8Ri48+jLGzjePti+ qHcfSia5Np0bac9bRm6KuwVyJTm2tWMRxYLjjiljphqPjtoc6TgQVOB8XHzjwylitRmG IMulhJQykb77AVa0IvRhONqS8a2Y32RP1xGfh2RzbN1jTy41+gyl0R8mElCav//Vkj/6 I8JPkH+vhti4lKNGAQsY0pISBUOFgbZj8qF5F6Y07M9h8XOScTVnYPrJ8Cthi00G8foz oCPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:organization :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=8eBsGg6u7ztiP4ZrQP0HLDz1qdtW2MJ4ch7mlQsd/qg=; b=kkf3E5Vqp0304Ew90rXAYFnaYkuomff/fi/g+x9juB04PTBkSDJjId1JzMI2rLaJiO Bza6+lXnBEAz/zWetcNGDLGqXhNZhHxMWjS7e1Y2Q5YprYCzTv7XlpugfiKj8YMKvwgo hCYeh1sTlJmj8UuH39+Bgnc/FY4Tl/PfN2SLcsLoZP2x0uWSG7QdMC8l+BLHEmAQ7X9G KlCVcUFoMeRd3FaFEf7OpGb+AmD1rNRz4+ZHpRO5UQAogbTnY85GFNPFRoFs+vDIACPb Vg8/X6GDqnQPQsXO8THlHE5ezyYxUFkrkRlZIP0ZQBq9HimSIdLqCjvAj9eNXCk6Wfqf YRgw== X-Gm-Message-State: AOUpUlH8DMzBlivAVwyvibyGGYNtL9U87V1YBnyE2BE8UNdYKUeCfB3k UcoDHssfmM1T2jk63crFyHwEanub X-Google-Smtp-Source: AAOMgpdtmfM6NQxZBqBb5cNaAl5IzSsjias5w3A1l6MhUmaptO5wHDuAX/2/Lvoxzs/NRWfJ0p63dQ== X-Received: by 2002:a17:902:22e:: with SMTP id 43-v6mr18999047plc.82.1531788200472; Mon, 16 Jul 2018 17:43:20 -0700 (PDT) Received: from hermes.local ([2601:646:877f:9499:7d41:3be:d05:72ba]) by smtp.gmail.com with ESMTPSA id 84-v6sm68531153pfj.33.2018.07.16.17.43.18 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 16 Jul 2018 17:43:19 -0700 (PDT) To: Hongxu Jia , Martin.Jansa@gmail.com, akuster808@gmail.com References: <1531497317-26576-2-git-send-email-hongxu.jia@windriver.com> <1531707282-1059-1-git-send-email-hongxu.jia@windriver.com> From: Khem Raj Organization: HIMVIS LLC Message-ID: Date: Mon, 16 Jul 2018 17:43:17 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:60.0) Gecko/20100101 Thunderbird/60.0 MIME-Version: 1.0 In-Reply-To: <1531707282-1059-1-git-send-email-hongxu.jia@windriver.com> Cc: openembedded-devel@lists.openembedded.org Subject: Re: [PATCH V2] mozjs: 17.0.0 -> 52.8.1 X-BeenThere: openembedded-devel@lists.openembedded.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Using the OpenEmbedded metadata to build Distributions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Jul 2018 00:43:20 -0000 Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit On 7/15/18 7:14 PM, Hongxu Jia wrote: > - Refactor recipe 52.8.1 > 0001 ~ 0006 > > - Rebase patches to 52.8.1; > 0001-js.pc.in-do-not-include-RequiredDefines.h-for-depend.patch > 0010-fix-cross-compilation-on-i586-targets.patch' > > - Drop 0001-regenerate-configure.patch and everything works well > > - Drop Manually_mmap_heap_memory_esr17.patch which is backported > > - Drop obsolete patches > 0001-compare-the-first-character-of-string-to-be-null-or-.patch > 0001-mozjs17.0.0-fix-the-compile-bug-of-powerpc.patch > 0002-Move-JS_BYTES_PER_WORD-out-of-config.h.patch > 0004-mozbug746112-no-decommit-on-large-pages.patch > 0005-aarch64-64k-page.patch > fix_milestone_compile_issue.patch > fix-the-compile-error-of-powerpc64.patch > Update-Double-Conversion.patch and Update-the-double-conversion-update-script.patch > > - Set DISABLE_STATIC = "" to build without option `--disable-static' > > - Remove ARM_INSTRUCTION_SET = "arm" which built with humb1 specific on > qemuarm successfully. this does not seem to be so. Please reintroduce ARM_INSTRUCTION_SET_armv5 = "arm" ARM_INSTRUCTION_SET_armv4 = "arm" and send v3 The fail logs | /home/jenkins/oe/world/oe-build/build/tmpfs/work/armv5te-bec-linux-gnueabi/mozjs/52.8.1-r0/mozjs-52.8.1/config/rules.mk:951: recipe for target 'Unified_cpp_js_src1.o' failed | make[3]: *** [Unified_cpp_js_src1.o] Error 1 | /home/jenkins/oe/world/oe-build/build/tmpfs/work/armv5te-bec-linux-gnueabi/mozjs/52.8.1-r0/mozjs-52.8.1/config/rules.mk:951: recipe for target 'Unified_cpp_js_src16.o' failed | make[3]: *** [Unified_cpp_js_src16.o] Error 1 | {standard input}: Assembler messages: | {standard input}:52: Error: shifts in CMP/MOV instructions are only supported in unified syntax -- `mov r1,r3,LSR#20' | {standard input}:53: Error: unshifted register required -- `bic r1,r1,#(1<<11)' | {standard input}:54: Error: unshifted register required -- `orr r3,r3,#(1<<20)' | {standard input}:56: Error: instruction not supported in Thumb16 mode -- `subs r1,r1,#0x300' | {standard input}:58: Error: instruction not supported in Thumb16 mode -- `subs r5,r1,#52' | {standard input}:60: Error: unshifted register required -- `bic r4,r5,#0xff' | {standard input}:61: Error: unshifted register required -- `orr r5,r5,r4,LSR#3' | {standard input}:62: Error: shifts in CMP/MOV instructions are only supported in unified syntax -- `mov r2,r2,LSL r5' | {standard input}:65: Error: cannot honor width suffix -- `rsb r5,r1,#52' | {standard input}:66: Error: shifts in CMP/MOV instructions are only supported in unified syntax -- `mov r2,r2,LSR r5' | {standard input}:68: Error: instruction not supported in Thumb16 mode -- `subs r5,r1,#31' | {standard input}:69: Error: shifts in CMP/MOV instructions are only supported in unified syntax -- `mov r1,r3,LSL#11' | {standard input}:71: Error: unshifted register required -- `bic r4,r5,#0xff' | {standard input}:72: Error: unshifted register required -- `orr r5,r5,r4,LSR#3' | {standard input}:73: Error: shifts in CMP/MOV instructions are only supported in unified syntax -- `mov r4,r1,LSL r5' | {standard input}:76: Error: cannot honor width suffix -- `rsb r5,r5,#0' | {standard input}:77: Error: shifts in CMP/MOV instructions are only supported in unified syntax -- `mov r4,r1,LSR r5' | {standard input}:80: Error: unshifted register required -- `eor r2,r2,r3,ASR#31' | {standard input}:81: Error: unshifted register required -- `add r0,r2,r3,LSR#31' | {standard input}: Assembler messages: | {standard input}:98604: Error: invalid immediate: 983040 is out of range | {standard input}:98604: Error: value of 983040 too large for field of 2 bytes at 31410 | {standard input}:98636: Error: invalid immediate: 983040 is out of range | {standard input}:98636: Error: value of 983040 too large for field of 2 bytes at 31436 | {standard input}:98674: Error: invalid immediate: 983040 is out of range | {standard input}:98674: Error: value of 983040 too large for field of 2 bytes at 31456 | {standard input}:98985: Error: invalid immediate: 983040 is out of range | {standard input}:98985: Error: value of 983040 too large for field of 2 bytes at 31586 | {standard input}:99015: Error: invalid immediate: 983040 is out of range | {standard input}:99015: Error: value of 983040 too large for field of 2 bytes at 31612 > > - Set musl patch (0006-support-musl.patch) with musl override. > > Signed-off-by: Hongxu Jia > --- > ...-first-character-of-string-to-be-null-or-.patch | 32 - > .../0001-do-not-create-python-environment.patch | 91 + > ...-not-include-RequiredDefines.h-for-depend.patch | 30 +- > ...ozjs17.0.0-fix-the-compile-bug-of-powerpc.patch | 36 - > .../mozjs/mozjs/0001-regenerate-configure.patch | 3238 -------------------- > ...02-Move-JS_BYTES_PER_WORD-out-of-config.h.patch | 75 - > .../mozjs/mozjs/0002-fix-cannot-find-link.patch | 34 + > ...workaround-autoconf-2.13-detection-failed.patch | 28 + > ...se-autoconf-2.13-to-refresh-old.configure.patch | 42 + > ...4-mozbug746112-no-decommit-on-large-pages.patch | 103 - > .../mozjs/mozjs/0005-aarch64-64k-page.patch | 44 - > .../mozjs/0005-fix-do_compile-failed-on-mips.patch | 38 + > .../mozjs/mozjs/0006-support-musl.patch | 158 + > ...010-fix-cross-compilation-on-i586-targets.patch | 39 +- > .../mozjs/Manually_mmap_heap_memory_esr17.patch | 112 - > .../mozjs/mozjs/Update-Double-Conversion.patch | 1732 ----------- > ...pdate-the-double-conversion-update-script.patch | 175 -- > .../mozjs/fix-the-compile-error-of-powerpc64.patch | 18 - > .../mozjs/mozjs/fix_milestone_compile_issue.patch | 20 - > .../mozjs/{mozjs_17.0.0.bb => mozjs_52.8.1.bb} | 106 +- > 20 files changed, 473 insertions(+), 5678 deletions(-) > delete mode 100644 meta-oe/recipes-extended/mozjs/mozjs/0001-compare-the-first-character-of-string-to-be-null-or-.patch > create mode 100644 meta-oe/recipes-extended/mozjs/mozjs/0001-do-not-create-python-environment.patch > delete mode 100644 meta-oe/recipes-extended/mozjs/mozjs/0001-mozjs17.0.0-fix-the-compile-bug-of-powerpc.patch > delete mode 100644 meta-oe/recipes-extended/mozjs/mozjs/0001-regenerate-configure.patch > delete mode 100644 meta-oe/recipes-extended/mozjs/mozjs/0002-Move-JS_BYTES_PER_WORD-out-of-config.h.patch > create mode 100644 meta-oe/recipes-extended/mozjs/mozjs/0002-fix-cannot-find-link.patch > create mode 100644 meta-oe/recipes-extended/mozjs/mozjs/0003-workaround-autoconf-2.13-detection-failed.patch > create mode 100644 meta-oe/recipes-extended/mozjs/mozjs/0004-do-not-use-autoconf-2.13-to-refresh-old.configure.patch > delete mode 100644 meta-oe/recipes-extended/mozjs/mozjs/0004-mozbug746112-no-decommit-on-large-pages.patch > delete mode 100644 meta-oe/recipes-extended/mozjs/mozjs/0005-aarch64-64k-page.patch > create mode 100644 meta-oe/recipes-extended/mozjs/mozjs/0005-fix-do_compile-failed-on-mips.patch > create mode 100644 meta-oe/recipes-extended/mozjs/mozjs/0006-support-musl.patch > delete mode 100644 meta-oe/recipes-extended/mozjs/mozjs/Manually_mmap_heap_memory_esr17.patch > delete mode 100644 meta-oe/recipes-extended/mozjs/mozjs/Update-Double-Conversion.patch > delete mode 100644 meta-oe/recipes-extended/mozjs/mozjs/Update-the-double-conversion-update-script.patch > delete mode 100644 meta-oe/recipes-extended/mozjs/mozjs/fix-the-compile-error-of-powerpc64.patch > delete mode 100644 meta-oe/recipes-extended/mozjs/mozjs/fix_milestone_compile_issue.patch > rename meta-oe/recipes-extended/mozjs/{mozjs_17.0.0.bb => mozjs_52.8.1.bb} (20%) > > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0001-compare-the-first-character-of-string-to-be-null-or-.patch b/meta-oe/recipes-extended/mozjs/mozjs/0001-compare-the-first-character-of-string-to-be-null-or-.patch > deleted file mode 100644 > index 40d646c..0000000 > --- a/meta-oe/recipes-extended/mozjs/mozjs/0001-compare-the-first-character-of-string-to-be-null-or-.patch > +++ /dev/null > @@ -1,32 +0,0 @@ > -From f36c9476d2816e0d3e61c9e13c22ed73883cb54a Mon Sep 17 00:00:00 2001 > -From: Khem Raj > -Date: Mon, 24 Apr 2017 12:13:43 -0700 > -Subject: [PATCH] compare the first character of string to be null or not > - > -Fixes > - > -error: ISO C++ forbids comparison between pointer and integer [-fpermissive] > -| if (value[0] == '\0') > -| ^~~~ > - > -Signed-off-by: Khem Raj > ---- > - js/src/shell/jsoptparse.cpp | 2 +- > - 1 file changed, 1 insertion(+), 1 deletion(-) > - > -diff --git a/js/src/shell/jsoptparse.cpp b/js/src/shell/jsoptparse.cpp > -index b49d0a5..612aa00 100644 > ---- a/js/src/shell/jsoptparse.cpp > -+++ b/js/src/shell/jsoptparse.cpp > -@@ -243,7 +243,7 @@ OptionParser::extractValue(size_t argc, char **argv, size_t *i, char **value) > - char *eq = strchr(argv[*i], '='); > - if (eq) { > - *value = eq + 1; > -- if (value[0] == '\0') > -+ if (value[0][0] == '\0') > - return error("A value is required for option %.*s", eq - argv[*i], argv[*i]); > - return Okay; > - } > --- > -2.12.2 > - > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0001-do-not-create-python-environment.patch b/meta-oe/recipes-extended/mozjs/mozjs/0001-do-not-create-python-environment.patch > new file mode 100644 > index 0000000..ba317bc > --- /dev/null > +++ b/meta-oe/recipes-extended/mozjs/mozjs/0001-do-not-create-python-environment.patch > @@ -0,0 +1,91 @@ > +From 5028d1cd669c179ed49061316d04c8e8862a5bd8 Mon Sep 17 00:00:00 2001 > +From: Hongxu Jia > +Date: Thu, 12 Jul 2018 15:04:47 +0800 > +Subject: [PATCH 1/5] do not create python environment > + > +Use oe's python environment rather than create one of host > + > +Upstream-Status: Inappropriate [oe specific] > + > +Signed-off-by: Hongxu Jia > +--- > + build/moz.configure/init.configure | 18 ------------------ > + configure.py | 10 +++++++++- > + js/src/old-configure | 4 ++-- > + 3 files changed, 11 insertions(+), 21 deletions(-) > + > +diff --git a/build/moz.configure/init.configure b/build/moz.configure/init.configure > +index 2123beb..6fe6591 100644 > +--- a/build/moz.configure/init.configure > ++++ b/build/moz.configure/init.configure > +@@ -179,24 +179,6 @@ def virtualenv_python(env_python, build_env, mozconfig, help): > + else: > + python = sys.executable > + > +- if not manager.up_to_date(python): > +- log.info('Creating Python environment') > +- manager.build(python) > +- > +- python = normsep(manager.python_path) > +- > +- if python != normsep(sys.executable): > +- log.info('Reexecuting in the virtualenv') > +- if env_python: > +- del os.environ['PYTHON'] > +- # One would prefer to use os.execl, but that's completely borked on > +- # Windows. > +- sys.exit(subprocess.call([python] + sys.argv)) > +- > +- # We are now in the virtualenv > +- if not distutils.sysconfig.get_python_lib(): > +- die('Could not determine python site packages directory') > +- > + return python > + > + set_config('PYTHON', virtualenv_python) > +diff --git a/configure.py b/configure.py > +index f7392d0..45323a5 100644 > +--- a/configure.py > ++++ b/configure.py > +@@ -12,7 +12,15 @@ import textwrap > + > + > + base_dir = os.path.abspath(os.path.dirname(__file__)) > +-sys.path.insert(0, os.path.join(base_dir, 'python', 'mozbuild')) > ++sys.path.insert(0, os.path.join(base_dir, 'config')) > ++def get_immediate_subdirectories(a_dir): > ++ return [name for name in os.listdir(a_dir) > ++ if os.path.isdir(os.path.join(a_dir, name))] > ++for s in ["python", "testing/mozbase"]: > ++ sub_dir = os.path.join(base_dir, s) > ++ for module_dir in get_immediate_subdirectories(sub_dir): > ++ sys.path.insert(0, os.path.join(sub_dir, module_dir)) > ++ > + from mozbuild.configure import ConfigureSandbox > + from mozbuild.util import ( > + indented_repr, > +diff --git a/js/src/old-configure b/js/src/old-configure > +index ee4527b..75b00e1 100644 > +--- a/js/src/old-configure > ++++ b/js/src/old-configure > +@@ -10512,7 +10512,7 @@ if test "$MOZ_BUILD_APP" != js -o -n "$JS_STANDALONE"; then > + ;; > + esac > + > +- eval $dumpenv $PYTHON $_topsrcdir/build/subconfigure.py --prepare "$srcdir" "$moz_config_dir" "$_CONFIG_SHELL" $ac_configure_args > ++ eval $dumpenv PYTHONPATH=$_topsrcdir/python/mozbuild/ $PYTHON $_topsrcdir/build/subconfigure.py --prepare "$srcdir" "$moz_config_dir" "$_CONFIG_SHELL" $ac_configure_args > + > + done > + > +@@ -10931,7 +10931,7 @@ if test "$JS_STANDALONE"; then > + > + if test "$no_recursion" != yes; then > + trap '' EXIT > +- if ! $PYTHON $_topsrcdir/build/subconfigure.py --list subconfigures --skip skip_subconfigures; then > ++ if ! PYTHONPATH=$_topsrcdir/python/mozbuild/ $PYTHON $_topsrcdir/build/subconfigure.py --list subconfigures --skip skip_subconfigures; then > + exit 1 > + fi > + fi > +-- > +2.7.4 > + > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0001-js.pc.in-do-not-include-RequiredDefines.h-for-depend.patch b/meta-oe/recipes-extended/mozjs/mozjs/0001-js.pc.in-do-not-include-RequiredDefines.h-for-depend.patch > index bc141d9..c111ea5 100644 > --- a/meta-oe/recipes-extended/mozjs/mozjs/0001-js.pc.in-do-not-include-RequiredDefines.h-for-depend.patch > +++ b/meta-oe/recipes-extended/mozjs/mozjs/0001-js.pc.in-do-not-include-RequiredDefines.h-for-depend.patch > @@ -3,33 +3,31 @@ From: =?UTF-8?q?Andreas=20M=C3=BCller?= > Date: Thu, 6 Jun 2013 18:36:01 +0200 > Subject: [PATCH] js.pc.in: do not include RequiredDefines.h for depending > packages > -MIME-Version: 1.0 > -Content-Type: text/plain; charset=UTF-8 > -Content-Transfer-Encoding: 8bit > > in our cross environment the would fail with: > > | cc1: fatal error: /usr/include/js-17.0/js/RequiredDefines.h: No such file or directory > > and currently it only defines __STDC_LIMIT_MACROS > - > Upstream-Status: Inappropriate [embedded specific] > - > Signed-off-by: Andreas Müller > + > +Rebase to 52.8.1 > +Signed-off-by: Hongxu Jia > --- > - js.pc.in | 2 +- > - 1 files changed, 1 insertions(+), 1 deletions(-) > + js/src/js.pc.in | 2 +- > + 1 file changed, 1 insertion(+), 1 deletion(-) > > -diff --git a/js.pc.in b/js.pc.in > -index 13d761d..a95a7bd 100644 > ---- a/js.pc.in > -+++ b/js.pc.in > +diff --git a/js/src/js.pc.in b/js/src/js.pc.in > +index 2eae393..c2dea62 100644 > +--- a/js/src/js.pc.in > ++++ b/js/src/js.pc.in > @@ -8,4 +8,4 @@ Description: The Mozilla library for JavaScript > Version: @MOZILLA_VERSION@ > - Requires.private: @NSPR_PKGCONF_CHECK@ > - Libs: -L${libdir} -l@LIBRARY_NAME@ > --Cflags: -include ${includedir}/@MODULE@/js/RequiredDefines.h -I${includedir}/@MODULE@ > -+Cflags: -I${includedir}/@MODULE@ > + @PKGCONF_REQUIRES_PRIVATE@ > + Libs: -L${libdir} -l@JS_LIBRARY_NAME@ > +-Cflags: -include ${includedir}/@JS_LIBRARY_NAME@/js/RequiredDefines.h -I${includedir}/@JS_LIBRARY_NAME@ > ++Cflags: -I${includedir}/@JS_LIBRARY_NAME@ > -- > -1.7.6.5 > +2.7.4 > > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0001-mozjs17.0.0-fix-the-compile-bug-of-powerpc.patch b/meta-oe/recipes-extended/mozjs/mozjs/0001-mozjs17.0.0-fix-the-compile-bug-of-powerpc.patch > deleted file mode 100644 > index de72d4f..0000000 > --- a/meta-oe/recipes-extended/mozjs/mozjs/0001-mozjs17.0.0-fix-the-compile-bug-of-powerpc.patch > +++ /dev/null > @@ -1,36 +0,0 @@ > -From da3929a96d9c74e11bf37d128890e18fcb745365 Mon Sep 17 00:00:00 2001 > -From: Lei Maohui > -Date: Mon, 26 Jan 2015 08:53:19 +0900 > -Subject: [PATCH] mozjs17.0.0: fix the compile bug of powerpc > - > -To fix the bug as following > - > -error: cannot convert '__va_list_tag**' to '__va_list_tag (*)[1]' for > -argument '5' to 'JSBool TryArgumentFormatter(JSContext*, const char**, > -JSBool, jsval**, __va_list_tag (*)[1])' > - > -Signed-off-by: Lei Maohui > ---- > - jscpucfg.h | 6 ++++++ > - 1 file changed, 6 insertions(+) > - > -diff --git a/jscpucfg.h b/jscpucfg.h > -index dfb1c14..8683491 100644 > ---- a/jscpucfg.h > -+++ b/jscpucfg.h > -@@ -47,6 +47,12 @@ > - #elif defined(JS_HAVE_ENDIAN_H) > - # include > - > -+#if defined(_POWER) || defined(__powerpc__) || \ > -+ defined(__ppc__) > -+# define HAVE_VA_LIST_AS_ARRAY 1 > -+# endif > -+ > -+ > - # if defined(__BYTE_ORDER) > - # if __BYTE_ORDER == __LITTLE_ENDIAN > - # define IS_LITTLE_ENDIAN 1 > --- > -1.8.4.2 > - > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0001-regenerate-configure.patch b/meta-oe/recipes-extended/mozjs/mozjs/0001-regenerate-configure.patch > deleted file mode 100644 > index fa413ea..0000000 > --- a/meta-oe/recipes-extended/mozjs/mozjs/0001-regenerate-configure.patch > +++ /dev/null > @@ -1,3238 +0,0 @@ > -From 6440b4901c6f4bcc69686ff10806e311cc5a927b Mon Sep 17 00:00:00 2001 > -From: Koen Kooi > -Date: Tue, 3 Mar 2015 19:12:17 +0800 > -Subject: [PATCH] regenerate configure with autoconf-2.13 > - > -Signed-off-by: Koen Kooi > -Upstream-status: Inappropriate [generated file] > - > ---- > - js/src/configure | 838 ++++++++++++++++++++++++++----------------------------- > - 1 file changed, 389 insertions(+), 449 deletions(-) > - > -diff --git a/js/src/configure b/js/src/configure > -index cb6b41b..b05298f 100755 > ---- a/js/src/configure > -+++ b/js/src/configure > -@@ -5757,6 +5757,10 @@ arm*) > - CPU_ARCH=arm > - ;; > - > -+aarch64*) > -+ CPU_ARCH=aarch64 > -+ ;; > -+ > - mips|mipsel) > - CPU_ARCH="mips" > - ;; > -@@ -5893,14 +5897,14 @@ no) > - _SAVE_CFLAGS="$CFLAGS" > - CFLAGS="$arch_flag" > - cat > conftest.$ac_ext < --#line 5897 "configure" > -+#line 5901 "configure" > - #include "confdefs.h" > - > - int main() { > - return sizeof(__thumb2__); > - ; return 0; } > - EOF > --if { (eval echo configure:5904: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:5908: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - MOZ_THUMB2=1 > - else > -@@ -5972,16 +5976,16 @@ if test -n "$all_flags"; then > - _SAVE_CFLAGS="$CFLAGS" > - CFLAGS="$all_flags" > - echo $ac_n "checking whether the chosen combination of compiler flags ($all_flags) works""... $ac_c" 1>&6 > --echo "configure:5976: checking whether the chosen combination of compiler flags ($all_flags) works" >&5 > -+echo "configure:5980: checking whether the chosen combination of compiler flags ($all_flags) works" >&5 > - cat > conftest.$ac_ext < --#line 5978 "configure" > -+#line 5982 "configure" > - #include "confdefs.h" > - > - int main() { > - return 0; > - ; return 0; } > - EOF > --if { (eval echo configure:5985: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:5989: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - echo "$ac_t""yes" 1>&6 > - else > -@@ -6004,18 +6008,18 @@ fi > - > - if test "$CPU_ARCH" = "arm"; then > - echo $ac_n "checking for ARM SIMD support in compiler""... $ac_c" 1>&6 > --echo "configure:6008: checking for ARM SIMD support in compiler" >&5 > -+echo "configure:6012: checking for ARM SIMD support in compiler" >&5 > - # We try to link so that this also fails when > - # building with LTO. > - cat > conftest.$ac_ext < --#line 6012 "configure" > -+#line 6016 "configure" > - #include "confdefs.h" > - > - int main() { > - asm("uqadd8 r1, r1, r2"); > - ; return 0; } > - EOF > --if { (eval echo configure:6019: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:6023: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - result="yes" > - else > -@@ -6038,18 +6042,18 @@ EOF > - fi > - > - echo $ac_n "checking for ARM NEON support in compiler""... $ac_c" 1>&6 > --echo "configure:6042: checking for ARM NEON support in compiler" >&5 > -+echo "configure:6046: checking for ARM NEON support in compiler" >&5 > - # We try to link so that this also fails when > - # building with LTO. > - cat > conftest.$ac_ext < --#line 6046 "configure" > -+#line 6050 "configure" > - #include "confdefs.h" > - > - int main() { > - asm(".fpu neon\n vadd.i8 d0, d0, d0"); > - ; return 0; } > - EOF > --if { (eval echo configure:6053: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:6057: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - result="yes" > - else > -@@ -6094,7 +6098,7 @@ configure_static_assert_macros=' > - ' > - > - echo $ac_n "checking that static assertion macros used in autoconf tests work""... $ac_c" 1>&6 > --echo "configure:6098: checking that static assertion macros used in autoconf tests work" >&5 > -+echo "configure:6102: checking that static assertion macros used in autoconf tests work" >&5 > - if eval "test \"`echo '$''{'ac_cv_static_assertion_macros_work'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -6108,14 +6112,14 @@ cross_compiling=$ac_cv_prog_cc_cross > - > - ac_cv_static_assertion_macros_work="yes" > - cat > conftest.$ac_ext < --#line 6112 "configure" > -+#line 6116 "configure" > - #include "confdefs.h" > - $configure_static_assert_macros > - int main() { > - CONFIGURE_STATIC_ASSERT(1) > - ; return 0; } > - EOF > --if { (eval echo configure:6119: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:6123: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - : > - else > - echo "configure: failed program was:" >&5 > -@@ -6125,14 +6129,14 @@ else > - fi > - rm -f conftest* > - cat > conftest.$ac_ext < --#line 6129 "configure" > -+#line 6133 "configure" > - #include "confdefs.h" > - $configure_static_assert_macros > - int main() { > - CONFIGURE_STATIC_ASSERT(0) > - ; return 0; } > - EOF > --if { (eval echo configure:6136: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:6140: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_static_assertion_macros_work="no" > - else > -@@ -6148,14 +6152,14 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes > - cross_compiling=$ac_cv_prog_cxx_cross > - > - cat > conftest.$ac_ext < --#line 6152 "configure" > -+#line 6156 "configure" > - #include "confdefs.h" > - $configure_static_assert_macros > - int main() { > - CONFIGURE_STATIC_ASSERT(1) > - ; return 0; } > - EOF > --if { (eval echo configure:6159: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:6163: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - : > - else > - echo "configure: failed program was:" >&5 > -@@ -6165,14 +6169,14 @@ else > - fi > - rm -f conftest* > - cat > conftest.$ac_ext < --#line 6169 "configure" > -+#line 6173 "configure" > - #include "confdefs.h" > - $configure_static_assert_macros > - int main() { > - CONFIGURE_STATIC_ASSERT(0) > - ; return 0; } > - EOF > --if { (eval echo configure:6176: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:6180: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_static_assertion_macros_work="no" > - else > -@@ -6317,7 +6321,7 @@ if test "$GNU_CC"; then > - _WARNINGS_CFLAGS="${_WARNINGS_CFLAGS} -Wall -Wpointer-arith -Wdeclaration-after-statement" > - > - echo $ac_n "checking whether the C compiler supports -Werror=return-type""... $ac_c" 1>&6 > --echo "configure:6321: checking whether the C compiler supports -Werror=return-type" >&5 > -+echo "configure:6325: checking whether the C compiler supports -Werror=return-type" >&5 > - if eval "test \"`echo '$''{'ac_c_has_werror_return_type'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -6333,14 +6337,14 @@ cross_compiling=$ac_cv_prog_cc_cross > - _SAVE_CFLAGS="$CFLAGS" > - CFLAGS="$CFLAGS -Werror -Werror=return-type" > - cat > conftest.$ac_ext < --#line 6337 "configure" > -+#line 6341 "configure" > - #include "confdefs.h" > - > - int main() { > - return(0); > - ; return 0; } > - EOF > --if { (eval echo configure:6344: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:6348: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_c_has_werror_return_type="yes" > - else > -@@ -6368,7 +6372,7 @@ echo "$ac_t""$ac_c_has_werror_return_type" 1>&6 > - > - > - echo $ac_n "checking whether the C compiler supports -Wtype-limits""... $ac_c" 1>&6 > --echo "configure:6372: checking whether the C compiler supports -Wtype-limits" >&5 > -+echo "configure:6376: checking whether the C compiler supports -Wtype-limits" >&5 > - if eval "test \"`echo '$''{'ac_c_has_wtype_limits'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -6384,14 +6388,14 @@ cross_compiling=$ac_cv_prog_cc_cross > - _SAVE_CFLAGS="$CFLAGS" > - CFLAGS="$CFLAGS -Werror -Wtype-limits" > - cat > conftest.$ac_ext < --#line 6388 "configure" > -+#line 6392 "configure" > - #include "confdefs.h" > - > - int main() { > - return(0); > - ; return 0; } > - EOF > --if { (eval echo configure:6395: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:6399: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_c_has_wtype_limits="yes" > - else > -@@ -6419,7 +6423,7 @@ echo "$ac_t""$ac_c_has_wtype_limits" 1>&6 > - > - > - echo $ac_n "checking whether the C compiler supports -Wempty-body""... $ac_c" 1>&6 > --echo "configure:6423: checking whether the C compiler supports -Wempty-body" >&5 > -+echo "configure:6427: checking whether the C compiler supports -Wempty-body" >&5 > - if eval "test \"`echo '$''{'ac_c_has_wempty_body'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -6435,14 +6439,14 @@ cross_compiling=$ac_cv_prog_cc_cross > - _SAVE_CFLAGS="$CFLAGS" > - CFLAGS="$CFLAGS -Werror -Wempty-body" > - cat > conftest.$ac_ext < --#line 6439 "configure" > -+#line 6443 "configure" > - #include "confdefs.h" > - > - int main() { > - return(0); > - ; return 0; } > - EOF > --if { (eval echo configure:6446: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:6450: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_c_has_wempty_body="yes" > - else > -@@ -6476,7 +6480,7 @@ echo "$ac_t""$ac_c_has_wempty_body" 1>&6 > - _WARNINGS_CFLAGS="${_WARNINGS_CFLAGS} -Wno-unused" > - > - echo $ac_n "checking whether the C compiler supports -Wno-overlength-strings""... $ac_c" 1>&6 > --echo "configure:6480: checking whether the C compiler supports -Wno-overlength-strings" >&5 > -+echo "configure:6484: checking whether the C compiler supports -Wno-overlength-strings" >&5 > - if eval "test \"`echo '$''{'ac_c_has_wno_overlength_strings'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -6492,14 +6496,14 @@ cross_compiling=$ac_cv_prog_cc_cross > - _SAVE_CFLAGS="$CFLAGS" > - CFLAGS="$CFLAGS -Werror -Woverlength-strings" > - cat > conftest.$ac_ext < --#line 6496 "configure" > -+#line 6500 "configure" > - #include "confdefs.h" > - > - int main() { > - return(0); > - ; return 0; } > - EOF > --if { (eval echo configure:6503: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:6507: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_c_has_wno_overlength_strings="yes" > - else > -@@ -6580,7 +6584,7 @@ if test "$GNU_CXX"; then > - _WARNINGS_CXXFLAGS="${_WARNINGS_CXXFLAGS} -Wall -Wpointer-arith -Woverloaded-virtual" > - > - echo $ac_n "checking whether the C++ compiler supports -Werror=return-type""... $ac_c" 1>&6 > --echo "configure:6584: checking whether the C++ compiler supports -Werror=return-type" >&5 > -+echo "configure:6588: checking whether the C++ compiler supports -Werror=return-type" >&5 > - if eval "test \"`echo '$''{'ac_cxx_has_werror_return_type'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -6596,14 +6600,14 @@ cross_compiling=$ac_cv_prog_cxx_cross > - _SAVE_CXXFLAGS="$CXXFLAGS" > - CXXFLAGS="$CXXFLAGS -Werror -Werror=return-type" > - cat > conftest.$ac_ext < --#line 6600 "configure" > -+#line 6604 "configure" > - #include "confdefs.h" > - > - int main() { > - return(0); > - ; return 0; } > - EOF > --if { (eval echo configure:6607: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:6611: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cxx_has_werror_return_type="yes" > - else > -@@ -6631,7 +6635,7 @@ echo "$ac_t""$ac_cxx_has_werror_return_type" 1>&6 > - > - > - echo $ac_n "checking whether the C++ compiler supports -Wtype-limits""... $ac_c" 1>&6 > --echo "configure:6635: checking whether the C++ compiler supports -Wtype-limits" >&5 > -+echo "configure:6639: checking whether the C++ compiler supports -Wtype-limits" >&5 > - if eval "test \"`echo '$''{'ac_cxx_has_wtype_limits'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -6647,14 +6651,14 @@ cross_compiling=$ac_cv_prog_cxx_cross > - _SAVE_CXXFLAGS="$CXXFLAGS" > - CXXFLAGS="$CXXFLAGS -Werror -Wtype-limits" > - cat > conftest.$ac_ext < --#line 6651 "configure" > -+#line 6655 "configure" > - #include "confdefs.h" > - > - int main() { > - return(0); > - ; return 0; } > - EOF > --if { (eval echo configure:6658: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:6662: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cxx_has_wtype_limits="yes" > - else > -@@ -6682,7 +6686,7 @@ echo "$ac_t""$ac_cxx_has_wtype_limits" 1>&6 > - > - > - echo $ac_n "checking whether the C++ compiler supports -Wempty-body""... $ac_c" 1>&6 > --echo "configure:6686: checking whether the C++ compiler supports -Wempty-body" >&5 > -+echo "configure:6690: checking whether the C++ compiler supports -Wempty-body" >&5 > - if eval "test \"`echo '$''{'ac_cxx_has_wempty_body'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -6698,14 +6702,14 @@ cross_compiling=$ac_cv_prog_cxx_cross > - _SAVE_CXXFLAGS="$CXXFLAGS" > - CXXFLAGS="$CXXFLAGS -Werror -Wempty-body" > - cat > conftest.$ac_ext < --#line 6702 "configure" > -+#line 6706 "configure" > - #include "confdefs.h" > - > - int main() { > - return(0); > - ; return 0; } > - EOF > --if { (eval echo configure:6709: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:6713: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cxx_has_wempty_body="yes" > - else > -@@ -6741,7 +6745,7 @@ echo "$ac_t""$ac_cxx_has_wempty_body" 1>&6 > - _WARNINGS_CXXFLAGS="${_WARNINGS_CXXFLAGS} -Wno-ctor-dtor-privacy" > - > - echo $ac_n "checking whether the C++ compiler supports -Wno-overlength-strings""... $ac_c" 1>&6 > --echo "configure:6745: checking whether the C++ compiler supports -Wno-overlength-strings" >&5 > -+echo "configure:6749: checking whether the C++ compiler supports -Wno-overlength-strings" >&5 > - if eval "test \"`echo '$''{'ac_cxx_has_wno_overlength_strings'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -6757,14 +6761,14 @@ cross_compiling=$ac_cv_prog_cxx_cross > - _SAVE_CXXFLAGS="$CXXFLAGS" > - CXXFLAGS="$CXXFLAGS -Werror -Woverlength-strings" > - cat > conftest.$ac_ext < --#line 6761 "configure" > -+#line 6765 "configure" > - #include "confdefs.h" > - > - int main() { > - return(0); > - ; return 0; } > - EOF > --if { (eval echo configure:6768: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:6772: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cxx_has_wno_overlength_strings="yes" > - else > -@@ -6792,7 +6796,7 @@ echo "$ac_t""$ac_cxx_has_wno_overlength_strings" 1>&6 > - > - > - echo $ac_n "checking whether the C++ compiler supports -Wno-invalid-offsetof""... $ac_c" 1>&6 > --echo "configure:6796: checking whether the C++ compiler supports -Wno-invalid-offsetof" >&5 > -+echo "configure:6800: checking whether the C++ compiler supports -Wno-invalid-offsetof" >&5 > - if eval "test \"`echo '$''{'ac_cxx_has_wno_invalid_offsetof'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -6808,14 +6812,14 @@ cross_compiling=$ac_cv_prog_cxx_cross > - _SAVE_CXXFLAGS="$CXXFLAGS" > - CXXFLAGS="$CXXFLAGS -Werror -Winvalid-offsetof" > - cat > conftest.$ac_ext < --#line 6812 "configure" > -+#line 6816 "configure" > - #include "confdefs.h" > - > - int main() { > - return(0); > - ; return 0; } > - EOF > --if { (eval echo configure:6819: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:6823: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cxx_has_wno_invalid_offsetof="yes" > - else > -@@ -6843,7 +6847,7 @@ echo "$ac_t""$ac_cxx_has_wno_invalid_offsetof" 1>&6 > - > - > - echo $ac_n "checking whether the C++ compiler supports -Wno-variadic-macros""... $ac_c" 1>&6 > --echo "configure:6847: checking whether the C++ compiler supports -Wno-variadic-macros" >&5 > -+echo "configure:6851: checking whether the C++ compiler supports -Wno-variadic-macros" >&5 > - if eval "test \"`echo '$''{'ac_cxx_has_wno_variadic_macros'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -6859,14 +6863,14 @@ cross_compiling=$ac_cv_prog_cxx_cross > - _SAVE_CXXFLAGS="$CXXFLAGS" > - CXXFLAGS="$CXXFLAGS -Werror -Wvariadic-macros" > - cat > conftest.$ac_ext < --#line 6863 "configure" > -+#line 6867 "configure" > - #include "confdefs.h" > - > - int main() { > - return(0); > - ; return 0; } > - EOF > --if { (eval echo configure:6870: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:6874: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cxx_has_wno_variadic_macros="yes" > - else > -@@ -6918,7 +6922,7 @@ echo "$ac_t""$ac_cxx_has_wno_variadic_macros" 1>&6 > - _WARNINGS_CXXFLAGS="${_WARNINGS_CXXFLAGS} -Wno-c++0x-extensions" > - > - echo $ac_n "checking whether the C++ compiler supports -Wno-extended-offsetof""... $ac_c" 1>&6 > --echo "configure:6922: checking whether the C++ compiler supports -Wno-extended-offsetof" >&5 > -+echo "configure:6926: checking whether the C++ compiler supports -Wno-extended-offsetof" >&5 > - if eval "test \"`echo '$''{'ac_cxx_has_wno_extended_offsetof'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -6934,14 +6938,14 @@ cross_compiling=$ac_cv_prog_cxx_cross > - _SAVE_CXXFLAGS="$CXXFLAGS" > - CXXFLAGS="$CXXFLAGS -Werror -Wextended-offsetof" > - cat > conftest.$ac_ext < --#line 6938 "configure" > -+#line 6942 "configure" > - #include "confdefs.h" > - > - int main() { > - return(0); > - ; return 0; } > - EOF > --if { (eval echo configure:6945: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:6949: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cxx_has_wno_extended_offsetof="yes" > - else > -@@ -6979,7 +6983,7 @@ MKSHLIB_UNFORCE_ALL= > - if test "$COMPILE_ENVIRONMENT"; then > - if test "$GNU_CC"; then > - echo $ac_n "checking whether ld has archive extraction flags""... $ac_c" 1>&6 > --echo "configure:6983: checking whether ld has archive extraction flags" >&5 > -+echo "configure:6987: checking whether ld has archive extraction flags" >&5 > - if eval "test \"`echo '$''{'ac_cv_mkshlib_force_and_unforce'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -6996,14 +7000,14 @@ LOOP_INPUT > - LDFLAGS=$force > - LIBS=$unforce > - cat > conftest.$ac_ext < --#line 7000 "configure" > -+#line 7004 "configure" > - #include "confdefs.h" > - > - int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:7007: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:7011: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - ac_cv_mkshlib_force_and_unforce=$line; break > - else > -@@ -7038,16 +7042,16 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a > - cross_compiling=$ac_cv_prog_cc_cross > - > - echo $ac_n "checking for 64-bit OS""... $ac_c" 1>&6 > --echo "configure:7042: checking for 64-bit OS" >&5 > -+echo "configure:7046: checking for 64-bit OS" >&5 > - cat > conftest.$ac_ext < --#line 7044 "configure" > -+#line 7048 "configure" > - #include "confdefs.h" > - $configure_static_assert_macros > - int main() { > - CONFIGURE_STATIC_ASSERT(sizeof(void*) == 8) > - ; return 0; } > - EOF > --if { (eval echo configure:7051: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:7055: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - result="yes" > - else > -@@ -7170,7 +7174,7 @@ case "$host" in > - esac > - > - echo $ac_n "checking for Python version >= $PYTHON_VERSION but not 3.x""... $ac_c" 1>&6 > --echo "configure:7174: checking for Python version >= $PYTHON_VERSION but not 3.x" >&5 > -+echo "configure:7178: checking for Python version >= $PYTHON_VERSION but not 3.x" >&5 > - > - $PYTHON -c "import sys; sys.exit(sys.version[:3] < sys.argv[1] or sys.version[:2] != '2.')" $PYTHON_VERSION > - _python_res=$? > -@@ -7181,7 +7185,7 @@ fi > - echo "$ac_t""yes" 1>&6 > - > - echo $ac_n "checking for custom implementation""... $ac_c" 1>&6 > --echo "configure:7185: checking for custom implementation" >&5 > -+echo "configure:7189: checking for custom implementation" >&5 > - if test "$MOZ_CUSTOM_STDINT_H"; then > - cat >> confdefs.pytmp < - (''' MOZ_CUSTOM_STDINT_H ''', r''' "$MOZ_CUSTOM_STDINT_H" ''') > -@@ -7249,9 +7253,9 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes > - cross_compiling=$ac_cv_prog_cxx_cross > - > - echo $ac_n "checking for IBM XLC/C++ compiler version >= 9.0.0.7""... $ac_c" 1>&6 > --echo "configure:7253: checking for IBM XLC/C++ compiler version >= 9.0.0.7" >&5 > -+echo "configure:7257: checking for IBM XLC/C++ compiler version >= 9.0.0.7" >&5 > - cat > conftest.$ac_ext < --#line 7255 "configure" > -+#line 7259 "configure" > - #include "confdefs.h" > - > - int main() { > -@@ -7260,7 +7264,7 @@ int main() { > - #endif > - ; return 0; } > - EOF > --if { (eval echo configure:7264: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:7268: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - _BAD_COMPILER= > - else > -@@ -7298,12 +7302,12 @@ cross_compiling=$ac_cv_prog_cc_cross > - do > - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 > --echo "configure:7302: checking for $ac_hdr" >&5 > -+echo "configure:7306: checking for $ac_hdr" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 7307 "configure" > -+#line 7311 "configure" > - #include "confdefs.h" > - > - #include <$ac_hdr> > -@@ -7311,7 +7315,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:7315: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:7319: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -7394,17 +7398,17 @@ EOF > - # builds. > - _SAVE_LDFLAGS=$LDFLAGS > - echo $ac_n "checking for -framework ExceptionHandling""... $ac_c" 1>&6 > --echo "configure:7398: checking for -framework ExceptionHandling" >&5 > -+echo "configure:7402: checking for -framework ExceptionHandling" >&5 > - LDFLAGS="$LDFLAGS -framework ExceptionHandling" > - cat > conftest.$ac_ext < --#line 7401 "configure" > -+#line 7405 "configure" > - #include "confdefs.h" > - > - int main() { > - return 0; > - ; return 0; } > - EOF > --if { (eval echo configure:7408: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:7412: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - ac_cv_have_framework_exceptionhandling="yes" > - else > -@@ -7426,18 +7430,18 @@ rm -f conftest* > - echo "Skipping -dead_strip because DTrace is enabled. See bug 403132." > - else > - echo $ac_n "checking for -dead_strip option to ld""... $ac_c" 1>&6 > --echo "configure:7430: checking for -dead_strip option to ld" >&5 > -+echo "configure:7434: checking for -dead_strip option to ld" >&5 > - _SAVE_LDFLAGS=$LDFLAGS > - LDFLAGS="$LDFLAGS -Wl,-dead_strip" > - cat > conftest.$ac_ext < --#line 7434 "configure" > -+#line 7438 "configure" > - #include "confdefs.h" > - > - int main() { > - return 0; > - ; return 0; } > - EOF > --if { (eval echo configure:7441: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:7445: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - _HAVE_DEAD_STRIP=1 > - else > -@@ -7783,12 +7787,12 @@ EOF > - do > - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 > --echo "configure:7787: checking for $ac_hdr" >&5 > -+echo "configure:7791: checking for $ac_hdr" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 7792 "configure" > -+#line 7796 "configure" > - #include "confdefs.h" > - > - #include <$ac_hdr> > -@@ -7796,7 +7800,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:7800: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:7804: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -7989,19 +7993,19 @@ EOF > - _DEFINES_CXXFLAGS="$_DEFINES_CXXFLAGS -Uunix -U__unix -U__unix__" > - > - echo $ac_n "checking for __declspec(dllexport)""... $ac_c" 1>&6 > --echo "configure:7993: checking for __declspec(dllexport)" >&5 > -+echo "configure:7997: checking for __declspec(dllexport)" >&5 > - if eval "test \"`echo '$''{'ac_os2_declspec'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 7998 "configure" > -+#line 8002 "configure" > - #include "confdefs.h" > - __declspec(dllexport) void ac_os2_declspec(void) {} > - int main() { > - return 0; > - ; return 0; } > - EOF > --if { (eval echo configure:8005: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:8009: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_os2_declspec="yes" > - else > -@@ -8054,14 +8058,14 @@ EOF > - _SAVE_LDFLAGS=$LDFLAGS > - LDFLAGS="-M /usr/lib/ld/map.noexstk $LDFLAGS" > - cat > conftest.$ac_ext < --#line 8058 "configure" > -+#line 8062 "configure" > - #include "confdefs.h" > - #include > - int main() { > - printf("Hello World\n"); > - ; return 0; } > - EOF > --if { (eval echo configure:8065: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:8069: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - : > - else > - echo "configure: failed program was:" >&5 > -@@ -8089,7 +8093,7 @@ rm -f conftest* > - CC_VERSION=`$CC -V 2>&1 | grep '^cc:' 2>/dev/null | $AWK -F\: '{ print $2 }'` > - CXX_VERSION=`$CXX -V 2>&1 | grep '^CC:' 2>/dev/null | $AWK -F\: '{ print $2 }'` > - echo $ac_n "checking for Sun C++ compiler version >= 5.9""... $ac_c" 1>&6 > --echo "configure:8093: checking for Sun C++ compiler version >= 5.9" >&5 > -+echo "configure:8097: checking for Sun C++ compiler version >= 5.9" >&5 > - > - ac_ext=C > - # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. > -@@ -8099,7 +8103,7 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes > - cross_compiling=$ac_cv_prog_cxx_cross > - > - cat > conftest.$ac_ext < --#line 8103 "configure" > -+#line 8107 "configure" > - #include "confdefs.h" > - > - int main() { > -@@ -8108,7 +8112,7 @@ int main() { > - #endif > - ; return 0; } > - EOF > --if { (eval echo configure:8112: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:8116: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - _BAD_COMPILER= > - else > -@@ -8125,7 +8129,7 @@ rm -f conftest* > - _res="yes" > - fi > - cat > conftest.$ac_ext < --#line 8129 "configure" > -+#line 8133 "configure" > - #include "confdefs.h" > - > - int main() { > -@@ -8134,7 +8138,7 @@ int main() { > - #endif > - ; return 0; } > - EOF > --if { (eval echo configure:8138: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:8142: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - _ABOVE_SS12U1= > - else > -@@ -8535,7 +8539,7 @@ fi > - > - if test "$GNU_CC" -a "$GCC_USE_GNU_LD" -a -z "$MOZ_DISABLE_ICF"; then > - echo $ac_n "checking whether the linker supports Identical Code Folding""... $ac_c" 1>&6 > --echo "configure:8539: checking whether the linker supports Identical Code Folding" >&5 > -+echo "configure:8543: checking whether the linker supports Identical Code Folding" >&5 > - if eval "test \"`echo '$''{'LD_SUPPORTS_ICF'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -8544,7 +8548,7 @@ else > - 'int main() {return foo() - bar();}' > conftest.${ac_ext} > - # If the linker supports ICF, foo and bar symbols will have > - # the same address > -- if { ac_try='${CC-cc} -o conftest${ac_exeext} $LDFLAGS -Wl,--icf=safe -ffunction-sections conftest.${ac_ext} $LIBS 1>&2'; { (eval echo configure:8548: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && > -+ if { ac_try='${CC-cc} -o conftest${ac_exeext} $LDFLAGS -Wl,--icf=safe -ffunction-sections conftest.${ac_ext} $LIBS 1>&2'; { (eval echo configure:8552: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && > - test -s conftest${ac_exeext} && > - objdump -t conftest${ac_exeext} | awk '{a[$6] = $1} END {if (a["foo"] && (a["foo"] != a["bar"])) { exit 1 }}'; then > - LD_SUPPORTS_ICF=yes > -@@ -8559,14 +8563,14 @@ echo "$ac_t""$LD_SUPPORTS_ICF" 1>&6 > - _SAVE_LDFLAGS="$LDFLAGS -Wl,--icf=safe" > - LDFLAGS="$LDFLAGS -Wl,--icf=safe -Wl,--print-icf-sections" > - cat > conftest.$ac_ext < --#line 8563 "configure" > -+#line 8567 "configure" > - #include "confdefs.h" > - > - int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:8570: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:8574: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - LD_PRINT_ICF_SECTIONS=-Wl,--print-icf-sections > - else > -@@ -8584,15 +8588,15 @@ fi > - > - if test "$GNU_CC" -a "$GCC_USE_GNU_LD" -a -n "$MOZ_DEBUG_FLAGS"; then > - echo $ac_n "checking whether removing dead symbols breaks debugging""... $ac_c" 1>&6 > --echo "configure:8588: checking whether removing dead symbols breaks debugging" >&5 > -+echo "configure:8592: checking whether removing dead symbols breaks debugging" >&5 > - if eval "test \"`echo '$''{'GC_SECTIONS_BREAKS_DEBUG_RANGES'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - echo 'int foo() {return 42;}' \ > - 'int bar() {return 1;}' \ > - 'int main() {return foo();}' > conftest.${ac_ext} > -- if { ac_try='${CC-cc} -o conftest.${ac_objext} $CFLAGS $MOZ_DEBUG_FLAGS -c conftest.${ac_ext} 1>&2'; { (eval echo configure:8595: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && > -- { ac_try='${CC-cc} -o conftest${ac_exeext} $LDFLAGS $MOZ_DEBUG_FLAGS -Wl,--gc-sections conftest.${ac_objext} $LIBS 1>&2'; { (eval echo configure:8596: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && > -+ if { ac_try='${CC-cc} -o conftest.${ac_objext} $CFLAGS $MOZ_DEBUG_FLAGS -c conftest.${ac_ext} 1>&2'; { (eval echo configure:8599: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && > -+ { ac_try='${CC-cc} -o conftest${ac_exeext} $LDFLAGS $MOZ_DEBUG_FLAGS -Wl,--gc-sections conftest.${ac_objext} $LIBS 1>&2'; { (eval echo configure:8600: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && > - test -s conftest${ac_exeext} -a -s conftest.${ac_objext}; then > - if test "`$PYTHON "$_topsrcdir"/build/autoconf/check_debug_ranges.py conftest.${ac_objext} conftest.${ac_ext}`" = \ > - "`$PYTHON "$_topsrcdir"/build/autoconf/check_debug_ranges.py conftest${ac_exeext} conftest.${ac_ext}`"; then > -@@ -8615,12 +8619,12 @@ fi > - > - if test -z "$SKIP_COMPILER_CHECKS"; then > - echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 > --echo "configure:8619: checking for ANSI C header files" >&5 > -+echo "configure:8623: checking for ANSI C header files" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 8624 "configure" > -+#line 8628 "configure" > - #include "confdefs.h" > - #include > - #include > -@@ -8628,7 +8632,7 @@ else > - #include > - EOF > - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" > --{ (eval echo configure:8632: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } > -+{ (eval echo configure:8636: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } > - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` > - if test -z "$ac_err"; then > - rm -rf conftest* > -@@ -8645,7 +8649,7 @@ rm -f conftest* > - if test $ac_cv_header_stdc = yes; then > - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. > - cat > conftest.$ac_ext < --#line 8649 "configure" > -+#line 8653 "configure" > - #include "confdefs.h" > - #include > - EOF > -@@ -8663,7 +8667,7 @@ fi > - if test $ac_cv_header_stdc = yes; then > - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. > - cat > conftest.$ac_ext < --#line 8667 "configure" > -+#line 8671 "configure" > - #include "confdefs.h" > - #include > - EOF > -@@ -8684,7 +8688,7 @@ if test "$cross_compiling" = yes; then > - : > - else > - cat > conftest.$ac_ext < --#line 8688 "configure" > -+#line 8692 "configure" > - #include "confdefs.h" > - #include > - #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') > -@@ -8695,7 +8699,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); > - exit (0); } > - > - EOF > --if { (eval echo configure:8699: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null > -+if { (eval echo configure:8703: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null > - then > - : > - else > -@@ -8722,12 +8726,12 @@ EOF > - fi > - > - echo $ac_n "checking for working const""... $ac_c" 1>&6 > --echo "configure:8726: checking for working const" >&5 > -+echo "configure:8730: checking for working const" >&5 > - if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 8731 "configure" > -+#line 8735 "configure" > - #include "confdefs.h" > - > - int main() { > -@@ -8776,7 +8780,7 @@ ccp = (char const *const *) p; > - > - ; return 0; } > - EOF > --if { (eval echo configure:8780: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:8784: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_c_const=yes > - else > -@@ -8800,12 +8804,12 @@ EOF > - fi > - > - echo $ac_n "checking for mode_t""... $ac_c" 1>&6 > --echo "configure:8804: checking for mode_t" >&5 > -+echo "configure:8808: checking for mode_t" >&5 > - if eval "test \"`echo '$''{'ac_cv_type_mode_t'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 8809 "configure" > -+#line 8813 "configure" > - #include "confdefs.h" > - #include > - #if STDC_HEADERS > -@@ -8836,12 +8840,12 @@ EOF > - fi > - > - echo $ac_n "checking for off_t""... $ac_c" 1>&6 > --echo "configure:8840: checking for off_t" >&5 > -+echo "configure:8844: checking for off_t" >&5 > - if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 8845 "configure" > -+#line 8849 "configure" > - #include "confdefs.h" > - #include > - #if STDC_HEADERS > -@@ -8872,12 +8876,12 @@ EOF > - fi > - > - echo $ac_n "checking for pid_t""... $ac_c" 1>&6 > --echo "configure:8876: checking for pid_t" >&5 > -+echo "configure:8880: checking for pid_t" >&5 > - if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 8881 "configure" > -+#line 8885 "configure" > - #include "confdefs.h" > - #include > - #if STDC_HEADERS > -@@ -8908,12 +8912,12 @@ EOF > - fi > - > - echo $ac_n "checking for size_t""... $ac_c" 1>&6 > --echo "configure:8912: checking for size_t" >&5 > -+echo "configure:8916: checking for size_t" >&5 > - if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 8917 "configure" > -+#line 8921 "configure" > - #include "confdefs.h" > - #include > - #if STDC_HEADERS > -@@ -8951,12 +8955,12 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes > - cross_compiling=$ac_cv_prog_cxx_cross > - > - echo $ac_n "checking for __stdcall""... $ac_c" 1>&6 > --echo "configure:8955: checking for __stdcall" >&5 > -+echo "configure:8959: checking for __stdcall" >&5 > - if eval "test \"`echo '$''{'ac_cv___stdcall'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 8960 "configure" > -+#line 8964 "configure" > - #include "confdefs.h" > - template struct foo; > - template <> struct foo {}; > -@@ -8965,7 +8969,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:8969: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:8973: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv___stdcall=true > - else > -@@ -8997,12 +9001,12 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a > - cross_compiling=$ac_cv_prog_cc_cross > - > - echo $ac_n "checking for ssize_t""... $ac_c" 1>&6 > --echo "configure:9001: checking for ssize_t" >&5 > -+echo "configure:9005: checking for ssize_t" >&5 > - if eval "test \"`echo '$''{'ac_cv_type_ssize_t'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 9006 "configure" > -+#line 9010 "configure" > - #include "confdefs.h" > - #include > - #include > -@@ -9010,7 +9014,7 @@ int main() { > - ssize_t foo = 0; > - ; return 0; } > - EOF > --if { (eval echo configure:9014: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:9018: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_type_ssize_t=true > - else > -@@ -9035,12 +9039,12 @@ else > - echo "$ac_t""no" 1>&6 > - fi > - echo $ac_n "checking for st_blksize in struct stat""... $ac_c" 1>&6 > --echo "configure:9039: checking for st_blksize in struct stat" >&5 > -+echo "configure:9043: checking for st_blksize in struct stat" >&5 > - if eval "test \"`echo '$''{'ac_cv_struct_st_blksize'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 9044 "configure" > -+#line 9048 "configure" > - #include "confdefs.h" > - #include > - #include > -@@ -9048,7 +9052,7 @@ int main() { > - struct stat s; s.st_blksize; > - ; return 0; } > - EOF > --if { (eval echo configure:9052: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:9056: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_struct_st_blksize=yes > - else > -@@ -9072,12 +9076,12 @@ EOF > - fi > - > - echo $ac_n "checking for siginfo_t""... $ac_c" 1>&6 > --echo "configure:9076: checking for siginfo_t" >&5 > -+echo "configure:9080: checking for siginfo_t" >&5 > - if eval "test \"`echo '$''{'ac_cv_siginfo_t'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 9081 "configure" > -+#line 9085 "configure" > - #include "confdefs.h" > - #define _POSIX_C_SOURCE 199506L > - #include > -@@ -9085,7 +9089,7 @@ int main() { > - siginfo_t* info; > - ; return 0; } > - EOF > --if { (eval echo configure:9089: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:9093: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_siginfo_t=true > - else > -@@ -9111,72 +9115,8 @@ else > - fi > - > - > --echo $ac_n "checking for the size of void*""... $ac_c" 1>&6 > --echo "configure:9116: checking for the size of void*" >&5 > --if eval "test \"`echo '$''{'moz_cv_size_of_JS_BYTES_PER_WORD'+set}'`\" = set"; then > -- echo $ac_n "(cached) $ac_c" 1>&6 > --else > -- > -- moz_cv_size_of_JS_BYTES_PER_WORD= > -- for size in 4 8; do > -- cat > conftest.$ac_ext < --#line 9124 "configure" > --#include "confdefs.h" > -- > --int main() { > -- > -- int a[sizeof (void*) == $size ? 1 : -1]; > -- return 0; > -- > --; return 0; } > --EOF > --if { (eval echo configure:9134: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -- rm -rf conftest* > -- moz_cv_size_of_JS_BYTES_PER_WORD=$size; break > --else > -- echo "configure: failed program was:" >&5 > -- cat conftest.$ac_ext >&5 > --fi > --rm -f conftest* > -- done > -- if test ! "$moz_cv_size_of_JS_BYTES_PER_WORD"; then > -- { echo "configure: error: No size found for void*" 1>&2; exit 1; } > -- fi > -- > --fi > -- > --echo "$ac_t""$moz_cv_size_of_JS_BYTES_PER_WORD" 1>&6 > --cat >> confdefs.pytmp < -- (''' JS_BYTES_PER_WORD ''', r''' $moz_cv_size_of_JS_BYTES_PER_WORD ''') > --EOF > --cat >> confdefs.h < --#define JS_BYTES_PER_WORD $moz_cv_size_of_JS_BYTES_PER_WORD > --EOF > -- > -- > --if test "$moz_cv_size_of_JS_BYTES_PER_WORD" -eq "4"; then > -- cat >> confdefs.pytmp <<\EOF > -- (''' JS_BITS_PER_WORD_LOG2 ''', r''' 5 ''') > --EOF > --cat >> confdefs.h <<\EOF > --#define JS_BITS_PER_WORD_LOG2 5 > --EOF > -- > --elif test "$moz_cv_size_of_JS_BYTES_PER_WORD" -eq "8"; then > -- cat >> confdefs.pytmp <<\EOF > -- (''' JS_BITS_PER_WORD_LOG2 ''', r''' 6 ''') > --EOF > --cat >> confdefs.h <<\EOF > --#define JS_BITS_PER_WORD_LOG2 6 > --EOF > -- > --else > -- { echo "configure: error: Unexpected JS_BYTES_PER_WORD" 1>&2; exit 1; } > --fi > -- > -- > - echo $ac_n "checking for the alignment of void*""... $ac_c" 1>&6 > --echo "configure:9180: checking for the alignment of void*" >&5 > -+echo "configure:9120: checking for the alignment of void*" >&5 > - if eval "test \"`echo '$''{'moz_cv_align_of_JS_ALIGN_OF_POINTER'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -9184,7 +9124,7 @@ else > - moz_cv_align_of_JS_ALIGN_OF_POINTER= > - for align in 2 4 8 16; do > - cat > conftest.$ac_ext < --#line 9188 "configure" > -+#line 9128 "configure" > - #include "confdefs.h" > - > - #include > -@@ -9197,7 +9137,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:9201: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:9141: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - moz_cv_align_of_JS_ALIGN_OF_POINTER=$align; break > - else > -@@ -9223,7 +9163,7 @@ EOF > - > - > - echo $ac_n "checking for the size of double""... $ac_c" 1>&6 > --echo "configure:9227: checking for the size of double" >&5 > -+echo "configure:9167: checking for the size of double" >&5 > - if eval "test \"`echo '$''{'moz_cv_size_of_JS_BYTES_PER_DOUBLE'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -9231,7 +9171,7 @@ else > - moz_cv_size_of_JS_BYTES_PER_DOUBLE= > - for size in 6 8 10 12 14; do > - cat > conftest.$ac_ext < --#line 9235 "configure" > -+#line 9175 "configure" > - #include "confdefs.h" > - > - int main() { > -@@ -9241,7 +9181,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:9245: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:9185: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - moz_cv_size_of_JS_BYTES_PER_DOUBLE=$size; break > - else > -@@ -9270,12 +9210,12 @@ EOF > - do > - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 > --echo "configure:9274: checking for $ac_hdr" >&5 > -+echo "configure:9214: checking for $ac_hdr" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 9279 "configure" > -+#line 9219 "configure" > - #include "confdefs.h" > - > - #include <$ac_hdr> > -@@ -9283,7 +9223,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:9287: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:9227: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -9326,12 +9266,12 @@ fi > - do > - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 > --echo "configure:9330: checking for $ac_hdr" >&5 > -+echo "configure:9270: checking for $ac_hdr" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 9335 "configure" > -+#line 9275 "configure" > - #include "confdefs.h" > - #include > - #include <$ac_hdr> > -@@ -9339,7 +9279,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:9343: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:9283: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -9382,12 +9322,12 @@ fi > - do > - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 > --echo "configure:9386: checking for $ac_hdr" >&5 > -+echo "configure:9326: checking for $ac_hdr" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 9391 "configure" > -+#line 9331 "configure" > - #include "confdefs.h" > - > - #include <$ac_hdr> > -@@ -9395,7 +9335,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:9399: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:9339: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -9435,12 +9375,12 @@ EOF > - fi > - > - echo $ac_n "checking for uint""... $ac_c" 1>&6 > --echo "configure:9439: checking for uint" >&5 > -+echo "configure:9379: checking for uint" >&5 > - if eval "test \"`echo '$''{'ac_cv_uint'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 9444 "configure" > -+#line 9384 "configure" > - #include "confdefs.h" > - #include > - #include > -@@ -9448,7 +9388,7 @@ int main() { > - uint foo = 0; > - ; return 0; } > - EOF > --if { (eval echo configure:9452: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:9392: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_uint=true > - else > -@@ -9473,12 +9413,12 @@ else > - echo "$ac_t""no" 1>&6 > - fi > - echo $ac_n "checking for uint_t""... $ac_c" 1>&6 > --echo "configure:9477: checking for uint_t" >&5 > -+echo "configure:9417: checking for uint_t" >&5 > - if eval "test \"`echo '$''{'ac_cv_uint_t'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 9482 "configure" > -+#line 9422 "configure" > - #include "confdefs.h" > - #include > - #include > -@@ -9486,7 +9426,7 @@ int main() { > - uint_t foo = 0; > - ; return 0; } > - EOF > --if { (eval echo configure:9490: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:9430: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_uint_t=true > - else > -@@ -9520,12 +9460,12 @@ cross_compiling=$ac_cv_prog_cxx_cross > - > - > - echo $ac_n "checking for uname.domainname""... $ac_c" 1>&6 > --echo "configure:9524: checking for uname.domainname" >&5 > -+echo "configure:9464: checking for uname.domainname" >&5 > - if eval "test \"`echo '$''{'ac_cv_have_uname_domainname_field'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 9529 "configure" > -+#line 9469 "configure" > - #include "confdefs.h" > - #include > - int main() { > -@@ -9533,7 +9473,7 @@ int main() { > - (void)uname(res); if (res != 0) { domain = res->domainname; } > - ; return 0; } > - EOF > --if { (eval echo configure:9537: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:9477: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_have_uname_domainname_field=true > - else > -@@ -9560,12 +9500,12 @@ else > - fi > - > - echo $ac_n "checking for uname.__domainname""... $ac_c" 1>&6 > --echo "configure:9564: checking for uname.__domainname" >&5 > -+echo "configure:9504: checking for uname.__domainname" >&5 > - if eval "test \"`echo '$''{'ac_cv_have_uname_us_domainname_field'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 9569 "configure" > -+#line 9509 "configure" > - #include "confdefs.h" > - #include > - int main() { > -@@ -9573,7 +9513,7 @@ int main() { > - (void)uname(res); if (res != 0) { domain = res->__domainname; } > - ; return 0; } > - EOF > --if { (eval echo configure:9577: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:9517: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_have_uname_us_domainname_field=true > - else > -@@ -9609,7 +9549,7 @@ cross_compiling=$ac_cv_prog_cc_cross > - > - if test "$GNU_CC"; then > - echo $ac_n "checking for visibility(hidden) attribute""... $ac_c" 1>&6 > --echo "configure:9613: checking for visibility(hidden) attribute" >&5 > -+echo "configure:9553: checking for visibility(hidden) attribute" >&5 > - if eval "test \"`echo '$''{'ac_cv_visibility_hidden'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -9637,7 +9577,7 @@ EOF > - > - > - echo $ac_n "checking for visibility(default) attribute""... $ac_c" 1>&6 > --echo "configure:9641: checking for visibility(default) attribute" >&5 > -+echo "configure:9581: checking for visibility(default) attribute" >&5 > - if eval "test \"`echo '$''{'ac_cv_visibility_default'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -9665,7 +9605,7 @@ EOF > - > - > - echo $ac_n "checking for visibility pragma support""... $ac_c" 1>&6 > --echo "configure:9669: checking for visibility pragma support" >&5 > -+echo "configure:9609: checking for visibility pragma support" >&5 > - if eval "test \"`echo '$''{'ac_cv_visibility_pragma'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -9690,7 +9630,7 @@ fi > - echo "$ac_t""$ac_cv_visibility_pragma" 1>&6 > - if test "$ac_cv_visibility_pragma" = "yes"; then > - echo $ac_n "checking For gcc visibility bug with class-level attributes (GCC bug 26905)""... $ac_c" 1>&6 > --echo "configure:9694: checking For gcc visibility bug with class-level attributes (GCC bug 26905)" >&5 > -+echo "configure:9634: checking For gcc visibility bug with class-level attributes (GCC bug 26905)" >&5 > - if eval "test \"`echo '$''{'ac_cv_have_visibility_class_bug'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -9718,7 +9658,7 @@ fi > - echo "$ac_t""$ac_cv_have_visibility_class_bug" 1>&6 > - > - echo $ac_n "checking For x86_64 gcc visibility bug with builtins (GCC bug 20297)""... $ac_c" 1>&6 > --echo "configure:9722: checking For x86_64 gcc visibility bug with builtins (GCC bug 20297)" >&5 > -+echo "configure:9662: checking For x86_64 gcc visibility bug with builtins (GCC bug 20297)" >&5 > - if eval "test \"`echo '$''{'ac_cv_have_visibility_builtin_bug'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -9770,7 +9710,7 @@ fi # Sun Studio on Solaris > - if test "$GNU_CC"; then > - > - echo $ac_n "checking for gcc PR49911""... $ac_c" 1>&6 > --echo "configure:9774: checking for gcc PR49911" >&5 > -+echo "configure:9714: checking for gcc PR49911" >&5 > - ac_have_gcc_pr49911="no" > - > - ac_ext=C > -@@ -9787,7 +9727,7 @@ if test "$cross_compiling" = yes; then > - true > - else > - cat > conftest.$ac_ext < --#line 9791 "configure" > -+#line 9731 "configure" > - #include "confdefs.h" > - > - extern "C" void abort(void); > -@@ -9828,7 +9768,7 @@ int main(void) { > - } > - > - EOF > --if { (eval echo configure:9832: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null > -+if { (eval echo configure:9772: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null > - then > - true > - else > -@@ -9865,12 +9805,12 @@ for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h > - do > - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6 > --echo "configure:9869: checking for $ac_hdr that defines DIR" >&5 > -+echo "configure:9809: checking for $ac_hdr that defines DIR" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 9874 "configure" > -+#line 9814 "configure" > - #include "confdefs.h" > - #include > - #include <$ac_hdr> > -@@ -9878,7 +9818,7 @@ int main() { > - DIR *dirp = 0; > - ; return 0; } > - EOF > --if { (eval echo configure:9882: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:9822: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_dirent_$ac_safe=yes" > - else > -@@ -9906,7 +9846,7 @@ done > - # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix. > - if test $ac_header_dirent = dirent.h; then > - echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6 > --echo "configure:9910: checking for opendir in -ldir" >&5 > -+echo "configure:9850: checking for opendir in -ldir" >&5 > - ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'` > - if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > -@@ -9914,7 +9854,7 @@ else > - ac_save_LIBS="$LIBS" > - LIBS="-ldir $LIBS" > - cat > conftest.$ac_ext < --#line 9918 "configure" > -+#line 9858 "configure" > - #include "confdefs.h" > - /* Override any gcc2 internal prototype to avoid an error. */ > - /* We use char because int might match the return type of a gcc2 > -@@ -9925,7 +9865,7 @@ int main() { > - opendir() > - ; return 0; } > - EOF > --if { (eval echo configure:9929: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:9869: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - eval "ac_cv_lib_$ac_lib_var=yes" > - else > -@@ -9947,7 +9887,7 @@ fi > - > - else > - echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6 > --echo "configure:9951: checking for opendir in -lx" >&5 > -+echo "configure:9891: checking for opendir in -lx" >&5 > - ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'` > - if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > -@@ -9955,7 +9895,7 @@ else > - ac_save_LIBS="$LIBS" > - LIBS="-lx $LIBS" > - cat > conftest.$ac_ext < --#line 9959 "configure" > -+#line 9899 "configure" > - #include "confdefs.h" > - /* Override any gcc2 internal prototype to avoid an error. */ > - /* We use char because int might match the return type of a gcc2 > -@@ -9966,7 +9906,7 @@ int main() { > - opendir() > - ; return 0; } > - EOF > --if { (eval echo configure:9970: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:9910: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - eval "ac_cv_lib_$ac_lib_var=yes" > - else > -@@ -10000,12 +9940,12 @@ esac > - do > - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 > --echo "configure:10004: checking for $ac_hdr" >&5 > -+echo "configure:9944: checking for $ac_hdr" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 10009 "configure" > -+#line 9949 "configure" > - #include "confdefs.h" > - > - #include <$ac_hdr> > -@@ -10013,7 +9953,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:10017: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:9957: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -10048,12 +9988,12 @@ EOF > - do > - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 > --echo "configure:10052: checking for $ac_hdr" >&5 > -+echo "configure:9992: checking for $ac_hdr" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 10057 "configure" > -+#line 9997 "configure" > - #include "confdefs.h" > - > - #include <$ac_hdr> > -@@ -10061,7 +10001,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:10065: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:10005: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -10095,12 +10035,12 @@ EOF > - do > - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 > --echo "configure:10099: checking for $ac_hdr" >&5 > -+echo "configure:10039: checking for $ac_hdr" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 10104 "configure" > -+#line 10044 "configure" > - #include "confdefs.h" > - > - #include <$ac_hdr> > -@@ -10108,7 +10048,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:10112: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:10052: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -10141,12 +10081,12 @@ EOF > - do > - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 > --echo "configure:10145: checking for $ac_hdr" >&5 > -+echo "configure:10085: checking for $ac_hdr" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 10150 "configure" > -+#line 10090 "configure" > - #include "confdefs.h" > - > - #include <$ac_hdr> > -@@ -10154,7 +10094,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:10158: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:10098: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -10188,12 +10128,12 @@ EOF > - do > - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 > --echo "configure:10192: checking for $ac_hdr" >&5 > -+echo "configure:10132: checking for $ac_hdr" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 10197 "configure" > -+#line 10137 "configure" > - #include "confdefs.h" > - > - #include <$ac_hdr> > -@@ -10201,7 +10141,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:10205: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:10145: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -10241,12 +10181,12 @@ cross_compiling=$ac_cv_prog_cxx_cross > - NEW_H=new.h > - ac_safe=`echo "new" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for new""... $ac_c" 1>&6 > --echo "configure:10245: checking for new" >&5 > -+echo "configure:10185: checking for new" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 10250 "configure" > -+#line 10190 "configure" > - #include "confdefs.h" > - > - #include > -@@ -10254,7 +10194,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:10258: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:10198: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -10298,12 +10238,12 @@ fi > - if test "x$enable_dtrace" = "xyes"; then > - ac_safe=`echo "sys/sdt.h" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for sys/sdt.h""... $ac_c" 1>&6 > --echo "configure:10302: checking for sys/sdt.h" >&5 > -+echo "configure:10242: checking for sys/sdt.h" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 10307 "configure" > -+#line 10247 "configure" > - #include "confdefs.h" > - > - #include > -@@ -10311,7 +10251,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:10315: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:10255: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -10353,12 +10293,12 @@ case $target in > - do > - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 > --echo "configure:10357: checking for $ac_hdr" >&5 > -+echo "configure:10297: checking for $ac_hdr" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 10362 "configure" > -+#line 10302 "configure" > - #include "confdefs.h" > - > - #include <$ac_hdr> > -@@ -10366,7 +10306,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:10370: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:10310: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -10418,12 +10358,12 @@ CFLAGS="$CFLAGS $LINUX_HEADERS_INCLUDES" > - > - ac_safe=`echo "linux/perf_event.h" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for linux/perf_event.h""... $ac_c" 1>&6 > --echo "configure:10422: checking for linux/perf_event.h" >&5 > -+echo "configure:10362: checking for linux/perf_event.h" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 10427 "configure" > -+#line 10367 "configure" > - #include "confdefs.h" > - > - #include > -@@ -10431,7 +10371,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:10435: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:10375: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -10446,19 +10386,19 @@ fi > - if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then > - echo "$ac_t""yes" 1>&6 > - echo $ac_n "checking for perf_event_open system call""... $ac_c" 1>&6 > --echo "configure:10450: checking for perf_event_open system call" >&5 > -+echo "configure:10390: checking for perf_event_open system call" >&5 > - if eval "test \"`echo '$''{'ac_cv_perf_event_open'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 10455 "configure" > -+#line 10395 "configure" > - #include "confdefs.h" > - #include > - int main() { > - return sizeof(__NR_perf_event_open); > - ; return 0; } > - EOF > --if { (eval echo configure:10462: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:10402: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_perf_event_open=yes > - else > -@@ -10494,7 +10434,7 @@ case $target in > - ;; > - *) > - echo $ac_n "checking for gethostbyname_r in -lc_r""... $ac_c" 1>&6 > --echo "configure:10498: checking for gethostbyname_r in -lc_r" >&5 > -+echo "configure:10438: checking for gethostbyname_r in -lc_r" >&5 > - ac_lib_var=`echo c_r'_'gethostbyname_r | sed 'y%./+-%__p_%'` > - if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > -@@ -10502,7 +10442,7 @@ else > - ac_save_LIBS="$LIBS" > - LIBS="-lc_r $LIBS" > - cat > conftest.$ac_ext < --#line 10506 "configure" > -+#line 10446 "configure" > - #include "confdefs.h" > - /* Override any gcc2 internal prototype to avoid an error. */ > - /* We use char because int might match the return type of a gcc2 > -@@ -10513,7 +10453,7 @@ int main() { > - gethostbyname_r() > - ; return 0; } > - EOF > --if { (eval echo configure:10517: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:10457: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - eval "ac_cv_lib_$ac_lib_var=yes" > - else > -@@ -10554,14 +10494,14 @@ case $target in > - *) > - > - echo $ac_n "checking for library containing dlopen""... $ac_c" 1>&6 > --echo "configure:10558: checking for library containing dlopen" >&5 > -+echo "configure:10498: checking for library containing dlopen" >&5 > - if eval "test \"`echo '$''{'ac_cv_search_dlopen'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - ac_func_search_save_LIBS="$LIBS" > - ac_cv_search_dlopen="no" > - cat > conftest.$ac_ext < --#line 10565 "configure" > -+#line 10505 "configure" > - #include "confdefs.h" > - /* Override any gcc2 internal prototype to avoid an error. */ > - /* We use char because int might match the return type of a gcc2 > -@@ -10572,7 +10512,7 @@ int main() { > - dlopen() > - ; return 0; } > - EOF > --if { (eval echo configure:10576: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:10516: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - ac_cv_search_dlopen="none required" > - else > -@@ -10583,7 +10523,7 @@ rm -f conftest* > - test "$ac_cv_search_dlopen" = "no" && for i in dl; do > - LIBS="-l$i $ac_func_search_save_LIBS" > - cat > conftest.$ac_ext < --#line 10587 "configure" > -+#line 10527 "configure" > - #include "confdefs.h" > - /* Override any gcc2 internal prototype to avoid an error. */ > - /* We use char because int might match the return type of a gcc2 > -@@ -10594,7 +10534,7 @@ int main() { > - dlopen() > - ; return 0; } > - EOF > --if { (eval echo configure:10598: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:10538: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - ac_cv_search_dlopen="-l$i" > - break > -@@ -10612,12 +10552,12 @@ if test "$ac_cv_search_dlopen" != "no"; then > - test "$ac_cv_search_dlopen" = "none required" || LIBS="$ac_cv_search_dlopen $LIBS" > - ac_safe=`echo "dlfcn.h" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for dlfcn.h""... $ac_c" 1>&6 > --echo "configure:10616: checking for dlfcn.h" >&5 > -+echo "configure:10556: checking for dlfcn.h" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 10621 "configure" > -+#line 10561 "configure" > - #include "confdefs.h" > - > - #include > -@@ -10625,7 +10565,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:10629: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:10569: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -10662,12 +10602,12 @@ CFLAGS="$CFLAGS -D_GNU_SOURCE" > - for ac_func in dladdr > - do > - echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 > --echo "configure:10666: checking for $ac_func" >&5 > -+echo "configure:10606: checking for $ac_func" >&5 > - if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 10671 "configure" > -+#line 10611 "configure" > - #include "confdefs.h" > - /* System header to define __stub macros and hopefully few prototypes, > - which can conflict with char $ac_func(); below. */ > -@@ -10690,7 +10630,7 @@ $ac_func(); > - > - ; return 0; } > - EOF > --if { (eval echo configure:10694: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:10634: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - eval "ac_cv_func_$ac_func=yes" > - else > -@@ -10724,7 +10664,7 @@ if test ! "$GNU_CXX"; then > - case $target in > - *-aix*) > - echo $ac_n "checking for demangle in -lC_r""... $ac_c" 1>&6 > --echo "configure:10728: checking for demangle in -lC_r" >&5 > -+echo "configure:10668: checking for demangle in -lC_r" >&5 > - ac_lib_var=`echo C_r'_'demangle | sed 'y%./+-%__p_%'` > - if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > -@@ -10732,7 +10672,7 @@ else > - ac_save_LIBS="$LIBS" > - LIBS="-lC_r $LIBS" > - cat > conftest.$ac_ext < --#line 10736 "configure" > -+#line 10676 "configure" > - #include "confdefs.h" > - /* Override any gcc2 internal prototype to avoid an error. */ > - /* We use char because int might match the return type of a gcc2 > -@@ -10743,7 +10683,7 @@ int main() { > - demangle() > - ; return 0; } > - EOF > --if { (eval echo configure:10747: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:10687: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - eval "ac_cv_lib_$ac_lib_var=yes" > - else > -@@ -10776,7 +10716,7 @@ fi > - ;; > - *) > - echo $ac_n "checking for demangle in -lC""... $ac_c" 1>&6 > --echo "configure:10780: checking for demangle in -lC" >&5 > -+echo "configure:10720: checking for demangle in -lC" >&5 > - ac_lib_var=`echo C'_'demangle | sed 'y%./+-%__p_%'` > - if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > -@@ -10784,7 +10724,7 @@ else > - ac_save_LIBS="$LIBS" > - LIBS="-lC $LIBS" > - cat > conftest.$ac_ext < --#line 10788 "configure" > -+#line 10728 "configure" > - #include "confdefs.h" > - /* Override any gcc2 internal prototype to avoid an error. */ > - /* We use char because int might match the return type of a gcc2 > -@@ -10795,7 +10735,7 @@ int main() { > - demangle() > - ; return 0; } > - EOF > --if { (eval echo configure:10799: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:10739: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - eval "ac_cv_lib_$ac_lib_var=yes" > - else > -@@ -10834,7 +10774,7 @@ case $target in > - ;; > - *) > - echo $ac_n "checking for socket in -lsocket""... $ac_c" 1>&6 > --echo "configure:10838: checking for socket in -lsocket" >&5 > -+echo "configure:10778: checking for socket in -lsocket" >&5 > - ac_lib_var=`echo socket'_'socket | sed 'y%./+-%__p_%'` > - if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > -@@ -10842,7 +10782,7 @@ else > - ac_save_LIBS="$LIBS" > - LIBS="-lsocket $LIBS" > - cat > conftest.$ac_ext < --#line 10846 "configure" > -+#line 10786 "configure" > - #include "confdefs.h" > - /* Override any gcc2 internal prototype to avoid an error. */ > - /* We use char because int might match the return type of a gcc2 > -@@ -10853,7 +10793,7 @@ int main() { > - socket() > - ; return 0; } > - EOF > --if { (eval echo configure:10857: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:10797: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - eval "ac_cv_lib_$ac_lib_var=yes" > - else > -@@ -10892,7 +10832,7 @@ darwin*) > - *) > - > - echo $ac_n "checking for pthread_create in -lpthreads""... $ac_c" 1>&6 > --echo "configure:10896: checking for pthread_create in -lpthreads" >&5 > -+echo "configure:10836: checking for pthread_create in -lpthreads" >&5 > - echo " > - #include > - #include > -@@ -10915,7 +10855,7 @@ echo " > - echo "$ac_t""no" 1>&6 > - > - echo $ac_n "checking for pthread_create in -lpthread""... $ac_c" 1>&6 > --echo "configure:10919: checking for pthread_create in -lpthread" >&5 > -+echo "configure:10859: checking for pthread_create in -lpthread" >&5 > - echo " > - #include > - #include > -@@ -10938,7 +10878,7 @@ echo " > - echo "$ac_t""no" 1>&6 > - > - echo $ac_n "checking for pthread_create in -lc_r""... $ac_c" 1>&6 > --echo "configure:10942: checking for pthread_create in -lc_r" >&5 > -+echo "configure:10882: checking for pthread_create in -lc_r" >&5 > - echo " > - #include > - #include > -@@ -10961,7 +10901,7 @@ echo " > - echo "$ac_t""no" 1>&6 > - > - echo $ac_n "checking for pthread_create in -lc""... $ac_c" 1>&6 > --echo "configure:10965: checking for pthread_create in -lc" >&5 > -+echo "configure:10905: checking for pthread_create in -lc" >&5 > - echo " > - #include > - #include > -@@ -11020,7 +10960,7 @@ then > - rm -f conftest* > - ac_cv_have_dash_pthread=no > - echo $ac_n "checking whether ${CC-cc} accepts -pthread""... $ac_c" 1>&6 > --echo "configure:11024: checking whether ${CC-cc} accepts -pthread" >&5 > -+echo "configure:10964: checking whether ${CC-cc} accepts -pthread" >&5 > - echo 'int main() { return 0; }' | cat > conftest.c > - ${CC-cc} -pthread -o conftest conftest.c > conftest.out 2>&1 > - if test $? -eq 0; then > -@@ -11043,7 +10983,7 @@ echo "configure:11024: checking whether ${CC-cc} accepts -pthread" >&5 > - ac_cv_have_dash_pthreads=no > - if test "$ac_cv_have_dash_pthread" = "no"; then > - echo $ac_n "checking whether ${CC-cc} accepts -pthreads""... $ac_c" 1>&6 > --echo "configure:11047: checking whether ${CC-cc} accepts -pthreads" >&5 > -+echo "configure:10987: checking whether ${CC-cc} accepts -pthreads" >&5 > - echo 'int main() { return 0; }' | cat > conftest.c > - ${CC-cc} -pthreads -o conftest conftest.c > conftest.out 2>&1 > - if test $? -eq 0; then > -@@ -11148,13 +11088,13 @@ fi > - > - if test $ac_cv_prog_gcc = yes; then > - echo $ac_n "checking whether ${CC-cc} needs -traditional""... $ac_c" 1>&6 > --echo "configure:11152: checking whether ${CC-cc} needs -traditional" >&5 > -+echo "configure:11092: checking whether ${CC-cc} needs -traditional" >&5 > - if eval "test \"`echo '$''{'ac_cv_prog_gcc_traditional'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - ac_pattern="Autoconf.*'x'" > - cat > conftest.$ac_ext < --#line 11158 "configure" > -+#line 11098 "configure" > - #include "confdefs.h" > - #include > - Autoconf TIOCGETP > -@@ -11172,7 +11112,7 @@ rm -f conftest* > - > - if test $ac_cv_prog_gcc_traditional = no; then > - cat > conftest.$ac_ext < --#line 11176 "configure" > -+#line 11116 "configure" > - #include "confdefs.h" > - #include > - Autoconf TCGETA > -@@ -11194,7 +11134,7 @@ echo "$ac_t""$ac_cv_prog_gcc_traditional" 1>&6 > - fi > - > - echo $ac_n "checking for 8-bit clean memcmp""... $ac_c" 1>&6 > --echo "configure:11198: checking for 8-bit clean memcmp" >&5 > -+echo "configure:11138: checking for 8-bit clean memcmp" >&5 > - if eval "test \"`echo '$''{'ac_cv_func_memcmp_clean'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -11202,7 +11142,7 @@ else > - ac_cv_func_memcmp_clean=no > - else > - cat > conftest.$ac_ext < --#line 11206 "configure" > -+#line 11146 "configure" > - #include "confdefs.h" > - > - main() > -@@ -11212,7 +11152,7 @@ main() > - } > - > - EOF > --if { (eval echo configure:11216: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null > -+if { (eval echo configure:11156: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null > - then > - ac_cv_func_memcmp_clean=yes > - else > -@@ -11234,12 +11174,12 @@ for ac_func in fchmod flockfile getc_unlocked _getc_nolock getpagesize \ > - stat64 statvfs statvfs64 strerror strtok_r truncate64 > - do > - echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 > --echo "configure:11238: checking for $ac_func" >&5 > -+echo "configure:11178: checking for $ac_func" >&5 > - if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 11243 "configure" > -+#line 11183 "configure" > - #include "confdefs.h" > - /* System header to define __stub macros and hopefully few prototypes, > - which can conflict with char $ac_func(); below. */ > -@@ -11262,7 +11202,7 @@ $ac_func(); > - > - ; return 0; } > - EOF > --if { (eval echo configure:11266: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:11206: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - eval "ac_cv_func_$ac_func=yes" > - else > -@@ -11291,14 +11231,14 @@ done > - > - > - cat > conftest.$ac_ext < --#line 11295 "configure" > -+#line 11235 "configure" > - #include "confdefs.h" > - #include > - int main() { > - SYSTEMTIME st;FILETIME ft;SystemTimeToFileTime(&st,&ft); > - ; return 0; } > - EOF > --if { (eval echo configure:11302: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:11242: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - ac_cv_have_systemtimetofiletime="yes" > - else > -@@ -11318,14 +11258,14 @@ EOF > - > - fi > - cat > conftest.$ac_ext < --#line 11322 "configure" > -+#line 11262 "configure" > - #include "confdefs.h" > - #include > - int main() { > - FILETIME ft;GetSystemTimeAsFileTime(&ft); > - ; return 0; } > - EOF > --if { (eval echo configure:11329: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:11269: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - ac_cv_have_getsystemtimeasfiletime="yes" > - else > -@@ -11355,19 +11295,19 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes > - cross_compiling=$ac_cv_prog_cxx_cross > - > - echo $ac_n "checking for wcrtomb""... $ac_c" 1>&6 > --echo "configure:11359: checking for wcrtomb" >&5 > -+echo "configure:11299: checking for wcrtomb" >&5 > - if eval "test \"`echo '$''{'ac_cv_have_wcrtomb'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 11364 "configure" > -+#line 11304 "configure" > - #include "confdefs.h" > - #include > - int main() { > - mbstate_t ps={0};wcrtomb(0,'f',&ps); > - ; return 0; } > - EOF > --if { (eval echo configure:11371: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:11311: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - ac_cv_have_wcrtomb="yes" > - else > -@@ -11390,19 +11330,19 @@ EOF > - > - fi > - echo $ac_n "checking for mbrtowc""... $ac_c" 1>&6 > --echo "configure:11394: checking for mbrtowc" >&5 > -+echo "configure:11334: checking for mbrtowc" >&5 > - if eval "test \"`echo '$''{'ac_cv_have_mbrtowc'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 11399 "configure" > -+#line 11339 "configure" > - #include "confdefs.h" > - #include > - int main() { > - mbstate_t ps={0};mbrtowc(0,0,0,&ps); > - ; return 0; } > - EOF > --if { (eval echo configure:11406: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:11346: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - ac_cv_have_mbrtowc="yes" > - else > -@@ -11434,12 +11374,12 @@ cross_compiling=$ac_cv_prog_cc_cross > - fi > - > - echo $ac_n "checking for res_ninit()""... $ac_c" 1>&6 > --echo "configure:11438: checking for res_ninit()" >&5 > -+echo "configure:11378: checking for res_ninit()" >&5 > - if eval "test \"`echo '$''{'ac_cv_func_res_ninit'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 11443 "configure" > -+#line 11383 "configure" > - #include "confdefs.h" > - > - #ifdef linux > -@@ -11451,7 +11391,7 @@ int main() { > - int foo = res_ninit(&_res); > - ; return 0; } > - EOF > --if { (eval echo configure:11455: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:11395: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - ac_cv_func_res_ninit=yes > - else > -@@ -11484,12 +11424,12 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes > - cross_compiling=$ac_cv_prog_cxx_cross > - > - echo $ac_n "checking for gnu_get_libc_version()""... $ac_c" 1>&6 > --echo "configure:11488: checking for gnu_get_libc_version()" >&5 > -+echo "configure:11428: checking for gnu_get_libc_version()" >&5 > - if eval "test \"`echo '$''{'ac_cv_func_gnu_get_libc_version'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 11493 "configure" > -+#line 11433 "configure" > - #include "confdefs.h" > - > - #ifdef HAVE_GNU_LIBC_VERSION_H > -@@ -11500,7 +11440,7 @@ int main() { > - const char *glibc_version = gnu_get_libc_version(); > - ; return 0; } > - EOF > --if { (eval echo configure:11504: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:11444: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - ac_cv_func_gnu_get_libc_version=yes > - else > -@@ -11534,7 +11474,7 @@ cross_compiling=$ac_cv_prog_cc_cross > - > - > - echo $ac_n "checking for an implementation of va_copy()""... $ac_c" 1>&6 > --echo "configure:11538: checking for an implementation of va_copy()" >&5 > -+echo "configure:11478: checking for an implementation of va_copy()" >&5 > - if eval "test \"`echo '$''{'ac_cv_va_copy'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -11544,7 +11484,7 @@ else > - > - else > - cat > conftest.$ac_ext < --#line 11548 "configure" > -+#line 11488 "configure" > - #include "confdefs.h" > - > - #include > -@@ -11558,7 +11498,7 @@ else > - } > - int main() { f (0, 42); return 0; } > - EOF > --if { (eval echo configure:11562: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null > -+if { (eval echo configure:11502: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null > - then > - ac_cv_va_copy=yes > - else > -@@ -11575,7 +11515,7 @@ fi > - > - echo "$ac_t""$ac_cv_va_copy" 1>&6 > - echo $ac_n "checking for an implementation of __va_copy()""... $ac_c" 1>&6 > --echo "configure:11579: checking for an implementation of __va_copy()" >&5 > -+echo "configure:11519: checking for an implementation of __va_copy()" >&5 > - if eval "test \"`echo '$''{'ac_cv___va_copy'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -11585,7 +11525,7 @@ else > - > - else > - cat > conftest.$ac_ext < --#line 11589 "configure" > -+#line 11529 "configure" > - #include "confdefs.h" > - > - #include > -@@ -11599,7 +11539,7 @@ else > - } > - int main() { f (0, 42); return 0; } > - EOF > --if { (eval echo configure:11603: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null > -+if { (eval echo configure:11543: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null > - then > - ac_cv___va_copy=yes > - else > -@@ -11616,7 +11556,7 @@ fi > - > - echo "$ac_t""$ac_cv___va_copy" 1>&6 > - echo $ac_n "checking whether va_lists can be copied by value""... $ac_c" 1>&6 > --echo "configure:11620: checking whether va_lists can be copied by value" >&5 > -+echo "configure:11560: checking whether va_lists can be copied by value" >&5 > - if eval "test \"`echo '$''{'ac_cv_va_val_copy'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -11626,7 +11566,7 @@ else > - > - else > - cat > conftest.$ac_ext < --#line 11630 "configure" > -+#line 11570 "configure" > - #include "confdefs.h" > - > - #include > -@@ -11640,7 +11580,7 @@ else > - } > - int main() { f (0, 42); return 0; } > - EOF > --if { (eval echo configure:11644: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null > -+if { (eval echo configure:11584: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null > - then > - ac_cv_va_val_copy=yes > - else > -@@ -11710,12 +11650,12 @@ ARM_ABI_PREFIX= > - if test "$GNU_CC"; then > - if test "$CPU_ARCH" = "arm" ; then > - echo $ac_n "checking for ARM EABI""... $ac_c" 1>&6 > --echo "configure:11714: checking for ARM EABI" >&5 > -+echo "configure:11654: checking for ARM EABI" >&5 > - if eval "test \"`echo '$''{'ac_cv_gcc_arm_eabi'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 11719 "configure" > -+#line 11659 "configure" > - #include "confdefs.h" > - > - int main() { > -@@ -11728,7 +11668,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:11732: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:11672: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_gcc_arm_eabi="yes" > - else > -@@ -11753,12 +11693,12 @@ echo "$ac_t""$ac_cv_gcc_arm_eabi" 1>&6 > - fi > - > - echo $ac_n "checking for modern C++ template specialization syntax support""... $ac_c" 1>&6 > --echo "configure:11757: checking for modern C++ template specialization syntax support" >&5 > -+echo "configure:11697: checking for modern C++ template specialization syntax support" >&5 > - if eval "test \"`echo '$''{'ac_cv_cpp_modern_specialize_template_syntax'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 11762 "configure" > -+#line 11702 "configure" > - #include "confdefs.h" > - template struct X { int a; }; > - class Y {}; > -@@ -11768,7 +11708,7 @@ X int_x; > - X y_x; > - ; return 0; } > - EOF > --if { (eval echo configure:11772: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:11712: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_cpp_modern_specialize_template_syntax=yes > - else > -@@ -11786,12 +11726,12 @@ if test "$ac_cv_cpp_modern_specialize_template_syntax" = no ; then > - fi > - > - echo $ac_n "checking whether partial template specialization works""... $ac_c" 1>&6 > --echo "configure:11790: checking whether partial template specialization works" >&5 > -+echo "configure:11730: checking whether partial template specialization works" >&5 > - if eval "test \"`echo '$''{'ac_cv_cpp_partial_specialization'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 11795 "configure" > -+#line 11735 "configure" > - #include "confdefs.h" > - template class Foo {}; > - template class Foo {}; > -@@ -11799,7 +11739,7 @@ int main() { > - return 0; > - ; return 0; } > - EOF > --if { (eval echo configure:11803: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:11743: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_cpp_partial_specialization=yes > - else > -@@ -11823,12 +11763,12 @@ EOF > - fi > - > - echo $ac_n "checking whether the C++ \"using\" keyword resolves ambiguity""... $ac_c" 1>&6 > --echo "configure:11827: checking whether the C++ \"using\" keyword resolves ambiguity" >&5 > -+echo "configure:11767: checking whether the C++ \"using\" keyword resolves ambiguity" >&5 > - if eval "test \"`echo '$''{'ac_cv_cpp_ambiguity_resolving_using'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 11832 "configure" > -+#line 11772 "configure" > - #include "confdefs.h" > - class X { > - public: int go(const X&) {return 3;} > -@@ -11844,7 +11784,7 @@ int main() { > - X x; Y y; y.jo(x); > - ; return 0; } > - EOF > --if { (eval echo configure:11848: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:11788: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_cpp_ambiguity_resolving_using=yes > - else > -@@ -11868,7 +11808,7 @@ EOF > - fi > - > - echo $ac_n "checking for C++ dynamic_cast to void*""... $ac_c" 1>&6 > --echo "configure:11872: checking for C++ dynamic_cast to void*" >&5 > -+echo "configure:11812: checking for C++ dynamic_cast to void*" >&5 > - if eval "test \"`echo '$''{'ac_cv_cpp_dynamic_cast_void_ptr'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -11876,7 +11816,7 @@ else > - ac_cv_cpp_dynamic_cast_void_ptr=no > - else > - cat > conftest.$ac_ext < --#line 11880 "configure" > -+#line 11820 "configure" > - #include "confdefs.h" > - class X { int i; public: virtual ~X() { } }; > - class Y { int j; public: virtual ~Y() { } }; > -@@ -11892,7 +11832,7 @@ class X { int i; public: virtual ~X() { } }; > - ((void*)&mdo == dynamic_cast(suby)))); > - } > - EOF > --if { (eval echo configure:11896: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null > -+if { (eval echo configure:11836: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null > - then > - ac_cv_cpp_dynamic_cast_void_ptr=yes > - else > -@@ -11919,19 +11859,19 @@ fi > - > - > - echo $ac_n "checking whether C++ requires implementation of unused virtual methods""... $ac_c" 1>&6 > --echo "configure:11923: checking whether C++ requires implementation of unused virtual methods" >&5 > -+echo "configure:11863: checking whether C++ requires implementation of unused virtual methods" >&5 > - if eval "test \"`echo '$''{'ac_cv_cpp_unused_required'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 11928 "configure" > -+#line 11868 "configure" > - #include "confdefs.h" > - class X {private: virtual void never_called();}; > - int main() { > - X x; > - ; return 0; } > - EOF > --if { (eval echo configure:11935: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:11875: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - ac_cv_cpp_unused_required=no > - else > -@@ -11957,12 +11897,12 @@ fi > - > - > - echo $ac_n "checking for trouble comparing to zero near std::operator!=()""... $ac_c" 1>&6 > --echo "configure:11961: checking for trouble comparing to zero near std::operator!=()" >&5 > -+echo "configure:11901: checking for trouble comparing to zero near std::operator!=()" >&5 > - if eval "test \"`echo '$''{'ac_cv_trouble_comparing_to_zero'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 11966 "configure" > -+#line 11906 "configure" > - #include "confdefs.h" > - #include > - template class Foo {}; > -@@ -11973,7 +11913,7 @@ int main() { > - Foo f; return (0 != f); > - ; return 0; } > - EOF > --if { (eval echo configure:11977: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:11917: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_trouble_comparing_to_zero=no > - else > -@@ -12003,19 +11943,19 @@ fi > - _SAVE_LDFLAGS=$LDFLAGS > - LDFLAGS="$LDFLAGS $DSO_PIC_CFLAGS $DSO_LDOPTS $MOZ_OPTIMIZE_LDFLAGS" > - echo $ac_n "checking for __thread keyword for TLS variables""... $ac_c" 1>&6 > --echo "configure:12007: checking for __thread keyword for TLS variables" >&5 > -+echo "configure:11947: checking for __thread keyword for TLS variables" >&5 > - if eval "test \"`echo '$''{'ac_cv_thread_keyword'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 12012 "configure" > -+#line 11952 "configure" > - #include "confdefs.h" > - __thread bool tlsIsMainThread = false; > - int main() { > - return tlsIsMainThread; > - ; return 0; } > - EOF > --if { (eval echo configure:12019: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:11959: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - ac_cv_thread_keyword=yes > - else > -@@ -12055,12 +11995,12 @@ fi > - MALLOC_H= > - ac_safe=`echo "malloc.h" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for malloc.h""... $ac_c" 1>&6 > --echo "configure:12059: checking for malloc.h" >&5 > -+echo "configure:11999: checking for malloc.h" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 12064 "configure" > -+#line 12004 "configure" > - #include "confdefs.h" > - > - #include > -@@ -12068,7 +12008,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:12072: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:12012: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -12091,12 +12031,12 @@ fi > - if test "$MALLOC_H" = ""; then > - ac_safe=`echo "malloc/malloc.h" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for malloc/malloc.h""... $ac_c" 1>&6 > --echo "configure:12095: checking for malloc/malloc.h" >&5 > -+echo "configure:12035: checking for malloc/malloc.h" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 12100 "configure" > -+#line 12040 "configure" > - #include "confdefs.h" > - > - #include > -@@ -12104,7 +12044,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:12108: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:12048: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -12127,12 +12067,12 @@ fi > - if test "$MALLOC_H" = ""; then > - ac_safe=`echo "sys/malloc.h" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for sys/malloc.h""... $ac_c" 1>&6 > --echo "configure:12131: checking for sys/malloc.h" >&5 > -+echo "configure:12071: checking for sys/malloc.h" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 12136 "configure" > -+#line 12076 "configure" > - #include "confdefs.h" > - > - #include > -@@ -12140,7 +12080,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:12144: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:12084: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -12176,12 +12116,12 @@ MOZ_ALLOCATING_FUNCS="strndup posix_memalign memalign valloc" > - for ac_func in strndup posix_memalign memalign valloc > - do > - echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 > --echo "configure:12180: checking for $ac_func" >&5 > -+echo "configure:12120: checking for $ac_func" >&5 > - if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 12185 "configure" > -+#line 12125 "configure" > - #include "confdefs.h" > - /* System header to define __stub macros and hopefully few prototypes, > - which can conflict with char $ac_func(); below. */ > -@@ -12207,7 +12147,7 @@ $ac_func(); > - > - ; return 0; } > - EOF > --if { (eval echo configure:12211: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:12151: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - eval "ac_cv_func_$ac_func=yes" > - else > -@@ -12237,19 +12177,19 @@ done > - > - > - echo $ac_n "checking for __attribute__((always_inline))""... $ac_c" 1>&6 > --echo "configure:12241: checking for __attribute__((always_inline))" >&5 > -+echo "configure:12181: checking for __attribute__((always_inline))" >&5 > - if eval "test \"`echo '$''{'ac_cv_attribute_always_inline'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 12246 "configure" > -+#line 12186 "configure" > - #include "confdefs.h" > - inline void f(void) __attribute__((always_inline)); > - int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:12253: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:12193: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_attribute_always_inline=yes > - else > -@@ -12264,19 +12204,19 @@ fi > - echo "$ac_t""$ac_cv_attribute_always_inline" 1>&6 > - > - echo $ac_n "checking for __attribute__((malloc))""... $ac_c" 1>&6 > --echo "configure:12268: checking for __attribute__((malloc))" >&5 > -+echo "configure:12208: checking for __attribute__((malloc))" >&5 > - if eval "test \"`echo '$''{'ac_cv_attribute_malloc'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 12273 "configure" > -+#line 12213 "configure" > - #include "confdefs.h" > - void* f(int) __attribute__((malloc)); > - int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:12280: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:12220: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_attribute_malloc=yes > - else > -@@ -12291,19 +12231,19 @@ fi > - echo "$ac_t""$ac_cv_attribute_malloc" 1>&6 > - > - echo $ac_n "checking for __attribute__((warn_unused_result))""... $ac_c" 1>&6 > --echo "configure:12295: checking for __attribute__((warn_unused_result))" >&5 > -+echo "configure:12235: checking for __attribute__((warn_unused_result))" >&5 > - if eval "test \"`echo '$''{'ac_cv_attribute_warn_unused'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 12300 "configure" > -+#line 12240 "configure" > - #include "confdefs.h" > - int f(void) __attribute__((warn_unused_result)); > - int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:12307: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:12247: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_attribute_warn_unused=yes > - else > -@@ -12327,19 +12267,19 @@ cross_compiling=$ac_cv_prog_cc_cross > - > - > - echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6 > --echo "configure:12331: checking for LC_MESSAGES" >&5 > -+echo "configure:12271: checking for LC_MESSAGES" >&5 > - if eval "test \"`echo '$''{'ac_cv_i18n_lc_messages'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 12336 "configure" > -+#line 12276 "configure" > - #include "confdefs.h" > - #include > - int main() { > - int category = LC_MESSAGES; > - ; return 0; } > - EOF > --if { (eval echo configure:12343: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:12283: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_i18n_lc_messages=yes > - else > -@@ -12365,12 +12305,12 @@ fi > - for ac_func in localeconv > - do > - echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 > --echo "configure:12369: checking for $ac_func" >&5 > -+echo "configure:12309: checking for $ac_func" >&5 > - if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 12374 "configure" > -+#line 12314 "configure" > - #include "confdefs.h" > - /* System header to define __stub macros and hopefully few prototypes, > - which can conflict with char $ac_func(); below. */ > -@@ -12393,7 +12333,7 @@ $ac_func(); > - > - ; return 0; } > - EOF > --if { (eval echo configure:12397: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:12337: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - eval "ac_cv_func_$ac_func=yes" > - else > -@@ -12580,7 +12520,7 @@ fi > - # Extract the first word of "nspr-config", so it can be a program name with args. > - set dummy nspr-config; ac_word=$2 > - echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 > --echo "configure:12584: checking for $ac_word" >&5 > -+echo "configure:12524: checking for $ac_word" >&5 > - if eval "test \"`echo '$''{'ac_cv_path_NSPR_CONFIG'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -12615,7 +12555,7 @@ fi > - > - min_nspr_version=$NSPR_MINVER > - echo $ac_n "checking for NSPR - version >= $min_nspr_version""... $ac_c" 1>&6 > --echo "configure:12619: checking for NSPR - version >= $min_nspr_version" >&5 > -+echo "configure:12559: checking for NSPR - version >= $min_nspr_version" >&5 > - > - no_nspr="" > - if test "$NSPR_CONFIG" != "no"; then > -@@ -12678,7 +12618,7 @@ if test -n "$MOZ_NATIVE_NSPR"; then > - _SAVE_CFLAGS=$CFLAGS > - CFLAGS="$CFLAGS $NSPR_CFLAGS" > - cat > conftest.$ac_ext < --#line 12682 "configure" > -+#line 12622 "configure" > - #include "confdefs.h" > - #include "prlog.h" > - int main() { > -@@ -12687,7 +12627,7 @@ int main() { > - #endif > - ; return 0; } > - EOF > --if { (eval echo configure:12691: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:12631: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - MOZ_NATIVE_NSPR=1 > - else > -@@ -12729,7 +12669,7 @@ if test -z "$MOZ_ZLIB_LIBS$MOZ_ZLIB_CFLAGS$SKIP_LIBRARY_CHECKS"; then > - MOZ_NATIVE_ZLIB= > - else > - echo $ac_n "checking for gzread in -lz""... $ac_c" 1>&6 > --echo "configure:12733: checking for gzread in -lz" >&5 > -+echo "configure:12673: checking for gzread in -lz" >&5 > - ac_lib_var=`echo z'_'gzread | sed 'y%./+-%__p_%'` > - if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > -@@ -12737,7 +12677,7 @@ else > - ac_save_LIBS="$LIBS" > - LIBS="-lz $LIBS" > - cat > conftest.$ac_ext < --#line 12741 "configure" > -+#line 12681 "configure" > - #include "confdefs.h" > - /* Override any gcc2 internal prototype to avoid an error. */ > - /* We use char because int might match the return type of a gcc2 > -@@ -12748,7 +12688,7 @@ int main() { > - gzread() > - ; return 0; } > - EOF > --if { (eval echo configure:12752: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:12692: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - eval "ac_cv_lib_$ac_lib_var=yes" > - else > -@@ -12772,7 +12712,7 @@ fi > - if test "$MOZ_NATIVE_ZLIB" = 1; then > - MOZZLIBNUM=`echo $MOZZLIB | awk -F. '{printf "0x%x\n", ((($1 * 16 + $2) * 16) + $3) * 16 + $4}'` > - cat > conftest.$ac_ext < --#line 12776 "configure" > -+#line 12716 "configure" > - #include "confdefs.h" > - #include > - #include > -@@ -12783,7 +12723,7 @@ int main() { > - #endif > - ; return 0; } > - EOF > --if { (eval echo configure:12787: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:12727: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - MOZ_NATIVE_ZLIB=1 > - else > -@@ -12829,7 +12769,7 @@ if test -n "$MOZ_NATIVE_FFI"; then > - # Extract the first word of "pkg-config", so it can be a program name with args. > - set dummy pkg-config; ac_word=$2 > - echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 > --echo "configure:12833: checking for $ac_word" >&5 > -+echo "configure:12773: checking for $ac_word" >&5 > - if eval "test \"`echo '$''{'ac_cv_path_PKG_CONFIG'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -12873,19 +12813,19 @@ fi > - PKG_CONFIG_MIN_VERSION=0.9.0 > - if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then > - echo $ac_n "checking for libffi > 3.0.9""... $ac_c" 1>&6 > --echo "configure:12877: checking for libffi > 3.0.9" >&5 > -+echo "configure:12817: checking for libffi > 3.0.9" >&5 > - > - if $PKG_CONFIG --exists "libffi > 3.0.9" ; then > - echo "$ac_t""yes" 1>&6 > - succeeded=yes > - > - echo $ac_n "checking MOZ_FFI_CFLAGS""... $ac_c" 1>&6 > --echo "configure:12884: checking MOZ_FFI_CFLAGS" >&5 > -+echo "configure:12824: checking MOZ_FFI_CFLAGS" >&5 > - MOZ_FFI_CFLAGS=`$PKG_CONFIG --cflags "libffi > 3.0.9"` > - echo "$ac_t""$MOZ_FFI_CFLAGS" 1>&6 > - > - echo $ac_n "checking MOZ_FFI_LIBS""... $ac_c" 1>&6 > --echo "configure:12889: checking MOZ_FFI_LIBS" >&5 > -+echo "configure:12829: checking MOZ_FFI_LIBS" >&5 > - ## Remove evil flags like -Wl,--export-dynamic > - MOZ_FFI_LIBS="`$PKG_CONFIG --libs \"libffi > 3.0.9\" |sed s/-Wl,--export-dynamic//g`" > - echo "$ac_t""$MOZ_FFI_LIBS" 1>&6 > -@@ -12921,7 +12861,7 @@ echo "configure:12889: checking MOZ_FFI_LIBS" >&5 > - # Extract the first word of "pkg-config", so it can be a program name with args. > - set dummy pkg-config; ac_word=$2 > - echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 > --echo "configure:12925: checking for $ac_word" >&5 > -+echo "configure:12865: checking for $ac_word" >&5 > - if eval "test \"`echo '$''{'ac_cv_path_PKG_CONFIG'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -12965,19 +12905,19 @@ fi > - PKG_CONFIG_MIN_VERSION=0.9.0 > - if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then > - echo $ac_n "checking for libffi >= 3.0.9""... $ac_c" 1>&6 > --echo "configure:12969: checking for libffi >= 3.0.9" >&5 > -+echo "configure:12909: checking for libffi >= 3.0.9" >&5 > - > - if $PKG_CONFIG --exists "libffi >= 3.0.9" ; then > - echo "$ac_t""yes" 1>&6 > - succeeded=yes > - > - echo $ac_n "checking MOZ_FFI_CFLAGS""... $ac_c" 1>&6 > --echo "configure:12976: checking MOZ_FFI_CFLAGS" >&5 > -+echo "configure:12916: checking MOZ_FFI_CFLAGS" >&5 > - MOZ_FFI_CFLAGS=`$PKG_CONFIG --cflags "libffi >= 3.0.9"` > - echo "$ac_t""$MOZ_FFI_CFLAGS" 1>&6 > - > - echo $ac_n "checking MOZ_FFI_LIBS""... $ac_c" 1>&6 > --echo "configure:12981: checking MOZ_FFI_LIBS" >&5 > -+echo "configure:12921: checking MOZ_FFI_LIBS" >&5 > - ## Remove evil flags like -Wl,--export-dynamic > - MOZ_FFI_LIBS="`$PKG_CONFIG --libs \"libffi >= 3.0.9\" |sed s/-Wl,--export-dynamic//g`" > - echo "$ac_t""$MOZ_FFI_LIBS" 1>&6 > -@@ -13112,18 +13052,18 @@ MOZ_DEBUG_DISABLE_DEFS="-DNDEBUG -DTRIMMED" > - > - if test -n "$MOZ_DEBUG"; then > - echo $ac_n "checking for valid debug flags""... $ac_c" 1>&6 > --echo "configure:13116: checking for valid debug flags" >&5 > -+echo "configure:13056: checking for valid debug flags" >&5 > - _SAVE_CFLAGS=$CFLAGS > - CFLAGS="$CFLAGS $MOZ_DEBUG_FLAGS" > - cat > conftest.$ac_ext < --#line 13120 "configure" > -+#line 13060 "configure" > - #include "confdefs.h" > - #include > - int main() { > - printf("Hello World\n"); > - ; return 0; } > - EOF > --if { (eval echo configure:13127: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:13067: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - _results=yes > - else > -@@ -13201,18 +13141,18 @@ fi > - if test "$COMPILE_ENVIRONMENT"; then > - if test -n "$MOZ_OPTIMIZE"; then > - echo $ac_n "checking for valid optimization flags""... $ac_c" 1>&6 > --echo "configure:13205: checking for valid optimization flags" >&5 > -+echo "configure:13145: checking for valid optimization flags" >&5 > - _SAVE_CFLAGS=$CFLAGS > - CFLAGS="$CFLAGS $MOZ_OPTIMIZE_FLAGS" > - cat > conftest.$ac_ext < --#line 13209 "configure" > -+#line 13149 "configure" > - #include "confdefs.h" > - #include > - int main() { > - printf("Hello World\n"); > - ; return 0; } > - EOF > --if { (eval echo configure:13216: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:13156: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - _results=yes > - else > -@@ -13364,7 +13304,7 @@ EOF > - fi > - else > - echo $ac_n "checking size of int *""... $ac_c" 1>&6 > --echo "configure:13368: checking size of int *" >&5 > -+echo "configure:13308: checking size of int *" >&5 > - if eval "test \"`echo '$''{'ac_cv_sizeof_int_p'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -13372,7 +13312,7 @@ else > - ac_cv_sizeof_int_p=4 > - else > - cat > conftest.$ac_ext < --#line 13376 "configure" > -+#line 13316 "configure" > - #include "confdefs.h" > - #include > - int main() > -@@ -13383,7 +13323,7 @@ int main() > - return(0); > - } > - EOF > --if { (eval echo configure:13387: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null > -+if { (eval echo configure:13327: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null > - then > - ac_cv_sizeof_int_p=`cat conftestval` > - else > -@@ -13687,12 +13627,12 @@ fi > - if test -n "$MOZ_VALGRIND"; then > - ac_safe=`echo "valgrind/valgrind.h" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for valgrind/valgrind.h""... $ac_c" 1>&6 > --echo "configure:13691: checking for valgrind/valgrind.h" >&5 > -+echo "configure:13631: checking for valgrind/valgrind.h" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 13696 "configure" > -+#line 13636 "configure" > - #include "confdefs.h" > - > - #include > -@@ -13700,7 +13640,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:13704: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:13644: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -13973,7 +13913,7 @@ do > - # Extract the first word of "$ac_prog", so it can be a program name with args. > - set dummy $ac_prog; ac_word=$2 > - echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 > --echo "configure:13977: checking for $ac_word" >&5 > -+echo "configure:13917: checking for $ac_word" >&5 > - if eval "test \"`echo '$''{'ac_cv_path_CCACHE'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -14099,12 +14039,12 @@ cross_compiling=$ac_cv_prog_cxx_cross > - for ac_func in __cxa_demangle > - do > - echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 > --echo "configure:14103: checking for $ac_func" >&5 > -+echo "configure:14043: checking for $ac_func" >&5 > - if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 14108 "configure" > -+#line 14048 "configure" > - #include "confdefs.h" > - /* System header to define __stub macros and hopefully few prototypes, > - which can conflict with char $ac_func(); below. */ > -@@ -14130,7 +14070,7 @@ $ac_func(); > - > - ; return 0; } > - EOF > --if { (eval echo configure:14134: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:14074: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - eval "ac_cv_func_$ac_func=yes" > - else > -@@ -14184,12 +14124,12 @@ fi > - if test -z "$SKIP_LIBRARY_CHECKS"; then > - ac_safe=`echo "unwind.h" | sed 'y%./+-%__p_%'` > - echo $ac_n "checking for unwind.h""... $ac_c" 1>&6 > --echo "configure:14188: checking for unwind.h" >&5 > -+echo "configure:14128: checking for unwind.h" >&5 > - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 14193 "configure" > -+#line 14133 "configure" > - #include "confdefs.h" > - > - #include > -@@ -14197,7 +14137,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:14201: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:14141: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - eval "ac_cv_header_$ac_safe=yes" > - else > -@@ -14214,12 +14154,12 @@ fi > - for ac_func in _Unwind_Backtrace > - do > - echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 > --echo "configure:14218: checking for $ac_func" >&5 > -+echo "configure:14158: checking for $ac_func" >&5 > - if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 14223 "configure" > -+#line 14163 "configure" > - #include "confdefs.h" > - /* System header to define __stub macros and hopefully few prototypes, > - which can conflict with char $ac_func(); below. */ > -@@ -14242,7 +14182,7 @@ $ac_func(); > - > - ; return 0; } > - EOF > --if { (eval echo configure:14246: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:14186: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - eval "ac_cv_func_$ac_func=yes" > - else > -@@ -14334,7 +14274,7 @@ if test -z "$SKIP_COMPILER_CHECKS"; then > - # Compiler Options > - > - echo $ac_n "checking for -pipe support""... $ac_c" 1>&6 > --echo "configure:14338: checking for -pipe support" >&5 > -+echo "configure:14278: checking for -pipe support" >&5 > - if test -n "$GNU_CC" -a -n "$GNU_CXX"; then > - CFLAGS="$CFLAGS -pipe" > - CXXFLAGS="$CXXFLAGS -pipe" > -@@ -14348,16 +14288,16 @@ _SAVE_CFLAGS="$CFLAGS" > - CFLAGS="$CFLAGS -fprofile-generate -fprofile-correction" > - > - echo $ac_n "checking whether C compiler supports -fprofile-generate""... $ac_c" 1>&6 > --echo "configure:14352: checking whether C compiler supports -fprofile-generate" >&5 > -+echo "configure:14292: checking whether C compiler supports -fprofile-generate" >&5 > - cat > conftest.$ac_ext < --#line 14354 "configure" > -+#line 14294 "configure" > - #include "confdefs.h" > - > - int main() { > - return 0; > - ; return 0; } > - EOF > --if { (eval echo configure:14361: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:14301: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - PROFILE_GEN_CFLAGS="-fprofile-generate" > - result="yes" > -@@ -14421,16 +14361,16 @@ if test "$_PEDANTIC"; then > - _SAVE_CXXFLAGS=$CXXFLAGS > - CXXFLAGS="$CXXFLAGS -pedantic ${_WARNINGS_CXXFLAGS} -Wno-long-long" > - echo $ac_n "checking whether C++ compiler has -pedantic long long bug""... $ac_c" 1>&6 > --echo "configure:14425: checking whether C++ compiler has -pedantic long long bug" >&5 > -+echo "configure:14365: checking whether C++ compiler has -pedantic long long bug" >&5 > - cat > conftest.$ac_ext < --#line 14427 "configure" > -+#line 14367 "configure" > - #include "confdefs.h" > - $configure_static_assert_macros > - int main() { > - CONFIGURE_STATIC_ASSERT(sizeof(long long) == 8) > - ; return 0; } > - EOF > --if { (eval echo configure:14434: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:14374: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - result="no" > - else > -@@ -14457,12 +14397,12 @@ fi > - _SAVE_CXXFLAGS=$CXXFLAGS > - CXXFLAGS="$CXXFLAGS ${_WARNINGS_CXXFLAGS}" > - echo $ac_n "checking for correct overload resolution with const and templates""... $ac_c" 1>&6 > --echo "configure:14461: checking for correct overload resolution with const and templates" >&5 > -+echo "configure:14401: checking for correct overload resolution with const and templates" >&5 > - if eval "test \"`echo '$''{'ac_nscap_nonconst_opeq_bug'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 14466 "configure" > -+#line 14406 "configure" > - #include "confdefs.h" > - > - template > -@@ -14492,7 +14432,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:14496: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:14436: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_nscap_nonconst_opeq_bug="no" > - else > -@@ -14518,19 +14458,19 @@ EOF > - fi > - > - echo $ac_n "checking for tm_zone tm_gmtoff in struct tm""... $ac_c" 1>&6 > --echo "configure:14522: checking for tm_zone tm_gmtoff in struct tm" >&5 > -+echo "configure:14462: checking for tm_zone tm_gmtoff in struct tm" >&5 > - if eval "test \"`echo '$''{'ac_cv_struct_tm_zone_tm_gmtoff'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 14527 "configure" > -+#line 14467 "configure" > - #include "confdefs.h" > - #include > - int main() { > - struct tm tm; tm.tm_zone = 0; tm.tm_gmtoff = 1; > - ; return 0; } > - EOF > --if { (eval echo configure:14534: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:14474: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - rm -rf conftest* > - ac_cv_struct_tm_zone_tm_gmtoff="yes" > - else > -@@ -14572,18 +14512,18 @@ cross_compiling=$ac_cv_prog_cc_cross > - > - > - echo $ac_n "checking what kind of list files are supported by the linker""... $ac_c" 1>&6 > --echo "configure:14576: checking what kind of list files are supported by the linker" >&5 > -+echo "configure:14516: checking what kind of list files are supported by the linker" >&5 > - if eval "test \"`echo '$''{'EXPAND_LIBS_LIST_STYLE'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - echo "int main() {return 0;}" > conftest.${ac_ext} > -- if { ac_try='${CC-cc} -o conftest.${OBJ_SUFFIX} -c $CFLAGS $CPPFLAGS conftest.${ac_ext} 1>&5'; { (eval echo configure:14581: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest.${OBJ_SUFFIX}; then > -+ if { ac_try='${CC-cc} -o conftest.${OBJ_SUFFIX} -c $CFLAGS $CPPFLAGS conftest.${ac_ext} 1>&5'; { (eval echo configure:14521: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest.${OBJ_SUFFIX}; then > - echo "INPUT(conftest.${OBJ_SUFFIX})" > conftest.list > -- if { ac_try='${CC-cc} -o conftest${ac_exeext} $LDFLAGS conftest.list $LIBS 1>&5'; { (eval echo configure:14583: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest${ac_exeext}; then > -+ if { ac_try='${CC-cc} -o conftest${ac_exeext} $LDFLAGS conftest.list $LIBS 1>&5'; { (eval echo configure:14523: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest${ac_exeext}; then > - EXPAND_LIBS_LIST_STYLE=linkerscript > - else > - echo "conftest.${OBJ_SUFFIX}" > conftest.list > -- if { ac_try='${CC-cc} -o conftest${ac_exeext} $LDFLAGS @conftest.list $LIBS 1>&5'; { (eval echo configure:14587: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest${ac_exeext}; then > -+ if { ac_try='${CC-cc} -o conftest${ac_exeext} $LDFLAGS @conftest.list $LIBS 1>&5'; { (eval echo configure:14527: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest${ac_exeext}; then > - EXPAND_LIBS_LIST_STYLE=list > - else > - EXPAND_LIBS_LIST_STYLE=none > -@@ -14603,7 +14543,7 @@ LIBS_DESC_SUFFIX=desc > - > - if test "$GCC_USE_GNU_LD"; then > - echo $ac_n "checking what kind of ordering can be done with the linker""... $ac_c" 1>&6 > --echo "configure:14607: checking what kind of ordering can be done with the linker" >&5 > -+echo "configure:14547: checking what kind of ordering can be done with the linker" >&5 > - if eval "test \"`echo '$''{'EXPAND_LIBS_ORDER_STYLE'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > -@@ -14611,14 +14551,14 @@ else > - _SAVE_LDFLAGS="$LDFLAGS" > - LDFLAGS="${LDFLAGS} -Wl,--section-ordering-file,conftest.order" > - cat > conftest.$ac_ext < --#line 14615 "configure" > -+#line 14555 "configure" > - #include "confdefs.h" > - > - int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:14622: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:14562: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - EXPAND_LIBS_ORDER_STYLE=section-ordering-file > - else > -@@ -14630,7 +14570,7 @@ fi > - rm -f conftest* > - LDFLAGS="$_SAVE_LDFLAGS" > - if test -z "$EXPAND_LIBS_ORDER_STYLE"; then > -- if { ac_try='${CC-cc} ${DSO_LDOPTS} ${LDFLAGS} -o ${DLL_PREFIX}conftest${DLL_SUFFIX} -Wl'; { (eval echo configure:14634: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then > -+ if { ac_try='${CC-cc} ${DSO_LDOPTS} ${LDFLAGS} -o ${DLL_PREFIX}conftest${DLL_SUFFIX} -Wl'; { (eval echo configure:14574: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then > - EXPAND_LIBS_ORDER_STYLE=linkerscript > - else > - EXPAND_LIBS_ORDER_STYLE=none > -@@ -14741,7 +14681,7 @@ esac > - if test -z "$SKIP_LIBRARY_CHECKS" -a -z "$NO_EDITLINE"; then > - if test -n "$JS_WANT_READLINE"; then > - echo $ac_n "checking for readline in -lreadline""... $ac_c" 1>&6 > --echo "configure:14745: checking for readline in -lreadline" >&5 > -+echo "configure:14685: checking for readline in -lreadline" >&5 > - ac_lib_var=`echo readline'_'readline | sed 'y%./+-%__p_%'` > - if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > -@@ -14749,7 +14689,7 @@ else > - ac_save_LIBS="$LIBS" > - LIBS="-lreadline $LIBS" > - cat > conftest.$ac_ext < --#line 14753 "configure" > -+#line 14693 "configure" > - #include "confdefs.h" > - /* Override any gcc2 internal prototype to avoid an error. */ > - /* We use char because int might match the return type of a gcc2 > -@@ -14760,7 +14700,7 @@ int main() { > - readline() > - ; return 0; } > - EOF > --if { (eval echo configure:14764: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:14704: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - eval "ac_cv_lib_$ac_lib_var=yes" > - else > -@@ -14990,9 +14930,9 @@ EOF > - > - > - echo $ac_n "checking for posix_fallocate""... $ac_c" 1>&6 > --echo "configure:14994: checking for posix_fallocate" >&5 > -+echo "configure:14934: checking for posix_fallocate" >&5 > - cat > conftest.$ac_ext < --#line 14996 "configure" > -+#line 14936 "configure" > - #include "confdefs.h" > - #define _XOPEN_SOURCE 600 > - #include > -@@ -15000,7 +14940,7 @@ int main() { > - posix_fallocate(0, 0, 0); > - ; return 0; } > - EOF > --if { (eval echo configure:15004: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:14944: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - ac_cv___posix_fallocate=true > - else > -@@ -15029,7 +14969,7 @@ if test "$MOZ_X11"; then > - _SAVE_CFLAGS=$CFLAGS > - CFLAGS="$CFLAGS $XCFLAGS" > - cat > conftest.$ac_ext < --#line 15033 "configure" > -+#line 14973 "configure" > - #include "confdefs.h" > - > - #include > -@@ -15047,7 +14987,7 @@ int main() { > - > - ; return 0; } > - EOF > --if { (eval echo configure:15051: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > -+if { (eval echo configure:14991: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then > - : > - else > - echo "configure: failed program was:" >&5 > -@@ -15162,12 +15102,12 @@ fi > - for ac_func in setlocale > - do > - echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 > --echo "configure:15166: checking for $ac_func" >&5 > -+echo "configure:15106: checking for $ac_func" >&5 > - if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 15171 "configure" > -+#line 15111 "configure" > - #include "confdefs.h" > - /* System header to define __stub macros and hopefully few prototypes, > - which can conflict with char $ac_func(); below. */ > -@@ -15190,7 +15130,7 @@ $ac_func(); > - > - ; return 0; } > - EOF > --if { (eval echo configure:15194: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:15134: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - eval "ac_cv_func_$ac_func=yes" > - else > -@@ -15220,12 +15160,12 @@ done > - for ac_func in localeconv > - do > - echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 > --echo "configure:15224: checking for $ac_func" >&5 > -+echo "configure:15164: checking for $ac_func" >&5 > - if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then > - echo $ac_n "(cached) $ac_c" 1>&6 > - else > - cat > conftest.$ac_ext < --#line 15229 "configure" > -+#line 15169 "configure" > - #include "confdefs.h" > - /* System header to define __stub macros and hopefully few prototypes, > - which can conflict with char $ac_func(); below. */ > -@@ -15248,7 +15188,7 @@ $ac_func(); > - > - ; return 0; } > - EOF > --if { (eval echo configure:15252: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > -+if { (eval echo configure:15192: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then > - rm -rf conftest* > - eval "ac_cv_func_$ac_func=yes" > - else > --- > -1.9.3 > - > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0002-Move-JS_BYTES_PER_WORD-out-of-config.h.patch b/meta-oe/recipes-extended/mozjs/mozjs/0002-Move-JS_BYTES_PER_WORD-out-of-config.h.patch > deleted file mode 100644 > index 6aeb2f6..0000000 > --- a/meta-oe/recipes-extended/mozjs/mozjs/0002-Move-JS_BYTES_PER_WORD-out-of-config.h.patch > +++ /dev/null > @@ -1,75 +0,0 @@ > -From d4a15ad82292ff6d772dcc631df98754d20be31b Mon Sep 17 00:00:00 2001 > -From: Colin Walters > -Date: Tue, 18 Mar 2014 11:46:05 -0400 > -Subject: [PATCH 2/5] Move JS_BYTES_PER_WORD out of config.h > - > -Instead define it in terms of the already extant GNU C extension > -__SIZEOF_POINTER__. This avoids multiarch conflicts when 32 and 64 > -bit packages of js are co-installed. > ---- > - > -Upstream-status: Pending > - > - js/src/configure.in | 9 --------- > - js/src/js-config.h.in | 1 - > - js/src/jstypes.h | 12 ++++++++++++ > - 3 files changed, 12 insertions(+), 10 deletions(-) > - > -diff --git a/js/src/configure.in b/js/src/configure.in > -index 15605b2..64c7606 100644 > ---- a/js/src/configure.in > -+++ b/js/src/configure.in > -@@ -2345,15 +2345,6 @@ else > - AC_MSG_RESULT(no) > - fi > - > --MOZ_SIZE_OF_TYPE(JS_BYTES_PER_WORD, void*, 4 8) > --if test "$moz_cv_size_of_JS_BYTES_PER_WORD" -eq "4"; then > -- AC_DEFINE(JS_BITS_PER_WORD_LOG2, 5) > --elif test "$moz_cv_size_of_JS_BYTES_PER_WORD" -eq "8"; then > -- AC_DEFINE(JS_BITS_PER_WORD_LOG2, 6) > --else > -- AC_MSG_ERROR([Unexpected JS_BYTES_PER_WORD]) > --fi > -- > - MOZ_ALIGN_OF_TYPE(JS_ALIGN_OF_POINTER, void*, 2 4 8 16) > - MOZ_SIZE_OF_TYPE(JS_BYTES_PER_DOUBLE, double, 6 8 10 12 14) > - > -diff --git a/js/src/js-config.h.in b/js/src/js-config.h.in > -index 6889e00..4775420 100644 > ---- a/js/src/js-config.h.in > -+++ b/js/src/js-config.h.in > -@@ -56,7 +56,6 @@ > - #undef JS_INT32_TYPE > - #undef JS_INT64_TYPE > - #undef JS_INTPTR_TYPE > --#undef JS_BYTES_PER_WORD > - > - /* Some mozilla code uses JS-friend APIs that depend on JS_METHODJIT being > - correct. */ > -diff --git a/js/src/jstypes.h b/js/src/jstypes.h > -index d0cf183..3e7928f 100644 > ---- a/js/src/jstypes.h > -+++ b/js/src/jstypes.h > -@@ -24,6 +24,18 @@ > - #include "mozilla/Util.h" > - > - #include "js-config.h" > -+#ifndef JS_BYTES_PER_WORD > -+#define JS_BYTES_PER_WORD __SIZEOF_POINTER__ > -+#endif > -+#ifndef JS_BITS_PER_WORD_LOG2 > -+#if JS_BYTES_PER_WORD == 8 > -+#define JS_BITS_PER_WORD_LOG2 6 > -+#elif JS_BYTES_PER_WORD == 4 > -+#define JS_BITS_PER_WORD_LOG2 5 > -+#else > -+#error Unhandled JS_BYTES_PER_WORD > -+#endif > -+#endif > - > - /*********************************************************************** > - ** MACROS: JS_EXTERN_API > --- > -1.9.3 > - > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0002-fix-cannot-find-link.patch b/meta-oe/recipes-extended/mozjs/mozjs/0002-fix-cannot-find-link.patch > new file mode 100644 > index 0000000..4f7ebc6 > --- /dev/null > +++ b/meta-oe/recipes-extended/mozjs/mozjs/0002-fix-cannot-find-link.patch > @@ -0,0 +1,34 @@ > +From e6dcee5f8a0f80ce99946b81fa1233611a149fe6 Mon Sep 17 00:00:00 2001 > +From: Hongxu Jia > +Date: Thu, 12 Jul 2018 18:00:52 +0800 > +Subject: [PATCH 2/5] fix cannot find link > + > +.. > +|DEBUG: link: Trying 'mips64-wrs-linux-ld --sysroot=tmp-glibc/work/ > +mips64-wrs-linux/mozjs/52.8.1-r0/recipe-sysroot ' > +|ERROR: Cannot find link > +... > + > +Upstream-Status: Inappropriate [oe specific] > + > +Signed-off-by: Hongxu Jia > +--- > + build/moz.configure/checks.configure | 2 +- > + 1 file changed, 1 insertion(+), 1 deletion(-) > + > +diff --git a/build/moz.configure/checks.configure b/build/moz.configure/checks.configure > +index 8c2dbc0..83bffc3 100644 > +--- a/build/moz.configure/checks.configure > ++++ b/build/moz.configure/checks.configure > +@@ -128,7 +128,7 @@ def check_prog(var, progs, what=None, input=None, allow_missing=False, > + > + for prog in value or progs: > + log.debug('%s: Trying %s', var.lower(), quote(prog)) > +- result = find_program(prog, paths) > ++ result = find_program(prog.split()[0], paths) > + if result: > + return result > + > +-- > +2.7.4 > + > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0003-workaround-autoconf-2.13-detection-failed.patch b/meta-oe/recipes-extended/mozjs/mozjs/0003-workaround-autoconf-2.13-detection-failed.patch > new file mode 100644 > index 0000000..a754ff1 > --- /dev/null > +++ b/meta-oe/recipes-extended/mozjs/mozjs/0003-workaround-autoconf-2.13-detection-failed.patch > @@ -0,0 +1,28 @@ > +From 646a78262b18e19721cd41ee515215221dd241b6 Mon Sep 17 00:00:00 2001 > +From: Hongxu Jia > +Date: Thu, 12 Jul 2018 18:12:42 +0800 > +Subject: [PATCH 3/5] workaround autoconf 2.13 detection failed > + > +Upstream-Status: Inappropriate [oe specific] > + > +Signed-off-by: Hongxu Jia > +--- > + build/moz.configure/old.configure | 2 +- > + 1 file changed, 1 insertion(+), 1 deletion(-) > + > +diff --git a/build/moz.configure/old.configure b/build/moz.configure/old.configure > +index b32c3f7..ece47f4 100644 > +--- a/build/moz.configure/old.configure > ++++ b/build/moz.configure/old.configure > +@@ -31,7 +31,7 @@ def autoconf(mozconfig, autoconf): > + autoconf = autoconf[0] if autoconf else None > + > + for ac in (mozconfig_autoconf, autoconf, 'autoconf-2.13', 'autoconf2.13', > +- 'autoconf213'): > ++ 'autoconf213', 'autoconf'): > + if ac: > + autoconf = find_program(ac) > + if autoconf: > +-- > +2.7.4 > + > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0004-do-not-use-autoconf-2.13-to-refresh-old.configure.patch b/meta-oe/recipes-extended/mozjs/mozjs/0004-do-not-use-autoconf-2.13-to-refresh-old.configure.patch > new file mode 100644 > index 0000000..4cba79c > --- /dev/null > +++ b/meta-oe/recipes-extended/mozjs/mozjs/0004-do-not-use-autoconf-2.13-to-refresh-old.configure.patch > @@ -0,0 +1,42 @@ > +From a46adb74b5ba5e17d676d31d70faca76c1381d15 Mon Sep 17 00:00:00 2001 > +From: Hongxu Jia > +Date: Thu, 12 Jul 2018 21:25:46 +0800 > +Subject: [PATCH 4/5] do not use autoconf 2.13 to refresh old.configure > + > +Upstream-Status: Inappropriate [oe specific] > + > +Signed-off-by: Hongxu Jia > +--- > + build/moz.configure/old.configure | 2 +- > + js/src/old-configure | 2 +- > + 2 files changed, 2 insertions(+), 2 deletions(-) > + > +diff --git a/build/moz.configure/old.configure b/build/moz.configure/old.configure > +index ece47f4..a73900f 100644 > +--- a/build/moz.configure/old.configure > ++++ b/build/moz.configure/old.configure > +@@ -83,7 +83,7 @@ def prepare_configure(old_configure, mozconfig, autoconf, build_env, shell, > + old_configure = os.path.join(old_configure_dir, 'js', 'src', > + os.path.basename(old_configure)) > + > +- refresh = True > ++ refresh = False > + if exists(old_configure): > + mtime = getmtime(old_configure) > + aclocal = os.path.join(build_env.topsrcdir, 'build', 'autoconf', > +diff --git a/js/src/old-configure b/js/src/old-configure > +index 75b00e1..8a8ef52 100644 > +--- a/js/src/old-configure > ++++ b/js/src/old-configure > +@@ -619,7 +619,7 @@ if test -z "$srcdir"; then > + ac_prog=$0 > + ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` > + test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. > +- srcdir=$ac_confdir > ++ srcdir="$ac_confdir/../../" > + if test ! -r $srcdir/$ac_unique_file; then > + srcdir=.. > + fi > +-- > +2.7.4 > + > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0004-mozbug746112-no-decommit-on-large-pages.patch b/meta-oe/recipes-extended/mozjs/mozjs/0004-mozbug746112-no-decommit-on-large-pages.patch > deleted file mode 100644 > index 8bd35d4..0000000 > --- a/meta-oe/recipes-extended/mozjs/mozjs/0004-mozbug746112-no-decommit-on-large-pages.patch > +++ /dev/null > @@ -1,103 +0,0 @@ > -From 0128c5a9eeee0d3fc0deb9129dd20eb79338c8f4 Mon Sep 17 00:00:00 2001 > -From: Koen Kooi > -Date: Mon, 2 Mar 2015 19:08:59 +0800 > -Subject: [PATCH 4/5] mozbug746112-no-decommit-on-large-pages > - > ---- > -Upstream-status: Pending > - > - js/src/gc/Heap.h | 15 ++++++++++----- > - js/src/jsgc.cpp | 15 ++++++++++++--- > - 2 files changed, 22 insertions(+), 8 deletions(-) > - > -diff --git a/js/src/gc/Heap.h b/js/src/gc/Heap.h > -index b8f8c78..1cfd269 100644 > ---- a/js/src/gc/Heap.h > -+++ b/js/src/gc/Heap.h > -@@ -103,26 +103,31 @@ struct Cell > - }; > - > - /* > -- * Page size is 4096 by default, except for SPARC, where it is 8192. > -+ * Page size must be static to support our arena pointer optimizations, so we > -+ * are forced to support each platform with non-4096 pages as a special case. > -+ * Note: The freelist supports a maximum arena shift of 15. > - * Note: Do not use JS_CPU_SPARC here, this header is used outside JS. > - * Bug 692267: Move page size definition to gc/Memory.h and include it > - * directly once jsgc.h is no longer an installed header. > - */ > - #if defined(SOLARIS) && (defined(__sparc) || defined(__sparcv9)) > - const size_t PageShift = 13; > -+const size_t ArenaShift = PageShift; > -+#elif defined(__powerpc__) > -+const size_t PageShift = 16; > -+const size_t ArenaShift = 12; > - #else > - const size_t PageShift = 12; > -+const size_t ArenaShift = PageShift; > - #endif > - const size_t PageSize = size_t(1) << PageShift; > -+const size_t ArenaSize = size_t(1) << ArenaShift; > -+const size_t ArenaMask = ArenaSize - 1; > - > - const size_t ChunkShift = 20; > - const size_t ChunkSize = size_t(1) << ChunkShift; > - const size_t ChunkMask = ChunkSize - 1; > - > --const size_t ArenaShift = PageShift; > --const size_t ArenaSize = PageSize; > --const size_t ArenaMask = ArenaSize - 1; > -- > - /* > - * This is the maximum number of arenas we allow in the FreeCommitted state > - * before we trigger a GC_SHRINK to release free arenas to the OS. > -diff --git a/js/src/jsgc.cpp b/js/src/jsgc.cpp > -index b3caf05..a258d2d 100644 > ---- a/js/src/jsgc.cpp > -+++ b/js/src/jsgc.cpp > -@@ -251,6 +251,13 @@ static const int BackgroundPhaseLength[] = { > - sizeof(BackgroundPhaseStrings) / sizeof(AllocKind) > - }; > - > -+/* Unused memory decommiting requires the arena size match the page size. */ > -+static bool > -+DecommitEnabled() > -+{ > -+ return PageSize == ArenaSize; > -+} > -+ > - #ifdef DEBUG > - void > - ArenaHeader::checkSynchronizedWithFreeList() const > -@@ -742,7 +749,8 @@ Chunk::fetchNextDecommittedArena() > - decommittedArenas.unset(offset); > - > - Arena *arena = &arenas[offset]; > -- MarkPagesInUse(arena, ArenaSize); > -+ if (DecommitEnabled()) > -+ MarkPagesInUse(arena, ArenaSize); > - arena->aheader.setAsNotAllocated(); > - > - return &arena->aheader; > -@@ -2731,7 +2739,7 @@ DecommitArenasFromAvailableList(JSRuntime *rt, Chunk **availableListHeadp) > - chunk->removeFromAvailableList(); > - > - size_t arenaIndex = Chunk::arenaIndex(aheader->arenaAddress()); > -- bool ok; > -+ bool ok = true; > - { > - /* > - * If the main thread waits for the decommit to finish, skip > -@@ -2741,7 +2749,8 @@ DecommitArenasFromAvailableList(JSRuntime *rt, Chunk **availableListHeadp) > - Maybe maybeUnlock; > - if (!rt->isHeapBusy()) > - maybeUnlock.construct(rt); > -- ok = MarkPagesUnused(aheader->getArena(), ArenaSize); > -+ if (DecommitEnabled()) > -+ ok = MarkPagesUnused(aheader->getArena(), ArenaSize); > - } > - > - if (ok) { > --- > -1.9.3 > - > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0005-aarch64-64k-page.patch b/meta-oe/recipes-extended/mozjs/mozjs/0005-aarch64-64k-page.patch > deleted file mode 100644 > index bc99ecc..0000000 > --- a/meta-oe/recipes-extended/mozjs/mozjs/0005-aarch64-64k-page.patch > +++ /dev/null > @@ -1,44 +0,0 @@ > -From 9c42920c2b635a399bd1f93833efdeb1696f17ee Mon Sep 17 00:00:00 2001 > -From: Koen Kooi > -Date: Mon, 2 Mar 2015 19:09:57 +0800 > -Subject: [PATCH 5/5] aarch64-64k-page > - > ---- > -Upstream-status: Pending > - > - js/src/gc/Heap.h | 2 +- > - js/src/gc/Memory.cpp | 3 +++ > - 2 files changed, 4 insertions(+), 1 deletion(-) > - > -diff --git a/js/src/gc/Heap.h b/js/src/gc/Heap.h > -index 1cfd269..f4dbcda 100644 > ---- a/js/src/gc/Heap.h > -+++ b/js/src/gc/Heap.h > -@@ -113,7 +113,7 @@ struct Cell > - #if defined(SOLARIS) && (defined(__sparc) || defined(__sparcv9)) > - const size_t PageShift = 13; > - const size_t ArenaShift = PageShift; > --#elif defined(__powerpc__) > -+#elif defined(__powerpc__) || defined(__aarch64__) > - const size_t PageShift = 16; > - const size_t ArenaShift = 12; > - #else > -diff --git a/js/src/gc/Memory.cpp b/js/src/gc/Memory.cpp > -index 5b386a2..e5ad018 100644 > ---- a/js/src/gc/Memory.cpp > -+++ b/js/src/gc/Memory.cpp > -@@ -302,8 +302,11 @@ GetPageFaultCount() > - void > - InitMemorySubsystem() > - { > -+ /* aarch64 may have 64KB or 4KB pages */ > -+#ifndef __aarch64__ > - if (size_t(sysconf(_SC_PAGESIZE)) != PageSize) > - MOZ_CRASH(); > -+#endif > - } > - > - void * > --- > -1.9.3 > - > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0005-fix-do_compile-failed-on-mips.patch b/meta-oe/recipes-extended/mozjs/mozjs/0005-fix-do_compile-failed-on-mips.patch > new file mode 100644 > index 0000000..38e4698 > --- /dev/null > +++ b/meta-oe/recipes-extended/mozjs/mozjs/0005-fix-do_compile-failed-on-mips.patch > @@ -0,0 +1,38 @@ > +From 55d833dc3c194f1eb7841f308ad3b9ec3800d3b3 Mon Sep 17 00:00:00 2001 > +From: Hongxu Jia > +Date: Fri, 13 Jul 2018 15:48:32 +0800 > +Subject: [PATCH 5/5] fix do_compile failed on mips > + > +Link with var-OS_LDFLAGS to fix the issue. > +Such as on mips: > +... > +|mips-wrsmllib32-linux-g++ -meb -mabi=32 -mhard-float ... -o libmozjs-52.so > +|/usr/include/c++/8.1.0/bits/atomic_base.h:514: error: undefined > +reference to '__atomic_fetch_add_8' > +... > + > +In recipe, set OS_LDFLAGS="-Wl,-latomic" could fix the issue. > + > +Upstream-Status: Inappropriate [oe specific] > + > +Signed-off-by: Hongxu Jia > +--- > + config/config.mk | 2 +- > + 1 file changed, 1 insertion(+), 1 deletion(-) > + > +diff --git a/config/config.mk b/config/config.mk > +index 4e3fd1a..d847ffa 100644 > +--- a/config/config.mk > ++++ b/config/config.mk > +@@ -523,7 +523,7 @@ EXPAND_MKSHLIB_ARGS = --uselist > + ifdef SYMBOL_ORDER > + EXPAND_MKSHLIB_ARGS += --symbol-order $(SYMBOL_ORDER) > + endif > +-EXPAND_MKSHLIB = $(EXPAND_LIBS_EXEC) $(EXPAND_MKSHLIB_ARGS) -- $(MKSHLIB) > ++EXPAND_MKSHLIB = $(EXPAND_LIBS_EXEC) $(EXPAND_MKSHLIB_ARGS) -- $(MKSHLIB) $(OS_LDFLAGS) > + > + # $(call CHECK_SYMBOLS,lib,PREFIX,dep_name,test) > + # Checks that the given `lib` doesn't contain dependency on symbols with a > +-- > +2.7.4 > + > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0006-support-musl.patch b/meta-oe/recipes-extended/mozjs/mozjs/0006-support-musl.patch > new file mode 100644 > index 0000000..32a977c > --- /dev/null > +++ b/meta-oe/recipes-extended/mozjs/mozjs/0006-support-musl.patch > @@ -0,0 +1,158 @@ > +From 04e8a611e958f0da1ccac61acae3a6f1a5168b20 Mon Sep 17 00:00:00 2001 > +From: Hongxu Jia > +Date: Fri, 13 Jul 2018 18:08:14 +0800 > +Subject: [PATCH] support musl > + > +Upstream-Status: Pending > + > +Signed-off-by: Hongxu Jia > +--- > + memory/jemalloc/src/src/pages.c | 1 - > + memory/mozjemalloc/jemalloc.c | 7 +++---- > + mozglue/misc/TimeStamp_darwin.cpp | 1 - > + mozglue/misc/TimeStamp_posix.cpp | 1 - > + nsprpub/pr/src/misc/prsystem.c | 1 - > + python/psutil/psutil/_psutil_bsd.c | 1 - > + python/psutil/psutil/_psutil_osx.c | 1 - > + python/psutil/psutil/arch/bsd/process_info.c | 1 - > + python/psutil/psutil/arch/osx/process_info.c | 1 - > + 9 files changed, 3 insertions(+), 12 deletions(-) > + > +diff --git a/memory/jemalloc/src/src/pages.c b/memory/jemalloc/src/src/pages.c > +index 647952a..7b964c8 100644 > +--- a/memory/jemalloc/src/src/pages.c > ++++ b/memory/jemalloc/src/src/pages.c > +@@ -2,7 +2,6 @@ > + #include "jemalloc/internal/jemalloc_internal.h" > + > + #ifdef JEMALLOC_SYSCTL_VM_OVERCOMMIT > +-#include > + #endif > + > + /******************************************************************************/ > +diff --git a/memory/mozjemalloc/jemalloc.c b/memory/mozjemalloc/jemalloc.c > +index 5d4d83a..c618de9 100644 > +--- a/memory/mozjemalloc/jemalloc.c > ++++ b/memory/mozjemalloc/jemalloc.c > +@@ -332,7 +332,6 @@ __FBSDID("$FreeBSD: head/lib/libc/stdlib/malloc.c 180599 2008-07-18 19:35:44Z ja > + #include > + #include > + #if !defined(MOZ_MEMORY_SOLARIS) && !defined(MOZ_MEMORY_ANDROID) > +-#include > + #endif > + #include > + #ifndef MOZ_MEMORY > +@@ -674,7 +673,7 @@ static bool malloc_initialized = false; > + #elif defined(MOZ_MEMORY_DARWIN) > + static malloc_mutex_t init_lock = {OS_SPINLOCK_INIT}; > + #elif defined(MOZ_MEMORY_LINUX) && !defined(MOZ_MEMORY_ANDROID) > +-static malloc_mutex_t init_lock = PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP; > ++static malloc_mutex_t init_lock = PTHREAD_MUTEX_INITIALIZER; > + #elif defined(MOZ_MEMORY) > + static malloc_mutex_t init_lock = PTHREAD_MUTEX_INITIALIZER; > + #else > +@@ -1644,7 +1643,7 @@ malloc_mutex_init(malloc_mutex_t *mutex) > + pthread_mutexattr_t attr; > + if (pthread_mutexattr_init(&attr) != 0) > + return (true); > +- pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_ADAPTIVE_NP); > ++ pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_STALLED); > + if (pthread_mutex_init(mutex, &attr) != 0) { > + pthread_mutexattr_destroy(&attr); > + return (true); > +@@ -1709,7 +1708,7 @@ malloc_spin_init(malloc_spinlock_t *lock) > + pthread_mutexattr_t attr; > + if (pthread_mutexattr_init(&attr) != 0) > + return (true); > +- pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_ADAPTIVE_NP); > ++ pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_STALLED); > + if (pthread_mutex_init(lock, &attr) != 0) { > + pthread_mutexattr_destroy(&attr); > + return (true); > +diff --git a/mozglue/misc/TimeStamp_darwin.cpp b/mozglue/misc/TimeStamp_darwin.cpp > +index f30bc98..3998c9c 100644 > +--- a/mozglue/misc/TimeStamp_darwin.cpp > ++++ b/mozglue/misc/TimeStamp_darwin.cpp > +@@ -18,7 +18,6 @@ > + > + #include > + #include > +-#include > + #include > + #include > + > +diff --git a/mozglue/misc/TimeStamp_posix.cpp b/mozglue/misc/TimeStamp_posix.cpp > +index 05dedde..d9e30f2 100644 > +--- a/mozglue/misc/TimeStamp_posix.cpp > ++++ b/mozglue/misc/TimeStamp_posix.cpp > +@@ -21,7 +21,6 @@ > + #if defined(__DragonFly__) || defined(__FreeBSD__) \ > + || defined(__NetBSD__) || defined(__OpenBSD__) > + #include > +-#include > + #endif > + > + #if defined(__DragonFly__) || defined(__FreeBSD__) > +diff --git a/nsprpub/pr/src/misc/prsystem.c b/nsprpub/pr/src/misc/prsystem.c > +index eba85fb..54b57bb 100644 > +--- a/nsprpub/pr/src/misc/prsystem.c > ++++ b/nsprpub/pr/src/misc/prsystem.c > +@@ -27,7 +27,6 @@ > + || defined(OPENBSD) || defined(DRAGONFLY) || defined(DARWIN) > + #define _PR_HAVE_SYSCTL > + #include > +-#include > + #endif > + > + #if defined(DARWIN) > +diff --git a/python/psutil/psutil/_psutil_bsd.c b/python/psutil/psutil/_psutil_bsd.c > +index 7b6e561..0a91262 100644 > +--- a/python/psutil/psutil/_psutil_bsd.c > ++++ b/python/psutil/psutil/_psutil_bsd.c > +@@ -16,7 +16,6 @@ > + #include > + #include > + #include > +-#include > + #include > + #include > + #include > +diff --git a/python/psutil/psutil/_psutil_osx.c b/python/psutil/psutil/_psutil_osx.c > +index 3ebf8ff..b3910ba 100644 > +--- a/python/psutil/psutil/_psutil_osx.c > ++++ b/python/psutil/psutil/_psutil_osx.c > +@@ -13,7 +13,6 @@ > + #include > + #include > + #include > +-#include > + #include > + #include > + #include > +diff --git a/python/psutil/psutil/arch/bsd/process_info.c b/python/psutil/psutil/arch/bsd/process_info.c > +index 4d73924..46f288d 100644 > +--- a/python/psutil/psutil/arch/bsd/process_info.c > ++++ b/python/psutil/psutil/arch/bsd/process_info.c > +@@ -15,7 +15,6 @@ > + #include > + #include > + #include > +-#include > + #include > + #include > + #include > +diff --git a/python/psutil/psutil/arch/osx/process_info.c b/python/psutil/psutil/arch/osx/process_info.c > +index b6dd5bb..62a838f 100644 > +--- a/python/psutil/psutil/arch/osx/process_info.c > ++++ b/python/psutil/psutil/arch/osx/process_info.c > +@@ -16,7 +16,6 @@ > + #include > + #include > + #include > +-#include > + #include > + > + #include "process_info.h" > +-- > +2.7.4 > + > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0010-fix-cross-compilation-on-i586-targets.patch b/meta-oe/recipes-extended/mozjs/mozjs/0010-fix-cross-compilation-on-i586-targets.patch > index 6432e1f..9194e34 100644 > --- a/meta-oe/recipes-extended/mozjs/mozjs/0010-fix-cross-compilation-on-i586-targets.patch > +++ b/meta-oe/recipes-extended/mozjs/mozjs/0010-fix-cross-compilation-on-i586-targets.patch > @@ -1,4 +1,4 @@ > -From a452138a1dd274bfad381a701729783360dc86fb Mon Sep 17 00:00:00 2001 > +From a452138a1dd274bfad381a701729783360dc86fb Mon Sep 17 00:00:00 2001 > From: Maciej Borzecki > Date: Tue, 5 Jan 2016 22:04:17 +0100 > Subject: [PATCH] fix cross compilation on i586 targets > @@ -10,37 +10,26 @@ regenerate configure, similar fix is applied there. > Upstream-Status: Inappropriate [embedded specific] > > Signed-off-by: Maciej Borzecki > + > +Rebase to 52.8.1 > +Signed-off-by: Hongxu Jia > --- > - js/src/configure | 2 +- > - js/src/configure.in | 2 +- > - 2 files changed, 2 insertions(+), 2 deletions(-) > + js/src/old-configure | 2 +- > + 1 file changed, 1 insertion(+), 1 deletion(-) > > -diff --git a/js/src/configure b/js/src/configure > -index d019b0fdba44233596541de94307010d85a8e32e..5aa40f757a3dbb7d6887175046f44212c15c2eac 100755 > ---- a/js/src/configure > -+++ b/js/src/configure > -@@ -5555,7 +5555,7 @@ TARGET_MD_ARCH=unix > +diff --git a/js/src/old-configure b/js/src/old-configure > +index 8a8ef52..d7afcff 100644 > +--- a/js/src/old-configure > ++++ b/js/src/old-configure > +@@ -3964,7 +3964,7 @@ IMPORT_LIB_SUFFIX= > DIRENT_INO=d_ino > MOZ_USER_DIR=".mozilla" > > --MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin -Wl,-rpath-link,$(prefix)/lib' > -+MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin' > - > - MOZ_COMPONENT_NSPR_LIBS='-L$(LIBXUL_DIST)/bin $(NSPR_LIBS)' > - > -diff --git a/js/src/configure.in b/js/src/configure.in > -index 0673aca12f6d83035549ade2a4a83906bf91f0f0..39b22724f9535ac1a6dba04658c91e4ef667fc47 100644 > ---- a/js/src/configure.in > -+++ b/js/src/configure.in > -@@ -919,7 +919,7 @@ TARGET_MD_ARCH=unix > - DIRENT_INO=d_ino > - MOZ_USER_DIR=".mozilla" > +-MOZ_FIX_LINK_PATHS="-Wl,-rpath-link,${DIST}/bin -Wl,-rpath-link,${prefix}/lib" > ++MOZ_FIX_LINK_PATHS="-Wl,-rpath-link,${DIST}/bin" > > --MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin -Wl,-rpath-link,$(prefix)/lib' > -+MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin' > > - MOZ_COMPONENT_NSPR_LIBS='-L$(LIBXUL_DIST)/bin $(NSPR_LIBS)' > > -- > -2.5.0 > +2.7.4 > > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/Manually_mmap_heap_memory_esr17.patch b/meta-oe/recipes-extended/mozjs/mozjs/Manually_mmap_heap_memory_esr17.patch > deleted file mode 100644 > index 83f4543..0000000 > --- a/meta-oe/recipes-extended/mozjs/mozjs/Manually_mmap_heap_memory_esr17.patch > +++ /dev/null > @@ -1,112 +0,0 @@ > -From 1d1fa95c8ff7697e46343385a79a8f7e5c514a87 Mon Sep 17 00:00:00 2001 > -From: Zheng Xu > -Date: Fri, 2 Sep 2016 17:40:05 +0800 > -Subject: [PATCH] Bug 1143022 - Manually mmap on arm64 to ensure high 17 bits > - are clear. r=ehoogeveen > - > -There might be 48-bit VA on arm64 depending on kernel configuration. > -Manually mmap heap memory to align with the assumption made by JS engine. > - > -Change-Id: Ic5d2b2fe4b758b3c87cc0688348af7e71a991146 > - > -Upstream-status: Backport > - > ---- > - js/src/gc/Memory.cpp | 73 ++++++++++++++++++++++++++++++++++++++++++++++++++-- > - 1 file changed, 71 insertions(+), 2 deletions(-) > - > -diff --git a/js/src/gc/Memory.cpp b/js/src/gc/Memory.cpp > -index e5ad018..4149adf 100644 > ---- a/js/src/gc/Memory.cpp > -+++ b/js/src/gc/Memory.cpp > -@@ -309,6 +309,75 @@ InitMemorySubsystem() > - #endif > - } > - > -+static inline void * > -+MapMemory(size_t length, int prot, int flags, int fd, off_t offset) > -+{ > -+#if defined(__ia64__) > -+ /* > -+ * The JS engine assumes that all allocated pointers have their high 17 bits clear, > -+ * which ia64's mmap doesn't support directly. However, we can emulate it by passing > -+ * mmap an "addr" parameter with those bits clear. The mmap will return that address, > -+ * or the nearest available memory above that address, providing a near-guarantee > -+ * that those bits are clear. If they are not, we return NULL below to indicate > -+ * out-of-memory. > -+ * > -+ * The addr is chosen as 0x0000070000000000, which still allows about 120TB of virtual > -+ * address space. > -+ * > -+ * See Bug 589735 for more information. > -+ */ > -+ void *region = mmap((void*)0x0000070000000000, length, prot, flags, fd, offset); > -+ if (region == MAP_FAILED) > -+ return MAP_FAILED; > -+ /* > -+ * If the allocated memory doesn't have its upper 17 bits clear, consider it > -+ * as out of memory. > -+ */ > -+ if ((uintptr_t(region) + (length - 1)) & 0xffff800000000000) { > -+ JS_ALWAYS_TRUE(0 == munmap(region, length)); > -+ return MAP_FAILED; > -+ } > -+ return region; > -+#elif defined(__aarch64__) > -+ /* > -+ * There might be similar virtual address issue on arm64 which depends on > -+ * hardware and kernel configurations. But the work around is slightly > -+ * different due to the different mmap behavior. > -+ * > -+ * TODO: Merge with the above code block if this implementation works for > -+ * ia64 and sparc64. > -+ */ > -+ const uintptr_t start = UINT64_C(0x0000070000000000); > -+ const uintptr_t end = UINT64_C(0x0000800000000000); > -+ const uintptr_t step = ChunkSize; > -+ /* > -+ * Optimization options if there are too many retries in practice: > -+ * 1. Examine /proc/self/maps to find an available address. This file is > -+ * not always available, however. In addition, even if we examine > -+ * /proc/self/maps, we may still need to retry several times due to > -+ * racing with other threads. > -+ * 2. Use a global/static variable with lock to track the addresses we have > -+ * allocated or tried. > -+ */ > -+ uintptr_t hint; > -+ void* region = MAP_FAILED; > -+ for (hint = start; region == MAP_FAILED && hint + length <= end; hint += step) { > -+ region = mmap((void*)hint, length, prot, flags, fd, offset); > -+ if (region != MAP_FAILED) { > -+ if ((uintptr_t(region) + (length - 1)) & 0xffff800000000000) { > -+ if (munmap(region, length)) { > -+ MOZ_ASSERT(errno == ENOMEM); > -+ } > -+ region = MAP_FAILED; > -+ } > -+ } > -+ } > -+ return region == MAP_FAILED ? NULL : region; > -+#else > -+ return mmap(NULL, length, prot, flags, fd, offset); > -+#endif > -+} > -+ > - void * > - MapAlignedPages(size_t size, size_t alignment) > - { > -@@ -322,12 +391,12 @@ MapAlignedPages(size_t size, size_t alignment) > - > - /* Special case: If we want page alignment, no further work is needed. */ > - if (alignment == PageSize) { > -- return mmap(NULL, size, prot, flags, -1, 0); > -+ return MapMemory(size, prot, flags, -1, 0); > - } > - > - /* Overallocate and unmap the region's edges. */ > - size_t reqSize = Min(size + 2 * alignment, 2 * size); > -- void *region = mmap(NULL, reqSize, prot, flags, -1, 0); > -+ void *region = MapMemory(reqSize, prot, flags, -1, 0); > - if (region == MAP_FAILED) > - return NULL; > - > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/Update-Double-Conversion.patch b/meta-oe/recipes-extended/mozjs/mozjs/Update-Double-Conversion.patch > deleted file mode 100644 > index c5979c9..0000000 > --- a/meta-oe/recipes-extended/mozjs/mozjs/Update-Double-Conversion.patch > +++ /dev/null > @@ -1,1732 +0,0 @@ > -From b4961d6e1d273dd9643fc3c055163d5cd3362fb7 Mon Sep 17 00:00:00 2001 > -From: Alistair Francis > -Date: Fri, 1 Jun 2018 14:47:31 -0700 > -Subject: [PATCH] Update double conversion > - > -Signed-off-by: Alistair Francis > ---- > - mfbt/double-conversion/COPYING | 26 ++ > - mfbt/double-conversion/bignum-dtoa.cc | 19 +- > - mfbt/double-conversion/bignum-dtoa.h | 2 +- > - mfbt/double-conversion/bignum.cc | 39 +-- > - mfbt/double-conversion/bignum.h | 5 +- > - mfbt/double-conversion/cached-powers.cc | 14 +- > - mfbt/double-conversion/cached-powers.h | 2 +- > - mfbt/double-conversion/diy-fp.cc | 4 +- > - mfbt/double-conversion/diy-fp.h | 24 +- > - mfbt/double-conversion/double-conversion.cc | 293 ++++++++++++++------ > - mfbt/double-conversion/double-conversion.h | 78 +++--- > - mfbt/double-conversion/fast-dtoa.cc | 29 +- > - mfbt/double-conversion/fast-dtoa.h | 2 +- > - mfbt/double-conversion/fixed-dtoa.cc | 23 +- > - mfbt/double-conversion/fixed-dtoa.h | 2 +- > - mfbt/double-conversion/ieee.h | 8 +- > - mfbt/double-conversion/strtod.cc | 59 ++-- > - mfbt/double-conversion/strtod.h | 2 +- > - mfbt/double-conversion/utils.h | 62 +++-- > - 19 files changed, 465 insertions(+), 228 deletions(-) > - create mode 100644 mfbt/double-conversion/COPYING > - > -diff --git a/mfbt/double-conversion/COPYING b/mfbt/double-conversion/COPYING > -new file mode 100644 > -index 0000000..933718a > ---- /dev/null > -+++ b/mfbt/double-conversion/COPYING > -@@ -0,0 +1,26 @@ > -+Copyright 2006-2011, the V8 project authors. All rights reserved. > -+Redistribution and use in source and binary forms, with or without > -+modification, are permitted provided that the following conditions are > -+met: > -+ > -+ * Redistributions of source code must retain the above copyright > -+ notice, this list of conditions and the following disclaimer. > -+ * Redistributions in binary form must reproduce the above > -+ copyright notice, this list of conditions and the following > -+ disclaimer in the documentation and/or other materials provided > -+ with the distribution. > -+ * Neither the name of Google Inc. nor the names of its > -+ contributors may be used to endorse or promote products derived > -+ from this software without specific prior written permission. > -+ > -+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS > -+"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 COPYRIGHT > -+OWNER OR CONTRIBUTORS 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. > -diff --git a/mfbt/double-conversion/bignum-dtoa.cc b/mfbt/double-conversion/bignum-dtoa.cc > -index b6c2e85..06bdf55 100644 > ---- a/mfbt/double-conversion/bignum-dtoa.cc > -+++ b/mfbt/double-conversion/bignum-dtoa.cc > -@@ -25,12 +25,12 @@ > - // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE > - // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. > - > --#include > -+#include > - > --#include "bignum-dtoa.h" > -+#include > - > --#include "bignum.h" > --#include "ieee.h" > -+#include > -+#include > - > - namespace double_conversion { > - > -@@ -192,13 +192,13 @@ static void GenerateShortestDigits(Bignum* numerator, Bignum* denominator, > - delta_plus = delta_minus; > - } > - *length = 0; > -- while (true) { > -+ for (;;) { > - uint16_t digit; > - digit = numerator->DivideModuloIntBignum(*denominator); > - ASSERT(digit <= 9); // digit is a uint16_t and therefore always positive. > - // digit = numerator / denominator (integer division). > - // numerator = numerator % denominator. > -- buffer[(*length)++] = digit + '0'; > -+ buffer[(*length)++] = static_cast(digit + '0'); > - > - // Can we stop already? > - // If the remainder of the division is less than the distance to the lower > -@@ -282,7 +282,7 @@ static void GenerateShortestDigits(Bignum* numerator, Bignum* denominator, > - // exponent (decimal_point), when rounding upwards. > - static void GenerateCountedDigits(int count, int* decimal_point, > - Bignum* numerator, Bignum* denominator, > -- Vector(buffer), int* length) { > -+ Vector buffer, int* length) { > - ASSERT(count >= 0); > - for (int i = 0; i < count - 1; ++i) { > - uint16_t digit; > -@@ -290,7 +290,7 @@ static void GenerateCountedDigits(int count, int* decimal_point, > - ASSERT(digit <= 9); // digit is a uint16_t and therefore always positive. > - // digit = numerator / denominator (integer division). > - // numerator = numerator % denominator. > -- buffer[i] = digit + '0'; > -+ buffer[i] = static_cast(digit + '0'); > - // Prepare for next iteration. > - numerator->Times10(); > - } > -@@ -300,7 +300,8 @@ static void GenerateCountedDigits(int count, int* decimal_point, > - if (Bignum::PlusCompare(*numerator, *numerator, *denominator) >= 0) { > - digit++; > - } > -- buffer[count - 1] = digit + '0'; > -+ ASSERT(digit <= 10); > -+ buffer[count - 1] = static_cast(digit + '0'); > - // Correct bad digits (in case we had a sequence of '9's). Propagate the > - // carry until we hat a non-'9' or til we reach the first digit. > - for (int i = count - 1; i > 0; --i) { > -diff --git a/mfbt/double-conversion/bignum-dtoa.h b/mfbt/double-conversion/bignum-dtoa.h > -index 34b9619..88d936a 100644 > ---- a/mfbt/double-conversion/bignum-dtoa.h > -+++ b/mfbt/double-conversion/bignum-dtoa.h > -@@ -28,7 +28,7 @@ > - #ifndef DOUBLE_CONVERSION_BIGNUM_DTOA_H_ > - #define DOUBLE_CONVERSION_BIGNUM_DTOA_H_ > - > --#include "utils.h" > -+#include > - > - namespace double_conversion { > - > -diff --git a/mfbt/double-conversion/bignum.cc b/mfbt/double-conversion/bignum.cc > -index 747491a..4786c2e 100644 > ---- a/mfbt/double-conversion/bignum.cc > -+++ b/mfbt/double-conversion/bignum.cc > -@@ -25,13 +25,13 @@ > - // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE > - // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. > - > --#include "bignum.h" > --#include "utils.h" > -+#include > -+#include > - > - namespace double_conversion { > - > - Bignum::Bignum() > -- : bigits_(bigits_buffer_, kBigitCapacity), used_digits_(0), exponent_(0) { > -+ : bigits_buffer_(), bigits_(bigits_buffer_, kBigitCapacity), used_digits_(0), exponent_(0) { > - for (int i = 0; i < kBigitCapacity; ++i) { > - bigits_[i] = 0; > - } > -@@ -40,6 +40,7 @@ Bignum::Bignum() > - > - template > - static int BitSize(S value) { > -+ (void) value; // Mark variable as used. > - return 8 * sizeof(value); > - } > - > -@@ -103,7 +104,7 @@ void Bignum::AssignDecimalString(Vector value) { > - const int kMaxUint64DecimalDigits = 19; > - Zero(); > - int length = value.length(); > -- int pos = 0; > -+ unsigned int pos = 0; > - // Let's just say that each digit needs 4 bits. > - while (length >= kMaxUint64DecimalDigits) { > - uint64_t digits = ReadUInt64(value, pos, kMaxUint64DecimalDigits); > -@@ -122,9 +123,8 @@ void Bignum::AssignDecimalString(Vector value) { > - static int HexCharValue(char c) { > - if ('0' <= c && c <= '9') return c - '0'; > - if ('a' <= c && c <= 'f') return 10 + c - 'a'; > -- if ('A' <= c && c <= 'F') return 10 + c - 'A'; > -- UNREACHABLE(); > -- return 0; // To make compiler happy. > -+ ASSERT('A' <= c && c <= 'F'); > -+ return 10 + c - 'A'; > - } > - > - > -@@ -445,26 +445,27 @@ void Bignum::AssignPowerUInt16(uint16_t base, int power_exponent) { > - mask >>= 2; > - uint64_t this_value = base; > - > -- bool delayed_multipliciation = false; > -+ bool delayed_multiplication = false; > - const uint64_t max_32bits = 0xFFFFFFFF; > - while (mask != 0 && this_value <= max_32bits) { > - this_value = this_value * this_value; > - // Verify that there is enough space in this_value to perform the > - // multiplication. The first bit_size bits must be 0. > - if ((power_exponent & mask) != 0) { > -+ ASSERT(bit_size > 0); > - uint64_t base_bits_mask = > - ~((static_cast(1) << (64 - bit_size)) - 1); > - bool high_bits_zero = (this_value & base_bits_mask) == 0; > - if (high_bits_zero) { > - this_value *= base; > - } else { > -- delayed_multipliciation = true; > -+ delayed_multiplication = true; > - } > - } > - mask >>= 1; > - } > - AssignUInt64(this_value); > -- if (delayed_multipliciation) { > -+ if (delayed_multiplication) { > - MultiplyByUInt32(base); > - } > - > -@@ -501,13 +502,14 @@ uint16_t Bignum::DivideModuloIntBignum(const Bignum& other) { > - // Start by removing multiples of 'other' until both numbers have the same > - // number of digits. > - while (BigitLength() > other.BigitLength()) { > -- // This naive approach is extremely inefficient if the this divided other > -- // might be big. This function is implemented for doubleToString where > -+ // This naive approach is extremely inefficient if `this` divided by other > -+ // is big. This function is implemented for doubleToString where > - // the result should be small (less than 10). > - ASSERT(other.bigits_[other.used_digits_ - 1] >= ((1 << kBigitSize) / 16)); > -+ ASSERT(bigits_[used_digits_ - 1] < 0x10000); > - // Remove the multiples of the first digit. > - // Example this = 23 and other equals 9. -> Remove 2 multiples. > -- result += bigits_[used_digits_ - 1]; > -+ result += static_cast(bigits_[used_digits_ - 1]); > - SubtractTimes(other, bigits_[used_digits_ - 1]); > - } > - > -@@ -523,13 +525,15 @@ uint16_t Bignum::DivideModuloIntBignum(const Bignum& other) { > - // Shortcut for easy (and common) case. > - int quotient = this_bigit / other_bigit; > - bigits_[used_digits_ - 1] = this_bigit - other_bigit * quotient; > -- result += quotient; > -+ ASSERT(quotient < 0x10000); > -+ result += static_cast(quotient); > - Clamp(); > - return result; > - } > - > - int division_estimate = this_bigit / (other_bigit + 1); > -- result += division_estimate; > -+ ASSERT(division_estimate < 0x10000); > -+ result += static_cast(division_estimate); > - SubtractTimes(other, division_estimate); > - > - if (other_bigit * (division_estimate + 1) > this_bigit) { > -@@ -560,8 +564,8 @@ static int SizeInHexChars(S number) { > - > - static char HexCharOfValue(int value) { > - ASSERT(0 <= value && value <= 16); > -- if (value < 10) return value + '0'; > -- return value - 10 + 'A'; > -+ if (value < 10) return static_cast(value + '0'); > -+ return static_cast(value - 10 + 'A'); > - } > - > - > -@@ -755,7 +759,6 @@ void Bignum::SubtractTimes(const Bignum& other, int factor) { > - Chunk difference = bigits_[i] - borrow; > - bigits_[i] = difference & kBigitMask; > - borrow = difference >> (kChunkSize - 1); > -- ++i; > - } > - Clamp(); > - } > -diff --git a/mfbt/double-conversion/bignum.h b/mfbt/double-conversion/bignum.h > -index 5ec3544..4fdad0c 100644 > ---- a/mfbt/double-conversion/bignum.h > -+++ b/mfbt/double-conversion/bignum.h > -@@ -28,7 +28,7 @@ > - #ifndef DOUBLE_CONVERSION_BIGNUM_H_ > - #define DOUBLE_CONVERSION_BIGNUM_H_ > - > --#include "utils.h" > -+#include > - > - namespace double_conversion { > - > -@@ -49,7 +49,6 @@ class Bignum { > - > - void AssignPowerUInt16(uint16_t base, int exponent); > - > -- void AddUInt16(uint16_t operand); > - void AddUInt64(uint64_t operand); > - void AddBignum(const Bignum& other); > - // Precondition: this >= other. > -@@ -137,7 +136,7 @@ class Bignum { > - // The Bignum's value equals value(bigits_) * 2^(exponent_ * kBigitSize). > - int exponent_; > - > -- DISALLOW_COPY_AND_ASSIGN(Bignum); > -+ DC_DISALLOW_COPY_AND_ASSIGN(Bignum); > - }; > - > - } // namespace double_conversion > -diff --git a/mfbt/double-conversion/cached-powers.cc b/mfbt/double-conversion/cached-powers.cc > -index c676429..06e819d 100644 > ---- a/mfbt/double-conversion/cached-powers.cc > -+++ b/mfbt/double-conversion/cached-powers.cc > -@@ -25,13 +25,13 @@ > - // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE > - // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. > - > --#include > --#include > --#include > -+#include > -+#include > -+#include > - > --#include "utils.h" > -+#include > - > --#include "cached-powers.h" > -+#include > - > - namespace double_conversion { > - > -@@ -131,7 +131,6 @@ static const CachedPower kCachedPowers[] = { > - {UINT64_2PART_C(0xaf87023b, 9bf0ee6b), 1066, 340}, > - }; > - > --static const int kCachedPowersLength = ARRAY_SIZE(kCachedPowers); > - static const int kCachedPowersOffset = 348; // -1 * the first decimal_exponent. > - static const double kD_1_LOG2_10 = 0.30102999566398114; // 1 / lg(10) > - // Difference between the decimal exponents in the table above. > -@@ -149,9 +148,10 @@ void PowersOfTenCache::GetCachedPowerForBinaryExponentRange( > - int foo = kCachedPowersOffset; > - int index = > - (foo + static_cast(k) - 1) / kDecimalExponentDistance + 1; > -- ASSERT(0 <= index && index < kCachedPowersLength); > -+ ASSERT(0 <= index && index < static_cast(ARRAY_SIZE(kCachedPowers))); > - CachedPower cached_power = kCachedPowers[index]; > - ASSERT(min_exponent <= cached_power.binary_exponent); > -+ (void) max_exponent; // Mark variable as used. > - ASSERT(cached_power.binary_exponent <= max_exponent); > - *decimal_exponent = cached_power.decimal_exponent; > - *power = DiyFp(cached_power.significand, cached_power.binary_exponent); > -diff --git a/mfbt/double-conversion/cached-powers.h b/mfbt/double-conversion/cached-powers.h > -index 61a5061..a425d7c 100644 > ---- a/mfbt/double-conversion/cached-powers.h > -+++ b/mfbt/double-conversion/cached-powers.h > -@@ -28,7 +28,7 @@ > - #ifndef DOUBLE_CONVERSION_CACHED_POWERS_H_ > - #define DOUBLE_CONVERSION_CACHED_POWERS_H_ > - > --#include "diy-fp.h" > -+#include > - > - namespace double_conversion { > - > -diff --git a/mfbt/double-conversion/diy-fp.cc b/mfbt/double-conversion/diy-fp.cc > -index ddd1891..f31cf60 100644 > ---- a/mfbt/double-conversion/diy-fp.cc > -+++ b/mfbt/double-conversion/diy-fp.cc > -@@ -26,8 +26,8 @@ > - // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. > - > - > --#include "diy-fp.h" > --#include "utils.h" > -+#include > -+#include > - > - namespace double_conversion { > - > -diff --git a/mfbt/double-conversion/diy-fp.h b/mfbt/double-conversion/diy-fp.h > -index 9dcf8fb..80a8c4c 100644 > ---- a/mfbt/double-conversion/diy-fp.h > -+++ b/mfbt/double-conversion/diy-fp.h > -@@ -28,7 +28,7 @@ > - #ifndef DOUBLE_CONVERSION_DIY_FP_H_ > - #define DOUBLE_CONVERSION_DIY_FP_H_ > - > --#include "utils.h" > -+#include > - > - namespace double_conversion { > - > -@@ -42,7 +42,7 @@ class DiyFp { > - static const int kSignificandSize = 64; > - > - DiyFp() : f_(0), e_(0) {} > -- DiyFp(uint64_t f, int e) : f_(f), e_(e) {} > -+ DiyFp(uint64_t significand, int exponent) : f_(significand), e_(exponent) {} > - > - // this = this - other. > - // The exponents of both numbers must be the same and the significand of this > -@@ -76,22 +76,22 @@ class DiyFp { > - > - void Normalize() { > - ASSERT(f_ != 0); > -- uint64_t f = f_; > -- int e = e_; > -+ uint64_t significand = f_; > -+ int exponent = e_; > - > - // This method is mainly called for normalizing boundaries. In general > - // boundaries need to be shifted by 10 bits. We thus optimize for this case. > - const uint64_t k10MSBits = UINT64_2PART_C(0xFFC00000, 00000000); > -- while ((f & k10MSBits) == 0) { > -- f <<= 10; > -- e -= 10; > -+ while ((significand & k10MSBits) == 0) { > -+ significand <<= 10; > -+ exponent -= 10; > - } > -- while ((f & kUint64MSB) == 0) { > -- f <<= 1; > -- e--; > -+ while ((significand & kUint64MSB) == 0) { > -+ significand <<= 1; > -+ exponent--; > - } > -- f_ = f; > -- e_ = e; > -+ f_ = significand; > -+ e_ = exponent; > - } > - > - static DiyFp Normalize(const DiyFp& a) { > -diff --git a/mfbt/double-conversion/double-conversion.cc b/mfbt/double-conversion/double-conversion.cc > -index 650137b..7819267 100644 > ---- a/mfbt/double-conversion/double-conversion.cc > -+++ b/mfbt/double-conversion/double-conversion.cc > -@@ -25,17 +25,18 @@ > - // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE > - // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. > - > --#include > --#include > -+#include > -+#include > -+#include > - > --#include "double-conversion.h" > -+#include > - > --#include "bignum-dtoa.h" > --#include "fast-dtoa.h" > --#include "fixed-dtoa.h" > --#include "ieee.h" > --#include "strtod.h" > --#include "utils.h" > -+#include > -+#include > -+#include > -+#include > -+#include > -+#include > - > - namespace double_conversion { > - > -@@ -118,7 +119,7 @@ void DoubleToStringConverter::CreateDecimalRepresentation( > - StringBuilder* result_builder) const { > - // Create a representation that is padded with zeros if needed. > - if (decimal_point <= 0) { > -- // "0.00000decimal_rep". > -+ // "0.00000decimal_rep" or "0.000decimal_rep00". > - result_builder->AddCharacter('0'); > - if (digits_after_point > 0) { > - result_builder->AddCharacter('.'); > -@@ -129,7 +130,7 @@ void DoubleToStringConverter::CreateDecimalRepresentation( > - result_builder->AddPadding('0', remaining_digits); > - } > - } else if (decimal_point >= length) { > -- // "decimal_rep0000.00000" or "decimal_rep.0000" > -+ // "decimal_rep0000.00000" or "decimal_rep.0000". > - result_builder->AddSubstring(decimal_digits, length); > - result_builder->AddPadding('0', decimal_point - length); > - if (digits_after_point > 0) { > -@@ -137,7 +138,7 @@ void DoubleToStringConverter::CreateDecimalRepresentation( > - result_builder->AddPadding('0', digits_after_point); > - } > - } else { > -- // "decima.l_rep000" > -+ // "decima.l_rep000". > - ASSERT(digits_after_point > 0); > - result_builder->AddSubstring(decimal_digits, decimal_point); > - result_builder->AddCharacter('.'); > -@@ -162,7 +163,7 @@ bool DoubleToStringConverter::ToShortestIeeeNumber( > - double value, > - StringBuilder* result_builder, > - DoubleToStringConverter::DtoaMode mode) const { > -- assert(mode == SHORTEST || mode == SHORTEST_SINGLE); > -+ ASSERT(mode == SHORTEST || mode == SHORTEST_SINGLE); > - if (Double(value).IsSpecial()) { > - return HandleSpecialValues(value, result_builder); > - } > -@@ -348,7 +349,6 @@ static BignumDtoaMode DtoaToBignumDtoaMode( > - case DoubleToStringConverter::PRECISION: return BIGNUM_DTOA_PRECISION; > - default: > - UNREACHABLE(); > -- return BIGNUM_DTOA_SHORTEST; // To silence compiler. > - } > - } > - > -@@ -403,8 +403,8 @@ void DoubleToStringConverter::DoubleToAscii(double v, > - vector, length, point); > - break; > - default: > -- UNREACHABLE(); > - fast_worked = false; > -+ UNREACHABLE(); > - } > - if (fast_worked) return; > - > -@@ -415,20 +415,55 @@ void DoubleToStringConverter::DoubleToAscii(double v, > - } > - > - > --// Consumes the given substring from the iterator. > --// Returns false, if the substring does not match. > --static bool ConsumeSubString(const char** current, > -- const char* end, > -- const char* substring) { > -- ASSERT(**current == *substring); > -+namespace { > -+ > -+inline char ToLower(char ch) { > -+ static const std::ctype& cType = > -+ std::use_facet >(std::locale::classic()); > -+ return cType.tolower(ch); > -+} > -+ > -+inline char Pass(char ch) { > -+ return ch; > -+} > -+ > -+template > -+static inline bool ConsumeSubStringImpl(Iterator* current, > -+ Iterator end, > -+ const char* substring, > -+ Converter converter) { > -+ ASSERT(converter(**current) == *substring); > - for (substring++; *substring != '\0'; substring++) { > - ++*current; > -- if (*current == end || **current != *substring) return false; > -+ if (*current == end || converter(**current) != *substring) { > -+ return false; > -+ } > - } > - ++*current; > - return true; > - } > - > -+// Consumes the given substring from the iterator. > -+// Returns false, if the substring does not match. > -+template > -+static bool ConsumeSubString(Iterator* current, > -+ Iterator end, > -+ const char* substring, > -+ bool allow_case_insensibility) { > -+ if (allow_case_insensibility) { > -+ return ConsumeSubStringImpl(current, end, substring, ToLower); > -+ } else { > -+ return ConsumeSubStringImpl(current, end, substring, Pass); > -+ } > -+} > -+ > -+// Consumes first character of the str is equal to ch > -+inline bool ConsumeFirstCharacter(char ch, > -+ const char* str, > -+ bool case_insensibility) { > -+ return case_insensibility ? ToLower(ch) == str[0] : ch == str[0]; > -+} > -+} // namespace > - > - // Maximum number of significant digits in decimal representation. > - // The longest possible double in decimal representation is > -@@ -440,10 +475,36 @@ static bool ConsumeSubString(const char** current, > - const int kMaxSignificantDigits = 772; > - > - > -+static const char kWhitespaceTable7[] = { 32, 13, 10, 9, 11, 12 }; > -+static const int kWhitespaceTable7Length = ARRAY_SIZE(kWhitespaceTable7); > -+ > -+ > -+static const uc16 kWhitespaceTable16[] = { > -+ 160, 8232, 8233, 5760, 6158, 8192, 8193, 8194, 8195, > -+ 8196, 8197, 8198, 8199, 8200, 8201, 8202, 8239, 8287, 12288, 65279 > -+}; > -+static const int kWhitespaceTable16Length = ARRAY_SIZE(kWhitespaceTable16); > -+ > -+ > -+static bool isWhitespace(int x) { > -+ if (x < 128) { > -+ for (int i = 0; i < kWhitespaceTable7Length; i++) { > -+ if (kWhitespaceTable7[i] == x) return true; > -+ } > -+ } else { > -+ for (int i = 0; i < kWhitespaceTable16Length; i++) { > -+ if (kWhitespaceTable16[i] == x) return true; > -+ } > -+ } > -+ return false; > -+} > -+ > -+ > - // Returns true if a nonspace found and false if the end has reached. > --static inline bool AdvanceToNonspace(const char** current, const char* end) { > -+template > -+static inline bool AdvanceToNonspace(Iterator* current, Iterator end) { > - while (*current != end) { > -- if (**current != ' ') return true; > -+ if (!isWhitespace(**current)) return true; > - ++*current; > - } > - return false; > -@@ -462,26 +523,57 @@ static double SignedZero(bool sign) { > - } > - > - > -+// Returns true if 'c' is a decimal digit that is valid for the given radix. > -+// > -+// The function is small and could be inlined, but VS2012 emitted a warning > -+// because it constant-propagated the radix and concluded that the last > -+// condition was always true. By moving it into a separate function the > -+// compiler wouldn't warn anymore. > -+#if _MSC_VER > -+#pragma optimize("",off) > -+static bool IsDecimalDigitForRadix(int c, int radix) { > -+ return '0' <= c && c <= '9' && (c - '0') < radix; > -+} > -+#pragma optimize("",on) > -+#else > -+static bool inline IsDecimalDigitForRadix(int c, int radix) { > -+ return '0' <= c && c <= '9' && (c - '0') < radix; > -+} > -+#endif > -+// Returns true if 'c' is a character digit that is valid for the given radix. > -+// The 'a_character' should be 'a' or 'A'. > -+// > -+// The function is small and could be inlined, but VS2012 emitted a warning > -+// because it constant-propagated the radix and concluded that the first > -+// condition was always false. By moving it into a separate function the > -+// compiler wouldn't warn anymore. > -+static bool IsCharacterDigitForRadix(int c, int radix, char a_character) { > -+ return radix > 10 && c >= a_character && c < a_character + radix - 10; > -+} > -+ > -+ > - // Parsing integers with radix 2, 4, 8, 16, 32. Assumes current != end. > --template > --static double RadixStringToIeee(const char* current, > -- const char* end, > -+template > -+static double RadixStringToIeee(Iterator* current, > -+ Iterator end, > - bool sign, > - bool allow_trailing_junk, > - double junk_string_value, > - bool read_as_double, > -- const char** trailing_pointer) { > -- ASSERT(current != end); > -+ bool* result_is_junk) { > -+ ASSERT(*current != end); > - > - const int kDoubleSize = Double::kSignificandSize; > - const int kSingleSize = Single::kSignificandSize; > - const int kSignificandSize = read_as_double? kDoubleSize: kSingleSize; > - > -+ *result_is_junk = true; > -+ > - // Skip leading 0s. > -- while (*current == '0') { > -- ++current; > -- if (current == end) { > -- *trailing_pointer = end; > -+ while (**current == '0') { > -+ ++(*current); > -+ if (*current == end) { > -+ *result_is_junk = false; > - return SignedZero(sign); > - } > - } > -@@ -492,14 +584,14 @@ static double RadixStringToIeee(const char* current, > - > - do { > - int digit; > -- if (*current >= '0' && *current <= '9' && *current < '0' + radix) { > -- digit = static_cast(*current) - '0'; > -- } else if (radix > 10 && *current >= 'a' && *current < 'a' + radix - 10) { > -- digit = static_cast(*current) - 'a' + 10; > -- } else if (radix > 10 && *current >= 'A' && *current < 'A' + radix - 10) { > -- digit = static_cast(*current) - 'A' + 10; > -+ if (IsDecimalDigitForRadix(**current, radix)) { > -+ digit = static_cast(**current) - '0'; > -+ } else if (IsCharacterDigitForRadix(**current, radix, 'a')) { > -+ digit = static_cast(**current) - 'a' + 10; > -+ } else if (IsCharacterDigitForRadix(**current, radix, 'A')) { > -+ digit = static_cast(**current) - 'A' + 10; > - } else { > -- if (allow_trailing_junk || !AdvanceToNonspace(¤t, end)) { > -+ if (allow_trailing_junk || !AdvanceToNonspace(current, end)) { > - break; > - } else { > - return junk_string_value; > -@@ -523,14 +615,14 @@ static double RadixStringToIeee(const char* current, > - exponent = overflow_bits_count; > - > - bool zero_tail = true; > -- while (true) { > -- ++current; > -- if (current == end || !isDigit(*current, radix)) break; > -- zero_tail = zero_tail && *current == '0'; > -+ for (;;) { > -+ ++(*current); > -+ if (*current == end || !isDigit(**current, radix)) break; > -+ zero_tail = zero_tail && **current == '0'; > - exponent += radix_log_2; > - } > - > -- if (!allow_trailing_junk && AdvanceToNonspace(¤t, end)) { > -+ if (!allow_trailing_junk && AdvanceToNonspace(current, end)) { > - return junk_string_value; > - } > - > -@@ -552,13 +644,13 @@ static double RadixStringToIeee(const char* current, > - } > - break; > - } > -- ++current; > -- } while (current != end); > -+ ++(*current); > -+ } while (*current != end); > - > - ASSERT(number < ((int64_t)1 << kSignificandSize)); > - ASSERT(static_cast(static_cast(number)) == number); > - > -- *trailing_pointer = current; > -+ *result_is_junk = false; > - > - if (exponent == 0) { > - if (sign) { > -@@ -572,14 +664,14 @@ static double RadixStringToIeee(const char* current, > - return Double(DiyFp(number, exponent)).value(); > - } > - > -- > -+template > - double StringToDoubleConverter::StringToIeee( > -- const char* input, > -+ Iterator input, > - int length, > -- int* processed_characters_count, > -- bool read_as_double) { > -- const char* current = input; > -- const char* end = input + length; > -+ bool read_as_double, > -+ int* processed_characters_count) const { > -+ Iterator current = input; > -+ Iterator end = input + length; > - > - *processed_characters_count = 0; > - > -@@ -587,6 +679,8 @@ double StringToDoubleConverter::StringToIeee( > - const bool allow_leading_spaces = (flags_ & ALLOW_LEADING_SPACES) != 0; > - const bool allow_trailing_spaces = (flags_ & ALLOW_TRAILING_SPACES) != 0; > - const bool allow_spaces_after_sign = (flags_ & ALLOW_SPACES_AFTER_SIGN) != 0; > -+ const bool allow_case_insensibility = (flags_ & ALLOW_CASE_INSENSIBILITY) != 0; > -+ > - > - // To make sure that iterator dereferencing is valid the following > - // convention is used: > -@@ -600,7 +694,7 @@ double StringToDoubleConverter::StringToIeee( > - > - if (allow_leading_spaces || allow_trailing_spaces) { > - if (!AdvanceToNonspace(¤t, end)) { > -- *processed_characters_count = current - input; > -+ *processed_characters_count = static_cast(current - input); > - return empty_string_value_; > - } > - if (!allow_leading_spaces && (input != current)) { > -@@ -626,7 +720,7 @@ double StringToDoubleConverter::StringToIeee( > - if (*current == '+' || *current == '-') { > - sign = (*current == '-'); > - ++current; > -- const char* next_non_space = current; > -+ Iterator next_non_space = current; > - // Skip following spaces (if allowed). > - if (!AdvanceToNonspace(&next_non_space, end)) return junk_string_value_; > - if (!allow_spaces_after_sign && (current != next_non_space)) { > -@@ -636,8 +730,8 @@ double StringToDoubleConverter::StringToIeee( > - } > - > - if (infinity_symbol_ != NULL) { > -- if (*current == infinity_symbol_[0]) { > -- if (!ConsumeSubString(¤t, end, infinity_symbol_)) { > -+ if (ConsumeFirstCharacter(*current, infinity_symbol_, allow_case_insensibility)) { > -+ if (!ConsumeSubString(¤t, end, infinity_symbol_, allow_case_insensibility)) { > - return junk_string_value_; > - } > - > -@@ -649,14 +743,14 @@ double StringToDoubleConverter::StringToIeee( > - } > - > - ASSERT(buffer_pos == 0); > -- *processed_characters_count = current - input; > -+ *processed_characters_count = static_cast(current - input); > - return sign ? -Double::Infinity() : Double::Infinity(); > - } > - } > - > - if (nan_symbol_ != NULL) { > -- if (*current == nan_symbol_[0]) { > -- if (!ConsumeSubString(¤t, end, nan_symbol_)) { > -+ if (ConsumeFirstCharacter(*current, nan_symbol_, allow_case_insensibility)) { > -+ if (!ConsumeSubString(¤t, end, nan_symbol_, allow_case_insensibility)) { > - return junk_string_value_; > - } > - > -@@ -668,7 +762,7 @@ double StringToDoubleConverter::StringToIeee( > - } > - > - ASSERT(buffer_pos == 0); > -- *processed_characters_count = current - input; > -+ *processed_characters_count = static_cast(current - input); > - return sign ? -Double::NaN() : Double::NaN(); > - } > - } > -@@ -677,7 +771,7 @@ double StringToDoubleConverter::StringToIeee( > - if (*current == '0') { > - ++current; > - if (current == end) { > -- *processed_characters_count = current - input; > -+ *processed_characters_count = static_cast(current - input); > - return SignedZero(sign); > - } > - > -@@ -690,17 +784,17 @@ double StringToDoubleConverter::StringToIeee( > - return junk_string_value_; // "0x". > - } > - > -- const char* tail_pointer = NULL; > -- double result = RadixStringToIeee<4>(current, > -+ bool result_is_junk; > -+ double result = RadixStringToIeee<4>(¤t, > - end, > - sign, > - allow_trailing_junk, > - junk_string_value_, > - read_as_double, > -- &tail_pointer); > -- if (tail_pointer != NULL) { > -- if (allow_trailing_spaces) AdvanceToNonspace(&tail_pointer, end); > -- *processed_characters_count = tail_pointer - input; > -+ &result_is_junk); > -+ if (!result_is_junk) { > -+ if (allow_trailing_spaces) AdvanceToNonspace(¤t, end); > -+ *processed_characters_count = static_cast(current - input); > - } > - return result; > - } > -@@ -709,7 +803,7 @@ double StringToDoubleConverter::StringToIeee( > - while (*current == '0') { > - ++current; > - if (current == end) { > -- *processed_characters_count = current - input; > -+ *processed_characters_count = static_cast(current - input); > - return SignedZero(sign); > - } > - } > -@@ -757,7 +851,7 @@ double StringToDoubleConverter::StringToIeee( > - while (*current == '0') { > - ++current; > - if (current == end) { > -- *processed_characters_count = current - input; > -+ *processed_characters_count = static_cast(current - input); > - return SignedZero(sign); > - } > - exponent--; // Move this 0 into the exponent. > -@@ -793,20 +887,23 @@ double StringToDoubleConverter::StringToIeee( > - if (*current == 'e' || *current == 'E') { > - if (octal && !allow_trailing_junk) return junk_string_value_; > - if (octal) goto parsing_done; > -+ Iterator junk_begin = current; > - ++current; > - if (current == end) { > - if (allow_trailing_junk) { > -+ current = junk_begin; > - goto parsing_done; > - } else { > - return junk_string_value_; > - } > - } > -- char sign = '+'; > -+ char exponen_sign = '+'; > - if (*current == '+' || *current == '-') { > -- sign = static_cast(*current); > -+ exponen_sign = static_cast(*current); > - ++current; > - if (current == end) { > - if (allow_trailing_junk) { > -+ current = junk_begin; > - goto parsing_done; > - } else { > - return junk_string_value_; > -@@ -816,6 +913,7 @@ double StringToDoubleConverter::StringToIeee( > - > - if (current == end || *current < '0' || *current > '9') { > - if (allow_trailing_junk) { > -+ current = junk_begin; > - goto parsing_done; > - } else { > - return junk_string_value_; > -@@ -837,7 +935,7 @@ double StringToDoubleConverter::StringToIeee( > - ++current; > - } while (current != end && *current >= '0' && *current <= '9'); > - > -- exponent += (sign == '-' ? -num : num); > -+ exponent += (exponen_sign == '-' ? -num : num); > - } > - > - if (!(allow_trailing_spaces || allow_trailing_junk) && (current != end)) { > -@@ -855,16 +953,17 @@ double StringToDoubleConverter::StringToIeee( > - > - if (octal) { > - double result; > -- const char* tail_pointer = NULL; > -- result = RadixStringToIeee<3>(buffer, > -+ bool result_is_junk; > -+ char* start = buffer; > -+ result = RadixStringToIeee<3>(&start, > - buffer + buffer_pos, > - sign, > - allow_trailing_junk, > - junk_string_value_, > - read_as_double, > -- &tail_pointer); > -- ASSERT(tail_pointer != NULL); > -- *processed_characters_count = current - input; > -+ &result_is_junk); > -+ ASSERT(!result_is_junk); > -+ *processed_characters_count = static_cast(current - input); > - return result; > - } > - > -@@ -882,8 +981,42 @@ double StringToDoubleConverter::StringToIeee( > - } else { > - converted = Strtof(Vector(buffer, buffer_pos), exponent); > - } > -- *processed_characters_count = current - input; > -+ *processed_characters_count = static_cast(current - input); > - return sign? -converted: converted; > - } > - > -+ > -+double StringToDoubleConverter::StringToDouble( > -+ const char* buffer, > -+ int length, > -+ int* processed_characters_count) const { > -+ return StringToIeee(buffer, length, true, processed_characters_count); > -+} > -+ > -+ > -+double StringToDoubleConverter::StringToDouble( > -+ const uc16* buffer, > -+ int length, > -+ int* processed_characters_count) const { > -+ return StringToIeee(buffer, length, true, processed_characters_count); > -+} > -+ > -+ > -+float StringToDoubleConverter::StringToFloat( > -+ const char* buffer, > -+ int length, > -+ int* processed_characters_count) const { > -+ return static_cast(StringToIeee(buffer, length, false, > -+ processed_characters_count)); > -+} > -+ > -+ > -+float StringToDoubleConverter::StringToFloat( > -+ const uc16* buffer, > -+ int length, > -+ int* processed_characters_count) const { > -+ return static_cast(StringToIeee(buffer, length, false, > -+ processed_characters_count)); > -+} > -+ > - } // namespace double_conversion > -diff --git a/mfbt/double-conversion/double-conversion.h b/mfbt/double-conversion/double-conversion.h > -index 0e7226d..e66a566 100644 > ---- a/mfbt/double-conversion/double-conversion.h > -+++ b/mfbt/double-conversion/double-conversion.h > -@@ -28,8 +28,7 @@ > - #ifndef DOUBLE_CONVERSION_DOUBLE_CONVERSION_H_ > - #define DOUBLE_CONVERSION_DOUBLE_CONVERSION_H_ > - > --#include "mozilla/Types.h" > --#include "utils.h" > -+#include > - > - namespace double_conversion { > - > -@@ -130,7 +129,7 @@ class DoubleToStringConverter { > - } > - > - // Returns a converter following the EcmaScript specification. > -- static MFBT_API(const DoubleToStringConverter&) EcmaScriptConverter(); > -+ static const DoubleToStringConverter& EcmaScriptConverter(); > - > - // Computes the shortest string of digits that correctly represent the input > - // number. Depending on decimal_in_shortest_low and decimal_in_shortest_high > -@@ -198,7 +197,7 @@ class DoubleToStringConverter { > - // The last two conditions imply that the result will never contain more than > - // 1 + kMaxFixedDigitsBeforePoint + 1 + kMaxFixedDigitsAfterPoint characters > - // (one additional character for the sign, and one for the decimal point). > -- MFBT_API(bool) ToFixed(double value, > -+ bool ToFixed(double value, > - int requested_digits, > - StringBuilder* result_builder) const; > - > -@@ -230,7 +229,7 @@ class DoubleToStringConverter { > - // kMaxExponentialDigits + 8 characters (the sign, the digit before the > - // decimal point, the decimal point, the exponent character, the > - // exponent's sign, and at most 3 exponent digits). > -- MFBT_API(bool) ToExponential(double value, > -+ bool ToExponential(double value, > - int requested_digits, > - StringBuilder* result_builder) const; > - > -@@ -268,7 +267,7 @@ class DoubleToStringConverter { > - // The last condition implies that the result will never contain more than > - // kMaxPrecisionDigits + 7 characters (the sign, the decimal point, the > - // exponent character, the exponent's sign, and at most 3 exponent digits). > -- MFBT_API(bool) ToPrecision(double value, > -+ bool ToPrecision(double value, > - int precision, > - StringBuilder* result_builder) const; > - > -@@ -293,15 +292,20 @@ class DoubleToStringConverter { > - // kBase10MaximalLength. > - // Note that DoubleToAscii null-terminates its input. So the given buffer > - // should be at least kBase10MaximalLength + 1 characters long. > -- static const MFBT_DATA(int) kBase10MaximalLength = 17; > -+ static const int kBase10MaximalLength = 17; > - > -- // Converts the given double 'v' to ascii. 'v' must not be NaN, +Infinity, or > -- // -Infinity. In SHORTEST_SINGLE-mode this restriction also applies to 'v' > -- // after it has been casted to a single-precision float. That is, in this > -- // mode static_cast(v) must not be NaN, +Infinity or -Infinity. > -+ // Converts the given double 'v' to digit characters. 'v' must not be NaN, > -+ // +Infinity, or -Infinity. In SHORTEST_SINGLE-mode this restriction also > -+ // applies to 'v' after it has been casted to a single-precision float. That > -+ // is, in this mode static_cast(v) must not be NaN, +Infinity or > -+ // -Infinity. > - // > - // The result should be interpreted as buffer * 10^(point-length). > - // > -+ // The digits are written to the buffer in the platform's charset, which is > -+ // often UTF-8 (with ASCII-range digits) but may be another charset, such > -+ // as EBCDIC. > -+ // > - // The output depends on the given mode: > - // - SHORTEST: produce the least amount of digits for which the internal > - // identity requirement is still satisfied. If the digits are printed > -@@ -333,7 +337,7 @@ class DoubleToStringConverter { > - // terminating null-character when computing the maximal output size. > - // The given length is only used in debug mode to ensure the buffer is big > - // enough. > -- static MFBT_API(void) DoubleToAscii(double v, > -+ static void DoubleToAscii(double v, > - DtoaMode mode, > - int requested_digits, > - char* buffer, > -@@ -344,7 +348,7 @@ class DoubleToStringConverter { > - > - private: > - // Implementation for ToShortest and ToShortestSingle. > -- MFBT_API(bool) ToShortestIeeeNumber(double value, > -+ bool ToShortestIeeeNumber(double value, > - StringBuilder* result_builder, > - DtoaMode mode) const; > - > -@@ -352,15 +356,15 @@ class DoubleToStringConverter { > - // corresponding string using the configured infinity/nan-symbol. > - // If either of them is NULL or the value is not special then the > - // function returns false. > -- MFBT_API(bool) HandleSpecialValues(double value, StringBuilder* result_builder) const; > -+ bool HandleSpecialValues(double value, StringBuilder* result_builder) const; > - // Constructs an exponential representation (i.e. 1.234e56). > - // The given exponent assumes a decimal point after the first decimal digit. > -- MFBT_API(void) CreateExponentialRepresentation(const char* decimal_digits, > -+ void CreateExponentialRepresentation(const char* decimal_digits, > - int length, > - int exponent, > - StringBuilder* result_builder) const; > - // Creates a decimal representation (i.e 1234.5678). > -- MFBT_API(void) CreateDecimalRepresentation(const char* decimal_digits, > -+ void CreateDecimalRepresentation(const char* decimal_digits, > - int length, > - int decimal_point, > - int digits_after_point, > -@@ -375,7 +379,7 @@ class DoubleToStringConverter { > - const int max_leading_padding_zeroes_in_precision_mode_; > - const int max_trailing_padding_zeroes_in_precision_mode_; > - > -- DISALLOW_IMPLICIT_CONSTRUCTORS(DoubleToStringConverter); > -+ DC_DISALLOW_IMPLICIT_CONSTRUCTORS(DoubleToStringConverter); > - }; > - > - > -@@ -390,7 +394,8 @@ class StringToDoubleConverter { > - ALLOW_TRAILING_JUNK = 4, > - ALLOW_LEADING_SPACES = 8, > - ALLOW_TRAILING_SPACES = 16, > -- ALLOW_SPACES_AFTER_SIGN = 32 > -+ ALLOW_SPACES_AFTER_SIGN = 32, > -+ ALLOW_CASE_INSENSIBILITY = 64, > - }; > - > - // Flags should be a bit-or combination of the possible Flags-enum. > -@@ -416,11 +421,14 @@ class StringToDoubleConverter { > - // junk, too. > - // - ALLOW_TRAILING_JUNK: ignore trailing characters that are not part of > - // a double literal. > -- // - ALLOW_LEADING_SPACES: skip over leading spaces. > -- // - ALLOW_TRAILING_SPACES: ignore trailing spaces. > -- // - ALLOW_SPACES_AFTER_SIGN: ignore spaces after the sign. > -+ // - ALLOW_LEADING_SPACES: skip over leading whitespace, including spaces, > -+ // new-lines, and tabs. > -+ // - ALLOW_TRAILING_SPACES: ignore trailing whitespace. > -+ // - ALLOW_SPACES_AFTER_SIGN: ignore whitespace after the sign. > - // Ex: StringToDouble("- 123.2") -> -123.2. > - // StringToDouble("+ 123.2") -> 123.2 > -+ // - ALLOW_CASE_INSENSIBILITY: ignore case of characters for special values: > -+ // infinity and nan. > - // > - // empty_string_value is returned when an empty string is given as input. > - // If ALLOW_LEADING_SPACES or ALLOW_TRAILING_SPACES are set, then a string > -@@ -503,19 +511,24 @@ class StringToDoubleConverter { > - // in the 'processed_characters_count'. Trailing junk is never included. > - double StringToDouble(const char* buffer, > - int length, > -- int* processed_characters_count) { > -- return StringToIeee(buffer, length, processed_characters_count, true); > -- } > -+ int* processed_characters_count) const; > -+ > -+ // Same as StringToDouble above but for 16 bit characters. > -+ double StringToDouble(const uc16* buffer, > -+ int length, > -+ int* processed_characters_count) const; > - > - // Same as StringToDouble but reads a float. > - // Note that this is not equivalent to static_cast(StringToDouble(...)) > - // due to potential double-rounding. > - float StringToFloat(const char* buffer, > - int length, > -- int* processed_characters_count) { > -- return static_cast(StringToIeee(buffer, length, > -- processed_characters_count, false)); > -- } > -+ int* processed_characters_count) const; > -+ > -+ // Same as StringToFloat above but for 16 bit characters. > -+ float StringToFloat(const uc16* buffer, > -+ int length, > -+ int* processed_characters_count) const; > - > - private: > - const int flags_; > -@@ -524,12 +537,13 @@ class StringToDoubleConverter { > - const char* const infinity_symbol_; > - const char* const nan_symbol_; > - > -- double StringToIeee(const char* buffer, > -+ template > -+ double StringToIeee(Iterator start_pointer, > - int length, > -- int* processed_characters_count, > -- bool read_as_double); > -+ bool read_as_double, > -+ int* processed_characters_count) const; > - > -- DISALLOW_IMPLICIT_CONSTRUCTORS(StringToDoubleConverter); > -+ DC_DISALLOW_IMPLICIT_CONSTRUCTORS(StringToDoubleConverter); > - }; > - > - } // namespace double_conversion > -diff --git a/mfbt/double-conversion/fast-dtoa.cc b/mfbt/double-conversion/fast-dtoa.cc > -index 0609422..d338216 100644 > ---- a/mfbt/double-conversion/fast-dtoa.cc > -+++ b/mfbt/double-conversion/fast-dtoa.cc > -@@ -25,11 +25,11 @@ > - // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE > - // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. > - > --#include "fast-dtoa.h" > -+#include > - > --#include "cached-powers.h" > --#include "diy-fp.h" > --#include "ieee.h" > -+#include > -+#include > -+#include > - > - namespace double_conversion { > - > -@@ -248,10 +248,7 @@ static void BiggestPowerTen(uint32_t number, > - // Note: kPowersOf10[i] == 10^(i-1). > - exponent_plus_one_guess++; > - // We don't have any guarantees that 2^number_bits <= number. > -- // TODO(floitsch): can we change the 'while' into an 'if'? We definitely see > -- // number < (2^number_bits - 1), but I haven't encountered > -- // number < (2^number_bits - 2) yet. > -- while (number < kSmallPowersOfTen[exponent_plus_one_guess]) { > -+ if (number < kSmallPowersOfTen[exponent_plus_one_guess]) { > - exponent_plus_one_guess--; > - } > - *power = kSmallPowersOfTen[exponent_plus_one_guess]; > -@@ -350,7 +347,8 @@ static bool DigitGen(DiyFp low, > - // that is smaller than integrals. > - while (*kappa > 0) { > - int digit = integrals / divisor; > -- buffer[*length] = '0' + digit; > -+ ASSERT(digit <= 9); > -+ buffer[*length] = static_cast('0' + digit); > - (*length)++; > - integrals %= divisor; > - (*kappa)--; > -@@ -379,13 +377,14 @@ static bool DigitGen(DiyFp low, > - ASSERT(one.e() >= -60); > - ASSERT(fractionals < one.f()); > - ASSERT(UINT64_2PART_C(0xFFFFFFFF, FFFFFFFF) / 10 >= one.f()); > -- while (true) { > -+ for (;;) { > - fractionals *= 10; > - unit *= 10; > - unsafe_interval.set_f(unsafe_interval.f() * 10); > - // Integer division by one. > - int digit = static_cast(fractionals >> -one.e()); > -- buffer[*length] = '0' + digit; > -+ ASSERT(digit <= 9); > -+ buffer[*length] = static_cast('0' + digit); > - (*length)++; > - fractionals &= one.f() - 1; // Modulo by one. > - (*kappa)--; > -@@ -459,7 +458,8 @@ static bool DigitGenCounted(DiyFp w, > - // that is smaller than 'integrals'. > - while (*kappa > 0) { > - int digit = integrals / divisor; > -- buffer[*length] = '0' + digit; > -+ ASSERT(digit <= 9); > -+ buffer[*length] = static_cast('0' + digit); > - (*length)++; > - requested_digits--; > - integrals %= divisor; > -@@ -492,7 +492,8 @@ static bool DigitGenCounted(DiyFp w, > - w_error *= 10; > - // Integer division by one. > - int digit = static_cast(fractionals >> -one.e()); > -- buffer[*length] = '0' + digit; > -+ ASSERT(digit <= 9); > -+ buffer[*length] = static_cast('0' + digit); > - (*length)++; > - requested_digits--; > - fractionals &= one.f() - 1; // Modulo by one. > -@@ -529,7 +530,7 @@ static bool Grisu3(double v, > - if (mode == FAST_DTOA_SHORTEST) { > - Double(v).NormalizedBoundaries(&boundary_minus, &boundary_plus); > - } else { > -- assert(mode == FAST_DTOA_SHORTEST_SINGLE); > -+ ASSERT(mode == FAST_DTOA_SHORTEST_SINGLE); > - float single_v = static_cast(v); > - Single(single_v).NormalizedBoundaries(&boundary_minus, &boundary_plus); > - } > -diff --git a/mfbt/double-conversion/fast-dtoa.h b/mfbt/double-conversion/fast-dtoa.h > -index 5f1e8ee..9c4da92 100644 > ---- a/mfbt/double-conversion/fast-dtoa.h > -+++ b/mfbt/double-conversion/fast-dtoa.h > -@@ -28,7 +28,7 @@ > - #ifndef DOUBLE_CONVERSION_FAST_DTOA_H_ > - #define DOUBLE_CONVERSION_FAST_DTOA_H_ > - > --#include "utils.h" > -+#include > - > - namespace double_conversion { > - > -diff --git a/mfbt/double-conversion/fixed-dtoa.cc b/mfbt/double-conversion/fixed-dtoa.cc > -index d56b144..fa23529 100644 > ---- a/mfbt/double-conversion/fixed-dtoa.cc > -+++ b/mfbt/double-conversion/fixed-dtoa.cc > -@@ -25,10 +25,10 @@ > - // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE > - // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. > - > --#include > -+#include > - > --#include "fixed-dtoa.h" > --#include "ieee.h" > -+#include > -+#include > - > - namespace double_conversion { > - > -@@ -98,7 +98,7 @@ class UInt128 { > - return high_bits_ == 0 && low_bits_ == 0; > - } > - > -- int BitAt(int position) { > -+ int BitAt(int position) const { > - if (position >= 64) { > - return static_cast(high_bits_ >> (position - 64)) & 1; > - } else { > -@@ -133,7 +133,7 @@ static void FillDigits32(uint32_t number, Vector buffer, int* length) { > - while (number != 0) { > - int digit = number % 10; > - number /= 10; > -- buffer[(*length) + number_length] = '0' + digit; > -+ buffer[(*length) + number_length] = static_cast('0' + digit); > - number_length++; > - } > - // Exchange the digits. > -@@ -150,7 +150,7 @@ static void FillDigits32(uint32_t number, Vector buffer, int* length) { > - } > - > - > --static void FillDigits64FixedLength(uint64_t number, int requested_length, > -+static void FillDigits64FixedLength(uint64_t number, > - Vector buffer, int* length) { > - const uint32_t kTen7 = 10000000; > - // For efficiency cut the number into 3 uint32_t parts, and print those. > -@@ -253,12 +253,14 @@ static void FillFractionals(uint64_t fractionals, int exponent, > - fractionals *= 5; > - point--; > - int digit = static_cast(fractionals >> point); > -- buffer[*length] = '0' + digit; > -+ ASSERT(digit <= 9); > -+ buffer[*length] = static_cast('0' + digit); > - (*length)++; > - fractionals -= static_cast(digit) << point; > - } > - // If the first bit after the point is set we have to round up. > -- if (((fractionals >> (point - 1)) & 1) == 1) { > -+ ASSERT(fractionals == 0 || point - 1 >= 0); > -+ if ((fractionals != 0) && ((fractionals >> (point - 1)) & 1) == 1) { > - RoundUp(buffer, length, decimal_point); > - } > - } else { // We need 128 bits. > -@@ -274,7 +276,8 @@ static void FillFractionals(uint64_t fractionals, int exponent, > - fractionals128.Multiply(5); > - point--; > - int digit = fractionals128.DivModPowerOf2(point); > -- buffer[*length] = '0' + digit; > -+ ASSERT(digit <= 9); > -+ buffer[*length] = static_cast('0' + digit); > - (*length)++; > - } > - if (fractionals128.BitAt(point - 1) == 1) { > -@@ -358,7 +361,7 @@ bool FastFixedDtoa(double v, > - remainder = (dividend % divisor) << exponent; > - } > - FillDigits32(quotient, buffer, length); > -- FillDigits64FixedLength(remainder, divisor_power, buffer, length); > -+ FillDigits64FixedLength(remainder, buffer, length); > - *decimal_point = *length; > - } else if (exponent >= 0) { > - // 0 <= exponent <= 11 > -diff --git a/mfbt/double-conversion/fixed-dtoa.h b/mfbt/double-conversion/fixed-dtoa.h > -index 3bdd08e..19fd2e7 100644 > ---- a/mfbt/double-conversion/fixed-dtoa.h > -+++ b/mfbt/double-conversion/fixed-dtoa.h > -@@ -28,7 +28,7 @@ > - #ifndef DOUBLE_CONVERSION_FIXED_DTOA_H_ > - #define DOUBLE_CONVERSION_FIXED_DTOA_H_ > - > --#include "utils.h" > -+#include > - > - namespace double_conversion { > - > -diff --git a/mfbt/double-conversion/ieee.h b/mfbt/double-conversion/ieee.h > -index 839dc47..8949b02 100644 > ---- a/mfbt/double-conversion/ieee.h > -+++ b/mfbt/double-conversion/ieee.h > -@@ -28,7 +28,7 @@ > - #ifndef DOUBLE_CONVERSION_DOUBLE_H_ > - #define DOUBLE_CONVERSION_DOUBLE_H_ > - > --#include "diy-fp.h" > -+#include > - > - namespace double_conversion { > - > -@@ -99,7 +99,7 @@ class Double { > - } > - > - double PreviousDouble() const { > -- if (d64_ == (kInfinity | kSignMask)) return -Double::Infinity(); > -+ if (d64_ == (kInfinity | kSignMask)) return -Infinity(); > - if (Sign() < 0) { > - return Double(d64_ + 1).value(); > - } else { > -@@ -256,6 +256,8 @@ class Double { > - return (significand & kSignificandMask) | > - (biased_exponent << kPhysicalSignificandSize); > - } > -+ > -+ DC_DISALLOW_COPY_AND_ASSIGN(Double); > - }; > - > - class Single { > -@@ -391,6 +393,8 @@ class Single { > - static const uint32_t kNaN = 0x7FC00000; > - > - const uint32_t d32_; > -+ > -+ DC_DISALLOW_COPY_AND_ASSIGN(Single); > - }; > - > - } // namespace double_conversion > -diff --git a/mfbt/double-conversion/strtod.cc b/mfbt/double-conversion/strtod.cc > -index d773f44..a9e85c1 100644 > ---- a/mfbt/double-conversion/strtod.cc > -+++ b/mfbt/double-conversion/strtod.cc > -@@ -25,13 +25,13 @@ > - // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE > - // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. > - > --#include > --#include > -+#include > -+#include > - > --#include "strtod.h" > --#include "bignum.h" > --#include "cached-powers.h" > --#include "ieee.h" > -+#include > -+#include > -+#include > -+#include > - > - namespace double_conversion { > - > -@@ -137,6 +137,7 @@ static void TrimAndCut(Vector buffer, int exponent, > - Vector right_trimmed = TrimTrailingZeros(left_trimmed); > - exponent += left_trimmed.length() - right_trimmed.length(); > - if (right_trimmed.length() > kMaxSignificantDecimalDigits) { > -+ (void) space_size; // Mark variable as used. > - ASSERT(space_size >= kMaxSignificantDecimalDigits); > - CutToMaxSignificantDigits(right_trimmed, exponent, > - buffer_copy_space, updated_exponent); > -@@ -204,7 +205,7 @@ static bool DoubleStrtod(Vector trimmed, > - // Note that the ARM simulator is compiled for 32bits. It therefore exhibits > - // the same problem. > - return false; > --#endif > -+#else > - if (trimmed.length() <= kMaxExactDoubleIntegerDecimalDigits) { > - int read_digits; > - // The trimmed input fits into a double. > -@@ -242,6 +243,7 @@ static bool DoubleStrtod(Vector trimmed, > - } > - } > - return false; > -+#endif > - } > - > - > -@@ -263,7 +265,6 @@ static DiyFp AdjustmentPowerOfTen(int exponent) { > - case 7: return DiyFp(UINT64_2PART_C(0x98968000, 00000000), -40); > - default: > - UNREACHABLE(); > -- return DiyFp(0, 0); > - } > - } > - > -@@ -286,7 +287,7 @@ static bool DiyFpStrtod(Vector buffer, > - const int kDenominator = 1 << kDenominatorLog; > - // Move the remaining decimals into the exponent. > - exponent += remaining_decimals; > -- int error = (remaining_decimals == 0 ? 0 : kDenominator / 2); > -+ uint64_t error = (remaining_decimals == 0 ? 0 : kDenominator / 2); > - > - int old_e = input.e(); > - input.Normalize(); > -@@ -471,6 +472,30 @@ double Strtod(Vector buffer, int exponent) { > - } > - } > - > -+static float SanitizedDoubletof(double d) { > -+ ASSERT(d >= 0.0); > -+ // ASAN has a sanitize check that disallows casting doubles to floats if > -+ // they are too big. > -+ // https://clang.llvm.org/docs/UndefinedBehaviorSanitizer.html#available-checks > -+ // The behavior should be covered by IEEE 754, but some projects use this > -+ // flag, so work around it. > -+ float max_finite = 3.4028234663852885981170418348451692544e+38; > -+ // The half-way point between the max-finite and infinity value. > -+ // Since infinity has an even significand everything equal or greater than > -+ // this value should become infinity. > -+ double half_max_finite_infinity = > -+ 3.40282356779733661637539395458142568448e+38; > -+ if (d >= max_finite) { > -+ if (d >= half_max_finite_infinity) { > -+ return Single::Infinity(); > -+ } else { > -+ return max_finite; > -+ } > -+ } else { > -+ return static_cast(d); > -+ } > -+} > -+ > - float Strtof(Vector buffer, int exponent) { > - char copy_buffer[kMaxSignificantDecimalDigits]; > - Vector trimmed; > -@@ -482,7 +507,7 @@ float Strtof(Vector buffer, int exponent) { > - double double_guess; > - bool is_correct = ComputeGuess(trimmed, exponent, &double_guess); > - > -- float float_guess = static_cast(double_guess); > -+ float float_guess = SanitizedDoubletof(double_guess); > - if (float_guess == double_guess) { > - // This shortcut triggers for integer values. > - return float_guess; > -@@ -505,18 +530,18 @@ float Strtof(Vector buffer, int exponent) { > - double double_next = Double(double_guess).NextDouble(); > - double double_previous = Double(double_guess).PreviousDouble(); > - > -- float f1 = static_cast(double_previous); > -+ float f1 = SanitizedDoubletof(double_previous); > - float f2 = float_guess; > -- float f3 = static_cast(double_next); > -+ float f3 = SanitizedDoubletof(double_next); > - float f4; > - if (is_correct) { > - f4 = f3; > - } else { > - double double_next2 = Double(double_next).NextDouble(); > -- f4 = static_cast(double_next2); > -+ f4 = SanitizedDoubletof(double_next2); > - } > -- (void)f2; > -- assert(f1 <= f2 && f2 <= f3 && f3 <= f4); > -+ (void) f2; // Mark variable as used. > -+ ASSERT(f1 <= f2 && f2 <= f3 && f3 <= f4); > - > - // If the guess doesn't lie near a single-precision boundary we can simply > - // return its float-value. > -@@ -524,11 +549,11 @@ float Strtof(Vector buffer, int exponent) { > - return float_guess; > - } > - > -- assert((f1 != f2 && f2 == f3 && f3 == f4) || > -+ ASSERT((f1 != f2 && f2 == f3 && f3 == f4) || > - (f1 == f2 && f2 != f3 && f3 == f4) || > - (f1 == f2 && f2 == f3 && f3 != f4)); > - > -- // guess and next are the two possible canditates (in the same way that > -+ // guess and next are the two possible candidates (in the same way that > - // double_guess was the lower candidate for a double-precision guess). > - float guess = f1; > - float next = f4; > -diff --git a/mfbt/double-conversion/strtod.h b/mfbt/double-conversion/strtod.h > -index ed0293b..58c4926 100644 > ---- a/mfbt/double-conversion/strtod.h > -+++ b/mfbt/double-conversion/strtod.h > -@@ -28,7 +28,7 @@ > - #ifndef DOUBLE_CONVERSION_STRTOD_H_ > - #define DOUBLE_CONVERSION_STRTOD_H_ > - > --#include "utils.h" > -+#include > - > - namespace double_conversion { > - > -diff --git a/mfbt/double-conversion/utils.h b/mfbt/double-conversion/utils.h > -index 0eec2d9..a748654 100644 > ---- a/mfbt/double-conversion/utils.h > -+++ b/mfbt/double-conversion/utils.h > -@@ -28,19 +28,34 @@ > - #ifndef DOUBLE_CONVERSION_UTILS_H_ > - #define DOUBLE_CONVERSION_UTILS_H_ > - > --#include > --#include > -+#include > -+#include > - > --#include > -+#include > - #ifndef ASSERT > --#define ASSERT(condition) (assert(condition)) > -+#define ASSERT(condition) \ > -+ assert(condition); > - #endif > - #ifndef UNIMPLEMENTED > - #define UNIMPLEMENTED() (abort()) > - #endif > -+#ifndef DOUBLE_CONVERSION_NO_RETURN > -+#ifdef _MSC_VER > -+#define DOUBLE_CONVERSION_NO_RETURN __declspec(noreturn) > -+#else > -+#define DOUBLE_CONVERSION_NO_RETURN __attribute__((noreturn)) > -+#endif > -+#endif > - #ifndef UNREACHABLE > -+#ifdef _MSC_VER > -+void DOUBLE_CONVERSION_NO_RETURN abort_noreturn(); > -+inline void abort_noreturn() { abort(); } > -+#define UNREACHABLE() (abort_noreturn()) > -+#else > - #define UNREACHABLE() (abort()) > - #endif > -+#endif > -+ > - > - // Double operations detection based on target architecture. > - // Linux uses a 80bit wide floating point stack on x86. This induces double > -@@ -55,11 +70,18 @@ > - #if defined(_M_X64) || defined(__x86_64__) || \ > - defined(__ARMEL__) || defined(__avr32__) || \ > - defined(__hppa__) || defined(__ia64__) || \ > -- defined(__mips__) || defined(__powerpc__) || \ > -+ defined(__mips__) || \ > -+ defined(__powerpc__) || defined(__ppc__) || defined(__ppc64__) || \ > -+ defined(_POWER) || defined(_ARCH_PPC) || defined(_ARCH_PPC64) || \ > - defined(__sparc__) || defined(__sparc) || defined(__s390__) || \ > - defined(__SH4__) || defined(__alpha__) || \ > -- defined(_MIPS_ARCH_MIPS32R2) > -+ defined(_MIPS_ARCH_MIPS32R2) || \ > -+ defined(__AARCH64EL__) || defined(__aarch64__) || \ > -+ defined(__riscv) > - #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 > -+#elif defined(__mc68000__) || \ > -+ defined(__pnacl__) || defined(__native_client__) > -+#undef DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS > - #elif defined(_M_IX86) || defined(__i386__) || defined(__i386) > - #if defined(_WIN32) > - // Windows uses a 64bit wide floating point stack. > -@@ -71,9 +93,10 @@ > - #error Target architecture was not detected as supported by Double-Conversion. > - #endif > - > -- > - #include "mozilla/StandardInteger.h" > - > -+typedef uint16_t uc16; > -+ > - // The following macro works on both 32 and 64-bit platforms. > - // Usage: instead of writing 0x1234567890123456 > - // write UINT64_2PART_C(0x12345678,90123456); > -@@ -92,8 +115,8 @@ > - > - // A macro to disallow the evil copy constructor and operator= functions > - // This should be used in the private: declarations for a class > --#ifndef DISALLOW_COPY_AND_ASSIGN > --#define DISALLOW_COPY_AND_ASSIGN(TypeName) \ > -+#ifndef DC_DISALLOW_COPY_AND_ASSIGN > -+#define DC_DISALLOW_COPY_AND_ASSIGN(TypeName) \ > - TypeName(const TypeName&); \ > - void operator=(const TypeName&) > - #endif > -@@ -104,10 +127,10 @@ > - // This should be used in the private: declarations for a class > - // that wants to prevent anyone from instantiating it. This is > - // especially useful for classes containing only static methods. > --#ifndef DISALLOW_IMPLICIT_CONSTRUCTORS > --#define DISALLOW_IMPLICIT_CONSTRUCTORS(TypeName) \ > -+#ifndef DC_DISALLOW_IMPLICIT_CONSTRUCTORS > -+#define DC_DISALLOW_IMPLICIT_CONSTRUCTORS(TypeName) \ > - TypeName(); \ > -- DISALLOW_COPY_AND_ASSIGN(TypeName) > -+ DC_DISALLOW_COPY_AND_ASSIGN(TypeName) > - #endif > - > - namespace double_conversion { > -@@ -139,8 +162,8 @@ template > - class Vector { > - public: > - Vector() : start_(NULL), length_(0) {} > -- Vector(T* data, int length) : start_(data), length_(length) { > -- ASSERT(length == 0 || (length > 0 && data != NULL)); > -+ Vector(T* data, int len) : start_(data), length_(len) { > -+ ASSERT(len == 0 || (len > 0 && data != NULL)); > - } > - > - // Returns a vector using the same backing storage as this one, > -@@ -182,8 +205,8 @@ class Vector { > - // buffer bounds on all operations in debug mode. > - class StringBuilder { > - public: > -- StringBuilder(char* buffer, int size) > -- : buffer_(buffer, size), position_(0) { } > -+ StringBuilder(char* buffer, int buffer_size) > -+ : buffer_(buffer, buffer_size), position_(0) { } > - > - ~StringBuilder() { if (!is_finalized()) Finalize(); } > - > -@@ -249,7 +272,7 @@ class StringBuilder { > - > - bool is_finalized() const { return position_ < 0; } > - > -- DISALLOW_IMPLICIT_CONSTRUCTORS(StringBuilder); > -+ DC_DISALLOW_IMPLICIT_CONSTRUCTORS(StringBuilder); > - }; > - > - // The type-based aliasing rule allows the compiler to assume that pointers of > -@@ -280,7 +303,12 @@ template > - inline Dest BitCast(const Source& source) { > - // Compile time assertion: sizeof(Dest) == sizeof(Source) > - // A compile error here means your Dest and Source have different sizes. > -+#if __cplusplus >= 201103L > -+ static_assert(sizeof(Dest) == sizeof(Source), > -+ "source and destination size mismatch"); > -+#else > - typedef char VerifySizesAreEqual[sizeof(Dest) == sizeof(Source) ? 1 : -1]; > -+#endif > - > - Dest dest; > - memmove(&dest, &source, sizeof(dest)); > --- > -2.17.0 > - > diff --git a/meta-oe/recipes-extended/mozjs/mozjs/Update-the-double-conversion-update-script.patch b/meta-oe/recipes-extended/mozjs/mozjs/Update-the-double-conversion-update-script.patch > deleted file mode 100644 > index ffeac49..0000000 > --- a/meta-oe/recipes-extended/mozjs/mozjs/Update-the-double-conversion-update-script.patch > +++ /dev/null > @@ -1,175 +0,0 @@ > -From 1c3f6dd9bb478fea0622e8a9ba2efbf19d73e302 Mon Sep 17 00:00:00 2001 > -From: Alistair Francis > -Date: Fri, 1 Jun 2018 14:46:47 -0700 > -Subject: [PATCH] Update the double conversion update script > - > -Signed-off-by: Alistair Francis > ---- > - .../add-mfbt-api-markers.patch | 94 ------------------- > - .../more-architectures.patch | 30 ------ > - mfbt/double-conversion/update.sh | 8 +- > - 3 files changed, 3 insertions(+), 129 deletions(-) > - delete mode 100644 mfbt/double-conversion/add-mfbt-api-markers.patch > - delete mode 100644 mfbt/double-conversion/more-architectures.patch > - > -diff --git a/mfbt/double-conversion/add-mfbt-api-markers.patch b/mfbt/double-conversion/add-mfbt-api-markers.patch > -deleted file mode 100644 > -index b98ec74..0000000 > ---- a/mfbt/double-conversion/add-mfbt-api-markers.patch > -+++ /dev/null > -@@ -1,94 +0,0 @@ > --diff --git a/mfbt/double-conversion/double-conversion.h b/mfbt/double-conversion/double-conversion.h > --index f98edae..e536a01 100644 > ----- a/mfbt/double-conversion/double-conversion.h > --+++ b/mfbt/double-conversion/double-conversion.h > --@@ -28,6 +28,7 @@ > -- #ifndef DOUBLE_CONVERSION_DOUBLE_CONVERSION_H_ > -- #define DOUBLE_CONVERSION_DOUBLE_CONVERSION_H_ >