diff options
author | Hongxu Jia <hongxu.jia@windriver.com> | 2018-07-17 09:31:44 +0800 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2018-07-16 18:42:40 -0700 |
commit | 50e8ed5fd4d09be1e89fb7fd0ba6b26c8be15699 (patch) | |
tree | 355eb7bc6cce190180b8cef5245ebcc7b73b81e5 /meta-oe/recipes-extended/mozjs | |
parent | 2de6f8d1b4608dbdce391c3d89d01402eb641f52 (diff) | |
download | meta-openembedded-50e8ed5fd4d09be1e89fb7fd0ba6b26c8be15699.tar.gz |
mozjs: 17.0.0 -> 52.8.1
- 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'
- Set musl patch (0006-support-musl.patch) with musl override.
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-extended/mozjs')
21 files changed, 514 insertions, 5709 deletions
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 40d646c7d..000000000 --- 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 @@ | |||
1 | From f36c9476d2816e0d3e61c9e13c22ed73883cb54a Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Mon, 24 Apr 2017 12:13:43 -0700 | ||
4 | Subject: [PATCH] compare the first character of string to be null or not | ||
5 | |||
6 | Fixes | ||
7 | |||
8 | error: ISO C++ forbids comparison between pointer and integer [-fpermissive] | ||
9 | | if (value[0] == '\0') | ||
10 | | ^~~~ | ||
11 | |||
12 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
13 | --- | ||
14 | js/src/shell/jsoptparse.cpp | 2 +- | ||
15 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
16 | |||
17 | diff --git a/js/src/shell/jsoptparse.cpp b/js/src/shell/jsoptparse.cpp | ||
18 | index b49d0a5..612aa00 100644 | ||
19 | --- a/js/src/shell/jsoptparse.cpp | ||
20 | +++ b/js/src/shell/jsoptparse.cpp | ||
21 | @@ -243,7 +243,7 @@ OptionParser::extractValue(size_t argc, char **argv, size_t *i, char **value) | ||
22 | char *eq = strchr(argv[*i], '='); | ||
23 | if (eq) { | ||
24 | *value = eq + 1; | ||
25 | - if (value[0] == '\0') | ||
26 | + if (value[0][0] == '\0') | ||
27 | return error("A value is required for option %.*s", eq - argv[*i], argv[*i]); | ||
28 | return Okay; | ||
29 | } | ||
30 | -- | ||
31 | 2.12.2 | ||
32 | |||
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 000000000..ba317bc0c --- /dev/null +++ b/meta-oe/recipes-extended/mozjs/mozjs/0001-do-not-create-python-environment.patch | |||
@@ -0,0 +1,91 @@ | |||
1 | From 5028d1cd669c179ed49061316d04c8e8862a5bd8 Mon Sep 17 00:00:00 2001 | ||
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
3 | Date: Thu, 12 Jul 2018 15:04:47 +0800 | ||
4 | Subject: [PATCH 1/5] do not create python environment | ||
5 | |||
6 | Use oe's python environment rather than create one of host | ||
7 | |||
8 | Upstream-Status: Inappropriate [oe specific] | ||
9 | |||
10 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
11 | --- | ||
12 | build/moz.configure/init.configure | 18 ------------------ | ||
13 | configure.py | 10 +++++++++- | ||
14 | js/src/old-configure | 4 ++-- | ||
15 | 3 files changed, 11 insertions(+), 21 deletions(-) | ||
16 | |||
17 | diff --git a/build/moz.configure/init.configure b/build/moz.configure/init.configure | ||
18 | index 2123beb..6fe6591 100644 | ||
19 | --- a/build/moz.configure/init.configure | ||
20 | +++ b/build/moz.configure/init.configure | ||
21 | @@ -179,24 +179,6 @@ def virtualenv_python(env_python, build_env, mozconfig, help): | ||
22 | else: | ||
23 | python = sys.executable | ||
24 | |||
25 | - if not manager.up_to_date(python): | ||
26 | - log.info('Creating Python environment') | ||
27 | - manager.build(python) | ||
28 | - | ||
29 | - python = normsep(manager.python_path) | ||
30 | - | ||
31 | - if python != normsep(sys.executable): | ||
32 | - log.info('Reexecuting in the virtualenv') | ||
33 | - if env_python: | ||
34 | - del os.environ['PYTHON'] | ||
35 | - # One would prefer to use os.execl, but that's completely borked on | ||
36 | - # Windows. | ||
37 | - sys.exit(subprocess.call([python] + sys.argv)) | ||
38 | - | ||
39 | - # We are now in the virtualenv | ||
40 | - if not distutils.sysconfig.get_python_lib(): | ||
41 | - die('Could not determine python site packages directory') | ||
42 | - | ||
43 | return python | ||
44 | |||
45 | set_config('PYTHON', virtualenv_python) | ||
46 | diff --git a/configure.py b/configure.py | ||
47 | index f7392d0..45323a5 100644 | ||
48 | --- a/configure.py | ||
49 | +++ b/configure.py | ||
50 | @@ -12,7 +12,15 @@ import textwrap | ||
51 | |||
52 | |||
53 | base_dir = os.path.abspath(os.path.dirname(__file__)) | ||
54 | -sys.path.insert(0, os.path.join(base_dir, 'python', 'mozbuild')) | ||
55 | +sys.path.insert(0, os.path.join(base_dir, 'config')) | ||
56 | +def get_immediate_subdirectories(a_dir): | ||
57 | + return [name for name in os.listdir(a_dir) | ||
58 | + if os.path.isdir(os.path.join(a_dir, name))] | ||
59 | +for s in ["python", "testing/mozbase"]: | ||
60 | + sub_dir = os.path.join(base_dir, s) | ||
61 | + for module_dir in get_immediate_subdirectories(sub_dir): | ||
62 | + sys.path.insert(0, os.path.join(sub_dir, module_dir)) | ||
63 | + | ||
64 | from mozbuild.configure import ConfigureSandbox | ||
65 | from mozbuild.util import ( | ||
66 | indented_repr, | ||
67 | diff --git a/js/src/old-configure b/js/src/old-configure | ||
68 | index ee4527b..75b00e1 100644 | ||
69 | --- a/js/src/old-configure | ||
70 | +++ b/js/src/old-configure | ||
71 | @@ -10512,7 +10512,7 @@ if test "$MOZ_BUILD_APP" != js -o -n "$JS_STANDALONE"; then | ||
72 | ;; | ||
73 | esac | ||
74 | |||
75 | - eval $dumpenv $PYTHON $_topsrcdir/build/subconfigure.py --prepare "$srcdir" "$moz_config_dir" "$_CONFIG_SHELL" $ac_configure_args | ||
76 | + eval $dumpenv PYTHONPATH=$_topsrcdir/python/mozbuild/ $PYTHON $_topsrcdir/build/subconfigure.py --prepare "$srcdir" "$moz_config_dir" "$_CONFIG_SHELL" $ac_configure_args | ||
77 | |||
78 | done | ||
79 | |||
80 | @@ -10931,7 +10931,7 @@ if test "$JS_STANDALONE"; then | ||
81 | |||
82 | if test "$no_recursion" != yes; then | ||
83 | trap '' EXIT | ||
84 | - if ! $PYTHON $_topsrcdir/build/subconfigure.py --list subconfigures --skip skip_subconfigures; then | ||
85 | + if ! PYTHONPATH=$_topsrcdir/python/mozbuild/ $PYTHON $_topsrcdir/build/subconfigure.py --list subconfigures --skip skip_subconfigures; then | ||
86 | exit 1 | ||
87 | fi | ||
88 | fi | ||
89 | -- | ||
90 | 2.7.4 | ||
91 | |||
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 bc141d9d5..c111ea5ea 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?= <schnitzeltony@googlemail.com> | |||
3 | Date: Thu, 6 Jun 2013 18:36:01 +0200 | 3 | Date: Thu, 6 Jun 2013 18:36:01 +0200 |
4 | Subject: [PATCH] js.pc.in: do not include RequiredDefines.h for depending | 4 | Subject: [PATCH] js.pc.in: do not include RequiredDefines.h for depending |
5 | packages | 5 | packages |
6 | MIME-Version: 1.0 | ||
7 | Content-Type: text/plain; charset=UTF-8 | ||
8 | Content-Transfer-Encoding: 8bit | ||
9 | 6 | ||
10 | in our cross environment the would fail with: | 7 | in our cross environment the would fail with: |
11 | 8 | ||
12 | | cc1: fatal error: /usr/include/js-17.0/js/RequiredDefines.h: No such file or directory | 9 | | cc1: fatal error: /usr/include/js-17.0/js/RequiredDefines.h: No such file or directory |
13 | 10 | ||
14 | and currently it only defines __STDC_LIMIT_MACROS | 11 | and currently it only defines __STDC_LIMIT_MACROS |
15 | |||
16 | Upstream-Status: Inappropriate [embedded specific] | 12 | Upstream-Status: Inappropriate [embedded specific] |
17 | |||
18 | Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com> | 13 | Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com> |
14 | |||
15 | Rebase to 52.8.1 | ||
16 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
19 | --- | 17 | --- |
20 | js.pc.in | 2 +- | 18 | js/src/js.pc.in | 2 +- |
21 | 1 files changed, 1 insertions(+), 1 deletions(-) | 19 | 1 file changed, 1 insertion(+), 1 deletion(-) |
22 | 20 | ||
23 | diff --git a/js.pc.in b/js.pc.in | 21 | diff --git a/js/src/js.pc.in b/js/src/js.pc.in |
24 | index 13d761d..a95a7bd 100644 | 22 | index 2eae393..c2dea62 100644 |
25 | --- a/js.pc.in | 23 | --- a/js/src/js.pc.in |
26 | +++ b/js.pc.in | 24 | +++ b/js/src/js.pc.in |
27 | @@ -8,4 +8,4 @@ Description: The Mozilla library for JavaScript | 25 | @@ -8,4 +8,4 @@ Description: The Mozilla library for JavaScript |
28 | Version: @MOZILLA_VERSION@ | 26 | Version: @MOZILLA_VERSION@ |
29 | Requires.private: @NSPR_PKGCONF_CHECK@ | 27 | @PKGCONF_REQUIRES_PRIVATE@ |
30 | Libs: -L${libdir} -l@LIBRARY_NAME@ | 28 | Libs: -L${libdir} -l@JS_LIBRARY_NAME@ |
31 | -Cflags: -include ${includedir}/@MODULE@/js/RequiredDefines.h -I${includedir}/@MODULE@ | 29 | -Cflags: -include ${includedir}/@JS_LIBRARY_NAME@/js/RequiredDefines.h -I${includedir}/@JS_LIBRARY_NAME@ |
32 | +Cflags: -I${includedir}/@MODULE@ | 30 | +Cflags: -I${includedir}/@JS_LIBRARY_NAME@ |
33 | -- | 31 | -- |
34 | 1.7.6.5 | 32 | 2.7.4 |
35 | 33 | ||
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 de72d4f9a..000000000 --- a/meta-oe/recipes-extended/mozjs/mozjs/0001-mozjs17.0.0-fix-the-compile-bug-of-powerpc.patch +++ /dev/null | |||
@@ -1,36 +0,0 @@ | |||
1 | From da3929a96d9c74e11bf37d128890e18fcb745365 Mon Sep 17 00:00:00 2001 | ||
2 | From: Lei Maohui <leimaohui@cn.fujitsu.com> | ||
3 | Date: Mon, 26 Jan 2015 08:53:19 +0900 | ||
4 | Subject: [PATCH] mozjs17.0.0: fix the compile bug of powerpc | ||
5 | |||
6 | To fix the bug as following | ||
7 | |||
8 | error: cannot convert '__va_list_tag**' to '__va_list_tag (*)[1]' for | ||
9 | argument '5' to 'JSBool TryArgumentFormatter(JSContext*, const char**, | ||
10 | JSBool, jsval**, __va_list_tag (*)[1])' | ||
11 | |||
12 | Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com> | ||
13 | --- | ||
14 | jscpucfg.h | 6 ++++++ | ||
15 | 1 file changed, 6 insertions(+) | ||
16 | |||
17 | diff --git a/jscpucfg.h b/jscpucfg.h | ||
18 | index dfb1c14..8683491 100644 | ||
19 | --- a/jscpucfg.h | ||
20 | +++ b/jscpucfg.h | ||
21 | @@ -47,6 +47,12 @@ | ||
22 | #elif defined(JS_HAVE_ENDIAN_H) | ||
23 | # include <endian.h> | ||
24 | |||
25 | +#if defined(_POWER) || defined(__powerpc__) || \ | ||
26 | + defined(__ppc__) | ||
27 | +# define HAVE_VA_LIST_AS_ARRAY 1 | ||
28 | +# endif | ||
29 | + | ||
30 | + | ||
31 | # if defined(__BYTE_ORDER) | ||
32 | # if __BYTE_ORDER == __LITTLE_ENDIAN | ||
33 | # define IS_LITTLE_ENDIAN 1 | ||
34 | -- | ||
35 | 1.8.4.2 | ||
36 | |||
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 fa413ea9f..000000000 --- a/meta-oe/recipes-extended/mozjs/mozjs/0001-regenerate-configure.patch +++ /dev/null | |||
@@ -1,3238 +0,0 @@ | |||
1 | From 6440b4901c6f4bcc69686ff10806e311cc5a927b Mon Sep 17 00:00:00 2001 | ||
2 | From: Koen Kooi <koen.kooi@linaro.org> | ||
3 | Date: Tue, 3 Mar 2015 19:12:17 +0800 | ||
4 | Subject: [PATCH] regenerate configure with autoconf-2.13 | ||
5 | |||
6 | Signed-off-by: Koen Kooi <koen.kooi@linaro.org> | ||
7 | Upstream-status: Inappropriate [generated file] | ||
8 | |||
9 | --- | ||
10 | js/src/configure | 838 ++++++++++++++++++++++++++----------------------------- | ||
11 | 1 file changed, 389 insertions(+), 449 deletions(-) | ||
12 | |||
13 | diff --git a/js/src/configure b/js/src/configure | ||
14 | index cb6b41b..b05298f 100755 | ||
15 | --- a/js/src/configure | ||
16 | +++ b/js/src/configure | ||
17 | @@ -5757,6 +5757,10 @@ arm*) | ||
18 | CPU_ARCH=arm | ||
19 | ;; | ||
20 | |||
21 | +aarch64*) | ||
22 | + CPU_ARCH=aarch64 | ||
23 | + ;; | ||
24 | + | ||
25 | mips|mipsel) | ||
26 | CPU_ARCH="mips" | ||
27 | ;; | ||
28 | @@ -5893,14 +5897,14 @@ no) | ||
29 | _SAVE_CFLAGS="$CFLAGS" | ||
30 | CFLAGS="$arch_flag" | ||
31 | cat > conftest.$ac_ext <<EOF | ||
32 | -#line 5897 "configure" | ||
33 | +#line 5901 "configure" | ||
34 | #include "confdefs.h" | ||
35 | |||
36 | int main() { | ||
37 | return sizeof(__thumb2__); | ||
38 | ; return 0; } | ||
39 | EOF | ||
40 | -if { (eval echo configure:5904: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
41 | +if { (eval echo configure:5908: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
42 | rm -rf conftest* | ||
43 | MOZ_THUMB2=1 | ||
44 | else | ||
45 | @@ -5972,16 +5976,16 @@ if test -n "$all_flags"; then | ||
46 | _SAVE_CFLAGS="$CFLAGS" | ||
47 | CFLAGS="$all_flags" | ||
48 | echo $ac_n "checking whether the chosen combination of compiler flags ($all_flags) works""... $ac_c" 1>&6 | ||
49 | -echo "configure:5976: checking whether the chosen combination of compiler flags ($all_flags) works" >&5 | ||
50 | +echo "configure:5980: checking whether the chosen combination of compiler flags ($all_flags) works" >&5 | ||
51 | cat > conftest.$ac_ext <<EOF | ||
52 | -#line 5978 "configure" | ||
53 | +#line 5982 "configure" | ||
54 | #include "confdefs.h" | ||
55 | |||
56 | int main() { | ||
57 | return 0; | ||
58 | ; return 0; } | ||
59 | EOF | ||
60 | -if { (eval echo configure:5985: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
61 | +if { (eval echo configure:5989: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
62 | rm -rf conftest* | ||
63 | echo "$ac_t""yes" 1>&6 | ||
64 | else | ||
65 | @@ -6004,18 +6008,18 @@ fi | ||
66 | |||
67 | if test "$CPU_ARCH" = "arm"; then | ||
68 | echo $ac_n "checking for ARM SIMD support in compiler""... $ac_c" 1>&6 | ||
69 | -echo "configure:6008: checking for ARM SIMD support in compiler" >&5 | ||
70 | +echo "configure:6012: checking for ARM SIMD support in compiler" >&5 | ||
71 | # We try to link so that this also fails when | ||
72 | # building with LTO. | ||
73 | cat > conftest.$ac_ext <<EOF | ||
74 | -#line 6012 "configure" | ||
75 | +#line 6016 "configure" | ||
76 | #include "confdefs.h" | ||
77 | |||
78 | int main() { | ||
79 | asm("uqadd8 r1, r1, r2"); | ||
80 | ; return 0; } | ||
81 | EOF | ||
82 | -if { (eval echo configure:6019: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
83 | +if { (eval echo configure:6023: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
84 | rm -rf conftest* | ||
85 | result="yes" | ||
86 | else | ||
87 | @@ -6038,18 +6042,18 @@ EOF | ||
88 | fi | ||
89 | |||
90 | echo $ac_n "checking for ARM NEON support in compiler""... $ac_c" 1>&6 | ||
91 | -echo "configure:6042: checking for ARM NEON support in compiler" >&5 | ||
92 | +echo "configure:6046: checking for ARM NEON support in compiler" >&5 | ||
93 | # We try to link so that this also fails when | ||
94 | # building with LTO. | ||
95 | cat > conftest.$ac_ext <<EOF | ||
96 | -#line 6046 "configure" | ||
97 | +#line 6050 "configure" | ||
98 | #include "confdefs.h" | ||
99 | |||
100 | int main() { | ||
101 | asm(".fpu neon\n vadd.i8 d0, d0, d0"); | ||
102 | ; return 0; } | ||
103 | EOF | ||
104 | -if { (eval echo configure:6053: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
105 | +if { (eval echo configure:6057: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
106 | rm -rf conftest* | ||
107 | result="yes" | ||
108 | else | ||
109 | @@ -6094,7 +6098,7 @@ configure_static_assert_macros=' | ||
110 | ' | ||
111 | |||
112 | echo $ac_n "checking that static assertion macros used in autoconf tests work""... $ac_c" 1>&6 | ||
113 | -echo "configure:6098: checking that static assertion macros used in autoconf tests work" >&5 | ||
114 | +echo "configure:6102: checking that static assertion macros used in autoconf tests work" >&5 | ||
115 | if eval "test \"`echo '$''{'ac_cv_static_assertion_macros_work'+set}'`\" = set"; then | ||
116 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
117 | else | ||
118 | @@ -6108,14 +6112,14 @@ cross_compiling=$ac_cv_prog_cc_cross | ||
119 | |||
120 | ac_cv_static_assertion_macros_work="yes" | ||
121 | cat > conftest.$ac_ext <<EOF | ||
122 | -#line 6112 "configure" | ||
123 | +#line 6116 "configure" | ||
124 | #include "confdefs.h" | ||
125 | $configure_static_assert_macros | ||
126 | int main() { | ||
127 | CONFIGURE_STATIC_ASSERT(1) | ||
128 | ; return 0; } | ||
129 | EOF | ||
130 | -if { (eval echo configure:6119: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
131 | +if { (eval echo configure:6123: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
132 | : | ||
133 | else | ||
134 | echo "configure: failed program was:" >&5 | ||
135 | @@ -6125,14 +6129,14 @@ else | ||
136 | fi | ||
137 | rm -f conftest* | ||
138 | cat > conftest.$ac_ext <<EOF | ||
139 | -#line 6129 "configure" | ||
140 | +#line 6133 "configure" | ||
141 | #include "confdefs.h" | ||
142 | $configure_static_assert_macros | ||
143 | int main() { | ||
144 | CONFIGURE_STATIC_ASSERT(0) | ||
145 | ; return 0; } | ||
146 | EOF | ||
147 | -if { (eval echo configure:6136: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
148 | +if { (eval echo configure:6140: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
149 | rm -rf conftest* | ||
150 | ac_cv_static_assertion_macros_work="no" | ||
151 | else | ||
152 | @@ -6148,14 +6152,14 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes | ||
153 | cross_compiling=$ac_cv_prog_cxx_cross | ||
154 | |||
155 | cat > conftest.$ac_ext <<EOF | ||
156 | -#line 6152 "configure" | ||
157 | +#line 6156 "configure" | ||
158 | #include "confdefs.h" | ||
159 | $configure_static_assert_macros | ||
160 | int main() { | ||
161 | CONFIGURE_STATIC_ASSERT(1) | ||
162 | ; return 0; } | ||
163 | EOF | ||
164 | -if { (eval echo configure:6159: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
165 | +if { (eval echo configure:6163: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
166 | : | ||
167 | else | ||
168 | echo "configure: failed program was:" >&5 | ||
169 | @@ -6165,14 +6169,14 @@ else | ||
170 | fi | ||
171 | rm -f conftest* | ||
172 | cat > conftest.$ac_ext <<EOF | ||
173 | -#line 6169 "configure" | ||
174 | +#line 6173 "configure" | ||
175 | #include "confdefs.h" | ||
176 | $configure_static_assert_macros | ||
177 | int main() { | ||
178 | CONFIGURE_STATIC_ASSERT(0) | ||
179 | ; return 0; } | ||
180 | EOF | ||
181 | -if { (eval echo configure:6176: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
182 | +if { (eval echo configure:6180: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
183 | rm -rf conftest* | ||
184 | ac_cv_static_assertion_macros_work="no" | ||
185 | else | ||
186 | @@ -6317,7 +6321,7 @@ if test "$GNU_CC"; then | ||
187 | _WARNINGS_CFLAGS="${_WARNINGS_CFLAGS} -Wall -Wpointer-arith -Wdeclaration-after-statement" | ||
188 | |||
189 | echo $ac_n "checking whether the C compiler supports -Werror=return-type""... $ac_c" 1>&6 | ||
190 | -echo "configure:6321: checking whether the C compiler supports -Werror=return-type" >&5 | ||
191 | +echo "configure:6325: checking whether the C compiler supports -Werror=return-type" >&5 | ||
192 | if eval "test \"`echo '$''{'ac_c_has_werror_return_type'+set}'`\" = set"; then | ||
193 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
194 | else | ||
195 | @@ -6333,14 +6337,14 @@ cross_compiling=$ac_cv_prog_cc_cross | ||
196 | _SAVE_CFLAGS="$CFLAGS" | ||
197 | CFLAGS="$CFLAGS -Werror -Werror=return-type" | ||
198 | cat > conftest.$ac_ext <<EOF | ||
199 | -#line 6337 "configure" | ||
200 | +#line 6341 "configure" | ||
201 | #include "confdefs.h" | ||
202 | |||
203 | int main() { | ||
204 | return(0); | ||
205 | ; return 0; } | ||
206 | EOF | ||
207 | -if { (eval echo configure:6344: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
208 | +if { (eval echo configure:6348: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
209 | rm -rf conftest* | ||
210 | ac_c_has_werror_return_type="yes" | ||
211 | else | ||
212 | @@ -6368,7 +6372,7 @@ echo "$ac_t""$ac_c_has_werror_return_type" 1>&6 | ||
213 | |||
214 | |||
215 | echo $ac_n "checking whether the C compiler supports -Wtype-limits""... $ac_c" 1>&6 | ||
216 | -echo "configure:6372: checking whether the C compiler supports -Wtype-limits" >&5 | ||
217 | +echo "configure:6376: checking whether the C compiler supports -Wtype-limits" >&5 | ||
218 | if eval "test \"`echo '$''{'ac_c_has_wtype_limits'+set}'`\" = set"; then | ||
219 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
220 | else | ||
221 | @@ -6384,14 +6388,14 @@ cross_compiling=$ac_cv_prog_cc_cross | ||
222 | _SAVE_CFLAGS="$CFLAGS" | ||
223 | CFLAGS="$CFLAGS -Werror -Wtype-limits" | ||
224 | cat > conftest.$ac_ext <<EOF | ||
225 | -#line 6388 "configure" | ||
226 | +#line 6392 "configure" | ||
227 | #include "confdefs.h" | ||
228 | |||
229 | int main() { | ||
230 | return(0); | ||
231 | ; return 0; } | ||
232 | EOF | ||
233 | -if { (eval echo configure:6395: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
234 | +if { (eval echo configure:6399: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
235 | rm -rf conftest* | ||
236 | ac_c_has_wtype_limits="yes" | ||
237 | else | ||
238 | @@ -6419,7 +6423,7 @@ echo "$ac_t""$ac_c_has_wtype_limits" 1>&6 | ||
239 | |||
240 | |||
241 | echo $ac_n "checking whether the C compiler supports -Wempty-body""... $ac_c" 1>&6 | ||
242 | -echo "configure:6423: checking whether the C compiler supports -Wempty-body" >&5 | ||
243 | +echo "configure:6427: checking whether the C compiler supports -Wempty-body" >&5 | ||
244 | if eval "test \"`echo '$''{'ac_c_has_wempty_body'+set}'`\" = set"; then | ||
245 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
246 | else | ||
247 | @@ -6435,14 +6439,14 @@ cross_compiling=$ac_cv_prog_cc_cross | ||
248 | _SAVE_CFLAGS="$CFLAGS" | ||
249 | CFLAGS="$CFLAGS -Werror -Wempty-body" | ||
250 | cat > conftest.$ac_ext <<EOF | ||
251 | -#line 6439 "configure" | ||
252 | +#line 6443 "configure" | ||
253 | #include "confdefs.h" | ||
254 | |||
255 | int main() { | ||
256 | return(0); | ||
257 | ; return 0; } | ||
258 | EOF | ||
259 | -if { (eval echo configure:6446: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
260 | +if { (eval echo configure:6450: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
261 | rm -rf conftest* | ||
262 | ac_c_has_wempty_body="yes" | ||
263 | else | ||
264 | @@ -6476,7 +6480,7 @@ echo "$ac_t""$ac_c_has_wempty_body" 1>&6 | ||
265 | _WARNINGS_CFLAGS="${_WARNINGS_CFLAGS} -Wno-unused" | ||
266 | |||
267 | echo $ac_n "checking whether the C compiler supports -Wno-overlength-strings""... $ac_c" 1>&6 | ||
268 | -echo "configure:6480: checking whether the C compiler supports -Wno-overlength-strings" >&5 | ||
269 | +echo "configure:6484: checking whether the C compiler supports -Wno-overlength-strings" >&5 | ||
270 | if eval "test \"`echo '$''{'ac_c_has_wno_overlength_strings'+set}'`\" = set"; then | ||
271 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
272 | else | ||
273 | @@ -6492,14 +6496,14 @@ cross_compiling=$ac_cv_prog_cc_cross | ||
274 | _SAVE_CFLAGS="$CFLAGS" | ||
275 | CFLAGS="$CFLAGS -Werror -Woverlength-strings" | ||
276 | cat > conftest.$ac_ext <<EOF | ||
277 | -#line 6496 "configure" | ||
278 | +#line 6500 "configure" | ||
279 | #include "confdefs.h" | ||
280 | |||
281 | int main() { | ||
282 | return(0); | ||
283 | ; return 0; } | ||
284 | EOF | ||
285 | -if { (eval echo configure:6503: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
286 | +if { (eval echo configure:6507: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
287 | rm -rf conftest* | ||
288 | ac_c_has_wno_overlength_strings="yes" | ||
289 | else | ||
290 | @@ -6580,7 +6584,7 @@ if test "$GNU_CXX"; then | ||
291 | _WARNINGS_CXXFLAGS="${_WARNINGS_CXXFLAGS} -Wall -Wpointer-arith -Woverloaded-virtual" | ||
292 | |||
293 | echo $ac_n "checking whether the C++ compiler supports -Werror=return-type""... $ac_c" 1>&6 | ||
294 | -echo "configure:6584: checking whether the C++ compiler supports -Werror=return-type" >&5 | ||
295 | +echo "configure:6588: checking whether the C++ compiler supports -Werror=return-type" >&5 | ||
296 | if eval "test \"`echo '$''{'ac_cxx_has_werror_return_type'+set}'`\" = set"; then | ||
297 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
298 | else | ||
299 | @@ -6596,14 +6600,14 @@ cross_compiling=$ac_cv_prog_cxx_cross | ||
300 | _SAVE_CXXFLAGS="$CXXFLAGS" | ||
301 | CXXFLAGS="$CXXFLAGS -Werror -Werror=return-type" | ||
302 | cat > conftest.$ac_ext <<EOF | ||
303 | -#line 6600 "configure" | ||
304 | +#line 6604 "configure" | ||
305 | #include "confdefs.h" | ||
306 | |||
307 | int main() { | ||
308 | return(0); | ||
309 | ; return 0; } | ||
310 | EOF | ||
311 | -if { (eval echo configure:6607: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
312 | +if { (eval echo configure:6611: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
313 | rm -rf conftest* | ||
314 | ac_cxx_has_werror_return_type="yes" | ||
315 | else | ||
316 | @@ -6631,7 +6635,7 @@ echo "$ac_t""$ac_cxx_has_werror_return_type" 1>&6 | ||
317 | |||
318 | |||
319 | echo $ac_n "checking whether the C++ compiler supports -Wtype-limits""... $ac_c" 1>&6 | ||
320 | -echo "configure:6635: checking whether the C++ compiler supports -Wtype-limits" >&5 | ||
321 | +echo "configure:6639: checking whether the C++ compiler supports -Wtype-limits" >&5 | ||
322 | if eval "test \"`echo '$''{'ac_cxx_has_wtype_limits'+set}'`\" = set"; then | ||
323 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
324 | else | ||
325 | @@ -6647,14 +6651,14 @@ cross_compiling=$ac_cv_prog_cxx_cross | ||
326 | _SAVE_CXXFLAGS="$CXXFLAGS" | ||
327 | CXXFLAGS="$CXXFLAGS -Werror -Wtype-limits" | ||
328 | cat > conftest.$ac_ext <<EOF | ||
329 | -#line 6651 "configure" | ||
330 | +#line 6655 "configure" | ||
331 | #include "confdefs.h" | ||
332 | |||
333 | int main() { | ||
334 | return(0); | ||
335 | ; return 0; } | ||
336 | EOF | ||
337 | -if { (eval echo configure:6658: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
338 | +if { (eval echo configure:6662: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
339 | rm -rf conftest* | ||
340 | ac_cxx_has_wtype_limits="yes" | ||
341 | else | ||
342 | @@ -6682,7 +6686,7 @@ echo "$ac_t""$ac_cxx_has_wtype_limits" 1>&6 | ||
343 | |||
344 | |||
345 | echo $ac_n "checking whether the C++ compiler supports -Wempty-body""... $ac_c" 1>&6 | ||
346 | -echo "configure:6686: checking whether the C++ compiler supports -Wempty-body" >&5 | ||
347 | +echo "configure:6690: checking whether the C++ compiler supports -Wempty-body" >&5 | ||
348 | if eval "test \"`echo '$''{'ac_cxx_has_wempty_body'+set}'`\" = set"; then | ||
349 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
350 | else | ||
351 | @@ -6698,14 +6702,14 @@ cross_compiling=$ac_cv_prog_cxx_cross | ||
352 | _SAVE_CXXFLAGS="$CXXFLAGS" | ||
353 | CXXFLAGS="$CXXFLAGS -Werror -Wempty-body" | ||
354 | cat > conftest.$ac_ext <<EOF | ||
355 | -#line 6702 "configure" | ||
356 | +#line 6706 "configure" | ||
357 | #include "confdefs.h" | ||
358 | |||
359 | int main() { | ||
360 | return(0); | ||
361 | ; return 0; } | ||
362 | EOF | ||
363 | -if { (eval echo configure:6709: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
364 | +if { (eval echo configure:6713: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
365 | rm -rf conftest* | ||
366 | ac_cxx_has_wempty_body="yes" | ||
367 | else | ||
368 | @@ -6741,7 +6745,7 @@ echo "$ac_t""$ac_cxx_has_wempty_body" 1>&6 | ||
369 | _WARNINGS_CXXFLAGS="${_WARNINGS_CXXFLAGS} -Wno-ctor-dtor-privacy" | ||
370 | |||
371 | echo $ac_n "checking whether the C++ compiler supports -Wno-overlength-strings""... $ac_c" 1>&6 | ||
372 | -echo "configure:6745: checking whether the C++ compiler supports -Wno-overlength-strings" >&5 | ||
373 | +echo "configure:6749: checking whether the C++ compiler supports -Wno-overlength-strings" >&5 | ||
374 | if eval "test \"`echo '$''{'ac_cxx_has_wno_overlength_strings'+set}'`\" = set"; then | ||
375 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
376 | else | ||
377 | @@ -6757,14 +6761,14 @@ cross_compiling=$ac_cv_prog_cxx_cross | ||
378 | _SAVE_CXXFLAGS="$CXXFLAGS" | ||
379 | CXXFLAGS="$CXXFLAGS -Werror -Woverlength-strings" | ||
380 | cat > conftest.$ac_ext <<EOF | ||
381 | -#line 6761 "configure" | ||
382 | +#line 6765 "configure" | ||
383 | #include "confdefs.h" | ||
384 | |||
385 | int main() { | ||
386 | return(0); | ||
387 | ; return 0; } | ||
388 | EOF | ||
389 | -if { (eval echo configure:6768: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
390 | +if { (eval echo configure:6772: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
391 | rm -rf conftest* | ||
392 | ac_cxx_has_wno_overlength_strings="yes" | ||
393 | else | ||
394 | @@ -6792,7 +6796,7 @@ echo "$ac_t""$ac_cxx_has_wno_overlength_strings" 1>&6 | ||
395 | |||
396 | |||
397 | echo $ac_n "checking whether the C++ compiler supports -Wno-invalid-offsetof""... $ac_c" 1>&6 | ||
398 | -echo "configure:6796: checking whether the C++ compiler supports -Wno-invalid-offsetof" >&5 | ||
399 | +echo "configure:6800: checking whether the C++ compiler supports -Wno-invalid-offsetof" >&5 | ||
400 | if eval "test \"`echo '$''{'ac_cxx_has_wno_invalid_offsetof'+set}'`\" = set"; then | ||
401 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
402 | else | ||
403 | @@ -6808,14 +6812,14 @@ cross_compiling=$ac_cv_prog_cxx_cross | ||
404 | _SAVE_CXXFLAGS="$CXXFLAGS" | ||
405 | CXXFLAGS="$CXXFLAGS -Werror -Winvalid-offsetof" | ||
406 | cat > conftest.$ac_ext <<EOF | ||
407 | -#line 6812 "configure" | ||
408 | +#line 6816 "configure" | ||
409 | #include "confdefs.h" | ||
410 | |||
411 | int main() { | ||
412 | return(0); | ||
413 | ; return 0; } | ||
414 | EOF | ||
415 | -if { (eval echo configure:6819: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
416 | +if { (eval echo configure:6823: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
417 | rm -rf conftest* | ||
418 | ac_cxx_has_wno_invalid_offsetof="yes" | ||
419 | else | ||
420 | @@ -6843,7 +6847,7 @@ echo "$ac_t""$ac_cxx_has_wno_invalid_offsetof" 1>&6 | ||
421 | |||
422 | |||
423 | echo $ac_n "checking whether the C++ compiler supports -Wno-variadic-macros""... $ac_c" 1>&6 | ||
424 | -echo "configure:6847: checking whether the C++ compiler supports -Wno-variadic-macros" >&5 | ||
425 | +echo "configure:6851: checking whether the C++ compiler supports -Wno-variadic-macros" >&5 | ||
426 | if eval "test \"`echo '$''{'ac_cxx_has_wno_variadic_macros'+set}'`\" = set"; then | ||
427 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
428 | else | ||
429 | @@ -6859,14 +6863,14 @@ cross_compiling=$ac_cv_prog_cxx_cross | ||
430 | _SAVE_CXXFLAGS="$CXXFLAGS" | ||
431 | CXXFLAGS="$CXXFLAGS -Werror -Wvariadic-macros" | ||
432 | cat > conftest.$ac_ext <<EOF | ||
433 | -#line 6863 "configure" | ||
434 | +#line 6867 "configure" | ||
435 | #include "confdefs.h" | ||
436 | |||
437 | int main() { | ||
438 | return(0); | ||
439 | ; return 0; } | ||
440 | EOF | ||
441 | -if { (eval echo configure:6870: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
442 | +if { (eval echo configure:6874: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
443 | rm -rf conftest* | ||
444 | ac_cxx_has_wno_variadic_macros="yes" | ||
445 | else | ||
446 | @@ -6918,7 +6922,7 @@ echo "$ac_t""$ac_cxx_has_wno_variadic_macros" 1>&6 | ||
447 | _WARNINGS_CXXFLAGS="${_WARNINGS_CXXFLAGS} -Wno-c++0x-extensions" | ||
448 | |||
449 | echo $ac_n "checking whether the C++ compiler supports -Wno-extended-offsetof""... $ac_c" 1>&6 | ||
450 | -echo "configure:6922: checking whether the C++ compiler supports -Wno-extended-offsetof" >&5 | ||
451 | +echo "configure:6926: checking whether the C++ compiler supports -Wno-extended-offsetof" >&5 | ||
452 | if eval "test \"`echo '$''{'ac_cxx_has_wno_extended_offsetof'+set}'`\" = set"; then | ||
453 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
454 | else | ||
455 | @@ -6934,14 +6938,14 @@ cross_compiling=$ac_cv_prog_cxx_cross | ||
456 | _SAVE_CXXFLAGS="$CXXFLAGS" | ||
457 | CXXFLAGS="$CXXFLAGS -Werror -Wextended-offsetof" | ||
458 | cat > conftest.$ac_ext <<EOF | ||
459 | -#line 6938 "configure" | ||
460 | +#line 6942 "configure" | ||
461 | #include "confdefs.h" | ||
462 | |||
463 | int main() { | ||
464 | return(0); | ||
465 | ; return 0; } | ||
466 | EOF | ||
467 | -if { (eval echo configure:6945: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
468 | +if { (eval echo configure:6949: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
469 | rm -rf conftest* | ||
470 | ac_cxx_has_wno_extended_offsetof="yes" | ||
471 | else | ||
472 | @@ -6979,7 +6983,7 @@ MKSHLIB_UNFORCE_ALL= | ||
473 | if test "$COMPILE_ENVIRONMENT"; then | ||
474 | if test "$GNU_CC"; then | ||
475 | echo $ac_n "checking whether ld has archive extraction flags""... $ac_c" 1>&6 | ||
476 | -echo "configure:6983: checking whether ld has archive extraction flags" >&5 | ||
477 | +echo "configure:6987: checking whether ld has archive extraction flags" >&5 | ||
478 | if eval "test \"`echo '$''{'ac_cv_mkshlib_force_and_unforce'+set}'`\" = set"; then | ||
479 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
480 | else | ||
481 | @@ -6996,14 +7000,14 @@ LOOP_INPUT | ||
482 | LDFLAGS=$force | ||
483 | LIBS=$unforce | ||
484 | cat > conftest.$ac_ext <<EOF | ||
485 | -#line 7000 "configure" | ||
486 | +#line 7004 "configure" | ||
487 | #include "confdefs.h" | ||
488 | |||
489 | int main() { | ||
490 | |||
491 | ; return 0; } | ||
492 | EOF | ||
493 | -if { (eval echo configure:7007: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
494 | +if { (eval echo configure:7011: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
495 | rm -rf conftest* | ||
496 | ac_cv_mkshlib_force_and_unforce=$line; break | ||
497 | else | ||
498 | @@ -7038,16 +7042,16 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a | ||
499 | cross_compiling=$ac_cv_prog_cc_cross | ||
500 | |||
501 | echo $ac_n "checking for 64-bit OS""... $ac_c" 1>&6 | ||
502 | -echo "configure:7042: checking for 64-bit OS" >&5 | ||
503 | +echo "configure:7046: checking for 64-bit OS" >&5 | ||
504 | cat > conftest.$ac_ext <<EOF | ||
505 | -#line 7044 "configure" | ||
506 | +#line 7048 "configure" | ||
507 | #include "confdefs.h" | ||
508 | $configure_static_assert_macros | ||
509 | int main() { | ||
510 | CONFIGURE_STATIC_ASSERT(sizeof(void*) == 8) | ||
511 | ; return 0; } | ||
512 | EOF | ||
513 | -if { (eval echo configure:7051: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
514 | +if { (eval echo configure:7055: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
515 | rm -rf conftest* | ||
516 | result="yes" | ||
517 | else | ||
518 | @@ -7170,7 +7174,7 @@ case "$host" in | ||
519 | esac | ||
520 | |||
521 | echo $ac_n "checking for Python version >= $PYTHON_VERSION but not 3.x""... $ac_c" 1>&6 | ||
522 | -echo "configure:7174: checking for Python version >= $PYTHON_VERSION but not 3.x" >&5 | ||
523 | +echo "configure:7178: checking for Python version >= $PYTHON_VERSION but not 3.x" >&5 | ||
524 | |||
525 | $PYTHON -c "import sys; sys.exit(sys.version[:3] < sys.argv[1] or sys.version[:2] != '2.')" $PYTHON_VERSION | ||
526 | _python_res=$? | ||
527 | @@ -7181,7 +7185,7 @@ fi | ||
528 | echo "$ac_t""yes" 1>&6 | ||
529 | |||
530 | echo $ac_n "checking for custom <stdint.h> implementation""... $ac_c" 1>&6 | ||
531 | -echo "configure:7185: checking for custom <stdint.h> implementation" >&5 | ||
532 | +echo "configure:7189: checking for custom <stdint.h> implementation" >&5 | ||
533 | if test "$MOZ_CUSTOM_STDINT_H"; then | ||
534 | cat >> confdefs.pytmp <<EOF | ||
535 | (''' MOZ_CUSTOM_STDINT_H ''', r''' "$MOZ_CUSTOM_STDINT_H" ''') | ||
536 | @@ -7249,9 +7253,9 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes | ||
537 | cross_compiling=$ac_cv_prog_cxx_cross | ||
538 | |||
539 | echo $ac_n "checking for IBM XLC/C++ compiler version >= 9.0.0.7""... $ac_c" 1>&6 | ||
540 | -echo "configure:7253: checking for IBM XLC/C++ compiler version >= 9.0.0.7" >&5 | ||
541 | +echo "configure:7257: checking for IBM XLC/C++ compiler version >= 9.0.0.7" >&5 | ||
542 | cat > conftest.$ac_ext <<EOF | ||
543 | -#line 7255 "configure" | ||
544 | +#line 7259 "configure" | ||
545 | #include "confdefs.h" | ||
546 | |||
547 | int main() { | ||
548 | @@ -7260,7 +7264,7 @@ int main() { | ||
549 | #endif | ||
550 | ; return 0; } | ||
551 | EOF | ||
552 | -if { (eval echo configure:7264: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
553 | +if { (eval echo configure:7268: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
554 | rm -rf conftest* | ||
555 | _BAD_COMPILER= | ||
556 | else | ||
557 | @@ -7298,12 +7302,12 @@ cross_compiling=$ac_cv_prog_cc_cross | ||
558 | do | ||
559 | ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` | ||
560 | echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 | ||
561 | -echo "configure:7302: checking for $ac_hdr" >&5 | ||
562 | +echo "configure:7306: checking for $ac_hdr" >&5 | ||
563 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
564 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
565 | else | ||
566 | cat > conftest.$ac_ext <<EOF | ||
567 | -#line 7307 "configure" | ||
568 | +#line 7311 "configure" | ||
569 | #include "confdefs.h" | ||
570 | |||
571 | #include <$ac_hdr> | ||
572 | @@ -7311,7 +7315,7 @@ int main() { | ||
573 | |||
574 | ; return 0; } | ||
575 | EOF | ||
576 | -if { (eval echo configure:7315: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
577 | +if { (eval echo configure:7319: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
578 | rm -rf conftest* | ||
579 | eval "ac_cv_header_$ac_safe=yes" | ||
580 | else | ||
581 | @@ -7394,17 +7398,17 @@ EOF | ||
582 | # builds. | ||
583 | _SAVE_LDFLAGS=$LDFLAGS | ||
584 | echo $ac_n "checking for -framework ExceptionHandling""... $ac_c" 1>&6 | ||
585 | -echo "configure:7398: checking for -framework ExceptionHandling" >&5 | ||
586 | +echo "configure:7402: checking for -framework ExceptionHandling" >&5 | ||
587 | LDFLAGS="$LDFLAGS -framework ExceptionHandling" | ||
588 | cat > conftest.$ac_ext <<EOF | ||
589 | -#line 7401 "configure" | ||
590 | +#line 7405 "configure" | ||
591 | #include "confdefs.h" | ||
592 | |||
593 | int main() { | ||
594 | return 0; | ||
595 | ; return 0; } | ||
596 | EOF | ||
597 | -if { (eval echo configure:7408: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
598 | +if { (eval echo configure:7412: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
599 | rm -rf conftest* | ||
600 | ac_cv_have_framework_exceptionhandling="yes" | ||
601 | else | ||
602 | @@ -7426,18 +7430,18 @@ rm -f conftest* | ||
603 | echo "Skipping -dead_strip because DTrace is enabled. See bug 403132." | ||
604 | else | ||
605 | echo $ac_n "checking for -dead_strip option to ld""... $ac_c" 1>&6 | ||
606 | -echo "configure:7430: checking for -dead_strip option to ld" >&5 | ||
607 | +echo "configure:7434: checking for -dead_strip option to ld" >&5 | ||
608 | _SAVE_LDFLAGS=$LDFLAGS | ||
609 | LDFLAGS="$LDFLAGS -Wl,-dead_strip" | ||
610 | cat > conftest.$ac_ext <<EOF | ||
611 | -#line 7434 "configure" | ||
612 | +#line 7438 "configure" | ||
613 | #include "confdefs.h" | ||
614 | |||
615 | int main() { | ||
616 | return 0; | ||
617 | ; return 0; } | ||
618 | EOF | ||
619 | -if { (eval echo configure:7441: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
620 | +if { (eval echo configure:7445: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
621 | rm -rf conftest* | ||
622 | _HAVE_DEAD_STRIP=1 | ||
623 | else | ||
624 | @@ -7783,12 +7787,12 @@ EOF | ||
625 | do | ||
626 | ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` | ||
627 | echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 | ||
628 | -echo "configure:7787: checking for $ac_hdr" >&5 | ||
629 | +echo "configure:7791: checking for $ac_hdr" >&5 | ||
630 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
631 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
632 | else | ||
633 | cat > conftest.$ac_ext <<EOF | ||
634 | -#line 7792 "configure" | ||
635 | +#line 7796 "configure" | ||
636 | #include "confdefs.h" | ||
637 | |||
638 | #include <$ac_hdr> | ||
639 | @@ -7796,7 +7800,7 @@ int main() { | ||
640 | |||
641 | ; return 0; } | ||
642 | EOF | ||
643 | -if { (eval echo configure:7800: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
644 | +if { (eval echo configure:7804: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
645 | rm -rf conftest* | ||
646 | eval "ac_cv_header_$ac_safe=yes" | ||
647 | else | ||
648 | @@ -7989,19 +7993,19 @@ EOF | ||
649 | _DEFINES_CXXFLAGS="$_DEFINES_CXXFLAGS -Uunix -U__unix -U__unix__" | ||
650 | |||
651 | echo $ac_n "checking for __declspec(dllexport)""... $ac_c" 1>&6 | ||
652 | -echo "configure:7993: checking for __declspec(dllexport)" >&5 | ||
653 | +echo "configure:7997: checking for __declspec(dllexport)" >&5 | ||
654 | if eval "test \"`echo '$''{'ac_os2_declspec'+set}'`\" = set"; then | ||
655 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
656 | else | ||
657 | cat > conftest.$ac_ext <<EOF | ||
658 | -#line 7998 "configure" | ||
659 | +#line 8002 "configure" | ||
660 | #include "confdefs.h" | ||
661 | __declspec(dllexport) void ac_os2_declspec(void) {} | ||
662 | int main() { | ||
663 | return 0; | ||
664 | ; return 0; } | ||
665 | EOF | ||
666 | -if { (eval echo configure:8005: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
667 | +if { (eval echo configure:8009: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
668 | rm -rf conftest* | ||
669 | ac_os2_declspec="yes" | ||
670 | else | ||
671 | @@ -8054,14 +8058,14 @@ EOF | ||
672 | _SAVE_LDFLAGS=$LDFLAGS | ||
673 | LDFLAGS="-M /usr/lib/ld/map.noexstk $LDFLAGS" | ||
674 | cat > conftest.$ac_ext <<EOF | ||
675 | -#line 8058 "configure" | ||
676 | +#line 8062 "configure" | ||
677 | #include "confdefs.h" | ||
678 | #include <stdio.h> | ||
679 | int main() { | ||
680 | printf("Hello World\n"); | ||
681 | ; return 0; } | ||
682 | EOF | ||
683 | -if { (eval echo configure:8065: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
684 | +if { (eval echo configure:8069: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
685 | : | ||
686 | else | ||
687 | echo "configure: failed program was:" >&5 | ||
688 | @@ -8089,7 +8093,7 @@ rm -f conftest* | ||
689 | CC_VERSION=`$CC -V 2>&1 | grep '^cc:' 2>/dev/null | $AWK -F\: '{ print $2 }'` | ||
690 | CXX_VERSION=`$CXX -V 2>&1 | grep '^CC:' 2>/dev/null | $AWK -F\: '{ print $2 }'` | ||
691 | echo $ac_n "checking for Sun C++ compiler version >= 5.9""... $ac_c" 1>&6 | ||
692 | -echo "configure:8093: checking for Sun C++ compiler version >= 5.9" >&5 | ||
693 | +echo "configure:8097: checking for Sun C++ compiler version >= 5.9" >&5 | ||
694 | |||
695 | ac_ext=C | ||
696 | # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. | ||
697 | @@ -8099,7 +8103,7 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes | ||
698 | cross_compiling=$ac_cv_prog_cxx_cross | ||
699 | |||
700 | cat > conftest.$ac_ext <<EOF | ||
701 | -#line 8103 "configure" | ||
702 | +#line 8107 "configure" | ||
703 | #include "confdefs.h" | ||
704 | |||
705 | int main() { | ||
706 | @@ -8108,7 +8112,7 @@ int main() { | ||
707 | #endif | ||
708 | ; return 0; } | ||
709 | EOF | ||
710 | -if { (eval echo configure:8112: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
711 | +if { (eval echo configure:8116: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
712 | rm -rf conftest* | ||
713 | _BAD_COMPILER= | ||
714 | else | ||
715 | @@ -8125,7 +8129,7 @@ rm -f conftest* | ||
716 | _res="yes" | ||
717 | fi | ||
718 | cat > conftest.$ac_ext <<EOF | ||
719 | -#line 8129 "configure" | ||
720 | +#line 8133 "configure" | ||
721 | #include "confdefs.h" | ||
722 | |||
723 | int main() { | ||
724 | @@ -8134,7 +8138,7 @@ int main() { | ||
725 | #endif | ||
726 | ; return 0; } | ||
727 | EOF | ||
728 | -if { (eval echo configure:8138: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
729 | +if { (eval echo configure:8142: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
730 | rm -rf conftest* | ||
731 | _ABOVE_SS12U1= | ||
732 | else | ||
733 | @@ -8535,7 +8539,7 @@ fi | ||
734 | |||
735 | if test "$GNU_CC" -a "$GCC_USE_GNU_LD" -a -z "$MOZ_DISABLE_ICF"; then | ||
736 | echo $ac_n "checking whether the linker supports Identical Code Folding""... $ac_c" 1>&6 | ||
737 | -echo "configure:8539: checking whether the linker supports Identical Code Folding" >&5 | ||
738 | +echo "configure:8543: checking whether the linker supports Identical Code Folding" >&5 | ||
739 | if eval "test \"`echo '$''{'LD_SUPPORTS_ICF'+set}'`\" = set"; then | ||
740 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
741 | else | ||
742 | @@ -8544,7 +8548,7 @@ else | ||
743 | 'int main() {return foo() - bar();}' > conftest.${ac_ext} | ||
744 | # If the linker supports ICF, foo and bar symbols will have | ||
745 | # the same address | ||
746 | - 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; }; } && | ||
747 | + 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; }; } && | ||
748 | test -s conftest${ac_exeext} && | ||
749 | objdump -t conftest${ac_exeext} | awk '{a[$6] = $1} END {if (a["foo"] && (a["foo"] != a["bar"])) { exit 1 }}'; then | ||
750 | LD_SUPPORTS_ICF=yes | ||
751 | @@ -8559,14 +8563,14 @@ echo "$ac_t""$LD_SUPPORTS_ICF" 1>&6 | ||
752 | _SAVE_LDFLAGS="$LDFLAGS -Wl,--icf=safe" | ||
753 | LDFLAGS="$LDFLAGS -Wl,--icf=safe -Wl,--print-icf-sections" | ||
754 | cat > conftest.$ac_ext <<EOF | ||
755 | -#line 8563 "configure" | ||
756 | +#line 8567 "configure" | ||
757 | #include "confdefs.h" | ||
758 | |||
759 | int main() { | ||
760 | |||
761 | ; return 0; } | ||
762 | EOF | ||
763 | -if { (eval echo configure:8570: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
764 | +if { (eval echo configure:8574: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
765 | rm -rf conftest* | ||
766 | LD_PRINT_ICF_SECTIONS=-Wl,--print-icf-sections | ||
767 | else | ||
768 | @@ -8584,15 +8588,15 @@ fi | ||
769 | |||
770 | if test "$GNU_CC" -a "$GCC_USE_GNU_LD" -a -n "$MOZ_DEBUG_FLAGS"; then | ||
771 | echo $ac_n "checking whether removing dead symbols breaks debugging""... $ac_c" 1>&6 | ||
772 | -echo "configure:8588: checking whether removing dead symbols breaks debugging" >&5 | ||
773 | +echo "configure:8592: checking whether removing dead symbols breaks debugging" >&5 | ||
774 | if eval "test \"`echo '$''{'GC_SECTIONS_BREAKS_DEBUG_RANGES'+set}'`\" = set"; then | ||
775 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
776 | else | ||
777 | echo 'int foo() {return 42;}' \ | ||
778 | 'int bar() {return 1;}' \ | ||
779 | 'int main() {return foo();}' > conftest.${ac_ext} | ||
780 | - 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; }; } && | ||
781 | - { 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; }; } && | ||
782 | + 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; }; } && | ||
783 | + { 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; }; } && | ||
784 | test -s conftest${ac_exeext} -a -s conftest.${ac_objext}; then | ||
785 | if test "`$PYTHON "$_topsrcdir"/build/autoconf/check_debug_ranges.py conftest.${ac_objext} conftest.${ac_ext}`" = \ | ||
786 | "`$PYTHON "$_topsrcdir"/build/autoconf/check_debug_ranges.py conftest${ac_exeext} conftest.${ac_ext}`"; then | ||
787 | @@ -8615,12 +8619,12 @@ fi | ||
788 | |||
789 | if test -z "$SKIP_COMPILER_CHECKS"; then | ||
790 | echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 | ||
791 | -echo "configure:8619: checking for ANSI C header files" >&5 | ||
792 | +echo "configure:8623: checking for ANSI C header files" >&5 | ||
793 | if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then | ||
794 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
795 | else | ||
796 | cat > conftest.$ac_ext <<EOF | ||
797 | -#line 8624 "configure" | ||
798 | +#line 8628 "configure" | ||
799 | #include "confdefs.h" | ||
800 | #include <stdlib.h> | ||
801 | #include <stdarg.h> | ||
802 | @@ -8628,7 +8632,7 @@ else | ||
803 | #include <float.h> | ||
804 | EOF | ||
805 | ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" | ||
806 | -{ (eval echo configure:8632: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } | ||
807 | +{ (eval echo configure:8636: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } | ||
808 | ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` | ||
809 | if test -z "$ac_err"; then | ||
810 | rm -rf conftest* | ||
811 | @@ -8645,7 +8649,7 @@ rm -f conftest* | ||
812 | if test $ac_cv_header_stdc = yes; then | ||
813 | # SunOS 4.x string.h does not declare mem*, contrary to ANSI. | ||
814 | cat > conftest.$ac_ext <<EOF | ||
815 | -#line 8649 "configure" | ||
816 | +#line 8653 "configure" | ||
817 | #include "confdefs.h" | ||
818 | #include <string.h> | ||
819 | EOF | ||
820 | @@ -8663,7 +8667,7 @@ fi | ||
821 | if test $ac_cv_header_stdc = yes; then | ||
822 | # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. | ||
823 | cat > conftest.$ac_ext <<EOF | ||
824 | -#line 8667 "configure" | ||
825 | +#line 8671 "configure" | ||
826 | #include "confdefs.h" | ||
827 | #include <stdlib.h> | ||
828 | EOF | ||
829 | @@ -8684,7 +8688,7 @@ if test "$cross_compiling" = yes; then | ||
830 | : | ||
831 | else | ||
832 | cat > conftest.$ac_ext <<EOF | ||
833 | -#line 8688 "configure" | ||
834 | +#line 8692 "configure" | ||
835 | #include "confdefs.h" | ||
836 | #include <ctype.h> | ||
837 | #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') | ||
838 | @@ -8695,7 +8699,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); | ||
839 | exit (0); } | ||
840 | |||
841 | EOF | ||
842 | -if { (eval echo configure:8699: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null | ||
843 | +if { (eval echo configure:8703: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null | ||
844 | then | ||
845 | : | ||
846 | else | ||
847 | @@ -8722,12 +8726,12 @@ EOF | ||
848 | fi | ||
849 | |||
850 | echo $ac_n "checking for working const""... $ac_c" 1>&6 | ||
851 | -echo "configure:8726: checking for working const" >&5 | ||
852 | +echo "configure:8730: checking for working const" >&5 | ||
853 | if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then | ||
854 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
855 | else | ||
856 | cat > conftest.$ac_ext <<EOF | ||
857 | -#line 8731 "configure" | ||
858 | +#line 8735 "configure" | ||
859 | #include "confdefs.h" | ||
860 | |||
861 | int main() { | ||
862 | @@ -8776,7 +8780,7 @@ ccp = (char const *const *) p; | ||
863 | |||
864 | ; return 0; } | ||
865 | EOF | ||
866 | -if { (eval echo configure:8780: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
867 | +if { (eval echo configure:8784: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
868 | rm -rf conftest* | ||
869 | ac_cv_c_const=yes | ||
870 | else | ||
871 | @@ -8800,12 +8804,12 @@ EOF | ||
872 | fi | ||
873 | |||
874 | echo $ac_n "checking for mode_t""... $ac_c" 1>&6 | ||
875 | -echo "configure:8804: checking for mode_t" >&5 | ||
876 | +echo "configure:8808: checking for mode_t" >&5 | ||
877 | if eval "test \"`echo '$''{'ac_cv_type_mode_t'+set}'`\" = set"; then | ||
878 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
879 | else | ||
880 | cat > conftest.$ac_ext <<EOF | ||
881 | -#line 8809 "configure" | ||
882 | +#line 8813 "configure" | ||
883 | #include "confdefs.h" | ||
884 | #include <sys/types.h> | ||
885 | #if STDC_HEADERS | ||
886 | @@ -8836,12 +8840,12 @@ EOF | ||
887 | fi | ||
888 | |||
889 | echo $ac_n "checking for off_t""... $ac_c" 1>&6 | ||
890 | -echo "configure:8840: checking for off_t" >&5 | ||
891 | +echo "configure:8844: checking for off_t" >&5 | ||
892 | if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then | ||
893 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
894 | else | ||
895 | cat > conftest.$ac_ext <<EOF | ||
896 | -#line 8845 "configure" | ||
897 | +#line 8849 "configure" | ||
898 | #include "confdefs.h" | ||
899 | #include <sys/types.h> | ||
900 | #if STDC_HEADERS | ||
901 | @@ -8872,12 +8876,12 @@ EOF | ||
902 | fi | ||
903 | |||
904 | echo $ac_n "checking for pid_t""... $ac_c" 1>&6 | ||
905 | -echo "configure:8876: checking for pid_t" >&5 | ||
906 | +echo "configure:8880: checking for pid_t" >&5 | ||
907 | if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then | ||
908 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
909 | else | ||
910 | cat > conftest.$ac_ext <<EOF | ||
911 | -#line 8881 "configure" | ||
912 | +#line 8885 "configure" | ||
913 | #include "confdefs.h" | ||
914 | #include <sys/types.h> | ||
915 | #if STDC_HEADERS | ||
916 | @@ -8908,12 +8912,12 @@ EOF | ||
917 | fi | ||
918 | |||
919 | echo $ac_n "checking for size_t""... $ac_c" 1>&6 | ||
920 | -echo "configure:8912: checking for size_t" >&5 | ||
921 | +echo "configure:8916: checking for size_t" >&5 | ||
922 | if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then | ||
923 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
924 | else | ||
925 | cat > conftest.$ac_ext <<EOF | ||
926 | -#line 8917 "configure" | ||
927 | +#line 8921 "configure" | ||
928 | #include "confdefs.h" | ||
929 | #include <sys/types.h> | ||
930 | #if STDC_HEADERS | ||
931 | @@ -8951,12 +8955,12 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes | ||
932 | cross_compiling=$ac_cv_prog_cxx_cross | ||
933 | |||
934 | echo $ac_n "checking for __stdcall""... $ac_c" 1>&6 | ||
935 | -echo "configure:8955: checking for __stdcall" >&5 | ||
936 | +echo "configure:8959: checking for __stdcall" >&5 | ||
937 | if eval "test \"`echo '$''{'ac_cv___stdcall'+set}'`\" = set"; then | ||
938 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
939 | else | ||
940 | cat > conftest.$ac_ext <<EOF | ||
941 | -#line 8960 "configure" | ||
942 | +#line 8964 "configure" | ||
943 | #include "confdefs.h" | ||
944 | template <typename Method> struct foo; | ||
945 | template <> struct foo<void (*)()> {}; | ||
946 | @@ -8965,7 +8969,7 @@ int main() { | ||
947 | |||
948 | ; return 0; } | ||
949 | EOF | ||
950 | -if { (eval echo configure:8969: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
951 | +if { (eval echo configure:8973: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
952 | rm -rf conftest* | ||
953 | ac_cv___stdcall=true | ||
954 | else | ||
955 | @@ -8997,12 +9001,12 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a | ||
956 | cross_compiling=$ac_cv_prog_cc_cross | ||
957 | |||
958 | echo $ac_n "checking for ssize_t""... $ac_c" 1>&6 | ||
959 | -echo "configure:9001: checking for ssize_t" >&5 | ||
960 | +echo "configure:9005: checking for ssize_t" >&5 | ||
961 | if eval "test \"`echo '$''{'ac_cv_type_ssize_t'+set}'`\" = set"; then | ||
962 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
963 | else | ||
964 | cat > conftest.$ac_ext <<EOF | ||
965 | -#line 9006 "configure" | ||
966 | +#line 9010 "configure" | ||
967 | #include "confdefs.h" | ||
968 | #include <stdio.h> | ||
969 | #include <sys/types.h> | ||
970 | @@ -9010,7 +9014,7 @@ int main() { | ||
971 | ssize_t foo = 0; | ||
972 | ; return 0; } | ||
973 | EOF | ||
974 | -if { (eval echo configure:9014: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
975 | +if { (eval echo configure:9018: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
976 | rm -rf conftest* | ||
977 | ac_cv_type_ssize_t=true | ||
978 | else | ||
979 | @@ -9035,12 +9039,12 @@ else | ||
980 | echo "$ac_t""no" 1>&6 | ||
981 | fi | ||
982 | echo $ac_n "checking for st_blksize in struct stat""... $ac_c" 1>&6 | ||
983 | -echo "configure:9039: checking for st_blksize in struct stat" >&5 | ||
984 | +echo "configure:9043: checking for st_blksize in struct stat" >&5 | ||
985 | if eval "test \"`echo '$''{'ac_cv_struct_st_blksize'+set}'`\" = set"; then | ||
986 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
987 | else | ||
988 | cat > conftest.$ac_ext <<EOF | ||
989 | -#line 9044 "configure" | ||
990 | +#line 9048 "configure" | ||
991 | #include "confdefs.h" | ||
992 | #include <sys/types.h> | ||
993 | #include <sys/stat.h> | ||
994 | @@ -9048,7 +9052,7 @@ int main() { | ||
995 | struct stat s; s.st_blksize; | ||
996 | ; return 0; } | ||
997 | EOF | ||
998 | -if { (eval echo configure:9052: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
999 | +if { (eval echo configure:9056: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1000 | rm -rf conftest* | ||
1001 | ac_cv_struct_st_blksize=yes | ||
1002 | else | ||
1003 | @@ -9072,12 +9076,12 @@ EOF | ||
1004 | fi | ||
1005 | |||
1006 | echo $ac_n "checking for siginfo_t""... $ac_c" 1>&6 | ||
1007 | -echo "configure:9076: checking for siginfo_t" >&5 | ||
1008 | +echo "configure:9080: checking for siginfo_t" >&5 | ||
1009 | if eval "test \"`echo '$''{'ac_cv_siginfo_t'+set}'`\" = set"; then | ||
1010 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1011 | else | ||
1012 | cat > conftest.$ac_ext <<EOF | ||
1013 | -#line 9081 "configure" | ||
1014 | +#line 9085 "configure" | ||
1015 | #include "confdefs.h" | ||
1016 | #define _POSIX_C_SOURCE 199506L | ||
1017 | #include <signal.h> | ||
1018 | @@ -9085,7 +9089,7 @@ int main() { | ||
1019 | siginfo_t* info; | ||
1020 | ; return 0; } | ||
1021 | EOF | ||
1022 | -if { (eval echo configure:9089: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1023 | +if { (eval echo configure:9093: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1024 | rm -rf conftest* | ||
1025 | ac_cv_siginfo_t=true | ||
1026 | else | ||
1027 | @@ -9111,72 +9115,8 @@ else | ||
1028 | fi | ||
1029 | |||
1030 | |||
1031 | -echo $ac_n "checking for the size of void*""... $ac_c" 1>&6 | ||
1032 | -echo "configure:9116: checking for the size of void*" >&5 | ||
1033 | -if eval "test \"`echo '$''{'moz_cv_size_of_JS_BYTES_PER_WORD'+set}'`\" = set"; then | ||
1034 | - echo $ac_n "(cached) $ac_c" 1>&6 | ||
1035 | -else | ||
1036 | - | ||
1037 | - moz_cv_size_of_JS_BYTES_PER_WORD= | ||
1038 | - for size in 4 8; do | ||
1039 | - cat > conftest.$ac_ext <<EOF | ||
1040 | -#line 9124 "configure" | ||
1041 | -#include "confdefs.h" | ||
1042 | - | ||
1043 | -int main() { | ||
1044 | - | ||
1045 | - int a[sizeof (void*) == $size ? 1 : -1]; | ||
1046 | - return 0; | ||
1047 | - | ||
1048 | -; return 0; } | ||
1049 | -EOF | ||
1050 | -if { (eval echo configure:9134: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1051 | - rm -rf conftest* | ||
1052 | - moz_cv_size_of_JS_BYTES_PER_WORD=$size; break | ||
1053 | -else | ||
1054 | - echo "configure: failed program was:" >&5 | ||
1055 | - cat conftest.$ac_ext >&5 | ||
1056 | -fi | ||
1057 | -rm -f conftest* | ||
1058 | - done | ||
1059 | - if test ! "$moz_cv_size_of_JS_BYTES_PER_WORD"; then | ||
1060 | - { echo "configure: error: No size found for void*" 1>&2; exit 1; } | ||
1061 | - fi | ||
1062 | - | ||
1063 | -fi | ||
1064 | - | ||
1065 | -echo "$ac_t""$moz_cv_size_of_JS_BYTES_PER_WORD" 1>&6 | ||
1066 | -cat >> confdefs.pytmp <<EOF | ||
1067 | - (''' JS_BYTES_PER_WORD ''', r''' $moz_cv_size_of_JS_BYTES_PER_WORD ''') | ||
1068 | -EOF | ||
1069 | -cat >> confdefs.h <<EOF | ||
1070 | -#define JS_BYTES_PER_WORD $moz_cv_size_of_JS_BYTES_PER_WORD | ||
1071 | -EOF | ||
1072 | - | ||
1073 | - | ||
1074 | -if test "$moz_cv_size_of_JS_BYTES_PER_WORD" -eq "4"; then | ||
1075 | - cat >> confdefs.pytmp <<\EOF | ||
1076 | - (''' JS_BITS_PER_WORD_LOG2 ''', r''' 5 ''') | ||
1077 | -EOF | ||
1078 | -cat >> confdefs.h <<\EOF | ||
1079 | -#define JS_BITS_PER_WORD_LOG2 5 | ||
1080 | -EOF | ||
1081 | - | ||
1082 | -elif test "$moz_cv_size_of_JS_BYTES_PER_WORD" -eq "8"; then | ||
1083 | - cat >> confdefs.pytmp <<\EOF | ||
1084 | - (''' JS_BITS_PER_WORD_LOG2 ''', r''' 6 ''') | ||
1085 | -EOF | ||
1086 | -cat >> confdefs.h <<\EOF | ||
1087 | -#define JS_BITS_PER_WORD_LOG2 6 | ||
1088 | -EOF | ||
1089 | - | ||
1090 | -else | ||
1091 | - { echo "configure: error: Unexpected JS_BYTES_PER_WORD" 1>&2; exit 1; } | ||
1092 | -fi | ||
1093 | - | ||
1094 | - | ||
1095 | echo $ac_n "checking for the alignment of void*""... $ac_c" 1>&6 | ||
1096 | -echo "configure:9180: checking for the alignment of void*" >&5 | ||
1097 | +echo "configure:9120: checking for the alignment of void*" >&5 | ||
1098 | if eval "test \"`echo '$''{'moz_cv_align_of_JS_ALIGN_OF_POINTER'+set}'`\" = set"; then | ||
1099 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1100 | else | ||
1101 | @@ -9184,7 +9124,7 @@ else | ||
1102 | moz_cv_align_of_JS_ALIGN_OF_POINTER= | ||
1103 | for align in 2 4 8 16; do | ||
1104 | cat > conftest.$ac_ext <<EOF | ||
1105 | -#line 9188 "configure" | ||
1106 | +#line 9128 "configure" | ||
1107 | #include "confdefs.h" | ||
1108 | |||
1109 | #include <stddef.h> | ||
1110 | @@ -9197,7 +9137,7 @@ int main() { | ||
1111 | |||
1112 | ; return 0; } | ||
1113 | EOF | ||
1114 | -if { (eval echo configure:9201: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1115 | +if { (eval echo configure:9141: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1116 | rm -rf conftest* | ||
1117 | moz_cv_align_of_JS_ALIGN_OF_POINTER=$align; break | ||
1118 | else | ||
1119 | @@ -9223,7 +9163,7 @@ EOF | ||
1120 | |||
1121 | |||
1122 | echo $ac_n "checking for the size of double""... $ac_c" 1>&6 | ||
1123 | -echo "configure:9227: checking for the size of double" >&5 | ||
1124 | +echo "configure:9167: checking for the size of double" >&5 | ||
1125 | if eval "test \"`echo '$''{'moz_cv_size_of_JS_BYTES_PER_DOUBLE'+set}'`\" = set"; then | ||
1126 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1127 | else | ||
1128 | @@ -9231,7 +9171,7 @@ else | ||
1129 | moz_cv_size_of_JS_BYTES_PER_DOUBLE= | ||
1130 | for size in 6 8 10 12 14; do | ||
1131 | cat > conftest.$ac_ext <<EOF | ||
1132 | -#line 9235 "configure" | ||
1133 | +#line 9175 "configure" | ||
1134 | #include "confdefs.h" | ||
1135 | |||
1136 | int main() { | ||
1137 | @@ -9241,7 +9181,7 @@ int main() { | ||
1138 | |||
1139 | ; return 0; } | ||
1140 | EOF | ||
1141 | -if { (eval echo configure:9245: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1142 | +if { (eval echo configure:9185: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1143 | rm -rf conftest* | ||
1144 | moz_cv_size_of_JS_BYTES_PER_DOUBLE=$size; break | ||
1145 | else | ||
1146 | @@ -9270,12 +9210,12 @@ EOF | ||
1147 | do | ||
1148 | ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` | ||
1149 | echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 | ||
1150 | -echo "configure:9274: checking for $ac_hdr" >&5 | ||
1151 | +echo "configure:9214: checking for $ac_hdr" >&5 | ||
1152 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
1153 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1154 | else | ||
1155 | cat > conftest.$ac_ext <<EOF | ||
1156 | -#line 9279 "configure" | ||
1157 | +#line 9219 "configure" | ||
1158 | #include "confdefs.h" | ||
1159 | |||
1160 | #include <$ac_hdr> | ||
1161 | @@ -9283,7 +9223,7 @@ int main() { | ||
1162 | |||
1163 | ; return 0; } | ||
1164 | EOF | ||
1165 | -if { (eval echo configure:9287: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1166 | +if { (eval echo configure:9227: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1167 | rm -rf conftest* | ||
1168 | eval "ac_cv_header_$ac_safe=yes" | ||
1169 | else | ||
1170 | @@ -9326,12 +9266,12 @@ fi | ||
1171 | do | ||
1172 | ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` | ||
1173 | echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 | ||
1174 | -echo "configure:9330: checking for $ac_hdr" >&5 | ||
1175 | +echo "configure:9270: checking for $ac_hdr" >&5 | ||
1176 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
1177 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1178 | else | ||
1179 | cat > conftest.$ac_ext <<EOF | ||
1180 | -#line 9335 "configure" | ||
1181 | +#line 9275 "configure" | ||
1182 | #include "confdefs.h" | ||
1183 | #include <sys/types.h> | ||
1184 | #include <$ac_hdr> | ||
1185 | @@ -9339,7 +9279,7 @@ int main() { | ||
1186 | |||
1187 | ; return 0; } | ||
1188 | EOF | ||
1189 | -if { (eval echo configure:9343: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1190 | +if { (eval echo configure:9283: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1191 | rm -rf conftest* | ||
1192 | eval "ac_cv_header_$ac_safe=yes" | ||
1193 | else | ||
1194 | @@ -9382,12 +9322,12 @@ fi | ||
1195 | do | ||
1196 | ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` | ||
1197 | echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 | ||
1198 | -echo "configure:9386: checking for $ac_hdr" >&5 | ||
1199 | +echo "configure:9326: checking for $ac_hdr" >&5 | ||
1200 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
1201 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1202 | else | ||
1203 | cat > conftest.$ac_ext <<EOF | ||
1204 | -#line 9391 "configure" | ||
1205 | +#line 9331 "configure" | ||
1206 | #include "confdefs.h" | ||
1207 | |||
1208 | #include <$ac_hdr> | ||
1209 | @@ -9395,7 +9335,7 @@ int main() { | ||
1210 | |||
1211 | ; return 0; } | ||
1212 | EOF | ||
1213 | -if { (eval echo configure:9399: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1214 | +if { (eval echo configure:9339: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1215 | rm -rf conftest* | ||
1216 | eval "ac_cv_header_$ac_safe=yes" | ||
1217 | else | ||
1218 | @@ -9435,12 +9375,12 @@ EOF | ||
1219 | fi | ||
1220 | |||
1221 | echo $ac_n "checking for uint""... $ac_c" 1>&6 | ||
1222 | -echo "configure:9439: checking for uint" >&5 | ||
1223 | +echo "configure:9379: checking for uint" >&5 | ||
1224 | if eval "test \"`echo '$''{'ac_cv_uint'+set}'`\" = set"; then | ||
1225 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1226 | else | ||
1227 | cat > conftest.$ac_ext <<EOF | ||
1228 | -#line 9444 "configure" | ||
1229 | +#line 9384 "configure" | ||
1230 | #include "confdefs.h" | ||
1231 | #include <stdio.h> | ||
1232 | #include <sys/types.h> | ||
1233 | @@ -9448,7 +9388,7 @@ int main() { | ||
1234 | uint foo = 0; | ||
1235 | ; return 0; } | ||
1236 | EOF | ||
1237 | -if { (eval echo configure:9452: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1238 | +if { (eval echo configure:9392: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1239 | rm -rf conftest* | ||
1240 | ac_cv_uint=true | ||
1241 | else | ||
1242 | @@ -9473,12 +9413,12 @@ else | ||
1243 | echo "$ac_t""no" 1>&6 | ||
1244 | fi | ||
1245 | echo $ac_n "checking for uint_t""... $ac_c" 1>&6 | ||
1246 | -echo "configure:9477: checking for uint_t" >&5 | ||
1247 | +echo "configure:9417: checking for uint_t" >&5 | ||
1248 | if eval "test \"`echo '$''{'ac_cv_uint_t'+set}'`\" = set"; then | ||
1249 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1250 | else | ||
1251 | cat > conftest.$ac_ext <<EOF | ||
1252 | -#line 9482 "configure" | ||
1253 | +#line 9422 "configure" | ||
1254 | #include "confdefs.h" | ||
1255 | #include <stdio.h> | ||
1256 | #include <sys/types.h> | ||
1257 | @@ -9486,7 +9426,7 @@ int main() { | ||
1258 | uint_t foo = 0; | ||
1259 | ; return 0; } | ||
1260 | EOF | ||
1261 | -if { (eval echo configure:9490: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1262 | +if { (eval echo configure:9430: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1263 | rm -rf conftest* | ||
1264 | ac_cv_uint_t=true | ||
1265 | else | ||
1266 | @@ -9520,12 +9460,12 @@ cross_compiling=$ac_cv_prog_cxx_cross | ||
1267 | |||
1268 | |||
1269 | echo $ac_n "checking for uname.domainname""... $ac_c" 1>&6 | ||
1270 | -echo "configure:9524: checking for uname.domainname" >&5 | ||
1271 | +echo "configure:9464: checking for uname.domainname" >&5 | ||
1272 | if eval "test \"`echo '$''{'ac_cv_have_uname_domainname_field'+set}'`\" = set"; then | ||
1273 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1274 | else | ||
1275 | cat > conftest.$ac_ext <<EOF | ||
1276 | -#line 9529 "configure" | ||
1277 | +#line 9469 "configure" | ||
1278 | #include "confdefs.h" | ||
1279 | #include <sys/utsname.h> | ||
1280 | int main() { | ||
1281 | @@ -9533,7 +9473,7 @@ int main() { | ||
1282 | (void)uname(res); if (res != 0) { domain = res->domainname; } | ||
1283 | ; return 0; } | ||
1284 | EOF | ||
1285 | -if { (eval echo configure:9537: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1286 | +if { (eval echo configure:9477: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1287 | rm -rf conftest* | ||
1288 | ac_cv_have_uname_domainname_field=true | ||
1289 | else | ||
1290 | @@ -9560,12 +9500,12 @@ else | ||
1291 | fi | ||
1292 | |||
1293 | echo $ac_n "checking for uname.__domainname""... $ac_c" 1>&6 | ||
1294 | -echo "configure:9564: checking for uname.__domainname" >&5 | ||
1295 | +echo "configure:9504: checking for uname.__domainname" >&5 | ||
1296 | if eval "test \"`echo '$''{'ac_cv_have_uname_us_domainname_field'+set}'`\" = set"; then | ||
1297 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1298 | else | ||
1299 | cat > conftest.$ac_ext <<EOF | ||
1300 | -#line 9569 "configure" | ||
1301 | +#line 9509 "configure" | ||
1302 | #include "confdefs.h" | ||
1303 | #include <sys/utsname.h> | ||
1304 | int main() { | ||
1305 | @@ -9573,7 +9513,7 @@ int main() { | ||
1306 | (void)uname(res); if (res != 0) { domain = res->__domainname; } | ||
1307 | ; return 0; } | ||
1308 | EOF | ||
1309 | -if { (eval echo configure:9577: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1310 | +if { (eval echo configure:9517: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1311 | rm -rf conftest* | ||
1312 | ac_cv_have_uname_us_domainname_field=true | ||
1313 | else | ||
1314 | @@ -9609,7 +9549,7 @@ cross_compiling=$ac_cv_prog_cc_cross | ||
1315 | |||
1316 | if test "$GNU_CC"; then | ||
1317 | echo $ac_n "checking for visibility(hidden) attribute""... $ac_c" 1>&6 | ||
1318 | -echo "configure:9613: checking for visibility(hidden) attribute" >&5 | ||
1319 | +echo "configure:9553: checking for visibility(hidden) attribute" >&5 | ||
1320 | if eval "test \"`echo '$''{'ac_cv_visibility_hidden'+set}'`\" = set"; then | ||
1321 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1322 | else | ||
1323 | @@ -9637,7 +9577,7 @@ EOF | ||
1324 | |||
1325 | |||
1326 | echo $ac_n "checking for visibility(default) attribute""... $ac_c" 1>&6 | ||
1327 | -echo "configure:9641: checking for visibility(default) attribute" >&5 | ||
1328 | +echo "configure:9581: checking for visibility(default) attribute" >&5 | ||
1329 | if eval "test \"`echo '$''{'ac_cv_visibility_default'+set}'`\" = set"; then | ||
1330 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1331 | else | ||
1332 | @@ -9665,7 +9605,7 @@ EOF | ||
1333 | |||
1334 | |||
1335 | echo $ac_n "checking for visibility pragma support""... $ac_c" 1>&6 | ||
1336 | -echo "configure:9669: checking for visibility pragma support" >&5 | ||
1337 | +echo "configure:9609: checking for visibility pragma support" >&5 | ||
1338 | if eval "test \"`echo '$''{'ac_cv_visibility_pragma'+set}'`\" = set"; then | ||
1339 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1340 | else | ||
1341 | @@ -9690,7 +9630,7 @@ fi | ||
1342 | echo "$ac_t""$ac_cv_visibility_pragma" 1>&6 | ||
1343 | if test "$ac_cv_visibility_pragma" = "yes"; then | ||
1344 | echo $ac_n "checking For gcc visibility bug with class-level attributes (GCC bug 26905)""... $ac_c" 1>&6 | ||
1345 | -echo "configure:9694: checking For gcc visibility bug with class-level attributes (GCC bug 26905)" >&5 | ||
1346 | +echo "configure:9634: checking For gcc visibility bug with class-level attributes (GCC bug 26905)" >&5 | ||
1347 | if eval "test \"`echo '$''{'ac_cv_have_visibility_class_bug'+set}'`\" = set"; then | ||
1348 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1349 | else | ||
1350 | @@ -9718,7 +9658,7 @@ fi | ||
1351 | echo "$ac_t""$ac_cv_have_visibility_class_bug" 1>&6 | ||
1352 | |||
1353 | echo $ac_n "checking For x86_64 gcc visibility bug with builtins (GCC bug 20297)""... $ac_c" 1>&6 | ||
1354 | -echo "configure:9722: checking For x86_64 gcc visibility bug with builtins (GCC bug 20297)" >&5 | ||
1355 | +echo "configure:9662: checking For x86_64 gcc visibility bug with builtins (GCC bug 20297)" >&5 | ||
1356 | if eval "test \"`echo '$''{'ac_cv_have_visibility_builtin_bug'+set}'`\" = set"; then | ||
1357 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1358 | else | ||
1359 | @@ -9770,7 +9710,7 @@ fi # Sun Studio on Solaris | ||
1360 | if test "$GNU_CC"; then | ||
1361 | |||
1362 | echo $ac_n "checking for gcc PR49911""... $ac_c" 1>&6 | ||
1363 | -echo "configure:9774: checking for gcc PR49911" >&5 | ||
1364 | +echo "configure:9714: checking for gcc PR49911" >&5 | ||
1365 | ac_have_gcc_pr49911="no" | ||
1366 | |||
1367 | ac_ext=C | ||
1368 | @@ -9787,7 +9727,7 @@ if test "$cross_compiling" = yes; then | ||
1369 | true | ||
1370 | else | ||
1371 | cat > conftest.$ac_ext <<EOF | ||
1372 | -#line 9791 "configure" | ||
1373 | +#line 9731 "configure" | ||
1374 | #include "confdefs.h" | ||
1375 | |||
1376 | extern "C" void abort(void); | ||
1377 | @@ -9828,7 +9768,7 @@ int main(void) { | ||
1378 | } | ||
1379 | |||
1380 | EOF | ||
1381 | -if { (eval echo configure:9832: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null | ||
1382 | +if { (eval echo configure:9772: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null | ||
1383 | then | ||
1384 | true | ||
1385 | else | ||
1386 | @@ -9865,12 +9805,12 @@ for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h | ||
1387 | do | ||
1388 | ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` | ||
1389 | echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6 | ||
1390 | -echo "configure:9869: checking for $ac_hdr that defines DIR" >&5 | ||
1391 | +echo "configure:9809: checking for $ac_hdr that defines DIR" >&5 | ||
1392 | if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then | ||
1393 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1394 | else | ||
1395 | cat > conftest.$ac_ext <<EOF | ||
1396 | -#line 9874 "configure" | ||
1397 | +#line 9814 "configure" | ||
1398 | #include "confdefs.h" | ||
1399 | #include <sys/types.h> | ||
1400 | #include <$ac_hdr> | ||
1401 | @@ -9878,7 +9818,7 @@ int main() { | ||
1402 | DIR *dirp = 0; | ||
1403 | ; return 0; } | ||
1404 | EOF | ||
1405 | -if { (eval echo configure:9882: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1406 | +if { (eval echo configure:9822: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1407 | rm -rf conftest* | ||
1408 | eval "ac_cv_header_dirent_$ac_safe=yes" | ||
1409 | else | ||
1410 | @@ -9906,7 +9846,7 @@ done | ||
1411 | # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix. | ||
1412 | if test $ac_header_dirent = dirent.h; then | ||
1413 | echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6 | ||
1414 | -echo "configure:9910: checking for opendir in -ldir" >&5 | ||
1415 | +echo "configure:9850: checking for opendir in -ldir" >&5 | ||
1416 | ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'` | ||
1417 | if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then | ||
1418 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1419 | @@ -9914,7 +9854,7 @@ else | ||
1420 | ac_save_LIBS="$LIBS" | ||
1421 | LIBS="-ldir $LIBS" | ||
1422 | cat > conftest.$ac_ext <<EOF | ||
1423 | -#line 9918 "configure" | ||
1424 | +#line 9858 "configure" | ||
1425 | #include "confdefs.h" | ||
1426 | /* Override any gcc2 internal prototype to avoid an error. */ | ||
1427 | /* We use char because int might match the return type of a gcc2 | ||
1428 | @@ -9925,7 +9865,7 @@ int main() { | ||
1429 | opendir() | ||
1430 | ; return 0; } | ||
1431 | EOF | ||
1432 | -if { (eval echo configure:9929: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1433 | +if { (eval echo configure:9869: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1434 | rm -rf conftest* | ||
1435 | eval "ac_cv_lib_$ac_lib_var=yes" | ||
1436 | else | ||
1437 | @@ -9947,7 +9887,7 @@ fi | ||
1438 | |||
1439 | else | ||
1440 | echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6 | ||
1441 | -echo "configure:9951: checking for opendir in -lx" >&5 | ||
1442 | +echo "configure:9891: checking for opendir in -lx" >&5 | ||
1443 | ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'` | ||
1444 | if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then | ||
1445 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1446 | @@ -9955,7 +9895,7 @@ else | ||
1447 | ac_save_LIBS="$LIBS" | ||
1448 | LIBS="-lx $LIBS" | ||
1449 | cat > conftest.$ac_ext <<EOF | ||
1450 | -#line 9959 "configure" | ||
1451 | +#line 9899 "configure" | ||
1452 | #include "confdefs.h" | ||
1453 | /* Override any gcc2 internal prototype to avoid an error. */ | ||
1454 | /* We use char because int might match the return type of a gcc2 | ||
1455 | @@ -9966,7 +9906,7 @@ int main() { | ||
1456 | opendir() | ||
1457 | ; return 0; } | ||
1458 | EOF | ||
1459 | -if { (eval echo configure:9970: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1460 | +if { (eval echo configure:9910: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1461 | rm -rf conftest* | ||
1462 | eval "ac_cv_lib_$ac_lib_var=yes" | ||
1463 | else | ||
1464 | @@ -10000,12 +9940,12 @@ esac | ||
1465 | do | ||
1466 | ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` | ||
1467 | echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 | ||
1468 | -echo "configure:10004: checking for $ac_hdr" >&5 | ||
1469 | +echo "configure:9944: checking for $ac_hdr" >&5 | ||
1470 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
1471 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1472 | else | ||
1473 | cat > conftest.$ac_ext <<EOF | ||
1474 | -#line 10009 "configure" | ||
1475 | +#line 9949 "configure" | ||
1476 | #include "confdefs.h" | ||
1477 | |||
1478 | #include <$ac_hdr> | ||
1479 | @@ -10013,7 +9953,7 @@ int main() { | ||
1480 | |||
1481 | ; return 0; } | ||
1482 | EOF | ||
1483 | -if { (eval echo configure:10017: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1484 | +if { (eval echo configure:9957: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1485 | rm -rf conftest* | ||
1486 | eval "ac_cv_header_$ac_safe=yes" | ||
1487 | else | ||
1488 | @@ -10048,12 +9988,12 @@ EOF | ||
1489 | do | ||
1490 | ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` | ||
1491 | echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 | ||
1492 | -echo "configure:10052: checking for $ac_hdr" >&5 | ||
1493 | +echo "configure:9992: checking for $ac_hdr" >&5 | ||
1494 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
1495 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1496 | else | ||
1497 | cat > conftest.$ac_ext <<EOF | ||
1498 | -#line 10057 "configure" | ||
1499 | +#line 9997 "configure" | ||
1500 | #include "confdefs.h" | ||
1501 | |||
1502 | #include <$ac_hdr> | ||
1503 | @@ -10061,7 +10001,7 @@ int main() { | ||
1504 | |||
1505 | ; return 0; } | ||
1506 | EOF | ||
1507 | -if { (eval echo configure:10065: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1508 | +if { (eval echo configure:10005: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1509 | rm -rf conftest* | ||
1510 | eval "ac_cv_header_$ac_safe=yes" | ||
1511 | else | ||
1512 | @@ -10095,12 +10035,12 @@ EOF | ||
1513 | do | ||
1514 | ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` | ||
1515 | echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 | ||
1516 | -echo "configure:10099: checking for $ac_hdr" >&5 | ||
1517 | +echo "configure:10039: checking for $ac_hdr" >&5 | ||
1518 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
1519 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1520 | else | ||
1521 | cat > conftest.$ac_ext <<EOF | ||
1522 | -#line 10104 "configure" | ||
1523 | +#line 10044 "configure" | ||
1524 | #include "confdefs.h" | ||
1525 | |||
1526 | #include <$ac_hdr> | ||
1527 | @@ -10108,7 +10048,7 @@ int main() { | ||
1528 | |||
1529 | ; return 0; } | ||
1530 | EOF | ||
1531 | -if { (eval echo configure:10112: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1532 | +if { (eval echo configure:10052: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1533 | rm -rf conftest* | ||
1534 | eval "ac_cv_header_$ac_safe=yes" | ||
1535 | else | ||
1536 | @@ -10141,12 +10081,12 @@ EOF | ||
1537 | do | ||
1538 | ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` | ||
1539 | echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 | ||
1540 | -echo "configure:10145: checking for $ac_hdr" >&5 | ||
1541 | +echo "configure:10085: checking for $ac_hdr" >&5 | ||
1542 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
1543 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1544 | else | ||
1545 | cat > conftest.$ac_ext <<EOF | ||
1546 | -#line 10150 "configure" | ||
1547 | +#line 10090 "configure" | ||
1548 | #include "confdefs.h" | ||
1549 | |||
1550 | #include <$ac_hdr> | ||
1551 | @@ -10154,7 +10094,7 @@ int main() { | ||
1552 | |||
1553 | ; return 0; } | ||
1554 | EOF | ||
1555 | -if { (eval echo configure:10158: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1556 | +if { (eval echo configure:10098: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1557 | rm -rf conftest* | ||
1558 | eval "ac_cv_header_$ac_safe=yes" | ||
1559 | else | ||
1560 | @@ -10188,12 +10128,12 @@ EOF | ||
1561 | do | ||
1562 | ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` | ||
1563 | echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 | ||
1564 | -echo "configure:10192: checking for $ac_hdr" >&5 | ||
1565 | +echo "configure:10132: checking for $ac_hdr" >&5 | ||
1566 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
1567 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1568 | else | ||
1569 | cat > conftest.$ac_ext <<EOF | ||
1570 | -#line 10197 "configure" | ||
1571 | +#line 10137 "configure" | ||
1572 | #include "confdefs.h" | ||
1573 | |||
1574 | #include <$ac_hdr> | ||
1575 | @@ -10201,7 +10141,7 @@ int main() { | ||
1576 | |||
1577 | ; return 0; } | ||
1578 | EOF | ||
1579 | -if { (eval echo configure:10205: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1580 | +if { (eval echo configure:10145: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1581 | rm -rf conftest* | ||
1582 | eval "ac_cv_header_$ac_safe=yes" | ||
1583 | else | ||
1584 | @@ -10241,12 +10181,12 @@ cross_compiling=$ac_cv_prog_cxx_cross | ||
1585 | NEW_H=new.h | ||
1586 | ac_safe=`echo "new" | sed 'y%./+-%__p_%'` | ||
1587 | echo $ac_n "checking for new""... $ac_c" 1>&6 | ||
1588 | -echo "configure:10245: checking for new" >&5 | ||
1589 | +echo "configure:10185: checking for new" >&5 | ||
1590 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
1591 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1592 | else | ||
1593 | cat > conftest.$ac_ext <<EOF | ||
1594 | -#line 10250 "configure" | ||
1595 | +#line 10190 "configure" | ||
1596 | #include "confdefs.h" | ||
1597 | |||
1598 | #include <new> | ||
1599 | @@ -10254,7 +10194,7 @@ int main() { | ||
1600 | |||
1601 | ; return 0; } | ||
1602 | EOF | ||
1603 | -if { (eval echo configure:10258: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1604 | +if { (eval echo configure:10198: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1605 | rm -rf conftest* | ||
1606 | eval "ac_cv_header_$ac_safe=yes" | ||
1607 | else | ||
1608 | @@ -10298,12 +10238,12 @@ fi | ||
1609 | if test "x$enable_dtrace" = "xyes"; then | ||
1610 | ac_safe=`echo "sys/sdt.h" | sed 'y%./+-%__p_%'` | ||
1611 | echo $ac_n "checking for sys/sdt.h""... $ac_c" 1>&6 | ||
1612 | -echo "configure:10302: checking for sys/sdt.h" >&5 | ||
1613 | +echo "configure:10242: checking for sys/sdt.h" >&5 | ||
1614 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
1615 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1616 | else | ||
1617 | cat > conftest.$ac_ext <<EOF | ||
1618 | -#line 10307 "configure" | ||
1619 | +#line 10247 "configure" | ||
1620 | #include "confdefs.h" | ||
1621 | |||
1622 | #include <sys/sdt.h> | ||
1623 | @@ -10311,7 +10251,7 @@ int main() { | ||
1624 | |||
1625 | ; return 0; } | ||
1626 | EOF | ||
1627 | -if { (eval echo configure:10315: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1628 | +if { (eval echo configure:10255: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1629 | rm -rf conftest* | ||
1630 | eval "ac_cv_header_$ac_safe=yes" | ||
1631 | else | ||
1632 | @@ -10353,12 +10293,12 @@ case $target in | ||
1633 | do | ||
1634 | ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` | ||
1635 | echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 | ||
1636 | -echo "configure:10357: checking for $ac_hdr" >&5 | ||
1637 | +echo "configure:10297: checking for $ac_hdr" >&5 | ||
1638 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
1639 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1640 | else | ||
1641 | cat > conftest.$ac_ext <<EOF | ||
1642 | -#line 10362 "configure" | ||
1643 | +#line 10302 "configure" | ||
1644 | #include "confdefs.h" | ||
1645 | |||
1646 | #include <$ac_hdr> | ||
1647 | @@ -10366,7 +10306,7 @@ int main() { | ||
1648 | |||
1649 | ; return 0; } | ||
1650 | EOF | ||
1651 | -if { (eval echo configure:10370: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1652 | +if { (eval echo configure:10310: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1653 | rm -rf conftest* | ||
1654 | eval "ac_cv_header_$ac_safe=yes" | ||
1655 | else | ||
1656 | @@ -10418,12 +10358,12 @@ CFLAGS="$CFLAGS $LINUX_HEADERS_INCLUDES" | ||
1657 | |||
1658 | ac_safe=`echo "linux/perf_event.h" | sed 'y%./+-%__p_%'` | ||
1659 | echo $ac_n "checking for linux/perf_event.h""... $ac_c" 1>&6 | ||
1660 | -echo "configure:10422: checking for linux/perf_event.h" >&5 | ||
1661 | +echo "configure:10362: checking for linux/perf_event.h" >&5 | ||
1662 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
1663 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1664 | else | ||
1665 | cat > conftest.$ac_ext <<EOF | ||
1666 | -#line 10427 "configure" | ||
1667 | +#line 10367 "configure" | ||
1668 | #include "confdefs.h" | ||
1669 | |||
1670 | #include <linux/perf_event.h> | ||
1671 | @@ -10431,7 +10371,7 @@ int main() { | ||
1672 | |||
1673 | ; return 0; } | ||
1674 | EOF | ||
1675 | -if { (eval echo configure:10435: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1676 | +if { (eval echo configure:10375: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1677 | rm -rf conftest* | ||
1678 | eval "ac_cv_header_$ac_safe=yes" | ||
1679 | else | ||
1680 | @@ -10446,19 +10386,19 @@ fi | ||
1681 | if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then | ||
1682 | echo "$ac_t""yes" 1>&6 | ||
1683 | echo $ac_n "checking for perf_event_open system call""... $ac_c" 1>&6 | ||
1684 | -echo "configure:10450: checking for perf_event_open system call" >&5 | ||
1685 | +echo "configure:10390: checking for perf_event_open system call" >&5 | ||
1686 | if eval "test \"`echo '$''{'ac_cv_perf_event_open'+set}'`\" = set"; then | ||
1687 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1688 | else | ||
1689 | cat > conftest.$ac_ext <<EOF | ||
1690 | -#line 10455 "configure" | ||
1691 | +#line 10395 "configure" | ||
1692 | #include "confdefs.h" | ||
1693 | #include <asm/unistd.h> | ||
1694 | int main() { | ||
1695 | return sizeof(__NR_perf_event_open); | ||
1696 | ; return 0; } | ||
1697 | EOF | ||
1698 | -if { (eval echo configure:10462: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1699 | +if { (eval echo configure:10402: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1700 | rm -rf conftest* | ||
1701 | ac_cv_perf_event_open=yes | ||
1702 | else | ||
1703 | @@ -10494,7 +10434,7 @@ case $target in | ||
1704 | ;; | ||
1705 | *) | ||
1706 | echo $ac_n "checking for gethostbyname_r in -lc_r""... $ac_c" 1>&6 | ||
1707 | -echo "configure:10498: checking for gethostbyname_r in -lc_r" >&5 | ||
1708 | +echo "configure:10438: checking for gethostbyname_r in -lc_r" >&5 | ||
1709 | ac_lib_var=`echo c_r'_'gethostbyname_r | sed 'y%./+-%__p_%'` | ||
1710 | if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then | ||
1711 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1712 | @@ -10502,7 +10442,7 @@ else | ||
1713 | ac_save_LIBS="$LIBS" | ||
1714 | LIBS="-lc_r $LIBS" | ||
1715 | cat > conftest.$ac_ext <<EOF | ||
1716 | -#line 10506 "configure" | ||
1717 | +#line 10446 "configure" | ||
1718 | #include "confdefs.h" | ||
1719 | /* Override any gcc2 internal prototype to avoid an error. */ | ||
1720 | /* We use char because int might match the return type of a gcc2 | ||
1721 | @@ -10513,7 +10453,7 @@ int main() { | ||
1722 | gethostbyname_r() | ||
1723 | ; return 0; } | ||
1724 | EOF | ||
1725 | -if { (eval echo configure:10517: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1726 | +if { (eval echo configure:10457: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1727 | rm -rf conftest* | ||
1728 | eval "ac_cv_lib_$ac_lib_var=yes" | ||
1729 | else | ||
1730 | @@ -10554,14 +10494,14 @@ case $target in | ||
1731 | *) | ||
1732 | |||
1733 | echo $ac_n "checking for library containing dlopen""... $ac_c" 1>&6 | ||
1734 | -echo "configure:10558: checking for library containing dlopen" >&5 | ||
1735 | +echo "configure:10498: checking for library containing dlopen" >&5 | ||
1736 | if eval "test \"`echo '$''{'ac_cv_search_dlopen'+set}'`\" = set"; then | ||
1737 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1738 | else | ||
1739 | ac_func_search_save_LIBS="$LIBS" | ||
1740 | ac_cv_search_dlopen="no" | ||
1741 | cat > conftest.$ac_ext <<EOF | ||
1742 | -#line 10565 "configure" | ||
1743 | +#line 10505 "configure" | ||
1744 | #include "confdefs.h" | ||
1745 | /* Override any gcc2 internal prototype to avoid an error. */ | ||
1746 | /* We use char because int might match the return type of a gcc2 | ||
1747 | @@ -10572,7 +10512,7 @@ int main() { | ||
1748 | dlopen() | ||
1749 | ; return 0; } | ||
1750 | EOF | ||
1751 | -if { (eval echo configure:10576: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1752 | +if { (eval echo configure:10516: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1753 | rm -rf conftest* | ||
1754 | ac_cv_search_dlopen="none required" | ||
1755 | else | ||
1756 | @@ -10583,7 +10523,7 @@ rm -f conftest* | ||
1757 | test "$ac_cv_search_dlopen" = "no" && for i in dl; do | ||
1758 | LIBS="-l$i $ac_func_search_save_LIBS" | ||
1759 | cat > conftest.$ac_ext <<EOF | ||
1760 | -#line 10587 "configure" | ||
1761 | +#line 10527 "configure" | ||
1762 | #include "confdefs.h" | ||
1763 | /* Override any gcc2 internal prototype to avoid an error. */ | ||
1764 | /* We use char because int might match the return type of a gcc2 | ||
1765 | @@ -10594,7 +10534,7 @@ int main() { | ||
1766 | dlopen() | ||
1767 | ; return 0; } | ||
1768 | EOF | ||
1769 | -if { (eval echo configure:10598: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1770 | +if { (eval echo configure:10538: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1771 | rm -rf conftest* | ||
1772 | ac_cv_search_dlopen="-l$i" | ||
1773 | break | ||
1774 | @@ -10612,12 +10552,12 @@ if test "$ac_cv_search_dlopen" != "no"; then | ||
1775 | test "$ac_cv_search_dlopen" = "none required" || LIBS="$ac_cv_search_dlopen $LIBS" | ||
1776 | ac_safe=`echo "dlfcn.h" | sed 'y%./+-%__p_%'` | ||
1777 | echo $ac_n "checking for dlfcn.h""... $ac_c" 1>&6 | ||
1778 | -echo "configure:10616: checking for dlfcn.h" >&5 | ||
1779 | +echo "configure:10556: checking for dlfcn.h" >&5 | ||
1780 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
1781 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1782 | else | ||
1783 | cat > conftest.$ac_ext <<EOF | ||
1784 | -#line 10621 "configure" | ||
1785 | +#line 10561 "configure" | ||
1786 | #include "confdefs.h" | ||
1787 | |||
1788 | #include <dlfcn.h> | ||
1789 | @@ -10625,7 +10565,7 @@ int main() { | ||
1790 | |||
1791 | ; return 0; } | ||
1792 | EOF | ||
1793 | -if { (eval echo configure:10629: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1794 | +if { (eval echo configure:10569: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
1795 | rm -rf conftest* | ||
1796 | eval "ac_cv_header_$ac_safe=yes" | ||
1797 | else | ||
1798 | @@ -10662,12 +10602,12 @@ CFLAGS="$CFLAGS -D_GNU_SOURCE" | ||
1799 | for ac_func in dladdr | ||
1800 | do | ||
1801 | echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 | ||
1802 | -echo "configure:10666: checking for $ac_func" >&5 | ||
1803 | +echo "configure:10606: checking for $ac_func" >&5 | ||
1804 | if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then | ||
1805 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1806 | else | ||
1807 | cat > conftest.$ac_ext <<EOF | ||
1808 | -#line 10671 "configure" | ||
1809 | +#line 10611 "configure" | ||
1810 | #include "confdefs.h" | ||
1811 | /* System header to define __stub macros and hopefully few prototypes, | ||
1812 | which can conflict with char $ac_func(); below. */ | ||
1813 | @@ -10690,7 +10630,7 @@ $ac_func(); | ||
1814 | |||
1815 | ; return 0; } | ||
1816 | EOF | ||
1817 | -if { (eval echo configure:10694: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1818 | +if { (eval echo configure:10634: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1819 | rm -rf conftest* | ||
1820 | eval "ac_cv_func_$ac_func=yes" | ||
1821 | else | ||
1822 | @@ -10724,7 +10664,7 @@ if test ! "$GNU_CXX"; then | ||
1823 | case $target in | ||
1824 | *-aix*) | ||
1825 | echo $ac_n "checking for demangle in -lC_r""... $ac_c" 1>&6 | ||
1826 | -echo "configure:10728: checking for demangle in -lC_r" >&5 | ||
1827 | +echo "configure:10668: checking for demangle in -lC_r" >&5 | ||
1828 | ac_lib_var=`echo C_r'_'demangle | sed 'y%./+-%__p_%'` | ||
1829 | if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then | ||
1830 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1831 | @@ -10732,7 +10672,7 @@ else | ||
1832 | ac_save_LIBS="$LIBS" | ||
1833 | LIBS="-lC_r $LIBS" | ||
1834 | cat > conftest.$ac_ext <<EOF | ||
1835 | -#line 10736 "configure" | ||
1836 | +#line 10676 "configure" | ||
1837 | #include "confdefs.h" | ||
1838 | /* Override any gcc2 internal prototype to avoid an error. */ | ||
1839 | /* We use char because int might match the return type of a gcc2 | ||
1840 | @@ -10743,7 +10683,7 @@ int main() { | ||
1841 | demangle() | ||
1842 | ; return 0; } | ||
1843 | EOF | ||
1844 | -if { (eval echo configure:10747: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1845 | +if { (eval echo configure:10687: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1846 | rm -rf conftest* | ||
1847 | eval "ac_cv_lib_$ac_lib_var=yes" | ||
1848 | else | ||
1849 | @@ -10776,7 +10716,7 @@ fi | ||
1850 | ;; | ||
1851 | *) | ||
1852 | echo $ac_n "checking for demangle in -lC""... $ac_c" 1>&6 | ||
1853 | -echo "configure:10780: checking for demangle in -lC" >&5 | ||
1854 | +echo "configure:10720: checking for demangle in -lC" >&5 | ||
1855 | ac_lib_var=`echo C'_'demangle | sed 'y%./+-%__p_%'` | ||
1856 | if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then | ||
1857 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1858 | @@ -10784,7 +10724,7 @@ else | ||
1859 | ac_save_LIBS="$LIBS" | ||
1860 | LIBS="-lC $LIBS" | ||
1861 | cat > conftest.$ac_ext <<EOF | ||
1862 | -#line 10788 "configure" | ||
1863 | +#line 10728 "configure" | ||
1864 | #include "confdefs.h" | ||
1865 | /* Override any gcc2 internal prototype to avoid an error. */ | ||
1866 | /* We use char because int might match the return type of a gcc2 | ||
1867 | @@ -10795,7 +10735,7 @@ int main() { | ||
1868 | demangle() | ||
1869 | ; return 0; } | ||
1870 | EOF | ||
1871 | -if { (eval echo configure:10799: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1872 | +if { (eval echo configure:10739: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1873 | rm -rf conftest* | ||
1874 | eval "ac_cv_lib_$ac_lib_var=yes" | ||
1875 | else | ||
1876 | @@ -10834,7 +10774,7 @@ case $target in | ||
1877 | ;; | ||
1878 | *) | ||
1879 | echo $ac_n "checking for socket in -lsocket""... $ac_c" 1>&6 | ||
1880 | -echo "configure:10838: checking for socket in -lsocket" >&5 | ||
1881 | +echo "configure:10778: checking for socket in -lsocket" >&5 | ||
1882 | ac_lib_var=`echo socket'_'socket | sed 'y%./+-%__p_%'` | ||
1883 | if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then | ||
1884 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1885 | @@ -10842,7 +10782,7 @@ else | ||
1886 | ac_save_LIBS="$LIBS" | ||
1887 | LIBS="-lsocket $LIBS" | ||
1888 | cat > conftest.$ac_ext <<EOF | ||
1889 | -#line 10846 "configure" | ||
1890 | +#line 10786 "configure" | ||
1891 | #include "confdefs.h" | ||
1892 | /* Override any gcc2 internal prototype to avoid an error. */ | ||
1893 | /* We use char because int might match the return type of a gcc2 | ||
1894 | @@ -10853,7 +10793,7 @@ int main() { | ||
1895 | socket() | ||
1896 | ; return 0; } | ||
1897 | EOF | ||
1898 | -if { (eval echo configure:10857: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1899 | +if { (eval echo configure:10797: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
1900 | rm -rf conftest* | ||
1901 | eval "ac_cv_lib_$ac_lib_var=yes" | ||
1902 | else | ||
1903 | @@ -10892,7 +10832,7 @@ darwin*) | ||
1904 | *) | ||
1905 | |||
1906 | echo $ac_n "checking for pthread_create in -lpthreads""... $ac_c" 1>&6 | ||
1907 | -echo "configure:10896: checking for pthread_create in -lpthreads" >&5 | ||
1908 | +echo "configure:10836: checking for pthread_create in -lpthreads" >&5 | ||
1909 | echo " | ||
1910 | #include <pthread.h> | ||
1911 | #include <stdlib.h> | ||
1912 | @@ -10915,7 +10855,7 @@ echo " | ||
1913 | echo "$ac_t""no" 1>&6 | ||
1914 | |||
1915 | echo $ac_n "checking for pthread_create in -lpthread""... $ac_c" 1>&6 | ||
1916 | -echo "configure:10919: checking for pthread_create in -lpthread" >&5 | ||
1917 | +echo "configure:10859: checking for pthread_create in -lpthread" >&5 | ||
1918 | echo " | ||
1919 | #include <pthread.h> | ||
1920 | #include <stdlib.h> | ||
1921 | @@ -10938,7 +10878,7 @@ echo " | ||
1922 | echo "$ac_t""no" 1>&6 | ||
1923 | |||
1924 | echo $ac_n "checking for pthread_create in -lc_r""... $ac_c" 1>&6 | ||
1925 | -echo "configure:10942: checking for pthread_create in -lc_r" >&5 | ||
1926 | +echo "configure:10882: checking for pthread_create in -lc_r" >&5 | ||
1927 | echo " | ||
1928 | #include <pthread.h> | ||
1929 | #include <stdlib.h> | ||
1930 | @@ -10961,7 +10901,7 @@ echo " | ||
1931 | echo "$ac_t""no" 1>&6 | ||
1932 | |||
1933 | echo $ac_n "checking for pthread_create in -lc""... $ac_c" 1>&6 | ||
1934 | -echo "configure:10965: checking for pthread_create in -lc" >&5 | ||
1935 | +echo "configure:10905: checking for pthread_create in -lc" >&5 | ||
1936 | echo " | ||
1937 | #include <pthread.h> | ||
1938 | #include <stdlib.h> | ||
1939 | @@ -11020,7 +10960,7 @@ then | ||
1940 | rm -f conftest* | ||
1941 | ac_cv_have_dash_pthread=no | ||
1942 | echo $ac_n "checking whether ${CC-cc} accepts -pthread""... $ac_c" 1>&6 | ||
1943 | -echo "configure:11024: checking whether ${CC-cc} accepts -pthread" >&5 | ||
1944 | +echo "configure:10964: checking whether ${CC-cc} accepts -pthread" >&5 | ||
1945 | echo 'int main() { return 0; }' | cat > conftest.c | ||
1946 | ${CC-cc} -pthread -o conftest conftest.c > conftest.out 2>&1 | ||
1947 | if test $? -eq 0; then | ||
1948 | @@ -11043,7 +10983,7 @@ echo "configure:11024: checking whether ${CC-cc} accepts -pthread" >&5 | ||
1949 | ac_cv_have_dash_pthreads=no | ||
1950 | if test "$ac_cv_have_dash_pthread" = "no"; then | ||
1951 | echo $ac_n "checking whether ${CC-cc} accepts -pthreads""... $ac_c" 1>&6 | ||
1952 | -echo "configure:11047: checking whether ${CC-cc} accepts -pthreads" >&5 | ||
1953 | +echo "configure:10987: checking whether ${CC-cc} accepts -pthreads" >&5 | ||
1954 | echo 'int main() { return 0; }' | cat > conftest.c | ||
1955 | ${CC-cc} -pthreads -o conftest conftest.c > conftest.out 2>&1 | ||
1956 | if test $? -eq 0; then | ||
1957 | @@ -11148,13 +11088,13 @@ fi | ||
1958 | |||
1959 | if test $ac_cv_prog_gcc = yes; then | ||
1960 | echo $ac_n "checking whether ${CC-cc} needs -traditional""... $ac_c" 1>&6 | ||
1961 | -echo "configure:11152: checking whether ${CC-cc} needs -traditional" >&5 | ||
1962 | +echo "configure:11092: checking whether ${CC-cc} needs -traditional" >&5 | ||
1963 | if eval "test \"`echo '$''{'ac_cv_prog_gcc_traditional'+set}'`\" = set"; then | ||
1964 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1965 | else | ||
1966 | ac_pattern="Autoconf.*'x'" | ||
1967 | cat > conftest.$ac_ext <<EOF | ||
1968 | -#line 11158 "configure" | ||
1969 | +#line 11098 "configure" | ||
1970 | #include "confdefs.h" | ||
1971 | #include <sgtty.h> | ||
1972 | Autoconf TIOCGETP | ||
1973 | @@ -11172,7 +11112,7 @@ rm -f conftest* | ||
1974 | |||
1975 | if test $ac_cv_prog_gcc_traditional = no; then | ||
1976 | cat > conftest.$ac_ext <<EOF | ||
1977 | -#line 11176 "configure" | ||
1978 | +#line 11116 "configure" | ||
1979 | #include "confdefs.h" | ||
1980 | #include <termio.h> | ||
1981 | Autoconf TCGETA | ||
1982 | @@ -11194,7 +11134,7 @@ echo "$ac_t""$ac_cv_prog_gcc_traditional" 1>&6 | ||
1983 | fi | ||
1984 | |||
1985 | echo $ac_n "checking for 8-bit clean memcmp""... $ac_c" 1>&6 | ||
1986 | -echo "configure:11198: checking for 8-bit clean memcmp" >&5 | ||
1987 | +echo "configure:11138: checking for 8-bit clean memcmp" >&5 | ||
1988 | if eval "test \"`echo '$''{'ac_cv_func_memcmp_clean'+set}'`\" = set"; then | ||
1989 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
1990 | else | ||
1991 | @@ -11202,7 +11142,7 @@ else | ||
1992 | ac_cv_func_memcmp_clean=no | ||
1993 | else | ||
1994 | cat > conftest.$ac_ext <<EOF | ||
1995 | -#line 11206 "configure" | ||
1996 | +#line 11146 "configure" | ||
1997 | #include "confdefs.h" | ||
1998 | |||
1999 | main() | ||
2000 | @@ -11212,7 +11152,7 @@ main() | ||
2001 | } | ||
2002 | |||
2003 | EOF | ||
2004 | -if { (eval echo configure:11216: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null | ||
2005 | +if { (eval echo configure:11156: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null | ||
2006 | then | ||
2007 | ac_cv_func_memcmp_clean=yes | ||
2008 | else | ||
2009 | @@ -11234,12 +11174,12 @@ for ac_func in fchmod flockfile getc_unlocked _getc_nolock getpagesize \ | ||
2010 | stat64 statvfs statvfs64 strerror strtok_r truncate64 | ||
2011 | do | ||
2012 | echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 | ||
2013 | -echo "configure:11238: checking for $ac_func" >&5 | ||
2014 | +echo "configure:11178: checking for $ac_func" >&5 | ||
2015 | if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then | ||
2016 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2017 | else | ||
2018 | cat > conftest.$ac_ext <<EOF | ||
2019 | -#line 11243 "configure" | ||
2020 | +#line 11183 "configure" | ||
2021 | #include "confdefs.h" | ||
2022 | /* System header to define __stub macros and hopefully few prototypes, | ||
2023 | which can conflict with char $ac_func(); below. */ | ||
2024 | @@ -11262,7 +11202,7 @@ $ac_func(); | ||
2025 | |||
2026 | ; return 0; } | ||
2027 | EOF | ||
2028 | -if { (eval echo configure:11266: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2029 | +if { (eval echo configure:11206: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2030 | rm -rf conftest* | ||
2031 | eval "ac_cv_func_$ac_func=yes" | ||
2032 | else | ||
2033 | @@ -11291,14 +11231,14 @@ done | ||
2034 | |||
2035 | |||
2036 | cat > conftest.$ac_ext <<EOF | ||
2037 | -#line 11295 "configure" | ||
2038 | +#line 11235 "configure" | ||
2039 | #include "confdefs.h" | ||
2040 | #include <windows.h> | ||
2041 | int main() { | ||
2042 | SYSTEMTIME st;FILETIME ft;SystemTimeToFileTime(&st,&ft); | ||
2043 | ; return 0; } | ||
2044 | EOF | ||
2045 | -if { (eval echo configure:11302: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2046 | +if { (eval echo configure:11242: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2047 | rm -rf conftest* | ||
2048 | ac_cv_have_systemtimetofiletime="yes" | ||
2049 | else | ||
2050 | @@ -11318,14 +11258,14 @@ EOF | ||
2051 | |||
2052 | fi | ||
2053 | cat > conftest.$ac_ext <<EOF | ||
2054 | -#line 11322 "configure" | ||
2055 | +#line 11262 "configure" | ||
2056 | #include "confdefs.h" | ||
2057 | #include <windows.h> | ||
2058 | int main() { | ||
2059 | FILETIME ft;GetSystemTimeAsFileTime(&ft); | ||
2060 | ; return 0; } | ||
2061 | EOF | ||
2062 | -if { (eval echo configure:11329: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2063 | +if { (eval echo configure:11269: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2064 | rm -rf conftest* | ||
2065 | ac_cv_have_getsystemtimeasfiletime="yes" | ||
2066 | else | ||
2067 | @@ -11355,19 +11295,19 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes | ||
2068 | cross_compiling=$ac_cv_prog_cxx_cross | ||
2069 | |||
2070 | echo $ac_n "checking for wcrtomb""... $ac_c" 1>&6 | ||
2071 | -echo "configure:11359: checking for wcrtomb" >&5 | ||
2072 | +echo "configure:11299: checking for wcrtomb" >&5 | ||
2073 | if eval "test \"`echo '$''{'ac_cv_have_wcrtomb'+set}'`\" = set"; then | ||
2074 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2075 | else | ||
2076 | cat > conftest.$ac_ext <<EOF | ||
2077 | -#line 11364 "configure" | ||
2078 | +#line 11304 "configure" | ||
2079 | #include "confdefs.h" | ||
2080 | #include <wchar.h> | ||
2081 | int main() { | ||
2082 | mbstate_t ps={0};wcrtomb(0,'f',&ps); | ||
2083 | ; return 0; } | ||
2084 | EOF | ||
2085 | -if { (eval echo configure:11371: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2086 | +if { (eval echo configure:11311: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2087 | rm -rf conftest* | ||
2088 | ac_cv_have_wcrtomb="yes" | ||
2089 | else | ||
2090 | @@ -11390,19 +11330,19 @@ EOF | ||
2091 | |||
2092 | fi | ||
2093 | echo $ac_n "checking for mbrtowc""... $ac_c" 1>&6 | ||
2094 | -echo "configure:11394: checking for mbrtowc" >&5 | ||
2095 | +echo "configure:11334: checking for mbrtowc" >&5 | ||
2096 | if eval "test \"`echo '$''{'ac_cv_have_mbrtowc'+set}'`\" = set"; then | ||
2097 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2098 | else | ||
2099 | cat > conftest.$ac_ext <<EOF | ||
2100 | -#line 11399 "configure" | ||
2101 | +#line 11339 "configure" | ||
2102 | #include "confdefs.h" | ||
2103 | #include <wchar.h> | ||
2104 | int main() { | ||
2105 | mbstate_t ps={0};mbrtowc(0,0,0,&ps); | ||
2106 | ; return 0; } | ||
2107 | EOF | ||
2108 | -if { (eval echo configure:11406: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2109 | +if { (eval echo configure:11346: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2110 | rm -rf conftest* | ||
2111 | ac_cv_have_mbrtowc="yes" | ||
2112 | else | ||
2113 | @@ -11434,12 +11374,12 @@ cross_compiling=$ac_cv_prog_cc_cross | ||
2114 | fi | ||
2115 | |||
2116 | echo $ac_n "checking for res_ninit()""... $ac_c" 1>&6 | ||
2117 | -echo "configure:11438: checking for res_ninit()" >&5 | ||
2118 | +echo "configure:11378: checking for res_ninit()" >&5 | ||
2119 | if eval "test \"`echo '$''{'ac_cv_func_res_ninit'+set}'`\" = set"; then | ||
2120 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2121 | else | ||
2122 | cat > conftest.$ac_ext <<EOF | ||
2123 | -#line 11443 "configure" | ||
2124 | +#line 11383 "configure" | ||
2125 | #include "confdefs.h" | ||
2126 | |||
2127 | #ifdef linux | ||
2128 | @@ -11451,7 +11391,7 @@ int main() { | ||
2129 | int foo = res_ninit(&_res); | ||
2130 | ; return 0; } | ||
2131 | EOF | ||
2132 | -if { (eval echo configure:11455: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2133 | +if { (eval echo configure:11395: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2134 | rm -rf conftest* | ||
2135 | ac_cv_func_res_ninit=yes | ||
2136 | else | ||
2137 | @@ -11484,12 +11424,12 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes | ||
2138 | cross_compiling=$ac_cv_prog_cxx_cross | ||
2139 | |||
2140 | echo $ac_n "checking for gnu_get_libc_version()""... $ac_c" 1>&6 | ||
2141 | -echo "configure:11488: checking for gnu_get_libc_version()" >&5 | ||
2142 | +echo "configure:11428: checking for gnu_get_libc_version()" >&5 | ||
2143 | if eval "test \"`echo '$''{'ac_cv_func_gnu_get_libc_version'+set}'`\" = set"; then | ||
2144 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2145 | else | ||
2146 | cat > conftest.$ac_ext <<EOF | ||
2147 | -#line 11493 "configure" | ||
2148 | +#line 11433 "configure" | ||
2149 | #include "confdefs.h" | ||
2150 | |||
2151 | #ifdef HAVE_GNU_LIBC_VERSION_H | ||
2152 | @@ -11500,7 +11440,7 @@ int main() { | ||
2153 | const char *glibc_version = gnu_get_libc_version(); | ||
2154 | ; return 0; } | ||
2155 | EOF | ||
2156 | -if { (eval echo configure:11504: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2157 | +if { (eval echo configure:11444: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2158 | rm -rf conftest* | ||
2159 | ac_cv_func_gnu_get_libc_version=yes | ||
2160 | else | ||
2161 | @@ -11534,7 +11474,7 @@ cross_compiling=$ac_cv_prog_cc_cross | ||
2162 | |||
2163 | |||
2164 | echo $ac_n "checking for an implementation of va_copy()""... $ac_c" 1>&6 | ||
2165 | -echo "configure:11538: checking for an implementation of va_copy()" >&5 | ||
2166 | +echo "configure:11478: checking for an implementation of va_copy()" >&5 | ||
2167 | if eval "test \"`echo '$''{'ac_cv_va_copy'+set}'`\" = set"; then | ||
2168 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2169 | else | ||
2170 | @@ -11544,7 +11484,7 @@ else | ||
2171 | |||
2172 | else | ||
2173 | cat > conftest.$ac_ext <<EOF | ||
2174 | -#line 11548 "configure" | ||
2175 | +#line 11488 "configure" | ||
2176 | #include "confdefs.h" | ||
2177 | |||
2178 | #include <stdarg.h> | ||
2179 | @@ -11558,7 +11498,7 @@ else | ||
2180 | } | ||
2181 | int main() { f (0, 42); return 0; } | ||
2182 | EOF | ||
2183 | -if { (eval echo configure:11562: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null | ||
2184 | +if { (eval echo configure:11502: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null | ||
2185 | then | ||
2186 | ac_cv_va_copy=yes | ||
2187 | else | ||
2188 | @@ -11575,7 +11515,7 @@ fi | ||
2189 | |||
2190 | echo "$ac_t""$ac_cv_va_copy" 1>&6 | ||
2191 | echo $ac_n "checking for an implementation of __va_copy()""... $ac_c" 1>&6 | ||
2192 | -echo "configure:11579: checking for an implementation of __va_copy()" >&5 | ||
2193 | +echo "configure:11519: checking for an implementation of __va_copy()" >&5 | ||
2194 | if eval "test \"`echo '$''{'ac_cv___va_copy'+set}'`\" = set"; then | ||
2195 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2196 | else | ||
2197 | @@ -11585,7 +11525,7 @@ else | ||
2198 | |||
2199 | else | ||
2200 | cat > conftest.$ac_ext <<EOF | ||
2201 | -#line 11589 "configure" | ||
2202 | +#line 11529 "configure" | ||
2203 | #include "confdefs.h" | ||
2204 | |||
2205 | #include <stdarg.h> | ||
2206 | @@ -11599,7 +11539,7 @@ else | ||
2207 | } | ||
2208 | int main() { f (0, 42); return 0; } | ||
2209 | EOF | ||
2210 | -if { (eval echo configure:11603: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null | ||
2211 | +if { (eval echo configure:11543: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null | ||
2212 | then | ||
2213 | ac_cv___va_copy=yes | ||
2214 | else | ||
2215 | @@ -11616,7 +11556,7 @@ fi | ||
2216 | |||
2217 | echo "$ac_t""$ac_cv___va_copy" 1>&6 | ||
2218 | echo $ac_n "checking whether va_lists can be copied by value""... $ac_c" 1>&6 | ||
2219 | -echo "configure:11620: checking whether va_lists can be copied by value" >&5 | ||
2220 | +echo "configure:11560: checking whether va_lists can be copied by value" >&5 | ||
2221 | if eval "test \"`echo '$''{'ac_cv_va_val_copy'+set}'`\" = set"; then | ||
2222 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2223 | else | ||
2224 | @@ -11626,7 +11566,7 @@ else | ||
2225 | |||
2226 | else | ||
2227 | cat > conftest.$ac_ext <<EOF | ||
2228 | -#line 11630 "configure" | ||
2229 | +#line 11570 "configure" | ||
2230 | #include "confdefs.h" | ||
2231 | |||
2232 | #include <stdarg.h> | ||
2233 | @@ -11640,7 +11580,7 @@ else | ||
2234 | } | ||
2235 | int main() { f (0, 42); return 0; } | ||
2236 | EOF | ||
2237 | -if { (eval echo configure:11644: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null | ||
2238 | +if { (eval echo configure:11584: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null | ||
2239 | then | ||
2240 | ac_cv_va_val_copy=yes | ||
2241 | else | ||
2242 | @@ -11710,12 +11650,12 @@ ARM_ABI_PREFIX= | ||
2243 | if test "$GNU_CC"; then | ||
2244 | if test "$CPU_ARCH" = "arm" ; then | ||
2245 | echo $ac_n "checking for ARM EABI""... $ac_c" 1>&6 | ||
2246 | -echo "configure:11714: checking for ARM EABI" >&5 | ||
2247 | +echo "configure:11654: checking for ARM EABI" >&5 | ||
2248 | if eval "test \"`echo '$''{'ac_cv_gcc_arm_eabi'+set}'`\" = set"; then | ||
2249 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2250 | else | ||
2251 | cat > conftest.$ac_ext <<EOF | ||
2252 | -#line 11719 "configure" | ||
2253 | +#line 11659 "configure" | ||
2254 | #include "confdefs.h" | ||
2255 | |||
2256 | int main() { | ||
2257 | @@ -11728,7 +11668,7 @@ int main() { | ||
2258 | |||
2259 | ; return 0; } | ||
2260 | EOF | ||
2261 | -if { (eval echo configure:11732: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2262 | +if { (eval echo configure:11672: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2263 | rm -rf conftest* | ||
2264 | ac_cv_gcc_arm_eabi="yes" | ||
2265 | else | ||
2266 | @@ -11753,12 +11693,12 @@ echo "$ac_t""$ac_cv_gcc_arm_eabi" 1>&6 | ||
2267 | fi | ||
2268 | |||
2269 | echo $ac_n "checking for modern C++ template specialization syntax support""... $ac_c" 1>&6 | ||
2270 | -echo "configure:11757: checking for modern C++ template specialization syntax support" >&5 | ||
2271 | +echo "configure:11697: checking for modern C++ template specialization syntax support" >&5 | ||
2272 | if eval "test \"`echo '$''{'ac_cv_cpp_modern_specialize_template_syntax'+set}'`\" = set"; then | ||
2273 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2274 | else | ||
2275 | cat > conftest.$ac_ext <<EOF | ||
2276 | -#line 11762 "configure" | ||
2277 | +#line 11702 "configure" | ||
2278 | #include "confdefs.h" | ||
2279 | template <class T> struct X { int a; }; | ||
2280 | class Y {}; | ||
2281 | @@ -11768,7 +11708,7 @@ X<int> int_x; | ||
2282 | X<Y> y_x; | ||
2283 | ; return 0; } | ||
2284 | EOF | ||
2285 | -if { (eval echo configure:11772: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2286 | +if { (eval echo configure:11712: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2287 | rm -rf conftest* | ||
2288 | ac_cv_cpp_modern_specialize_template_syntax=yes | ||
2289 | else | ||
2290 | @@ -11786,12 +11726,12 @@ if test "$ac_cv_cpp_modern_specialize_template_syntax" = no ; then | ||
2291 | fi | ||
2292 | |||
2293 | echo $ac_n "checking whether partial template specialization works""... $ac_c" 1>&6 | ||
2294 | -echo "configure:11790: checking whether partial template specialization works" >&5 | ||
2295 | +echo "configure:11730: checking whether partial template specialization works" >&5 | ||
2296 | if eval "test \"`echo '$''{'ac_cv_cpp_partial_specialization'+set}'`\" = set"; then | ||
2297 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2298 | else | ||
2299 | cat > conftest.$ac_ext <<EOF | ||
2300 | -#line 11795 "configure" | ||
2301 | +#line 11735 "configure" | ||
2302 | #include "confdefs.h" | ||
2303 | template <class T> class Foo {}; | ||
2304 | template <class T> class Foo<T*> {}; | ||
2305 | @@ -11799,7 +11739,7 @@ int main() { | ||
2306 | return 0; | ||
2307 | ; return 0; } | ||
2308 | EOF | ||
2309 | -if { (eval echo configure:11803: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2310 | +if { (eval echo configure:11743: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2311 | rm -rf conftest* | ||
2312 | ac_cv_cpp_partial_specialization=yes | ||
2313 | else | ||
2314 | @@ -11823,12 +11763,12 @@ EOF | ||
2315 | fi | ||
2316 | |||
2317 | echo $ac_n "checking whether the C++ \"using\" keyword resolves ambiguity""... $ac_c" 1>&6 | ||
2318 | -echo "configure:11827: checking whether the C++ \"using\" keyword resolves ambiguity" >&5 | ||
2319 | +echo "configure:11767: checking whether the C++ \"using\" keyword resolves ambiguity" >&5 | ||
2320 | if eval "test \"`echo '$''{'ac_cv_cpp_ambiguity_resolving_using'+set}'`\" = set"; then | ||
2321 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2322 | else | ||
2323 | cat > conftest.$ac_ext <<EOF | ||
2324 | -#line 11832 "configure" | ||
2325 | +#line 11772 "configure" | ||
2326 | #include "confdefs.h" | ||
2327 | class X { | ||
2328 | public: int go(const X&) {return 3;} | ||
2329 | @@ -11844,7 +11784,7 @@ int main() { | ||
2330 | X x; Y y; y.jo(x); | ||
2331 | ; return 0; } | ||
2332 | EOF | ||
2333 | -if { (eval echo configure:11848: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2334 | +if { (eval echo configure:11788: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2335 | rm -rf conftest* | ||
2336 | ac_cv_cpp_ambiguity_resolving_using=yes | ||
2337 | else | ||
2338 | @@ -11868,7 +11808,7 @@ EOF | ||
2339 | fi | ||
2340 | |||
2341 | echo $ac_n "checking for C++ dynamic_cast to void*""... $ac_c" 1>&6 | ||
2342 | -echo "configure:11872: checking for C++ dynamic_cast to void*" >&5 | ||
2343 | +echo "configure:11812: checking for C++ dynamic_cast to void*" >&5 | ||
2344 | if eval "test \"`echo '$''{'ac_cv_cpp_dynamic_cast_void_ptr'+set}'`\" = set"; then | ||
2345 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2346 | else | ||
2347 | @@ -11876,7 +11816,7 @@ else | ||
2348 | ac_cv_cpp_dynamic_cast_void_ptr=no | ||
2349 | else | ||
2350 | cat > conftest.$ac_ext <<EOF | ||
2351 | -#line 11880 "configure" | ||
2352 | +#line 11820 "configure" | ||
2353 | #include "confdefs.h" | ||
2354 | class X { int i; public: virtual ~X() { } }; | ||
2355 | class Y { int j; public: virtual ~Y() { } }; | ||
2356 | @@ -11892,7 +11832,7 @@ class X { int i; public: virtual ~X() { } }; | ||
2357 | ((void*)&mdo == dynamic_cast<void*>(suby)))); | ||
2358 | } | ||
2359 | EOF | ||
2360 | -if { (eval echo configure:11896: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null | ||
2361 | +if { (eval echo configure:11836: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null | ||
2362 | then | ||
2363 | ac_cv_cpp_dynamic_cast_void_ptr=yes | ||
2364 | else | ||
2365 | @@ -11919,19 +11859,19 @@ fi | ||
2366 | |||
2367 | |||
2368 | echo $ac_n "checking whether C++ requires implementation of unused virtual methods""... $ac_c" 1>&6 | ||
2369 | -echo "configure:11923: checking whether C++ requires implementation of unused virtual methods" >&5 | ||
2370 | +echo "configure:11863: checking whether C++ requires implementation of unused virtual methods" >&5 | ||
2371 | if eval "test \"`echo '$''{'ac_cv_cpp_unused_required'+set}'`\" = set"; then | ||
2372 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2373 | else | ||
2374 | cat > conftest.$ac_ext <<EOF | ||
2375 | -#line 11928 "configure" | ||
2376 | +#line 11868 "configure" | ||
2377 | #include "confdefs.h" | ||
2378 | class X {private: virtual void never_called();}; | ||
2379 | int main() { | ||
2380 | X x; | ||
2381 | ; return 0; } | ||
2382 | EOF | ||
2383 | -if { (eval echo configure:11935: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2384 | +if { (eval echo configure:11875: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2385 | rm -rf conftest* | ||
2386 | ac_cv_cpp_unused_required=no | ||
2387 | else | ||
2388 | @@ -11957,12 +11897,12 @@ fi | ||
2389 | |||
2390 | |||
2391 | echo $ac_n "checking for trouble comparing to zero near std::operator!=()""... $ac_c" 1>&6 | ||
2392 | -echo "configure:11961: checking for trouble comparing to zero near std::operator!=()" >&5 | ||
2393 | +echo "configure:11901: checking for trouble comparing to zero near std::operator!=()" >&5 | ||
2394 | if eval "test \"`echo '$''{'ac_cv_trouble_comparing_to_zero'+set}'`\" = set"; then | ||
2395 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2396 | else | ||
2397 | cat > conftest.$ac_ext <<EOF | ||
2398 | -#line 11966 "configure" | ||
2399 | +#line 11906 "configure" | ||
2400 | #include "confdefs.h" | ||
2401 | #include <algorithm> | ||
2402 | template <class T> class Foo {}; | ||
2403 | @@ -11973,7 +11913,7 @@ int main() { | ||
2404 | Foo<int> f; return (0 != f); | ||
2405 | ; return 0; } | ||
2406 | EOF | ||
2407 | -if { (eval echo configure:11977: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2408 | +if { (eval echo configure:11917: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2409 | rm -rf conftest* | ||
2410 | ac_cv_trouble_comparing_to_zero=no | ||
2411 | else | ||
2412 | @@ -12003,19 +11943,19 @@ fi | ||
2413 | _SAVE_LDFLAGS=$LDFLAGS | ||
2414 | LDFLAGS="$LDFLAGS $DSO_PIC_CFLAGS $DSO_LDOPTS $MOZ_OPTIMIZE_LDFLAGS" | ||
2415 | echo $ac_n "checking for __thread keyword for TLS variables""... $ac_c" 1>&6 | ||
2416 | -echo "configure:12007: checking for __thread keyword for TLS variables" >&5 | ||
2417 | +echo "configure:11947: checking for __thread keyword for TLS variables" >&5 | ||
2418 | if eval "test \"`echo '$''{'ac_cv_thread_keyword'+set}'`\" = set"; then | ||
2419 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2420 | else | ||
2421 | cat > conftest.$ac_ext <<EOF | ||
2422 | -#line 12012 "configure" | ||
2423 | +#line 11952 "configure" | ||
2424 | #include "confdefs.h" | ||
2425 | __thread bool tlsIsMainThread = false; | ||
2426 | int main() { | ||
2427 | return tlsIsMainThread; | ||
2428 | ; return 0; } | ||
2429 | EOF | ||
2430 | -if { (eval echo configure:12019: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2431 | +if { (eval echo configure:11959: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2432 | rm -rf conftest* | ||
2433 | ac_cv_thread_keyword=yes | ||
2434 | else | ||
2435 | @@ -12055,12 +11995,12 @@ fi | ||
2436 | MALLOC_H= | ||
2437 | ac_safe=`echo "malloc.h" | sed 'y%./+-%__p_%'` | ||
2438 | echo $ac_n "checking for malloc.h""... $ac_c" 1>&6 | ||
2439 | -echo "configure:12059: checking for malloc.h" >&5 | ||
2440 | +echo "configure:11999: checking for malloc.h" >&5 | ||
2441 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
2442 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2443 | else | ||
2444 | cat > conftest.$ac_ext <<EOF | ||
2445 | -#line 12064 "configure" | ||
2446 | +#line 12004 "configure" | ||
2447 | #include "confdefs.h" | ||
2448 | |||
2449 | #include <malloc.h> | ||
2450 | @@ -12068,7 +12008,7 @@ int main() { | ||
2451 | |||
2452 | ; return 0; } | ||
2453 | EOF | ||
2454 | -if { (eval echo configure:12072: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2455 | +if { (eval echo configure:12012: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2456 | rm -rf conftest* | ||
2457 | eval "ac_cv_header_$ac_safe=yes" | ||
2458 | else | ||
2459 | @@ -12091,12 +12031,12 @@ fi | ||
2460 | if test "$MALLOC_H" = ""; then | ||
2461 | ac_safe=`echo "malloc/malloc.h" | sed 'y%./+-%__p_%'` | ||
2462 | echo $ac_n "checking for malloc/malloc.h""... $ac_c" 1>&6 | ||
2463 | -echo "configure:12095: checking for malloc/malloc.h" >&5 | ||
2464 | +echo "configure:12035: checking for malloc/malloc.h" >&5 | ||
2465 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
2466 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2467 | else | ||
2468 | cat > conftest.$ac_ext <<EOF | ||
2469 | -#line 12100 "configure" | ||
2470 | +#line 12040 "configure" | ||
2471 | #include "confdefs.h" | ||
2472 | |||
2473 | #include <malloc/malloc.h> | ||
2474 | @@ -12104,7 +12044,7 @@ int main() { | ||
2475 | |||
2476 | ; return 0; } | ||
2477 | EOF | ||
2478 | -if { (eval echo configure:12108: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2479 | +if { (eval echo configure:12048: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2480 | rm -rf conftest* | ||
2481 | eval "ac_cv_header_$ac_safe=yes" | ||
2482 | else | ||
2483 | @@ -12127,12 +12067,12 @@ fi | ||
2484 | if test "$MALLOC_H" = ""; then | ||
2485 | ac_safe=`echo "sys/malloc.h" | sed 'y%./+-%__p_%'` | ||
2486 | echo $ac_n "checking for sys/malloc.h""... $ac_c" 1>&6 | ||
2487 | -echo "configure:12131: checking for sys/malloc.h" >&5 | ||
2488 | +echo "configure:12071: checking for sys/malloc.h" >&5 | ||
2489 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
2490 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2491 | else | ||
2492 | cat > conftest.$ac_ext <<EOF | ||
2493 | -#line 12136 "configure" | ||
2494 | +#line 12076 "configure" | ||
2495 | #include "confdefs.h" | ||
2496 | |||
2497 | #include <sys/malloc.h> | ||
2498 | @@ -12140,7 +12080,7 @@ int main() { | ||
2499 | |||
2500 | ; return 0; } | ||
2501 | EOF | ||
2502 | -if { (eval echo configure:12144: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2503 | +if { (eval echo configure:12084: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2504 | rm -rf conftest* | ||
2505 | eval "ac_cv_header_$ac_safe=yes" | ||
2506 | else | ||
2507 | @@ -12176,12 +12116,12 @@ MOZ_ALLOCATING_FUNCS="strndup posix_memalign memalign valloc" | ||
2508 | for ac_func in strndup posix_memalign memalign valloc | ||
2509 | do | ||
2510 | echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 | ||
2511 | -echo "configure:12180: checking for $ac_func" >&5 | ||
2512 | +echo "configure:12120: checking for $ac_func" >&5 | ||
2513 | if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then | ||
2514 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2515 | else | ||
2516 | cat > conftest.$ac_ext <<EOF | ||
2517 | -#line 12185 "configure" | ||
2518 | +#line 12125 "configure" | ||
2519 | #include "confdefs.h" | ||
2520 | /* System header to define __stub macros and hopefully few prototypes, | ||
2521 | which can conflict with char $ac_func(); below. */ | ||
2522 | @@ -12207,7 +12147,7 @@ $ac_func(); | ||
2523 | |||
2524 | ; return 0; } | ||
2525 | EOF | ||
2526 | -if { (eval echo configure:12211: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2527 | +if { (eval echo configure:12151: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2528 | rm -rf conftest* | ||
2529 | eval "ac_cv_func_$ac_func=yes" | ||
2530 | else | ||
2531 | @@ -12237,19 +12177,19 @@ done | ||
2532 | |||
2533 | |||
2534 | echo $ac_n "checking for __attribute__((always_inline))""... $ac_c" 1>&6 | ||
2535 | -echo "configure:12241: checking for __attribute__((always_inline))" >&5 | ||
2536 | +echo "configure:12181: checking for __attribute__((always_inline))" >&5 | ||
2537 | if eval "test \"`echo '$''{'ac_cv_attribute_always_inline'+set}'`\" = set"; then | ||
2538 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2539 | else | ||
2540 | cat > conftest.$ac_ext <<EOF | ||
2541 | -#line 12246 "configure" | ||
2542 | +#line 12186 "configure" | ||
2543 | #include "confdefs.h" | ||
2544 | inline void f(void) __attribute__((always_inline)); | ||
2545 | int main() { | ||
2546 | |||
2547 | ; return 0; } | ||
2548 | EOF | ||
2549 | -if { (eval echo configure:12253: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2550 | +if { (eval echo configure:12193: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2551 | rm -rf conftest* | ||
2552 | ac_cv_attribute_always_inline=yes | ||
2553 | else | ||
2554 | @@ -12264,19 +12204,19 @@ fi | ||
2555 | echo "$ac_t""$ac_cv_attribute_always_inline" 1>&6 | ||
2556 | |||
2557 | echo $ac_n "checking for __attribute__((malloc))""... $ac_c" 1>&6 | ||
2558 | -echo "configure:12268: checking for __attribute__((malloc))" >&5 | ||
2559 | +echo "configure:12208: checking for __attribute__((malloc))" >&5 | ||
2560 | if eval "test \"`echo '$''{'ac_cv_attribute_malloc'+set}'`\" = set"; then | ||
2561 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2562 | else | ||
2563 | cat > conftest.$ac_ext <<EOF | ||
2564 | -#line 12273 "configure" | ||
2565 | +#line 12213 "configure" | ||
2566 | #include "confdefs.h" | ||
2567 | void* f(int) __attribute__((malloc)); | ||
2568 | int main() { | ||
2569 | |||
2570 | ; return 0; } | ||
2571 | EOF | ||
2572 | -if { (eval echo configure:12280: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2573 | +if { (eval echo configure:12220: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2574 | rm -rf conftest* | ||
2575 | ac_cv_attribute_malloc=yes | ||
2576 | else | ||
2577 | @@ -12291,19 +12231,19 @@ fi | ||
2578 | echo "$ac_t""$ac_cv_attribute_malloc" 1>&6 | ||
2579 | |||
2580 | echo $ac_n "checking for __attribute__((warn_unused_result))""... $ac_c" 1>&6 | ||
2581 | -echo "configure:12295: checking for __attribute__((warn_unused_result))" >&5 | ||
2582 | +echo "configure:12235: checking for __attribute__((warn_unused_result))" >&5 | ||
2583 | if eval "test \"`echo '$''{'ac_cv_attribute_warn_unused'+set}'`\" = set"; then | ||
2584 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2585 | else | ||
2586 | cat > conftest.$ac_ext <<EOF | ||
2587 | -#line 12300 "configure" | ||
2588 | +#line 12240 "configure" | ||
2589 | #include "confdefs.h" | ||
2590 | int f(void) __attribute__((warn_unused_result)); | ||
2591 | int main() { | ||
2592 | |||
2593 | ; return 0; } | ||
2594 | EOF | ||
2595 | -if { (eval echo configure:12307: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2596 | +if { (eval echo configure:12247: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2597 | rm -rf conftest* | ||
2598 | ac_cv_attribute_warn_unused=yes | ||
2599 | else | ||
2600 | @@ -12327,19 +12267,19 @@ cross_compiling=$ac_cv_prog_cc_cross | ||
2601 | |||
2602 | |||
2603 | echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6 | ||
2604 | -echo "configure:12331: checking for LC_MESSAGES" >&5 | ||
2605 | +echo "configure:12271: checking for LC_MESSAGES" >&5 | ||
2606 | if eval "test \"`echo '$''{'ac_cv_i18n_lc_messages'+set}'`\" = set"; then | ||
2607 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2608 | else | ||
2609 | cat > conftest.$ac_ext <<EOF | ||
2610 | -#line 12336 "configure" | ||
2611 | +#line 12276 "configure" | ||
2612 | #include "confdefs.h" | ||
2613 | #include <locale.h> | ||
2614 | int main() { | ||
2615 | int category = LC_MESSAGES; | ||
2616 | ; return 0; } | ||
2617 | EOF | ||
2618 | -if { (eval echo configure:12343: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2619 | +if { (eval echo configure:12283: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2620 | rm -rf conftest* | ||
2621 | ac_cv_i18n_lc_messages=yes | ||
2622 | else | ||
2623 | @@ -12365,12 +12305,12 @@ fi | ||
2624 | for ac_func in localeconv | ||
2625 | do | ||
2626 | echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 | ||
2627 | -echo "configure:12369: checking for $ac_func" >&5 | ||
2628 | +echo "configure:12309: checking for $ac_func" >&5 | ||
2629 | if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then | ||
2630 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2631 | else | ||
2632 | cat > conftest.$ac_ext <<EOF | ||
2633 | -#line 12374 "configure" | ||
2634 | +#line 12314 "configure" | ||
2635 | #include "confdefs.h" | ||
2636 | /* System header to define __stub macros and hopefully few prototypes, | ||
2637 | which can conflict with char $ac_func(); below. */ | ||
2638 | @@ -12393,7 +12333,7 @@ $ac_func(); | ||
2639 | |||
2640 | ; return 0; } | ||
2641 | EOF | ||
2642 | -if { (eval echo configure:12397: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2643 | +if { (eval echo configure:12337: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2644 | rm -rf conftest* | ||
2645 | eval "ac_cv_func_$ac_func=yes" | ||
2646 | else | ||
2647 | @@ -12580,7 +12520,7 @@ fi | ||
2648 | # Extract the first word of "nspr-config", so it can be a program name with args. | ||
2649 | set dummy nspr-config; ac_word=$2 | ||
2650 | echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 | ||
2651 | -echo "configure:12584: checking for $ac_word" >&5 | ||
2652 | +echo "configure:12524: checking for $ac_word" >&5 | ||
2653 | if eval "test \"`echo '$''{'ac_cv_path_NSPR_CONFIG'+set}'`\" = set"; then | ||
2654 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2655 | else | ||
2656 | @@ -12615,7 +12555,7 @@ fi | ||
2657 | |||
2658 | min_nspr_version=$NSPR_MINVER | ||
2659 | echo $ac_n "checking for NSPR - version >= $min_nspr_version""... $ac_c" 1>&6 | ||
2660 | -echo "configure:12619: checking for NSPR - version >= $min_nspr_version" >&5 | ||
2661 | +echo "configure:12559: checking for NSPR - version >= $min_nspr_version" >&5 | ||
2662 | |||
2663 | no_nspr="" | ||
2664 | if test "$NSPR_CONFIG" != "no"; then | ||
2665 | @@ -12678,7 +12618,7 @@ if test -n "$MOZ_NATIVE_NSPR"; then | ||
2666 | _SAVE_CFLAGS=$CFLAGS | ||
2667 | CFLAGS="$CFLAGS $NSPR_CFLAGS" | ||
2668 | cat > conftest.$ac_ext <<EOF | ||
2669 | -#line 12682 "configure" | ||
2670 | +#line 12622 "configure" | ||
2671 | #include "confdefs.h" | ||
2672 | #include "prlog.h" | ||
2673 | int main() { | ||
2674 | @@ -12687,7 +12627,7 @@ int main() { | ||
2675 | #endif | ||
2676 | ; return 0; } | ||
2677 | EOF | ||
2678 | -if { (eval echo configure:12691: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2679 | +if { (eval echo configure:12631: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2680 | rm -rf conftest* | ||
2681 | MOZ_NATIVE_NSPR=1 | ||
2682 | else | ||
2683 | @@ -12729,7 +12669,7 @@ if test -z "$MOZ_ZLIB_LIBS$MOZ_ZLIB_CFLAGS$SKIP_LIBRARY_CHECKS"; then | ||
2684 | MOZ_NATIVE_ZLIB= | ||
2685 | else | ||
2686 | echo $ac_n "checking for gzread in -lz""... $ac_c" 1>&6 | ||
2687 | -echo "configure:12733: checking for gzread in -lz" >&5 | ||
2688 | +echo "configure:12673: checking for gzread in -lz" >&5 | ||
2689 | ac_lib_var=`echo z'_'gzread | sed 'y%./+-%__p_%'` | ||
2690 | if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then | ||
2691 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2692 | @@ -12737,7 +12677,7 @@ else | ||
2693 | ac_save_LIBS="$LIBS" | ||
2694 | LIBS="-lz $LIBS" | ||
2695 | cat > conftest.$ac_ext <<EOF | ||
2696 | -#line 12741 "configure" | ||
2697 | +#line 12681 "configure" | ||
2698 | #include "confdefs.h" | ||
2699 | /* Override any gcc2 internal prototype to avoid an error. */ | ||
2700 | /* We use char because int might match the return type of a gcc2 | ||
2701 | @@ -12748,7 +12688,7 @@ int main() { | ||
2702 | gzread() | ||
2703 | ; return 0; } | ||
2704 | EOF | ||
2705 | -if { (eval echo configure:12752: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2706 | +if { (eval echo configure:12692: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2707 | rm -rf conftest* | ||
2708 | eval "ac_cv_lib_$ac_lib_var=yes" | ||
2709 | else | ||
2710 | @@ -12772,7 +12712,7 @@ fi | ||
2711 | if test "$MOZ_NATIVE_ZLIB" = 1; then | ||
2712 | MOZZLIBNUM=`echo $MOZZLIB | awk -F. '{printf "0x%x\n", ((($1 * 16 + $2) * 16) + $3) * 16 + $4}'` | ||
2713 | cat > conftest.$ac_ext <<EOF | ||
2714 | -#line 12776 "configure" | ||
2715 | +#line 12716 "configure" | ||
2716 | #include "confdefs.h" | ||
2717 | #include <stdio.h> | ||
2718 | #include <string.h> | ||
2719 | @@ -12783,7 +12723,7 @@ int main() { | ||
2720 | #endif | ||
2721 | ; return 0; } | ||
2722 | EOF | ||
2723 | -if { (eval echo configure:12787: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2724 | +if { (eval echo configure:12727: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2725 | rm -rf conftest* | ||
2726 | MOZ_NATIVE_ZLIB=1 | ||
2727 | else | ||
2728 | @@ -12829,7 +12769,7 @@ if test -n "$MOZ_NATIVE_FFI"; then | ||
2729 | # Extract the first word of "pkg-config", so it can be a program name with args. | ||
2730 | set dummy pkg-config; ac_word=$2 | ||
2731 | echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 | ||
2732 | -echo "configure:12833: checking for $ac_word" >&5 | ||
2733 | +echo "configure:12773: checking for $ac_word" >&5 | ||
2734 | if eval "test \"`echo '$''{'ac_cv_path_PKG_CONFIG'+set}'`\" = set"; then | ||
2735 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2736 | else | ||
2737 | @@ -12873,19 +12813,19 @@ fi | ||
2738 | PKG_CONFIG_MIN_VERSION=0.9.0 | ||
2739 | if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then | ||
2740 | echo $ac_n "checking for libffi > 3.0.9""... $ac_c" 1>&6 | ||
2741 | -echo "configure:12877: checking for libffi > 3.0.9" >&5 | ||
2742 | +echo "configure:12817: checking for libffi > 3.0.9" >&5 | ||
2743 | |||
2744 | if $PKG_CONFIG --exists "libffi > 3.0.9" ; then | ||
2745 | echo "$ac_t""yes" 1>&6 | ||
2746 | succeeded=yes | ||
2747 | |||
2748 | echo $ac_n "checking MOZ_FFI_CFLAGS""... $ac_c" 1>&6 | ||
2749 | -echo "configure:12884: checking MOZ_FFI_CFLAGS" >&5 | ||
2750 | +echo "configure:12824: checking MOZ_FFI_CFLAGS" >&5 | ||
2751 | MOZ_FFI_CFLAGS=`$PKG_CONFIG --cflags "libffi > 3.0.9"` | ||
2752 | echo "$ac_t""$MOZ_FFI_CFLAGS" 1>&6 | ||
2753 | |||
2754 | echo $ac_n "checking MOZ_FFI_LIBS""... $ac_c" 1>&6 | ||
2755 | -echo "configure:12889: checking MOZ_FFI_LIBS" >&5 | ||
2756 | +echo "configure:12829: checking MOZ_FFI_LIBS" >&5 | ||
2757 | ## Remove evil flags like -Wl,--export-dynamic | ||
2758 | MOZ_FFI_LIBS="`$PKG_CONFIG --libs \"libffi > 3.0.9\" |sed s/-Wl,--export-dynamic//g`" | ||
2759 | echo "$ac_t""$MOZ_FFI_LIBS" 1>&6 | ||
2760 | @@ -12921,7 +12861,7 @@ echo "configure:12889: checking MOZ_FFI_LIBS" >&5 | ||
2761 | # Extract the first word of "pkg-config", so it can be a program name with args. | ||
2762 | set dummy pkg-config; ac_word=$2 | ||
2763 | echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 | ||
2764 | -echo "configure:12925: checking for $ac_word" >&5 | ||
2765 | +echo "configure:12865: checking for $ac_word" >&5 | ||
2766 | if eval "test \"`echo '$''{'ac_cv_path_PKG_CONFIG'+set}'`\" = set"; then | ||
2767 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2768 | else | ||
2769 | @@ -12965,19 +12905,19 @@ fi | ||
2770 | PKG_CONFIG_MIN_VERSION=0.9.0 | ||
2771 | if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then | ||
2772 | echo $ac_n "checking for libffi >= 3.0.9""... $ac_c" 1>&6 | ||
2773 | -echo "configure:12969: checking for libffi >= 3.0.9" >&5 | ||
2774 | +echo "configure:12909: checking for libffi >= 3.0.9" >&5 | ||
2775 | |||
2776 | if $PKG_CONFIG --exists "libffi >= 3.0.9" ; then | ||
2777 | echo "$ac_t""yes" 1>&6 | ||
2778 | succeeded=yes | ||
2779 | |||
2780 | echo $ac_n "checking MOZ_FFI_CFLAGS""... $ac_c" 1>&6 | ||
2781 | -echo "configure:12976: checking MOZ_FFI_CFLAGS" >&5 | ||
2782 | +echo "configure:12916: checking MOZ_FFI_CFLAGS" >&5 | ||
2783 | MOZ_FFI_CFLAGS=`$PKG_CONFIG --cflags "libffi >= 3.0.9"` | ||
2784 | echo "$ac_t""$MOZ_FFI_CFLAGS" 1>&6 | ||
2785 | |||
2786 | echo $ac_n "checking MOZ_FFI_LIBS""... $ac_c" 1>&6 | ||
2787 | -echo "configure:12981: checking MOZ_FFI_LIBS" >&5 | ||
2788 | +echo "configure:12921: checking MOZ_FFI_LIBS" >&5 | ||
2789 | ## Remove evil flags like -Wl,--export-dynamic | ||
2790 | MOZ_FFI_LIBS="`$PKG_CONFIG --libs \"libffi >= 3.0.9\" |sed s/-Wl,--export-dynamic//g`" | ||
2791 | echo "$ac_t""$MOZ_FFI_LIBS" 1>&6 | ||
2792 | @@ -13112,18 +13052,18 @@ MOZ_DEBUG_DISABLE_DEFS="-DNDEBUG -DTRIMMED" | ||
2793 | |||
2794 | if test -n "$MOZ_DEBUG"; then | ||
2795 | echo $ac_n "checking for valid debug flags""... $ac_c" 1>&6 | ||
2796 | -echo "configure:13116: checking for valid debug flags" >&5 | ||
2797 | +echo "configure:13056: checking for valid debug flags" >&5 | ||
2798 | _SAVE_CFLAGS=$CFLAGS | ||
2799 | CFLAGS="$CFLAGS $MOZ_DEBUG_FLAGS" | ||
2800 | cat > conftest.$ac_ext <<EOF | ||
2801 | -#line 13120 "configure" | ||
2802 | +#line 13060 "configure" | ||
2803 | #include "confdefs.h" | ||
2804 | #include <stdio.h> | ||
2805 | int main() { | ||
2806 | printf("Hello World\n"); | ||
2807 | ; return 0; } | ||
2808 | EOF | ||
2809 | -if { (eval echo configure:13127: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2810 | +if { (eval echo configure:13067: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2811 | rm -rf conftest* | ||
2812 | _results=yes | ||
2813 | else | ||
2814 | @@ -13201,18 +13141,18 @@ fi | ||
2815 | if test "$COMPILE_ENVIRONMENT"; then | ||
2816 | if test -n "$MOZ_OPTIMIZE"; then | ||
2817 | echo $ac_n "checking for valid optimization flags""... $ac_c" 1>&6 | ||
2818 | -echo "configure:13205: checking for valid optimization flags" >&5 | ||
2819 | +echo "configure:13145: checking for valid optimization flags" >&5 | ||
2820 | _SAVE_CFLAGS=$CFLAGS | ||
2821 | CFLAGS="$CFLAGS $MOZ_OPTIMIZE_FLAGS" | ||
2822 | cat > conftest.$ac_ext <<EOF | ||
2823 | -#line 13209 "configure" | ||
2824 | +#line 13149 "configure" | ||
2825 | #include "confdefs.h" | ||
2826 | #include <stdio.h> | ||
2827 | int main() { | ||
2828 | printf("Hello World\n"); | ||
2829 | ; return 0; } | ||
2830 | EOF | ||
2831 | -if { (eval echo configure:13216: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2832 | +if { (eval echo configure:13156: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2833 | rm -rf conftest* | ||
2834 | _results=yes | ||
2835 | else | ||
2836 | @@ -13364,7 +13304,7 @@ EOF | ||
2837 | fi | ||
2838 | else | ||
2839 | echo $ac_n "checking size of int *""... $ac_c" 1>&6 | ||
2840 | -echo "configure:13368: checking size of int *" >&5 | ||
2841 | +echo "configure:13308: checking size of int *" >&5 | ||
2842 | if eval "test \"`echo '$''{'ac_cv_sizeof_int_p'+set}'`\" = set"; then | ||
2843 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2844 | else | ||
2845 | @@ -13372,7 +13312,7 @@ else | ||
2846 | ac_cv_sizeof_int_p=4 | ||
2847 | else | ||
2848 | cat > conftest.$ac_ext <<EOF | ||
2849 | -#line 13376 "configure" | ||
2850 | +#line 13316 "configure" | ||
2851 | #include "confdefs.h" | ||
2852 | #include <stdio.h> | ||
2853 | int main() | ||
2854 | @@ -13383,7 +13323,7 @@ int main() | ||
2855 | return(0); | ||
2856 | } | ||
2857 | EOF | ||
2858 | -if { (eval echo configure:13387: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null | ||
2859 | +if { (eval echo configure:13327: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null | ||
2860 | then | ||
2861 | ac_cv_sizeof_int_p=`cat conftestval` | ||
2862 | else | ||
2863 | @@ -13687,12 +13627,12 @@ fi | ||
2864 | if test -n "$MOZ_VALGRIND"; then | ||
2865 | ac_safe=`echo "valgrind/valgrind.h" | sed 'y%./+-%__p_%'` | ||
2866 | echo $ac_n "checking for valgrind/valgrind.h""... $ac_c" 1>&6 | ||
2867 | -echo "configure:13691: checking for valgrind/valgrind.h" >&5 | ||
2868 | +echo "configure:13631: checking for valgrind/valgrind.h" >&5 | ||
2869 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
2870 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2871 | else | ||
2872 | cat > conftest.$ac_ext <<EOF | ||
2873 | -#line 13696 "configure" | ||
2874 | +#line 13636 "configure" | ||
2875 | #include "confdefs.h" | ||
2876 | |||
2877 | #include <valgrind/valgrind.h> | ||
2878 | @@ -13700,7 +13640,7 @@ int main() { | ||
2879 | |||
2880 | ; return 0; } | ||
2881 | EOF | ||
2882 | -if { (eval echo configure:13704: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2883 | +if { (eval echo configure:13644: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2884 | rm -rf conftest* | ||
2885 | eval "ac_cv_header_$ac_safe=yes" | ||
2886 | else | ||
2887 | @@ -13973,7 +13913,7 @@ do | ||
2888 | # Extract the first word of "$ac_prog", so it can be a program name with args. | ||
2889 | set dummy $ac_prog; ac_word=$2 | ||
2890 | echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 | ||
2891 | -echo "configure:13977: checking for $ac_word" >&5 | ||
2892 | +echo "configure:13917: checking for $ac_word" >&5 | ||
2893 | if eval "test \"`echo '$''{'ac_cv_path_CCACHE'+set}'`\" = set"; then | ||
2894 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2895 | else | ||
2896 | @@ -14099,12 +14039,12 @@ cross_compiling=$ac_cv_prog_cxx_cross | ||
2897 | for ac_func in __cxa_demangle | ||
2898 | do | ||
2899 | echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 | ||
2900 | -echo "configure:14103: checking for $ac_func" >&5 | ||
2901 | +echo "configure:14043: checking for $ac_func" >&5 | ||
2902 | if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then | ||
2903 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2904 | else | ||
2905 | cat > conftest.$ac_ext <<EOF | ||
2906 | -#line 14108 "configure" | ||
2907 | +#line 14048 "configure" | ||
2908 | #include "confdefs.h" | ||
2909 | /* System header to define __stub macros and hopefully few prototypes, | ||
2910 | which can conflict with char $ac_func(); below. */ | ||
2911 | @@ -14130,7 +14070,7 @@ $ac_func(); | ||
2912 | |||
2913 | ; return 0; } | ||
2914 | EOF | ||
2915 | -if { (eval echo configure:14134: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2916 | +if { (eval echo configure:14074: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2917 | rm -rf conftest* | ||
2918 | eval "ac_cv_func_$ac_func=yes" | ||
2919 | else | ||
2920 | @@ -14184,12 +14124,12 @@ fi | ||
2921 | if test -z "$SKIP_LIBRARY_CHECKS"; then | ||
2922 | ac_safe=`echo "unwind.h" | sed 'y%./+-%__p_%'` | ||
2923 | echo $ac_n "checking for unwind.h""... $ac_c" 1>&6 | ||
2924 | -echo "configure:14188: checking for unwind.h" >&5 | ||
2925 | +echo "configure:14128: checking for unwind.h" >&5 | ||
2926 | if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then | ||
2927 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2928 | else | ||
2929 | cat > conftest.$ac_ext <<EOF | ||
2930 | -#line 14193 "configure" | ||
2931 | +#line 14133 "configure" | ||
2932 | #include "confdefs.h" | ||
2933 | |||
2934 | #include <unwind.h> | ||
2935 | @@ -14197,7 +14137,7 @@ int main() { | ||
2936 | |||
2937 | ; return 0; } | ||
2938 | EOF | ||
2939 | -if { (eval echo configure:14201: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2940 | +if { (eval echo configure:14141: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2941 | rm -rf conftest* | ||
2942 | eval "ac_cv_header_$ac_safe=yes" | ||
2943 | else | ||
2944 | @@ -14214,12 +14154,12 @@ fi | ||
2945 | for ac_func in _Unwind_Backtrace | ||
2946 | do | ||
2947 | echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 | ||
2948 | -echo "configure:14218: checking for $ac_func" >&5 | ||
2949 | +echo "configure:14158: checking for $ac_func" >&5 | ||
2950 | if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then | ||
2951 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
2952 | else | ||
2953 | cat > conftest.$ac_ext <<EOF | ||
2954 | -#line 14223 "configure" | ||
2955 | +#line 14163 "configure" | ||
2956 | #include "confdefs.h" | ||
2957 | /* System header to define __stub macros and hopefully few prototypes, | ||
2958 | which can conflict with char $ac_func(); below. */ | ||
2959 | @@ -14242,7 +14182,7 @@ $ac_func(); | ||
2960 | |||
2961 | ; return 0; } | ||
2962 | EOF | ||
2963 | -if { (eval echo configure:14246: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2964 | +if { (eval echo configure:14186: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
2965 | rm -rf conftest* | ||
2966 | eval "ac_cv_func_$ac_func=yes" | ||
2967 | else | ||
2968 | @@ -14334,7 +14274,7 @@ if test -z "$SKIP_COMPILER_CHECKS"; then | ||
2969 | # Compiler Options | ||
2970 | |||
2971 | echo $ac_n "checking for -pipe support""... $ac_c" 1>&6 | ||
2972 | -echo "configure:14338: checking for -pipe support" >&5 | ||
2973 | +echo "configure:14278: checking for -pipe support" >&5 | ||
2974 | if test -n "$GNU_CC" -a -n "$GNU_CXX"; then | ||
2975 | CFLAGS="$CFLAGS -pipe" | ||
2976 | CXXFLAGS="$CXXFLAGS -pipe" | ||
2977 | @@ -14348,16 +14288,16 @@ _SAVE_CFLAGS="$CFLAGS" | ||
2978 | CFLAGS="$CFLAGS -fprofile-generate -fprofile-correction" | ||
2979 | |||
2980 | echo $ac_n "checking whether C compiler supports -fprofile-generate""... $ac_c" 1>&6 | ||
2981 | -echo "configure:14352: checking whether C compiler supports -fprofile-generate" >&5 | ||
2982 | +echo "configure:14292: checking whether C compiler supports -fprofile-generate" >&5 | ||
2983 | cat > conftest.$ac_ext <<EOF | ||
2984 | -#line 14354 "configure" | ||
2985 | +#line 14294 "configure" | ||
2986 | #include "confdefs.h" | ||
2987 | |||
2988 | int main() { | ||
2989 | return 0; | ||
2990 | ; return 0; } | ||
2991 | EOF | ||
2992 | -if { (eval echo configure:14361: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2993 | +if { (eval echo configure:14301: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
2994 | rm -rf conftest* | ||
2995 | PROFILE_GEN_CFLAGS="-fprofile-generate" | ||
2996 | result="yes" | ||
2997 | @@ -14421,16 +14361,16 @@ if test "$_PEDANTIC"; then | ||
2998 | _SAVE_CXXFLAGS=$CXXFLAGS | ||
2999 | CXXFLAGS="$CXXFLAGS -pedantic ${_WARNINGS_CXXFLAGS} -Wno-long-long" | ||
3000 | echo $ac_n "checking whether C++ compiler has -pedantic long long bug""... $ac_c" 1>&6 | ||
3001 | -echo "configure:14425: checking whether C++ compiler has -pedantic long long bug" >&5 | ||
3002 | +echo "configure:14365: checking whether C++ compiler has -pedantic long long bug" >&5 | ||
3003 | cat > conftest.$ac_ext <<EOF | ||
3004 | -#line 14427 "configure" | ||
3005 | +#line 14367 "configure" | ||
3006 | #include "confdefs.h" | ||
3007 | $configure_static_assert_macros | ||
3008 | int main() { | ||
3009 | CONFIGURE_STATIC_ASSERT(sizeof(long long) == 8) | ||
3010 | ; return 0; } | ||
3011 | EOF | ||
3012 | -if { (eval echo configure:14434: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
3013 | +if { (eval echo configure:14374: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
3014 | rm -rf conftest* | ||
3015 | result="no" | ||
3016 | else | ||
3017 | @@ -14457,12 +14397,12 @@ fi | ||
3018 | _SAVE_CXXFLAGS=$CXXFLAGS | ||
3019 | CXXFLAGS="$CXXFLAGS ${_WARNINGS_CXXFLAGS}" | ||
3020 | echo $ac_n "checking for correct overload resolution with const and templates""... $ac_c" 1>&6 | ||
3021 | -echo "configure:14461: checking for correct overload resolution with const and templates" >&5 | ||
3022 | +echo "configure:14401: checking for correct overload resolution with const and templates" >&5 | ||
3023 | if eval "test \"`echo '$''{'ac_nscap_nonconst_opeq_bug'+set}'`\" = set"; then | ||
3024 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
3025 | else | ||
3026 | cat > conftest.$ac_ext <<EOF | ||
3027 | -#line 14466 "configure" | ||
3028 | +#line 14406 "configure" | ||
3029 | #include "confdefs.h" | ||
3030 | |||
3031 | template <class T> | ||
3032 | @@ -14492,7 +14432,7 @@ int main() { | ||
3033 | |||
3034 | ; return 0; } | ||
3035 | EOF | ||
3036 | -if { (eval echo configure:14496: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
3037 | +if { (eval echo configure:14436: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
3038 | rm -rf conftest* | ||
3039 | ac_nscap_nonconst_opeq_bug="no" | ||
3040 | else | ||
3041 | @@ -14518,19 +14458,19 @@ EOF | ||
3042 | fi | ||
3043 | |||
3044 | echo $ac_n "checking for tm_zone tm_gmtoff in struct tm""... $ac_c" 1>&6 | ||
3045 | -echo "configure:14522: checking for tm_zone tm_gmtoff in struct tm" >&5 | ||
3046 | +echo "configure:14462: checking for tm_zone tm_gmtoff in struct tm" >&5 | ||
3047 | if eval "test \"`echo '$''{'ac_cv_struct_tm_zone_tm_gmtoff'+set}'`\" = set"; then | ||
3048 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
3049 | else | ||
3050 | cat > conftest.$ac_ext <<EOF | ||
3051 | -#line 14527 "configure" | ||
3052 | +#line 14467 "configure" | ||
3053 | #include "confdefs.h" | ||
3054 | #include <time.h> | ||
3055 | int main() { | ||
3056 | struct tm tm; tm.tm_zone = 0; tm.tm_gmtoff = 1; | ||
3057 | ; return 0; } | ||
3058 | EOF | ||
3059 | -if { (eval echo configure:14534: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
3060 | +if { (eval echo configure:14474: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
3061 | rm -rf conftest* | ||
3062 | ac_cv_struct_tm_zone_tm_gmtoff="yes" | ||
3063 | else | ||
3064 | @@ -14572,18 +14512,18 @@ cross_compiling=$ac_cv_prog_cc_cross | ||
3065 | |||
3066 | |||
3067 | echo $ac_n "checking what kind of list files are supported by the linker""... $ac_c" 1>&6 | ||
3068 | -echo "configure:14576: checking what kind of list files are supported by the linker" >&5 | ||
3069 | +echo "configure:14516: checking what kind of list files are supported by the linker" >&5 | ||
3070 | if eval "test \"`echo '$''{'EXPAND_LIBS_LIST_STYLE'+set}'`\" = set"; then | ||
3071 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
3072 | else | ||
3073 | echo "int main() {return 0;}" > conftest.${ac_ext} | ||
3074 | - 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 | ||
3075 | + 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 | ||
3076 | echo "INPUT(conftest.${OBJ_SUFFIX})" > conftest.list | ||
3077 | - 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 | ||
3078 | + 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 | ||
3079 | EXPAND_LIBS_LIST_STYLE=linkerscript | ||
3080 | else | ||
3081 | echo "conftest.${OBJ_SUFFIX}" > conftest.list | ||
3082 | - 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 | ||
3083 | + 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 | ||
3084 | EXPAND_LIBS_LIST_STYLE=list | ||
3085 | else | ||
3086 | EXPAND_LIBS_LIST_STYLE=none | ||
3087 | @@ -14603,7 +14543,7 @@ LIBS_DESC_SUFFIX=desc | ||
3088 | |||
3089 | if test "$GCC_USE_GNU_LD"; then | ||
3090 | echo $ac_n "checking what kind of ordering can be done with the linker""... $ac_c" 1>&6 | ||
3091 | -echo "configure:14607: checking what kind of ordering can be done with the linker" >&5 | ||
3092 | +echo "configure:14547: checking what kind of ordering can be done with the linker" >&5 | ||
3093 | if eval "test \"`echo '$''{'EXPAND_LIBS_ORDER_STYLE'+set}'`\" = set"; then | ||
3094 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
3095 | else | ||
3096 | @@ -14611,14 +14551,14 @@ else | ||
3097 | _SAVE_LDFLAGS="$LDFLAGS" | ||
3098 | LDFLAGS="${LDFLAGS} -Wl,--section-ordering-file,conftest.order" | ||
3099 | cat > conftest.$ac_ext <<EOF | ||
3100 | -#line 14615 "configure" | ||
3101 | +#line 14555 "configure" | ||
3102 | #include "confdefs.h" | ||
3103 | |||
3104 | int main() { | ||
3105 | |||
3106 | ; return 0; } | ||
3107 | EOF | ||
3108 | -if { (eval echo configure:14622: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
3109 | +if { (eval echo configure:14562: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
3110 | rm -rf conftest* | ||
3111 | EXPAND_LIBS_ORDER_STYLE=section-ordering-file | ||
3112 | else | ||
3113 | @@ -14630,7 +14570,7 @@ fi | ||
3114 | rm -f conftest* | ||
3115 | LDFLAGS="$_SAVE_LDFLAGS" | ||
3116 | if test -z "$EXPAND_LIBS_ORDER_STYLE"; then | ||
3117 | - 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 | ||
3118 | + 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 | ||
3119 | EXPAND_LIBS_ORDER_STYLE=linkerscript | ||
3120 | else | ||
3121 | EXPAND_LIBS_ORDER_STYLE=none | ||
3122 | @@ -14741,7 +14681,7 @@ esac | ||
3123 | if test -z "$SKIP_LIBRARY_CHECKS" -a -z "$NO_EDITLINE"; then | ||
3124 | if test -n "$JS_WANT_READLINE"; then | ||
3125 | echo $ac_n "checking for readline in -lreadline""... $ac_c" 1>&6 | ||
3126 | -echo "configure:14745: checking for readline in -lreadline" >&5 | ||
3127 | +echo "configure:14685: checking for readline in -lreadline" >&5 | ||
3128 | ac_lib_var=`echo readline'_'readline | sed 'y%./+-%__p_%'` | ||
3129 | if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then | ||
3130 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
3131 | @@ -14749,7 +14689,7 @@ else | ||
3132 | ac_save_LIBS="$LIBS" | ||
3133 | LIBS="-lreadline $LIBS" | ||
3134 | cat > conftest.$ac_ext <<EOF | ||
3135 | -#line 14753 "configure" | ||
3136 | +#line 14693 "configure" | ||
3137 | #include "confdefs.h" | ||
3138 | /* Override any gcc2 internal prototype to avoid an error. */ | ||
3139 | /* We use char because int might match the return type of a gcc2 | ||
3140 | @@ -14760,7 +14700,7 @@ int main() { | ||
3141 | readline() | ||
3142 | ; return 0; } | ||
3143 | EOF | ||
3144 | -if { (eval echo configure:14764: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
3145 | +if { (eval echo configure:14704: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
3146 | rm -rf conftest* | ||
3147 | eval "ac_cv_lib_$ac_lib_var=yes" | ||
3148 | else | ||
3149 | @@ -14990,9 +14930,9 @@ EOF | ||
3150 | |||
3151 | |||
3152 | echo $ac_n "checking for posix_fallocate""... $ac_c" 1>&6 | ||
3153 | -echo "configure:14994: checking for posix_fallocate" >&5 | ||
3154 | +echo "configure:14934: checking for posix_fallocate" >&5 | ||
3155 | cat > conftest.$ac_ext <<EOF | ||
3156 | -#line 14996 "configure" | ||
3157 | +#line 14936 "configure" | ||
3158 | #include "confdefs.h" | ||
3159 | #define _XOPEN_SOURCE 600 | ||
3160 | #include <fcntl.h> | ||
3161 | @@ -15000,7 +14940,7 @@ int main() { | ||
3162 | posix_fallocate(0, 0, 0); | ||
3163 | ; return 0; } | ||
3164 | EOF | ||
3165 | -if { (eval echo configure:15004: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
3166 | +if { (eval echo configure:14944: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
3167 | rm -rf conftest* | ||
3168 | ac_cv___posix_fallocate=true | ||
3169 | else | ||
3170 | @@ -15029,7 +14969,7 @@ if test "$MOZ_X11"; then | ||
3171 | _SAVE_CFLAGS=$CFLAGS | ||
3172 | CFLAGS="$CFLAGS $XCFLAGS" | ||
3173 | cat > conftest.$ac_ext <<EOF | ||
3174 | -#line 15033 "configure" | ||
3175 | +#line 14973 "configure" | ||
3176 | #include "confdefs.h" | ||
3177 | |||
3178 | #include <stdio.h> | ||
3179 | @@ -15047,7 +14987,7 @@ int main() { | ||
3180 | |||
3181 | ; return 0; } | ||
3182 | EOF | ||
3183 | -if { (eval echo configure:15051: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
3184 | +if { (eval echo configure:14991: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then | ||
3185 | : | ||
3186 | else | ||
3187 | echo "configure: failed program was:" >&5 | ||
3188 | @@ -15162,12 +15102,12 @@ fi | ||
3189 | for ac_func in setlocale | ||
3190 | do | ||
3191 | echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 | ||
3192 | -echo "configure:15166: checking for $ac_func" >&5 | ||
3193 | +echo "configure:15106: checking for $ac_func" >&5 | ||
3194 | if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then | ||
3195 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
3196 | else | ||
3197 | cat > conftest.$ac_ext <<EOF | ||
3198 | -#line 15171 "configure" | ||
3199 | +#line 15111 "configure" | ||
3200 | #include "confdefs.h" | ||
3201 | /* System header to define __stub macros and hopefully few prototypes, | ||
3202 | which can conflict with char $ac_func(); below. */ | ||
3203 | @@ -15190,7 +15130,7 @@ $ac_func(); | ||
3204 | |||
3205 | ; return 0; } | ||
3206 | EOF | ||
3207 | -if { (eval echo configure:15194: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
3208 | +if { (eval echo configure:15134: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
3209 | rm -rf conftest* | ||
3210 | eval "ac_cv_func_$ac_func=yes" | ||
3211 | else | ||
3212 | @@ -15220,12 +15160,12 @@ done | ||
3213 | for ac_func in localeconv | ||
3214 | do | ||
3215 | echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 | ||
3216 | -echo "configure:15224: checking for $ac_func" >&5 | ||
3217 | +echo "configure:15164: checking for $ac_func" >&5 | ||
3218 | if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then | ||
3219 | echo $ac_n "(cached) $ac_c" 1>&6 | ||
3220 | else | ||
3221 | cat > conftest.$ac_ext <<EOF | ||
3222 | -#line 15229 "configure" | ||
3223 | +#line 15169 "configure" | ||
3224 | #include "confdefs.h" | ||
3225 | /* System header to define __stub macros and hopefully few prototypes, | ||
3226 | which can conflict with char $ac_func(); below. */ | ||
3227 | @@ -15248,7 +15188,7 @@ $ac_func(); | ||
3228 | |||
3229 | ; return 0; } | ||
3230 | EOF | ||
3231 | -if { (eval echo configure:15252: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
3232 | +if { (eval echo configure:15192: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then | ||
3233 | rm -rf conftest* | ||
3234 | eval "ac_cv_func_$ac_func=yes" | ||
3235 | else | ||
3236 | -- | ||
3237 | 1.9.3 | ||
3238 | |||
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 6aeb2f683..000000000 --- a/meta-oe/recipes-extended/mozjs/mozjs/0002-Move-JS_BYTES_PER_WORD-out-of-config.h.patch +++ /dev/null | |||
@@ -1,75 +0,0 @@ | |||
1 | From d4a15ad82292ff6d772dcc631df98754d20be31b Mon Sep 17 00:00:00 2001 | ||
2 | From: Colin Walters <walters@verbum.org> | ||
3 | Date: Tue, 18 Mar 2014 11:46:05 -0400 | ||
4 | Subject: [PATCH 2/5] Move JS_BYTES_PER_WORD out of config.h | ||
5 | |||
6 | Instead define it in terms of the already extant GNU C extension | ||
7 | __SIZEOF_POINTER__. This avoids multiarch conflicts when 32 and 64 | ||
8 | bit packages of js are co-installed. | ||
9 | --- | ||
10 | |||
11 | Upstream-status: Pending | ||
12 | |||
13 | js/src/configure.in | 9 --------- | ||
14 | js/src/js-config.h.in | 1 - | ||
15 | js/src/jstypes.h | 12 ++++++++++++ | ||
16 | 3 files changed, 12 insertions(+), 10 deletions(-) | ||
17 | |||
18 | diff --git a/js/src/configure.in b/js/src/configure.in | ||
19 | index 15605b2..64c7606 100644 | ||
20 | --- a/js/src/configure.in | ||
21 | +++ b/js/src/configure.in | ||
22 | @@ -2345,15 +2345,6 @@ else | ||
23 | AC_MSG_RESULT(no) | ||
24 | fi | ||
25 | |||
26 | -MOZ_SIZE_OF_TYPE(JS_BYTES_PER_WORD, void*, 4 8) | ||
27 | -if test "$moz_cv_size_of_JS_BYTES_PER_WORD" -eq "4"; then | ||
28 | - AC_DEFINE(JS_BITS_PER_WORD_LOG2, 5) | ||
29 | -elif test "$moz_cv_size_of_JS_BYTES_PER_WORD" -eq "8"; then | ||
30 | - AC_DEFINE(JS_BITS_PER_WORD_LOG2, 6) | ||
31 | -else | ||
32 | - AC_MSG_ERROR([Unexpected JS_BYTES_PER_WORD]) | ||
33 | -fi | ||
34 | - | ||
35 | MOZ_ALIGN_OF_TYPE(JS_ALIGN_OF_POINTER, void*, 2 4 8 16) | ||
36 | MOZ_SIZE_OF_TYPE(JS_BYTES_PER_DOUBLE, double, 6 8 10 12 14) | ||
37 | |||
38 | diff --git a/js/src/js-config.h.in b/js/src/js-config.h.in | ||
39 | index 6889e00..4775420 100644 | ||
40 | --- a/js/src/js-config.h.in | ||
41 | +++ b/js/src/js-config.h.in | ||
42 | @@ -56,7 +56,6 @@ | ||
43 | #undef JS_INT32_TYPE | ||
44 | #undef JS_INT64_TYPE | ||
45 | #undef JS_INTPTR_TYPE | ||
46 | -#undef JS_BYTES_PER_WORD | ||
47 | |||
48 | /* Some mozilla code uses JS-friend APIs that depend on JS_METHODJIT being | ||
49 | correct. */ | ||
50 | diff --git a/js/src/jstypes.h b/js/src/jstypes.h | ||
51 | index d0cf183..3e7928f 100644 | ||
52 | --- a/js/src/jstypes.h | ||
53 | +++ b/js/src/jstypes.h | ||
54 | @@ -24,6 +24,18 @@ | ||
55 | #include "mozilla/Util.h" | ||
56 | |||
57 | #include "js-config.h" | ||
58 | +#ifndef JS_BYTES_PER_WORD | ||
59 | +#define JS_BYTES_PER_WORD __SIZEOF_POINTER__ | ||
60 | +#endif | ||
61 | +#ifndef JS_BITS_PER_WORD_LOG2 | ||
62 | +#if JS_BYTES_PER_WORD == 8 | ||
63 | +#define JS_BITS_PER_WORD_LOG2 6 | ||
64 | +#elif JS_BYTES_PER_WORD == 4 | ||
65 | +#define JS_BITS_PER_WORD_LOG2 5 | ||
66 | +#else | ||
67 | +#error Unhandled JS_BYTES_PER_WORD | ||
68 | +#endif | ||
69 | +#endif | ||
70 | |||
71 | /*********************************************************************** | ||
72 | ** MACROS: JS_EXTERN_API | ||
73 | -- | ||
74 | 1.9.3 | ||
75 | |||
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 000000000..4f7ebc68d --- /dev/null +++ b/meta-oe/recipes-extended/mozjs/mozjs/0002-fix-cannot-find-link.patch | |||
@@ -0,0 +1,34 @@ | |||
1 | From e6dcee5f8a0f80ce99946b81fa1233611a149fe6 Mon Sep 17 00:00:00 2001 | ||
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
3 | Date: Thu, 12 Jul 2018 18:00:52 +0800 | ||
4 | Subject: [PATCH 2/5] fix cannot find link | ||
5 | |||
6 | .. | ||
7 | |DEBUG: link: Trying 'mips64-wrs-linux-ld --sysroot=tmp-glibc/work/ | ||
8 | mips64-wrs-linux/mozjs/52.8.1-r0/recipe-sysroot ' | ||
9 | |ERROR: Cannot find link | ||
10 | ... | ||
11 | |||
12 | Upstream-Status: Inappropriate [oe specific] | ||
13 | |||
14 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
15 | --- | ||
16 | build/moz.configure/checks.configure | 2 +- | ||
17 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
18 | |||
19 | diff --git a/build/moz.configure/checks.configure b/build/moz.configure/checks.configure | ||
20 | index 8c2dbc0..83bffc3 100644 | ||
21 | --- a/build/moz.configure/checks.configure | ||
22 | +++ b/build/moz.configure/checks.configure | ||
23 | @@ -128,7 +128,7 @@ def check_prog(var, progs, what=None, input=None, allow_missing=False, | ||
24 | |||
25 | for prog in value or progs: | ||
26 | log.debug('%s: Trying %s', var.lower(), quote(prog)) | ||
27 | - result = find_program(prog, paths) | ||
28 | + result = find_program(prog.split()[0], paths) | ||
29 | if result: | ||
30 | return result | ||
31 | |||
32 | -- | ||
33 | 2.7.4 | ||
34 | |||
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 000000000..a754ff16c --- /dev/null +++ b/meta-oe/recipes-extended/mozjs/mozjs/0003-workaround-autoconf-2.13-detection-failed.patch | |||
@@ -0,0 +1,28 @@ | |||
1 | From 646a78262b18e19721cd41ee515215221dd241b6 Mon Sep 17 00:00:00 2001 | ||
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
3 | Date: Thu, 12 Jul 2018 18:12:42 +0800 | ||
4 | Subject: [PATCH 3/5] workaround autoconf 2.13 detection failed | ||
5 | |||
6 | Upstream-Status: Inappropriate [oe specific] | ||
7 | |||
8 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
9 | --- | ||
10 | build/moz.configure/old.configure | 2 +- | ||
11 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
12 | |||
13 | diff --git a/build/moz.configure/old.configure b/build/moz.configure/old.configure | ||
14 | index b32c3f7..ece47f4 100644 | ||
15 | --- a/build/moz.configure/old.configure | ||
16 | +++ b/build/moz.configure/old.configure | ||
17 | @@ -31,7 +31,7 @@ def autoconf(mozconfig, autoconf): | ||
18 | autoconf = autoconf[0] if autoconf else None | ||
19 | |||
20 | for ac in (mozconfig_autoconf, autoconf, 'autoconf-2.13', 'autoconf2.13', | ||
21 | - 'autoconf213'): | ||
22 | + 'autoconf213', 'autoconf'): | ||
23 | if ac: | ||
24 | autoconf = find_program(ac) | ||
25 | if autoconf: | ||
26 | -- | ||
27 | 2.7.4 | ||
28 | |||
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 000000000..4cba79c5b --- /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 @@ | |||
1 | From a46adb74b5ba5e17d676d31d70faca76c1381d15 Mon Sep 17 00:00:00 2001 | ||
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
3 | Date: Thu, 12 Jul 2018 21:25:46 +0800 | ||
4 | Subject: [PATCH 4/5] do not use autoconf 2.13 to refresh old.configure | ||
5 | |||
6 | Upstream-Status: Inappropriate [oe specific] | ||
7 | |||
8 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
9 | --- | ||
10 | build/moz.configure/old.configure | 2 +- | ||
11 | js/src/old-configure | 2 +- | ||
12 | 2 files changed, 2 insertions(+), 2 deletions(-) | ||
13 | |||
14 | diff --git a/build/moz.configure/old.configure b/build/moz.configure/old.configure | ||
15 | index ece47f4..a73900f 100644 | ||
16 | --- a/build/moz.configure/old.configure | ||
17 | +++ b/build/moz.configure/old.configure | ||
18 | @@ -83,7 +83,7 @@ def prepare_configure(old_configure, mozconfig, autoconf, build_env, shell, | ||
19 | old_configure = os.path.join(old_configure_dir, 'js', 'src', | ||
20 | os.path.basename(old_configure)) | ||
21 | |||
22 | - refresh = True | ||
23 | + refresh = False | ||
24 | if exists(old_configure): | ||
25 | mtime = getmtime(old_configure) | ||
26 | aclocal = os.path.join(build_env.topsrcdir, 'build', 'autoconf', | ||
27 | diff --git a/js/src/old-configure b/js/src/old-configure | ||
28 | index 75b00e1..8a8ef52 100644 | ||
29 | --- a/js/src/old-configure | ||
30 | +++ b/js/src/old-configure | ||
31 | @@ -619,7 +619,7 @@ if test -z "$srcdir"; then | ||
32 | ac_prog=$0 | ||
33 | ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` | ||
34 | test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. | ||
35 | - srcdir=$ac_confdir | ||
36 | + srcdir="$ac_confdir/../../" | ||
37 | if test ! -r $srcdir/$ac_unique_file; then | ||
38 | srcdir=.. | ||
39 | fi | ||
40 | -- | ||
41 | 2.7.4 | ||
42 | |||
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 8bd35d405..000000000 --- a/meta-oe/recipes-extended/mozjs/mozjs/0004-mozbug746112-no-decommit-on-large-pages.patch +++ /dev/null | |||
@@ -1,103 +0,0 @@ | |||
1 | From 0128c5a9eeee0d3fc0deb9129dd20eb79338c8f4 Mon Sep 17 00:00:00 2001 | ||
2 | From: Koen Kooi <koen.kooi@linaro.org> | ||
3 | Date: Mon, 2 Mar 2015 19:08:59 +0800 | ||
4 | Subject: [PATCH 4/5] mozbug746112-no-decommit-on-large-pages | ||
5 | |||
6 | --- | ||
7 | Upstream-status: Pending | ||
8 | |||
9 | js/src/gc/Heap.h | 15 ++++++++++----- | ||
10 | js/src/jsgc.cpp | 15 ++++++++++++--- | ||
11 | 2 files changed, 22 insertions(+), 8 deletions(-) | ||
12 | |||
13 | diff --git a/js/src/gc/Heap.h b/js/src/gc/Heap.h | ||
14 | index b8f8c78..1cfd269 100644 | ||
15 | --- a/js/src/gc/Heap.h | ||
16 | +++ b/js/src/gc/Heap.h | ||
17 | @@ -103,26 +103,31 @@ struct Cell | ||
18 | }; | ||
19 | |||
20 | /* | ||
21 | - * Page size is 4096 by default, except for SPARC, where it is 8192. | ||
22 | + * Page size must be static to support our arena pointer optimizations, so we | ||
23 | + * are forced to support each platform with non-4096 pages as a special case. | ||
24 | + * Note: The freelist supports a maximum arena shift of 15. | ||
25 | * Note: Do not use JS_CPU_SPARC here, this header is used outside JS. | ||
26 | * Bug 692267: Move page size definition to gc/Memory.h and include it | ||
27 | * directly once jsgc.h is no longer an installed header. | ||
28 | */ | ||
29 | #if defined(SOLARIS) && (defined(__sparc) || defined(__sparcv9)) | ||
30 | const size_t PageShift = 13; | ||
31 | +const size_t ArenaShift = PageShift; | ||
32 | +#elif defined(__powerpc__) | ||
33 | +const size_t PageShift = 16; | ||
34 | +const size_t ArenaShift = 12; | ||
35 | #else | ||
36 | const size_t PageShift = 12; | ||
37 | +const size_t ArenaShift = PageShift; | ||
38 | #endif | ||
39 | const size_t PageSize = size_t(1) << PageShift; | ||
40 | +const size_t ArenaSize = size_t(1) << ArenaShift; | ||
41 | +const size_t ArenaMask = ArenaSize - 1; | ||
42 | |||
43 | const size_t ChunkShift = 20; | ||
44 | const size_t ChunkSize = size_t(1) << ChunkShift; | ||
45 | const size_t ChunkMask = ChunkSize - 1; | ||
46 | |||
47 | -const size_t ArenaShift = PageShift; | ||
48 | -const size_t ArenaSize = PageSize; | ||
49 | -const size_t ArenaMask = ArenaSize - 1; | ||
50 | - | ||
51 | /* | ||
52 | * This is the maximum number of arenas we allow in the FreeCommitted state | ||
53 | * before we trigger a GC_SHRINK to release free arenas to the OS. | ||
54 | diff --git a/js/src/jsgc.cpp b/js/src/jsgc.cpp | ||
55 | index b3caf05..a258d2d 100644 | ||
56 | --- a/js/src/jsgc.cpp | ||
57 | +++ b/js/src/jsgc.cpp | ||
58 | @@ -251,6 +251,13 @@ static const int BackgroundPhaseLength[] = { | ||
59 | sizeof(BackgroundPhaseStrings) / sizeof(AllocKind) | ||
60 | }; | ||
61 | |||
62 | +/* Unused memory decommiting requires the arena size match the page size. */ | ||
63 | +static bool | ||
64 | +DecommitEnabled() | ||
65 | +{ | ||
66 | + return PageSize == ArenaSize; | ||
67 | +} | ||
68 | + | ||
69 | #ifdef DEBUG | ||
70 | void | ||
71 | ArenaHeader::checkSynchronizedWithFreeList() const | ||
72 | @@ -742,7 +749,8 @@ Chunk::fetchNextDecommittedArena() | ||
73 | decommittedArenas.unset(offset); | ||
74 | |||
75 | Arena *arena = &arenas[offset]; | ||
76 | - MarkPagesInUse(arena, ArenaSize); | ||
77 | + if (DecommitEnabled()) | ||
78 | + MarkPagesInUse(arena, ArenaSize); | ||
79 | arena->aheader.setAsNotAllocated(); | ||
80 | |||
81 | return &arena->aheader; | ||
82 | @@ -2731,7 +2739,7 @@ DecommitArenasFromAvailableList(JSRuntime *rt, Chunk **availableListHeadp) | ||
83 | chunk->removeFromAvailableList(); | ||
84 | |||
85 | size_t arenaIndex = Chunk::arenaIndex(aheader->arenaAddress()); | ||
86 | - bool ok; | ||
87 | + bool ok = true; | ||
88 | { | ||
89 | /* | ||
90 | * If the main thread waits for the decommit to finish, skip | ||
91 | @@ -2741,7 +2749,8 @@ DecommitArenasFromAvailableList(JSRuntime *rt, Chunk **availableListHeadp) | ||
92 | Maybe<AutoUnlockGC> maybeUnlock; | ||
93 | if (!rt->isHeapBusy()) | ||
94 | maybeUnlock.construct(rt); | ||
95 | - ok = MarkPagesUnused(aheader->getArena(), ArenaSize); | ||
96 | + if (DecommitEnabled()) | ||
97 | + ok = MarkPagesUnused(aheader->getArena(), ArenaSize); | ||
98 | } | ||
99 | |||
100 | if (ok) { | ||
101 | -- | ||
102 | 1.9.3 | ||
103 | |||
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 bc99ecc50..000000000 --- a/meta-oe/recipes-extended/mozjs/mozjs/0005-aarch64-64k-page.patch +++ /dev/null | |||
@@ -1,44 +0,0 @@ | |||
1 | From 9c42920c2b635a399bd1f93833efdeb1696f17ee Mon Sep 17 00:00:00 2001 | ||
2 | From: Koen Kooi <koen.kooi@linaro.org> | ||
3 | Date: Mon, 2 Mar 2015 19:09:57 +0800 | ||
4 | Subject: [PATCH 5/5] aarch64-64k-page | ||
5 | |||
6 | --- | ||
7 | Upstream-status: Pending | ||
8 | |||
9 | js/src/gc/Heap.h | 2 +- | ||
10 | js/src/gc/Memory.cpp | 3 +++ | ||
11 | 2 files changed, 4 insertions(+), 1 deletion(-) | ||
12 | |||
13 | diff --git a/js/src/gc/Heap.h b/js/src/gc/Heap.h | ||
14 | index 1cfd269..f4dbcda 100644 | ||
15 | --- a/js/src/gc/Heap.h | ||
16 | +++ b/js/src/gc/Heap.h | ||
17 | @@ -113,7 +113,7 @@ struct Cell | ||
18 | #if defined(SOLARIS) && (defined(__sparc) || defined(__sparcv9)) | ||
19 | const size_t PageShift = 13; | ||
20 | const size_t ArenaShift = PageShift; | ||
21 | -#elif defined(__powerpc__) | ||
22 | +#elif defined(__powerpc__) || defined(__aarch64__) | ||
23 | const size_t PageShift = 16; | ||
24 | const size_t ArenaShift = 12; | ||
25 | #else | ||
26 | diff --git a/js/src/gc/Memory.cpp b/js/src/gc/Memory.cpp | ||
27 | index 5b386a2..e5ad018 100644 | ||
28 | --- a/js/src/gc/Memory.cpp | ||
29 | +++ b/js/src/gc/Memory.cpp | ||
30 | @@ -302,8 +302,11 @@ GetPageFaultCount() | ||
31 | void | ||
32 | InitMemorySubsystem() | ||
33 | { | ||
34 | + /* aarch64 may have 64KB or 4KB pages */ | ||
35 | +#ifndef __aarch64__ | ||
36 | if (size_t(sysconf(_SC_PAGESIZE)) != PageSize) | ||
37 | MOZ_CRASH(); | ||
38 | +#endif | ||
39 | } | ||
40 | |||
41 | void * | ||
42 | -- | ||
43 | 1.9.3 | ||
44 | |||
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 000000000..38e4698f2 --- /dev/null +++ b/meta-oe/recipes-extended/mozjs/mozjs/0005-fix-do_compile-failed-on-mips.patch | |||
@@ -0,0 +1,38 @@ | |||
1 | From 55d833dc3c194f1eb7841f308ad3b9ec3800d3b3 Mon Sep 17 00:00:00 2001 | ||
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
3 | Date: Fri, 13 Jul 2018 15:48:32 +0800 | ||
4 | Subject: [PATCH 5/5] fix do_compile failed on mips | ||
5 | |||
6 | Link with var-OS_LDFLAGS to fix the issue. | ||
7 | Such as on mips: | ||
8 | ... | ||
9 | |mips-wrsmllib32-linux-g++ -meb -mabi=32 -mhard-float ... -o libmozjs-52.so | ||
10 | |/usr/include/c++/8.1.0/bits/atomic_base.h:514: error: undefined | ||
11 | reference to '__atomic_fetch_add_8' | ||
12 | ... | ||
13 | |||
14 | In recipe, set OS_LDFLAGS="-Wl,-latomic" could fix the issue. | ||
15 | |||
16 | Upstream-Status: Inappropriate [oe specific] | ||
17 | |||
18 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
19 | --- | ||
20 | config/config.mk | 2 +- | ||
21 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
22 | |||
23 | diff --git a/config/config.mk b/config/config.mk | ||
24 | index 4e3fd1a..d847ffa 100644 | ||
25 | --- a/config/config.mk | ||
26 | +++ b/config/config.mk | ||
27 | @@ -523,7 +523,7 @@ EXPAND_MKSHLIB_ARGS = --uselist | ||
28 | ifdef SYMBOL_ORDER | ||
29 | EXPAND_MKSHLIB_ARGS += --symbol-order $(SYMBOL_ORDER) | ||
30 | endif | ||
31 | -EXPAND_MKSHLIB = $(EXPAND_LIBS_EXEC) $(EXPAND_MKSHLIB_ARGS) -- $(MKSHLIB) | ||
32 | +EXPAND_MKSHLIB = $(EXPAND_LIBS_EXEC) $(EXPAND_MKSHLIB_ARGS) -- $(MKSHLIB) $(OS_LDFLAGS) | ||
33 | |||
34 | # $(call CHECK_SYMBOLS,lib,PREFIX,dep_name,test) | ||
35 | # Checks that the given `lib` doesn't contain dependency on symbols with a | ||
36 | -- | ||
37 | 2.7.4 | ||
38 | |||
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 000000000..32a977ce2 --- /dev/null +++ b/meta-oe/recipes-extended/mozjs/mozjs/0006-support-musl.patch | |||
@@ -0,0 +1,158 @@ | |||
1 | From 04e8a611e958f0da1ccac61acae3a6f1a5168b20 Mon Sep 17 00:00:00 2001 | ||
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
3 | Date: Fri, 13 Jul 2018 18:08:14 +0800 | ||
4 | Subject: [PATCH] support musl | ||
5 | |||
6 | Upstream-Status: Pending | ||
7 | |||
8 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
9 | --- | ||
10 | memory/jemalloc/src/src/pages.c | 1 - | ||
11 | memory/mozjemalloc/jemalloc.c | 7 +++---- | ||
12 | mozglue/misc/TimeStamp_darwin.cpp | 1 - | ||
13 | mozglue/misc/TimeStamp_posix.cpp | 1 - | ||
14 | nsprpub/pr/src/misc/prsystem.c | 1 - | ||
15 | python/psutil/psutil/_psutil_bsd.c | 1 - | ||
16 | python/psutil/psutil/_psutil_osx.c | 1 - | ||
17 | python/psutil/psutil/arch/bsd/process_info.c | 1 - | ||
18 | python/psutil/psutil/arch/osx/process_info.c | 1 - | ||
19 | 9 files changed, 3 insertions(+), 12 deletions(-) | ||
20 | |||
21 | diff --git a/memory/jemalloc/src/src/pages.c b/memory/jemalloc/src/src/pages.c | ||
22 | index 647952a..7b964c8 100644 | ||
23 | --- a/memory/jemalloc/src/src/pages.c | ||
24 | +++ b/memory/jemalloc/src/src/pages.c | ||
25 | @@ -2,7 +2,6 @@ | ||
26 | #include "jemalloc/internal/jemalloc_internal.h" | ||
27 | |||
28 | #ifdef JEMALLOC_SYSCTL_VM_OVERCOMMIT | ||
29 | -#include <sys/sysctl.h> | ||
30 | #endif | ||
31 | |||
32 | /******************************************************************************/ | ||
33 | diff --git a/memory/mozjemalloc/jemalloc.c b/memory/mozjemalloc/jemalloc.c | ||
34 | index 5d4d83a..c618de9 100644 | ||
35 | --- a/memory/mozjemalloc/jemalloc.c | ||
36 | +++ b/memory/mozjemalloc/jemalloc.c | ||
37 | @@ -332,7 +332,6 @@ __FBSDID("$FreeBSD: head/lib/libc/stdlib/malloc.c 180599 2008-07-18 19:35:44Z ja | ||
38 | #include <sys/time.h> | ||
39 | #include <sys/types.h> | ||
40 | #if !defined(MOZ_MEMORY_SOLARIS) && !defined(MOZ_MEMORY_ANDROID) | ||
41 | -#include <sys/sysctl.h> | ||
42 | #endif | ||
43 | #include <sys/uio.h> | ||
44 | #ifndef MOZ_MEMORY | ||
45 | @@ -674,7 +673,7 @@ static bool malloc_initialized = false; | ||
46 | #elif defined(MOZ_MEMORY_DARWIN) | ||
47 | static malloc_mutex_t init_lock = {OS_SPINLOCK_INIT}; | ||
48 | #elif defined(MOZ_MEMORY_LINUX) && !defined(MOZ_MEMORY_ANDROID) | ||
49 | -static malloc_mutex_t init_lock = PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP; | ||
50 | +static malloc_mutex_t init_lock = PTHREAD_MUTEX_INITIALIZER; | ||
51 | #elif defined(MOZ_MEMORY) | ||
52 | static malloc_mutex_t init_lock = PTHREAD_MUTEX_INITIALIZER; | ||
53 | #else | ||
54 | @@ -1644,7 +1643,7 @@ malloc_mutex_init(malloc_mutex_t *mutex) | ||
55 | pthread_mutexattr_t attr; | ||
56 | if (pthread_mutexattr_init(&attr) != 0) | ||
57 | return (true); | ||
58 | - pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_ADAPTIVE_NP); | ||
59 | + pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_STALLED); | ||
60 | if (pthread_mutex_init(mutex, &attr) != 0) { | ||
61 | pthread_mutexattr_destroy(&attr); | ||
62 | return (true); | ||
63 | @@ -1709,7 +1708,7 @@ malloc_spin_init(malloc_spinlock_t *lock) | ||
64 | pthread_mutexattr_t attr; | ||
65 | if (pthread_mutexattr_init(&attr) != 0) | ||
66 | return (true); | ||
67 | - pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_ADAPTIVE_NP); | ||
68 | + pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_STALLED); | ||
69 | if (pthread_mutex_init(lock, &attr) != 0) { | ||
70 | pthread_mutexattr_destroy(&attr); | ||
71 | return (true); | ||
72 | diff --git a/mozglue/misc/TimeStamp_darwin.cpp b/mozglue/misc/TimeStamp_darwin.cpp | ||
73 | index f30bc98..3998c9c 100644 | ||
74 | --- a/mozglue/misc/TimeStamp_darwin.cpp | ||
75 | +++ b/mozglue/misc/TimeStamp_darwin.cpp | ||
76 | @@ -18,7 +18,6 @@ | ||
77 | |||
78 | #include <mach/mach_time.h> | ||
79 | #include <sys/time.h> | ||
80 | -#include <sys/sysctl.h> | ||
81 | #include <time.h> | ||
82 | #include <unistd.h> | ||
83 | |||
84 | diff --git a/mozglue/misc/TimeStamp_posix.cpp b/mozglue/misc/TimeStamp_posix.cpp | ||
85 | index 05dedde..d9e30f2 100644 | ||
86 | --- a/mozglue/misc/TimeStamp_posix.cpp | ||
87 | +++ b/mozglue/misc/TimeStamp_posix.cpp | ||
88 | @@ -21,7 +21,6 @@ | ||
89 | #if defined(__DragonFly__) || defined(__FreeBSD__) \ | ||
90 | || defined(__NetBSD__) || defined(__OpenBSD__) | ||
91 | #include <sys/param.h> | ||
92 | -#include <sys/sysctl.h> | ||
93 | #endif | ||
94 | |||
95 | #if defined(__DragonFly__) || defined(__FreeBSD__) | ||
96 | diff --git a/nsprpub/pr/src/misc/prsystem.c b/nsprpub/pr/src/misc/prsystem.c | ||
97 | index eba85fb..54b57bb 100644 | ||
98 | --- a/nsprpub/pr/src/misc/prsystem.c | ||
99 | +++ b/nsprpub/pr/src/misc/prsystem.c | ||
100 | @@ -27,7 +27,6 @@ | ||
101 | || defined(OPENBSD) || defined(DRAGONFLY) || defined(DARWIN) | ||
102 | #define _PR_HAVE_SYSCTL | ||
103 | #include <sys/param.h> | ||
104 | -#include <sys/sysctl.h> | ||
105 | #endif | ||
106 | |||
107 | #if defined(DARWIN) | ||
108 | diff --git a/python/psutil/psutil/_psutil_bsd.c b/python/psutil/psutil/_psutil_bsd.c | ||
109 | index 7b6e561..0a91262 100644 | ||
110 | --- a/python/psutil/psutil/_psutil_bsd.c | ||
111 | +++ b/python/psutil/psutil/_psutil_bsd.c | ||
112 | @@ -16,7 +16,6 @@ | ||
113 | #include <fcntl.h> | ||
114 | #include <paths.h> | ||
115 | #include <sys/types.h> | ||
116 | -#include <sys/sysctl.h> | ||
117 | #include <sys/param.h> | ||
118 | #include <sys/user.h> | ||
119 | #include <sys/proc.h> | ||
120 | diff --git a/python/psutil/psutil/_psutil_osx.c b/python/psutil/psutil/_psutil_osx.c | ||
121 | index 3ebf8ff..b3910ba 100644 | ||
122 | --- a/python/psutil/psutil/_psutil_osx.c | ||
123 | +++ b/python/psutil/psutil/_psutil_osx.c | ||
124 | @@ -13,7 +13,6 @@ | ||
125 | #include <stdlib.h> | ||
126 | #include <stdio.h> | ||
127 | #include <utmpx.h> | ||
128 | -#include <sys/sysctl.h> | ||
129 | #include <sys/vmmeter.h> | ||
130 | #include <libproc.h> | ||
131 | #include <sys/proc_info.h> | ||
132 | diff --git a/python/psutil/psutil/arch/bsd/process_info.c b/python/psutil/psutil/arch/bsd/process_info.c | ||
133 | index 4d73924..46f288d 100644 | ||
134 | --- a/python/psutil/psutil/arch/bsd/process_info.c | ||
135 | +++ b/python/psutil/psutil/arch/bsd/process_info.c | ||
136 | @@ -15,7 +15,6 @@ | ||
137 | #include <stdio.h> | ||
138 | #include <string.h> | ||
139 | #include <sys/types.h> | ||
140 | -#include <sys/sysctl.h> | ||
141 | #include <sys/param.h> | ||
142 | #include <sys/user.h> | ||
143 | #include <sys/proc.h> | ||
144 | diff --git a/python/psutil/psutil/arch/osx/process_info.c b/python/psutil/psutil/arch/osx/process_info.c | ||
145 | index b6dd5bb..62a838f 100644 | ||
146 | --- a/python/psutil/psutil/arch/osx/process_info.c | ||
147 | +++ b/python/psutil/psutil/arch/osx/process_info.c | ||
148 | @@ -16,7 +16,6 @@ | ||
149 | #include <stdlib.h> | ||
150 | #include <stdio.h> | ||
151 | #include <signal.h> | ||
152 | -#include <sys/sysctl.h> | ||
153 | #include <libproc.h> | ||
154 | |||
155 | #include "process_info.h" | ||
156 | -- | ||
157 | 2.7.4 | ||
158 | |||
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 6432e1fb7..9194e346a 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 @@ | |||
1 | From a452138a1dd274bfad381a701729783360dc86fb Mon Sep 17 00:00:00 2001 | 1 | From a452138a1dd274bfad381a701729783360dc86fb Mon Sep 17 00:00:00 2001 |
2 | From: Maciej Borzecki <maciej.borzecki@open-rnd.pl> | 2 | From: Maciej Borzecki <maciej.borzecki@open-rnd.pl> |
3 | Date: Tue, 5 Jan 2016 22:04:17 +0100 | 3 | Date: Tue, 5 Jan 2016 22:04:17 +0100 |
4 | Subject: [PATCH] fix cross compilation on i586 targets | 4 | Subject: [PATCH] fix cross compilation on i586 targets |
@@ -10,37 +10,26 @@ regenerate configure, similar fix is applied there. | |||
10 | Upstream-Status: Inappropriate [embedded specific] | 10 | Upstream-Status: Inappropriate [embedded specific] |
11 | 11 | ||
12 | Signed-off-by: Maciej Borzecki <maciej.borzecki@open-rnd.pl> | 12 | Signed-off-by: Maciej Borzecki <maciej.borzecki@open-rnd.pl> |
13 | |||
14 | Rebase to 52.8.1 | ||
15 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
13 | --- | 16 | --- |
14 | js/src/configure | 2 +- | 17 | js/src/old-configure | 2 +- |
15 | js/src/configure.in | 2 +- | 18 | 1 file changed, 1 insertion(+), 1 deletion(-) |
16 | 2 files changed, 2 insertions(+), 2 deletions(-) | ||
17 | 19 | ||
18 | diff --git a/js/src/configure b/js/src/configure | 20 | diff --git a/js/src/old-configure b/js/src/old-configure |
19 | index d019b0fdba44233596541de94307010d85a8e32e..5aa40f757a3dbb7d6887175046f44212c15c2eac 100755 | 21 | index 8a8ef52..d7afcff 100644 |
20 | --- a/js/src/configure | 22 | --- a/js/src/old-configure |
21 | +++ b/js/src/configure | 23 | +++ b/js/src/old-configure |
22 | @@ -5555,7 +5555,7 @@ TARGET_MD_ARCH=unix | 24 | @@ -3964,7 +3964,7 @@ IMPORT_LIB_SUFFIX= |
23 | DIRENT_INO=d_ino | 25 | DIRENT_INO=d_ino |
24 | MOZ_USER_DIR=".mozilla" | 26 | MOZ_USER_DIR=".mozilla" |
25 | 27 | ||
26 | -MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin -Wl,-rpath-link,$(prefix)/lib' | 28 | -MOZ_FIX_LINK_PATHS="-Wl,-rpath-link,${DIST}/bin -Wl,-rpath-link,${prefix}/lib" |
27 | +MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin' | 29 | +MOZ_FIX_LINK_PATHS="-Wl,-rpath-link,${DIST}/bin" |
28 | |||
29 | MOZ_COMPONENT_NSPR_LIBS='-L$(LIBXUL_DIST)/bin $(NSPR_LIBS)' | ||
30 | |||
31 | diff --git a/js/src/configure.in b/js/src/configure.in | ||
32 | index 0673aca12f6d83035549ade2a4a83906bf91f0f0..39b22724f9535ac1a6dba04658c91e4ef667fc47 100644 | ||
33 | --- a/js/src/configure.in | ||
34 | +++ b/js/src/configure.in | ||
35 | @@ -919,7 +919,7 @@ TARGET_MD_ARCH=unix | ||
36 | DIRENT_INO=d_ino | ||
37 | MOZ_USER_DIR=".mozilla" | ||
38 | 30 | ||
39 | -MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin -Wl,-rpath-link,$(prefix)/lib' | ||
40 | +MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin' | ||
41 | 31 | ||
42 | MOZ_COMPONENT_NSPR_LIBS='-L$(LIBXUL_DIST)/bin $(NSPR_LIBS)' | ||
43 | 32 | ||
44 | -- | 33 | -- |
45 | 2.5.0 | 34 | 2.7.4 |
46 | 35 | ||
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 83f454319..000000000 --- a/meta-oe/recipes-extended/mozjs/mozjs/Manually_mmap_heap_memory_esr17.patch +++ /dev/null | |||
@@ -1,112 +0,0 @@ | |||
1 | From 1d1fa95c8ff7697e46343385a79a8f7e5c514a87 Mon Sep 17 00:00:00 2001 | ||
2 | From: Zheng Xu <zheng.xu@linaro.org> | ||
3 | Date: Fri, 2 Sep 2016 17:40:05 +0800 | ||
4 | Subject: [PATCH] Bug 1143022 - Manually mmap on arm64 to ensure high 17 bits | ||
5 | are clear. r=ehoogeveen | ||
6 | |||
7 | There might be 48-bit VA on arm64 depending on kernel configuration. | ||
8 | Manually mmap heap memory to align with the assumption made by JS engine. | ||
9 | |||
10 | Change-Id: Ic5d2b2fe4b758b3c87cc0688348af7e71a991146 | ||
11 | |||
12 | Upstream-status: Backport | ||
13 | |||
14 | --- | ||
15 | js/src/gc/Memory.cpp | 73 ++++++++++++++++++++++++++++++++++++++++++++++++++-- | ||
16 | 1 file changed, 71 insertions(+), 2 deletions(-) | ||
17 | |||
18 | diff --git a/js/src/gc/Memory.cpp b/js/src/gc/Memory.cpp | ||
19 | index e5ad018..4149adf 100644 | ||
20 | --- a/js/src/gc/Memory.cpp | ||
21 | +++ b/js/src/gc/Memory.cpp | ||
22 | @@ -309,6 +309,75 @@ InitMemorySubsystem() | ||
23 | #endif | ||
24 | } | ||
25 | |||
26 | +static inline void * | ||
27 | +MapMemory(size_t length, int prot, int flags, int fd, off_t offset) | ||
28 | +{ | ||
29 | +#if defined(__ia64__) | ||
30 | + /* | ||
31 | + * The JS engine assumes that all allocated pointers have their high 17 bits clear, | ||
32 | + * which ia64's mmap doesn't support directly. However, we can emulate it by passing | ||
33 | + * mmap an "addr" parameter with those bits clear. The mmap will return that address, | ||
34 | + * or the nearest available memory above that address, providing a near-guarantee | ||
35 | + * that those bits are clear. If they are not, we return NULL below to indicate | ||
36 | + * out-of-memory. | ||
37 | + * | ||
38 | + * The addr is chosen as 0x0000070000000000, which still allows about 120TB of virtual | ||
39 | + * address space. | ||
40 | + * | ||
41 | + * See Bug 589735 for more information. | ||
42 | + */ | ||
43 | + void *region = mmap((void*)0x0000070000000000, length, prot, flags, fd, offset); | ||
44 | + if (region == MAP_FAILED) | ||
45 | + return MAP_FAILED; | ||
46 | + /* | ||
47 | + * If the allocated memory doesn't have its upper 17 bits clear, consider it | ||
48 | + * as out of memory. | ||
49 | + */ | ||
50 | + if ((uintptr_t(region) + (length - 1)) & 0xffff800000000000) { | ||
51 | + JS_ALWAYS_TRUE(0 == munmap(region, length)); | ||
52 | + return MAP_FAILED; | ||
53 | + } | ||
54 | + return region; | ||
55 | +#elif defined(__aarch64__) | ||
56 | + /* | ||
57 | + * There might be similar virtual address issue on arm64 which depends on | ||
58 | + * hardware and kernel configurations. But the work around is slightly | ||
59 | + * different due to the different mmap behavior. | ||
60 | + * | ||
61 | + * TODO: Merge with the above code block if this implementation works for | ||
62 | + * ia64 and sparc64. | ||
63 | + */ | ||
64 | + const uintptr_t start = UINT64_C(0x0000070000000000); | ||
65 | + const uintptr_t end = UINT64_C(0x0000800000000000); | ||
66 | + const uintptr_t step = ChunkSize; | ||
67 | + /* | ||
68 | + * Optimization options if there are too many retries in practice: | ||
69 | + * 1. Examine /proc/self/maps to find an available address. This file is | ||
70 | + * not always available, however. In addition, even if we examine | ||
71 | + * /proc/self/maps, we may still need to retry several times due to | ||
72 | + * racing with other threads. | ||
73 | + * 2. Use a global/static variable with lock to track the addresses we have | ||
74 | + * allocated or tried. | ||
75 | + */ | ||
76 | + uintptr_t hint; | ||
77 | + void* region = MAP_FAILED; | ||
78 | + for (hint = start; region == MAP_FAILED && hint + length <= end; hint += step) { | ||
79 | + region = mmap((void*)hint, length, prot, flags, fd, offset); | ||
80 | + if (region != MAP_FAILED) { | ||
81 | + if ((uintptr_t(region) + (length - 1)) & 0xffff800000000000) { | ||
82 | + if (munmap(region, length)) { | ||
83 | + MOZ_ASSERT(errno == ENOMEM); | ||
84 | + } | ||
85 | + region = MAP_FAILED; | ||
86 | + } | ||
87 | + } | ||
88 | + } | ||
89 | + return region == MAP_FAILED ? NULL : region; | ||
90 | +#else | ||
91 | + return mmap(NULL, length, prot, flags, fd, offset); | ||
92 | +#endif | ||
93 | +} | ||
94 | + | ||
95 | void * | ||
96 | MapAlignedPages(size_t size, size_t alignment) | ||
97 | { | ||
98 | @@ -322,12 +391,12 @@ MapAlignedPages(size_t size, size_t alignment) | ||
99 | |||
100 | /* Special case: If we want page alignment, no further work is needed. */ | ||
101 | if (alignment == PageSize) { | ||
102 | - return mmap(NULL, size, prot, flags, -1, 0); | ||
103 | + return MapMemory(size, prot, flags, -1, 0); | ||
104 | } | ||
105 | |||
106 | /* Overallocate and unmap the region's edges. */ | ||
107 | size_t reqSize = Min(size + 2 * alignment, 2 * size); | ||
108 | - void *region = mmap(NULL, reqSize, prot, flags, -1, 0); | ||
109 | + void *region = MapMemory(reqSize, prot, flags, -1, 0); | ||
110 | if (region == MAP_FAILED) | ||
111 | return NULL; | ||
112 | |||
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 c5979c97b..000000000 --- a/meta-oe/recipes-extended/mozjs/mozjs/Update-Double-Conversion.patch +++ /dev/null | |||
@@ -1,1732 +0,0 @@ | |||
1 | From b4961d6e1d273dd9643fc3c055163d5cd3362fb7 Mon Sep 17 00:00:00 2001 | ||
2 | From: Alistair Francis <alistair.francis@wdc.com> | ||
3 | Date: Fri, 1 Jun 2018 14:47:31 -0700 | ||
4 | Subject: [PATCH] Update double conversion | ||
5 | |||
6 | Signed-off-by: Alistair Francis <alistair.francis@wdc.com> | ||
7 | --- | ||
8 | mfbt/double-conversion/COPYING | 26 ++ | ||
9 | mfbt/double-conversion/bignum-dtoa.cc | 19 +- | ||
10 | mfbt/double-conversion/bignum-dtoa.h | 2 +- | ||
11 | mfbt/double-conversion/bignum.cc | 39 +-- | ||
12 | mfbt/double-conversion/bignum.h | 5 +- | ||
13 | mfbt/double-conversion/cached-powers.cc | 14 +- | ||
14 | mfbt/double-conversion/cached-powers.h | 2 +- | ||
15 | mfbt/double-conversion/diy-fp.cc | 4 +- | ||
16 | mfbt/double-conversion/diy-fp.h | 24 +- | ||
17 | mfbt/double-conversion/double-conversion.cc | 293 ++++++++++++++------ | ||
18 | mfbt/double-conversion/double-conversion.h | 78 +++--- | ||
19 | mfbt/double-conversion/fast-dtoa.cc | 29 +- | ||
20 | mfbt/double-conversion/fast-dtoa.h | 2 +- | ||
21 | mfbt/double-conversion/fixed-dtoa.cc | 23 +- | ||
22 | mfbt/double-conversion/fixed-dtoa.h | 2 +- | ||
23 | mfbt/double-conversion/ieee.h | 8 +- | ||
24 | mfbt/double-conversion/strtod.cc | 59 ++-- | ||
25 | mfbt/double-conversion/strtod.h | 2 +- | ||
26 | mfbt/double-conversion/utils.h | 62 +++-- | ||
27 | 19 files changed, 465 insertions(+), 228 deletions(-) | ||
28 | create mode 100644 mfbt/double-conversion/COPYING | ||
29 | |||
30 | diff --git a/mfbt/double-conversion/COPYING b/mfbt/double-conversion/COPYING | ||
31 | new file mode 100644 | ||
32 | index 0000000..933718a | ||
33 | --- /dev/null | ||
34 | +++ b/mfbt/double-conversion/COPYING | ||
35 | @@ -0,0 +1,26 @@ | ||
36 | +Copyright 2006-2011, the V8 project authors. All rights reserved. | ||
37 | +Redistribution and use in source and binary forms, with or without | ||
38 | +modification, are permitted provided that the following conditions are | ||
39 | +met: | ||
40 | + | ||
41 | + * Redistributions of source code must retain the above copyright | ||
42 | + notice, this list of conditions and the following disclaimer. | ||
43 | + * Redistributions in binary form must reproduce the above | ||
44 | + copyright notice, this list of conditions and the following | ||
45 | + disclaimer in the documentation and/or other materials provided | ||
46 | + with the distribution. | ||
47 | + * Neither the name of Google Inc. nor the names of its | ||
48 | + contributors may be used to endorse or promote products derived | ||
49 | + from this software without specific prior written permission. | ||
50 | + | ||
51 | +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | ||
52 | +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | ||
53 | +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | ||
54 | +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | ||
55 | +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | ||
56 | +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | ||
57 | +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||
58 | +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | ||
59 | +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
60 | +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | ||
61 | +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
62 | diff --git a/mfbt/double-conversion/bignum-dtoa.cc b/mfbt/double-conversion/bignum-dtoa.cc | ||
63 | index b6c2e85..06bdf55 100644 | ||
64 | --- a/mfbt/double-conversion/bignum-dtoa.cc | ||
65 | +++ b/mfbt/double-conversion/bignum-dtoa.cc | ||
66 | @@ -25,12 +25,12 @@ | ||
67 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | ||
68 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
69 | |||
70 | -#include <math.h> | ||
71 | +#include <cmath> | ||
72 | |||
73 | -#include "bignum-dtoa.h" | ||
74 | +#include <bignum-dtoa.h> | ||
75 | |||
76 | -#include "bignum.h" | ||
77 | -#include "ieee.h" | ||
78 | +#include <bignum.h> | ||
79 | +#include <ieee.h> | ||
80 | |||
81 | namespace double_conversion { | ||
82 | |||
83 | @@ -192,13 +192,13 @@ static void GenerateShortestDigits(Bignum* numerator, Bignum* denominator, | ||
84 | delta_plus = delta_minus; | ||
85 | } | ||
86 | *length = 0; | ||
87 | - while (true) { | ||
88 | + for (;;) { | ||
89 | uint16_t digit; | ||
90 | digit = numerator->DivideModuloIntBignum(*denominator); | ||
91 | ASSERT(digit <= 9); // digit is a uint16_t and therefore always positive. | ||
92 | // digit = numerator / denominator (integer division). | ||
93 | // numerator = numerator % denominator. | ||
94 | - buffer[(*length)++] = digit + '0'; | ||
95 | + buffer[(*length)++] = static_cast<char>(digit + '0'); | ||
96 | |||
97 | // Can we stop already? | ||
98 | // If the remainder of the division is less than the distance to the lower | ||
99 | @@ -282,7 +282,7 @@ static void GenerateShortestDigits(Bignum* numerator, Bignum* denominator, | ||
100 | // exponent (decimal_point), when rounding upwards. | ||
101 | static void GenerateCountedDigits(int count, int* decimal_point, | ||
102 | Bignum* numerator, Bignum* denominator, | ||
103 | - Vector<char>(buffer), int* length) { | ||
104 | + Vector<char> buffer, int* length) { | ||
105 | ASSERT(count >= 0); | ||
106 | for (int i = 0; i < count - 1; ++i) { | ||
107 | uint16_t digit; | ||
108 | @@ -290,7 +290,7 @@ static void GenerateCountedDigits(int count, int* decimal_point, | ||
109 | ASSERT(digit <= 9); // digit is a uint16_t and therefore always positive. | ||
110 | // digit = numerator / denominator (integer division). | ||
111 | // numerator = numerator % denominator. | ||
112 | - buffer[i] = digit + '0'; | ||
113 | + buffer[i] = static_cast<char>(digit + '0'); | ||
114 | // Prepare for next iteration. | ||
115 | numerator->Times10(); | ||
116 | } | ||
117 | @@ -300,7 +300,8 @@ static void GenerateCountedDigits(int count, int* decimal_point, | ||
118 | if (Bignum::PlusCompare(*numerator, *numerator, *denominator) >= 0) { | ||
119 | digit++; | ||
120 | } | ||
121 | - buffer[count - 1] = digit + '0'; | ||
122 | + ASSERT(digit <= 10); | ||
123 | + buffer[count - 1] = static_cast<char>(digit + '0'); | ||
124 | // Correct bad digits (in case we had a sequence of '9's). Propagate the | ||
125 | // carry until we hat a non-'9' or til we reach the first digit. | ||
126 | for (int i = count - 1; i > 0; --i) { | ||
127 | diff --git a/mfbt/double-conversion/bignum-dtoa.h b/mfbt/double-conversion/bignum-dtoa.h | ||
128 | index 34b9619..88d936a 100644 | ||
129 | --- a/mfbt/double-conversion/bignum-dtoa.h | ||
130 | +++ b/mfbt/double-conversion/bignum-dtoa.h | ||
131 | @@ -28,7 +28,7 @@ | ||
132 | #ifndef DOUBLE_CONVERSION_BIGNUM_DTOA_H_ | ||
133 | #define DOUBLE_CONVERSION_BIGNUM_DTOA_H_ | ||
134 | |||
135 | -#include "utils.h" | ||
136 | +#include <utils.h> | ||
137 | |||
138 | namespace double_conversion { | ||
139 | |||
140 | diff --git a/mfbt/double-conversion/bignum.cc b/mfbt/double-conversion/bignum.cc | ||
141 | index 747491a..4786c2e 100644 | ||
142 | --- a/mfbt/double-conversion/bignum.cc | ||
143 | +++ b/mfbt/double-conversion/bignum.cc | ||
144 | @@ -25,13 +25,13 @@ | ||
145 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | ||
146 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
147 | |||
148 | -#include "bignum.h" | ||
149 | -#include "utils.h" | ||
150 | +#include <bignum.h> | ||
151 | +#include <utils.h> | ||
152 | |||
153 | namespace double_conversion { | ||
154 | |||
155 | Bignum::Bignum() | ||
156 | - : bigits_(bigits_buffer_, kBigitCapacity), used_digits_(0), exponent_(0) { | ||
157 | + : bigits_buffer_(), bigits_(bigits_buffer_, kBigitCapacity), used_digits_(0), exponent_(0) { | ||
158 | for (int i = 0; i < kBigitCapacity; ++i) { | ||
159 | bigits_[i] = 0; | ||
160 | } | ||
161 | @@ -40,6 +40,7 @@ Bignum::Bignum() | ||
162 | |||
163 | template<typename S> | ||
164 | static int BitSize(S value) { | ||
165 | + (void) value; // Mark variable as used. | ||
166 | return 8 * sizeof(value); | ||
167 | } | ||
168 | |||
169 | @@ -103,7 +104,7 @@ void Bignum::AssignDecimalString(Vector<const char> value) { | ||
170 | const int kMaxUint64DecimalDigits = 19; | ||
171 | Zero(); | ||
172 | int length = value.length(); | ||
173 | - int pos = 0; | ||
174 | + unsigned int pos = 0; | ||
175 | // Let's just say that each digit needs 4 bits. | ||
176 | while (length >= kMaxUint64DecimalDigits) { | ||
177 | uint64_t digits = ReadUInt64(value, pos, kMaxUint64DecimalDigits); | ||
178 | @@ -122,9 +123,8 @@ void Bignum::AssignDecimalString(Vector<const char> value) { | ||
179 | static int HexCharValue(char c) { | ||
180 | if ('0' <= c && c <= '9') return c - '0'; | ||
181 | if ('a' <= c && c <= 'f') return 10 + c - 'a'; | ||
182 | - if ('A' <= c && c <= 'F') return 10 + c - 'A'; | ||
183 | - UNREACHABLE(); | ||
184 | - return 0; // To make compiler happy. | ||
185 | + ASSERT('A' <= c && c <= 'F'); | ||
186 | + return 10 + c - 'A'; | ||
187 | } | ||
188 | |||
189 | |||
190 | @@ -445,26 +445,27 @@ void Bignum::AssignPowerUInt16(uint16_t base, int power_exponent) { | ||
191 | mask >>= 2; | ||
192 | uint64_t this_value = base; | ||
193 | |||
194 | - bool delayed_multipliciation = false; | ||
195 | + bool delayed_multiplication = false; | ||
196 | const uint64_t max_32bits = 0xFFFFFFFF; | ||
197 | while (mask != 0 && this_value <= max_32bits) { | ||
198 | this_value = this_value * this_value; | ||
199 | // Verify that there is enough space in this_value to perform the | ||
200 | // multiplication. The first bit_size bits must be 0. | ||
201 | if ((power_exponent & mask) != 0) { | ||
202 | + ASSERT(bit_size > 0); | ||
203 | uint64_t base_bits_mask = | ||
204 | ~((static_cast<uint64_t>(1) << (64 - bit_size)) - 1); | ||
205 | bool high_bits_zero = (this_value & base_bits_mask) == 0; | ||
206 | if (high_bits_zero) { | ||
207 | this_value *= base; | ||
208 | } else { | ||
209 | - delayed_multipliciation = true; | ||
210 | + delayed_multiplication = true; | ||
211 | } | ||
212 | } | ||
213 | mask >>= 1; | ||
214 | } | ||
215 | AssignUInt64(this_value); | ||
216 | - if (delayed_multipliciation) { | ||
217 | + if (delayed_multiplication) { | ||
218 | MultiplyByUInt32(base); | ||
219 | } | ||
220 | |||
221 | @@ -501,13 +502,14 @@ uint16_t Bignum::DivideModuloIntBignum(const Bignum& other) { | ||
222 | // Start by removing multiples of 'other' until both numbers have the same | ||
223 | // number of digits. | ||
224 | while (BigitLength() > other.BigitLength()) { | ||
225 | - // This naive approach is extremely inefficient if the this divided other | ||
226 | - // might be big. This function is implemented for doubleToString where | ||
227 | + // This naive approach is extremely inefficient if `this` divided by other | ||
228 | + // is big. This function is implemented for doubleToString where | ||
229 | // the result should be small (less than 10). | ||
230 | ASSERT(other.bigits_[other.used_digits_ - 1] >= ((1 << kBigitSize) / 16)); | ||
231 | + ASSERT(bigits_[used_digits_ - 1] < 0x10000); | ||
232 | // Remove the multiples of the first digit. | ||
233 | // Example this = 23 and other equals 9. -> Remove 2 multiples. | ||
234 | - result += bigits_[used_digits_ - 1]; | ||
235 | + result += static_cast<uint16_t>(bigits_[used_digits_ - 1]); | ||
236 | SubtractTimes(other, bigits_[used_digits_ - 1]); | ||
237 | } | ||
238 | |||
239 | @@ -523,13 +525,15 @@ uint16_t Bignum::DivideModuloIntBignum(const Bignum& other) { | ||
240 | // Shortcut for easy (and common) case. | ||
241 | int quotient = this_bigit / other_bigit; | ||
242 | bigits_[used_digits_ - 1] = this_bigit - other_bigit * quotient; | ||
243 | - result += quotient; | ||
244 | + ASSERT(quotient < 0x10000); | ||
245 | + result += static_cast<uint16_t>(quotient); | ||
246 | Clamp(); | ||
247 | return result; | ||
248 | } | ||
249 | |||
250 | int division_estimate = this_bigit / (other_bigit + 1); | ||
251 | - result += division_estimate; | ||
252 | + ASSERT(division_estimate < 0x10000); | ||
253 | + result += static_cast<uint16_t>(division_estimate); | ||
254 | SubtractTimes(other, division_estimate); | ||
255 | |||
256 | if (other_bigit * (division_estimate + 1) > this_bigit) { | ||
257 | @@ -560,8 +564,8 @@ static int SizeInHexChars(S number) { | ||
258 | |||
259 | static char HexCharOfValue(int value) { | ||
260 | ASSERT(0 <= value && value <= 16); | ||
261 | - if (value < 10) return value + '0'; | ||
262 | - return value - 10 + 'A'; | ||
263 | + if (value < 10) return static_cast<char>(value + '0'); | ||
264 | + return static_cast<char>(value - 10 + 'A'); | ||
265 | } | ||
266 | |||
267 | |||
268 | @@ -755,7 +759,6 @@ void Bignum::SubtractTimes(const Bignum& other, int factor) { | ||
269 | Chunk difference = bigits_[i] - borrow; | ||
270 | bigits_[i] = difference & kBigitMask; | ||
271 | borrow = difference >> (kChunkSize - 1); | ||
272 | - ++i; | ||
273 | } | ||
274 | Clamp(); | ||
275 | } | ||
276 | diff --git a/mfbt/double-conversion/bignum.h b/mfbt/double-conversion/bignum.h | ||
277 | index 5ec3544..4fdad0c 100644 | ||
278 | --- a/mfbt/double-conversion/bignum.h | ||
279 | +++ b/mfbt/double-conversion/bignum.h | ||
280 | @@ -28,7 +28,7 @@ | ||
281 | #ifndef DOUBLE_CONVERSION_BIGNUM_H_ | ||
282 | #define DOUBLE_CONVERSION_BIGNUM_H_ | ||
283 | |||
284 | -#include "utils.h" | ||
285 | +#include <utils.h> | ||
286 | |||
287 | namespace double_conversion { | ||
288 | |||
289 | @@ -49,7 +49,6 @@ class Bignum { | ||
290 | |||
291 | void AssignPowerUInt16(uint16_t base, int exponent); | ||
292 | |||
293 | - void AddUInt16(uint16_t operand); | ||
294 | void AddUInt64(uint64_t operand); | ||
295 | void AddBignum(const Bignum& other); | ||
296 | // Precondition: this >= other. | ||
297 | @@ -137,7 +136,7 @@ class Bignum { | ||
298 | // The Bignum's value equals value(bigits_) * 2^(exponent_ * kBigitSize). | ||
299 | int exponent_; | ||
300 | |||
301 | - DISALLOW_COPY_AND_ASSIGN(Bignum); | ||
302 | + DC_DISALLOW_COPY_AND_ASSIGN(Bignum); | ||
303 | }; | ||
304 | |||
305 | } // namespace double_conversion | ||
306 | diff --git a/mfbt/double-conversion/cached-powers.cc b/mfbt/double-conversion/cached-powers.cc | ||
307 | index c676429..06e819d 100644 | ||
308 | --- a/mfbt/double-conversion/cached-powers.cc | ||
309 | +++ b/mfbt/double-conversion/cached-powers.cc | ||
310 | @@ -25,13 +25,13 @@ | ||
311 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | ||
312 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
313 | |||
314 | -#include <stdarg.h> | ||
315 | -#include <limits.h> | ||
316 | -#include <math.h> | ||
317 | +#include <climits> | ||
318 | +#include <cmath> | ||
319 | +#include <cstdarg> | ||
320 | |||
321 | -#include "utils.h" | ||
322 | +#include <utils.h> | ||
323 | |||
324 | -#include "cached-powers.h" | ||
325 | +#include <cached-powers.h> | ||
326 | |||
327 | namespace double_conversion { | ||
328 | |||
329 | @@ -131,7 +131,6 @@ static const CachedPower kCachedPowers[] = { | ||
330 | {UINT64_2PART_C(0xaf87023b, 9bf0ee6b), 1066, 340}, | ||
331 | }; | ||
332 | |||
333 | -static const int kCachedPowersLength = ARRAY_SIZE(kCachedPowers); | ||
334 | static const int kCachedPowersOffset = 348; // -1 * the first decimal_exponent. | ||
335 | static const double kD_1_LOG2_10 = 0.30102999566398114; // 1 / lg(10) | ||
336 | // Difference between the decimal exponents in the table above. | ||
337 | @@ -149,9 +148,10 @@ void PowersOfTenCache::GetCachedPowerForBinaryExponentRange( | ||
338 | int foo = kCachedPowersOffset; | ||
339 | int index = | ||
340 | (foo + static_cast<int>(k) - 1) / kDecimalExponentDistance + 1; | ||
341 | - ASSERT(0 <= index && index < kCachedPowersLength); | ||
342 | + ASSERT(0 <= index && index < static_cast<int>(ARRAY_SIZE(kCachedPowers))); | ||
343 | CachedPower cached_power = kCachedPowers[index]; | ||
344 | ASSERT(min_exponent <= cached_power.binary_exponent); | ||
345 | + (void) max_exponent; // Mark variable as used. | ||
346 | ASSERT(cached_power.binary_exponent <= max_exponent); | ||
347 | *decimal_exponent = cached_power.decimal_exponent; | ||
348 | *power = DiyFp(cached_power.significand, cached_power.binary_exponent); | ||
349 | diff --git a/mfbt/double-conversion/cached-powers.h b/mfbt/double-conversion/cached-powers.h | ||
350 | index 61a5061..a425d7c 100644 | ||
351 | --- a/mfbt/double-conversion/cached-powers.h | ||
352 | +++ b/mfbt/double-conversion/cached-powers.h | ||
353 | @@ -28,7 +28,7 @@ | ||
354 | #ifndef DOUBLE_CONVERSION_CACHED_POWERS_H_ | ||
355 | #define DOUBLE_CONVERSION_CACHED_POWERS_H_ | ||
356 | |||
357 | -#include "diy-fp.h" | ||
358 | +#include <diy-fp.h> | ||
359 | |||
360 | namespace double_conversion { | ||
361 | |||
362 | diff --git a/mfbt/double-conversion/diy-fp.cc b/mfbt/double-conversion/diy-fp.cc | ||
363 | index ddd1891..f31cf60 100644 | ||
364 | --- a/mfbt/double-conversion/diy-fp.cc | ||
365 | +++ b/mfbt/double-conversion/diy-fp.cc | ||
366 | @@ -26,8 +26,8 @@ | ||
367 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
368 | |||
369 | |||
370 | -#include "diy-fp.h" | ||
371 | -#include "utils.h" | ||
372 | +#include <diy-fp.h> | ||
373 | +#include <utils.h> | ||
374 | |||
375 | namespace double_conversion { | ||
376 | |||
377 | diff --git a/mfbt/double-conversion/diy-fp.h b/mfbt/double-conversion/diy-fp.h | ||
378 | index 9dcf8fb..80a8c4c 100644 | ||
379 | --- a/mfbt/double-conversion/diy-fp.h | ||
380 | +++ b/mfbt/double-conversion/diy-fp.h | ||
381 | @@ -28,7 +28,7 @@ | ||
382 | #ifndef DOUBLE_CONVERSION_DIY_FP_H_ | ||
383 | #define DOUBLE_CONVERSION_DIY_FP_H_ | ||
384 | |||
385 | -#include "utils.h" | ||
386 | +#include <utils.h> | ||
387 | |||
388 | namespace double_conversion { | ||
389 | |||
390 | @@ -42,7 +42,7 @@ class DiyFp { | ||
391 | static const int kSignificandSize = 64; | ||
392 | |||
393 | DiyFp() : f_(0), e_(0) {} | ||
394 | - DiyFp(uint64_t f, int e) : f_(f), e_(e) {} | ||
395 | + DiyFp(uint64_t significand, int exponent) : f_(significand), e_(exponent) {} | ||
396 | |||
397 | // this = this - other. | ||
398 | // The exponents of both numbers must be the same and the significand of this | ||
399 | @@ -76,22 +76,22 @@ class DiyFp { | ||
400 | |||
401 | void Normalize() { | ||
402 | ASSERT(f_ != 0); | ||
403 | - uint64_t f = f_; | ||
404 | - int e = e_; | ||
405 | + uint64_t significand = f_; | ||
406 | + int exponent = e_; | ||
407 | |||
408 | // This method is mainly called for normalizing boundaries. In general | ||
409 | // boundaries need to be shifted by 10 bits. We thus optimize for this case. | ||
410 | const uint64_t k10MSBits = UINT64_2PART_C(0xFFC00000, 00000000); | ||
411 | - while ((f & k10MSBits) == 0) { | ||
412 | - f <<= 10; | ||
413 | - e -= 10; | ||
414 | + while ((significand & k10MSBits) == 0) { | ||
415 | + significand <<= 10; | ||
416 | + exponent -= 10; | ||
417 | } | ||
418 | - while ((f & kUint64MSB) == 0) { | ||
419 | - f <<= 1; | ||
420 | - e--; | ||
421 | + while ((significand & kUint64MSB) == 0) { | ||
422 | + significand <<= 1; | ||
423 | + exponent--; | ||
424 | } | ||
425 | - f_ = f; | ||
426 | - e_ = e; | ||
427 | + f_ = significand; | ||
428 | + e_ = exponent; | ||
429 | } | ||
430 | |||
431 | static DiyFp Normalize(const DiyFp& a) { | ||
432 | diff --git a/mfbt/double-conversion/double-conversion.cc b/mfbt/double-conversion/double-conversion.cc | ||
433 | index 650137b..7819267 100644 | ||
434 | --- a/mfbt/double-conversion/double-conversion.cc | ||
435 | +++ b/mfbt/double-conversion/double-conversion.cc | ||
436 | @@ -25,17 +25,18 @@ | ||
437 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | ||
438 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
439 | |||
440 | -#include <limits.h> | ||
441 | -#include <math.h> | ||
442 | +#include <climits> | ||
443 | +#include <locale> | ||
444 | +#include <cmath> | ||
445 | |||
446 | -#include "double-conversion.h" | ||
447 | +#include <double-conversion.h> | ||
448 | |||
449 | -#include "bignum-dtoa.h" | ||
450 | -#include "fast-dtoa.h" | ||
451 | -#include "fixed-dtoa.h" | ||
452 | -#include "ieee.h" | ||
453 | -#include "strtod.h" | ||
454 | -#include "utils.h" | ||
455 | +#include <bignum-dtoa.h> | ||
456 | +#include <fast-dtoa.h> | ||
457 | +#include <fixed-dtoa.h> | ||
458 | +#include <ieee.h> | ||
459 | +#include <strtod.h> | ||
460 | +#include <utils.h> | ||
461 | |||
462 | namespace double_conversion { | ||
463 | |||
464 | @@ -118,7 +119,7 @@ void DoubleToStringConverter::CreateDecimalRepresentation( | ||
465 | StringBuilder* result_builder) const { | ||
466 | // Create a representation that is padded with zeros if needed. | ||
467 | if (decimal_point <= 0) { | ||
468 | - // "0.00000decimal_rep". | ||
469 | + // "0.00000decimal_rep" or "0.000decimal_rep00". | ||
470 | result_builder->AddCharacter('0'); | ||
471 | if (digits_after_point > 0) { | ||
472 | result_builder->AddCharacter('.'); | ||
473 | @@ -129,7 +130,7 @@ void DoubleToStringConverter::CreateDecimalRepresentation( | ||
474 | result_builder->AddPadding('0', remaining_digits); | ||
475 | } | ||
476 | } else if (decimal_point >= length) { | ||
477 | - // "decimal_rep0000.00000" or "decimal_rep.0000" | ||
478 | + // "decimal_rep0000.00000" or "decimal_rep.0000". | ||
479 | result_builder->AddSubstring(decimal_digits, length); | ||
480 | result_builder->AddPadding('0', decimal_point - length); | ||
481 | if (digits_after_point > 0) { | ||
482 | @@ -137,7 +138,7 @@ void DoubleToStringConverter::CreateDecimalRepresentation( | ||
483 | result_builder->AddPadding('0', digits_after_point); | ||
484 | } | ||
485 | } else { | ||
486 | - // "decima.l_rep000" | ||
487 | + // "decima.l_rep000". | ||
488 | ASSERT(digits_after_point > 0); | ||
489 | result_builder->AddSubstring(decimal_digits, decimal_point); | ||
490 | result_builder->AddCharacter('.'); | ||
491 | @@ -162,7 +163,7 @@ bool DoubleToStringConverter::ToShortestIeeeNumber( | ||
492 | double value, | ||
493 | StringBuilder* result_builder, | ||
494 | DoubleToStringConverter::DtoaMode mode) const { | ||
495 | - assert(mode == SHORTEST || mode == SHORTEST_SINGLE); | ||
496 | + ASSERT(mode == SHORTEST || mode == SHORTEST_SINGLE); | ||
497 | if (Double(value).IsSpecial()) { | ||
498 | return HandleSpecialValues(value, result_builder); | ||
499 | } | ||
500 | @@ -348,7 +349,6 @@ static BignumDtoaMode DtoaToBignumDtoaMode( | ||
501 | case DoubleToStringConverter::PRECISION: return BIGNUM_DTOA_PRECISION; | ||
502 | default: | ||
503 | UNREACHABLE(); | ||
504 | - return BIGNUM_DTOA_SHORTEST; // To silence compiler. | ||
505 | } | ||
506 | } | ||
507 | |||
508 | @@ -403,8 +403,8 @@ void DoubleToStringConverter::DoubleToAscii(double v, | ||
509 | vector, length, point); | ||
510 | break; | ||
511 | default: | ||
512 | - UNREACHABLE(); | ||
513 | fast_worked = false; | ||
514 | + UNREACHABLE(); | ||
515 | } | ||
516 | if (fast_worked) return; | ||
517 | |||
518 | @@ -415,20 +415,55 @@ void DoubleToStringConverter::DoubleToAscii(double v, | ||
519 | } | ||
520 | |||
521 | |||
522 | -// Consumes the given substring from the iterator. | ||
523 | -// Returns false, if the substring does not match. | ||
524 | -static bool ConsumeSubString(const char** current, | ||
525 | - const char* end, | ||
526 | - const char* substring) { | ||
527 | - ASSERT(**current == *substring); | ||
528 | +namespace { | ||
529 | + | ||
530 | +inline char ToLower(char ch) { | ||
531 | + static const std::ctype<char>& cType = | ||
532 | + std::use_facet<std::ctype<char> >(std::locale::classic()); | ||
533 | + return cType.tolower(ch); | ||
534 | +} | ||
535 | + | ||
536 | +inline char Pass(char ch) { | ||
537 | + return ch; | ||
538 | +} | ||
539 | + | ||
540 | +template <class Iterator, class Converter> | ||
541 | +static inline bool ConsumeSubStringImpl(Iterator* current, | ||
542 | + Iterator end, | ||
543 | + const char* substring, | ||
544 | + Converter converter) { | ||
545 | + ASSERT(converter(**current) == *substring); | ||
546 | for (substring++; *substring != '\0'; substring++) { | ||
547 | ++*current; | ||
548 | - if (*current == end || **current != *substring) return false; | ||
549 | + if (*current == end || converter(**current) != *substring) { | ||
550 | + return false; | ||
551 | + } | ||
552 | } | ||
553 | ++*current; | ||
554 | return true; | ||
555 | } | ||
556 | |||
557 | +// Consumes the given substring from the iterator. | ||
558 | +// Returns false, if the substring does not match. | ||
559 | +template <class Iterator> | ||
560 | +static bool ConsumeSubString(Iterator* current, | ||
561 | + Iterator end, | ||
562 | + const char* substring, | ||
563 | + bool allow_case_insensibility) { | ||
564 | + if (allow_case_insensibility) { | ||
565 | + return ConsumeSubStringImpl(current, end, substring, ToLower); | ||
566 | + } else { | ||
567 | + return ConsumeSubStringImpl(current, end, substring, Pass); | ||
568 | + } | ||
569 | +} | ||
570 | + | ||
571 | +// Consumes first character of the str is equal to ch | ||
572 | +inline bool ConsumeFirstCharacter(char ch, | ||
573 | + const char* str, | ||
574 | + bool case_insensibility) { | ||
575 | + return case_insensibility ? ToLower(ch) == str[0] : ch == str[0]; | ||
576 | +} | ||
577 | +} // namespace | ||
578 | |||
579 | // Maximum number of significant digits in decimal representation. | ||
580 | // The longest possible double in decimal representation is | ||
581 | @@ -440,10 +475,36 @@ static bool ConsumeSubString(const char** current, | ||
582 | const int kMaxSignificantDigits = 772; | ||
583 | |||
584 | |||
585 | +static const char kWhitespaceTable7[] = { 32, 13, 10, 9, 11, 12 }; | ||
586 | +static const int kWhitespaceTable7Length = ARRAY_SIZE(kWhitespaceTable7); | ||
587 | + | ||
588 | + | ||
589 | +static const uc16 kWhitespaceTable16[] = { | ||
590 | + 160, 8232, 8233, 5760, 6158, 8192, 8193, 8194, 8195, | ||
591 | + 8196, 8197, 8198, 8199, 8200, 8201, 8202, 8239, 8287, 12288, 65279 | ||
592 | +}; | ||
593 | +static const int kWhitespaceTable16Length = ARRAY_SIZE(kWhitespaceTable16); | ||
594 | + | ||
595 | + | ||
596 | +static bool isWhitespace(int x) { | ||
597 | + if (x < 128) { | ||
598 | + for (int i = 0; i < kWhitespaceTable7Length; i++) { | ||
599 | + if (kWhitespaceTable7[i] == x) return true; | ||
600 | + } | ||
601 | + } else { | ||
602 | + for (int i = 0; i < kWhitespaceTable16Length; i++) { | ||
603 | + if (kWhitespaceTable16[i] == x) return true; | ||
604 | + } | ||
605 | + } | ||
606 | + return false; | ||
607 | +} | ||
608 | + | ||
609 | + | ||
610 | // Returns true if a nonspace found and false if the end has reached. | ||
611 | -static inline bool AdvanceToNonspace(const char** current, const char* end) { | ||
612 | +template <class Iterator> | ||
613 | +static inline bool AdvanceToNonspace(Iterator* current, Iterator end) { | ||
614 | while (*current != end) { | ||
615 | - if (**current != ' ') return true; | ||
616 | + if (!isWhitespace(**current)) return true; | ||
617 | ++*current; | ||
618 | } | ||
619 | return false; | ||
620 | @@ -462,26 +523,57 @@ static double SignedZero(bool sign) { | ||
621 | } | ||
622 | |||
623 | |||
624 | +// Returns true if 'c' is a decimal digit that is valid for the given radix. | ||
625 | +// | ||
626 | +// The function is small and could be inlined, but VS2012 emitted a warning | ||
627 | +// because it constant-propagated the radix and concluded that the last | ||
628 | +// condition was always true. By moving it into a separate function the | ||
629 | +// compiler wouldn't warn anymore. | ||
630 | +#if _MSC_VER | ||
631 | +#pragma optimize("",off) | ||
632 | +static bool IsDecimalDigitForRadix(int c, int radix) { | ||
633 | + return '0' <= c && c <= '9' && (c - '0') < radix; | ||
634 | +} | ||
635 | +#pragma optimize("",on) | ||
636 | +#else | ||
637 | +static bool inline IsDecimalDigitForRadix(int c, int radix) { | ||
638 | + return '0' <= c && c <= '9' && (c - '0') < radix; | ||
639 | +} | ||
640 | +#endif | ||
641 | +// Returns true if 'c' is a character digit that is valid for the given radix. | ||
642 | +// The 'a_character' should be 'a' or 'A'. | ||
643 | +// | ||
644 | +// The function is small and could be inlined, but VS2012 emitted a warning | ||
645 | +// because it constant-propagated the radix and concluded that the first | ||
646 | +// condition was always false. By moving it into a separate function the | ||
647 | +// compiler wouldn't warn anymore. | ||
648 | +static bool IsCharacterDigitForRadix(int c, int radix, char a_character) { | ||
649 | + return radix > 10 && c >= a_character && c < a_character + radix - 10; | ||
650 | +} | ||
651 | + | ||
652 | + | ||
653 | // Parsing integers with radix 2, 4, 8, 16, 32. Assumes current != end. | ||
654 | -template <int radix_log_2> | ||
655 | -static double RadixStringToIeee(const char* current, | ||
656 | - const char* end, | ||
657 | +template <int radix_log_2, class Iterator> | ||
658 | +static double RadixStringToIeee(Iterator* current, | ||
659 | + Iterator end, | ||
660 | bool sign, | ||
661 | bool allow_trailing_junk, | ||
662 | double junk_string_value, | ||
663 | bool read_as_double, | ||
664 | - const char** trailing_pointer) { | ||
665 | - ASSERT(current != end); | ||
666 | + bool* result_is_junk) { | ||
667 | + ASSERT(*current != end); | ||
668 | |||
669 | const int kDoubleSize = Double::kSignificandSize; | ||
670 | const int kSingleSize = Single::kSignificandSize; | ||
671 | const int kSignificandSize = read_as_double? kDoubleSize: kSingleSize; | ||
672 | |||
673 | + *result_is_junk = true; | ||
674 | + | ||
675 | // Skip leading 0s. | ||
676 | - while (*current == '0') { | ||
677 | - ++current; | ||
678 | - if (current == end) { | ||
679 | - *trailing_pointer = end; | ||
680 | + while (**current == '0') { | ||
681 | + ++(*current); | ||
682 | + if (*current == end) { | ||
683 | + *result_is_junk = false; | ||
684 | return SignedZero(sign); | ||
685 | } | ||
686 | } | ||
687 | @@ -492,14 +584,14 @@ static double RadixStringToIeee(const char* current, | ||
688 | |||
689 | do { | ||
690 | int digit; | ||
691 | - if (*current >= '0' && *current <= '9' && *current < '0' + radix) { | ||
692 | - digit = static_cast<char>(*current) - '0'; | ||
693 | - } else if (radix > 10 && *current >= 'a' && *current < 'a' + radix - 10) { | ||
694 | - digit = static_cast<char>(*current) - 'a' + 10; | ||
695 | - } else if (radix > 10 && *current >= 'A' && *current < 'A' + radix - 10) { | ||
696 | - digit = static_cast<char>(*current) - 'A' + 10; | ||
697 | + if (IsDecimalDigitForRadix(**current, radix)) { | ||
698 | + digit = static_cast<char>(**current) - '0'; | ||
699 | + } else if (IsCharacterDigitForRadix(**current, radix, 'a')) { | ||
700 | + digit = static_cast<char>(**current) - 'a' + 10; | ||
701 | + } else if (IsCharacterDigitForRadix(**current, radix, 'A')) { | ||
702 | + digit = static_cast<char>(**current) - 'A' + 10; | ||
703 | } else { | ||
704 | - if (allow_trailing_junk || !AdvanceToNonspace(¤t, end)) { | ||
705 | + if (allow_trailing_junk || !AdvanceToNonspace(current, end)) { | ||
706 | break; | ||
707 | } else { | ||
708 | return junk_string_value; | ||
709 | @@ -523,14 +615,14 @@ static double RadixStringToIeee(const char* current, | ||
710 | exponent = overflow_bits_count; | ||
711 | |||
712 | bool zero_tail = true; | ||
713 | - while (true) { | ||
714 | - ++current; | ||
715 | - if (current == end || !isDigit(*current, radix)) break; | ||
716 | - zero_tail = zero_tail && *current == '0'; | ||
717 | + for (;;) { | ||
718 | + ++(*current); | ||
719 | + if (*current == end || !isDigit(**current, radix)) break; | ||
720 | + zero_tail = zero_tail && **current == '0'; | ||
721 | exponent += radix_log_2; | ||
722 | } | ||
723 | |||
724 | - if (!allow_trailing_junk && AdvanceToNonspace(¤t, end)) { | ||
725 | + if (!allow_trailing_junk && AdvanceToNonspace(current, end)) { | ||
726 | return junk_string_value; | ||
727 | } | ||
728 | |||
729 | @@ -552,13 +644,13 @@ static double RadixStringToIeee(const char* current, | ||
730 | } | ||
731 | break; | ||
732 | } | ||
733 | - ++current; | ||
734 | - } while (current != end); | ||
735 | + ++(*current); | ||
736 | + } while (*current != end); | ||
737 | |||
738 | ASSERT(number < ((int64_t)1 << kSignificandSize)); | ||
739 | ASSERT(static_cast<int64_t>(static_cast<double>(number)) == number); | ||
740 | |||
741 | - *trailing_pointer = current; | ||
742 | + *result_is_junk = false; | ||
743 | |||
744 | if (exponent == 0) { | ||
745 | if (sign) { | ||
746 | @@ -572,14 +664,14 @@ static double RadixStringToIeee(const char* current, | ||
747 | return Double(DiyFp(number, exponent)).value(); | ||
748 | } | ||
749 | |||
750 | - | ||
751 | +template <class Iterator> | ||
752 | double StringToDoubleConverter::StringToIeee( | ||
753 | - const char* input, | ||
754 | + Iterator input, | ||
755 | int length, | ||
756 | - int* processed_characters_count, | ||
757 | - bool read_as_double) { | ||
758 | - const char* current = input; | ||
759 | - const char* end = input + length; | ||
760 | + bool read_as_double, | ||
761 | + int* processed_characters_count) const { | ||
762 | + Iterator current = input; | ||
763 | + Iterator end = input + length; | ||
764 | |||
765 | *processed_characters_count = 0; | ||
766 | |||
767 | @@ -587,6 +679,8 @@ double StringToDoubleConverter::StringToIeee( | ||
768 | const bool allow_leading_spaces = (flags_ & ALLOW_LEADING_SPACES) != 0; | ||
769 | const bool allow_trailing_spaces = (flags_ & ALLOW_TRAILING_SPACES) != 0; | ||
770 | const bool allow_spaces_after_sign = (flags_ & ALLOW_SPACES_AFTER_SIGN) != 0; | ||
771 | + const bool allow_case_insensibility = (flags_ & ALLOW_CASE_INSENSIBILITY) != 0; | ||
772 | + | ||
773 | |||
774 | // To make sure that iterator dereferencing is valid the following | ||
775 | // convention is used: | ||
776 | @@ -600,7 +694,7 @@ double StringToDoubleConverter::StringToIeee( | ||
777 | |||
778 | if (allow_leading_spaces || allow_trailing_spaces) { | ||
779 | if (!AdvanceToNonspace(¤t, end)) { | ||
780 | - *processed_characters_count = current - input; | ||
781 | + *processed_characters_count = static_cast<int>(current - input); | ||
782 | return empty_string_value_; | ||
783 | } | ||
784 | if (!allow_leading_spaces && (input != current)) { | ||
785 | @@ -626,7 +720,7 @@ double StringToDoubleConverter::StringToIeee( | ||
786 | if (*current == '+' || *current == '-') { | ||
787 | sign = (*current == '-'); | ||
788 | ++current; | ||
789 | - const char* next_non_space = current; | ||
790 | + Iterator next_non_space = current; | ||
791 | // Skip following spaces (if allowed). | ||
792 | if (!AdvanceToNonspace(&next_non_space, end)) return junk_string_value_; | ||
793 | if (!allow_spaces_after_sign && (current != next_non_space)) { | ||
794 | @@ -636,8 +730,8 @@ double StringToDoubleConverter::StringToIeee( | ||
795 | } | ||
796 | |||
797 | if (infinity_symbol_ != NULL) { | ||
798 | - if (*current == infinity_symbol_[0]) { | ||
799 | - if (!ConsumeSubString(¤t, end, infinity_symbol_)) { | ||
800 | + if (ConsumeFirstCharacter(*current, infinity_symbol_, allow_case_insensibility)) { | ||
801 | + if (!ConsumeSubString(¤t, end, infinity_symbol_, allow_case_insensibility)) { | ||
802 | return junk_string_value_; | ||
803 | } | ||
804 | |||
805 | @@ -649,14 +743,14 @@ double StringToDoubleConverter::StringToIeee( | ||
806 | } | ||
807 | |||
808 | ASSERT(buffer_pos == 0); | ||
809 | - *processed_characters_count = current - input; | ||
810 | + *processed_characters_count = static_cast<int>(current - input); | ||
811 | return sign ? -Double::Infinity() : Double::Infinity(); | ||
812 | } | ||
813 | } | ||
814 | |||
815 | if (nan_symbol_ != NULL) { | ||
816 | - if (*current == nan_symbol_[0]) { | ||
817 | - if (!ConsumeSubString(¤t, end, nan_symbol_)) { | ||
818 | + if (ConsumeFirstCharacter(*current, nan_symbol_, allow_case_insensibility)) { | ||
819 | + if (!ConsumeSubString(¤t, end, nan_symbol_, allow_case_insensibility)) { | ||
820 | return junk_string_value_; | ||
821 | } | ||
822 | |||
823 | @@ -668,7 +762,7 @@ double StringToDoubleConverter::StringToIeee( | ||
824 | } | ||
825 | |||
826 | ASSERT(buffer_pos == 0); | ||
827 | - *processed_characters_count = current - input; | ||
828 | + *processed_characters_count = static_cast<int>(current - input); | ||
829 | return sign ? -Double::NaN() : Double::NaN(); | ||
830 | } | ||
831 | } | ||
832 | @@ -677,7 +771,7 @@ double StringToDoubleConverter::StringToIeee( | ||
833 | if (*current == '0') { | ||
834 | ++current; | ||
835 | if (current == end) { | ||
836 | - *processed_characters_count = current - input; | ||
837 | + *processed_characters_count = static_cast<int>(current - input); | ||
838 | return SignedZero(sign); | ||
839 | } | ||
840 | |||
841 | @@ -690,17 +784,17 @@ double StringToDoubleConverter::StringToIeee( | ||
842 | return junk_string_value_; // "0x". | ||
843 | } | ||
844 | |||
845 | - const char* tail_pointer = NULL; | ||
846 | - double result = RadixStringToIeee<4>(current, | ||
847 | + bool result_is_junk; | ||
848 | + double result = RadixStringToIeee<4>(¤t, | ||
849 | end, | ||
850 | sign, | ||
851 | allow_trailing_junk, | ||
852 | junk_string_value_, | ||
853 | read_as_double, | ||
854 | - &tail_pointer); | ||
855 | - if (tail_pointer != NULL) { | ||
856 | - if (allow_trailing_spaces) AdvanceToNonspace(&tail_pointer, end); | ||
857 | - *processed_characters_count = tail_pointer - input; | ||
858 | + &result_is_junk); | ||
859 | + if (!result_is_junk) { | ||
860 | + if (allow_trailing_spaces) AdvanceToNonspace(¤t, end); | ||
861 | + *processed_characters_count = static_cast<int>(current - input); | ||
862 | } | ||
863 | return result; | ||
864 | } | ||
865 | @@ -709,7 +803,7 @@ double StringToDoubleConverter::StringToIeee( | ||
866 | while (*current == '0') { | ||
867 | ++current; | ||
868 | if (current == end) { | ||
869 | - *processed_characters_count = current - input; | ||
870 | + *processed_characters_count = static_cast<int>(current - input); | ||
871 | return SignedZero(sign); | ||
872 | } | ||
873 | } | ||
874 | @@ -757,7 +851,7 @@ double StringToDoubleConverter::StringToIeee( | ||
875 | while (*current == '0') { | ||
876 | ++current; | ||
877 | if (current == end) { | ||
878 | - *processed_characters_count = current - input; | ||
879 | + *processed_characters_count = static_cast<int>(current - input); | ||
880 | return SignedZero(sign); | ||
881 | } | ||
882 | exponent--; // Move this 0 into the exponent. | ||
883 | @@ -793,20 +887,23 @@ double StringToDoubleConverter::StringToIeee( | ||
884 | if (*current == 'e' || *current == 'E') { | ||
885 | if (octal && !allow_trailing_junk) return junk_string_value_; | ||
886 | if (octal) goto parsing_done; | ||
887 | + Iterator junk_begin = current; | ||
888 | ++current; | ||
889 | if (current == end) { | ||
890 | if (allow_trailing_junk) { | ||
891 | + current = junk_begin; | ||
892 | goto parsing_done; | ||
893 | } else { | ||
894 | return junk_string_value_; | ||
895 | } | ||
896 | } | ||
897 | - char sign = '+'; | ||
898 | + char exponen_sign = '+'; | ||
899 | if (*current == '+' || *current == '-') { | ||
900 | - sign = static_cast<char>(*current); | ||
901 | + exponen_sign = static_cast<char>(*current); | ||
902 | ++current; | ||
903 | if (current == end) { | ||
904 | if (allow_trailing_junk) { | ||
905 | + current = junk_begin; | ||
906 | goto parsing_done; | ||
907 | } else { | ||
908 | return junk_string_value_; | ||
909 | @@ -816,6 +913,7 @@ double StringToDoubleConverter::StringToIeee( | ||
910 | |||
911 | if (current == end || *current < '0' || *current > '9') { | ||
912 | if (allow_trailing_junk) { | ||
913 | + current = junk_begin; | ||
914 | goto parsing_done; | ||
915 | } else { | ||
916 | return junk_string_value_; | ||
917 | @@ -837,7 +935,7 @@ double StringToDoubleConverter::StringToIeee( | ||
918 | ++current; | ||
919 | } while (current != end && *current >= '0' && *current <= '9'); | ||
920 | |||
921 | - exponent += (sign == '-' ? -num : num); | ||
922 | + exponent += (exponen_sign == '-' ? -num : num); | ||
923 | } | ||
924 | |||
925 | if (!(allow_trailing_spaces || allow_trailing_junk) && (current != end)) { | ||
926 | @@ -855,16 +953,17 @@ double StringToDoubleConverter::StringToIeee( | ||
927 | |||
928 | if (octal) { | ||
929 | double result; | ||
930 | - const char* tail_pointer = NULL; | ||
931 | - result = RadixStringToIeee<3>(buffer, | ||
932 | + bool result_is_junk; | ||
933 | + char* start = buffer; | ||
934 | + result = RadixStringToIeee<3>(&start, | ||
935 | buffer + buffer_pos, | ||
936 | sign, | ||
937 | allow_trailing_junk, | ||
938 | junk_string_value_, | ||
939 | read_as_double, | ||
940 | - &tail_pointer); | ||
941 | - ASSERT(tail_pointer != NULL); | ||
942 | - *processed_characters_count = current - input; | ||
943 | + &result_is_junk); | ||
944 | + ASSERT(!result_is_junk); | ||
945 | + *processed_characters_count = static_cast<int>(current - input); | ||
946 | return result; | ||
947 | } | ||
948 | |||
949 | @@ -882,8 +981,42 @@ double StringToDoubleConverter::StringToIeee( | ||
950 | } else { | ||
951 | converted = Strtof(Vector<const char>(buffer, buffer_pos), exponent); | ||
952 | } | ||
953 | - *processed_characters_count = current - input; | ||
954 | + *processed_characters_count = static_cast<int>(current - input); | ||
955 | return sign? -converted: converted; | ||
956 | } | ||
957 | |||
958 | + | ||
959 | +double StringToDoubleConverter::StringToDouble( | ||
960 | + const char* buffer, | ||
961 | + int length, | ||
962 | + int* processed_characters_count) const { | ||
963 | + return StringToIeee(buffer, length, true, processed_characters_count); | ||
964 | +} | ||
965 | + | ||
966 | + | ||
967 | +double StringToDoubleConverter::StringToDouble( | ||
968 | + const uc16* buffer, | ||
969 | + int length, | ||
970 | + int* processed_characters_count) const { | ||
971 | + return StringToIeee(buffer, length, true, processed_characters_count); | ||
972 | +} | ||
973 | + | ||
974 | + | ||
975 | +float StringToDoubleConverter::StringToFloat( | ||
976 | + const char* buffer, | ||
977 | + int length, | ||
978 | + int* processed_characters_count) const { | ||
979 | + return static_cast<float>(StringToIeee(buffer, length, false, | ||
980 | + processed_characters_count)); | ||
981 | +} | ||
982 | + | ||
983 | + | ||
984 | +float StringToDoubleConverter::StringToFloat( | ||
985 | + const uc16* buffer, | ||
986 | + int length, | ||
987 | + int* processed_characters_count) const { | ||
988 | + return static_cast<float>(StringToIeee(buffer, length, false, | ||
989 | + processed_characters_count)); | ||
990 | +} | ||
991 | + | ||
992 | } // namespace double_conversion | ||
993 | diff --git a/mfbt/double-conversion/double-conversion.h b/mfbt/double-conversion/double-conversion.h | ||
994 | index 0e7226d..e66a566 100644 | ||
995 | --- a/mfbt/double-conversion/double-conversion.h | ||
996 | +++ b/mfbt/double-conversion/double-conversion.h | ||
997 | @@ -28,8 +28,7 @@ | ||
998 | #ifndef DOUBLE_CONVERSION_DOUBLE_CONVERSION_H_ | ||
999 | #define DOUBLE_CONVERSION_DOUBLE_CONVERSION_H_ | ||
1000 | |||
1001 | -#include "mozilla/Types.h" | ||
1002 | -#include "utils.h" | ||
1003 | +#include <utils.h> | ||
1004 | |||
1005 | namespace double_conversion { | ||
1006 | |||
1007 | @@ -130,7 +129,7 @@ class DoubleToStringConverter { | ||
1008 | } | ||
1009 | |||
1010 | // Returns a converter following the EcmaScript specification. | ||
1011 | - static MFBT_API(const DoubleToStringConverter&) EcmaScriptConverter(); | ||
1012 | + static const DoubleToStringConverter& EcmaScriptConverter(); | ||
1013 | |||
1014 | // Computes the shortest string of digits that correctly represent the input | ||
1015 | // number. Depending on decimal_in_shortest_low and decimal_in_shortest_high | ||
1016 | @@ -198,7 +197,7 @@ class DoubleToStringConverter { | ||
1017 | // The last two conditions imply that the result will never contain more than | ||
1018 | // 1 + kMaxFixedDigitsBeforePoint + 1 + kMaxFixedDigitsAfterPoint characters | ||
1019 | // (one additional character for the sign, and one for the decimal point). | ||
1020 | - MFBT_API(bool) ToFixed(double value, | ||
1021 | + bool ToFixed(double value, | ||
1022 | int requested_digits, | ||
1023 | StringBuilder* result_builder) const; | ||
1024 | |||
1025 | @@ -230,7 +229,7 @@ class DoubleToStringConverter { | ||
1026 | // kMaxExponentialDigits + 8 characters (the sign, the digit before the | ||
1027 | // decimal point, the decimal point, the exponent character, the | ||
1028 | // exponent's sign, and at most 3 exponent digits). | ||
1029 | - MFBT_API(bool) ToExponential(double value, | ||
1030 | + bool ToExponential(double value, | ||
1031 | int requested_digits, | ||
1032 | StringBuilder* result_builder) const; | ||
1033 | |||
1034 | @@ -268,7 +267,7 @@ class DoubleToStringConverter { | ||
1035 | // The last condition implies that the result will never contain more than | ||
1036 | // kMaxPrecisionDigits + 7 characters (the sign, the decimal point, the | ||
1037 | // exponent character, the exponent's sign, and at most 3 exponent digits). | ||
1038 | - MFBT_API(bool) ToPrecision(double value, | ||
1039 | + bool ToPrecision(double value, | ||
1040 | int precision, | ||
1041 | StringBuilder* result_builder) const; | ||
1042 | |||
1043 | @@ -293,15 +292,20 @@ class DoubleToStringConverter { | ||
1044 | // kBase10MaximalLength. | ||
1045 | // Note that DoubleToAscii null-terminates its input. So the given buffer | ||
1046 | // should be at least kBase10MaximalLength + 1 characters long. | ||
1047 | - static const MFBT_DATA(int) kBase10MaximalLength = 17; | ||
1048 | + static const int kBase10MaximalLength = 17; | ||
1049 | |||
1050 | - // Converts the given double 'v' to ascii. 'v' must not be NaN, +Infinity, or | ||
1051 | - // -Infinity. In SHORTEST_SINGLE-mode this restriction also applies to 'v' | ||
1052 | - // after it has been casted to a single-precision float. That is, in this | ||
1053 | - // mode static_cast<float>(v) must not be NaN, +Infinity or -Infinity. | ||
1054 | + // Converts the given double 'v' to digit characters. 'v' must not be NaN, | ||
1055 | + // +Infinity, or -Infinity. In SHORTEST_SINGLE-mode this restriction also | ||
1056 | + // applies to 'v' after it has been casted to a single-precision float. That | ||
1057 | + // is, in this mode static_cast<float>(v) must not be NaN, +Infinity or | ||
1058 | + // -Infinity. | ||
1059 | // | ||
1060 | // The result should be interpreted as buffer * 10^(point-length). | ||
1061 | // | ||
1062 | + // The digits are written to the buffer in the platform's charset, which is | ||
1063 | + // often UTF-8 (with ASCII-range digits) but may be another charset, such | ||
1064 | + // as EBCDIC. | ||
1065 | + // | ||
1066 | // The output depends on the given mode: | ||
1067 | // - SHORTEST: produce the least amount of digits for which the internal | ||
1068 | // identity requirement is still satisfied. If the digits are printed | ||
1069 | @@ -333,7 +337,7 @@ class DoubleToStringConverter { | ||
1070 | // terminating null-character when computing the maximal output size. | ||
1071 | // The given length is only used in debug mode to ensure the buffer is big | ||
1072 | // enough. | ||
1073 | - static MFBT_API(void) DoubleToAscii(double v, | ||
1074 | + static void DoubleToAscii(double v, | ||
1075 | DtoaMode mode, | ||
1076 | int requested_digits, | ||
1077 | char* buffer, | ||
1078 | @@ -344,7 +348,7 @@ class DoubleToStringConverter { | ||
1079 | |||
1080 | private: | ||
1081 | // Implementation for ToShortest and ToShortestSingle. | ||
1082 | - MFBT_API(bool) ToShortestIeeeNumber(double value, | ||
1083 | + bool ToShortestIeeeNumber(double value, | ||
1084 | StringBuilder* result_builder, | ||
1085 | DtoaMode mode) const; | ||
1086 | |||
1087 | @@ -352,15 +356,15 @@ class DoubleToStringConverter { | ||
1088 | // corresponding string using the configured infinity/nan-symbol. | ||
1089 | // If either of them is NULL or the value is not special then the | ||
1090 | // function returns false. | ||
1091 | - MFBT_API(bool) HandleSpecialValues(double value, StringBuilder* result_builder) const; | ||
1092 | + bool HandleSpecialValues(double value, StringBuilder* result_builder) const; | ||
1093 | // Constructs an exponential representation (i.e. 1.234e56). | ||
1094 | // The given exponent assumes a decimal point after the first decimal digit. | ||
1095 | - MFBT_API(void) CreateExponentialRepresentation(const char* decimal_digits, | ||
1096 | + void CreateExponentialRepresentation(const char* decimal_digits, | ||
1097 | int length, | ||
1098 | int exponent, | ||
1099 | StringBuilder* result_builder) const; | ||
1100 | // Creates a decimal representation (i.e 1234.5678). | ||
1101 | - MFBT_API(void) CreateDecimalRepresentation(const char* decimal_digits, | ||
1102 | + void CreateDecimalRepresentation(const char* decimal_digits, | ||
1103 | int length, | ||
1104 | int decimal_point, | ||
1105 | int digits_after_point, | ||
1106 | @@ -375,7 +379,7 @@ class DoubleToStringConverter { | ||
1107 | const int max_leading_padding_zeroes_in_precision_mode_; | ||
1108 | const int max_trailing_padding_zeroes_in_precision_mode_; | ||
1109 | |||
1110 | - DISALLOW_IMPLICIT_CONSTRUCTORS(DoubleToStringConverter); | ||
1111 | + DC_DISALLOW_IMPLICIT_CONSTRUCTORS(DoubleToStringConverter); | ||
1112 | }; | ||
1113 | |||
1114 | |||
1115 | @@ -390,7 +394,8 @@ class StringToDoubleConverter { | ||
1116 | ALLOW_TRAILING_JUNK = 4, | ||
1117 | ALLOW_LEADING_SPACES = 8, | ||
1118 | ALLOW_TRAILING_SPACES = 16, | ||
1119 | - ALLOW_SPACES_AFTER_SIGN = 32 | ||
1120 | + ALLOW_SPACES_AFTER_SIGN = 32, | ||
1121 | + ALLOW_CASE_INSENSIBILITY = 64, | ||
1122 | }; | ||
1123 | |||
1124 | // Flags should be a bit-or combination of the possible Flags-enum. | ||
1125 | @@ -416,11 +421,14 @@ class StringToDoubleConverter { | ||
1126 | // junk, too. | ||
1127 | // - ALLOW_TRAILING_JUNK: ignore trailing characters that are not part of | ||
1128 | // a double literal. | ||
1129 | - // - ALLOW_LEADING_SPACES: skip over leading spaces. | ||
1130 | - // - ALLOW_TRAILING_SPACES: ignore trailing spaces. | ||
1131 | - // - ALLOW_SPACES_AFTER_SIGN: ignore spaces after the sign. | ||
1132 | + // - ALLOW_LEADING_SPACES: skip over leading whitespace, including spaces, | ||
1133 | + // new-lines, and tabs. | ||
1134 | + // - ALLOW_TRAILING_SPACES: ignore trailing whitespace. | ||
1135 | + // - ALLOW_SPACES_AFTER_SIGN: ignore whitespace after the sign. | ||
1136 | // Ex: StringToDouble("- 123.2") -> -123.2. | ||
1137 | // StringToDouble("+ 123.2") -> 123.2 | ||
1138 | + // - ALLOW_CASE_INSENSIBILITY: ignore case of characters for special values: | ||
1139 | + // infinity and nan. | ||
1140 | // | ||
1141 | // empty_string_value is returned when an empty string is given as input. | ||
1142 | // If ALLOW_LEADING_SPACES or ALLOW_TRAILING_SPACES are set, then a string | ||
1143 | @@ -503,19 +511,24 @@ class StringToDoubleConverter { | ||
1144 | // in the 'processed_characters_count'. Trailing junk is never included. | ||
1145 | double StringToDouble(const char* buffer, | ||
1146 | int length, | ||
1147 | - int* processed_characters_count) { | ||
1148 | - return StringToIeee(buffer, length, processed_characters_count, true); | ||
1149 | - } | ||
1150 | + int* processed_characters_count) const; | ||
1151 | + | ||
1152 | + // Same as StringToDouble above but for 16 bit characters. | ||
1153 | + double StringToDouble(const uc16* buffer, | ||
1154 | + int length, | ||
1155 | + int* processed_characters_count) const; | ||
1156 | |||
1157 | // Same as StringToDouble but reads a float. | ||
1158 | // Note that this is not equivalent to static_cast<float>(StringToDouble(...)) | ||
1159 | // due to potential double-rounding. | ||
1160 | float StringToFloat(const char* buffer, | ||
1161 | int length, | ||
1162 | - int* processed_characters_count) { | ||
1163 | - return static_cast<float>(StringToIeee(buffer, length, | ||
1164 | - processed_characters_count, false)); | ||
1165 | - } | ||
1166 | + int* processed_characters_count) const; | ||
1167 | + | ||
1168 | + // Same as StringToFloat above but for 16 bit characters. | ||
1169 | + float StringToFloat(const uc16* buffer, | ||
1170 | + int length, | ||
1171 | + int* processed_characters_count) const; | ||
1172 | |||
1173 | private: | ||
1174 | const int flags_; | ||
1175 | @@ -524,12 +537,13 @@ class StringToDoubleConverter { | ||
1176 | const char* const infinity_symbol_; | ||
1177 | const char* const nan_symbol_; | ||
1178 | |||
1179 | - double StringToIeee(const char* buffer, | ||
1180 | + template <class Iterator> | ||
1181 | + double StringToIeee(Iterator start_pointer, | ||
1182 | int length, | ||
1183 | - int* processed_characters_count, | ||
1184 | - bool read_as_double); | ||
1185 | + bool read_as_double, | ||
1186 | + int* processed_characters_count) const; | ||
1187 | |||
1188 | - DISALLOW_IMPLICIT_CONSTRUCTORS(StringToDoubleConverter); | ||
1189 | + DC_DISALLOW_IMPLICIT_CONSTRUCTORS(StringToDoubleConverter); | ||
1190 | }; | ||
1191 | |||
1192 | } // namespace double_conversion | ||
1193 | diff --git a/mfbt/double-conversion/fast-dtoa.cc b/mfbt/double-conversion/fast-dtoa.cc | ||
1194 | index 0609422..d338216 100644 | ||
1195 | --- a/mfbt/double-conversion/fast-dtoa.cc | ||
1196 | +++ b/mfbt/double-conversion/fast-dtoa.cc | ||
1197 | @@ -25,11 +25,11 @@ | ||
1198 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | ||
1199 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
1200 | |||
1201 | -#include "fast-dtoa.h" | ||
1202 | +#include <fast-dtoa.h> | ||
1203 | |||
1204 | -#include "cached-powers.h" | ||
1205 | -#include "diy-fp.h" | ||
1206 | -#include "ieee.h" | ||
1207 | +#include <cached-powers.h> | ||
1208 | +#include <diy-fp.h> | ||
1209 | +#include <ieee.h> | ||
1210 | |||
1211 | namespace double_conversion { | ||
1212 | |||
1213 | @@ -248,10 +248,7 @@ static void BiggestPowerTen(uint32_t number, | ||
1214 | // Note: kPowersOf10[i] == 10^(i-1). | ||
1215 | exponent_plus_one_guess++; | ||
1216 | // We don't have any guarantees that 2^number_bits <= number. | ||
1217 | - // TODO(floitsch): can we change the 'while' into an 'if'? We definitely see | ||
1218 | - // number < (2^number_bits - 1), but I haven't encountered | ||
1219 | - // number < (2^number_bits - 2) yet. | ||
1220 | - while (number < kSmallPowersOfTen[exponent_plus_one_guess]) { | ||
1221 | + if (number < kSmallPowersOfTen[exponent_plus_one_guess]) { | ||
1222 | exponent_plus_one_guess--; | ||
1223 | } | ||
1224 | *power = kSmallPowersOfTen[exponent_plus_one_guess]; | ||
1225 | @@ -350,7 +347,8 @@ static bool DigitGen(DiyFp low, | ||
1226 | // that is smaller than integrals. | ||
1227 | while (*kappa > 0) { | ||
1228 | int digit = integrals / divisor; | ||
1229 | - buffer[*length] = '0' + digit; | ||
1230 | + ASSERT(digit <= 9); | ||
1231 | + buffer[*length] = static_cast<char>('0' + digit); | ||
1232 | (*length)++; | ||
1233 | integrals %= divisor; | ||
1234 | (*kappa)--; | ||
1235 | @@ -379,13 +377,14 @@ static bool DigitGen(DiyFp low, | ||
1236 | ASSERT(one.e() >= -60); | ||
1237 | ASSERT(fractionals < one.f()); | ||
1238 | ASSERT(UINT64_2PART_C(0xFFFFFFFF, FFFFFFFF) / 10 >= one.f()); | ||
1239 | - while (true) { | ||
1240 | + for (;;) { | ||
1241 | fractionals *= 10; | ||
1242 | unit *= 10; | ||
1243 | unsafe_interval.set_f(unsafe_interval.f() * 10); | ||
1244 | // Integer division by one. | ||
1245 | int digit = static_cast<int>(fractionals >> -one.e()); | ||
1246 | - buffer[*length] = '0' + digit; | ||
1247 | + ASSERT(digit <= 9); | ||
1248 | + buffer[*length] = static_cast<char>('0' + digit); | ||
1249 | (*length)++; | ||
1250 | fractionals &= one.f() - 1; // Modulo by one. | ||
1251 | (*kappa)--; | ||
1252 | @@ -459,7 +458,8 @@ static bool DigitGenCounted(DiyFp w, | ||
1253 | // that is smaller than 'integrals'. | ||
1254 | while (*kappa > 0) { | ||
1255 | int digit = integrals / divisor; | ||
1256 | - buffer[*length] = '0' + digit; | ||
1257 | + ASSERT(digit <= 9); | ||
1258 | + buffer[*length] = static_cast<char>('0' + digit); | ||
1259 | (*length)++; | ||
1260 | requested_digits--; | ||
1261 | integrals %= divisor; | ||
1262 | @@ -492,7 +492,8 @@ static bool DigitGenCounted(DiyFp w, | ||
1263 | w_error *= 10; | ||
1264 | // Integer division by one. | ||
1265 | int digit = static_cast<int>(fractionals >> -one.e()); | ||
1266 | - buffer[*length] = '0' + digit; | ||
1267 | + ASSERT(digit <= 9); | ||
1268 | + buffer[*length] = static_cast<char>('0' + digit); | ||
1269 | (*length)++; | ||
1270 | requested_digits--; | ||
1271 | fractionals &= one.f() - 1; // Modulo by one. | ||
1272 | @@ -529,7 +530,7 @@ static bool Grisu3(double v, | ||
1273 | if (mode == FAST_DTOA_SHORTEST) { | ||
1274 | Double(v).NormalizedBoundaries(&boundary_minus, &boundary_plus); | ||
1275 | } else { | ||
1276 | - assert(mode == FAST_DTOA_SHORTEST_SINGLE); | ||
1277 | + ASSERT(mode == FAST_DTOA_SHORTEST_SINGLE); | ||
1278 | float single_v = static_cast<float>(v); | ||
1279 | Single(single_v).NormalizedBoundaries(&boundary_minus, &boundary_plus); | ||
1280 | } | ||
1281 | diff --git a/mfbt/double-conversion/fast-dtoa.h b/mfbt/double-conversion/fast-dtoa.h | ||
1282 | index 5f1e8ee..9c4da92 100644 | ||
1283 | --- a/mfbt/double-conversion/fast-dtoa.h | ||
1284 | +++ b/mfbt/double-conversion/fast-dtoa.h | ||
1285 | @@ -28,7 +28,7 @@ | ||
1286 | #ifndef DOUBLE_CONVERSION_FAST_DTOA_H_ | ||
1287 | #define DOUBLE_CONVERSION_FAST_DTOA_H_ | ||
1288 | |||
1289 | -#include "utils.h" | ||
1290 | +#include <utils.h> | ||
1291 | |||
1292 | namespace double_conversion { | ||
1293 | |||
1294 | diff --git a/mfbt/double-conversion/fixed-dtoa.cc b/mfbt/double-conversion/fixed-dtoa.cc | ||
1295 | index d56b144..fa23529 100644 | ||
1296 | --- a/mfbt/double-conversion/fixed-dtoa.cc | ||
1297 | +++ b/mfbt/double-conversion/fixed-dtoa.cc | ||
1298 | @@ -25,10 +25,10 @@ | ||
1299 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | ||
1300 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
1301 | |||
1302 | -#include <math.h> | ||
1303 | +#include <cmath> | ||
1304 | |||
1305 | -#include "fixed-dtoa.h" | ||
1306 | -#include "ieee.h" | ||
1307 | +#include <fixed-dtoa.h> | ||
1308 | +#include <ieee.h> | ||
1309 | |||
1310 | namespace double_conversion { | ||
1311 | |||
1312 | @@ -98,7 +98,7 @@ class UInt128 { | ||
1313 | return high_bits_ == 0 && low_bits_ == 0; | ||
1314 | } | ||
1315 | |||
1316 | - int BitAt(int position) { | ||
1317 | + int BitAt(int position) const { | ||
1318 | if (position >= 64) { | ||
1319 | return static_cast<int>(high_bits_ >> (position - 64)) & 1; | ||
1320 | } else { | ||
1321 | @@ -133,7 +133,7 @@ static void FillDigits32(uint32_t number, Vector<char> buffer, int* length) { | ||
1322 | while (number != 0) { | ||
1323 | int digit = number % 10; | ||
1324 | number /= 10; | ||
1325 | - buffer[(*length) + number_length] = '0' + digit; | ||
1326 | + buffer[(*length) + number_length] = static_cast<char>('0' + digit); | ||
1327 | number_length++; | ||
1328 | } | ||
1329 | // Exchange the digits. | ||
1330 | @@ -150,7 +150,7 @@ static void FillDigits32(uint32_t number, Vector<char> buffer, int* length) { | ||
1331 | } | ||
1332 | |||
1333 | |||
1334 | -static void FillDigits64FixedLength(uint64_t number, int requested_length, | ||
1335 | +static void FillDigits64FixedLength(uint64_t number, | ||
1336 | Vector<char> buffer, int* length) { | ||
1337 | const uint32_t kTen7 = 10000000; | ||
1338 | // For efficiency cut the number into 3 uint32_t parts, and print those. | ||
1339 | @@ -253,12 +253,14 @@ static void FillFractionals(uint64_t fractionals, int exponent, | ||
1340 | fractionals *= 5; | ||
1341 | point--; | ||
1342 | int digit = static_cast<int>(fractionals >> point); | ||
1343 | - buffer[*length] = '0' + digit; | ||
1344 | + ASSERT(digit <= 9); | ||
1345 | + buffer[*length] = static_cast<char>('0' + digit); | ||
1346 | (*length)++; | ||
1347 | fractionals -= static_cast<uint64_t>(digit) << point; | ||
1348 | } | ||
1349 | // If the first bit after the point is set we have to round up. | ||
1350 | - if (((fractionals >> (point - 1)) & 1) == 1) { | ||
1351 | + ASSERT(fractionals == 0 || point - 1 >= 0); | ||
1352 | + if ((fractionals != 0) && ((fractionals >> (point - 1)) & 1) == 1) { | ||
1353 | RoundUp(buffer, length, decimal_point); | ||
1354 | } | ||
1355 | } else { // We need 128 bits. | ||
1356 | @@ -274,7 +276,8 @@ static void FillFractionals(uint64_t fractionals, int exponent, | ||
1357 | fractionals128.Multiply(5); | ||
1358 | point--; | ||
1359 | int digit = fractionals128.DivModPowerOf2(point); | ||
1360 | - buffer[*length] = '0' + digit; | ||
1361 | + ASSERT(digit <= 9); | ||
1362 | + buffer[*length] = static_cast<char>('0' + digit); | ||
1363 | (*length)++; | ||
1364 | } | ||
1365 | if (fractionals128.BitAt(point - 1) == 1) { | ||
1366 | @@ -358,7 +361,7 @@ bool FastFixedDtoa(double v, | ||
1367 | remainder = (dividend % divisor) << exponent; | ||
1368 | } | ||
1369 | FillDigits32(quotient, buffer, length); | ||
1370 | - FillDigits64FixedLength(remainder, divisor_power, buffer, length); | ||
1371 | + FillDigits64FixedLength(remainder, buffer, length); | ||
1372 | *decimal_point = *length; | ||
1373 | } else if (exponent >= 0) { | ||
1374 | // 0 <= exponent <= 11 | ||
1375 | diff --git a/mfbt/double-conversion/fixed-dtoa.h b/mfbt/double-conversion/fixed-dtoa.h | ||
1376 | index 3bdd08e..19fd2e7 100644 | ||
1377 | --- a/mfbt/double-conversion/fixed-dtoa.h | ||
1378 | +++ b/mfbt/double-conversion/fixed-dtoa.h | ||
1379 | @@ -28,7 +28,7 @@ | ||
1380 | #ifndef DOUBLE_CONVERSION_FIXED_DTOA_H_ | ||
1381 | #define DOUBLE_CONVERSION_FIXED_DTOA_H_ | ||
1382 | |||
1383 | -#include "utils.h" | ||
1384 | +#include <utils.h> | ||
1385 | |||
1386 | namespace double_conversion { | ||
1387 | |||
1388 | diff --git a/mfbt/double-conversion/ieee.h b/mfbt/double-conversion/ieee.h | ||
1389 | index 839dc47..8949b02 100644 | ||
1390 | --- a/mfbt/double-conversion/ieee.h | ||
1391 | +++ b/mfbt/double-conversion/ieee.h | ||
1392 | @@ -28,7 +28,7 @@ | ||
1393 | #ifndef DOUBLE_CONVERSION_DOUBLE_H_ | ||
1394 | #define DOUBLE_CONVERSION_DOUBLE_H_ | ||
1395 | |||
1396 | -#include "diy-fp.h" | ||
1397 | +#include <diy-fp.h> | ||
1398 | |||
1399 | namespace double_conversion { | ||
1400 | |||
1401 | @@ -99,7 +99,7 @@ class Double { | ||
1402 | } | ||
1403 | |||
1404 | double PreviousDouble() const { | ||
1405 | - if (d64_ == (kInfinity | kSignMask)) return -Double::Infinity(); | ||
1406 | + if (d64_ == (kInfinity | kSignMask)) return -Infinity(); | ||
1407 | if (Sign() < 0) { | ||
1408 | return Double(d64_ + 1).value(); | ||
1409 | } else { | ||
1410 | @@ -256,6 +256,8 @@ class Double { | ||
1411 | return (significand & kSignificandMask) | | ||
1412 | (biased_exponent << kPhysicalSignificandSize); | ||
1413 | } | ||
1414 | + | ||
1415 | + DC_DISALLOW_COPY_AND_ASSIGN(Double); | ||
1416 | }; | ||
1417 | |||
1418 | class Single { | ||
1419 | @@ -391,6 +393,8 @@ class Single { | ||
1420 | static const uint32_t kNaN = 0x7FC00000; | ||
1421 | |||
1422 | const uint32_t d32_; | ||
1423 | + | ||
1424 | + DC_DISALLOW_COPY_AND_ASSIGN(Single); | ||
1425 | }; | ||
1426 | |||
1427 | } // namespace double_conversion | ||
1428 | diff --git a/mfbt/double-conversion/strtod.cc b/mfbt/double-conversion/strtod.cc | ||
1429 | index d773f44..a9e85c1 100644 | ||
1430 | --- a/mfbt/double-conversion/strtod.cc | ||
1431 | +++ b/mfbt/double-conversion/strtod.cc | ||
1432 | @@ -25,13 +25,13 @@ | ||
1433 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | ||
1434 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
1435 | |||
1436 | -#include <stdarg.h> | ||
1437 | -#include <limits.h> | ||
1438 | +#include <climits> | ||
1439 | +#include <cstdarg> | ||
1440 | |||
1441 | -#include "strtod.h" | ||
1442 | -#include "bignum.h" | ||
1443 | -#include "cached-powers.h" | ||
1444 | -#include "ieee.h" | ||
1445 | +#include <bignum.h> | ||
1446 | +#include <cached-powers.h> | ||
1447 | +#include <ieee.h> | ||
1448 | +#include <strtod.h> | ||
1449 | |||
1450 | namespace double_conversion { | ||
1451 | |||
1452 | @@ -137,6 +137,7 @@ static void TrimAndCut(Vector<const char> buffer, int exponent, | ||
1453 | Vector<const char> right_trimmed = TrimTrailingZeros(left_trimmed); | ||
1454 | exponent += left_trimmed.length() - right_trimmed.length(); | ||
1455 | if (right_trimmed.length() > kMaxSignificantDecimalDigits) { | ||
1456 | + (void) space_size; // Mark variable as used. | ||
1457 | ASSERT(space_size >= kMaxSignificantDecimalDigits); | ||
1458 | CutToMaxSignificantDigits(right_trimmed, exponent, | ||
1459 | buffer_copy_space, updated_exponent); | ||
1460 | @@ -204,7 +205,7 @@ static bool DoubleStrtod(Vector<const char> trimmed, | ||
1461 | // Note that the ARM simulator is compiled for 32bits. It therefore exhibits | ||
1462 | // the same problem. | ||
1463 | return false; | ||
1464 | -#endif | ||
1465 | +#else | ||
1466 | if (trimmed.length() <= kMaxExactDoubleIntegerDecimalDigits) { | ||
1467 | int read_digits; | ||
1468 | // The trimmed input fits into a double. | ||
1469 | @@ -242,6 +243,7 @@ static bool DoubleStrtod(Vector<const char> trimmed, | ||
1470 | } | ||
1471 | } | ||
1472 | return false; | ||
1473 | +#endif | ||
1474 | } | ||
1475 | |||
1476 | |||
1477 | @@ -263,7 +265,6 @@ static DiyFp AdjustmentPowerOfTen(int exponent) { | ||
1478 | case 7: return DiyFp(UINT64_2PART_C(0x98968000, 00000000), -40); | ||
1479 | default: | ||
1480 | UNREACHABLE(); | ||
1481 | - return DiyFp(0, 0); | ||
1482 | } | ||
1483 | } | ||
1484 | |||
1485 | @@ -286,7 +287,7 @@ static bool DiyFpStrtod(Vector<const char> buffer, | ||
1486 | const int kDenominator = 1 << kDenominatorLog; | ||
1487 | // Move the remaining decimals into the exponent. | ||
1488 | exponent += remaining_decimals; | ||
1489 | - int error = (remaining_decimals == 0 ? 0 : kDenominator / 2); | ||
1490 | + uint64_t error = (remaining_decimals == 0 ? 0 : kDenominator / 2); | ||
1491 | |||
1492 | int old_e = input.e(); | ||
1493 | input.Normalize(); | ||
1494 | @@ -471,6 +472,30 @@ double Strtod(Vector<const char> buffer, int exponent) { | ||
1495 | } | ||
1496 | } | ||
1497 | |||
1498 | +static float SanitizedDoubletof(double d) { | ||
1499 | + ASSERT(d >= 0.0); | ||
1500 | + // ASAN has a sanitize check that disallows casting doubles to floats if | ||
1501 | + // they are too big. | ||
1502 | + // https://clang.llvm.org/docs/UndefinedBehaviorSanitizer.html#available-checks | ||
1503 | + // The behavior should be covered by IEEE 754, but some projects use this | ||
1504 | + // flag, so work around it. | ||
1505 | + float max_finite = 3.4028234663852885981170418348451692544e+38; | ||
1506 | + // The half-way point between the max-finite and infinity value. | ||
1507 | + // Since infinity has an even significand everything equal or greater than | ||
1508 | + // this value should become infinity. | ||
1509 | + double half_max_finite_infinity = | ||
1510 | + 3.40282356779733661637539395458142568448e+38; | ||
1511 | + if (d >= max_finite) { | ||
1512 | + if (d >= half_max_finite_infinity) { | ||
1513 | + return Single::Infinity(); | ||
1514 | + } else { | ||
1515 | + return max_finite; | ||
1516 | + } | ||
1517 | + } else { | ||
1518 | + return static_cast<float>(d); | ||
1519 | + } | ||
1520 | +} | ||
1521 | + | ||
1522 | float Strtof(Vector<const char> buffer, int exponent) { | ||
1523 | char copy_buffer[kMaxSignificantDecimalDigits]; | ||
1524 | Vector<const char> trimmed; | ||
1525 | @@ -482,7 +507,7 @@ float Strtof(Vector<const char> buffer, int exponent) { | ||
1526 | double double_guess; | ||
1527 | bool is_correct = ComputeGuess(trimmed, exponent, &double_guess); | ||
1528 | |||
1529 | - float float_guess = static_cast<float>(double_guess); | ||
1530 | + float float_guess = SanitizedDoubletof(double_guess); | ||
1531 | if (float_guess == double_guess) { | ||
1532 | // This shortcut triggers for integer values. | ||
1533 | return float_guess; | ||
1534 | @@ -505,18 +530,18 @@ float Strtof(Vector<const char> buffer, int exponent) { | ||
1535 | double double_next = Double(double_guess).NextDouble(); | ||
1536 | double double_previous = Double(double_guess).PreviousDouble(); | ||
1537 | |||
1538 | - float f1 = static_cast<float>(double_previous); | ||
1539 | + float f1 = SanitizedDoubletof(double_previous); | ||
1540 | float f2 = float_guess; | ||
1541 | - float f3 = static_cast<float>(double_next); | ||
1542 | + float f3 = SanitizedDoubletof(double_next); | ||
1543 | float f4; | ||
1544 | if (is_correct) { | ||
1545 | f4 = f3; | ||
1546 | } else { | ||
1547 | double double_next2 = Double(double_next).NextDouble(); | ||
1548 | - f4 = static_cast<float>(double_next2); | ||
1549 | + f4 = SanitizedDoubletof(double_next2); | ||
1550 | } | ||
1551 | - (void)f2; | ||
1552 | - assert(f1 <= f2 && f2 <= f3 && f3 <= f4); | ||
1553 | + (void) f2; // Mark variable as used. | ||
1554 | + ASSERT(f1 <= f2 && f2 <= f3 && f3 <= f4); | ||
1555 | |||
1556 | // If the guess doesn't lie near a single-precision boundary we can simply | ||
1557 | // return its float-value. | ||
1558 | @@ -524,11 +549,11 @@ float Strtof(Vector<const char> buffer, int exponent) { | ||
1559 | return float_guess; | ||
1560 | } | ||
1561 | |||
1562 | - assert((f1 != f2 && f2 == f3 && f3 == f4) || | ||
1563 | + ASSERT((f1 != f2 && f2 == f3 && f3 == f4) || | ||
1564 | (f1 == f2 && f2 != f3 && f3 == f4) || | ||
1565 | (f1 == f2 && f2 == f3 && f3 != f4)); | ||
1566 | |||
1567 | - // guess and next are the two possible canditates (in the same way that | ||
1568 | + // guess and next are the two possible candidates (in the same way that | ||
1569 | // double_guess was the lower candidate for a double-precision guess). | ||
1570 | float guess = f1; | ||
1571 | float next = f4; | ||
1572 | diff --git a/mfbt/double-conversion/strtod.h b/mfbt/double-conversion/strtod.h | ||
1573 | index ed0293b..58c4926 100644 | ||
1574 | --- a/mfbt/double-conversion/strtod.h | ||
1575 | +++ b/mfbt/double-conversion/strtod.h | ||
1576 | @@ -28,7 +28,7 @@ | ||
1577 | #ifndef DOUBLE_CONVERSION_STRTOD_H_ | ||
1578 | #define DOUBLE_CONVERSION_STRTOD_H_ | ||
1579 | |||
1580 | -#include "utils.h" | ||
1581 | +#include <utils.h> | ||
1582 | |||
1583 | namespace double_conversion { | ||
1584 | |||
1585 | diff --git a/mfbt/double-conversion/utils.h b/mfbt/double-conversion/utils.h | ||
1586 | index 0eec2d9..a748654 100644 | ||
1587 | --- a/mfbt/double-conversion/utils.h | ||
1588 | +++ b/mfbt/double-conversion/utils.h | ||
1589 | @@ -28,19 +28,34 @@ | ||
1590 | #ifndef DOUBLE_CONVERSION_UTILS_H_ | ||
1591 | #define DOUBLE_CONVERSION_UTILS_H_ | ||
1592 | |||
1593 | -#include <stdlib.h> | ||
1594 | -#include <string.h> | ||
1595 | +#include <cstdlib> | ||
1596 | +#include <cstring> | ||
1597 | |||
1598 | -#include <assert.h> | ||
1599 | +#include <cassert> | ||
1600 | #ifndef ASSERT | ||
1601 | -#define ASSERT(condition) (assert(condition)) | ||
1602 | +#define ASSERT(condition) \ | ||
1603 | + assert(condition); | ||
1604 | #endif | ||
1605 | #ifndef UNIMPLEMENTED | ||
1606 | #define UNIMPLEMENTED() (abort()) | ||
1607 | #endif | ||
1608 | +#ifndef DOUBLE_CONVERSION_NO_RETURN | ||
1609 | +#ifdef _MSC_VER | ||
1610 | +#define DOUBLE_CONVERSION_NO_RETURN __declspec(noreturn) | ||
1611 | +#else | ||
1612 | +#define DOUBLE_CONVERSION_NO_RETURN __attribute__((noreturn)) | ||
1613 | +#endif | ||
1614 | +#endif | ||
1615 | #ifndef UNREACHABLE | ||
1616 | +#ifdef _MSC_VER | ||
1617 | +void DOUBLE_CONVERSION_NO_RETURN abort_noreturn(); | ||
1618 | +inline void abort_noreturn() { abort(); } | ||
1619 | +#define UNREACHABLE() (abort_noreturn()) | ||
1620 | +#else | ||
1621 | #define UNREACHABLE() (abort()) | ||
1622 | #endif | ||
1623 | +#endif | ||
1624 | + | ||
1625 | |||
1626 | // Double operations detection based on target architecture. | ||
1627 | // Linux uses a 80bit wide floating point stack on x86. This induces double | ||
1628 | @@ -55,11 +70,18 @@ | ||
1629 | #if defined(_M_X64) || defined(__x86_64__) || \ | ||
1630 | defined(__ARMEL__) || defined(__avr32__) || \ | ||
1631 | defined(__hppa__) || defined(__ia64__) || \ | ||
1632 | - defined(__mips__) || defined(__powerpc__) || \ | ||
1633 | + defined(__mips__) || \ | ||
1634 | + defined(__powerpc__) || defined(__ppc__) || defined(__ppc64__) || \ | ||
1635 | + defined(_POWER) || defined(_ARCH_PPC) || defined(_ARCH_PPC64) || \ | ||
1636 | defined(__sparc__) || defined(__sparc) || defined(__s390__) || \ | ||
1637 | defined(__SH4__) || defined(__alpha__) || \ | ||
1638 | - defined(_MIPS_ARCH_MIPS32R2) | ||
1639 | + defined(_MIPS_ARCH_MIPS32R2) || \ | ||
1640 | + defined(__AARCH64EL__) || defined(__aarch64__) || \ | ||
1641 | + defined(__riscv) | ||
1642 | #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 | ||
1643 | +#elif defined(__mc68000__) || \ | ||
1644 | + defined(__pnacl__) || defined(__native_client__) | ||
1645 | +#undef DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS | ||
1646 | #elif defined(_M_IX86) || defined(__i386__) || defined(__i386) | ||
1647 | #if defined(_WIN32) | ||
1648 | // Windows uses a 64bit wide floating point stack. | ||
1649 | @@ -71,9 +93,10 @@ | ||
1650 | #error Target architecture was not detected as supported by Double-Conversion. | ||
1651 | #endif | ||
1652 | |||
1653 | - | ||
1654 | #include "mozilla/StandardInteger.h" | ||
1655 | |||
1656 | +typedef uint16_t uc16; | ||
1657 | + | ||
1658 | // The following macro works on both 32 and 64-bit platforms. | ||
1659 | // Usage: instead of writing 0x1234567890123456 | ||
1660 | // write UINT64_2PART_C(0x12345678,90123456); | ||
1661 | @@ -92,8 +115,8 @@ | ||
1662 | |||
1663 | // A macro to disallow the evil copy constructor and operator= functions | ||
1664 | // This should be used in the private: declarations for a class | ||
1665 | -#ifndef DISALLOW_COPY_AND_ASSIGN | ||
1666 | -#define DISALLOW_COPY_AND_ASSIGN(TypeName) \ | ||
1667 | +#ifndef DC_DISALLOW_COPY_AND_ASSIGN | ||
1668 | +#define DC_DISALLOW_COPY_AND_ASSIGN(TypeName) \ | ||
1669 | TypeName(const TypeName&); \ | ||
1670 | void operator=(const TypeName&) | ||
1671 | #endif | ||
1672 | @@ -104,10 +127,10 @@ | ||
1673 | // This should be used in the private: declarations for a class | ||
1674 | // that wants to prevent anyone from instantiating it. This is | ||
1675 | // especially useful for classes containing only static methods. | ||
1676 | -#ifndef DISALLOW_IMPLICIT_CONSTRUCTORS | ||
1677 | -#define DISALLOW_IMPLICIT_CONSTRUCTORS(TypeName) \ | ||
1678 | +#ifndef DC_DISALLOW_IMPLICIT_CONSTRUCTORS | ||
1679 | +#define DC_DISALLOW_IMPLICIT_CONSTRUCTORS(TypeName) \ | ||
1680 | TypeName(); \ | ||
1681 | - DISALLOW_COPY_AND_ASSIGN(TypeName) | ||
1682 | + DC_DISALLOW_COPY_AND_ASSIGN(TypeName) | ||
1683 | #endif | ||
1684 | |||
1685 | namespace double_conversion { | ||
1686 | @@ -139,8 +162,8 @@ template <typename T> | ||
1687 | class Vector { | ||
1688 | public: | ||
1689 | Vector() : start_(NULL), length_(0) {} | ||
1690 | - Vector(T* data, int length) : start_(data), length_(length) { | ||
1691 | - ASSERT(length == 0 || (length > 0 && data != NULL)); | ||
1692 | + Vector(T* data, int len) : start_(data), length_(len) { | ||
1693 | + ASSERT(len == 0 || (len > 0 && data != NULL)); | ||
1694 | } | ||
1695 | |||
1696 | // Returns a vector using the same backing storage as this one, | ||
1697 | @@ -182,8 +205,8 @@ class Vector { | ||
1698 | // buffer bounds on all operations in debug mode. | ||
1699 | class StringBuilder { | ||
1700 | public: | ||
1701 | - StringBuilder(char* buffer, int size) | ||
1702 | - : buffer_(buffer, size), position_(0) { } | ||
1703 | + StringBuilder(char* buffer, int buffer_size) | ||
1704 | + : buffer_(buffer, buffer_size), position_(0) { } | ||
1705 | |||
1706 | ~StringBuilder() { if (!is_finalized()) Finalize(); } | ||
1707 | |||
1708 | @@ -249,7 +272,7 @@ class StringBuilder { | ||
1709 | |||
1710 | bool is_finalized() const { return position_ < 0; } | ||
1711 | |||
1712 | - DISALLOW_IMPLICIT_CONSTRUCTORS(StringBuilder); | ||
1713 | + DC_DISALLOW_IMPLICIT_CONSTRUCTORS(StringBuilder); | ||
1714 | }; | ||
1715 | |||
1716 | // The type-based aliasing rule allows the compiler to assume that pointers of | ||
1717 | @@ -280,7 +303,12 @@ template <class Dest, class Source> | ||
1718 | inline Dest BitCast(const Source& source) { | ||
1719 | // Compile time assertion: sizeof(Dest) == sizeof(Source) | ||
1720 | // A compile error here means your Dest and Source have different sizes. | ||
1721 | +#if __cplusplus >= 201103L | ||
1722 | + static_assert(sizeof(Dest) == sizeof(Source), | ||
1723 | + "source and destination size mismatch"); | ||
1724 | +#else | ||
1725 | typedef char VerifySizesAreEqual[sizeof(Dest) == sizeof(Source) ? 1 : -1]; | ||
1726 | +#endif | ||
1727 | |||
1728 | Dest dest; | ||
1729 | memmove(&dest, &source, sizeof(dest)); | ||
1730 | -- | ||
1731 | 2.17.0 | ||
1732 | |||
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 ffeac4982..000000000 --- a/meta-oe/recipes-extended/mozjs/mozjs/Update-the-double-conversion-update-script.patch +++ /dev/null | |||
@@ -1,175 +0,0 @@ | |||
1 | From 1c3f6dd9bb478fea0622e8a9ba2efbf19d73e302 Mon Sep 17 00:00:00 2001 | ||
2 | From: Alistair Francis <alistair.francis@wdc.com> | ||
3 | Date: Fri, 1 Jun 2018 14:46:47 -0700 | ||
4 | Subject: [PATCH] Update the double conversion update script | ||
5 | |||
6 | Signed-off-by: Alistair Francis <alistair.francis@wdc.com> | ||
7 | --- | ||
8 | .../add-mfbt-api-markers.patch | 94 ------------------- | ||
9 | .../more-architectures.patch | 30 ------ | ||
10 | mfbt/double-conversion/update.sh | 8 +- | ||
11 | 3 files changed, 3 insertions(+), 129 deletions(-) | ||
12 | delete mode 100644 mfbt/double-conversion/add-mfbt-api-markers.patch | ||
13 | delete mode 100644 mfbt/double-conversion/more-architectures.patch | ||
14 | |||
15 | diff --git a/mfbt/double-conversion/add-mfbt-api-markers.patch b/mfbt/double-conversion/add-mfbt-api-markers.patch | ||
16 | deleted file mode 100644 | ||
17 | index b98ec74..0000000 | ||
18 | --- a/mfbt/double-conversion/add-mfbt-api-markers.patch | ||
19 | +++ /dev/null | ||
20 | @@ -1,94 +0,0 @@ | ||
21 | -diff --git a/mfbt/double-conversion/double-conversion.h b/mfbt/double-conversion/double-conversion.h | ||
22 | -index f98edae..e536a01 100644 | ||
23 | ---- a/mfbt/double-conversion/double-conversion.h | ||
24 | -+++ b/mfbt/double-conversion/double-conversion.h | ||
25 | -@@ -28,6 +28,7 @@ | ||
26 | - #ifndef DOUBLE_CONVERSION_DOUBLE_CONVERSION_H_ | ||
27 | - #define DOUBLE_CONVERSION_DOUBLE_CONVERSION_H_ | ||
28 | - | ||
29 | -+#include "mozilla/Types.h" | ||
30 | - #include "utils.h" | ||
31 | - | ||
32 | - namespace double_conversion { | ||
33 | -@@ -129,7 +130,7 @@ class DoubleToStringConverter { | ||
34 | - } | ||
35 | - | ||
36 | - // Returns a converter following the EcmaScript specification. | ||
37 | -- static const DoubleToStringConverter& EcmaScriptConverter(); | ||
38 | -+ static MFBT_API(const DoubleToStringConverter&) EcmaScriptConverter(); | ||
39 | - | ||
40 | - // Computes the shortest string of digits that correctly represent the input | ||
41 | - // number. Depending on decimal_in_shortest_low and decimal_in_shortest_high | ||
42 | -@@ -197,7 +198,7 @@ class DoubleToStringConverter { | ||
43 | - // The last two conditions imply that the result will never contain more than | ||
44 | - // 1 + kMaxFixedDigitsBeforePoint + 1 + kMaxFixedDigitsAfterPoint characters | ||
45 | - // (one additional character for the sign, and one for the decimal point). | ||
46 | -- bool ToFixed(double value, | ||
47 | -+ MFBT_API(bool) ToFixed(double value, | ||
48 | - int requested_digits, | ||
49 | - StringBuilder* result_builder) const; | ||
50 | - | ||
51 | -@@ -229,7 +230,7 @@ class DoubleToStringConverter { | ||
52 | - // kMaxExponentialDigits + 8 characters (the sign, the digit before the | ||
53 | - // decimal point, the decimal point, the exponent character, the | ||
54 | - // exponent's sign, and at most 3 exponent digits). | ||
55 | -- bool ToExponential(double value, | ||
56 | -+ MFBT_API(bool) ToExponential(double value, | ||
57 | - int requested_digits, | ||
58 | - StringBuilder* result_builder) const; | ||
59 | - | ||
60 | -@@ -267,7 +268,7 @@ class DoubleToStringConverter { | ||
61 | - // The last condition implies that the result will never contain more than | ||
62 | - // kMaxPrecisionDigits + 7 characters (the sign, the decimal point, the | ||
63 | - // exponent character, the exponent's sign, and at most 3 exponent digits). | ||
64 | -- bool ToPrecision(double value, | ||
65 | -+ MFBT_API(bool) ToPrecision(double value, | ||
66 | - int precision, | ||
67 | - StringBuilder* result_builder) const; | ||
68 | - | ||
69 | -@@ -292,7 +293,7 @@ class DoubleToStringConverter { | ||
70 | - // kBase10MaximalLength. | ||
71 | - // Note that DoubleToAscii null-terminates its input. So the given buffer | ||
72 | - // should be at least kBase10MaximalLength + 1 characters long. | ||
73 | -- static const int kBase10MaximalLength = 17; | ||
74 | -+ static const MFBT_DATA(int) kBase10MaximalLength = 17; | ||
75 | - | ||
76 | - // Converts the given double 'v' to ascii. 'v' must not be NaN, +Infinity, or | ||
77 | - // -Infinity. In SHORTEST_SINGLE-mode this restriction also applies to 'v' | ||
78 | -@@ -332,7 +333,7 @@ class DoubleToStringConverter { | ||
79 | - // terminating null-character when computing the maximal output size. | ||
80 | - // The given length is only used in debug mode to ensure the buffer is big | ||
81 | - // enough. | ||
82 | -- static void DoubleToAscii(double v, | ||
83 | -+ static MFBT_API(void) DoubleToAscii(double v, | ||
84 | - DtoaMode mode, | ||
85 | - int requested_digits, | ||
86 | - char* buffer, | ||
87 | -@@ -343,7 +344,7 @@ class DoubleToStringConverter { | ||
88 | - | ||
89 | - private: | ||
90 | - // Implementation for ToShortest and ToShortestSingle. | ||
91 | -- bool ToShortestIeeeNumber(double value, | ||
92 | -+ MFBT_API(bool) ToShortestIeeeNumber(double value, | ||
93 | - StringBuilder* result_builder, | ||
94 | - DtoaMode mode) const; | ||
95 | - | ||
96 | -@@ -351,15 +352,15 @@ class DoubleToStringConverter { | ||
97 | - // corresponding string using the configured infinity/nan-symbol. | ||
98 | - // If either of them is NULL or the value is not special then the | ||
99 | - // function returns false. | ||
100 | -- bool HandleSpecialValues(double value, StringBuilder* result_builder) const; | ||
101 | -+ MFBT_API(bool) HandleSpecialValues(double value, StringBuilder* result_builder) const; | ||
102 | - // Constructs an exponential representation (i.e. 1.234e56). | ||
103 | - // The given exponent assumes a decimal point after the first decimal digit. | ||
104 | -- void CreateExponentialRepresentation(const char* decimal_digits, | ||
105 | -+ MFBT_API(void) CreateExponentialRepresentation(const char* decimal_digits, | ||
106 | - int length, | ||
107 | - int exponent, | ||
108 | - StringBuilder* result_builder) const; | ||
109 | - // Creates a decimal representation (i.e 1234.5678). | ||
110 | -- void CreateDecimalRepresentation(const char* decimal_digits, | ||
111 | -+ MFBT_API(void) CreateDecimalRepresentation(const char* decimal_digits, | ||
112 | - int length, | ||
113 | - int decimal_point, | ||
114 | - int digits_after_point, | ||
115 | diff --git a/mfbt/double-conversion/more-architectures.patch b/mfbt/double-conversion/more-architectures.patch | ||
116 | deleted file mode 100644 | ||
117 | index b8d3804..0000000 | ||
118 | --- a/mfbt/double-conversion/more-architectures.patch | ||
119 | +++ /dev/null | ||
120 | @@ -1,30 +0,0 @@ | ||
121 | -diff --git a/mfbt/double-conversion/utils.h b/mfbt/double-conversion/utils.h | ||
122 | ---- a/mfbt/double-conversion/utils.h | ||
123 | -+++ b/mfbt/double-conversion/utils.h | ||
124 | -@@ -48,20 +48,24 @@ | ||
125 | - // An easy way to test if the floating-point operations are correct is to | ||
126 | - // evaluate: 89255.0/1e22. If the floating-point stack is 64 bits wide then | ||
127 | - // the result is equal to 89255e-22. | ||
128 | - // The best way to test this, is to create a division-function and to compare | ||
129 | - // the output of the division with the expected result. (Inlining must be | ||
130 | - // disabled.) | ||
131 | - // On Linux,x86 89255e-22 != Div_double(89255.0/1e22) | ||
132 | - #if defined(_M_X64) || defined(__x86_64__) || \ | ||
133 | -- defined(__ARMEL__) || \ | ||
134 | -+ defined(__ARMEL__) || defined(__avr32__) || \ | ||
135 | -+ defined(__hppa__) || defined(__ia64__) || \ | ||
136 | -+ defined(__mips__) || defined(__powerpc__) || \ | ||
137 | -+ defined(__sparc__) || defined(__sparc) || defined(__s390__) || \ | ||
138 | -+ defined(__SH4__) || defined(__alpha__) || \ | ||
139 | - defined(_MIPS_ARCH_MIPS32R2) | ||
140 | - #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 | ||
141 | --#elif defined(_M_IX86) || defined(__i386__) | ||
142 | -+#elif defined(_M_IX86) || defined(__i386__) || defined(__i386) | ||
143 | - #if defined(_WIN32) | ||
144 | - // Windows uses a 64bit wide floating point stack. | ||
145 | - #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 | ||
146 | - #else | ||
147 | - #undef DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS | ||
148 | - #endif // _WIN32 | ||
149 | - #else | ||
150 | - #error Target architecture was not detected as supported by Double-Conversion. | ||
151 | diff --git a/mfbt/double-conversion/update.sh b/mfbt/double-conversion/update.sh | ||
152 | index 81add8e..9ef2e91 100755 | ||
153 | --- a/mfbt/double-conversion/update.sh | ||
154 | +++ b/mfbt/double-conversion/update.sh | ||
155 | @@ -4,14 +4,12 @@ | ||
156 | # double-conversion source that we need. | ||
157 | |||
158 | cp $1/LICENSE ./ | ||
159 | -cp $1/README ./ | ||
160 | +cp $1/COPYING ./ | ||
161 | |||
162 | # Includes | ||
163 | -cp $1/src/*.h ./ | ||
164 | +cp $1/double-conversion/*.h ./ | ||
165 | |||
166 | # Source | ||
167 | -cp $1/src/*.cc ./ | ||
168 | +cp $1/double-conversion/*.cc ./ | ||
169 | |||
170 | -patch -p3 < add-mfbt-api-markers.patch | ||
171 | patch -p3 < use-StandardInteger.patch | ||
172 | -patch -p3 < more-architectures.patch | ||
173 | -- | ||
174 | 2.17.0 | ||
175 | |||
diff --git a/meta-oe/recipes-extended/mozjs/mozjs/fix-the-compile-error-of-powerpc64.patch b/meta-oe/recipes-extended/mozjs/mozjs/fix-the-compile-error-of-powerpc64.patch deleted file mode 100644 index 43c459042..000000000 --- a/meta-oe/recipes-extended/mozjs/mozjs/fix-the-compile-error-of-powerpc64.patch +++ /dev/null | |||
@@ -1,18 +0,0 @@ | |||
1 | fix the compile error of powerpc64 | ||
2 | |||
3 | Upstream-status: Accepted | ||
4 | |||
5 | fix the following error | ||
6 | |error: 'jsuword' does not name a type | ||
7 | |||
8 | |||
9 | --- a/js/src/jsval.hold 2015-04-24 01:15:06.692970731 -0500 | ||
10 | +++ b/js/src/jsval.h 2015-04-24 01:15:41.792969478 -0500 | ||
11 | @@ -304,7 +304,6 @@ | ||
12 | int32_t i32; | ||
13 | uint32_t u32; | ||
14 | JSWhyMagic why; | ||
15 | - jsuword word; | ||
16 | } payload; | ||
17 | } s; | ||
18 | double asDouble; | ||
diff --git a/meta-oe/recipes-extended/mozjs/mozjs/fix_milestone_compile_issue.patch b/meta-oe/recipes-extended/mozjs/mozjs/fix_milestone_compile_issue.patch deleted file mode 100644 index abde01bcd..000000000 --- a/meta-oe/recipes-extended/mozjs/mozjs/fix_milestone_compile_issue.patch +++ /dev/null | |||
@@ -1,20 +0,0 @@ | |||
1 | fix the compile error do to perl update | ||
2 | |||
3 | Upstream-status: Inappropriate | ||
4 | |||
5 | |||
6 | Signed-of-by: Armin Kuster <akuster808@gmail.com> | ||
7 | |||
8 | Index: src/config/milestone.pl | ||
9 | =================================================================== | ||
10 | --- src.orig/config/milestone.pl | ||
11 | +++ src/config/milestone.pl | ||
12 | @@ -55,7 +55,7 @@ $MILESTONE_FILE = "$TOPSRCDIR/config/mi | ||
13 | # | ||
14 | my $milestone = Moz::Milestone::getOfficialMilestone($MILESTONE_FILE); | ||
15 | |||
16 | -if (defined(@TEMPLATE_FILE)) { | ||
17 | +if (@TEMPLATE_FILE) { | ||
18 | my $TFILE; | ||
19 | |||
20 | foreach $TFILE (@TEMPLATE_FILE) { | ||
diff --git a/meta-oe/recipes-extended/mozjs/mozjs_17.0.0.bb b/meta-oe/recipes-extended/mozjs/mozjs_17.0.0.bb deleted file mode 100644 index c5fbab20b..000000000 --- a/meta-oe/recipes-extended/mozjs/mozjs_17.0.0.bb +++ /dev/null | |||
@@ -1,83 +0,0 @@ | |||
1 | SUMMARY = "SpiderMonkey is Mozilla's JavaScript engine written in C/C++" | ||
2 | HOMEPAGE = "http://www.mozilla.org/js/" | ||
3 | LICENSE = "MPL-2.0" | ||
4 | LIC_FILES_CHKSUM = "file://../../LICENSE;md5=815ca599c9df247a0c7f619bab123dad" | ||
5 | |||
6 | SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/js/${BPN}${PV}.tar.gz \ | ||
7 | file://0001-mozjs17.0.0-fix-the-compile-bug-of-powerpc.patch \ | ||
8 | file://0001-js.pc.in-do-not-include-RequiredDefines.h-for-depend.patch \ | ||
9 | file://0002-Move-JS_BYTES_PER_WORD-out-of-config.h.patch;patchdir=../../ \ | ||
10 | file://0004-mozbug746112-no-decommit-on-large-pages.patch;patchdir=../../ \ | ||
11 | file://0005-aarch64-64k-page.patch;patchdir=../../ \ | ||
12 | file://0001-regenerate-configure.patch;patchdir=../../ \ | ||
13 | file://fix-the-compile-error-of-powerpc64.patch;patchdir=../../ \ | ||
14 | file://fix_milestone_compile_issue.patch \ | ||
15 | file://0010-fix-cross-compilation-on-i586-targets.patch;patchdir=../../ \ | ||
16 | file://Manually_mmap_heap_memory_esr17.patch;patchdir=../../ \ | ||
17 | file://0001-compare-the-first-character-of-string-to-be-null-or-.patch;patchdir=../../ \ | ||
18 | file://Update-the-double-conversion-update-script.patch;patchdir=../../ \ | ||
19 | file://Update-Double-Conversion.patch;patchdir=../../ \ | ||
20 | " | ||
21 | |||
22 | SRC_URI[md5sum] = "20b6f8f1140ef6e47daa3b16965c9202" | ||
23 | SRC_URI[sha256sum] = "321e964fe9386785d3bf80870640f2fa1c683e32fe988eeb201b04471c172fba" | ||
24 | |||
25 | S = "${WORKDIR}/${BPN}${PV}/js/src" | ||
26 | |||
27 | inherit autotools pkgconfig perlnative pythonnative | ||
28 | |||
29 | DEPENDS += "nspr zlib" | ||
30 | |||
31 | # Host specific flags need to be defined, otherwise target flags will be passed to the host | ||
32 | export HOST_CFLAGS = "${BUILD_CFLAGS}" | ||
33 | export HOST_CXXFLAGS = "${BUILD_CXXFLAGS}" | ||
34 | export HOST_LDFLAGS = "${BUILD_LDFLAGS}" | ||
35 | |||
36 | # nspr's package-config is ignored so set libs manually | ||
37 | EXTRA_OECONF = " \ | ||
38 | --target=${TARGET_SYS} \ | ||
39 | --host=${BUILD_SYS} \ | ||
40 | --build=${BUILD_SYS} \ | ||
41 | --prefix=${prefix} \ | ||
42 | --libdir=${libdir} \ | ||
43 | --with-nspr-libs='-lplds4 -lplc4 -lnspr4' \ | ||
44 | --enable-threadsafe \ | ||
45 | --disable-static \ | ||
46 | " | ||
47 | EXTRA_OECONF_append_armv4 = " \ | ||
48 | --disable-methodjit \ | ||
49 | " | ||
50 | |||
51 | PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" | ||
52 | PACKAGECONFIG[x11] = "--with-x --x-includes=${STAGING_INCDIR} --x-libraries=${STAGING_LIBDIR},--without-x,virtual/libx11" | ||
53 | |||
54 | # mozjs requires autoreconf 2.13 | ||
55 | do_configure() { | ||
56 | export HOST_CFLAGS="${BUILD_CFLAGS}" | ||
57 | export HOST_CXXFLAGS="${BUILD_CPPFLAGS}" | ||
58 | export HOST_LDFLAGS="${BUILD_LDFLAGS}" | ||
59 | ( cd ${S} | ||
60 | gnu-configize --force | ||
61 | mv config.guess config.sub build/autoconf ) | ||
62 | ${S}/configure ${EXTRA_OECONF} | ||
63 | } | ||
64 | |||
65 | # patch.bbclass will try to apply the patches already present and fail, so clean them out | ||
66 | do_unpack() { | ||
67 | tar -xvf ${DL_DIR}/mozjs17.0.0.tar.gz -C ${WORKDIR}/ | ||
68 | rm -rf ${WORKDIR}/${BPN}${PV}/patches | ||
69 | } | ||
70 | |||
71 | |||
72 | PACKAGES =+ "lib${BPN}" | ||
73 | FILES_lib${BPN} += "${libdir}/lib*.so" | ||
74 | FILES_${PN}-dev += "${bindir}/js17-config" | ||
75 | |||
76 | # Fails to build with thumb-1 (qemuarm) | ||
77 | #| {standard input}: Assembler messages: | ||
78 | #| {standard input}:2172: Error: shifts in CMP/MOV instructions are only supported in unified syntax -- `mov r2,r1,LSR#20' | ||
79 | #| {standard input}:2173: Error: unshifted register required -- `bic r2,r2,#(1<<11)' | ||
80 | #| {standard input}:2174: Error: unshifted register required -- `orr r1,r1,#(1<<20)' | ||
81 | #| {standard input}:2176: Error: instruction not supported in Thumb16 mode -- `subs r2,r2,#0x300' | ||
82 | #| {standard input}:2178: Error: instruction not supported in Thumb16 mode -- `subs r5,r2,#52' | ||
83 | ARM_INSTRUCTION_SET = "arm" | ||
diff --git a/meta-oe/recipes-extended/mozjs/mozjs_52.8.1.bb b/meta-oe/recipes-extended/mozjs/mozjs_52.8.1.bb new file mode 100644 index 000000000..790960282 --- /dev/null +++ b/meta-oe/recipes-extended/mozjs/mozjs_52.8.1.bb | |||
@@ -0,0 +1,95 @@ | |||
1 | SUMMARY = "SpiderMonkey is Mozilla's JavaScript engine written in C/C++" | ||
2 | HOMEPAGE = "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey" | ||
3 | LICENSE = "MPL-2.0" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE;md5=815ca599c9df247a0c7f619bab123dad" | ||
5 | |||
6 | SRC_URI = "http://archive.ubuntu.com/ubuntu/pool/main/m/mozjs52/mozjs52_52.8.1.orig.tar.bz2 \ | ||
7 | file://0001-js.pc.in-do-not-include-RequiredDefines.h-for-depend.patch \ | ||
8 | file://0010-fix-cross-compilation-on-i586-targets.patch \ | ||
9 | file://0001-do-not-create-python-environment.patch \ | ||
10 | file://0002-fix-cannot-find-link.patch \ | ||
11 | file://0003-workaround-autoconf-2.13-detection-failed.patch \ | ||
12 | file://0004-do-not-use-autoconf-2.13-to-refresh-old.configure.patch \ | ||
13 | file://0005-fix-do_compile-failed-on-mips.patch \ | ||
14 | " | ||
15 | SRC_URI_append_libc-musl = " \ | ||
16 | file://0006-support-musl.patch \ | ||
17 | " | ||
18 | |||
19 | SRC_URI[md5sum] = "3a44c2fd3d7b5a370ed9184163c74bc4" | ||
20 | SRC_URI[sha256sum] = "fb5e11b7f31a33be820d5c947c5fa114751b0d5033778c1cd8e0cf2dad91e8fa" | ||
21 | |||
22 | inherit autotools pkgconfig perlnative pythonnative | ||
23 | |||
24 | DEPENDS += "nspr zlib" | ||
25 | |||
26 | # nspr's package-config is ignored so set libs manually | ||
27 | EXTRA_OECONF = " \ | ||
28 | --target=${TARGET_SYS} \ | ||
29 | --host=${BUILD_SYS} \ | ||
30 | --prefix=${prefix} \ | ||
31 | --libdir=${libdir} \ | ||
32 | --disable-tests \ | ||
33 | --with-nspr-libs='-lplds4 -lplc4 -lnspr4' \ | ||
34 | " | ||
35 | |||
36 | PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" | ||
37 | PACKAGECONFIG[x11] = "--x-includes=${STAGING_INCDIR} --x-libraries=${STAGING_LIBDIR},,virtual/libx11" | ||
38 | |||
39 | EXTRA_OEMAKE_task-compile += "OS_LDFLAGS='-Wl,-latomic ${LDFLAGS}'" | ||
40 | EXTRA_OEMAKE_task-install += "STATIC_LIBRARY_NAME=js_static" | ||
41 | |||
42 | do_configure() { | ||
43 | export SHELL="/bin/sh" | ||
44 | ${S}/js/src/configure ${EXTRA_OECONF} | ||
45 | } | ||
46 | |||
47 | do_compile_prepend() { | ||
48 | export SHELL="/bin/sh" | ||
49 | export S | ||
50 | export PYTHONPATH | ||
51 | cd ${S} | ||
52 | for sub_dir in python testing/mozbase; do | ||
53 | for module_dir in `ls $sub_dir -1`;do | ||
54 | [ $module_dir = "virtualenv" ] && continue | ||
55 | if [ -d "${S}/$sub_dir/$module_dir" ];then | ||
56 | PYTHONPATH="$PYTHONPATH:${S}/$sub_dir/$module_dir" | ||
57 | fi | ||
58 | done | ||
59 | done | ||
60 | PYTHONPATH="$PYTHONPATH:${S}/config:${S}/build" | ||
61 | cd - | ||
62 | } | ||
63 | |||
64 | do_install_prepend() { | ||
65 | export SHELL="/bin/sh" | ||
66 | export S | ||
67 | export PYTHONPATH | ||
68 | cd ${S} | ||
69 | for sub_dir in python testing/mozbase; do | ||
70 | for module_dir in `ls $sub_dir -1`;do | ||
71 | [ $module_dir = "virtualenv" ] && continue | ||
72 | if [ -d "${S}/$sub_dir/$module_dir" ];then | ||
73 | PYTHONPATH="$PYTHONPATH:${S}/$sub_dir/$module_dir" | ||
74 | fi | ||
75 | done | ||
76 | done | ||
77 | PYTHONPATH="$PYTHONPATH:${S}/config:${S}/build" | ||
78 | cd - | ||
79 | } | ||
80 | |||
81 | PACKAGES =+ "lib${BPN}" | ||
82 | FILES_lib${BPN} += "${libdir}/lib*.so" | ||
83 | FILES_${PN}-dev += "${bindir}/js52-config" | ||
84 | |||
85 | # Fails to build with thumb-1 (qemuarm) | ||
86 | #| {standard input}: Assembler messages: | ||
87 | #| {standard input}:2172: Error: shifts in CMP/MOV instructions are only supported in unified syntax -- `mov r2,r1,LSR#20' | ||
88 | #| {standard input}:2173: Error: unshifted register required -- `bic r2,r2,#(1<<11)' | ||
89 | #| {standard input}:2174: Error: unshifted register required -- `orr r1,r1,#(1<<20)' | ||
90 | #| {standard input}:2176: Error: instruction not supported in Thumb16 mode -- `subs r2,r2,#0x300' | ||
91 | #| {standard input}:2178: Error: instruction not supported in Thumb16 mode -- `subs r5,r2,#52' | ||
92 | ARM_INSTRUCTION_SET_armv5 = "arm" | ||
93 | ARM_INSTRUCTION_SET_armv4 = "arm" | ||
94 | |||
95 | DISABLE_STATIC = "" | ||