diff options
35 files changed, 3004 insertions, 2152 deletions
diff --git a/.github/rust-openssl.patch b/.github/rust-openssl.patch new file mode 100644 index 0000000..56a3941 --- /dev/null +++ b/.github/rust-openssl.patch | |||
@@ -0,0 +1,14 @@ | |||
1 | diff --git a/openssl-sys/build/main.rs b/openssl-sys/build/main.rs | ||
2 | index 71b36c23..644a318d 100644 | ||
3 | --- a/openssl-sys/build/main.rs | ||
4 | +++ b/openssl-sys/build/main.rs | ||
5 | @@ -281,8 +281,7 @@ See rust-openssl documentation for more information: | ||
6 | (3, 4, _) => ('3', '4', 'x'), | ||
7 | (3, 5, _) => ('3', '5', 'x'), | ||
8 | (3, 6, 0) => ('3', '6', '0'), | ||
9 | - (3, 6, _) => ('3', '6', 'x'), | ||
10 | - _ => version_error(), | ||
11 | + _ => ('3', '6', 'x'), | ||
12 | }; | ||
13 | |||
14 | println!("cargo:libressl=true"); | ||
diff --git a/.github/workflows/android_test.yml b/.github/workflows/android_test.yml index 6ce002b..4ecbfac 100644 --- a/.github/workflows/android_test.yml +++ b/.github/workflows/android_test.yml | |||
@@ -12,7 +12,7 @@ jobs: | |||
12 | MAX_NAL: 28 | 12 | MAX_NAL: 28 |
13 | name: Android 8.x 9 | 13 | name: Android 8.x 9 |
14 | steps: | 14 | steps: |
15 | - uses: actions/checkout@v2 | 15 | - uses: actions/checkout@main |
16 | - name: Run CI script | 16 | - name: Run CI script |
17 | run: ./scripts/test | 17 | run: ./scripts/test |
18 | 18 | ||
@@ -25,6 +25,6 @@ jobs: | |||
25 | MAX_NAL: 30 | 25 | MAX_NAL: 30 |
26 | name: Android 10 11 | 26 | name: Android 10 11 |
27 | steps: | 27 | steps: |
28 | - uses: actions/checkout@v2 | 28 | - uses: actions/checkout@main |
29 | - name: Run CI script | 29 | - name: Run CI script |
30 | run: ./scripts/test | 30 | run: ./scripts/test |
diff --git a/.github/workflows/cifuzz.yml b/.github/workflows/cifuzz.yml new file mode 100644 index 0000000..8c25624 --- /dev/null +++ b/.github/workflows/cifuzz.yml | |||
@@ -0,0 +1,26 @@ | |||
1 | name: CIFuzz | ||
2 | on: [pull_request] | ||
3 | jobs: | ||
4 | Fuzzing: | ||
5 | runs-on: ubuntu-latest | ||
6 | steps: | ||
7 | - name: Build Fuzzers | ||
8 | id: build | ||
9 | uses: google/oss-fuzz/infra/cifuzz/actions/build_fuzzers@master | ||
10 | with: | ||
11 | oss-fuzz-project-name: 'libressl' | ||
12 | dry-run: false | ||
13 | language: c++ | ||
14 | - name: Run Fuzzers | ||
15 | uses: google/oss-fuzz/infra/cifuzz/actions/run_fuzzers@master | ||
16 | with: | ||
17 | oss-fuzz-project-name: 'libressl' | ||
18 | fuzz-seconds: 300 | ||
19 | dry-run: false | ||
20 | language: c++ | ||
21 | - name: Upload Crash | ||
22 | uses: actions/upload-artifact@v3 | ||
23 | if: failure() && steps.build.outcome == 'success' | ||
24 | with: | ||
25 | name: artifacts | ||
26 | path: ./out/artifacts | ||
diff --git a/.github/workflows/coverity.yml b/.github/workflows/coverity.yml index 40e7a07..444cc0b 100644 --- a/.github/workflows/coverity.yml +++ b/.github/workflows/coverity.yml | |||
@@ -15,7 +15,7 @@ jobs: | |||
15 | COVERITY_SCAN_BUILD_COMMAND_PREPEND: "./autogen.sh && ./configure && make dist && tar zxf libressl-*.tar.gz && rm libressl-*.tar.gz && cd libressl-* && mkdir build-static && mkdir build-shared && cmake -GNinja -DBUILD_SHARED_LIBS=ON .." | 15 | COVERITY_SCAN_BUILD_COMMAND_PREPEND: "./autogen.sh && ./configure && make dist && tar zxf libressl-*.tar.gz && rm libressl-*.tar.gz && cd libressl-* && mkdir build-static && mkdir build-shared && cmake -GNinja -DBUILD_SHARED_LIBS=ON .." |
16 | COVERITY_SCAN_BUILD_COMMAND: "ninja" | 16 | COVERITY_SCAN_BUILD_COMMAND: "ninja" |
17 | steps: | 17 | steps: |
18 | - uses: actions/checkout@v2 | 18 | - uses: actions/checkout@main |
19 | - name: Install apt dependencies | 19 | - name: Install apt dependencies |
20 | run: | | 20 | run: | |
21 | sudo apt-get update | 21 | sudo apt-get update |
diff --git a/.github/workflows/cross_test.yml b/.github/workflows/cross_test.yml index c5b6b25..af09309 100644 --- a/.github/workflows/cross_test.yml +++ b/.github/workflows/cross_test.yml | |||
@@ -15,6 +15,6 @@ jobs: | |||
15 | ARCH: ${{ matrix.arch }} | 15 | ARCH: ${{ matrix.arch }} |
16 | name: ${{ matrix.arch }} - ${{ matrix.os }} | 16 | name: ${{ matrix.arch }} - ${{ matrix.os }} |
17 | steps: | 17 | steps: |
18 | - uses: actions/checkout@v2 | 18 | - uses: actions/checkout@main |
19 | - name: Run CI script | 19 | - name: Run CI script |
20 | run: ./scripts/test | 20 | run: ./scripts/test |
diff --git a/.github/workflows/linux_test.yml b/.github/workflows/linux_test.yml index 028c1a4..105f891 100644 --- a/.github/workflows/linux_test.yml +++ b/.github/workflows/linux_test.yml | |||
@@ -15,6 +15,6 @@ jobs: | |||
15 | ARCH: native | 15 | ARCH: native |
16 | name: ${{ matrix.compiler }} - ${{ matrix.os }} | 16 | name: ${{ matrix.compiler }} - ${{ matrix.os }} |
17 | steps: | 17 | steps: |
18 | - uses: actions/checkout@v2 | 18 | - uses: actions/checkout@main |
19 | - name: Run CI script | 19 | - name: Run CI script |
20 | run: ./scripts/test | 20 | run: ./scripts/test |
diff --git a/.github/workflows/linux_test_asan.yml b/.github/workflows/linux_test_asan.yml index d6fc1e8..12e0889 100644 --- a/.github/workflows/linux_test_asan.yml +++ b/.github/workflows/linux_test_asan.yml | |||
@@ -18,6 +18,6 @@ jobs: | |||
18 | CTEST_OUTPUT_ON_FAILURE: 1 | 18 | CTEST_OUTPUT_ON_FAILURE: 1 |
19 | name: ${{ matrix.compiler }} - ${{ matrix.os }} | 19 | name: ${{ matrix.compiler }} - ${{ matrix.os }} |
20 | steps: | 20 | steps: |
21 | - uses: actions/checkout@v2 | 21 | - uses: actions/checkout@main |
22 | - name: Run CI script | 22 | - name: Run CI script |
23 | run: ./scripts/test | 23 | run: ./scripts/test |
diff --git a/.github/workflows/macos_test.yml b/.github/workflows/macos_test.yml index 6e7adac..83a1b35 100644 --- a/.github/workflows/macos_test.yml +++ b/.github/workflows/macos_test.yml | |||
@@ -17,6 +17,6 @@ jobs: | |||
17 | steps: | 17 | steps: |
18 | - name: Install packages for macos | 18 | - name: Install packages for macos |
19 | run: brew install automake | 19 | run: brew install automake |
20 | - uses: actions/checkout@v2 | 20 | - uses: actions/checkout@main |
21 | - name: Run CI script | 21 | - name: Run CI script |
22 | run: ./scripts/test | 22 | run: ./scripts/test |
diff --git a/.github/workflows/regress.yml b/.github/workflows/regress.yml new file mode 100644 index 0000000..7cc35dc --- /dev/null +++ b/.github/workflows/regress.yml | |||
@@ -0,0 +1,33 @@ | |||
1 | name: regress testing | ||
2 | |||
3 | on: | ||
4 | schedule: | ||
5 | - cron: "0 0 * * *" | ||
6 | |||
7 | jobs: | ||
8 | rust-openssl: | ||
9 | runs-on: ubuntu-latest | ||
10 | steps: | ||
11 | - uses: actions/checkout@main | ||
12 | - name: Install apt dependencies | ||
13 | run: | | ||
14 | sudo apt-get update | ||
15 | sudo apt-get install -y cargo | ||
16 | - name: Build LibreSSL | ||
17 | run: | | ||
18 | ./autogen.sh | ||
19 | ./configure | ||
20 | make dist | ||
21 | tar zxvf libressl-*.tar.gz | ||
22 | rm libressl-*.tar.gz | ||
23 | cd libressl-* | ||
24 | ./configure --prefix="${HOME}/opt" | ||
25 | make all install | ||
26 | - name: run rust-openssl tests | ||
27 | run: | | ||
28 | git clone https://github.com/sfackler/rust-openssl.git | ||
29 | cd rust-openssl | ||
30 | export OPENSSL_DIR=${HOME}/opt | ||
31 | export LD_LIBRARY_PATH=${HOME}/opt/lib | ||
32 | patch -p1 < ../.github/rust-openssl.patch | ||
33 | cargo test | ||
diff --git a/CMakeLists.txt b/CMakeLists.txt index 03963a5..68a7c2d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt | |||
@@ -291,6 +291,11 @@ if(HAVE_ENDIAN_H) | |||
291 | add_definitions(-DHAVE_ENDIAN_H) | 291 | add_definitions(-DHAVE_ENDIAN_H) |
292 | endif() | 292 | endif() |
293 | 293 | ||
294 | check_include_files(machine/endian.h HAVE_MACHINE_ENDIAN_H) | ||
295 | if(HAVE_MACHINE_ENDIAN_H) | ||
296 | add_definitions(-DHAVE_MACHINE_ENDIAN_H) | ||
297 | endif() | ||
298 | |||
294 | check_include_files(err.h HAVE_ERR_H) | 299 | check_include_files(err.h HAVE_ERR_H) |
295 | if(HAVE_ERR_H) | 300 | if(HAVE_ERR_H) |
296 | add_definitions(-DHAVE_ERR_H) | 301 | add_definitions(-DHAVE_ERR_H) |
@@ -28,6 +28,204 @@ history is also available from Git. | |||
28 | 28 | ||
29 | LibreSSL Portable Release Notes: | 29 | LibreSSL Portable Release Notes: |
30 | 30 | ||
31 | 3.7.0 - Development release | ||
32 | |||
33 | * Internal improvements | ||
34 | - Remove dependency on system timegm() and gmtime() by replacing | ||
35 | traditional Julian date conversion with POSIX epoch-seconds date | ||
36 | conversion from BoringSSL. | ||
37 | - Clean old and unused BN code dealing with primes. | ||
38 | - Start rewriting name constraints code using CBS. | ||
39 | - Remove support for the HMAC PRIVATE KEY. | ||
40 | - Rework DSA signing and verifying internals. | ||
41 | - First few passes on cleaning up the BN code. | ||
42 | - Internal headers coming from OpenSSL are all called *_local.h now. | ||
43 | - Rewrite TLSv1.2 key exporter. | ||
44 | - Cleaned up and refactored various aspects of the legacy TLS stack. | ||
45 | * Compatibility changes | ||
46 | - BIO_read() and BIO_write() now behave more closely to OpenSSL 3 in | ||
47 | various corner cases. More work is needed here. | ||
48 | * Bug fixes | ||
49 | - Add EVP_chacha20_poly1305() to the list of all ciphers. | ||
50 | - Fix potential leaks of EVP_PKEY in various printing functions | ||
51 | - Fix potential leak in OBJ_NAME_add(). | ||
52 | - Avoid signed overflow in i2c_ASN1_BIT_STRING(). | ||
53 | - Clean up EVP_PKEY_ASN1_METHOD related tables and code. | ||
54 | - Fix long standing bugs BN_GF2m_poly2arr() and BN_GF2m_mod(). | ||
55 | - Fix segfaults in BN_{dec,hex}2bn(). | ||
56 | - Fix NULL dereference in x509_constraints_uri_host() reachable only | ||
57 | in the process of generating certificates. | ||
58 | - Fixed a variety of memory corruption issues in BIO chains coming | ||
59 | from poor old and new API: BIO_push(), BIO_pop(), BIO_set_next(). | ||
60 | - Avoid potential divide by zero in BIO_dump_indent_cb() | ||
61 | * Documentation improvements | ||
62 | - Numerous improvements and additions for ASN.1, BIO, BN, and X.509. | ||
63 | - The BN documentation is now considered to be complete. | ||
64 | * Testing and Proactive Security | ||
65 | - As always, new test coverage is added as bugs are fixed and | ||
66 | subsystems are cleaned up. | ||
67 | - Many old tests rewritten, cleaned up and extended. | ||
68 | * New features | ||
69 | - Added Ed25519 support both as a primitive and via OpenSSL's EVP | ||
70 | interfaces. | ||
71 | - X25519 is now also supported via EVP. | ||
72 | - The OpenSSL 1.1 raw public and private key API is available with | ||
73 | support for EVP_PKEY_ED25519, EVP_PKEY_HMAC and EVP_PKEY_X25519. | ||
74 | Poly1305 is not currently supported via this interface. | ||
75 | |||
76 | 3.6.1 - Stable release | ||
77 | |||
78 | * Bug fixes | ||
79 | - Custom verification callbacks could cause the X.509 verifier to | ||
80 | fail to store errors resulting from leaf certificate verification. | ||
81 | Reported by Ilya Shipitsin. | ||
82 | - Unbreak ASN.1 indefinite length encoding. | ||
83 | Reported by Niklas Hallqvist. | ||
84 | |||
85 | 3.6.0 - Development release | ||
86 | |||
87 | * Internal improvements | ||
88 | - Avoid expensive RFC 3779 checks during cert verification. | ||
89 | - The templated ASN.1 decoder has been cleaned up, refactored, | ||
90 | modernized with parts rewritten using CBB and CBS. | ||
91 | - The ASN.1 time parser has been rewritten. | ||
92 | - Rewrite and fix ASN1_STRING_to_UTF8(). | ||
93 | - Use asn1_abs_set_unused_bits() rather than inlining it. | ||
94 | - Simplify ec_asn1_group2curve(). | ||
95 | - First pass at a clean up of ASN1_item_sign_ctx() | ||
96 | - ssl_txt.c was cleaned up. | ||
97 | - Internal function arguments and struct member have been changed | ||
98 | to size_t. | ||
99 | - Lots of missing error checks of EVP API were added. | ||
100 | - Clean up and clarify BN_kronecker(). | ||
101 | - Simplify ASN1_INTEGER_cmp() | ||
102 | - Rewrite ASN1_INTEGER_{get,set}() using CBS and CBB and reuse | ||
103 | the ASN1_INTEGER functions for ASN1_ENUMERATED. | ||
104 | - Use ASN1_INTEGER to parse and build {Z,}LONG_it | ||
105 | - Refactored and cleaned up group (elliptic curve) handling in | ||
106 | t1_lib.c. | ||
107 | - Simplify certificate list handling code in the legacy server. | ||
108 | - Make CBB_finish() fail if *out_data is not NULL. | ||
109 | - Remove tls_buffer_set_data() and remove/revise callers. | ||
110 | - Rewrite SSL{_CTX,}_set_alpn_protos() using CBS. | ||
111 | - Simplify tlsext_supported_groups_server_parse(). | ||
112 | - Remove redundant length checks in tlsext parse functions. | ||
113 | - Simplify tls13_server_encrypted_extensions_recv(). | ||
114 | - Add read and write support to tls_buffer. | ||
115 | - Convert TLS transcript from BUF_MEM to tls_buffer. | ||
116 | - Clear key on exit in PKCS12_gen_mac(). | ||
117 | - Minor fixes in PKCS12_parse(). | ||
118 | - Provide and use a primitive clear function for BIGNUM_it. | ||
119 | - Use ASN1_INTEGER to encode/decode BIGNUM_it. | ||
120 | - Add stack frames to AES-NI x86_64 assembly. | ||
121 | - Use named initialisers for BIGNUMs. | ||
122 | - Tidy up some of BN_nist_mod_*. | ||
123 | - Expand BLOCK_CIPHER_* and related macros. | ||
124 | - Avoid shadowing the cbs function parameter in | ||
125 | tlsext_alpn_server_parse() | ||
126 | - Deduplicate peer certificate chain processing code. | ||
127 | - Make it possible to signal an error from an i2c_* function. | ||
128 | - Rewrite i2c_ASN1_INTEGER() using CBB/CBS. | ||
129 | - Remove UINT32_MAX limitation on ChaCha() and CRYPTO_chacha_20(). | ||
130 | - Remove bogus length checks from EVP_aead_chacha20_poly1305(). | ||
131 | - Reworked DSA_size() and ECDSA_size(). | ||
132 | - Stop using CBIGNUM_it internal to libcrypto. | ||
133 | - Provide c2i_ASN1_ENUMERATED_cbs() and call it from | ||
134 | asn1_c2i_primitive(). | ||
135 | - Ensure ASN.1 types are appropriately encoded. | ||
136 | - Avoid recycling ASN1_STRINGs when decoding ASN.1. | ||
137 | - Tidy up asn1_c2i_primitive() slightly. | ||
138 | - Mechanically expand IMPLEMENT_BLOCK_CIPHER, IMPLEMENT_CFBR, | ||
139 | BLOCK_CIPHER and the looney M_do_cipher macros. | ||
140 | - Use correct length for EVP CFB mode ciphers. | ||
141 | - Provide a version of ssl_msg_callback() that takes a CBS. | ||
142 | - Use CBS to parse TLS alerts in the legacy stack. | ||
143 | - Increment the input and output position for EVP AES CFB1. | ||
144 | - Ensure there is no trailing data for a CCS received by the | ||
145 | TLSv1.3 stack. | ||
146 | - Use CBS when procesing a CCS message in the legacy stack. | ||
147 | - Be stricter with middlebox compatibility mode in the TLSv1.3 | ||
148 | server. | ||
149 | * Compatibility changes | ||
150 | - The ASN.1 time parser has been refactored and rewritten using CBS. | ||
151 | It has been made stricter in that it now enforces the rules from | ||
152 | RFC 5280. | ||
153 | - ASN1_AFLG_BROKEN was removed. | ||
154 | - Error check tls_session_secret_cb() like OpenSSL. | ||
155 | - Added ASN1_INTEGER_{get,set}_{u,}int64() | ||
156 | - Move leaf certificate checks to the last thing after chain | ||
157 | validation. | ||
158 | - Added -s option to openssl(1) ciphers that only shows the ciphers | ||
159 | supported by the specified protocol. | ||
160 | - Use TLS_client_method() instead of TLSv1_client_method() in | ||
161 | the openssl(1) ciphers command. | ||
162 | - Validate the protocols in SSL{_CTX,}_set_alpn_protos(). | ||
163 | - Made TS and PKCS12 opaque. | ||
164 | - Per RFC 7292, safeContentsBag is a SEQUENCE OF, not a SET OF. | ||
165 | - Align PKCS12_key_gen_uni() with OpenSSL | ||
166 | - Various PKCS12 and TS accessors were added. In particular, the | ||
167 | TS_RESP_CTX_set_time_cb() function was added back. | ||
168 | - Allow a NULL header in PEM_write{,_bio}() | ||
169 | - Allow empty attribute sets in CSRs. | ||
170 | - Adjust signatures of BIO_ctrl functions. | ||
171 | - Provide additional defines for EVP AEAD. | ||
172 | - Provide OPENSSL_cleanup(). | ||
173 | - Make BIO_info_cb() identical to bio_info_cb(). | ||
174 | * Bug fixes | ||
175 | - Avoid use of uninitialized in BN_mod_exp_recp(). | ||
176 | - Fix X509_get_extension_flags() by ensuring that EXFLAG_INVALID is | ||
177 | set on X509_get_purpose() failure. | ||
178 | - Fix HMAC() with NULL key. | ||
179 | - Add ERR_load_{COMP,CT,KDF}_strings() to ERR_load_crypto_strings(). | ||
180 | - Avoid strict aliasing violations in BN_nist_mod_*(). | ||
181 | - Do not return X509_V_ERR_UNSPECIFIED from X509_check_ca(). | ||
182 | No return value of X509_check_ca() indicates failure. Application | ||
183 | code should therefore issue a checked call to X509_check_purpose() | ||
184 | before calling X509_check_ca(). | ||
185 | - Rewrite and fix X509v3_asid_subset() to avoid segfaults on some | ||
186 | valid input. | ||
187 | - Call the ASN1_OP_D2I_PRE callback after ASN1_item_ex_new(). | ||
188 | - Fix d2i_ASN1_OBJECT to advance the *der_in pointer correctly. | ||
189 | - Avoid use of uninitialized in ASN1_STRING_to_UTF8(). | ||
190 | - Do not pass uninitialized pointer to ASN1_STRING_to_UTF8(). | ||
191 | - Do not refuse valid IPv6 addresses in nc(1)'s HTTP CONNECT proxy. | ||
192 | - Do not reject primes in trial divisions. | ||
193 | - Error out on negative shifts in BN_{r,l}shift() instead of | ||
194 | accessing arrays out of bounds. | ||
195 | - Fix URI name constraints, allow for URI's with no host part. | ||
196 | - Fix the legacy verifier callback behaviour for untrusted certs. | ||
197 | - Correct serfver-side handling of TLSv1.3 key updates. | ||
198 | - Plug leak in PKCS12_setup_mac(). | ||
199 | - Plug leak in X509V3_add1_i2d(). | ||
200 | - Only print X.509 versions we know about. | ||
201 | - Avoid signed integer overflow due to unary negation | ||
202 | - Initialize readbytes in BIO_gets(). | ||
203 | - Plug memory leak in CMS_add_simple_smimecap(). | ||
204 | - Plug memory leak in X509_REQ_print_ex(). | ||
205 | - Check HMAC() return value to avoid a later use of uninitialized. | ||
206 | - Avoid potential NULL dereference in ssl_set_pkey(). | ||
207 | - Check return values in ssl_print_tmp_key(). | ||
208 | - Switch loop bounds from size_t to int in check_hosts(). | ||
209 | - Avoid division by zero if no connection was made in s_time.c. | ||
210 | - Check sk_SSL_CIPHER_push() return value | ||
211 | - Avoid out-of-bounds read in ssl_cipher_process_rulestr(). | ||
212 | - Use LONG_MAX as the limit for ciphers with long based APIs. | ||
213 | * New features | ||
214 | - EVP API for HKDF ported from OpenSSL and subsequently cleaned up. | ||
215 | - The security level API (SSL_{,CTX}_{get,set}_security_level()) is | ||
216 | now available. Callbacks and ex_data are not supported. Sane | ||
217 | software will not be using this. | ||
218 | - Experimental support for the BoringSSL QUIC API. | ||
219 | - Add initial support for TS ESSCertIDv2 verification. | ||
220 | - LibreSSL now uses the Baillie-PSW primality test instead of | ||
221 | Miller-Rabin . | ||
222 | |||
223 | 3.5.3 - Reliability fix | ||
224 | |||
225 | * Fix d2i_ASN1_OBJECT(). A confusion of two CBS resulted in advancing | ||
226 | the passed *der_in pointer incorrectly. Thanks to Aram Sargsyan for | ||
227 | reporting the issue and testing the fix. | ||
228 | |||
31 | 3.5.2 - Stable release | 229 | 3.5.2 - Stable release |
32 | 230 | ||
33 | * Bug fixes | 231 | * Bug fixes |
diff --git a/crypto/CMakeLists.txt b/crypto/CMakeLists.txt index 2c0268c..8956884 100644 --- a/crypto/CMakeLists.txt +++ b/crypto/CMakeLists.txt | |||
@@ -236,7 +236,6 @@ set( | |||
236 | o_fips.c | 236 | o_fips.c |
237 | o_init.c | 237 | o_init.c |
238 | o_str.c | 238 | o_str.c |
239 | o_time.c | ||
240 | aes/aes_cfb.c | 239 | aes/aes_cfb.c |
241 | aes/aes_ctr.c | 240 | aes/aes_ctr.c |
242 | aes/aes_ecb.c | 241 | aes/aes_ecb.c |
@@ -257,6 +256,7 @@ set( | |||
257 | asn1/a_string.c | 256 | asn1/a_string.c |
258 | asn1/a_strnid.c | 257 | asn1/a_strnid.c |
259 | asn1/a_time.c | 258 | asn1/a_time.c |
259 | asn1/a_time_posix.c | ||
260 | asn1/a_time_tm.c | 260 | asn1/a_time_tm.c |
261 | asn1/a_type.c | 261 | asn1/a_type.c |
262 | asn1/a_utf8.c | 262 | asn1/a_utf8.c |
@@ -356,6 +356,7 @@ set( | |||
356 | bn/bn_rand.c | 356 | bn/bn_rand.c |
357 | bn/bn_recp.c | 357 | bn/bn_recp.c |
358 | bn/bn_shift.c | 358 | bn/bn_shift.c |
359 | bn/bn_small_primes.c | ||
359 | bn/bn_sqr.c | 360 | bn/bn_sqr.c |
360 | bn/bn_sqrt.c | 361 | bn/bn_sqrt.c |
361 | bn/bn_word.c | 362 | bn/bn_word.c |
@@ -488,6 +489,7 @@ set( | |||
488 | ec/ecp_nist.c | 489 | ec/ecp_nist.c |
489 | ec/ecp_oct.c | 490 | ec/ecp_oct.c |
490 | ec/ecp_smpl.c | 491 | ec/ecp_smpl.c |
492 | ec/ecx_methods.c | ||
491 | ecdh/ecdh_kdf.c | 493 | ecdh/ecdh_kdf.c |
492 | ecdh/ech_err.c | 494 | ecdh/ech_err.c |
493 | ecdh/ech_key.c | 495 | ecdh/ech_key.c |
@@ -992,6 +994,7 @@ target_include_directories(crypto_obj | |||
992 | bytestring | 994 | bytestring |
993 | dh | 995 | dh |
994 | dsa | 996 | dsa |
997 | curve25519 | ||
995 | ec | 998 | ec |
996 | ecdh | 999 | ecdh |
997 | ecdsa | 1000 | ecdsa |
diff --git a/crypto/Makefile.am b/crypto/Makefile.am index 01833d2..bc3d4c2 100644 --- a/crypto/Makefile.am +++ b/crypto/Makefile.am | |||
@@ -6,6 +6,7 @@ AM_CPPFLAGS += -I$(top_srcdir)/crypto/asn1 | |||
6 | AM_CPPFLAGS += -I$(top_srcdir)/crypto/bio | 6 | AM_CPPFLAGS += -I$(top_srcdir)/crypto/bio |
7 | AM_CPPFLAGS += -I$(top_srcdir)/crypto/bn | 7 | AM_CPPFLAGS += -I$(top_srcdir)/crypto/bn |
8 | AM_CPPFLAGS += -I$(top_srcdir)/crypto/bytestring | 8 | AM_CPPFLAGS += -I$(top_srcdir)/crypto/bytestring |
9 | AM_CPPFLAGS += -I$(top_srcdir)/crypto/curve25519 | ||
9 | AM_CPPFLAGS += -I$(top_srcdir)/crypto/dh | 10 | AM_CPPFLAGS += -I$(top_srcdir)/crypto/dh |
10 | AM_CPPFLAGS += -I$(top_srcdir)/crypto/dsa | 11 | AM_CPPFLAGS += -I$(top_srcdir)/crypto/dsa |
11 | AM_CPPFLAGS += -I$(top_srcdir)/crypto/ec | 12 | AM_CPPFLAGS += -I$(top_srcdir)/crypto/ec |
@@ -285,12 +286,10 @@ libcrypto_la_SOURCES += mem_dbg.c | |||
285 | libcrypto_la_SOURCES += o_fips.c | 286 | libcrypto_la_SOURCES += o_fips.c |
286 | libcrypto_la_SOURCES += o_init.c | 287 | libcrypto_la_SOURCES += o_init.c |
287 | libcrypto_la_SOURCES += o_str.c | 288 | libcrypto_la_SOURCES += o_str.c |
288 | libcrypto_la_SOURCES += o_time.c | ||
289 | noinst_HEADERS += arm_arch.h | 289 | noinst_HEADERS += arm_arch.h |
290 | noinst_HEADERS += constant_time_locl.h | 290 | noinst_HEADERS += constant_time.h |
291 | noinst_HEADERS += cryptlib.h | 291 | noinst_HEADERS += cryptlib.h |
292 | noinst_HEADERS += md32_common.h | 292 | noinst_HEADERS += md32_common.h |
293 | noinst_HEADERS += o_time.h | ||
294 | noinst_HEADERS += x86_arch.h | 293 | noinst_HEADERS += x86_arch.h |
295 | 294 | ||
296 | # aes | 295 | # aes |
@@ -301,7 +300,7 @@ libcrypto_la_SOURCES += aes/aes_ige.c | |||
301 | libcrypto_la_SOURCES += aes/aes_misc.c | 300 | libcrypto_la_SOURCES += aes/aes_misc.c |
302 | libcrypto_la_SOURCES += aes/aes_ofb.c | 301 | libcrypto_la_SOURCES += aes/aes_ofb.c |
303 | libcrypto_la_SOURCES += aes/aes_wrap.c | 302 | libcrypto_la_SOURCES += aes/aes_wrap.c |
304 | noinst_HEADERS += aes/aes_locl.h | 303 | noinst_HEADERS += aes/aes_local.h |
305 | 304 | ||
306 | # asn1 | 305 | # asn1 |
307 | libcrypto_la_SOURCES += asn1/a_bitstr.c | 306 | libcrypto_la_SOURCES += asn1/a_bitstr.c |
@@ -317,6 +316,7 @@ libcrypto_la_SOURCES += asn1/a_strex.c | |||
317 | libcrypto_la_SOURCES += asn1/a_string.c | 316 | libcrypto_la_SOURCES += asn1/a_string.c |
318 | libcrypto_la_SOURCES += asn1/a_strnid.c | 317 | libcrypto_la_SOURCES += asn1/a_strnid.c |
319 | libcrypto_la_SOURCES += asn1/a_time.c | 318 | libcrypto_la_SOURCES += asn1/a_time.c |
319 | libcrypto_la_SOURCES += asn1/a_time_posix.c | ||
320 | libcrypto_la_SOURCES += asn1/a_time_tm.c | 320 | libcrypto_la_SOURCES += asn1/a_time_tm.c |
321 | libcrypto_la_SOURCES += asn1/a_type.c | 321 | libcrypto_la_SOURCES += asn1/a_type.c |
322 | libcrypto_la_SOURCES += asn1/a_utf8.c | 322 | libcrypto_la_SOURCES += asn1/a_utf8.c |
@@ -366,7 +366,7 @@ libcrypto_la_SOURCES += asn1/x_spki.c | |||
366 | libcrypto_la_SOURCES += asn1/x_val.c | 366 | libcrypto_la_SOURCES += asn1/x_val.c |
367 | libcrypto_la_SOURCES += asn1/x_x509.c | 367 | libcrypto_la_SOURCES += asn1/x_x509.c |
368 | libcrypto_la_SOURCES += asn1/x_x509a.c | 368 | libcrypto_la_SOURCES += asn1/x_x509a.c |
369 | noinst_HEADERS += asn1/asn1_locl.h | 369 | noinst_HEADERS += asn1/asn1_local.h |
370 | noinst_HEADERS += asn1/charmap.h | 370 | noinst_HEADERS += asn1/charmap.h |
371 | 371 | ||
372 | # bf | 372 | # bf |
@@ -375,8 +375,7 @@ libcrypto_la_SOURCES += bf/bf_ecb.c | |||
375 | libcrypto_la_SOURCES += bf/bf_enc.c | 375 | libcrypto_la_SOURCES += bf/bf_enc.c |
376 | libcrypto_la_SOURCES += bf/bf_ofb64.c | 376 | libcrypto_la_SOURCES += bf/bf_ofb64.c |
377 | libcrypto_la_SOURCES += bf/bf_skey.c | 377 | libcrypto_la_SOURCES += bf/bf_skey.c |
378 | noinst_HEADERS += bf/bf_locl.h | 378 | noinst_HEADERS += bf/bf_local.h |
379 | noinst_HEADERS += bf/bf_pi.h | ||
380 | 379 | ||
381 | # bio | 380 | # bio |
382 | libcrypto_la_SOURCES += bio/b_dump.c | 381 | libcrypto_la_SOURCES += bio/b_dump.c |
@@ -436,11 +435,12 @@ libcrypto_la_SOURCES += bn/bn_print.c | |||
436 | libcrypto_la_SOURCES += bn/bn_rand.c | 435 | libcrypto_la_SOURCES += bn/bn_rand.c |
437 | libcrypto_la_SOURCES += bn/bn_recp.c | 436 | libcrypto_la_SOURCES += bn/bn_recp.c |
438 | libcrypto_la_SOURCES += bn/bn_shift.c | 437 | libcrypto_la_SOURCES += bn/bn_shift.c |
438 | libcrypto_la_SOURCES += bn/bn_small_primes.c | ||
439 | libcrypto_la_SOURCES += bn/bn_sqr.c | 439 | libcrypto_la_SOURCES += bn/bn_sqr.c |
440 | libcrypto_la_SOURCES += bn/bn_sqrt.c | 440 | libcrypto_la_SOURCES += bn/bn_sqrt.c |
441 | libcrypto_la_SOURCES += bn/bn_word.c | 441 | libcrypto_la_SOURCES += bn/bn_word.c |
442 | libcrypto_la_SOURCES += bn/bn_x931p.c | 442 | libcrypto_la_SOURCES += bn/bn_x931p.c |
443 | noinst_HEADERS += bn/bn_lcl.h | 443 | noinst_HEADERS += bn/bn_local.h |
444 | noinst_HEADERS += bn/bn_prime.h | 444 | noinst_HEADERS += bn/bn_prime.h |
445 | 445 | ||
446 | # buffer | 446 | # buffer |
@@ -461,7 +461,7 @@ libcrypto_la_SOURCES += camellia/cmll_ecb.c | |||
461 | libcrypto_la_SOURCES += camellia/cmll_misc.c | 461 | libcrypto_la_SOURCES += camellia/cmll_misc.c |
462 | libcrypto_la_SOURCES += camellia/cmll_ofb.c | 462 | libcrypto_la_SOURCES += camellia/cmll_ofb.c |
463 | noinst_HEADERS += camellia/camellia.h | 463 | noinst_HEADERS += camellia/camellia.h |
464 | noinst_HEADERS += camellia/cmll_locl.h | 464 | noinst_HEADERS += camellia/cmll_local.h |
465 | 465 | ||
466 | # cast | 466 | # cast |
467 | libcrypto_la_SOURCES += cast/c_cfb64.c | 467 | libcrypto_la_SOURCES += cast/c_cfb64.c |
@@ -469,7 +469,7 @@ libcrypto_la_SOURCES += cast/c_ecb.c | |||
469 | libcrypto_la_SOURCES += cast/c_enc.c | 469 | libcrypto_la_SOURCES += cast/c_enc.c |
470 | libcrypto_la_SOURCES += cast/c_ofb64.c | 470 | libcrypto_la_SOURCES += cast/c_ofb64.c |
471 | libcrypto_la_SOURCES += cast/c_skey.c | 471 | libcrypto_la_SOURCES += cast/c_skey.c |
472 | noinst_HEADERS += cast/cast_lcl.h | 472 | noinst_HEADERS += cast/cast_local.h |
473 | noinst_HEADERS += cast/cast_s.h | 473 | noinst_HEADERS += cast/cast_s.h |
474 | 474 | ||
475 | # chacha | 475 | # chacha |
@@ -496,7 +496,7 @@ libcrypto_la_SOURCES += cms/cms_lib.c | |||
496 | libcrypto_la_SOURCES += cms/cms_pwri.c | 496 | libcrypto_la_SOURCES += cms/cms_pwri.c |
497 | libcrypto_la_SOURCES += cms/cms_sd.c | 497 | libcrypto_la_SOURCES += cms/cms_sd.c |
498 | libcrypto_la_SOURCES += cms/cms_smime.c | 498 | libcrypto_la_SOURCES += cms/cms_smime.c |
499 | noinst_HEADERS += cms/cms_lcl.h | 499 | noinst_HEADERS += cms/cms_local.h |
500 | 500 | ||
501 | # comp | 501 | # comp |
502 | libcrypto_la_SOURCES += comp/c_rle.c | 502 | libcrypto_la_SOURCES += comp/c_rle.c |
@@ -558,7 +558,7 @@ libcrypto_la_SOURCES += des/rand_key.c | |||
558 | libcrypto_la_SOURCES += des/set_key.c | 558 | libcrypto_la_SOURCES += des/set_key.c |
559 | libcrypto_la_SOURCES += des/str2key.c | 559 | libcrypto_la_SOURCES += des/str2key.c |
560 | libcrypto_la_SOURCES += des/xcbc_enc.c | 560 | libcrypto_la_SOURCES += des/xcbc_enc.c |
561 | noinst_HEADERS += des/des_locl.h | 561 | noinst_HEADERS += des/des_local.h |
562 | noinst_HEADERS += des/spr.h | 562 | noinst_HEADERS += des/spr.h |
563 | 563 | ||
564 | # dh | 564 | # dh |
@@ -588,7 +588,7 @@ libcrypto_la_SOURCES += dsa/dsa_pmeth.c | |||
588 | libcrypto_la_SOURCES += dsa/dsa_prn.c | 588 | libcrypto_la_SOURCES += dsa/dsa_prn.c |
589 | libcrypto_la_SOURCES += dsa/dsa_sign.c | 589 | libcrypto_la_SOURCES += dsa/dsa_sign.c |
590 | libcrypto_la_SOURCES += dsa/dsa_vrf.c | 590 | libcrypto_la_SOURCES += dsa/dsa_vrf.c |
591 | noinst_HEADERS += dsa/dsa_locl.h | 591 | noinst_HEADERS += dsa/dsa_local.h |
592 | 592 | ||
593 | # dso | 593 | # dso |
594 | libcrypto_la_SOURCES += dso/dso_dlfcn.c | 594 | libcrypto_la_SOURCES += dso/dso_dlfcn.c |
@@ -619,14 +619,15 @@ libcrypto_la_SOURCES += ec/ecp_mont.c | |||
619 | libcrypto_la_SOURCES += ec/ecp_nist.c | 619 | libcrypto_la_SOURCES += ec/ecp_nist.c |
620 | libcrypto_la_SOURCES += ec/ecp_oct.c | 620 | libcrypto_la_SOURCES += ec/ecp_oct.c |
621 | libcrypto_la_SOURCES += ec/ecp_smpl.c | 621 | libcrypto_la_SOURCES += ec/ecp_smpl.c |
622 | noinst_HEADERS += ec/ec_lcl.h | 622 | libcrypto_la_SOURCES += ec/ecx_methods.c |
623 | noinst_HEADERS += ec/ec_local.h | ||
623 | 624 | ||
624 | # ecdh | 625 | # ecdh |
625 | libcrypto_la_SOURCES += ecdh/ecdh_kdf.c | 626 | libcrypto_la_SOURCES += ecdh/ecdh_kdf.c |
626 | libcrypto_la_SOURCES += ecdh/ech_err.c | 627 | libcrypto_la_SOURCES += ecdh/ech_err.c |
627 | libcrypto_la_SOURCES += ecdh/ech_key.c | 628 | libcrypto_la_SOURCES += ecdh/ech_key.c |
628 | libcrypto_la_SOURCES += ecdh/ech_lib.c | 629 | libcrypto_la_SOURCES += ecdh/ech_lib.c |
629 | noinst_HEADERS += ecdh/ech_locl.h | 630 | noinst_HEADERS += ecdh/ech_local.h |
630 | 631 | ||
631 | # ecdsa | 632 | # ecdsa |
632 | libcrypto_la_SOURCES += ecdsa/ecs_asn1.c | 633 | libcrypto_la_SOURCES += ecdsa/ecs_asn1.c |
@@ -635,7 +636,7 @@ libcrypto_la_SOURCES += ecdsa/ecs_lib.c | |||
635 | libcrypto_la_SOURCES += ecdsa/ecs_ossl.c | 636 | libcrypto_la_SOURCES += ecdsa/ecs_ossl.c |
636 | libcrypto_la_SOURCES += ecdsa/ecs_sign.c | 637 | libcrypto_la_SOURCES += ecdsa/ecs_sign.c |
637 | libcrypto_la_SOURCES += ecdsa/ecs_vrf.c | 638 | libcrypto_la_SOURCES += ecdsa/ecs_vrf.c |
638 | noinst_HEADERS += ecdsa/ecs_locl.h | 639 | noinst_HEADERS += ecdsa/ecs_local.h |
639 | 640 | ||
640 | # engine | 641 | # engine |
641 | libcrypto_la_SOURCES += engine/eng_all.c | 642 | libcrypto_la_SOURCES += engine/eng_all.c |
@@ -726,7 +727,7 @@ libcrypto_la_SOURCES += evp/p_verify.c | |||
726 | libcrypto_la_SOURCES += evp/pmeth_fn.c | 727 | libcrypto_la_SOURCES += evp/pmeth_fn.c |
727 | libcrypto_la_SOURCES += evp/pmeth_gn.c | 728 | libcrypto_la_SOURCES += evp/pmeth_gn.c |
728 | libcrypto_la_SOURCES += evp/pmeth_lib.c | 729 | libcrypto_la_SOURCES += evp/pmeth_lib.c |
729 | noinst_HEADERS += evp/evp_locl.h | 730 | noinst_HEADERS += evp/evp_local.h |
730 | 731 | ||
731 | # gost | 732 | # gost |
732 | libcrypto_la_SOURCES += gost/gost2814789.c | 733 | libcrypto_la_SOURCES += gost/gost2814789.c |
@@ -744,7 +745,18 @@ libcrypto_la_SOURCES += gost/gostr341001_pmeth.c | |||
744 | libcrypto_la_SOURCES += gost/gostr341194.c | 745 | libcrypto_la_SOURCES += gost/gostr341194.c |
745 | libcrypto_la_SOURCES += gost/streebog.c | 746 | libcrypto_la_SOURCES += gost/streebog.c |
746 | noinst_HEADERS += gost/gost_asn1.h | 747 | noinst_HEADERS += gost/gost_asn1.h |
747 | noinst_HEADERS += gost/gost_locl.h | 748 | noinst_HEADERS += gost/gost_local.h |
749 | |||
750 | # hidden | ||
751 | noinst_HEADERS += hidden/crypto_namespace.h | ||
752 | noinst_HEADERS += hidden/openssl/hmac.h | ||
753 | noinst_HEADERS += hidden/openssl/pkcs12.h | ||
754 | noinst_HEADERS += hidden/openssl/pkcs7.h | ||
755 | noinst_HEADERS += hidden/openssl/stack.h | ||
756 | noinst_HEADERS += hidden/openssl/ui.h | ||
757 | noinst_HEADERS += hidden/openssl/x509.h | ||
758 | noinst_HEADERS += hidden/openssl/x509_vfy.h | ||
759 | noinst_HEADERS += hidden/openssl/x509v3.h | ||
748 | 760 | ||
749 | # hkdf | 761 | # hkdf |
750 | libcrypto_la_SOURCES += hkdf/hkdf.c | 762 | libcrypto_la_SOURCES += hkdf/hkdf.c |
@@ -761,7 +773,7 @@ libcrypto_la_SOURCES += idea/i_cfb64.c | |||
761 | libcrypto_la_SOURCES += idea/i_ecb.c | 773 | libcrypto_la_SOURCES += idea/i_ecb.c |
762 | libcrypto_la_SOURCES += idea/i_ofb64.c | 774 | libcrypto_la_SOURCES += idea/i_ofb64.c |
763 | libcrypto_la_SOURCES += idea/i_skey.c | 775 | libcrypto_la_SOURCES += idea/i_skey.c |
764 | noinst_HEADERS += idea/idea_lcl.h | 776 | noinst_HEADERS += idea/idea_local.h |
765 | 777 | ||
766 | # kdf | 778 | # kdf |
767 | libcrypto_la_SOURCES += kdf/hkdf_evp.c | 779 | libcrypto_la_SOURCES += kdf/hkdf_evp.c |
@@ -774,12 +786,12 @@ libcrypto_la_SOURCES += lhash/lhash.c | |||
774 | # md4 | 786 | # md4 |
775 | libcrypto_la_SOURCES += md4/md4_dgst.c | 787 | libcrypto_la_SOURCES += md4/md4_dgst.c |
776 | libcrypto_la_SOURCES += md4/md4_one.c | 788 | libcrypto_la_SOURCES += md4/md4_one.c |
777 | noinst_HEADERS += md4/md4_locl.h | 789 | noinst_HEADERS += md4/md4_local.h |
778 | 790 | ||
779 | # md5 | 791 | # md5 |
780 | libcrypto_la_SOURCES += md5/md5_dgst.c | 792 | libcrypto_la_SOURCES += md5/md5_dgst.c |
781 | libcrypto_la_SOURCES += md5/md5_one.c | 793 | libcrypto_la_SOURCES += md5/md5_one.c |
782 | noinst_HEADERS += md5/md5_locl.h | 794 | noinst_HEADERS += md5/md5_local.h |
783 | 795 | ||
784 | # modes | 796 | # modes |
785 | libcrypto_la_SOURCES += modes/cbc128.c | 797 | libcrypto_la_SOURCES += modes/cbc128.c |
@@ -790,7 +802,7 @@ libcrypto_la_SOURCES += modes/cts128.c | |||
790 | libcrypto_la_SOURCES += modes/gcm128.c | 802 | libcrypto_la_SOURCES += modes/gcm128.c |
791 | libcrypto_la_SOURCES += modes/ofb128.c | 803 | libcrypto_la_SOURCES += modes/ofb128.c |
792 | libcrypto_la_SOURCES += modes/xts128.c | 804 | libcrypto_la_SOURCES += modes/xts128.c |
793 | noinst_HEADERS += modes/modes_lcl.h | 805 | noinst_HEADERS += modes/modes_local.h |
794 | 806 | ||
795 | # objects | 807 | # objects |
796 | libcrypto_la_SOURCES += objects/o_names.c | 808 | libcrypto_la_SOURCES += objects/o_names.c |
@@ -870,15 +882,15 @@ libcrypto_la_SOURCES += rc2/rc2_ecb.c | |||
870 | libcrypto_la_SOURCES += rc2/rc2_skey.c | 882 | libcrypto_la_SOURCES += rc2/rc2_skey.c |
871 | libcrypto_la_SOURCES += rc2/rc2cfb64.c | 883 | libcrypto_la_SOURCES += rc2/rc2cfb64.c |
872 | libcrypto_la_SOURCES += rc2/rc2ofb64.c | 884 | libcrypto_la_SOURCES += rc2/rc2ofb64.c |
873 | noinst_HEADERS += rc2/rc2_locl.h | 885 | noinst_HEADERS += rc2/rc2_local.h |
874 | 886 | ||
875 | # rc4 | 887 | # rc4 |
876 | noinst_HEADERS += rc4/rc4_locl.h | 888 | noinst_HEADERS += rc4/rc4_local.h |
877 | 889 | ||
878 | # ripemd | 890 | # ripemd |
879 | libcrypto_la_SOURCES += ripemd/rmd_dgst.c | 891 | libcrypto_la_SOURCES += ripemd/rmd_dgst.c |
880 | libcrypto_la_SOURCES += ripemd/rmd_one.c | 892 | libcrypto_la_SOURCES += ripemd/rmd_one.c |
881 | noinst_HEADERS += ripemd/rmd_locl.h | 893 | noinst_HEADERS += ripemd/rmd_local.h |
882 | noinst_HEADERS += ripemd/rmdconst.h | 894 | noinst_HEADERS += ripemd/rmdconst.h |
883 | 895 | ||
884 | # rsa | 896 | # rsa |
@@ -901,18 +913,18 @@ libcrypto_la_SOURCES += rsa/rsa_pss.c | |||
901 | libcrypto_la_SOURCES += rsa/rsa_saos.c | 913 | libcrypto_la_SOURCES += rsa/rsa_saos.c |
902 | libcrypto_la_SOURCES += rsa/rsa_sign.c | 914 | libcrypto_la_SOURCES += rsa/rsa_sign.c |
903 | libcrypto_la_SOURCES += rsa/rsa_x931.c | 915 | libcrypto_la_SOURCES += rsa/rsa_x931.c |
904 | noinst_HEADERS += rsa/rsa_locl.h | 916 | noinst_HEADERS += rsa/rsa_local.h |
905 | 917 | ||
906 | # sha | 918 | # sha |
907 | libcrypto_la_SOURCES += sha/sha1_one.c | 919 | libcrypto_la_SOURCES += sha/sha1_one.c |
908 | libcrypto_la_SOURCES += sha/sha1dgst.c | 920 | libcrypto_la_SOURCES += sha/sha1dgst.c |
909 | libcrypto_la_SOURCES += sha/sha256.c | 921 | libcrypto_la_SOURCES += sha/sha256.c |
910 | libcrypto_la_SOURCES += sha/sha512.c | 922 | libcrypto_la_SOURCES += sha/sha512.c |
911 | noinst_HEADERS += sha/sha_locl.h | 923 | noinst_HEADERS += sha/sha_local.h |
912 | 924 | ||
913 | # sm3 | 925 | # sm3 |
914 | libcrypto_la_SOURCES += sm3/sm3.c | 926 | libcrypto_la_SOURCES += sm3/sm3.c |
915 | noinst_HEADERS += sm3/sm3_locl.h | 927 | noinst_HEADERS += sm3/sm3_local.h |
916 | 928 | ||
917 | # sm4 | 929 | # sm4 |
918 | libcrypto_la_SOURCES += sm4/sm4.c | 930 | libcrypto_la_SOURCES += sm4/sm4.c |
@@ -947,11 +959,11 @@ if HOST_WIN | |||
947 | libcrypto_la_SOURCES += ui/ui_openssl_win.c | 959 | libcrypto_la_SOURCES += ui/ui_openssl_win.c |
948 | endif | 960 | endif |
949 | libcrypto_la_SOURCES += ui/ui_util.c | 961 | libcrypto_la_SOURCES += ui/ui_util.c |
950 | noinst_HEADERS += ui/ui_locl.h | 962 | noinst_HEADERS += ui/ui_local.h |
951 | 963 | ||
952 | # whrlpool | 964 | # whrlpool |
953 | libcrypto_la_SOURCES += whrlpool/wp_dgst.c | 965 | libcrypto_la_SOURCES += whrlpool/wp_dgst.c |
954 | noinst_HEADERS += whrlpool/wp_locl.h | 966 | noinst_HEADERS += whrlpool/wp_local.h |
955 | 967 | ||
956 | # x509 | 968 | # x509 |
957 | libcrypto_la_SOURCES += x509/by_dir.c | 969 | libcrypto_la_SOURCES += x509/by_dir.c |
@@ -1022,4 +1034,4 @@ noinst_HEADERS += x509/pcy_int.h | |||
1022 | noinst_HEADERS += x509/vpm_int.h | 1034 | noinst_HEADERS += x509/vpm_int.h |
1023 | noinst_HEADERS += x509/x509_internal.h | 1035 | noinst_HEADERS += x509/x509_internal.h |
1024 | noinst_HEADERS += x509/x509_issuer_cache.h | 1036 | noinst_HEADERS += x509/x509_issuer_cache.h |
1025 | noinst_HEADERS += x509/x509_lcl.h | 1037 | noinst_HEADERS += x509/x509_local.h |
diff --git a/crypto/compat/ui_openssl_win.c b/crypto/compat/ui_openssl_win.c index ad9e915..c245111 100644 --- a/crypto/compat/ui_openssl_win.c +++ b/crypto/compat/ui_openssl_win.c | |||
@@ -124,7 +124,7 @@ | |||
124 | #include <string.h> | 124 | #include <string.h> |
125 | #include <unistd.h> | 125 | #include <unistd.h> |
126 | 126 | ||
127 | #include "ui_locl.h" | 127 | #include "ui_local.h" |
128 | 128 | ||
129 | #ifndef NX509_SIG | 129 | #ifndef NX509_SIG |
130 | #define NX509_SIG 32 | 130 | #define NX509_SIG 32 |
diff --git a/include/compat/endian.h b/include/compat/endian.h index 1ed255e..cd85f5c 100644 --- a/include/compat/endian.h +++ b/include/compat/endian.h | |||
@@ -24,6 +24,9 @@ | |||
24 | #elif defined(HAVE_ENDIAN_H) | 24 | #elif defined(HAVE_ENDIAN_H) |
25 | #include_next <endian.h> | 25 | #include_next <endian.h> |
26 | 26 | ||
27 | #elif defined(HAVE_MACHINE_ENDIAN_H) | ||
28 | #include_next <machine/endian.h> | ||
29 | |||
27 | #elif defined(__sun) || defined(_AIX) || defined(__hpux) | 30 | #elif defined(__sun) || defined(_AIX) || defined(__hpux) |
28 | #include <sys/types.h> | 31 | #include <sys/types.h> |
29 | #include <arpa/nameser_compat.h> | 32 | #include <arpa/nameser_compat.h> |
diff --git a/m4/check-libc.m4 b/m4/check-libc.m4 index 40df67f..68a4f88 100644 --- a/m4/check-libc.m4 +++ b/m4/check-libc.m4 | |||
@@ -1,6 +1,6 @@ | |||
1 | AC_DEFUN([CHECK_LIBC_COMPAT], [ | 1 | AC_DEFUN([CHECK_LIBC_COMPAT], [ |
2 | # Check for libc headers | 2 | # Check for libc headers |
3 | AC_CHECK_HEADERS([endian.h err.h readpassphrase.h]) | 3 | AC_CHECK_HEADERS([endian.h machine/endian.h err.h readpassphrase.h]) |
4 | AC_CHECK_HEADERS([netinet/ip.h], [], [], | 4 | AC_CHECK_HEADERS([netinet/ip.h], [], [], |
5 | [#include <sys/types.h> | 5 | [#include <sys/types.h> |
6 | #include <arpa/inet.h> | 6 | #include <arpa/inet.h> |
@@ -92,10 +92,15 @@ ASN1_TIME_set.3,ASN1_GENERALIZEDTIME_set.3 | |||
92 | ASN1_TIME_set.3,ASN1_GENERALIZEDTIME_set_string.3 | 92 | ASN1_TIME_set.3,ASN1_GENERALIZEDTIME_set_string.3 |
93 | ASN1_TIME_set.3,ASN1_TIME_adj.3 | 93 | ASN1_TIME_set.3,ASN1_TIME_adj.3 |
94 | ASN1_TIME_set.3,ASN1_TIME_check.3 | 94 | ASN1_TIME_set.3,ASN1_TIME_check.3 |
95 | ASN1_TIME_set.3,ASN1_TIME_cmp_time_t.3 | ||
96 | ASN1_TIME_set.3,ASN1_TIME_compare.3 | ||
95 | ASN1_TIME_set.3,ASN1_TIME_diff.3 | 97 | ASN1_TIME_set.3,ASN1_TIME_diff.3 |
98 | ASN1_TIME_set.3,ASN1_TIME_normalize.3 | ||
96 | ASN1_TIME_set.3,ASN1_TIME_print.3 | 99 | ASN1_TIME_set.3,ASN1_TIME_print.3 |
97 | ASN1_TIME_set.3,ASN1_TIME_set_string.3 | 100 | ASN1_TIME_set.3,ASN1_TIME_set_string.3 |
101 | ASN1_TIME_set.3,ASN1_TIME_set_string_X509.3 | ||
98 | ASN1_TIME_set.3,ASN1_TIME_to_generalizedtime.3 | 102 | ASN1_TIME_set.3,ASN1_TIME_to_generalizedtime.3 |
103 | ASN1_TIME_set.3,ASN1_TIME_to_tm.3 | ||
99 | ASN1_TIME_set.3,ASN1_UTCTIME_adj.3 | 104 | ASN1_TIME_set.3,ASN1_UTCTIME_adj.3 |
100 | ASN1_TIME_set.3,ASN1_UTCTIME_check.3 | 105 | ASN1_TIME_set.3,ASN1_UTCTIME_check.3 |
101 | ASN1_TIME_set.3,ASN1_UTCTIME_cmp_time_t.3 | 106 | ASN1_TIME_set.3,ASN1_UTCTIME_cmp_time_t.3 |
@@ -328,6 +333,26 @@ BN_CTX_new.3,BN_CTX_free.3 | |||
328 | BN_CTX_new.3,BN_CTX_init.3 | 333 | BN_CTX_new.3,BN_CTX_init.3 |
329 | BN_CTX_start.3,BN_CTX_end.3 | 334 | BN_CTX_start.3,BN_CTX_end.3 |
330 | BN_CTX_start.3,BN_CTX_get.3 | 335 | BN_CTX_start.3,BN_CTX_get.3 |
336 | BN_GF2m_add.3,BN_GF2m_arr2poly.3 | ||
337 | BN_GF2m_add.3,BN_GF2m_cmp.3 | ||
338 | BN_GF2m_add.3,BN_GF2m_mod.3 | ||
339 | BN_GF2m_add.3,BN_GF2m_mod_arr.3 | ||
340 | BN_GF2m_add.3,BN_GF2m_mod_div.3 | ||
341 | BN_GF2m_add.3,BN_GF2m_mod_div_arr.3 | ||
342 | BN_GF2m_add.3,BN_GF2m_mod_exp.3 | ||
343 | BN_GF2m_add.3,BN_GF2m_mod_exp_arr.3 | ||
344 | BN_GF2m_add.3,BN_GF2m_mod_inv.3 | ||
345 | BN_GF2m_add.3,BN_GF2m_mod_inv_arr.3 | ||
346 | BN_GF2m_add.3,BN_GF2m_mod_mul.3 | ||
347 | BN_GF2m_add.3,BN_GF2m_mod_mul_arr.3 | ||
348 | BN_GF2m_add.3,BN_GF2m_mod_solve_quad.3 | ||
349 | BN_GF2m_add.3,BN_GF2m_mod_solve_quad_arr.3 | ||
350 | BN_GF2m_add.3,BN_GF2m_mod_sqr.3 | ||
351 | BN_GF2m_add.3,BN_GF2m_mod_sqr_arr.3 | ||
352 | BN_GF2m_add.3,BN_GF2m_mod_sqrt.3 | ||
353 | BN_GF2m_add.3,BN_GF2m_mod_sqrt_arr.3 | ||
354 | BN_GF2m_add.3,BN_GF2m_poly2arr.3 | ||
355 | BN_GF2m_add.3,BN_GF2m_sub.3 | ||
331 | BN_add.3,BN_div.3 | 356 | BN_add.3,BN_div.3 |
332 | BN_add.3,BN_exp.3 | 357 | BN_add.3,BN_exp.3 |
333 | BN_add.3,BN_gcd.3 | 358 | BN_add.3,BN_gcd.3 |
@@ -402,10 +427,15 @@ BN_mod_mul_reciprocal.3,BN_RECP_CTX_init.3 | |||
402 | BN_mod_mul_reciprocal.3,BN_RECP_CTX_new.3 | 427 | BN_mod_mul_reciprocal.3,BN_RECP_CTX_new.3 |
403 | BN_mod_mul_reciprocal.3,BN_RECP_CTX_set.3 | 428 | BN_mod_mul_reciprocal.3,BN_RECP_CTX_set.3 |
404 | BN_mod_mul_reciprocal.3,BN_div_recp.3 | 429 | BN_mod_mul_reciprocal.3,BN_div_recp.3 |
430 | BN_mod_mul_reciprocal.3,BN_reciprocal.3 | ||
405 | BN_new.3,BN_clear.3 | 431 | BN_new.3,BN_clear.3 |
406 | BN_new.3,BN_clear_free.3 | 432 | BN_new.3,BN_clear_free.3 |
407 | BN_new.3,BN_free.3 | 433 | BN_new.3,BN_free.3 |
408 | BN_new.3,BN_init.3 | 434 | BN_new.3,BN_init.3 |
435 | BN_nist_mod_521.3,BN_nist_mod_192.3 | ||
436 | BN_nist_mod_521.3,BN_nist_mod_224.3 | ||
437 | BN_nist_mod_521.3,BN_nist_mod_256.3 | ||
438 | BN_nist_mod_521.3,BN_nist_mod_384.3 | ||
409 | BN_num_bytes.3,BN_num_bits.3 | 439 | BN_num_bytes.3,BN_num_bits.3 |
410 | BN_num_bytes.3,BN_num_bits_word.3 | 440 | BN_num_bytes.3,BN_num_bits_word.3 |
411 | BN_rand.3,BN_pseudo_rand.3 | 441 | BN_rand.3,BN_pseudo_rand.3 |
@@ -2222,7 +2252,12 @@ X509_STORE_CTX_set_flags.3,X509_STORE_CTX_set_purpose.3 | |||
2222 | X509_STORE_CTX_set_flags.3,X509_STORE_CTX_set_time.3 | 2252 | X509_STORE_CTX_set_flags.3,X509_STORE_CTX_set_time.3 |
2223 | X509_STORE_CTX_set_flags.3,X509_STORE_CTX_set_trust.3 | 2253 | X509_STORE_CTX_set_flags.3,X509_STORE_CTX_set_trust.3 |
2224 | X509_STORE_CTX_set_verify.3,X509_STORE_CTX_get_verify.3 | 2254 | X509_STORE_CTX_set_verify.3,X509_STORE_CTX_get_verify.3 |
2255 | X509_STORE_CTX_set_verify.3,X509_STORE_CTX_verify_fn.3 | ||
2256 | X509_STORE_CTX_set_verify.3,X509_STORE_get_verify.3 | ||
2257 | X509_STORE_CTX_set_verify.3,X509_STORE_set_verify.3 | ||
2258 | X509_STORE_CTX_set_verify.3,X509_STORE_set_verify_func.3 | ||
2225 | X509_STORE_CTX_set_verify_cb.3,X509_STORE_CTX_get_verify_cb.3 | 2259 | X509_STORE_CTX_set_verify_cb.3,X509_STORE_CTX_get_verify_cb.3 |
2260 | X509_STORE_CTX_set_verify_cb.3,X509_STORE_CTX_verify_cb.3 | ||
2226 | X509_STORE_get_by_subject.3,X509_STORE_CTX_get1_issuer.3 | 2261 | X509_STORE_get_by_subject.3,X509_STORE_CTX_get1_issuer.3 |
2227 | X509_STORE_get_by_subject.3,X509_STORE_CTX_get_by_subject.3 | 2262 | X509_STORE_get_by_subject.3,X509_STORE_CTX_get_by_subject.3 |
2228 | X509_STORE_get_by_subject.3,X509_STORE_CTX_get_obj_by_subject.3 | 2263 | X509_STORE_get_by_subject.3,X509_STORE_CTX_get_obj_by_subject.3 |
@@ -2244,6 +2279,7 @@ X509_STORE_set1_param.3,X509_STORE_set_ex_data.3 | |||
2244 | X509_STORE_set1_param.3,X509_STORE_set_flags.3 | 2279 | X509_STORE_set1_param.3,X509_STORE_set_flags.3 |
2245 | X509_STORE_set1_param.3,X509_STORE_set_purpose.3 | 2280 | X509_STORE_set1_param.3,X509_STORE_set_purpose.3 |
2246 | X509_STORE_set1_param.3,X509_STORE_set_trust.3 | 2281 | X509_STORE_set1_param.3,X509_STORE_set_trust.3 |
2282 | X509_STORE_set_verify_cb_func.3,X509_STORE_get_verify_cb.3 | ||
2247 | X509_STORE_set_verify_cb_func.3,X509_STORE_set_verify_cb.3 | 2283 | X509_STORE_set_verify_cb_func.3,X509_STORE_set_verify_cb.3 |
2248 | X509_TRUST_set.3,X509_TRUST_add.3 | 2284 | X509_TRUST_set.3,X509_TRUST_add.3 |
2249 | X509_TRUST_set.3,X509_TRUST_cleanup.3 | 2285 | X509_TRUST_set.3,X509_TRUST_cleanup.3 |
@@ -2472,7 +2508,6 @@ d2i_ASN1_OCTET_STRING.3,d2i_ASN1_UTF8STRING.3 | |||
2472 | d2i_ASN1_OCTET_STRING.3,d2i_ASN1_VISIBLESTRING.3 | 2508 | d2i_ASN1_OCTET_STRING.3,d2i_ASN1_VISIBLESTRING.3 |
2473 | d2i_ASN1_OCTET_STRING.3,d2i_DIRECTORYSTRING.3 | 2509 | d2i_ASN1_OCTET_STRING.3,d2i_DIRECTORYSTRING.3 |
2474 | d2i_ASN1_OCTET_STRING.3,d2i_DISPLAYTEXT.3 | 2510 | d2i_ASN1_OCTET_STRING.3,d2i_DISPLAYTEXT.3 |
2475 | d2i_ASN1_OCTET_STRING.3,i2c_ASN1_INTEGER.3 | ||
2476 | d2i_ASN1_OCTET_STRING.3,i2d_ASN1_BIT_STRING.3 | 2511 | d2i_ASN1_OCTET_STRING.3,i2d_ASN1_BIT_STRING.3 |
2477 | d2i_ASN1_OCTET_STRING.3,i2d_ASN1_BMPSTRING.3 | 2512 | d2i_ASN1_OCTET_STRING.3,i2d_ASN1_BMPSTRING.3 |
2478 | d2i_ASN1_OCTET_STRING.3,i2d_ASN1_ENUMERATED.3 | 2513 | d2i_ASN1_OCTET_STRING.3,i2d_ASN1_ENUMERATED.3 |
@@ -2799,14 +2834,6 @@ lh_new.3,LHASH_COMP_FN_TYPE.3 | |||
2799 | lh_new.3,LHASH_DOALL_ARG_FN_TYPE.3 | 2834 | lh_new.3,LHASH_DOALL_ARG_FN_TYPE.3 |
2800 | lh_new.3,LHASH_DOALL_FN_TYPE.3 | 2835 | lh_new.3,LHASH_DOALL_FN_TYPE.3 |
2801 | lh_new.3,LHASH_HASH_FN_TYPE.3 | 2836 | lh_new.3,LHASH_HASH_FN_TYPE.3 |
2802 | lh_new.3,lh_<type>_delete.3 | ||
2803 | lh_new.3,lh_<type>_doall.3 | ||
2804 | lh_new.3,lh_<type>_doall_arg.3 | ||
2805 | lh_new.3,lh_<type>_error.3 | ||
2806 | lh_new.3,lh_<type>_free.3 | ||
2807 | lh_new.3,lh_<type>_insert.3 | ||
2808 | lh_new.3,lh_<type>_new.3 | ||
2809 | lh_new.3,lh_<type>_retrieve.3 | ||
2810 | lh_new.3,lh_delete.3 | 2837 | lh_new.3,lh_delete.3 |
2811 | lh_new.3,lh_doall.3 | 2838 | lh_new.3,lh_doall.3 |
2812 | lh_new.3,lh_doall_arg.3 | 2839 | lh_new.3,lh_doall_arg.3 |
diff --git a/man/update_links.sh b/man/update_links.sh index e72f03d..088eb2b 100755 --- a/man/update_links.sh +++ b/man/update_links.sh | |||
@@ -21,4 +21,5 @@ echo "# This is an auto-generated file by $0" > links | |||
21 | /usr/src/regress/usr.bin/mandoc/db/mlinks/obj/mlinks mandoc.db | \ | 21 | /usr/src/regress/usr.bin/mandoc/db/mlinks/obj/mlinks mandoc.db | \ |
22 | grep -v OCSP_crlID_new | \ | 22 | grep -v OCSP_crlID_new | \ |
23 | grep -v bn_print | \ | 23 | grep -v bn_print | \ |
24 | grep -v "<type>" | \ | ||
24 | sort >> links | 25 | sort >> links |
diff --git a/patches/bio.h.patch b/patches/bio.h.patch index 072bc3b..f731879 100644 --- a/patches/bio.h.patch +++ b/patches/bio.h.patch | |||
@@ -1,6 +1,6 @@ | |||
1 | --- include/openssl/bio.h.orig Mon Sep 5 22:30:32 2022 | 1 | --- include/openssl/bio.h.orig Tue Nov 22 21:08:27 2022 |
2 | +++ include/openssl/bio.h Tue Sep 6 01:38:22 2022 | 2 | +++ include/openssl/bio.h Tue Nov 22 21:08:48 2022 |
3 | @@ -666,8 +666,24 @@ void BIO_copy_next_retry(BIO *b); | 3 | @@ -667,8 +667,24 @@ void BIO_copy_next_retry(BIO *b); |
4 | 4 | ||
5 | /*long BIO_ghbn_ctrl(int cmd,int iarg,char *parg);*/ | 5 | /*long BIO_ghbn_ctrl(int cmd,int iarg,char *parg);*/ |
6 | 6 | ||
@@ -25,7 +25,7 @@ | |||
25 | __attribute__((__format__(__printf__, 2, 3), __nonnull__(2))); | 25 | __attribute__((__format__(__printf__, 2, 3), __nonnull__(2))); |
26 | int | 26 | int |
27 | BIO_vprintf(BIO *bio, const char *format, va_list args) | 27 | BIO_vprintf(BIO *bio, const char *format, va_list args) |
28 | @@ -680,6 +696,7 @@ int | 28 | @@ -681,6 +697,7 @@ int |
29 | BIO_vsnprintf(char *buf, size_t n, const char *format, va_list args) | 29 | BIO_vsnprintf(char *buf, size_t n, const char *format, va_list args) |
30 | __attribute__((__deprecated__, __format__(__printf__, 3, 0), | 30 | __attribute__((__deprecated__, __format__(__printf__, 3, 0), |
31 | __nonnull__(3))); | 31 | __nonnull__(3))); |
diff --git a/patches/bn_isqrt.c.patch b/patches/bn_isqrt.c.patch index bf205a3..5f2a568 100644 --- a/patches/bn_isqrt.c.patch +++ b/patches/bn_isqrt.c.patch | |||
@@ -1,6 +1,6 @@ | |||
1 | --- tests/bn_isqrt.c.orig Mon Aug 15 10:40:29 2022 | 1 | --- tests/bn_isqrt.c.orig Fri Dec 9 11:05:26 2022 |
2 | +++ tests/bn_isqrt.c Mon Aug 15 10:41:46 2022 | 2 | +++ tests/bn_isqrt.c Fri Dec 9 11:12:37 2022 |
3 | @@ -304,6 +304,7 @@ main(int argc, char *argv[]) | 3 | @@ -306,6 +306,7 @@ main(int argc, char *argv[]) |
4 | int ch; | 4 | int ch; |
5 | int failed = 0, print = 0; | 5 | int failed = 0, print = 0; |
6 | 6 | ||
@@ -8,7 +8,7 @@ | |||
8 | while ((ch = getopt(argc, argv, "C")) != -1) { | 8 | while ((ch = getopt(argc, argv, "C")) != -1) { |
9 | switch (ch) { | 9 | switch (ch) { |
10 | case 'C': | 10 | case 'C': |
11 | @@ -314,6 +315,7 @@ main(int argc, char *argv[]) | 11 | @@ -316,6 +317,7 @@ main(int argc, char *argv[]) |
12 | break; | 12 | break; |
13 | } | 13 | } |
14 | } | 14 | } |
diff --git a/patches/bn_lcl.h.patch b/patches/bn_local.h.patch index 84835ed..2378ec7 100644 --- a/patches/bn_lcl.h.patch +++ b/patches/bn_local.h.patch | |||
@@ -1,5 +1,5 @@ | |||
1 | --- ./crypto/bn/bn_lcl.h.orig Fri Feb 18 16:30:39 2022 | 1 | --- ./crypto/bn/bn_local.h.orig Fri Feb 18 16:30:39 2022 |
2 | +++ ./crypto/bn/bn_lcl.h Mon Feb 21 05:39:35 2022 | 2 | +++ ./crypto/bn/bn_local.h Mon Feb 21 05:39:35 2022 |
3 | @@ -283,7 +283,7 @@ | 3 | @@ -283,7 +283,7 @@ |
4 | : "r"(a), "r"(b)); \ | 4 | : "r"(a), "r"(b)); \ |
5 | ret; }) | 5 | ret; }) |
diff --git a/patches/modes_lcl.h.patch b/patches/modes_local.h.patch index 330d4d0..8f55eed 100644 --- a/patches/modes_lcl.h.patch +++ b/patches/modes_local.h.patch | |||
@@ -1,5 +1,5 @@ | |||
1 | --- crypto/modes/modes_lcl.h.orig Tue Nov 14 10:25:15 2017 | 1 | --- crypto/modes/modes_local.h.orig Tue Nov 14 10:25:15 2017 |
2 | +++ crypto/modes/modes_lcl.h Sat Jan 19 22:19:23 2019 | 2 | +++ crypto/modes/modes_local.h Sat Jan 19 22:19:23 2019 |
3 | @@ -45,14 +45,16 @@ | 3 | @@ -45,14 +45,16 @@ |
4 | asm ("bswapl %0" \ | 4 | asm ("bswapl %0" \ |
5 | : "+r"(ret)); ret; }) | 5 | : "+r"(ret)); ret; }) |
diff --git a/patches/openssl.c.patch b/patches/openssl.c.patch index 2c2a3da..46702f2 100644 --- a/patches/openssl.c.patch +++ b/patches/openssl.c.patch | |||
@@ -1,6 +1,6 @@ | |||
1 | --- apps/openssl/openssl.c.orig Thu Nov 7 18:19:01 2019 | 1 | --- apps/openssl/openssl.c.orig Sun Nov 27 10:48:36 2022 |
2 | +++ apps/openssl/openssl.c Fri Sep 4 04:04:26 2020 | 2 | +++ apps/openssl/openssl.c Sun Nov 27 10:48:49 2022 |
3 | @@ -360,7 +360,9 @@ | 3 | @@ -359,7 +359,9 @@ BIO *bio_err = NULL; |
4 | static void | 4 | static void |
5 | openssl_startup(void) | 5 | openssl_startup(void) |
6 | { | 6 | { |
diff --git a/patches/opensslconf.h.patch b/patches/opensslconf.h.patch new file mode 100644 index 0000000..ee5d645 --- /dev/null +++ b/patches/opensslconf.h.patch | |||
@@ -0,0 +1,24 @@ | |||
1 | --- include/openssl/opensslconf.h.orig Tue Nov 22 21:08:27 2022 | ||
2 | +++ include/openssl/opensslconf.h Wed Nov 23 12:38:07 2022 | ||
3 | @@ -1,6 +1,21 @@ | ||
4 | #include <openssl/opensslfeatures.h> | ||
5 | /* crypto/opensslconf.h.in */ | ||
6 | |||
7 | +#if defined(_MSC_VER) && !defined(__clang__) && !defined(__attribute__) | ||
8 | +#define __attribute__(a) | ||
9 | +#endif | ||
10 | + | ||
11 | +#if defined(LIBRESSL_INTERNAL) && !defined(LIBRESSL_NAMESPACE) | ||
12 | +# define LCRYPTO_UNUSED(x) | ||
13 | +# define LCRYPTO_USED(x) | ||
14 | +# define LCRYPTO_ALIAS1(pre, x) | ||
15 | +# define LCRYPTO_ALIAS(x) | ||
16 | + | ||
17 | +# define LSSL_UNUSED(x) | ||
18 | +# define LSSL_USED(x) | ||
19 | +# define LSSL_ALIAS(x) | ||
20 | +#endif /* LIBRESSL_INTERNAL && !LIBRESSL_NAMESPACE */ | ||
21 | + | ||
22 | #if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) | ||
23 | #define OPENSSLDIR "/etc/ssl" | ||
24 | #endif | ||
diff --git a/patches/speed.c.patch b/patches/speed.c.patch index 11f9f03..4e80f31 100644 --- a/patches/speed.c.patch +++ b/patches/speed.c.patch | |||
@@ -1,6 +1,6 @@ | |||
1 | --- apps/openssl/speed.c.orig Sun Feb 6 20:37:16 2022 | 1 | --- apps/openssl/speed.c.orig Tue Nov 22 17:32:11 2022 |
2 | +++ apps/openssl/speed.c Sun Feb 6 21:07:42 2022 | 2 | +++ apps/openssl/speed.c Tue Nov 22 18:33:13 2022 |
3 | @@ -159,7 +159,16 @@ | 3 | @@ -159,7 +159,16 @@ static void |
4 | pkey_print_message(const char *str, const char *str2, | 4 | pkey_print_message(const char *str, const char *str2, |
5 | long num, int bits, int sec); | 5 | long num, int bits, int sec); |
6 | static void print_result(int alg, int run_no, int count, double time_used); | 6 | static void print_result(int alg, int run_no, int count, double time_used); |
@@ -17,7 +17,7 @@ | |||
17 | 17 | ||
18 | #define ALGOR_NUM 32 | 18 | #define ALGOR_NUM 32 |
19 | #define SIZE_NUM 5 | 19 | #define SIZE_NUM 5 |
20 | @@ -466,8 +475,10 @@ | 20 | @@ -466,8 +475,10 @@ speed_main(int argc, char **argv) |
21 | const EVP_CIPHER *evp_cipher = NULL; | 21 | const EVP_CIPHER *evp_cipher = NULL; |
22 | const EVP_MD *evp_md = NULL; | 22 | const EVP_MD *evp_md = NULL; |
23 | int decrypt = 0; | 23 | int decrypt = 0; |
@@ -26,9 +26,9 @@ | |||
26 | const char *errstr = NULL; | 26 | const char *errstr = NULL; |
27 | +#endif | 27 | +#endif |
28 | 28 | ||
29 | if (single_execution) { | 29 | if (pledge("stdio proc", NULL) == -1) { |
30 | if (pledge("stdio proc", NULL) == -1) { | 30 | perror("pledge"); |
31 | @@ -544,6 +555,7 @@ | 31 | @@ -542,6 +553,7 @@ speed_main(int argc, char **argv) |
32 | j--; /* Otherwise, -decrypt gets confused with an | 32 | j--; /* Otherwise, -decrypt gets confused with an |
33 | * algorithm. */ | 33 | * algorithm. */ |
34 | } | 34 | } |
@@ -36,7 +36,7 @@ | |||
36 | else if ((argc > 0) && (strcmp(*argv, "-multi") == 0)) { | 36 | else if ((argc > 0) && (strcmp(*argv, "-multi") == 0)) { |
37 | argc--; | 37 | argc--; |
38 | argv++; | 38 | argv++; |
39 | @@ -559,6 +571,7 @@ | 39 | @@ -557,6 +569,7 @@ speed_main(int argc, char **argv) |
40 | j--; /* Otherwise, -multi gets confused with an | 40 | j--; /* Otherwise, -multi gets confused with an |
41 | * algorithm. */ | 41 | * algorithm. */ |
42 | } | 42 | } |
@@ -44,7 +44,7 @@ | |||
44 | else if (argc > 0 && !strcmp(*argv, "-mr")) { | 44 | else if (argc > 0 && !strcmp(*argv, "-mr")) { |
45 | mr = 1; | 45 | mr = 1; |
46 | j--; /* Otherwise, -mr gets confused with an | 46 | j--; /* Otherwise, -mr gets confused with an |
47 | @@ -921,7 +934,9 @@ | 47 | @@ -919,7 +932,9 @@ speed_main(int argc, char **argv) |
48 | BIO_printf(bio_err, "-evp e use EVP e.\n"); | 48 | BIO_printf(bio_err, "-evp e use EVP e.\n"); |
49 | BIO_printf(bio_err, "-decrypt time decryption instead of encryption (only EVP).\n"); | 49 | BIO_printf(bio_err, "-decrypt time decryption instead of encryption (only EVP).\n"); |
50 | BIO_printf(bio_err, "-mr produce machine readable output.\n"); | 50 | BIO_printf(bio_err, "-mr produce machine readable output.\n"); |
@@ -54,7 +54,7 @@ | |||
54 | goto end; | 54 | goto end; |
55 | } | 55 | } |
56 | argc--; | 56 | argc--; |
57 | @@ -929,8 +944,10 @@ | 57 | @@ -927,8 +942,10 @@ speed_main(int argc, char **argv) |
58 | j++; | 58 | j++; |
59 | } | 59 | } |
60 | 60 | ||
@@ -65,7 +65,7 @@ | |||
65 | 65 | ||
66 | if (j == 0) { | 66 | if (j == 0) { |
67 | for (i = 0; i < ALGOR_NUM; i++) { | 67 | for (i = 0; i < ALGOR_NUM; i++) { |
68 | @@ -1807,7 +1824,9 @@ | 68 | @@ -1805,7 +1822,9 @@ speed_main(int argc, char **argv) |
69 | ecdh_doit[j] = 0; | 69 | ecdh_doit[j] = 0; |
70 | } | 70 | } |
71 | } | 71 | } |
@@ -75,7 +75,7 @@ | |||
75 | if (!mr) { | 75 | if (!mr) { |
76 | fprintf(stdout, "%s\n", SSLeay_version(SSLEAY_VERSION)); | 76 | fprintf(stdout, "%s\n", SSLeay_version(SSLEAY_VERSION)); |
77 | fprintf(stdout, "%s\n", SSLeay_version(SSLEAY_BUILT_ON)); | 77 | fprintf(stdout, "%s\n", SSLeay_version(SSLEAY_BUILT_ON)); |
78 | @@ -1980,11 +1999,15 @@ | 78 | @@ -1978,11 +1997,15 @@ pkey_print_message(const char *str, const char *str2, |
79 | static void | 79 | static void |
80 | print_result(int alg, int run_no, int count, double time_used) | 80 | print_result(int alg, int run_no, int count, double time_used) |
81 | { | 81 | { |
@@ -91,7 +91,7 @@ | |||
91 | static char * | 91 | static char * |
92 | sstrsep(char **string, const char *delim) | 92 | sstrsep(char **string, const char *delim) |
93 | { | 93 | { |
94 | @@ -2191,4 +2214,5 @@ | 94 | @@ -2189,4 +2212,5 @@ do_multi(int multi) |
95 | free(fds); | 95 | free(fds); |
96 | return 1; | 96 | return 1; |
97 | } | 97 | } |
diff --git a/patches/tlsexttest.c.patch b/patches/tlsexttest.c.patch index bc81da5..c1591d7 100644 --- a/patches/tlsexttest.c.patch +++ b/patches/tlsexttest.c.patch | |||
@@ -1,9 +1,9 @@ | |||
1 | --- tests/tlsexttest.c.orig Mon Sep 5 22:30:36 2022 | 1 | --- tests/tlsexttest.c.orig Tue Nov 8 10:32:18 2022 |
2 | +++ tests/tlsexttest.c Mon Sep 5 22:32:52 2022 | 2 | +++ tests/tlsexttest.c Tue Nov 8 10:35:52 2022 |
3 | @@ -1773,7 +1773,9 @@ static unsigned char tlsext_sni_client[] = { | 3 | @@ -1773,7 +1773,9 @@ static const unsigned char tlsext_sni_client[] = { |
4 | }; | 4 | }; |
5 | 5 | ||
6 | static unsigned char tlsext_sni_server[] = { | 6 | static const unsigned char tlsext_sni_server[] = { |
7 | + 0x00 | 7 | + 0x00 |
8 | }; | 8 | }; |
9 | +const size_t sizeof_tlsext_sni_server = 0; | 9 | +const size_t sizeof_tlsext_sni_server = 0; |
@@ -39,7 +39,7 @@ | |||
39 | if (!client_funcs->parse(ssl, SSL_TLSEXT_MSG_SH, &cbs, &alert)) { | 39 | if (!client_funcs->parse(ssl, SSL_TLSEXT_MSG_SH, &cbs, &alert)) { |
40 | FAIL("failed to parse server SNI\n"); | 40 | FAIL("failed to parse server SNI\n"); |
41 | goto err; | 41 | goto err; |
42 | @@ -3196,7 +3198,10 @@ unsigned char tlsext_clienthello_default[] = { | 42 | @@ -3194,7 +3196,10 @@ unsigned char tlsext_clienthello_default[] = { |
43 | 0x04, 0x03, 0x02, 0x01, 0x02, 0x03, | 43 | 0x04, 0x03, 0x02, 0x01, 0x02, 0x03, |
44 | }; | 44 | }; |
45 | 45 | ||
@@ -51,7 +51,7 @@ | |||
51 | 51 | ||
52 | static int | 52 | static int |
53 | test_tlsext_clienthello_build(void) | 53 | test_tlsext_clienthello_build(void) |
54 | @@ -3282,18 +3287,18 @@ test_tlsext_clienthello_build(void) | 54 | @@ -3280,18 +3285,18 @@ test_tlsext_clienthello_build(void) |
55 | goto err; | 55 | goto err; |
56 | } | 56 | } |
57 | 57 | ||
diff --git a/patches/windows_headers.patch b/patches/windows_headers.patch index 0e9428c..17c447d 100644 --- a/patches/windows_headers.patch +++ b/patches/windows_headers.patch | |||
@@ -13,19 +13,6 @@ diff -u include/openssl.orig/dtls1.h include/openssl/dtls1.h | |||
13 | 13 | ||
14 | #include <stdio.h> | 14 | #include <stdio.h> |
15 | #include <stdlib.h> | 15 | #include <stdlib.h> |
16 | --- include/openssl/opensslconf.h.orig Sat Nov 5 08:36:25 2016 | ||
17 | +++ include/openssl/opensslconf.h Mon Jul 17 06:06:58 2017 | ||
18 | @@ -1,6 +1,10 @@ | ||
19 | #include <openssl/opensslfeatures.h> | ||
20 | /* crypto/opensslconf.h.in */ | ||
21 | |||
22 | +#if defined(_MSC_VER) && !defined(__clang__) && !defined(__attribute__) | ||
23 | +#define __attribute__(a) | ||
24 | +#endif | ||
25 | + | ||
26 | #if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) | ||
27 | #define OPENSSLDIR "/etc/ssl" | ||
28 | #endif | ||
29 | --- include/openssl/ossl_typ.h.orig Fri Feb 18 16:30:39 2022 | 16 | --- include/openssl/ossl_typ.h.orig Fri Feb 18 16:30:39 2022 |
30 | +++ include/openssl/ossl_typ.h Mon Feb 21 05:39:35 2022 | 17 | +++ include/openssl/ossl_typ.h Mon Feb 21 05:39:35 2022 |
31 | @@ -82,6 +82,22 @@ | 18 | @@ -82,6 +82,22 @@ |
diff --git a/scripts/config.guess b/scripts/config.guess index b82ee23..980b020 100644 --- a/scripts/config.guess +++ b/scripts/config.guess | |||
@@ -1,12 +1,14 @@ | |||
1 | #! /bin/sh | 1 | #! /bin/sh |
2 | # Attempt to guess a canonical system name. | 2 | # Attempt to guess a canonical system name. |
3 | # Copyright 1992-2015 Free Software Foundation, Inc. | 3 | # Copyright 1992-2022 Free Software Foundation, Inc. |
4 | 4 | ||
5 | timestamp='2015-12-14' | 5 | # shellcheck disable=SC2006,SC2268 # see below for rationale |
6 | |||
7 | timestamp='2022-09-17' | ||
6 | 8 | ||
7 | # This file is free software; you can redistribute it and/or modify it | 9 | # This file is free software; you can redistribute it and/or modify it |
8 | # under the terms of the GNU General Public License as published by | 10 | # under the terms of the GNU General Public License as published by |
9 | # the Free Software Foundation; either version 3 of the License, or | 11 | # the Free Software Foundation, either version 3 of the License, or |
10 | # (at your option) any later version. | 12 | # (at your option) any later version. |
11 | # | 13 | # |
12 | # This program is distributed in the hope that it will be useful, but | 14 | # This program is distributed in the hope that it will be useful, but |
@@ -15,7 +17,7 @@ timestamp='2015-12-14' | |||
15 | # General Public License for more details. | 17 | # General Public License for more details. |
16 | # | 18 | # |
17 | # You should have received a copy of the GNU General Public License | 19 | # You should have received a copy of the GNU General Public License |
18 | # along with this program; if not, see <http://www.gnu.org/licenses/>. | 20 | # along with this program; if not, see <https://www.gnu.org/licenses/>. |
19 | # | 21 | # |
20 | # As a special exception to the GNU General Public License, if you | 22 | # As a special exception to the GNU General Public License, if you |
21 | # distribute this file as part of a program that contains a | 23 | # distribute this file as part of a program that contains a |
@@ -27,11 +29,19 @@ timestamp='2015-12-14' | |||
27 | # Originally written by Per Bothner; maintained since 2000 by Ben Elliston. | 29 | # Originally written by Per Bothner; maintained since 2000 by Ben Elliston. |
28 | # | 30 | # |
29 | # You can get the latest version of this script from: | 31 | # You can get the latest version of this script from: |
30 | # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD | 32 | # https://git.savannah.gnu.org/cgit/config.git/plain/config.guess |
31 | # | 33 | # |
32 | # Please send patches to <config-patches@gnu.org>. | 34 | # Please send patches to <config-patches@gnu.org>. |
33 | 35 | ||
34 | 36 | ||
37 | # The "shellcheck disable" line above the timestamp inhibits complaints | ||
38 | # about features and limitations of the classic Bourne shell that were | ||
39 | # superseded or lifted in POSIX. However, this script identifies a wide | ||
40 | # variety of pre-POSIX systems that do not have POSIX shells at all, and | ||
41 | # even some reasonably current systems (Solaris 10 as case-in-point) still | ||
42 | # have a pre-POSIX /bin/sh. | ||
43 | |||
44 | |||
35 | me=`echo "$0" | sed -e 's,.*/,,'` | 45 | me=`echo "$0" | sed -e 's,.*/,,'` |
36 | 46 | ||
37 | usage="\ | 47 | usage="\ |
@@ -39,7 +49,7 @@ Usage: $0 [OPTION] | |||
39 | 49 | ||
40 | Output the configuration name of the system \`$me' is run on. | 50 | Output the configuration name of the system \`$me' is run on. |
41 | 51 | ||
42 | Operation modes: | 52 | Options: |
43 | -h, --help print this help, then exit | 53 | -h, --help print this help, then exit |
44 | -t, --time-stamp print date of last modification, then exit | 54 | -t, --time-stamp print date of last modification, then exit |
45 | -v, --version print version number, then exit | 55 | -v, --version print version number, then exit |
@@ -50,7 +60,7 @@ version="\ | |||
50 | GNU config.guess ($timestamp) | 60 | GNU config.guess ($timestamp) |
51 | 61 | ||
52 | Originally written by Per Bothner. | 62 | Originally written by Per Bothner. |
53 | Copyright 1992-2015 Free Software Foundation, Inc. | 63 | Copyright 1992-2022 Free Software Foundation, Inc. |
54 | 64 | ||
55 | This is free software; see the source for copying conditions. There is NO | 65 | This is free software; see the source for copying conditions. There is NO |
56 | warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." | 66 | warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." |
@@ -84,7 +94,8 @@ if test $# != 0; then | |||
84 | exit 1 | 94 | exit 1 |
85 | fi | 95 | fi |
86 | 96 | ||
87 | trap 'exit 1' 1 2 15 | 97 | # Just in case it came from the environment. |
98 | GUESS= | ||
88 | 99 | ||
89 | # CC_FOR_BUILD -- compiler used by this script. Note that the use of a | 100 | # CC_FOR_BUILD -- compiler used by this script. Note that the use of a |
90 | # compiler to aid in system detection is discouraged as it requires | 101 | # compiler to aid in system detection is discouraged as it requires |
@@ -96,66 +107,90 @@ trap 'exit 1' 1 2 15 | |||
96 | 107 | ||
97 | # Portable tmp directory creation inspired by the Autoconf team. | 108 | # Portable tmp directory creation inspired by the Autoconf team. |
98 | 109 | ||
99 | set_cc_for_build=' | 110 | tmp= |
100 | trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; | 111 | # shellcheck disable=SC2172 |
101 | trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; | 112 | trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15 |
102 | : ${TMPDIR=/tmp} ; | 113 | |
103 | { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || | 114 | set_cc_for_build() { |
104 | { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || | 115 | # prevent multiple calls if $tmp is already set |
105 | { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || | 116 | test "$tmp" && return 0 |
106 | { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; | 117 | : "${TMPDIR=/tmp}" |
107 | dummy=$tmp/dummy ; | 118 | # shellcheck disable=SC2039,SC3028 |
108 | tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; | 119 | { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || |
109 | case $CC_FOR_BUILD,$HOST_CC,$CC in | 120 | { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } || |
110 | ,,) echo "int x;" > $dummy.c ; | 121 | { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } || |
111 | for c in cc gcc c89 c99 ; do | 122 | { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } |
112 | if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then | 123 | dummy=$tmp/dummy |
113 | CC_FOR_BUILD="$c"; break ; | 124 | case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in |
114 | fi ; | 125 | ,,) echo "int x;" > "$dummy.c" |
115 | done ; | 126 | for driver in cc gcc c89 c99 ; do |
116 | if test x"$CC_FOR_BUILD" = x ; then | 127 | if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then |
117 | CC_FOR_BUILD=no_compiler_found ; | 128 | CC_FOR_BUILD=$driver |
118 | fi | 129 | break |
119 | ;; | 130 | fi |
120 | ,,*) CC_FOR_BUILD=$CC ;; | 131 | done |
121 | ,*,*) CC_FOR_BUILD=$HOST_CC ;; | 132 | if test x"$CC_FOR_BUILD" = x ; then |
122 | esac ; set_cc_for_build= ;' | 133 | CC_FOR_BUILD=no_compiler_found |
134 | fi | ||
135 | ;; | ||
136 | ,,*) CC_FOR_BUILD=$CC ;; | ||
137 | ,*,*) CC_FOR_BUILD=$HOST_CC ;; | ||
138 | esac | ||
139 | } | ||
123 | 140 | ||
124 | # This is needed to find uname on a Pyramid OSx when run in the BSD universe. | 141 | # This is needed to find uname on a Pyramid OSx when run in the BSD universe. |
125 | # (ghazi@noc.rutgers.edu 1994-08-24) | 142 | # (ghazi@noc.rutgers.edu 1994-08-24) |
126 | if (test -f /.attbin/uname) >/dev/null 2>&1 ; then | 143 | if test -f /.attbin/uname ; then |
127 | PATH=$PATH:/.attbin ; export PATH | 144 | PATH=$PATH:/.attbin ; export PATH |
128 | fi | 145 | fi |
129 | 146 | ||
130 | UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown | 147 | UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown |
131 | UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown | 148 | UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown |
132 | UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown | 149 | UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown |
133 | UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown | 150 | UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown |
134 | 151 | ||
135 | case "${UNAME_SYSTEM}" in | 152 | case $UNAME_SYSTEM in |
136 | Linux|GNU|GNU/*) | 153 | Linux|GNU|GNU/*) |
137 | # If the system lacks a compiler, then just pick glibc. | 154 | LIBC=unknown |
138 | # We could probably try harder. | ||
139 | LIBC=gnu | ||
140 | 155 | ||
141 | eval $set_cc_for_build | 156 | set_cc_for_build |
142 | cat <<-EOF > $dummy.c | 157 | cat <<-EOF > "$dummy.c" |
143 | #include <features.h> | 158 | #include <features.h> |
144 | #if defined(__UCLIBC__) | 159 | #if defined(__UCLIBC__) |
145 | LIBC=uclibc | 160 | LIBC=uclibc |
146 | #elif defined(__dietlibc__) | 161 | #elif defined(__dietlibc__) |
147 | LIBC=dietlibc | 162 | LIBC=dietlibc |
148 | #else | 163 | #elif defined(__GLIBC__) |
149 | LIBC=gnu | 164 | LIBC=gnu |
165 | #else | ||
166 | #include <stdarg.h> | ||
167 | /* First heuristic to detect musl libc. */ | ||
168 | #ifdef __DEFINED_va_list | ||
169 | LIBC=musl | ||
170 | #endif | ||
150 | #endif | 171 | #endif |
151 | EOF | 172 | EOF |
152 | eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` | 173 | cc_set_libc=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` |
174 | eval "$cc_set_libc" | ||
175 | |||
176 | # Second heuristic to detect musl libc. | ||
177 | if [ "$LIBC" = unknown ] && | ||
178 | command -v ldd >/dev/null && | ||
179 | ldd --version 2>&1 | grep -q ^musl; then | ||
180 | LIBC=musl | ||
181 | fi | ||
182 | |||
183 | # If the system lacks a compiler, then just pick glibc. | ||
184 | # We could probably try harder. | ||
185 | if [ "$LIBC" = unknown ]; then | ||
186 | LIBC=gnu | ||
187 | fi | ||
153 | ;; | 188 | ;; |
154 | esac | 189 | esac |
155 | 190 | ||
156 | # Note: order is significant - the case branches are not exclusive. | 191 | # Note: order is significant - the case branches are not exclusive. |
157 | 192 | ||
158 | case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in | 193 | case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in |
159 | *:NetBSD:*:*) | 194 | *:NetBSD:*:*) |
160 | # NetBSD (nbsd) targets should (where applicable) match one or | 195 | # NetBSD (nbsd) targets should (where applicable) match one or |
161 | # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, | 196 | # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, |
@@ -167,29 +202,32 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in | |||
167 | # | 202 | # |
168 | # Note: NetBSD doesn't particularly care about the vendor | 203 | # Note: NetBSD doesn't particularly care about the vendor |
169 | # portion of the name. We always set it to "unknown". | 204 | # portion of the name. We always set it to "unknown". |
170 | sysctl="sysctl -n hw.machine_arch" | ||
171 | UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ | 205 | UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ |
172 | /sbin/$sysctl 2>/dev/null || \ | 206 | /sbin/sysctl -n hw.machine_arch 2>/dev/null || \ |
173 | /usr/sbin/$sysctl 2>/dev/null || \ | 207 | /usr/sbin/sysctl -n hw.machine_arch 2>/dev/null || \ |
174 | echo unknown)` | 208 | echo unknown)` |
175 | case "${UNAME_MACHINE_ARCH}" in | 209 | case $UNAME_MACHINE_ARCH in |
210 | aarch64eb) machine=aarch64_be-unknown ;; | ||
176 | armeb) machine=armeb-unknown ;; | 211 | armeb) machine=armeb-unknown ;; |
177 | arm*) machine=arm-unknown ;; | 212 | arm*) machine=arm-unknown ;; |
178 | sh3el) machine=shl-unknown ;; | 213 | sh3el) machine=shl-unknown ;; |
179 | sh3eb) machine=sh-unknown ;; | 214 | sh3eb) machine=sh-unknown ;; |
180 | sh5el) machine=sh5le-unknown ;; | 215 | sh5el) machine=sh5le-unknown ;; |
181 | earmv*) | 216 | earmv*) |
182 | arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'` | 217 | arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'` |
183 | endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'` | 218 | endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'` |
184 | machine=${arch}${endian}-unknown | 219 | machine=${arch}${endian}-unknown |
185 | ;; | 220 | ;; |
186 | *) machine=${UNAME_MACHINE_ARCH}-unknown ;; | 221 | *) machine=$UNAME_MACHINE_ARCH-unknown ;; |
187 | esac | 222 | esac |
188 | # The Operating System including object format, if it has switched | 223 | # The Operating System including object format, if it has switched |
189 | # to ELF recently, or will in the future. | 224 | # to ELF recently (or will in the future) and ABI. |
190 | case "${UNAME_MACHINE_ARCH}" in | 225 | case $UNAME_MACHINE_ARCH in |
191 | arm*|earm*|i386|m68k|ns32k|sh3*|sparc|vax) | 226 | earm*) |
192 | eval $set_cc_for_build | 227 | os=netbsdelf |
228 | ;; | ||
229 | arm*|i386|m68k|ns32k|sh3*|sparc|vax) | ||
230 | set_cc_for_build | ||
193 | if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | 231 | if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ |
194 | | grep -q __ELF__ | 232 | | grep -q __ELF__ |
195 | then | 233 | then |
@@ -205,10 +243,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in | |||
205 | ;; | 243 | ;; |
206 | esac | 244 | esac |
207 | # Determine ABI tags. | 245 | # Determine ABI tags. |
208 | case "${UNAME_MACHINE_ARCH}" in | 246 | case $UNAME_MACHINE_ARCH in |
209 | earm*) | 247 | earm*) |
210 | expr='s/^earmv[0-9]/-eabi/;s/eb$//' | 248 | expr='s/^earmv[0-9]/-eabi/;s/eb$//' |
211 | abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"` | 249 | abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"` |
212 | ;; | 250 | ;; |
213 | esac | 251 | esac |
214 | # The OS release | 252 | # The OS release |
@@ -216,43 +254,68 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in | |||
216 | # thus, need a distinct triplet. However, they do not need | 254 | # thus, need a distinct triplet. However, they do not need |
217 | # kernel version information, so it can be replaced with a | 255 | # kernel version information, so it can be replaced with a |
218 | # suitable tag, in the style of linux-gnu. | 256 | # suitable tag, in the style of linux-gnu. |
219 | case "${UNAME_VERSION}" in | 257 | case $UNAME_VERSION in |
220 | Debian*) | 258 | Debian*) |
221 | release='-gnu' | 259 | release='-gnu' |
222 | ;; | 260 | ;; |
223 | *) | 261 | *) |
224 | release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. -f1,2` | 262 | release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2` |
225 | ;; | 263 | ;; |
226 | esac | 264 | esac |
227 | # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: | 265 | # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: |
228 | # contains redundant information, the shorter form: | 266 | # contains redundant information, the shorter form: |
229 | # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. | 267 | # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. |
230 | echo "${machine}-${os}${release}${abi}" | 268 | GUESS=$machine-${os}${release}${abi-} |
231 | exit ;; | 269 | ;; |
232 | *:Bitrig:*:*) | 270 | *:Bitrig:*:*) |
233 | UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` | 271 | UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` |
234 | echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} | 272 | GUESS=$UNAME_MACHINE_ARCH-unknown-bitrig$UNAME_RELEASE |
235 | exit ;; | 273 | ;; |
236 | *:OpenBSD:*:*) | 274 | *:OpenBSD:*:*) |
237 | UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` | 275 | UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` |
238 | echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} | 276 | GUESS=$UNAME_MACHINE_ARCH-unknown-openbsd$UNAME_RELEASE |
239 | exit ;; | 277 | ;; |
278 | *:SecBSD:*:*) | ||
279 | UNAME_MACHINE_ARCH=`arch | sed 's/SecBSD.//'` | ||
280 | GUESS=$UNAME_MACHINE_ARCH-unknown-secbsd$UNAME_RELEASE | ||
281 | ;; | ||
282 | *:LibertyBSD:*:*) | ||
283 | UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` | ||
284 | GUESS=$UNAME_MACHINE_ARCH-unknown-libertybsd$UNAME_RELEASE | ||
285 | ;; | ||
286 | *:MidnightBSD:*:*) | ||
287 | GUESS=$UNAME_MACHINE-unknown-midnightbsd$UNAME_RELEASE | ||
288 | ;; | ||
240 | *:ekkoBSD:*:*) | 289 | *:ekkoBSD:*:*) |
241 | echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} | 290 | GUESS=$UNAME_MACHINE-unknown-ekkobsd$UNAME_RELEASE |
242 | exit ;; | 291 | ;; |
243 | *:SolidBSD:*:*) | 292 | *:SolidBSD:*:*) |
244 | echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} | 293 | GUESS=$UNAME_MACHINE-unknown-solidbsd$UNAME_RELEASE |
245 | exit ;; | 294 | ;; |
295 | *:OS108:*:*) | ||
296 | GUESS=$UNAME_MACHINE-unknown-os108_$UNAME_RELEASE | ||
297 | ;; | ||
246 | macppc:MirBSD:*:*) | 298 | macppc:MirBSD:*:*) |
247 | echo powerpc-unknown-mirbsd${UNAME_RELEASE} | 299 | GUESS=powerpc-unknown-mirbsd$UNAME_RELEASE |
248 | exit ;; | 300 | ;; |
249 | *:MirBSD:*:*) | 301 | *:MirBSD:*:*) |
250 | echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} | 302 | GUESS=$UNAME_MACHINE-unknown-mirbsd$UNAME_RELEASE |
251 | exit ;; | 303 | ;; |
252 | *:Sortix:*:*) | 304 | *:Sortix:*:*) |
253 | echo ${UNAME_MACHINE}-unknown-sortix | 305 | GUESS=$UNAME_MACHINE-unknown-sortix |
254 | exit ;; | 306 | ;; |
307 | *:Twizzler:*:*) | ||
308 | GUESS=$UNAME_MACHINE-unknown-twizzler | ||
309 | ;; | ||
310 | *:Redox:*:*) | ||
311 | GUESS=$UNAME_MACHINE-unknown-redox | ||
312 | ;; | ||
313 | mips:OSF1:*.*) | ||
314 | GUESS=mips-dec-osf1 | ||
315 | ;; | ||
255 | alpha:OSF1:*:*) | 316 | alpha:OSF1:*:*) |
317 | # Reset EXIT trap before exiting to avoid spurious non-zero exit code. | ||
318 | trap '' 0 | ||
256 | case $UNAME_RELEASE in | 319 | case $UNAME_RELEASE in |
257 | *4.0) | 320 | *4.0) |
258 | UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` | 321 | UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` |
@@ -266,163 +329,158 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in | |||
266 | # covers most systems running today. This code pipes the CPU | 329 | # covers most systems running today. This code pipes the CPU |
267 | # types through head -n 1, so we only detect the type of CPU 0. | 330 | # types through head -n 1, so we only detect the type of CPU 0. |
268 | ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` | 331 | ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` |
269 | case "$ALPHA_CPU_TYPE" in | 332 | case $ALPHA_CPU_TYPE in |
270 | "EV4 (21064)") | 333 | "EV4 (21064)") |
271 | UNAME_MACHINE="alpha" ;; | 334 | UNAME_MACHINE=alpha ;; |
272 | "EV4.5 (21064)") | 335 | "EV4.5 (21064)") |
273 | UNAME_MACHINE="alpha" ;; | 336 | UNAME_MACHINE=alpha ;; |
274 | "LCA4 (21066/21068)") | 337 | "LCA4 (21066/21068)") |
275 | UNAME_MACHINE="alpha" ;; | 338 | UNAME_MACHINE=alpha ;; |
276 | "EV5 (21164)") | 339 | "EV5 (21164)") |
277 | UNAME_MACHINE="alphaev5" ;; | 340 | UNAME_MACHINE=alphaev5 ;; |
278 | "EV5.6 (21164A)") | 341 | "EV5.6 (21164A)") |
279 | UNAME_MACHINE="alphaev56" ;; | 342 | UNAME_MACHINE=alphaev56 ;; |
280 | "EV5.6 (21164PC)") | 343 | "EV5.6 (21164PC)") |
281 | UNAME_MACHINE="alphapca56" ;; | 344 | UNAME_MACHINE=alphapca56 ;; |
282 | "EV5.7 (21164PC)") | 345 | "EV5.7 (21164PC)") |
283 | UNAME_MACHINE="alphapca57" ;; | 346 | UNAME_MACHINE=alphapca57 ;; |
284 | "EV6 (21264)") | 347 | "EV6 (21264)") |
285 | UNAME_MACHINE="alphaev6" ;; | 348 | UNAME_MACHINE=alphaev6 ;; |
286 | "EV6.7 (21264A)") | 349 | "EV6.7 (21264A)") |
287 | UNAME_MACHINE="alphaev67" ;; | 350 | UNAME_MACHINE=alphaev67 ;; |
288 | "EV6.8CB (21264C)") | 351 | "EV6.8CB (21264C)") |
289 | UNAME_MACHINE="alphaev68" ;; | 352 | UNAME_MACHINE=alphaev68 ;; |
290 | "EV6.8AL (21264B)") | 353 | "EV6.8AL (21264B)") |
291 | UNAME_MACHINE="alphaev68" ;; | 354 | UNAME_MACHINE=alphaev68 ;; |
292 | "EV6.8CX (21264D)") | 355 | "EV6.8CX (21264D)") |
293 | UNAME_MACHINE="alphaev68" ;; | 356 | UNAME_MACHINE=alphaev68 ;; |
294 | "EV6.9A (21264/EV69A)") | 357 | "EV6.9A (21264/EV69A)") |
295 | UNAME_MACHINE="alphaev69" ;; | 358 | UNAME_MACHINE=alphaev69 ;; |
296 | "EV7 (21364)") | 359 | "EV7 (21364)") |
297 | UNAME_MACHINE="alphaev7" ;; | 360 | UNAME_MACHINE=alphaev7 ;; |
298 | "EV7.9 (21364A)") | 361 | "EV7.9 (21364A)") |
299 | UNAME_MACHINE="alphaev79" ;; | 362 | UNAME_MACHINE=alphaev79 ;; |
300 | esac | 363 | esac |
301 | # A Pn.n version is a patched version. | 364 | # A Pn.n version is a patched version. |
302 | # A Vn.n version is a released version. | 365 | # A Vn.n version is a released version. |
303 | # A Tn.n version is a released field test version. | 366 | # A Tn.n version is a released field test version. |
304 | # A Xn.n version is an unreleased experimental baselevel. | 367 | # A Xn.n version is an unreleased experimental baselevel. |
305 | # 1.2 uses "1.2" for uname -r. | 368 | # 1.2 uses "1.2" for uname -r. |
306 | echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` | 369 | OSF_REL=`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` |
307 | # Reset EXIT trap before exiting to avoid spurious non-zero exit code. | 370 | GUESS=$UNAME_MACHINE-dec-osf$OSF_REL |
308 | exitcode=$? | 371 | ;; |
309 | trap '' 0 | ||
310 | exit $exitcode ;; | ||
311 | Alpha\ *:Windows_NT*:*) | ||
312 | # How do we know it's Interix rather than the generic POSIX subsystem? | ||
313 | # Should we change UNAME_MACHINE based on the output of uname instead | ||
314 | # of the specific Alpha model? | ||
315 | echo alpha-pc-interix | ||
316 | exit ;; | ||
317 | 21064:Windows_NT:50:3) | ||
318 | echo alpha-dec-winnt3.5 | ||
319 | exit ;; | ||
320 | Amiga*:UNIX_System_V:4.0:*) | 372 | Amiga*:UNIX_System_V:4.0:*) |
321 | echo m68k-unknown-sysv4 | 373 | GUESS=m68k-unknown-sysv4 |
322 | exit ;; | 374 | ;; |
323 | *:[Aa]miga[Oo][Ss]:*:*) | 375 | *:[Aa]miga[Oo][Ss]:*:*) |
324 | echo ${UNAME_MACHINE}-unknown-amigaos | 376 | GUESS=$UNAME_MACHINE-unknown-amigaos |
325 | exit ;; | 377 | ;; |
326 | *:[Mm]orph[Oo][Ss]:*:*) | 378 | *:[Mm]orph[Oo][Ss]:*:*) |
327 | echo ${UNAME_MACHINE}-unknown-morphos | 379 | GUESS=$UNAME_MACHINE-unknown-morphos |
328 | exit ;; | 380 | ;; |
329 | *:OS/390:*:*) | 381 | *:OS/390:*:*) |
330 | echo i370-ibm-openedition | 382 | GUESS=i370-ibm-openedition |
331 | exit ;; | 383 | ;; |
332 | *:z/VM:*:*) | 384 | *:z/VM:*:*) |
333 | echo s390-ibm-zvmoe | 385 | GUESS=s390-ibm-zvmoe |
334 | exit ;; | 386 | ;; |
335 | *:OS400:*:*) | 387 | *:OS400:*:*) |
336 | echo powerpc-ibm-os400 | 388 | GUESS=powerpc-ibm-os400 |
337 | exit ;; | 389 | ;; |
338 | arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) | 390 | arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) |
339 | echo arm-acorn-riscix${UNAME_RELEASE} | 391 | GUESS=arm-acorn-riscix$UNAME_RELEASE |
340 | exit ;; | 392 | ;; |
341 | arm*:riscos:*:*|arm*:RISCOS:*:*) | 393 | arm*:riscos:*:*|arm*:RISCOS:*:*) |
342 | echo arm-unknown-riscos | 394 | GUESS=arm-unknown-riscos |
343 | exit ;; | 395 | ;; |
344 | SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) | 396 | SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) |
345 | echo hppa1.1-hitachi-hiuxmpp | 397 | GUESS=hppa1.1-hitachi-hiuxmpp |
346 | exit ;; | 398 | ;; |
347 | Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) | 399 | Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) |
348 | # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. | 400 | # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. |
349 | if test "`(/bin/universe) 2>/dev/null`" = att ; then | 401 | case `(/bin/universe) 2>/dev/null` in |
350 | echo pyramid-pyramid-sysv3 | 402 | att) GUESS=pyramid-pyramid-sysv3 ;; |
351 | else | 403 | *) GUESS=pyramid-pyramid-bsd ;; |
352 | echo pyramid-pyramid-bsd | 404 | esac |
353 | fi | 405 | ;; |
354 | exit ;; | ||
355 | NILE*:*:*:dcosx) | 406 | NILE*:*:*:dcosx) |
356 | echo pyramid-pyramid-svr4 | 407 | GUESS=pyramid-pyramid-svr4 |
357 | exit ;; | 408 | ;; |
358 | DRS?6000:unix:4.0:6*) | 409 | DRS?6000:unix:4.0:6*) |
359 | echo sparc-icl-nx6 | 410 | GUESS=sparc-icl-nx6 |
360 | exit ;; | 411 | ;; |
361 | DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) | 412 | DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) |
362 | case `/usr/bin/uname -p` in | 413 | case `/usr/bin/uname -p` in |
363 | sparc) echo sparc-icl-nx7; exit ;; | 414 | sparc) GUESS=sparc-icl-nx7 ;; |
364 | esac ;; | 415 | esac |
416 | ;; | ||
365 | s390x:SunOS:*:*) | 417 | s390x:SunOS:*:*) |
366 | echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | 418 | SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` |
367 | exit ;; | 419 | GUESS=$UNAME_MACHINE-ibm-solaris2$SUN_REL |
420 | ;; | ||
368 | sun4H:SunOS:5.*:*) | 421 | sun4H:SunOS:5.*:*) |
369 | echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | 422 | SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` |
370 | exit ;; | 423 | GUESS=sparc-hal-solaris2$SUN_REL |
424 | ;; | ||
371 | sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) | 425 | sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) |
372 | echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | 426 | SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` |
373 | exit ;; | 427 | GUESS=sparc-sun-solaris2$SUN_REL |
428 | ;; | ||
374 | i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) | 429 | i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) |
375 | echo i386-pc-auroraux${UNAME_RELEASE} | 430 | GUESS=i386-pc-auroraux$UNAME_RELEASE |
376 | exit ;; | 431 | ;; |
377 | i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) | 432 | i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) |
378 | eval $set_cc_for_build | 433 | set_cc_for_build |
379 | SUN_ARCH="i386" | 434 | SUN_ARCH=i386 |
380 | # If there is a compiler, see if it is configured for 64-bit objects. | 435 | # If there is a compiler, see if it is configured for 64-bit objects. |
381 | # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. | 436 | # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. |
382 | # This test works for both compilers. | 437 | # This test works for both compilers. |
383 | if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then | 438 | if test "$CC_FOR_BUILD" != no_compiler_found; then |
384 | if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ | 439 | if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ |
385 | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ | 440 | (CCOPTS="" $CC_FOR_BUILD -m64 -E - 2>/dev/null) | \ |
386 | grep IS_64BIT_ARCH >/dev/null | 441 | grep IS_64BIT_ARCH >/dev/null |
387 | then | 442 | then |
388 | SUN_ARCH="x86_64" | 443 | SUN_ARCH=x86_64 |
389 | fi | 444 | fi |
390 | fi | 445 | fi |
391 | echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | 446 | SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` |
392 | exit ;; | 447 | GUESS=$SUN_ARCH-pc-solaris2$SUN_REL |
448 | ;; | ||
393 | sun4*:SunOS:6*:*) | 449 | sun4*:SunOS:6*:*) |
394 | # According to config.sub, this is the proper way to canonicalize | 450 | # According to config.sub, this is the proper way to canonicalize |
395 | # SunOS6. Hard to guess exactly what SunOS6 will be like, but | 451 | # SunOS6. Hard to guess exactly what SunOS6 will be like, but |
396 | # it's likely to be more like Solaris than SunOS4. | 452 | # it's likely to be more like Solaris than SunOS4. |
397 | echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | 453 | SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` |
398 | exit ;; | 454 | GUESS=sparc-sun-solaris3$SUN_REL |
455 | ;; | ||
399 | sun4*:SunOS:*:*) | 456 | sun4*:SunOS:*:*) |
400 | case "`/usr/bin/arch -k`" in | 457 | case `/usr/bin/arch -k` in |
401 | Series*|S4*) | 458 | Series*|S4*) |
402 | UNAME_RELEASE=`uname -v` | 459 | UNAME_RELEASE=`uname -v` |
403 | ;; | 460 | ;; |
404 | esac | 461 | esac |
405 | # Japanese Language versions have a version number like `4.1.3-JL'. | 462 | # Japanese Language versions have a version number like `4.1.3-JL'. |
406 | echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` | 463 | SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/'` |
407 | exit ;; | 464 | GUESS=sparc-sun-sunos$SUN_REL |
465 | ;; | ||
408 | sun3*:SunOS:*:*) | 466 | sun3*:SunOS:*:*) |
409 | echo m68k-sun-sunos${UNAME_RELEASE} | 467 | GUESS=m68k-sun-sunos$UNAME_RELEASE |
410 | exit ;; | 468 | ;; |
411 | sun*:*:4.2BSD:*) | 469 | sun*:*:4.2BSD:*) |
412 | UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` | 470 | UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` |
413 | test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 | 471 | test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3 |
414 | case "`/bin/arch`" in | 472 | case `/bin/arch` in |
415 | sun3) | 473 | sun3) |
416 | echo m68k-sun-sunos${UNAME_RELEASE} | 474 | GUESS=m68k-sun-sunos$UNAME_RELEASE |
417 | ;; | 475 | ;; |
418 | sun4) | 476 | sun4) |
419 | echo sparc-sun-sunos${UNAME_RELEASE} | 477 | GUESS=sparc-sun-sunos$UNAME_RELEASE |
420 | ;; | 478 | ;; |
421 | esac | 479 | esac |
422 | exit ;; | 480 | ;; |
423 | aushp:SunOS:*:*) | 481 | aushp:SunOS:*:*) |
424 | echo sparc-auspex-sunos${UNAME_RELEASE} | 482 | GUESS=sparc-auspex-sunos$UNAME_RELEASE |
425 | exit ;; | 483 | ;; |
426 | # The situation for MiNT is a little confusing. The machine name | 484 | # The situation for MiNT is a little confusing. The machine name |
427 | # can be virtually everything (everything which is not | 485 | # can be virtually everything (everything which is not |
428 | # "atarist" or "atariste" at least should have a processor | 486 | # "atarist" or "atariste" at least should have a processor |
@@ -432,44 +490,44 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in | |||
432 | # MiNT. But MiNT is downward compatible to TOS, so this should | 490 | # MiNT. But MiNT is downward compatible to TOS, so this should |
433 | # be no problem. | 491 | # be no problem. |
434 | atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) | 492 | atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) |
435 | echo m68k-atari-mint${UNAME_RELEASE} | 493 | GUESS=m68k-atari-mint$UNAME_RELEASE |
436 | exit ;; | 494 | ;; |
437 | atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) | 495 | atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) |
438 | echo m68k-atari-mint${UNAME_RELEASE} | 496 | GUESS=m68k-atari-mint$UNAME_RELEASE |
439 | exit ;; | 497 | ;; |
440 | *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) | 498 | *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) |
441 | echo m68k-atari-mint${UNAME_RELEASE} | 499 | GUESS=m68k-atari-mint$UNAME_RELEASE |
442 | exit ;; | 500 | ;; |
443 | milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) | 501 | milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) |
444 | echo m68k-milan-mint${UNAME_RELEASE} | 502 | GUESS=m68k-milan-mint$UNAME_RELEASE |
445 | exit ;; | 503 | ;; |
446 | hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) | 504 | hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) |
447 | echo m68k-hades-mint${UNAME_RELEASE} | 505 | GUESS=m68k-hades-mint$UNAME_RELEASE |
448 | exit ;; | 506 | ;; |
449 | *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) | 507 | *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) |
450 | echo m68k-unknown-mint${UNAME_RELEASE} | 508 | GUESS=m68k-unknown-mint$UNAME_RELEASE |
451 | exit ;; | 509 | ;; |
452 | m68k:machten:*:*) | 510 | m68k:machten:*:*) |
453 | echo m68k-apple-machten${UNAME_RELEASE} | 511 | GUESS=m68k-apple-machten$UNAME_RELEASE |
454 | exit ;; | 512 | ;; |
455 | powerpc:machten:*:*) | 513 | powerpc:machten:*:*) |
456 | echo powerpc-apple-machten${UNAME_RELEASE} | 514 | GUESS=powerpc-apple-machten$UNAME_RELEASE |
457 | exit ;; | 515 | ;; |
458 | RISC*:Mach:*:*) | 516 | RISC*:Mach:*:*) |
459 | echo mips-dec-mach_bsd4.3 | 517 | GUESS=mips-dec-mach_bsd4.3 |
460 | exit ;; | 518 | ;; |
461 | RISC*:ULTRIX:*:*) | 519 | RISC*:ULTRIX:*:*) |
462 | echo mips-dec-ultrix${UNAME_RELEASE} | 520 | GUESS=mips-dec-ultrix$UNAME_RELEASE |
463 | exit ;; | 521 | ;; |
464 | VAX*:ULTRIX*:*:*) | 522 | VAX*:ULTRIX*:*:*) |
465 | echo vax-dec-ultrix${UNAME_RELEASE} | 523 | GUESS=vax-dec-ultrix$UNAME_RELEASE |
466 | exit ;; | 524 | ;; |
467 | 2020:CLIX:*:* | 2430:CLIX:*:*) | 525 | 2020:CLIX:*:* | 2430:CLIX:*:*) |
468 | echo clipper-intergraph-clix${UNAME_RELEASE} | 526 | GUESS=clipper-intergraph-clix$UNAME_RELEASE |
469 | exit ;; | 527 | ;; |
470 | mips:*:*:UMIPS | mips:*:*:RISCos) | 528 | mips:*:*:UMIPS | mips:*:*:RISCos) |
471 | eval $set_cc_for_build | 529 | set_cc_for_build |
472 | sed 's/^ //' << EOF >$dummy.c | 530 | sed 's/^ //' << EOF > "$dummy.c" |
473 | #ifdef __cplusplus | 531 | #ifdef __cplusplus |
474 | #include <stdio.h> /* for printf() prototype */ | 532 | #include <stdio.h> /* for printf() prototype */ |
475 | int main (int argc, char *argv[]) { | 533 | int main (int argc, char *argv[]) { |
@@ -478,95 +536,96 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in | |||
478 | #endif | 536 | #endif |
479 | #if defined (host_mips) && defined (MIPSEB) | 537 | #if defined (host_mips) && defined (MIPSEB) |
480 | #if defined (SYSTYPE_SYSV) | 538 | #if defined (SYSTYPE_SYSV) |
481 | printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); | 539 | printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0); |
482 | #endif | 540 | #endif |
483 | #if defined (SYSTYPE_SVR4) | 541 | #if defined (SYSTYPE_SVR4) |
484 | printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); | 542 | printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0); |
485 | #endif | 543 | #endif |
486 | #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) | 544 | #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) |
487 | printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); | 545 | printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0); |
488 | #endif | 546 | #endif |
489 | #endif | 547 | #endif |
490 | exit (-1); | 548 | exit (-1); |
491 | } | 549 | } |
492 | EOF | 550 | EOF |
493 | $CC_FOR_BUILD -o $dummy $dummy.c && | 551 | $CC_FOR_BUILD -o "$dummy" "$dummy.c" && |
494 | dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && | 552 | dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` && |
495 | SYSTEM_NAME=`$dummy $dummyarg` && | 553 | SYSTEM_NAME=`"$dummy" "$dummyarg"` && |
496 | { echo "$SYSTEM_NAME"; exit; } | 554 | { echo "$SYSTEM_NAME"; exit; } |
497 | echo mips-mips-riscos${UNAME_RELEASE} | 555 | GUESS=mips-mips-riscos$UNAME_RELEASE |
498 | exit ;; | 556 | ;; |
499 | Motorola:PowerMAX_OS:*:*) | 557 | Motorola:PowerMAX_OS:*:*) |
500 | echo powerpc-motorola-powermax | 558 | GUESS=powerpc-motorola-powermax |
501 | exit ;; | 559 | ;; |
502 | Motorola:*:4.3:PL8-*) | 560 | Motorola:*:4.3:PL8-*) |
503 | echo powerpc-harris-powermax | 561 | GUESS=powerpc-harris-powermax |
504 | exit ;; | 562 | ;; |
505 | Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) | 563 | Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) |
506 | echo powerpc-harris-powermax | 564 | GUESS=powerpc-harris-powermax |
507 | exit ;; | 565 | ;; |
508 | Night_Hawk:Power_UNIX:*:*) | 566 | Night_Hawk:Power_UNIX:*:*) |
509 | echo powerpc-harris-powerunix | 567 | GUESS=powerpc-harris-powerunix |
510 | exit ;; | 568 | ;; |
511 | m88k:CX/UX:7*:*) | 569 | m88k:CX/UX:7*:*) |
512 | echo m88k-harris-cxux7 | 570 | GUESS=m88k-harris-cxux7 |
513 | exit ;; | 571 | ;; |
514 | m88k:*:4*:R4*) | 572 | m88k:*:4*:R4*) |
515 | echo m88k-motorola-sysv4 | 573 | GUESS=m88k-motorola-sysv4 |
516 | exit ;; | 574 | ;; |
517 | m88k:*:3*:R3*) | 575 | m88k:*:3*:R3*) |
518 | echo m88k-motorola-sysv3 | 576 | GUESS=m88k-motorola-sysv3 |
519 | exit ;; | 577 | ;; |
520 | AViiON:dgux:*:*) | 578 | AViiON:dgux:*:*) |
521 | # DG/UX returns AViiON for all architectures | 579 | # DG/UX returns AViiON for all architectures |
522 | UNAME_PROCESSOR=`/usr/bin/uname -p` | 580 | UNAME_PROCESSOR=`/usr/bin/uname -p` |
523 | if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] | 581 | if test "$UNAME_PROCESSOR" = mc88100 || test "$UNAME_PROCESSOR" = mc88110 |
524 | then | 582 | then |
525 | if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ | 583 | if test "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx || \ |
526 | [ ${TARGET_BINARY_INTERFACE}x = x ] | 584 | test "$TARGET_BINARY_INTERFACE"x = x |
527 | then | 585 | then |
528 | echo m88k-dg-dgux${UNAME_RELEASE} | 586 | GUESS=m88k-dg-dgux$UNAME_RELEASE |
529 | else | 587 | else |
530 | echo m88k-dg-dguxbcs${UNAME_RELEASE} | 588 | GUESS=m88k-dg-dguxbcs$UNAME_RELEASE |
531 | fi | 589 | fi |
532 | else | 590 | else |
533 | echo i586-dg-dgux${UNAME_RELEASE} | 591 | GUESS=i586-dg-dgux$UNAME_RELEASE |
534 | fi | 592 | fi |
535 | exit ;; | 593 | ;; |
536 | M88*:DolphinOS:*:*) # DolphinOS (SVR3) | 594 | M88*:DolphinOS:*:*) # DolphinOS (SVR3) |
537 | echo m88k-dolphin-sysv3 | 595 | GUESS=m88k-dolphin-sysv3 |
538 | exit ;; | 596 | ;; |
539 | M88*:*:R3*:*) | 597 | M88*:*:R3*:*) |
540 | # Delta 88k system running SVR3 | 598 | # Delta 88k system running SVR3 |
541 | echo m88k-motorola-sysv3 | 599 | GUESS=m88k-motorola-sysv3 |
542 | exit ;; | 600 | ;; |
543 | XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) | 601 | XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) |
544 | echo m88k-tektronix-sysv3 | 602 | GUESS=m88k-tektronix-sysv3 |
545 | exit ;; | 603 | ;; |
546 | Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) | 604 | Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) |
547 | echo m68k-tektronix-bsd | 605 | GUESS=m68k-tektronix-bsd |
548 | exit ;; | 606 | ;; |
549 | *:IRIX*:*:*) | 607 | *:IRIX*:*:*) |
550 | echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` | 608 | IRIX_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/g'` |
551 | exit ;; | 609 | GUESS=mips-sgi-irix$IRIX_REL |
610 | ;; | ||
552 | ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. | 611 | ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. |
553 | echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id | 612 | GUESS=romp-ibm-aix # uname -m gives an 8 hex-code CPU id |
554 | exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' | 613 | ;; # Note that: echo "'`uname -s`'" gives 'AIX ' |
555 | i*86:AIX:*:*) | 614 | i*86:AIX:*:*) |
556 | echo i386-ibm-aix | 615 | GUESS=i386-ibm-aix |
557 | exit ;; | 616 | ;; |
558 | ia64:AIX:*:*) | 617 | ia64:AIX:*:*) |
559 | if [ -x /usr/bin/oslevel ] ; then | 618 | if test -x /usr/bin/oslevel ; then |
560 | IBM_REV=`/usr/bin/oslevel` | 619 | IBM_REV=`/usr/bin/oslevel` |
561 | else | 620 | else |
562 | IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} | 621 | IBM_REV=$UNAME_VERSION.$UNAME_RELEASE |
563 | fi | 622 | fi |
564 | echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} | 623 | GUESS=$UNAME_MACHINE-ibm-aix$IBM_REV |
565 | exit ;; | 624 | ;; |
566 | *:AIX:2:3) | 625 | *:AIX:2:3) |
567 | if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then | 626 | if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then |
568 | eval $set_cc_for_build | 627 | set_cc_for_build |
569 | sed 's/^ //' << EOF >$dummy.c | 628 | sed 's/^ //' << EOF > "$dummy.c" |
570 | #include <sys/systemcfg.h> | 629 | #include <sys/systemcfg.h> |
571 | 630 | ||
572 | main() | 631 | main() |
@@ -577,77 +636,77 @@ EOF | |||
577 | exit(0); | 636 | exit(0); |
578 | } | 637 | } |
579 | EOF | 638 | EOF |
580 | if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` | 639 | if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` |
581 | then | 640 | then |
582 | echo "$SYSTEM_NAME" | 641 | GUESS=$SYSTEM_NAME |
583 | else | 642 | else |
584 | echo rs6000-ibm-aix3.2.5 | 643 | GUESS=rs6000-ibm-aix3.2.5 |
585 | fi | 644 | fi |
586 | elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then | 645 | elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then |
587 | echo rs6000-ibm-aix3.2.4 | 646 | GUESS=rs6000-ibm-aix3.2.4 |
588 | else | 647 | else |
589 | echo rs6000-ibm-aix3.2 | 648 | GUESS=rs6000-ibm-aix3.2 |
590 | fi | 649 | fi |
591 | exit ;; | 650 | ;; |
592 | *:AIX:*:[4567]) | 651 | *:AIX:*:[4567]) |
593 | IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` | 652 | IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` |
594 | if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then | 653 | if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then |
595 | IBM_ARCH=rs6000 | 654 | IBM_ARCH=rs6000 |
596 | else | 655 | else |
597 | IBM_ARCH=powerpc | 656 | IBM_ARCH=powerpc |
598 | fi | 657 | fi |
599 | if [ -x /usr/bin/lslpp ] ; then | 658 | if test -x /usr/bin/lslpp ; then |
600 | IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | | 659 | IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | \ |
601 | awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` | 660 | awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` |
602 | else | 661 | else |
603 | IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} | 662 | IBM_REV=$UNAME_VERSION.$UNAME_RELEASE |
604 | fi | 663 | fi |
605 | echo ${IBM_ARCH}-ibm-aix${IBM_REV} | 664 | GUESS=$IBM_ARCH-ibm-aix$IBM_REV |
606 | exit ;; | 665 | ;; |
607 | *:AIX:*:*) | 666 | *:AIX:*:*) |
608 | echo rs6000-ibm-aix | 667 | GUESS=rs6000-ibm-aix |
609 | exit ;; | 668 | ;; |
610 | ibmrt:4.4BSD:*|romp-ibm:BSD:*) | 669 | ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*) |
611 | echo romp-ibm-bsd4.4 | 670 | GUESS=romp-ibm-bsd4.4 |
612 | exit ;; | 671 | ;; |
613 | ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and | 672 | ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and |
614 | echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to | 673 | GUESS=romp-ibm-bsd$UNAME_RELEASE # 4.3 with uname added to |
615 | exit ;; # report: romp-ibm BSD 4.3 | 674 | ;; # report: romp-ibm BSD 4.3 |
616 | *:BOSX:*:*) | 675 | *:BOSX:*:*) |
617 | echo rs6000-bull-bosx | 676 | GUESS=rs6000-bull-bosx |
618 | exit ;; | 677 | ;; |
619 | DPX/2?00:B.O.S.:*:*) | 678 | DPX/2?00:B.O.S.:*:*) |
620 | echo m68k-bull-sysv3 | 679 | GUESS=m68k-bull-sysv3 |
621 | exit ;; | 680 | ;; |
622 | 9000/[34]??:4.3bsd:1.*:*) | 681 | 9000/[34]??:4.3bsd:1.*:*) |
623 | echo m68k-hp-bsd | 682 | GUESS=m68k-hp-bsd |
624 | exit ;; | 683 | ;; |
625 | hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) | 684 | hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) |
626 | echo m68k-hp-bsd4.4 | 685 | GUESS=m68k-hp-bsd4.4 |
627 | exit ;; | 686 | ;; |
628 | 9000/[34678]??:HP-UX:*:*) | 687 | 9000/[34678]??:HP-UX:*:*) |
629 | HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` | 688 | HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'` |
630 | case "${UNAME_MACHINE}" in | 689 | case $UNAME_MACHINE in |
631 | 9000/31? ) HP_ARCH=m68000 ;; | 690 | 9000/31?) HP_ARCH=m68000 ;; |
632 | 9000/[34]?? ) HP_ARCH=m68k ;; | 691 | 9000/[34]??) HP_ARCH=m68k ;; |
633 | 9000/[678][0-9][0-9]) | 692 | 9000/[678][0-9][0-9]) |
634 | if [ -x /usr/bin/getconf ]; then | 693 | if test -x /usr/bin/getconf; then |
635 | sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` | 694 | sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` |
636 | sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` | 695 | sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` |
637 | case "${sc_cpu_version}" in | 696 | case $sc_cpu_version in |
638 | 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 | 697 | 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 |
639 | 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 | 698 | 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 |
640 | 532) # CPU_PA_RISC2_0 | 699 | 532) # CPU_PA_RISC2_0 |
641 | case "${sc_kernel_bits}" in | 700 | case $sc_kernel_bits in |
642 | 32) HP_ARCH="hppa2.0n" ;; | 701 | 32) HP_ARCH=hppa2.0n ;; |
643 | 64) HP_ARCH="hppa2.0w" ;; | 702 | 64) HP_ARCH=hppa2.0w ;; |
644 | '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 | 703 | '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20 |
645 | esac ;; | 704 | esac ;; |
646 | esac | 705 | esac |
647 | fi | 706 | fi |
648 | if [ "${HP_ARCH}" = "" ]; then | 707 | if test "$HP_ARCH" = ""; then |
649 | eval $set_cc_for_build | 708 | set_cc_for_build |
650 | sed 's/^ //' << EOF >$dummy.c | 709 | sed 's/^ //' << EOF > "$dummy.c" |
651 | 710 | ||
652 | #define _HPUX_SOURCE | 711 | #define _HPUX_SOURCE |
653 | #include <stdlib.h> | 712 | #include <stdlib.h> |
@@ -680,13 +739,13 @@ EOF | |||
680 | exit (0); | 739 | exit (0); |
681 | } | 740 | } |
682 | EOF | 741 | EOF |
683 | (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` | 742 | (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"` |
684 | test -z "$HP_ARCH" && HP_ARCH=hppa | 743 | test -z "$HP_ARCH" && HP_ARCH=hppa |
685 | fi ;; | 744 | fi ;; |
686 | esac | 745 | esac |
687 | if [ ${HP_ARCH} = "hppa2.0w" ] | 746 | if test "$HP_ARCH" = hppa2.0w |
688 | then | 747 | then |
689 | eval $set_cc_for_build | 748 | set_cc_for_build |
690 | 749 | ||
691 | # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating | 750 | # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating |
692 | # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler | 751 | # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler |
@@ -697,23 +756,23 @@ EOF | |||
697 | # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess | 756 | # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess |
698 | # => hppa64-hp-hpux11.23 | 757 | # => hppa64-hp-hpux11.23 |
699 | 758 | ||
700 | if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | | 759 | if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | |
701 | grep -q __LP64__ | 760 | grep -q __LP64__ |
702 | then | 761 | then |
703 | HP_ARCH="hppa2.0w" | 762 | HP_ARCH=hppa2.0w |
704 | else | 763 | else |
705 | HP_ARCH="hppa64" | 764 | HP_ARCH=hppa64 |
706 | fi | 765 | fi |
707 | fi | 766 | fi |
708 | echo ${HP_ARCH}-hp-hpux${HPUX_REV} | 767 | GUESS=$HP_ARCH-hp-hpux$HPUX_REV |
709 | exit ;; | 768 | ;; |
710 | ia64:HP-UX:*:*) | 769 | ia64:HP-UX:*:*) |
711 | HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` | 770 | HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'` |
712 | echo ia64-hp-hpux${HPUX_REV} | 771 | GUESS=ia64-hp-hpux$HPUX_REV |
713 | exit ;; | 772 | ;; |
714 | 3050*:HI-UX:*:*) | 773 | 3050*:HI-UX:*:*) |
715 | eval $set_cc_for_build | 774 | set_cc_for_build |
716 | sed 's/^ //' << EOF >$dummy.c | 775 | sed 's/^ //' << EOF > "$dummy.c" |
717 | #include <unistd.h> | 776 | #include <unistd.h> |
718 | int | 777 | int |
719 | main () | 778 | main () |
@@ -738,38 +797,38 @@ EOF | |||
738 | exit (0); | 797 | exit (0); |
739 | } | 798 | } |
740 | EOF | 799 | EOF |
741 | $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && | 800 | $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` && |
742 | { echo "$SYSTEM_NAME"; exit; } | 801 | { echo "$SYSTEM_NAME"; exit; } |
743 | echo unknown-hitachi-hiuxwe2 | 802 | GUESS=unknown-hitachi-hiuxwe2 |
744 | exit ;; | 803 | ;; |
745 | 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) | 804 | 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*) |
746 | echo hppa1.1-hp-bsd | 805 | GUESS=hppa1.1-hp-bsd |
747 | exit ;; | 806 | ;; |
748 | 9000/8??:4.3bsd:*:*) | 807 | 9000/8??:4.3bsd:*:*) |
749 | echo hppa1.0-hp-bsd | 808 | GUESS=hppa1.0-hp-bsd |
750 | exit ;; | 809 | ;; |
751 | *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) | 810 | *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) |
752 | echo hppa1.0-hp-mpeix | 811 | GUESS=hppa1.0-hp-mpeix |
753 | exit ;; | 812 | ;; |
754 | hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) | 813 | hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*) |
755 | echo hppa1.1-hp-osf | 814 | GUESS=hppa1.1-hp-osf |
756 | exit ;; | 815 | ;; |
757 | hp8??:OSF1:*:*) | 816 | hp8??:OSF1:*:*) |
758 | echo hppa1.0-hp-osf | 817 | GUESS=hppa1.0-hp-osf |
759 | exit ;; | 818 | ;; |
760 | i*86:OSF1:*:*) | 819 | i*86:OSF1:*:*) |
761 | if [ -x /usr/sbin/sysversion ] ; then | 820 | if test -x /usr/sbin/sysversion ; then |
762 | echo ${UNAME_MACHINE}-unknown-osf1mk | 821 | GUESS=$UNAME_MACHINE-unknown-osf1mk |
763 | else | 822 | else |
764 | echo ${UNAME_MACHINE}-unknown-osf1 | 823 | GUESS=$UNAME_MACHINE-unknown-osf1 |
765 | fi | 824 | fi |
766 | exit ;; | 825 | ;; |
767 | parisc*:Lites*:*:*) | 826 | parisc*:Lites*:*:*) |
768 | echo hppa1.1-hp-lites | 827 | GUESS=hppa1.1-hp-lites |
769 | exit ;; | 828 | ;; |
770 | C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) | 829 | C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) |
771 | echo c1-convex-bsd | 830 | GUESS=c1-convex-bsd |
772 | exit ;; | 831 | ;; |
773 | C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) | 832 | C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) |
774 | if getsysinfo -f scalar_acc | 833 | if getsysinfo -f scalar_acc |
775 | then echo c32-convex-bsd | 834 | then echo c32-convex-bsd |
@@ -777,139 +836,154 @@ EOF | |||
777 | fi | 836 | fi |
778 | exit ;; | 837 | exit ;; |
779 | C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) | 838 | C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) |
780 | echo c34-convex-bsd | 839 | GUESS=c34-convex-bsd |
781 | exit ;; | 840 | ;; |
782 | C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) | 841 | C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) |
783 | echo c38-convex-bsd | 842 | GUESS=c38-convex-bsd |
784 | exit ;; | 843 | ;; |
785 | C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) | 844 | C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) |
786 | echo c4-convex-bsd | 845 | GUESS=c4-convex-bsd |
787 | exit ;; | 846 | ;; |
788 | CRAY*Y-MP:*:*:*) | 847 | CRAY*Y-MP:*:*:*) |
789 | echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' | 848 | CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` |
790 | exit ;; | 849 | GUESS=ymp-cray-unicos$CRAY_REL |
850 | ;; | ||
791 | CRAY*[A-Z]90:*:*:*) | 851 | CRAY*[A-Z]90:*:*:*) |
792 | echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ | 852 | echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \ |
793 | | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ | 853 | | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ |
794 | -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ | 854 | -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ |
795 | -e 's/\.[^.]*$/.X/' | 855 | -e 's/\.[^.]*$/.X/' |
796 | exit ;; | 856 | exit ;; |
797 | CRAY*TS:*:*:*) | 857 | CRAY*TS:*:*:*) |
798 | echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' | 858 | CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` |
799 | exit ;; | 859 | GUESS=t90-cray-unicos$CRAY_REL |
860 | ;; | ||
800 | CRAY*T3E:*:*:*) | 861 | CRAY*T3E:*:*:*) |
801 | echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' | 862 | CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` |
802 | exit ;; | 863 | GUESS=alphaev5-cray-unicosmk$CRAY_REL |
864 | ;; | ||
803 | CRAY*SV1:*:*:*) | 865 | CRAY*SV1:*:*:*) |
804 | echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' | 866 | CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` |
805 | exit ;; | 867 | GUESS=sv1-cray-unicos$CRAY_REL |
868 | ;; | ||
806 | *:UNICOS/mp:*:*) | 869 | *:UNICOS/mp:*:*) |
807 | echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' | 870 | CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` |
808 | exit ;; | 871 | GUESS=craynv-cray-unicosmp$CRAY_REL |
872 | ;; | ||
809 | F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) | 873 | F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) |
810 | FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` | 874 | FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` |
811 | FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` | 875 | FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` |
812 | FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` | 876 | FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'` |
813 | echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" | 877 | GUESS=${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL} |
814 | exit ;; | 878 | ;; |
815 | 5000:UNIX_System_V:4.*:*) | 879 | 5000:UNIX_System_V:4.*:*) |
816 | FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` | 880 | FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` |
817 | FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` | 881 | FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` |
818 | echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" | 882 | GUESS=sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL} |
819 | exit ;; | 883 | ;; |
820 | i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) | 884 | i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) |
821 | echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} | 885 | GUESS=$UNAME_MACHINE-pc-bsdi$UNAME_RELEASE |
822 | exit ;; | 886 | ;; |
823 | sparc*:BSD/OS:*:*) | 887 | sparc*:BSD/OS:*:*) |
824 | echo sparc-unknown-bsdi${UNAME_RELEASE} | 888 | GUESS=sparc-unknown-bsdi$UNAME_RELEASE |
825 | exit ;; | 889 | ;; |
826 | *:BSD/OS:*:*) | 890 | *:BSD/OS:*:*) |
827 | echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} | 891 | GUESS=$UNAME_MACHINE-unknown-bsdi$UNAME_RELEASE |
828 | exit ;; | 892 | ;; |
893 | arm:FreeBSD:*:*) | ||
894 | UNAME_PROCESSOR=`uname -p` | ||
895 | set_cc_for_build | ||
896 | if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ | ||
897 | | grep -q __ARM_PCS_VFP | ||
898 | then | ||
899 | FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` | ||
900 | GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabi | ||
901 | else | ||
902 | FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` | ||
903 | GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabihf | ||
904 | fi | ||
905 | ;; | ||
829 | *:FreeBSD:*:*) | 906 | *:FreeBSD:*:*) |
830 | UNAME_PROCESSOR=`/usr/bin/uname -p` | 907 | UNAME_PROCESSOR=`/usr/bin/uname -p` |
831 | case ${UNAME_PROCESSOR} in | 908 | case $UNAME_PROCESSOR in |
832 | amd64) | 909 | amd64) |
833 | echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; | 910 | UNAME_PROCESSOR=x86_64 ;; |
834 | *) | 911 | i386) |
835 | echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; | 912 | UNAME_PROCESSOR=i586 ;; |
836 | esac | 913 | esac |
837 | exit ;; | 914 | FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` |
915 | GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL | ||
916 | ;; | ||
838 | i*:CYGWIN*:*) | 917 | i*:CYGWIN*:*) |
839 | echo ${UNAME_MACHINE}-pc-cygwin | 918 | GUESS=$UNAME_MACHINE-pc-cygwin |
840 | exit ;; | 919 | ;; |
841 | *:MINGW64*:*) | 920 | *:MINGW64*:*) |
842 | echo ${UNAME_MACHINE}-pc-mingw64 | 921 | GUESS=$UNAME_MACHINE-pc-mingw64 |
843 | exit ;; | 922 | ;; |
844 | *:MINGW*:*) | 923 | *:MINGW*:*) |
845 | echo ${UNAME_MACHINE}-pc-mingw32 | 924 | GUESS=$UNAME_MACHINE-pc-mingw32 |
846 | exit ;; | 925 | ;; |
847 | *:MSYS*:*) | 926 | *:MSYS*:*) |
848 | echo ${UNAME_MACHINE}-pc-msys | 927 | GUESS=$UNAME_MACHINE-pc-msys |
849 | exit ;; | 928 | ;; |
850 | i*:windows32*:*) | ||
851 | # uname -m includes "-pc" on this system. | ||
852 | echo ${UNAME_MACHINE}-mingw32 | ||
853 | exit ;; | ||
854 | i*:PW*:*) | 929 | i*:PW*:*) |
855 | echo ${UNAME_MACHINE}-pc-pw32 | 930 | GUESS=$UNAME_MACHINE-pc-pw32 |
856 | exit ;; | 931 | ;; |
932 | *:SerenityOS:*:*) | ||
933 | GUESS=$UNAME_MACHINE-pc-serenity | ||
934 | ;; | ||
857 | *:Interix*:*) | 935 | *:Interix*:*) |
858 | case ${UNAME_MACHINE} in | 936 | case $UNAME_MACHINE in |
859 | x86) | 937 | x86) |
860 | echo i586-pc-interix${UNAME_RELEASE} | 938 | GUESS=i586-pc-interix$UNAME_RELEASE |
861 | exit ;; | 939 | ;; |
862 | authenticamd | genuineintel | EM64T) | 940 | authenticamd | genuineintel | EM64T) |
863 | echo x86_64-unknown-interix${UNAME_RELEASE} | 941 | GUESS=x86_64-unknown-interix$UNAME_RELEASE |
864 | exit ;; | 942 | ;; |
865 | IA64) | 943 | IA64) |
866 | echo ia64-unknown-interix${UNAME_RELEASE} | 944 | GUESS=ia64-unknown-interix$UNAME_RELEASE |
867 | exit ;; | 945 | ;; |
868 | esac ;; | 946 | esac ;; |
869 | [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) | ||
870 | echo i${UNAME_MACHINE}-pc-mks | ||
871 | exit ;; | ||
872 | 8664:Windows_NT:*) | ||
873 | echo x86_64-pc-mks | ||
874 | exit ;; | ||
875 | i*:Windows_NT*:* | Pentium*:Windows_NT*:*) | ||
876 | # How do we know it's Interix rather than the generic POSIX subsystem? | ||
877 | # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we | ||
878 | # UNAME_MACHINE based on the output of uname instead of i386? | ||
879 | echo i586-pc-interix | ||
880 | exit ;; | ||
881 | i*:UWIN*:*) | 947 | i*:UWIN*:*) |
882 | echo ${UNAME_MACHINE}-pc-uwin | 948 | GUESS=$UNAME_MACHINE-pc-uwin |
883 | exit ;; | 949 | ;; |
884 | amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) | 950 | amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) |
885 | echo x86_64-unknown-cygwin | 951 | GUESS=x86_64-pc-cygwin |
886 | exit ;; | 952 | ;; |
887 | p*:CYGWIN*:*) | ||
888 | echo powerpcle-unknown-cygwin | ||
889 | exit ;; | ||
890 | prep*:SunOS:5.*:*) | 953 | prep*:SunOS:5.*:*) |
891 | echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | 954 | SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` |
892 | exit ;; | 955 | GUESS=powerpcle-unknown-solaris2$SUN_REL |
956 | ;; | ||
893 | *:GNU:*:*) | 957 | *:GNU:*:*) |
894 | # the GNU system | 958 | # the GNU system |
895 | echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` | 959 | GNU_ARCH=`echo "$UNAME_MACHINE" | sed -e 's,[-/].*$,,'` |
896 | exit ;; | 960 | GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's,/.*$,,'` |
961 | GUESS=$GNU_ARCH-unknown-$LIBC$GNU_REL | ||
962 | ;; | ||
897 | *:GNU/*:*:*) | 963 | *:GNU/*:*:*) |
898 | # other systems with GNU libc and userland | 964 | # other systems with GNU libc and userland |
899 | echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC} | 965 | GNU_SYS=`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"` |
900 | exit ;; | 966 | GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` |
901 | i*86:Minix:*:*) | 967 | GUESS=$UNAME_MACHINE-unknown-$GNU_SYS$GNU_REL-$LIBC |
902 | echo ${UNAME_MACHINE}-pc-minix | 968 | ;; |
903 | exit ;; | 969 | x86_64:[Mm]anagarm:*:*|i?86:[Mm]anagarm:*:*) |
970 | GUESS="$UNAME_MACHINE-pc-managarm-mlibc" | ||
971 | ;; | ||
972 | *:[Mm]anagarm:*:*) | ||
973 | GUESS="$UNAME_MACHINE-unknown-managarm-mlibc" | ||
974 | ;; | ||
975 | *:Minix:*:*) | ||
976 | GUESS=$UNAME_MACHINE-unknown-minix | ||
977 | ;; | ||
904 | aarch64:Linux:*:*) | 978 | aarch64:Linux:*:*) |
905 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 979 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
906 | exit ;; | 980 | ;; |
907 | aarch64_be:Linux:*:*) | 981 | aarch64_be:Linux:*:*) |
908 | UNAME_MACHINE=aarch64_be | 982 | UNAME_MACHINE=aarch64_be |
909 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 983 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
910 | exit ;; | 984 | ;; |
911 | alpha:Linux:*:*) | 985 | alpha:Linux:*:*) |
912 | case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in | 986 | case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null` in |
913 | EV5) UNAME_MACHINE=alphaev5 ;; | 987 | EV5) UNAME_MACHINE=alphaev5 ;; |
914 | EV56) UNAME_MACHINE=alphaev56 ;; | 988 | EV56) UNAME_MACHINE=alphaev56 ;; |
915 | PCA56) UNAME_MACHINE=alphapca56 ;; | 989 | PCA56) UNAME_MACHINE=alphapca56 ;; |
@@ -919,178 +993,237 @@ EOF | |||
919 | EV68*) UNAME_MACHINE=alphaev68 ;; | 993 | EV68*) UNAME_MACHINE=alphaev68 ;; |
920 | esac | 994 | esac |
921 | objdump --private-headers /bin/sh | grep -q ld.so.1 | 995 | objdump --private-headers /bin/sh | grep -q ld.so.1 |
922 | if test "$?" = 0 ; then LIBC="gnulibc1" ; fi | 996 | if test "$?" = 0 ; then LIBC=gnulibc1 ; fi |
923 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 997 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
924 | exit ;; | 998 | ;; |
925 | arc:Linux:*:* | arceb:Linux:*:*) | 999 | arc:Linux:*:* | arceb:Linux:*:* | arc32:Linux:*:* | arc64:Linux:*:*) |
926 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 1000 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
927 | exit ;; | 1001 | ;; |
928 | arm*:Linux:*:*) | 1002 | arm*:Linux:*:*) |
929 | eval $set_cc_for_build | 1003 | set_cc_for_build |
930 | if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ | 1004 | if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ |
931 | | grep -q __ARM_EABI__ | 1005 | | grep -q __ARM_EABI__ |
932 | then | 1006 | then |
933 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 1007 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
934 | else | 1008 | else |
935 | if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ | 1009 | if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ |
936 | | grep -q __ARM_PCS_VFP | 1010 | | grep -q __ARM_PCS_VFP |
937 | then | 1011 | then |
938 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi | 1012 | GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabi |
939 | else | 1013 | else |
940 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf | 1014 | GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabihf |
941 | fi | 1015 | fi |
942 | fi | 1016 | fi |
943 | exit ;; | 1017 | ;; |
944 | avr32*:Linux:*:*) | 1018 | avr32*:Linux:*:*) |
945 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 1019 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
946 | exit ;; | 1020 | ;; |
947 | cris:Linux:*:*) | 1021 | cris:Linux:*:*) |
948 | echo ${UNAME_MACHINE}-axis-linux-${LIBC} | 1022 | GUESS=$UNAME_MACHINE-axis-linux-$LIBC |
949 | exit ;; | 1023 | ;; |
950 | crisv32:Linux:*:*) | 1024 | crisv32:Linux:*:*) |
951 | echo ${UNAME_MACHINE}-axis-linux-${LIBC} | 1025 | GUESS=$UNAME_MACHINE-axis-linux-$LIBC |
952 | exit ;; | 1026 | ;; |
953 | e2k:Linux:*:*) | 1027 | e2k:Linux:*:*) |
954 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 1028 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
955 | exit ;; | 1029 | ;; |
956 | frv:Linux:*:*) | 1030 | frv:Linux:*:*) |
957 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 1031 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
958 | exit ;; | 1032 | ;; |
959 | hexagon:Linux:*:*) | 1033 | hexagon:Linux:*:*) |
960 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 1034 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
961 | exit ;; | 1035 | ;; |
962 | i*86:Linux:*:*) | 1036 | i*86:Linux:*:*) |
963 | echo ${UNAME_MACHINE}-pc-linux-${LIBC} | 1037 | GUESS=$UNAME_MACHINE-pc-linux-$LIBC |
964 | exit ;; | 1038 | ;; |
965 | ia64:Linux:*:*) | 1039 | ia64:Linux:*:*) |
966 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 1040 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
967 | exit ;; | 1041 | ;; |
968 | k1om:Linux:*:*) | 1042 | k1om:Linux:*:*) |
969 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 1043 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
970 | exit ;; | 1044 | ;; |
1045 | loongarch32:Linux:*:* | loongarch64:Linux:*:*) | ||
1046 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC | ||
1047 | ;; | ||
971 | m32r*:Linux:*:*) | 1048 | m32r*:Linux:*:*) |
972 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 1049 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
973 | exit ;; | 1050 | ;; |
974 | m68*:Linux:*:*) | 1051 | m68*:Linux:*:*) |
975 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 1052 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
976 | exit ;; | 1053 | ;; |
977 | mips:Linux:*:* | mips64:Linux:*:*) | 1054 | mips:Linux:*:* | mips64:Linux:*:*) |
978 | eval $set_cc_for_build | 1055 | set_cc_for_build |
979 | sed 's/^ //' << EOF >$dummy.c | 1056 | IS_GLIBC=0 |
1057 | test x"${LIBC}" = xgnu && IS_GLIBC=1 | ||
1058 | sed 's/^ //' << EOF > "$dummy.c" | ||
980 | #undef CPU | 1059 | #undef CPU |
981 | #undef ${UNAME_MACHINE} | 1060 | #undef mips |
982 | #undef ${UNAME_MACHINE}el | 1061 | #undef mipsel |
1062 | #undef mips64 | ||
1063 | #undef mips64el | ||
1064 | #if ${IS_GLIBC} && defined(_ABI64) | ||
1065 | LIBCABI=gnuabi64 | ||
1066 | #else | ||
1067 | #if ${IS_GLIBC} && defined(_ABIN32) | ||
1068 | LIBCABI=gnuabin32 | ||
1069 | #else | ||
1070 | LIBCABI=${LIBC} | ||
1071 | #endif | ||
1072 | #endif | ||
1073 | |||
1074 | #if ${IS_GLIBC} && defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6 | ||
1075 | CPU=mipsisa64r6 | ||
1076 | #else | ||
1077 | #if ${IS_GLIBC} && !defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6 | ||
1078 | CPU=mipsisa32r6 | ||
1079 | #else | ||
1080 | #if defined(__mips64) | ||
1081 | CPU=mips64 | ||
1082 | #else | ||
1083 | CPU=mips | ||
1084 | #endif | ||
1085 | #endif | ||
1086 | #endif | ||
1087 | |||
983 | #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) | 1088 | #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) |
984 | CPU=${UNAME_MACHINE}el | 1089 | MIPS_ENDIAN=el |
985 | #else | 1090 | #else |
986 | #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) | 1091 | #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) |
987 | CPU=${UNAME_MACHINE} | 1092 | MIPS_ENDIAN= |
988 | #else | 1093 | #else |
989 | CPU= | 1094 | MIPS_ENDIAN= |
990 | #endif | 1095 | #endif |
991 | #endif | 1096 | #endif |
992 | EOF | 1097 | EOF |
993 | eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` | 1098 | cc_set_vars=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'` |
994 | test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } | 1099 | eval "$cc_set_vars" |
1100 | test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; } | ||
1101 | ;; | ||
1102 | mips64el:Linux:*:*) | ||
1103 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC | ||
995 | ;; | 1104 | ;; |
996 | openrisc*:Linux:*:*) | 1105 | openrisc*:Linux:*:*) |
997 | echo or1k-unknown-linux-${LIBC} | 1106 | GUESS=or1k-unknown-linux-$LIBC |
998 | exit ;; | 1107 | ;; |
999 | or32:Linux:*:* | or1k*:Linux:*:*) | 1108 | or32:Linux:*:* | or1k*:Linux:*:*) |
1000 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 1109 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1001 | exit ;; | 1110 | ;; |
1002 | padre:Linux:*:*) | 1111 | padre:Linux:*:*) |
1003 | echo sparc-unknown-linux-${LIBC} | 1112 | GUESS=sparc-unknown-linux-$LIBC |
1004 | exit ;; | 1113 | ;; |
1005 | parisc64:Linux:*:* | hppa64:Linux:*:*) | 1114 | parisc64:Linux:*:* | hppa64:Linux:*:*) |
1006 | echo hppa64-unknown-linux-${LIBC} | 1115 | GUESS=hppa64-unknown-linux-$LIBC |
1007 | exit ;; | 1116 | ;; |
1008 | parisc:Linux:*:* | hppa:Linux:*:*) | 1117 | parisc:Linux:*:* | hppa:Linux:*:*) |
1009 | # Look for CPU level | 1118 | # Look for CPU level |
1010 | case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in | 1119 | case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in |
1011 | PA7*) echo hppa1.1-unknown-linux-${LIBC} ;; | 1120 | PA7*) GUESS=hppa1.1-unknown-linux-$LIBC ;; |
1012 | PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; | 1121 | PA8*) GUESS=hppa2.0-unknown-linux-$LIBC ;; |
1013 | *) echo hppa-unknown-linux-${LIBC} ;; | 1122 | *) GUESS=hppa-unknown-linux-$LIBC ;; |
1014 | esac | 1123 | esac |
1015 | exit ;; | 1124 | ;; |
1016 | ppc64:Linux:*:*) | 1125 | ppc64:Linux:*:*) |
1017 | echo powerpc64-unknown-linux-${LIBC} | 1126 | GUESS=powerpc64-unknown-linux-$LIBC |
1018 | exit ;; | 1127 | ;; |
1019 | ppc:Linux:*:*) | 1128 | ppc:Linux:*:*) |
1020 | echo powerpc-unknown-linux-${LIBC} | 1129 | GUESS=powerpc-unknown-linux-$LIBC |
1021 | exit ;; | 1130 | ;; |
1022 | ppc64le:Linux:*:*) | 1131 | ppc64le:Linux:*:*) |
1023 | echo powerpc64le-unknown-linux-${LIBC} | 1132 | GUESS=powerpc64le-unknown-linux-$LIBC |
1024 | exit ;; | 1133 | ;; |
1025 | ppcle:Linux:*:*) | 1134 | ppcle:Linux:*:*) |
1026 | echo powerpcle-unknown-linux-${LIBC} | 1135 | GUESS=powerpcle-unknown-linux-$LIBC |
1027 | exit ;; | 1136 | ;; |
1137 | riscv32:Linux:*:* | riscv32be:Linux:*:* | riscv64:Linux:*:* | riscv64be:Linux:*:*) | ||
1138 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC | ||
1139 | ;; | ||
1028 | s390:Linux:*:* | s390x:Linux:*:*) | 1140 | s390:Linux:*:* | s390x:Linux:*:*) |
1029 | echo ${UNAME_MACHINE}-ibm-linux-${LIBC} | 1141 | GUESS=$UNAME_MACHINE-ibm-linux-$LIBC |
1030 | exit ;; | 1142 | ;; |
1031 | sh64*:Linux:*:*) | 1143 | sh64*:Linux:*:*) |
1032 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 1144 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1033 | exit ;; | 1145 | ;; |
1034 | sh*:Linux:*:*) | 1146 | sh*:Linux:*:*) |
1035 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 1147 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1036 | exit ;; | 1148 | ;; |
1037 | sparc:Linux:*:* | sparc64:Linux:*:*) | 1149 | sparc:Linux:*:* | sparc64:Linux:*:*) |
1038 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 1150 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1039 | exit ;; | 1151 | ;; |
1040 | tile*:Linux:*:*) | 1152 | tile*:Linux:*:*) |
1041 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 1153 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1042 | exit ;; | 1154 | ;; |
1043 | vax:Linux:*:*) | 1155 | vax:Linux:*:*) |
1044 | echo ${UNAME_MACHINE}-dec-linux-${LIBC} | 1156 | GUESS=$UNAME_MACHINE-dec-linux-$LIBC |
1045 | exit ;; | 1157 | ;; |
1046 | x86_64:Linux:*:*) | 1158 | x86_64:Linux:*:*) |
1047 | echo ${UNAME_MACHINE}-pc-linux-${LIBC} | 1159 | set_cc_for_build |
1048 | exit ;; | 1160 | CPU=$UNAME_MACHINE |
1161 | LIBCABI=$LIBC | ||
1162 | if test "$CC_FOR_BUILD" != no_compiler_found; then | ||
1163 | ABI=64 | ||
1164 | sed 's/^ //' << EOF > "$dummy.c" | ||
1165 | #ifdef __i386__ | ||
1166 | ABI=x86 | ||
1167 | #else | ||
1168 | #ifdef __ILP32__ | ||
1169 | ABI=x32 | ||
1170 | #endif | ||
1171 | #endif | ||
1172 | EOF | ||
1173 | cc_set_abi=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^ABI' | sed 's, ,,g'` | ||
1174 | eval "$cc_set_abi" | ||
1175 | case $ABI in | ||
1176 | x86) CPU=i686 ;; | ||
1177 | x32) LIBCABI=${LIBC}x32 ;; | ||
1178 | esac | ||
1179 | fi | ||
1180 | GUESS=$CPU-pc-linux-$LIBCABI | ||
1181 | ;; | ||
1049 | xtensa*:Linux:*:*) | 1182 | xtensa*:Linux:*:*) |
1050 | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} | 1183 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1051 | exit ;; | 1184 | ;; |
1052 | i*86:DYNIX/ptx:4*:*) | 1185 | i*86:DYNIX/ptx:4*:*) |
1053 | # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. | 1186 | # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. |
1054 | # earlier versions are messed up and put the nodename in both | 1187 | # earlier versions are messed up and put the nodename in both |
1055 | # sysname and nodename. | 1188 | # sysname and nodename. |
1056 | echo i386-sequent-sysv4 | 1189 | GUESS=i386-sequent-sysv4 |
1057 | exit ;; | 1190 | ;; |
1058 | i*86:UNIX_SV:4.2MP:2.*) | 1191 | i*86:UNIX_SV:4.2MP:2.*) |
1059 | # Unixware is an offshoot of SVR4, but it has its own version | 1192 | # Unixware is an offshoot of SVR4, but it has its own version |
1060 | # number series starting with 2... | 1193 | # number series starting with 2... |
1061 | # I am not positive that other SVR4 systems won't match this, | 1194 | # I am not positive that other SVR4 systems won't match this, |
1062 | # I just have to hope. -- rms. | 1195 | # I just have to hope. -- rms. |
1063 | # Use sysv4.2uw... so that sysv4* matches it. | 1196 | # Use sysv4.2uw... so that sysv4* matches it. |
1064 | echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} | 1197 | GUESS=$UNAME_MACHINE-pc-sysv4.2uw$UNAME_VERSION |
1065 | exit ;; | 1198 | ;; |
1066 | i*86:OS/2:*:*) | 1199 | i*86:OS/2:*:*) |
1067 | # If we were able to find `uname', then EMX Unix compatibility | 1200 | # If we were able to find `uname', then EMX Unix compatibility |
1068 | # is probably installed. | 1201 | # is probably installed. |
1069 | echo ${UNAME_MACHINE}-pc-os2-emx | 1202 | GUESS=$UNAME_MACHINE-pc-os2-emx |
1070 | exit ;; | 1203 | ;; |
1071 | i*86:XTS-300:*:STOP) | 1204 | i*86:XTS-300:*:STOP) |
1072 | echo ${UNAME_MACHINE}-unknown-stop | 1205 | GUESS=$UNAME_MACHINE-unknown-stop |
1073 | exit ;; | 1206 | ;; |
1074 | i*86:atheos:*:*) | 1207 | i*86:atheos:*:*) |
1075 | echo ${UNAME_MACHINE}-unknown-atheos | 1208 | GUESS=$UNAME_MACHINE-unknown-atheos |
1076 | exit ;; | 1209 | ;; |
1077 | i*86:syllable:*:*) | 1210 | i*86:syllable:*:*) |
1078 | echo ${UNAME_MACHINE}-pc-syllable | 1211 | GUESS=$UNAME_MACHINE-pc-syllable |
1079 | exit ;; | 1212 | ;; |
1080 | i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) | 1213 | i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) |
1081 | echo i386-unknown-lynxos${UNAME_RELEASE} | 1214 | GUESS=i386-unknown-lynxos$UNAME_RELEASE |
1082 | exit ;; | 1215 | ;; |
1083 | i*86:*DOS:*:*) | 1216 | i*86:*DOS:*:*) |
1084 | echo ${UNAME_MACHINE}-pc-msdosdjgpp | 1217 | GUESS=$UNAME_MACHINE-pc-msdosdjgpp |
1085 | exit ;; | 1218 | ;; |
1086 | i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) | 1219 | i*86:*:4.*:*) |
1087 | UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` | 1220 | UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'` |
1088 | if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then | 1221 | if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then |
1089 | echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} | 1222 | GUESS=$UNAME_MACHINE-univel-sysv$UNAME_REL |
1090 | else | 1223 | else |
1091 | echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} | 1224 | GUESS=$UNAME_MACHINE-pc-sysv$UNAME_REL |
1092 | fi | 1225 | fi |
1093 | exit ;; | 1226 | ;; |
1094 | i*86:*:5:[678]*) | 1227 | i*86:*:5:[678]*) |
1095 | # UnixWare 7.x, OpenUNIX and OpenServer 6. | 1228 | # UnixWare 7.x, OpenUNIX and OpenServer 6. |
1096 | case `/bin/uname -X | grep "^Machine"` in | 1229 | case `/bin/uname -X | grep "^Machine"` in |
@@ -1098,12 +1231,12 @@ EOF | |||
1098 | *Pentium) UNAME_MACHINE=i586 ;; | 1231 | *Pentium) UNAME_MACHINE=i586 ;; |
1099 | *Pent*|*Celeron) UNAME_MACHINE=i686 ;; | 1232 | *Pent*|*Celeron) UNAME_MACHINE=i686 ;; |
1100 | esac | 1233 | esac |
1101 | echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} | 1234 | GUESS=$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} |
1102 | exit ;; | 1235 | ;; |
1103 | i*86:*:3.2:*) | 1236 | i*86:*:3.2:*) |
1104 | if test -f /usr/options/cb.name; then | 1237 | if test -f /usr/options/cb.name; then |
1105 | UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` | 1238 | UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` |
1106 | echo ${UNAME_MACHINE}-pc-isc$UNAME_REL | 1239 | GUESS=$UNAME_MACHINE-pc-isc$UNAME_REL |
1107 | elif /bin/uname -X 2>/dev/null >/dev/null ; then | 1240 | elif /bin/uname -X 2>/dev/null >/dev/null ; then |
1108 | UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` | 1241 | UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` |
1109 | (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 | 1242 | (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 |
@@ -1113,11 +1246,11 @@ EOF | |||
1113 | && UNAME_MACHINE=i686 | 1246 | && UNAME_MACHINE=i686 |
1114 | (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ | 1247 | (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ |
1115 | && UNAME_MACHINE=i686 | 1248 | && UNAME_MACHINE=i686 |
1116 | echo ${UNAME_MACHINE}-pc-sco$UNAME_REL | 1249 | GUESS=$UNAME_MACHINE-pc-sco$UNAME_REL |
1117 | else | 1250 | else |
1118 | echo ${UNAME_MACHINE}-pc-sysv32 | 1251 | GUESS=$UNAME_MACHINE-pc-sysv32 |
1119 | fi | 1252 | fi |
1120 | exit ;; | 1253 | ;; |
1121 | pc:*:*:*) | 1254 | pc:*:*:*) |
1122 | # Left here for compatibility: | 1255 | # Left here for compatibility: |
1123 | # uname -m prints for DJGPP always 'pc', but it prints nothing about | 1256 | # uname -m prints for DJGPP always 'pc', but it prints nothing about |
@@ -1125,31 +1258,31 @@ EOF | |||
1125 | # Note: whatever this is, it MUST be the same as what config.sub | 1258 | # Note: whatever this is, it MUST be the same as what config.sub |
1126 | # prints for the "djgpp" host, or else GDB configure will decide that | 1259 | # prints for the "djgpp" host, or else GDB configure will decide that |
1127 | # this is a cross-build. | 1260 | # this is a cross-build. |
1128 | echo i586-pc-msdosdjgpp | 1261 | GUESS=i586-pc-msdosdjgpp |
1129 | exit ;; | 1262 | ;; |
1130 | Intel:Mach:3*:*) | 1263 | Intel:Mach:3*:*) |
1131 | echo i386-pc-mach3 | 1264 | GUESS=i386-pc-mach3 |
1132 | exit ;; | 1265 | ;; |
1133 | paragon:*:*:*) | 1266 | paragon:*:*:*) |
1134 | echo i860-intel-osf1 | 1267 | GUESS=i860-intel-osf1 |
1135 | exit ;; | 1268 | ;; |
1136 | i860:*:4.*:*) # i860-SVR4 | 1269 | i860:*:4.*:*) # i860-SVR4 |
1137 | if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then | 1270 | if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then |
1138 | echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 | 1271 | GUESS=i860-stardent-sysv$UNAME_RELEASE # Stardent Vistra i860-SVR4 |
1139 | else # Add other i860-SVR4 vendors below as they are discovered. | 1272 | else # Add other i860-SVR4 vendors below as they are discovered. |
1140 | echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 | 1273 | GUESS=i860-unknown-sysv$UNAME_RELEASE # Unknown i860-SVR4 |
1141 | fi | 1274 | fi |
1142 | exit ;; | 1275 | ;; |
1143 | mini*:CTIX:SYS*5:*) | 1276 | mini*:CTIX:SYS*5:*) |
1144 | # "miniframe" | 1277 | # "miniframe" |
1145 | echo m68010-convergent-sysv | 1278 | GUESS=m68010-convergent-sysv |
1146 | exit ;; | 1279 | ;; |
1147 | mc68k:UNIX:SYSTEM5:3.51m) | 1280 | mc68k:UNIX:SYSTEM5:3.51m) |
1148 | echo m68k-convergent-sysv | 1281 | GUESS=m68k-convergent-sysv |
1149 | exit ;; | 1282 | ;; |
1150 | M680?0:D-NIX:5.3:*) | 1283 | M680?0:D-NIX:5.3:*) |
1151 | echo m68k-diab-dnix | 1284 | GUESS=m68k-diab-dnix |
1152 | exit ;; | 1285 | ;; |
1153 | M68*:*:R3V[5678]*:*) | 1286 | M68*:*:R3V[5678]*:*) |
1154 | test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; | 1287 | test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; |
1155 | 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) | 1288 | 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) |
@@ -1157,9 +1290,9 @@ EOF | |||
1157 | test -r /etc/.relid \ | 1290 | test -r /etc/.relid \ |
1158 | && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` | 1291 | && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` |
1159 | /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ | 1292 | /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ |
1160 | && { echo i486-ncr-sysv4.3${OS_REL}; exit; } | 1293 | && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } |
1161 | /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ | 1294 | /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ |
1162 | && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; | 1295 | && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; |
1163 | 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) | 1296 | 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) |
1164 | /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ | 1297 | /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ |
1165 | && { echo i486-ncr-sysv4; exit; } ;; | 1298 | && { echo i486-ncr-sysv4; exit; } ;; |
@@ -1168,251 +1301,444 @@ EOF | |||
1168 | test -r /etc/.relid \ | 1301 | test -r /etc/.relid \ |
1169 | && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` | 1302 | && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` |
1170 | /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ | 1303 | /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ |
1171 | && { echo i486-ncr-sysv4.3${OS_REL}; exit; } | 1304 | && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } |
1172 | /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ | 1305 | /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ |
1173 | && { echo i586-ncr-sysv4.3${OS_REL}; exit; } | 1306 | && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } |
1174 | /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ | 1307 | /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ |
1175 | && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; | 1308 | && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; |
1176 | m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) | 1309 | m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) |
1177 | echo m68k-unknown-lynxos${UNAME_RELEASE} | 1310 | GUESS=m68k-unknown-lynxos$UNAME_RELEASE |
1178 | exit ;; | 1311 | ;; |
1179 | mc68030:UNIX_System_V:4.*:*) | 1312 | mc68030:UNIX_System_V:4.*:*) |
1180 | echo m68k-atari-sysv4 | 1313 | GUESS=m68k-atari-sysv4 |
1181 | exit ;; | 1314 | ;; |
1182 | TSUNAMI:LynxOS:2.*:*) | 1315 | TSUNAMI:LynxOS:2.*:*) |
1183 | echo sparc-unknown-lynxos${UNAME_RELEASE} | 1316 | GUESS=sparc-unknown-lynxos$UNAME_RELEASE |
1184 | exit ;; | 1317 | ;; |
1185 | rs6000:LynxOS:2.*:*) | 1318 | rs6000:LynxOS:2.*:*) |
1186 | echo rs6000-unknown-lynxos${UNAME_RELEASE} | 1319 | GUESS=rs6000-unknown-lynxos$UNAME_RELEASE |
1187 | exit ;; | 1320 | ;; |
1188 | PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) | 1321 | PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) |
1189 | echo powerpc-unknown-lynxos${UNAME_RELEASE} | 1322 | GUESS=powerpc-unknown-lynxos$UNAME_RELEASE |
1190 | exit ;; | 1323 | ;; |
1191 | SM[BE]S:UNIX_SV:*:*) | 1324 | SM[BE]S:UNIX_SV:*:*) |
1192 | echo mips-dde-sysv${UNAME_RELEASE} | 1325 | GUESS=mips-dde-sysv$UNAME_RELEASE |
1193 | exit ;; | 1326 | ;; |
1194 | RM*:ReliantUNIX-*:*:*) | 1327 | RM*:ReliantUNIX-*:*:*) |
1195 | echo mips-sni-sysv4 | 1328 | GUESS=mips-sni-sysv4 |
1196 | exit ;; | 1329 | ;; |
1197 | RM*:SINIX-*:*:*) | 1330 | RM*:SINIX-*:*:*) |
1198 | echo mips-sni-sysv4 | 1331 | GUESS=mips-sni-sysv4 |
1199 | exit ;; | 1332 | ;; |
1200 | *:SINIX-*:*:*) | 1333 | *:SINIX-*:*:*) |
1201 | if uname -p 2>/dev/null >/dev/null ; then | 1334 | if uname -p 2>/dev/null >/dev/null ; then |
1202 | UNAME_MACHINE=`(uname -p) 2>/dev/null` | 1335 | UNAME_MACHINE=`(uname -p) 2>/dev/null` |
1203 | echo ${UNAME_MACHINE}-sni-sysv4 | 1336 | GUESS=$UNAME_MACHINE-sni-sysv4 |
1204 | else | 1337 | else |
1205 | echo ns32k-sni-sysv | 1338 | GUESS=ns32k-sni-sysv |
1206 | fi | 1339 | fi |
1207 | exit ;; | 1340 | ;; |
1208 | PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort | 1341 | PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort |
1209 | # says <Richard.M.Bartel@ccMail.Census.GOV> | 1342 | # says <Richard.M.Bartel@ccMail.Census.GOV> |
1210 | echo i586-unisys-sysv4 | 1343 | GUESS=i586-unisys-sysv4 |
1211 | exit ;; | 1344 | ;; |
1212 | *:UNIX_System_V:4*:FTX*) | 1345 | *:UNIX_System_V:4*:FTX*) |
1213 | # From Gerald Hewes <hewes@openmarket.com>. | 1346 | # From Gerald Hewes <hewes@openmarket.com>. |
1214 | # How about differentiating between stratus architectures? -djm | 1347 | # How about differentiating between stratus architectures? -djm |
1215 | echo hppa1.1-stratus-sysv4 | 1348 | GUESS=hppa1.1-stratus-sysv4 |
1216 | exit ;; | 1349 | ;; |
1217 | *:*:*:FTX*) | 1350 | *:*:*:FTX*) |
1218 | # From seanf@swdc.stratus.com. | 1351 | # From seanf@swdc.stratus.com. |
1219 | echo i860-stratus-sysv4 | 1352 | GUESS=i860-stratus-sysv4 |
1220 | exit ;; | 1353 | ;; |
1221 | i*86:VOS:*:*) | 1354 | i*86:VOS:*:*) |
1222 | # From Paul.Green@stratus.com. | 1355 | # From Paul.Green@stratus.com. |
1223 | echo ${UNAME_MACHINE}-stratus-vos | 1356 | GUESS=$UNAME_MACHINE-stratus-vos |
1224 | exit ;; | 1357 | ;; |
1225 | *:VOS:*:*) | 1358 | *:VOS:*:*) |
1226 | # From Paul.Green@stratus.com. | 1359 | # From Paul.Green@stratus.com. |
1227 | echo hppa1.1-stratus-vos | 1360 | GUESS=hppa1.1-stratus-vos |
1228 | exit ;; | 1361 | ;; |
1229 | mc68*:A/UX:*:*) | 1362 | mc68*:A/UX:*:*) |
1230 | echo m68k-apple-aux${UNAME_RELEASE} | 1363 | GUESS=m68k-apple-aux$UNAME_RELEASE |
1231 | exit ;; | 1364 | ;; |
1232 | news*:NEWS-OS:6*:*) | 1365 | news*:NEWS-OS:6*:*) |
1233 | echo mips-sony-newsos6 | 1366 | GUESS=mips-sony-newsos6 |
1234 | exit ;; | 1367 | ;; |
1235 | R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) | 1368 | R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) |
1236 | if [ -d /usr/nec ]; then | 1369 | if test -d /usr/nec; then |
1237 | echo mips-nec-sysv${UNAME_RELEASE} | 1370 | GUESS=mips-nec-sysv$UNAME_RELEASE |
1238 | else | 1371 | else |
1239 | echo mips-unknown-sysv${UNAME_RELEASE} | 1372 | GUESS=mips-unknown-sysv$UNAME_RELEASE |
1240 | fi | 1373 | fi |
1241 | exit ;; | 1374 | ;; |
1242 | BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. | 1375 | BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. |
1243 | echo powerpc-be-beos | 1376 | GUESS=powerpc-be-beos |
1244 | exit ;; | 1377 | ;; |
1245 | BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. | 1378 | BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. |
1246 | echo powerpc-apple-beos | 1379 | GUESS=powerpc-apple-beos |
1247 | exit ;; | 1380 | ;; |
1248 | BePC:BeOS:*:*) # BeOS running on Intel PC compatible. | 1381 | BePC:BeOS:*:*) # BeOS running on Intel PC compatible. |
1249 | echo i586-pc-beos | 1382 | GUESS=i586-pc-beos |
1250 | exit ;; | 1383 | ;; |
1251 | BePC:Haiku:*:*) # Haiku running on Intel PC compatible. | 1384 | BePC:Haiku:*:*) # Haiku running on Intel PC compatible. |
1252 | echo i586-pc-haiku | 1385 | GUESS=i586-pc-haiku |
1253 | exit ;; | 1386 | ;; |
1254 | x86_64:Haiku:*:*) | 1387 | ppc:Haiku:*:*) # Haiku running on Apple PowerPC |
1255 | echo x86_64-unknown-haiku | 1388 | GUESS=powerpc-apple-haiku |
1256 | exit ;; | 1389 | ;; |
1390 | *:Haiku:*:*) # Haiku modern gcc (not bound by BeOS compat) | ||
1391 | GUESS=$UNAME_MACHINE-unknown-haiku | ||
1392 | ;; | ||
1257 | SX-4:SUPER-UX:*:*) | 1393 | SX-4:SUPER-UX:*:*) |
1258 | echo sx4-nec-superux${UNAME_RELEASE} | 1394 | GUESS=sx4-nec-superux$UNAME_RELEASE |
1259 | exit ;; | 1395 | ;; |
1260 | SX-5:SUPER-UX:*:*) | 1396 | SX-5:SUPER-UX:*:*) |
1261 | echo sx5-nec-superux${UNAME_RELEASE} | 1397 | GUESS=sx5-nec-superux$UNAME_RELEASE |
1262 | exit ;; | 1398 | ;; |
1263 | SX-6:SUPER-UX:*:*) | 1399 | SX-6:SUPER-UX:*:*) |
1264 | echo sx6-nec-superux${UNAME_RELEASE} | 1400 | GUESS=sx6-nec-superux$UNAME_RELEASE |
1265 | exit ;; | 1401 | ;; |
1266 | SX-7:SUPER-UX:*:*) | 1402 | SX-7:SUPER-UX:*:*) |
1267 | echo sx7-nec-superux${UNAME_RELEASE} | 1403 | GUESS=sx7-nec-superux$UNAME_RELEASE |
1268 | exit ;; | 1404 | ;; |
1269 | SX-8:SUPER-UX:*:*) | 1405 | SX-8:SUPER-UX:*:*) |
1270 | echo sx8-nec-superux${UNAME_RELEASE} | 1406 | GUESS=sx8-nec-superux$UNAME_RELEASE |
1271 | exit ;; | 1407 | ;; |
1272 | SX-8R:SUPER-UX:*:*) | 1408 | SX-8R:SUPER-UX:*:*) |
1273 | echo sx8r-nec-superux${UNAME_RELEASE} | 1409 | GUESS=sx8r-nec-superux$UNAME_RELEASE |
1274 | exit ;; | 1410 | ;; |
1411 | SX-ACE:SUPER-UX:*:*) | ||
1412 | GUESS=sxace-nec-superux$UNAME_RELEASE | ||
1413 | ;; | ||
1275 | Power*:Rhapsody:*:*) | 1414 | Power*:Rhapsody:*:*) |
1276 | echo powerpc-apple-rhapsody${UNAME_RELEASE} | 1415 | GUESS=powerpc-apple-rhapsody$UNAME_RELEASE |
1277 | exit ;; | 1416 | ;; |
1278 | *:Rhapsody:*:*) | 1417 | *:Rhapsody:*:*) |
1279 | echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} | 1418 | GUESS=$UNAME_MACHINE-apple-rhapsody$UNAME_RELEASE |
1280 | exit ;; | 1419 | ;; |
1420 | arm64:Darwin:*:*) | ||
1421 | GUESS=aarch64-apple-darwin$UNAME_RELEASE | ||
1422 | ;; | ||
1281 | *:Darwin:*:*) | 1423 | *:Darwin:*:*) |
1282 | UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown | 1424 | UNAME_PROCESSOR=`uname -p` |
1283 | eval $set_cc_for_build | 1425 | case $UNAME_PROCESSOR in |
1284 | if test "$UNAME_PROCESSOR" = unknown ; then | 1426 | unknown) UNAME_PROCESSOR=powerpc ;; |
1285 | UNAME_PROCESSOR=powerpc | 1427 | esac |
1428 | if command -v xcode-select > /dev/null 2> /dev/null && \ | ||
1429 | ! xcode-select --print-path > /dev/null 2> /dev/null ; then | ||
1430 | # Avoid executing cc if there is no toolchain installed as | ||
1431 | # cc will be a stub that puts up a graphical alert | ||
1432 | # prompting the user to install developer tools. | ||
1433 | CC_FOR_BUILD=no_compiler_found | ||
1434 | else | ||
1435 | set_cc_for_build | ||
1286 | fi | 1436 | fi |
1287 | if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then | 1437 | if test "$CC_FOR_BUILD" != no_compiler_found; then |
1288 | if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then | 1438 | if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ |
1289 | if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ | 1439 | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ |
1290 | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ | 1440 | grep IS_64BIT_ARCH >/dev/null |
1291 | grep IS_64BIT_ARCH >/dev/null | 1441 | then |
1292 | then | 1442 | case $UNAME_PROCESSOR in |
1293 | case $UNAME_PROCESSOR in | 1443 | i386) UNAME_PROCESSOR=x86_64 ;; |
1294 | i386) UNAME_PROCESSOR=x86_64 ;; | 1444 | powerpc) UNAME_PROCESSOR=powerpc64 ;; |
1295 | powerpc) UNAME_PROCESSOR=powerpc64 ;; | 1445 | esac |
1296 | esac | 1446 | fi |
1297 | fi | 1447 | # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc |
1448 | if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \ | ||
1449 | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ | ||
1450 | grep IS_PPC >/dev/null | ||
1451 | then | ||
1452 | UNAME_PROCESSOR=powerpc | ||
1298 | fi | 1453 | fi |
1299 | elif test "$UNAME_PROCESSOR" = i386 ; then | 1454 | elif test "$UNAME_PROCESSOR" = i386 ; then |
1300 | # Avoid executing cc on OS X 10.9, as it ships with a stub | 1455 | # uname -m returns i386 or x86_64 |
1301 | # that puts up a graphical alert prompting to install | 1456 | UNAME_PROCESSOR=$UNAME_MACHINE |
1302 | # developer tools. Any system running Mac OS X 10.7 or | ||
1303 | # later (Darwin 11 and later) is required to have a 64-bit | ||
1304 | # processor. This is not true of the ARM version of Darwin | ||
1305 | # that Apple uses in portable devices. | ||
1306 | UNAME_PROCESSOR=x86_64 | ||
1307 | fi | 1457 | fi |
1308 | echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} | 1458 | GUESS=$UNAME_PROCESSOR-apple-darwin$UNAME_RELEASE |
1309 | exit ;; | 1459 | ;; |
1310 | *:procnto*:*:* | *:QNX:[0123456789]*:*) | 1460 | *:procnto*:*:* | *:QNX:[0123456789]*:*) |
1311 | UNAME_PROCESSOR=`uname -p` | 1461 | UNAME_PROCESSOR=`uname -p` |
1312 | if test "$UNAME_PROCESSOR" = "x86"; then | 1462 | if test "$UNAME_PROCESSOR" = x86; then |
1313 | UNAME_PROCESSOR=i386 | 1463 | UNAME_PROCESSOR=i386 |
1314 | UNAME_MACHINE=pc | 1464 | UNAME_MACHINE=pc |
1315 | fi | 1465 | fi |
1316 | echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} | 1466 | GUESS=$UNAME_PROCESSOR-$UNAME_MACHINE-nto-qnx$UNAME_RELEASE |
1317 | exit ;; | 1467 | ;; |
1318 | *:QNX:*:4*) | 1468 | *:QNX:*:4*) |
1319 | echo i386-pc-qnx | 1469 | GUESS=i386-pc-qnx |
1320 | exit ;; | 1470 | ;; |
1321 | NEO-?:NONSTOP_KERNEL:*:*) | 1471 | NEO-*:NONSTOP_KERNEL:*:*) |
1322 | echo neo-tandem-nsk${UNAME_RELEASE} | 1472 | GUESS=neo-tandem-nsk$UNAME_RELEASE |
1323 | exit ;; | 1473 | ;; |
1324 | NSE-*:NONSTOP_KERNEL:*:*) | 1474 | NSE-*:NONSTOP_KERNEL:*:*) |
1325 | echo nse-tandem-nsk${UNAME_RELEASE} | 1475 | GUESS=nse-tandem-nsk$UNAME_RELEASE |
1326 | exit ;; | 1476 | ;; |
1327 | NSR-?:NONSTOP_KERNEL:*:*) | 1477 | NSR-*:NONSTOP_KERNEL:*:*) |
1328 | echo nsr-tandem-nsk${UNAME_RELEASE} | 1478 | GUESS=nsr-tandem-nsk$UNAME_RELEASE |
1329 | exit ;; | 1479 | ;; |
1480 | NSV-*:NONSTOP_KERNEL:*:*) | ||
1481 | GUESS=nsv-tandem-nsk$UNAME_RELEASE | ||
1482 | ;; | ||
1483 | NSX-*:NONSTOP_KERNEL:*:*) | ||
1484 | GUESS=nsx-tandem-nsk$UNAME_RELEASE | ||
1485 | ;; | ||
1330 | *:NonStop-UX:*:*) | 1486 | *:NonStop-UX:*:*) |
1331 | echo mips-compaq-nonstopux | 1487 | GUESS=mips-compaq-nonstopux |
1332 | exit ;; | 1488 | ;; |
1333 | BS2000:POSIX*:*:*) | 1489 | BS2000:POSIX*:*:*) |
1334 | echo bs2000-siemens-sysv | 1490 | GUESS=bs2000-siemens-sysv |
1335 | exit ;; | 1491 | ;; |
1336 | DS/*:UNIX_System_V:*:*) | 1492 | DS/*:UNIX_System_V:*:*) |
1337 | echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} | 1493 | GUESS=$UNAME_MACHINE-$UNAME_SYSTEM-$UNAME_RELEASE |
1338 | exit ;; | 1494 | ;; |
1339 | *:Plan9:*:*) | 1495 | *:Plan9:*:*) |
1340 | # "uname -m" is not consistent, so use $cputype instead. 386 | 1496 | # "uname -m" is not consistent, so use $cputype instead. 386 |
1341 | # is converted to i386 for consistency with other x86 | 1497 | # is converted to i386 for consistency with other x86 |
1342 | # operating systems. | 1498 | # operating systems. |
1343 | if test "$cputype" = "386"; then | 1499 | if test "${cputype-}" = 386; then |
1344 | UNAME_MACHINE=i386 | 1500 | UNAME_MACHINE=i386 |
1345 | else | 1501 | elif test "x${cputype-}" != x; then |
1346 | UNAME_MACHINE="$cputype" | 1502 | UNAME_MACHINE=$cputype |
1347 | fi | 1503 | fi |
1348 | echo ${UNAME_MACHINE}-unknown-plan9 | 1504 | GUESS=$UNAME_MACHINE-unknown-plan9 |
1349 | exit ;; | 1505 | ;; |
1350 | *:TOPS-10:*:*) | 1506 | *:TOPS-10:*:*) |
1351 | echo pdp10-unknown-tops10 | 1507 | GUESS=pdp10-unknown-tops10 |
1352 | exit ;; | 1508 | ;; |
1353 | *:TENEX:*:*) | 1509 | *:TENEX:*:*) |
1354 | echo pdp10-unknown-tenex | 1510 | GUESS=pdp10-unknown-tenex |
1355 | exit ;; | 1511 | ;; |
1356 | KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) | 1512 | KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) |
1357 | echo pdp10-dec-tops20 | 1513 | GUESS=pdp10-dec-tops20 |
1358 | exit ;; | 1514 | ;; |
1359 | XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) | 1515 | XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) |
1360 | echo pdp10-xkl-tops20 | 1516 | GUESS=pdp10-xkl-tops20 |
1361 | exit ;; | 1517 | ;; |
1362 | *:TOPS-20:*:*) | 1518 | *:TOPS-20:*:*) |
1363 | echo pdp10-unknown-tops20 | 1519 | GUESS=pdp10-unknown-tops20 |
1364 | exit ;; | 1520 | ;; |
1365 | *:ITS:*:*) | 1521 | *:ITS:*:*) |
1366 | echo pdp10-unknown-its | 1522 | GUESS=pdp10-unknown-its |
1367 | exit ;; | 1523 | ;; |
1368 | SEI:*:*:SEIUX) | 1524 | SEI:*:*:SEIUX) |
1369 | echo mips-sei-seiux${UNAME_RELEASE} | 1525 | GUESS=mips-sei-seiux$UNAME_RELEASE |
1370 | exit ;; | 1526 | ;; |
1371 | *:DragonFly:*:*) | 1527 | *:DragonFly:*:*) |
1372 | echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` | 1528 | DRAGONFLY_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` |
1373 | exit ;; | 1529 | GUESS=$UNAME_MACHINE-unknown-dragonfly$DRAGONFLY_REL |
1530 | ;; | ||
1374 | *:*VMS:*:*) | 1531 | *:*VMS:*:*) |
1375 | UNAME_MACHINE=`(uname -p) 2>/dev/null` | 1532 | UNAME_MACHINE=`(uname -p) 2>/dev/null` |
1376 | case "${UNAME_MACHINE}" in | 1533 | case $UNAME_MACHINE in |
1377 | A*) echo alpha-dec-vms ; exit ;; | 1534 | A*) GUESS=alpha-dec-vms ;; |
1378 | I*) echo ia64-dec-vms ; exit ;; | 1535 | I*) GUESS=ia64-dec-vms ;; |
1379 | V*) echo vax-dec-vms ; exit ;; | 1536 | V*) GUESS=vax-dec-vms ;; |
1380 | esac ;; | 1537 | esac ;; |
1381 | *:XENIX:*:SysV) | 1538 | *:XENIX:*:SysV) |
1382 | echo i386-pc-xenix | 1539 | GUESS=i386-pc-xenix |
1383 | exit ;; | 1540 | ;; |
1384 | i*86:skyos:*:*) | 1541 | i*86:skyos:*:*) |
1385 | echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' | 1542 | SKYOS_REL=`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'` |
1386 | exit ;; | 1543 | GUESS=$UNAME_MACHINE-pc-skyos$SKYOS_REL |
1544 | ;; | ||
1387 | i*86:rdos:*:*) | 1545 | i*86:rdos:*:*) |
1388 | echo ${UNAME_MACHINE}-pc-rdos | 1546 | GUESS=$UNAME_MACHINE-pc-rdos |
1389 | exit ;; | 1547 | ;; |
1390 | i*86:AROS:*:*) | 1548 | i*86:Fiwix:*:*) |
1391 | echo ${UNAME_MACHINE}-pc-aros | 1549 | GUESS=$UNAME_MACHINE-pc-fiwix |
1392 | exit ;; | 1550 | ;; |
1551 | *:AROS:*:*) | ||
1552 | GUESS=$UNAME_MACHINE-unknown-aros | ||
1553 | ;; | ||
1393 | x86_64:VMkernel:*:*) | 1554 | x86_64:VMkernel:*:*) |
1394 | echo ${UNAME_MACHINE}-unknown-esx | 1555 | GUESS=$UNAME_MACHINE-unknown-esx |
1395 | exit ;; | 1556 | ;; |
1396 | amd64:Isilon\ OneFS:*:*) | 1557 | amd64:Isilon\ OneFS:*:*) |
1397 | echo x86_64-unknown-onefs | 1558 | GUESS=x86_64-unknown-onefs |
1398 | exit ;; | 1559 | ;; |
1560 | *:Unleashed:*:*) | ||
1561 | GUESS=$UNAME_MACHINE-unknown-unleashed$UNAME_RELEASE | ||
1562 | ;; | ||
1563 | esac | ||
1564 | |||
1565 | # Do we have a guess based on uname results? | ||
1566 | if test "x$GUESS" != x; then | ||
1567 | echo "$GUESS" | ||
1568 | exit | ||
1569 | fi | ||
1570 | |||
1571 | # No uname command or uname output not recognized. | ||
1572 | set_cc_for_build | ||
1573 | cat > "$dummy.c" <<EOF | ||
1574 | #ifdef _SEQUENT_ | ||
1575 | #include <sys/types.h> | ||
1576 | #include <sys/utsname.h> | ||
1577 | #endif | ||
1578 | #if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__) | ||
1579 | #if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__) | ||
1580 | #include <signal.h> | ||
1581 | #if defined(_SIZE_T_) || defined(SIGLOST) | ||
1582 | #include <sys/utsname.h> | ||
1583 | #endif | ||
1584 | #endif | ||
1585 | #endif | ||
1586 | main () | ||
1587 | { | ||
1588 | #if defined (sony) | ||
1589 | #if defined (MIPSEB) | ||
1590 | /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, | ||
1591 | I don't know.... */ | ||
1592 | printf ("mips-sony-bsd\n"); exit (0); | ||
1593 | #else | ||
1594 | #include <sys/param.h> | ||
1595 | printf ("m68k-sony-newsos%s\n", | ||
1596 | #ifdef NEWSOS4 | ||
1597 | "4" | ||
1598 | #else | ||
1599 | "" | ||
1600 | #endif | ||
1601 | ); exit (0); | ||
1602 | #endif | ||
1603 | #endif | ||
1604 | |||
1605 | #if defined (NeXT) | ||
1606 | #if !defined (__ARCHITECTURE__) | ||
1607 | #define __ARCHITECTURE__ "m68k" | ||
1608 | #endif | ||
1609 | int version; | ||
1610 | version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; | ||
1611 | if (version < 4) | ||
1612 | printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); | ||
1613 | else | ||
1614 | printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); | ||
1615 | exit (0); | ||
1616 | #endif | ||
1617 | |||
1618 | #if defined (MULTIMAX) || defined (n16) | ||
1619 | #if defined (UMAXV) | ||
1620 | printf ("ns32k-encore-sysv\n"); exit (0); | ||
1621 | #else | ||
1622 | #if defined (CMU) | ||
1623 | printf ("ns32k-encore-mach\n"); exit (0); | ||
1624 | #else | ||
1625 | printf ("ns32k-encore-bsd\n"); exit (0); | ||
1626 | #endif | ||
1627 | #endif | ||
1628 | #endif | ||
1629 | |||
1630 | #if defined (__386BSD__) | ||
1631 | printf ("i386-pc-bsd\n"); exit (0); | ||
1632 | #endif | ||
1633 | |||
1634 | #if defined (sequent) | ||
1635 | #if defined (i386) | ||
1636 | printf ("i386-sequent-dynix\n"); exit (0); | ||
1637 | #endif | ||
1638 | #if defined (ns32000) | ||
1639 | printf ("ns32k-sequent-dynix\n"); exit (0); | ||
1640 | #endif | ||
1641 | #endif | ||
1642 | |||
1643 | #if defined (_SEQUENT_) | ||
1644 | struct utsname un; | ||
1645 | |||
1646 | uname(&un); | ||
1647 | if (strncmp(un.version, "V2", 2) == 0) { | ||
1648 | printf ("i386-sequent-ptx2\n"); exit (0); | ||
1649 | } | ||
1650 | if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ | ||
1651 | printf ("i386-sequent-ptx1\n"); exit (0); | ||
1652 | } | ||
1653 | printf ("i386-sequent-ptx\n"); exit (0); | ||
1654 | #endif | ||
1655 | |||
1656 | #if defined (vax) | ||
1657 | #if !defined (ultrix) | ||
1658 | #include <sys/param.h> | ||
1659 | #if defined (BSD) | ||
1660 | #if BSD == 43 | ||
1661 | printf ("vax-dec-bsd4.3\n"); exit (0); | ||
1662 | #else | ||
1663 | #if BSD == 199006 | ||
1664 | printf ("vax-dec-bsd4.3reno\n"); exit (0); | ||
1665 | #else | ||
1666 | printf ("vax-dec-bsd\n"); exit (0); | ||
1667 | #endif | ||
1668 | #endif | ||
1669 | #else | ||
1670 | printf ("vax-dec-bsd\n"); exit (0); | ||
1671 | #endif | ||
1672 | #else | ||
1673 | #if defined(_SIZE_T_) || defined(SIGLOST) | ||
1674 | struct utsname un; | ||
1675 | uname (&un); | ||
1676 | printf ("vax-dec-ultrix%s\n", un.release); exit (0); | ||
1677 | #else | ||
1678 | printf ("vax-dec-ultrix\n"); exit (0); | ||
1679 | #endif | ||
1680 | #endif | ||
1681 | #endif | ||
1682 | #if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__) | ||
1683 | #if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__) | ||
1684 | #if defined(_SIZE_T_) || defined(SIGLOST) | ||
1685 | struct utsname *un; | ||
1686 | uname (&un); | ||
1687 | printf ("mips-dec-ultrix%s\n", un.release); exit (0); | ||
1688 | #else | ||
1689 | printf ("mips-dec-ultrix\n"); exit (0); | ||
1690 | #endif | ||
1691 | #endif | ||
1692 | #endif | ||
1693 | |||
1694 | #if defined (alliant) && defined (i860) | ||
1695 | printf ("i860-alliant-bsd\n"); exit (0); | ||
1696 | #endif | ||
1697 | |||
1698 | exit (1); | ||
1699 | } | ||
1700 | EOF | ||
1701 | |||
1702 | $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`"$dummy"` && | ||
1703 | { echo "$SYSTEM_NAME"; exit; } | ||
1704 | |||
1705 | # Apollos put the system type in the environment. | ||
1706 | test -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; } | ||
1707 | |||
1708 | echo "$0: unable to guess system type" >&2 | ||
1709 | |||
1710 | case $UNAME_MACHINE:$UNAME_SYSTEM in | ||
1711 | mips:Linux | mips64:Linux) | ||
1712 | # If we got here on MIPS GNU/Linux, output extra information. | ||
1713 | cat >&2 <<EOF | ||
1714 | |||
1715 | NOTE: MIPS GNU/Linux systems require a C compiler to fully recognize | ||
1716 | the system type. Please install a C compiler and try again. | ||
1717 | EOF | ||
1718 | ;; | ||
1399 | esac | 1719 | esac |
1400 | 1720 | ||
1401 | cat >&2 <<EOF | 1721 | cat >&2 <<EOF |
1402 | $0: unable to guess system type | ||
1403 | 1722 | ||
1404 | This script, last modified $timestamp, has failed to recognize | 1723 | This script (version $timestamp), has failed to recognize the |
1405 | the operating system you are using. It is advised that you | 1724 | operating system you are using. If your script is old, overwrite *all* |
1406 | download the most up to date version of the config scripts from | 1725 | copies of config.guess and config.sub with the latest versions from: |
1407 | 1726 | ||
1408 | http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD | 1727 | https://git.savannah.gnu.org/cgit/config.git/plain/config.guess |
1409 | and | 1728 | and |
1410 | http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD | 1729 | https://git.savannah.gnu.org/cgit/config.git/plain/config.sub |
1730 | EOF | ||
1411 | 1731 | ||
1412 | If the version you run ($0) is already up to date, please | 1732 | our_year=`echo $timestamp | sed 's,-.*,,'` |
1413 | send the following data and any information you think might be | 1733 | thisyear=`date +%Y` |
1414 | pertinent to <config-patches@gnu.org> in order to provide the needed | 1734 | # shellcheck disable=SC2003 |
1415 | information to handle your system. | 1735 | script_age=`expr "$thisyear" - "$our_year"` |
1736 | if test "$script_age" -lt 3 ; then | ||
1737 | cat >&2 <<EOF | ||
1738 | |||
1739 | If $0 has already been updated, send the following data and any | ||
1740 | information you think might be pertinent to config-patches@gnu.org to | ||
1741 | provide the necessary information to handle your system. | ||
1416 | 1742 | ||
1417 | config.guess timestamp = $timestamp | 1743 | config.guess timestamp = $timestamp |
1418 | 1744 | ||
@@ -1431,16 +1757,17 @@ hostinfo = `(hostinfo) 2>/dev/null` | |||
1431 | /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` | 1757 | /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` |
1432 | /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` | 1758 | /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` |
1433 | 1759 | ||
1434 | UNAME_MACHINE = ${UNAME_MACHINE} | 1760 | UNAME_MACHINE = "$UNAME_MACHINE" |
1435 | UNAME_RELEASE = ${UNAME_RELEASE} | 1761 | UNAME_RELEASE = "$UNAME_RELEASE" |
1436 | UNAME_SYSTEM = ${UNAME_SYSTEM} | 1762 | UNAME_SYSTEM = "$UNAME_SYSTEM" |
1437 | UNAME_VERSION = ${UNAME_VERSION} | 1763 | UNAME_VERSION = "$UNAME_VERSION" |
1438 | EOF | 1764 | EOF |
1765 | fi | ||
1439 | 1766 | ||
1440 | exit 1 | 1767 | exit 1 |
1441 | 1768 | ||
1442 | # Local variables: | 1769 | # Local variables: |
1443 | # eval: (add-hook 'write-file-hooks 'time-stamp) | 1770 | # eval: (add-hook 'before-save-hook 'time-stamp) |
1444 | # time-stamp-start: "timestamp='" | 1771 | # time-stamp-start: "timestamp='" |
1445 | # time-stamp-format: "%:y-%02m-%02d" | 1772 | # time-stamp-format: "%:y-%02m-%02d" |
1446 | # time-stamp-end: "'" | 1773 | # time-stamp-end: "'" |
diff --git a/scripts/config.sub b/scripts/config.sub index 0cd7016..baf1512 100644 --- a/scripts/config.sub +++ b/scripts/config.sub | |||
@@ -1,12 +1,14 @@ | |||
1 | #! /bin/sh | 1 | #! /bin/sh |
2 | # Configuration validation subroutine script. | 2 | # Configuration validation subroutine script. |
3 | # Copyright 1992-2015 Free Software Foundation, Inc. | 3 | # Copyright 1992-2022 Free Software Foundation, Inc. |
4 | 4 | ||
5 | timestamp='2015-12-14' | 5 | # shellcheck disable=SC2006,SC2268 # see below for rationale |
6 | |||
7 | timestamp='2022-09-17' | ||
6 | 8 | ||
7 | # This file is free software; you can redistribute it and/or modify it | 9 | # This file is free software; you can redistribute it and/or modify it |
8 | # under the terms of the GNU General Public License as published by | 10 | # under the terms of the GNU General Public License as published by |
9 | # the Free Software Foundation; either version 3 of the License, or | 11 | # the Free Software Foundation, either version 3 of the License, or |
10 | # (at your option) any later version. | 12 | # (at your option) any later version. |
11 | # | 13 | # |
12 | # This program is distributed in the hope that it will be useful, but | 14 | # This program is distributed in the hope that it will be useful, but |
@@ -15,7 +17,7 @@ timestamp='2015-12-14' | |||
15 | # General Public License for more details. | 17 | # General Public License for more details. |
16 | # | 18 | # |
17 | # You should have received a copy of the GNU General Public License | 19 | # You should have received a copy of the GNU General Public License |
18 | # along with this program; if not, see <http://www.gnu.org/licenses/>. | 20 | # along with this program; if not, see <https://www.gnu.org/licenses/>. |
19 | # | 21 | # |
20 | # As a special exception to the GNU General Public License, if you | 22 | # As a special exception to the GNU General Public License, if you |
21 | # distribute this file as part of a program that contains a | 23 | # distribute this file as part of a program that contains a |
@@ -33,7 +35,7 @@ timestamp='2015-12-14' | |||
33 | # Otherwise, we print the canonical config type on stdout and succeed. | 35 | # Otherwise, we print the canonical config type on stdout and succeed. |
34 | 36 | ||
35 | # You can get the latest version of this script from: | 37 | # You can get the latest version of this script from: |
36 | # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD | 38 | # https://git.savannah.gnu.org/cgit/config.git/plain/config.sub |
37 | 39 | ||
38 | # This file is supposed to be the same for all GNU packages | 40 | # This file is supposed to be the same for all GNU packages |
39 | # and recognize all the CPU types, system types and aliases | 41 | # and recognize all the CPU types, system types and aliases |
@@ -50,6 +52,13 @@ timestamp='2015-12-14' | |||
50 | # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM | 52 | # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM |
51 | # It is wrong to echo any other type of specification. | 53 | # It is wrong to echo any other type of specification. |
52 | 54 | ||
55 | # The "shellcheck disable" line above the timestamp inhibits complaints | ||
56 | # about features and limitations of the classic Bourne shell that were | ||
57 | # superseded or lifted in POSIX. However, this script identifies a wide | ||
58 | # variety of pre-POSIX systems that do not have POSIX shells at all, and | ||
59 | # even some reasonably current systems (Solaris 10 as case-in-point) still | ||
60 | # have a pre-POSIX /bin/sh. | ||
61 | |||
53 | me=`echo "$0" | sed -e 's,.*/,,'` | 62 | me=`echo "$0" | sed -e 's,.*/,,'` |
54 | 63 | ||
55 | usage="\ | 64 | usage="\ |
@@ -57,7 +66,7 @@ Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS | |||
57 | 66 | ||
58 | Canonicalize a configuration name. | 67 | Canonicalize a configuration name. |
59 | 68 | ||
60 | Operation modes: | 69 | Options: |
61 | -h, --help print this help, then exit | 70 | -h, --help print this help, then exit |
62 | -t, --time-stamp print date of last modification, then exit | 71 | -t, --time-stamp print date of last modification, then exit |
63 | -v, --version print version number, then exit | 72 | -v, --version print version number, then exit |
@@ -67,7 +76,7 @@ Report bugs and patches to <config-patches@gnu.org>." | |||
67 | version="\ | 76 | version="\ |
68 | GNU config.sub ($timestamp) | 77 | GNU config.sub ($timestamp) |
69 | 78 | ||
70 | Copyright 1992-2015 Free Software Foundation, Inc. | 79 | Copyright 1992-2022 Free Software Foundation, Inc. |
71 | 80 | ||
72 | This is free software; see the source for copying conditions. There is NO | 81 | This is free software; see the source for copying conditions. There is NO |
73 | warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." | 82 | warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." |
@@ -89,12 +98,12 @@ while test $# -gt 0 ; do | |||
89 | - ) # Use stdin as input. | 98 | - ) # Use stdin as input. |
90 | break ;; | 99 | break ;; |
91 | -* ) | 100 | -* ) |
92 | echo "$me: invalid option $1$help" | 101 | echo "$me: invalid option $1$help" >&2 |
93 | exit 1 ;; | 102 | exit 1 ;; |
94 | 103 | ||
95 | *local*) | 104 | *local*) |
96 | # First pass through any local machine types. | 105 | # First pass through any local machine types. |
97 | echo $1 | 106 | echo "$1" |
98 | exit ;; | 107 | exit ;; |
99 | 108 | ||
100 | * ) | 109 | * ) |
@@ -110,1234 +119,1186 @@ case $# in | |||
110 | exit 1;; | 119 | exit 1;; |
111 | esac | 120 | esac |
112 | 121 | ||
113 | # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). | 122 | # Split fields of configuration type |
114 | # Here we must recognize all the valid KERNEL-OS combinations. | 123 | # shellcheck disable=SC2162 |
115 | maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` | 124 | saved_IFS=$IFS |
116 | case $maybe_os in | 125 | IFS="-" read field1 field2 field3 field4 <<EOF |
117 | nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ | 126 | $1 |
118 | linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ | 127 | EOF |
119 | knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ | 128 | IFS=$saved_IFS |
120 | kopensolaris*-gnu* | \ | ||
121 | storm-chaos* | os2-emx* | rtmk-nova*) | ||
122 | os=-$maybe_os | ||
123 | basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` | ||
124 | ;; | ||
125 | android-linux) | ||
126 | os=-linux-android | ||
127 | basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown | ||
128 | ;; | ||
129 | *) | ||
130 | basic_machine=`echo $1 | sed 's/-[^-]*$//'` | ||
131 | if [ $basic_machine != $1 ] | ||
132 | then os=`echo $1 | sed 's/.*-/-/'` | ||
133 | else os=; fi | ||
134 | ;; | ||
135 | esac | ||
136 | 129 | ||
137 | ### Let's recognize common machines as not being operating systems so | 130 | # Separate into logical components for further validation |
138 | ### that things like config.sub decstation-3100 work. We also | 131 | case $1 in |
139 | ### recognize some manufacturers as not being operating systems, so we | 132 | *-*-*-*-*) |
140 | ### can provide default operating systems below. | 133 | echo Invalid configuration \`"$1"\': more than four components >&2 |
141 | case $os in | 134 | exit 1 |
142 | -sun*os*) | ||
143 | # Prevent following clause from handling this invalid input. | ||
144 | ;; | ||
145 | -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ | ||
146 | -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ | ||
147 | -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ | ||
148 | -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ | ||
149 | -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ | ||
150 | -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ | ||
151 | -apple | -axis | -knuth | -cray | -microblaze*) | ||
152 | os= | ||
153 | basic_machine=$1 | ||
154 | ;; | ||
155 | -bluegene*) | ||
156 | os=-cnk | ||
157 | ;; | ||
158 | -sim | -cisco | -oki | -wec | -winbond) | ||
159 | os= | ||
160 | basic_machine=$1 | ||
161 | ;; | ||
162 | -scout) | ||
163 | ;; | ||
164 | -wrs) | ||
165 | os=-vxworks | ||
166 | basic_machine=$1 | ||
167 | ;; | ||
168 | -chorusos*) | ||
169 | os=-chorusos | ||
170 | basic_machine=$1 | ||
171 | ;; | ||
172 | -chorusrdb) | ||
173 | os=-chorusrdb | ||
174 | basic_machine=$1 | ||
175 | ;; | ||
176 | -hiux*) | ||
177 | os=-hiuxwe2 | ||
178 | ;; | ||
179 | -sco6) | ||
180 | os=-sco5v6 | ||
181 | basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` | ||
182 | ;; | ||
183 | -sco5) | ||
184 | os=-sco3.2v5 | ||
185 | basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` | ||
186 | ;; | ||
187 | -sco4) | ||
188 | os=-sco3.2v4 | ||
189 | basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` | ||
190 | ;; | ||
191 | -sco3.2.[4-9]*) | ||
192 | os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` | ||
193 | basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` | ||
194 | ;; | ||
195 | -sco3.2v[4-9]*) | ||
196 | # Don't forget version if it is 3.2v4 or newer. | ||
197 | basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` | ||
198 | ;; | ||
199 | -sco5v6*) | ||
200 | # Don't forget version if it is 3.2v4 or newer. | ||
201 | basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` | ||
202 | ;; | ||
203 | -sco*) | ||
204 | os=-sco3.2v2 | ||
205 | basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` | ||
206 | ;; | ||
207 | -udk*) | ||
208 | basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` | ||
209 | ;; | ||
210 | -isc) | ||
211 | os=-isc2.2 | ||
212 | basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` | ||
213 | ;; | ||
214 | -clix*) | ||
215 | basic_machine=clipper-intergraph | ||
216 | ;; | ||
217 | -isc*) | ||
218 | basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` | ||
219 | ;; | ||
220 | -lynx*178) | ||
221 | os=-lynxos178 | ||
222 | ;; | ||
223 | -lynx*5) | ||
224 | os=-lynxos5 | ||
225 | ;; | ||
226 | -lynx*) | ||
227 | os=-lynxos | ||
228 | ;; | 135 | ;; |
229 | -ptx*) | 136 | *-*-*-*) |
230 | basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` | 137 | basic_machine=$field1-$field2 |
138 | basic_os=$field3-$field4 | ||
231 | ;; | 139 | ;; |
232 | -windowsnt*) | 140 | *-*-*) |
233 | os=`echo $os | sed -e 's/windowsnt/winnt/'` | 141 | # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two |
142 | # parts | ||
143 | maybe_os=$field2-$field3 | ||
144 | case $maybe_os in | ||
145 | nto-qnx* | linux-* | uclinux-uclibc* \ | ||
146 | | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \ | ||
147 | | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \ | ||
148 | | storm-chaos* | os2-emx* | rtmk-nova* | managarm-*) | ||
149 | basic_machine=$field1 | ||
150 | basic_os=$maybe_os | ||
151 | ;; | ||
152 | android-linux) | ||
153 | basic_machine=$field1-unknown | ||
154 | basic_os=linux-android | ||
155 | ;; | ||
156 | *) | ||
157 | basic_machine=$field1-$field2 | ||
158 | basic_os=$field3 | ||
159 | ;; | ||
160 | esac | ||
234 | ;; | 161 | ;; |
235 | -psos*) | 162 | *-*) |
236 | os=-psos | 163 | # A lone config we happen to match not fitting any pattern |
164 | case $field1-$field2 in | ||
165 | decstation-3100) | ||
166 | basic_machine=mips-dec | ||
167 | basic_os= | ||
168 | ;; | ||
169 | *-*) | ||
170 | # Second component is usually, but not always the OS | ||
171 | case $field2 in | ||
172 | # Prevent following clause from handling this valid os | ||
173 | sun*os*) | ||
174 | basic_machine=$field1 | ||
175 | basic_os=$field2 | ||
176 | ;; | ||
177 | zephyr*) | ||
178 | basic_machine=$field1-unknown | ||
179 | basic_os=$field2 | ||
180 | ;; | ||
181 | # Manufacturers | ||
182 | dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \ | ||
183 | | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \ | ||
184 | | unicom* | ibm* | next | hp | isi* | apollo | altos* \ | ||
185 | | convergent* | ncr* | news | 32* | 3600* | 3100* \ | ||
186 | | hitachi* | c[123]* | convex* | sun | crds | omron* | dg \ | ||
187 | | ultra | tti* | harris | dolphin | highlevel | gould \ | ||
188 | | cbm | ns | masscomp | apple | axis | knuth | cray \ | ||
189 | | microblaze* | sim | cisco \ | ||
190 | | oki | wec | wrs | winbond) | ||
191 | basic_machine=$field1-$field2 | ||
192 | basic_os= | ||
193 | ;; | ||
194 | *) | ||
195 | basic_machine=$field1 | ||
196 | basic_os=$field2 | ||
197 | ;; | ||
198 | esac | ||
199 | ;; | ||
200 | esac | ||
237 | ;; | 201 | ;; |
238 | -mint | -mint[0-9]*) | 202 | *) |
239 | basic_machine=m68k-atari | 203 | # Convert single-component short-hands not valid as part of |
240 | os=-mint | 204 | # multi-component configurations. |
205 | case $field1 in | ||
206 | 386bsd) | ||
207 | basic_machine=i386-pc | ||
208 | basic_os=bsd | ||
209 | ;; | ||
210 | a29khif) | ||
211 | basic_machine=a29k-amd | ||
212 | basic_os=udi | ||
213 | ;; | ||
214 | adobe68k) | ||
215 | basic_machine=m68010-adobe | ||
216 | basic_os=scout | ||
217 | ;; | ||
218 | alliant) | ||
219 | basic_machine=fx80-alliant | ||
220 | basic_os= | ||
221 | ;; | ||
222 | altos | altos3068) | ||
223 | basic_machine=m68k-altos | ||
224 | basic_os= | ||
225 | ;; | ||
226 | am29k) | ||
227 | basic_machine=a29k-none | ||
228 | basic_os=bsd | ||
229 | ;; | ||
230 | amdahl) | ||
231 | basic_machine=580-amdahl | ||
232 | basic_os=sysv | ||
233 | ;; | ||
234 | amiga) | ||
235 | basic_machine=m68k-unknown | ||
236 | basic_os= | ||
237 | ;; | ||
238 | amigaos | amigados) | ||
239 | basic_machine=m68k-unknown | ||
240 | basic_os=amigaos | ||
241 | ;; | ||
242 | amigaunix | amix) | ||
243 | basic_machine=m68k-unknown | ||
244 | basic_os=sysv4 | ||
245 | ;; | ||
246 | apollo68) | ||
247 | basic_machine=m68k-apollo | ||
248 | basic_os=sysv | ||
249 | ;; | ||
250 | apollo68bsd) | ||
251 | basic_machine=m68k-apollo | ||
252 | basic_os=bsd | ||
253 | ;; | ||
254 | aros) | ||
255 | basic_machine=i386-pc | ||
256 | basic_os=aros | ||
257 | ;; | ||
258 | aux) | ||
259 | basic_machine=m68k-apple | ||
260 | basic_os=aux | ||
261 | ;; | ||
262 | balance) | ||
263 | basic_machine=ns32k-sequent | ||
264 | basic_os=dynix | ||
265 | ;; | ||
266 | blackfin) | ||
267 | basic_machine=bfin-unknown | ||
268 | basic_os=linux | ||
269 | ;; | ||
270 | cegcc) | ||
271 | basic_machine=arm-unknown | ||
272 | basic_os=cegcc | ||
273 | ;; | ||
274 | convex-c1) | ||
275 | basic_machine=c1-convex | ||
276 | basic_os=bsd | ||
277 | ;; | ||
278 | convex-c2) | ||
279 | basic_machine=c2-convex | ||
280 | basic_os=bsd | ||
281 | ;; | ||
282 | convex-c32) | ||
283 | basic_machine=c32-convex | ||
284 | basic_os=bsd | ||
285 | ;; | ||
286 | convex-c34) | ||
287 | basic_machine=c34-convex | ||
288 | basic_os=bsd | ||
289 | ;; | ||
290 | convex-c38) | ||
291 | basic_machine=c38-convex | ||
292 | basic_os=bsd | ||
293 | ;; | ||
294 | cray) | ||
295 | basic_machine=j90-cray | ||
296 | basic_os=unicos | ||
297 | ;; | ||
298 | crds | unos) | ||
299 | basic_machine=m68k-crds | ||
300 | basic_os= | ||
301 | ;; | ||
302 | da30) | ||
303 | basic_machine=m68k-da30 | ||
304 | basic_os= | ||
305 | ;; | ||
306 | decstation | pmax | pmin | dec3100 | decstatn) | ||
307 | basic_machine=mips-dec | ||
308 | basic_os= | ||
309 | ;; | ||
310 | delta88) | ||
311 | basic_machine=m88k-motorola | ||
312 | basic_os=sysv3 | ||
313 | ;; | ||
314 | dicos) | ||
315 | basic_machine=i686-pc | ||
316 | basic_os=dicos | ||
317 | ;; | ||
318 | djgpp) | ||
319 | basic_machine=i586-pc | ||
320 | basic_os=msdosdjgpp | ||
321 | ;; | ||
322 | ebmon29k) | ||
323 | basic_machine=a29k-amd | ||
324 | basic_os=ebmon | ||
325 | ;; | ||
326 | es1800 | OSE68k | ose68k | ose | OSE) | ||
327 | basic_machine=m68k-ericsson | ||
328 | basic_os=ose | ||
329 | ;; | ||
330 | gmicro) | ||
331 | basic_machine=tron-gmicro | ||
332 | basic_os=sysv | ||
333 | ;; | ||
334 | go32) | ||
335 | basic_machine=i386-pc | ||
336 | basic_os=go32 | ||
337 | ;; | ||
338 | h8300hms) | ||
339 | basic_machine=h8300-hitachi | ||
340 | basic_os=hms | ||
341 | ;; | ||
342 | h8300xray) | ||
343 | basic_machine=h8300-hitachi | ||
344 | basic_os=xray | ||
345 | ;; | ||
346 | h8500hms) | ||
347 | basic_machine=h8500-hitachi | ||
348 | basic_os=hms | ||
349 | ;; | ||
350 | harris) | ||
351 | basic_machine=m88k-harris | ||
352 | basic_os=sysv3 | ||
353 | ;; | ||
354 | hp300 | hp300hpux) | ||
355 | basic_machine=m68k-hp | ||
356 | basic_os=hpux | ||
357 | ;; | ||
358 | hp300bsd) | ||
359 | basic_machine=m68k-hp | ||
360 | basic_os=bsd | ||
361 | ;; | ||
362 | hppaosf) | ||
363 | basic_machine=hppa1.1-hp | ||
364 | basic_os=osf | ||
365 | ;; | ||
366 | hppro) | ||
367 | basic_machine=hppa1.1-hp | ||
368 | basic_os=proelf | ||
369 | ;; | ||
370 | i386mach) | ||
371 | basic_machine=i386-mach | ||
372 | basic_os=mach | ||
373 | ;; | ||
374 | isi68 | isi) | ||
375 | basic_machine=m68k-isi | ||
376 | basic_os=sysv | ||
377 | ;; | ||
378 | m68knommu) | ||
379 | basic_machine=m68k-unknown | ||
380 | basic_os=linux | ||
381 | ;; | ||
382 | magnum | m3230) | ||
383 | basic_machine=mips-mips | ||
384 | basic_os=sysv | ||
385 | ;; | ||
386 | merlin) | ||
387 | basic_machine=ns32k-utek | ||
388 | basic_os=sysv | ||
389 | ;; | ||
390 | mingw64) | ||
391 | basic_machine=x86_64-pc | ||
392 | basic_os=mingw64 | ||
393 | ;; | ||
394 | mingw32) | ||
395 | basic_machine=i686-pc | ||
396 | basic_os=mingw32 | ||
397 | ;; | ||
398 | mingw32ce) | ||
399 | basic_machine=arm-unknown | ||
400 | basic_os=mingw32ce | ||
401 | ;; | ||
402 | monitor) | ||
403 | basic_machine=m68k-rom68k | ||
404 | basic_os=coff | ||
405 | ;; | ||
406 | morphos) | ||
407 | basic_machine=powerpc-unknown | ||
408 | basic_os=morphos | ||
409 | ;; | ||
410 | moxiebox) | ||
411 | basic_machine=moxie-unknown | ||
412 | basic_os=moxiebox | ||
413 | ;; | ||
414 | msdos) | ||
415 | basic_machine=i386-pc | ||
416 | basic_os=msdos | ||
417 | ;; | ||
418 | msys) | ||
419 | basic_machine=i686-pc | ||
420 | basic_os=msys | ||
421 | ;; | ||
422 | mvs) | ||
423 | basic_machine=i370-ibm | ||
424 | basic_os=mvs | ||
425 | ;; | ||
426 | nacl) | ||
427 | basic_machine=le32-unknown | ||
428 | basic_os=nacl | ||
429 | ;; | ||
430 | ncr3000) | ||
431 | basic_machine=i486-ncr | ||
432 | basic_os=sysv4 | ||
433 | ;; | ||
434 | netbsd386) | ||
435 | basic_machine=i386-pc | ||
436 | basic_os=netbsd | ||
437 | ;; | ||
438 | netwinder) | ||
439 | basic_machine=armv4l-rebel | ||
440 | basic_os=linux | ||
441 | ;; | ||
442 | news | news700 | news800 | news900) | ||
443 | basic_machine=m68k-sony | ||
444 | basic_os=newsos | ||
445 | ;; | ||
446 | news1000) | ||
447 | basic_machine=m68030-sony | ||
448 | basic_os=newsos | ||
449 | ;; | ||
450 | necv70) | ||
451 | basic_machine=v70-nec | ||
452 | basic_os=sysv | ||
453 | ;; | ||
454 | nh3000) | ||
455 | basic_machine=m68k-harris | ||
456 | basic_os=cxux | ||
457 | ;; | ||
458 | nh[45]000) | ||
459 | basic_machine=m88k-harris | ||
460 | basic_os=cxux | ||
461 | ;; | ||
462 | nindy960) | ||
463 | basic_machine=i960-intel | ||
464 | basic_os=nindy | ||
465 | ;; | ||
466 | mon960) | ||
467 | basic_machine=i960-intel | ||
468 | basic_os=mon960 | ||
469 | ;; | ||
470 | nonstopux) | ||
471 | basic_machine=mips-compaq | ||
472 | basic_os=nonstopux | ||
473 | ;; | ||
474 | os400) | ||
475 | basic_machine=powerpc-ibm | ||
476 | basic_os=os400 | ||
477 | ;; | ||
478 | OSE68000 | ose68000) | ||
479 | basic_machine=m68000-ericsson | ||
480 | basic_os=ose | ||
481 | ;; | ||
482 | os68k) | ||
483 | basic_machine=m68k-none | ||
484 | basic_os=os68k | ||
485 | ;; | ||
486 | paragon) | ||
487 | basic_machine=i860-intel | ||
488 | basic_os=osf | ||
489 | ;; | ||
490 | parisc) | ||
491 | basic_machine=hppa-unknown | ||
492 | basic_os=linux | ||
493 | ;; | ||
494 | psp) | ||
495 | basic_machine=mipsallegrexel-sony | ||
496 | basic_os=psp | ||
497 | ;; | ||
498 | pw32) | ||
499 | basic_machine=i586-unknown | ||
500 | basic_os=pw32 | ||
501 | ;; | ||
502 | rdos | rdos64) | ||
503 | basic_machine=x86_64-pc | ||
504 | basic_os=rdos | ||
505 | ;; | ||
506 | rdos32) | ||
507 | basic_machine=i386-pc | ||
508 | basic_os=rdos | ||
509 | ;; | ||
510 | rom68k) | ||
511 | basic_machine=m68k-rom68k | ||
512 | basic_os=coff | ||
513 | ;; | ||
514 | sa29200) | ||
515 | basic_machine=a29k-amd | ||
516 | basic_os=udi | ||
517 | ;; | ||
518 | sei) | ||
519 | basic_machine=mips-sei | ||
520 | basic_os=seiux | ||
521 | ;; | ||
522 | sequent) | ||
523 | basic_machine=i386-sequent | ||
524 | basic_os= | ||
525 | ;; | ||
526 | sps7) | ||
527 | basic_machine=m68k-bull | ||
528 | basic_os=sysv2 | ||
529 | ;; | ||
530 | st2000) | ||
531 | basic_machine=m68k-tandem | ||
532 | basic_os= | ||
533 | ;; | ||
534 | stratus) | ||
535 | basic_machine=i860-stratus | ||
536 | basic_os=sysv4 | ||
537 | ;; | ||
538 | sun2) | ||
539 | basic_machine=m68000-sun | ||
540 | basic_os= | ||
541 | ;; | ||
542 | sun2os3) | ||
543 | basic_machine=m68000-sun | ||
544 | basic_os=sunos3 | ||
545 | ;; | ||
546 | sun2os4) | ||
547 | basic_machine=m68000-sun | ||
548 | basic_os=sunos4 | ||
549 | ;; | ||
550 | sun3) | ||
551 | basic_machine=m68k-sun | ||
552 | basic_os= | ||
553 | ;; | ||
554 | sun3os3) | ||
555 | basic_machine=m68k-sun | ||
556 | basic_os=sunos3 | ||
557 | ;; | ||
558 | sun3os4) | ||
559 | basic_machine=m68k-sun | ||
560 | basic_os=sunos4 | ||
561 | ;; | ||
562 | sun4) | ||
563 | basic_machine=sparc-sun | ||
564 | basic_os= | ||
565 | ;; | ||
566 | sun4os3) | ||
567 | basic_machine=sparc-sun | ||
568 | basic_os=sunos3 | ||
569 | ;; | ||
570 | sun4os4) | ||
571 | basic_machine=sparc-sun | ||
572 | basic_os=sunos4 | ||
573 | ;; | ||
574 | sun4sol2) | ||
575 | basic_machine=sparc-sun | ||
576 | basic_os=solaris2 | ||
577 | ;; | ||
578 | sun386 | sun386i | roadrunner) | ||
579 | basic_machine=i386-sun | ||
580 | basic_os= | ||
581 | ;; | ||
582 | sv1) | ||
583 | basic_machine=sv1-cray | ||
584 | basic_os=unicos | ||
585 | ;; | ||
586 | symmetry) | ||
587 | basic_machine=i386-sequent | ||
588 | basic_os=dynix | ||
589 | ;; | ||
590 | t3e) | ||
591 | basic_machine=alphaev5-cray | ||
592 | basic_os=unicos | ||
593 | ;; | ||
594 | t90) | ||
595 | basic_machine=t90-cray | ||
596 | basic_os=unicos | ||
597 | ;; | ||
598 | toad1) | ||
599 | basic_machine=pdp10-xkl | ||
600 | basic_os=tops20 | ||
601 | ;; | ||
602 | tpf) | ||
603 | basic_machine=s390x-ibm | ||
604 | basic_os=tpf | ||
605 | ;; | ||
606 | udi29k) | ||
607 | basic_machine=a29k-amd | ||
608 | basic_os=udi | ||
609 | ;; | ||
610 | ultra3) | ||
611 | basic_machine=a29k-nyu | ||
612 | basic_os=sym1 | ||
613 | ;; | ||
614 | v810 | necv810) | ||
615 | basic_machine=v810-nec | ||
616 | basic_os=none | ||
617 | ;; | ||
618 | vaxv) | ||
619 | basic_machine=vax-dec | ||
620 | basic_os=sysv | ||
621 | ;; | ||
622 | vms) | ||
623 | basic_machine=vax-dec | ||
624 | basic_os=vms | ||
625 | ;; | ||
626 | vsta) | ||
627 | basic_machine=i386-pc | ||
628 | basic_os=vsta | ||
629 | ;; | ||
630 | vxworks960) | ||
631 | basic_machine=i960-wrs | ||
632 | basic_os=vxworks | ||
633 | ;; | ||
634 | vxworks68) | ||
635 | basic_machine=m68k-wrs | ||
636 | basic_os=vxworks | ||
637 | ;; | ||
638 | vxworks29k) | ||
639 | basic_machine=a29k-wrs | ||
640 | basic_os=vxworks | ||
641 | ;; | ||
642 | xbox) | ||
643 | basic_machine=i686-pc | ||
644 | basic_os=mingw32 | ||
645 | ;; | ||
646 | ymp) | ||
647 | basic_machine=ymp-cray | ||
648 | basic_os=unicos | ||
649 | ;; | ||
650 | *) | ||
651 | basic_machine=$1 | ||
652 | basic_os= | ||
653 | ;; | ||
654 | esac | ||
241 | ;; | 655 | ;; |
242 | esac | 656 | esac |
243 | 657 | ||
244 | # Decode aliases for certain CPU-COMPANY combinations. | 658 | # Decode 1-component or ad-hoc basic machines |
245 | case $basic_machine in | 659 | case $basic_machine in |
246 | # Recognize the basic CPU types without company name. | 660 | # Here we handle the default manufacturer of certain CPU types. It is in |
247 | # Some are omitted here because they have special meanings below. | 661 | # some cases the only manufacturer, in others, it is the most popular. |
248 | 1750a | 580 \ | 662 | w89k) |
249 | | a29k \ | 663 | cpu=hppa1.1 |
250 | | aarch64 | aarch64_be \ | 664 | vendor=winbond |
251 | | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | ||
252 | | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | ||
253 | | am33_2.0 \ | ||
254 | | arc | arceb \ | ||
255 | | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ | ||
256 | | avr | avr32 \ | ||
257 | | ba \ | ||
258 | | be32 | be64 \ | ||
259 | | bfin \ | ||
260 | | c4x | c8051 | clipper \ | ||
261 | | d10v | d30v | dlx | dsp16xx \ | ||
262 | | e2k | epiphany \ | ||
263 | | fido | fr30 | frv | ft32 \ | ||
264 | | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | ||
265 | | hexagon \ | ||
266 | | i370 | i860 | i960 | ia64 \ | ||
267 | | ip2k | iq2000 \ | ||
268 | | k1om \ | ||
269 | | le32 | le64 \ | ||
270 | | lm32 \ | ||
271 | | m32c | m32r | m32rle | m68000 | m68k | m88k \ | ||
272 | | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ | ||
273 | | mips | mipsbe | mipseb | mipsel | mipsle \ | ||
274 | | mips16 \ | ||
275 | | mips64 | mips64el \ | ||
276 | | mips64octeon | mips64octeonel \ | ||
277 | | mips64orion | mips64orionel \ | ||
278 | | mips64r5900 | mips64r5900el \ | ||
279 | | mips64vr | mips64vrel \ | ||
280 | | mips64vr4100 | mips64vr4100el \ | ||
281 | | mips64vr4300 | mips64vr4300el \ | ||
282 | | mips64vr5000 | mips64vr5000el \ | ||
283 | | mips64vr5900 | mips64vr5900el \ | ||
284 | | mipsisa32 | mipsisa32el \ | ||
285 | | mipsisa32r2 | mipsisa32r2el \ | ||
286 | | mipsisa32r6 | mipsisa32r6el \ | ||
287 | | mipsisa64 | mipsisa64el \ | ||
288 | | mipsisa64r2 | mipsisa64r2el \ | ||
289 | | mipsisa64r6 | mipsisa64r6el \ | ||
290 | | mipsisa64sb1 | mipsisa64sb1el \ | ||
291 | | mipsisa64sr71k | mipsisa64sr71kel \ | ||
292 | | mipsr5900 | mipsr5900el \ | ||
293 | | mipstx39 | mipstx39el \ | ||
294 | | mn10200 | mn10300 \ | ||
295 | | moxie \ | ||
296 | | mt \ | ||
297 | | msp430 \ | ||
298 | | nds32 | nds32le | nds32be \ | ||
299 | | nios | nios2 | nios2eb | nios2el \ | ||
300 | | ns16k | ns32k \ | ||
301 | | open8 | or1k | or1knd | or32 \ | ||
302 | | pdp10 | pdp11 | pj | pjl \ | ||
303 | | powerpc | powerpc64 | powerpc64le | powerpcle \ | ||
304 | | pyramid \ | ||
305 | | riscv32 | riscv64 \ | ||
306 | | rl78 | rx \ | ||
307 | | score \ | ||
308 | | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | ||
309 | | sh64 | sh64le \ | ||
310 | | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ | ||
311 | | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ | ||
312 | | spu \ | ||
313 | | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ | ||
314 | | ubicom32 \ | ||
315 | | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ | ||
316 | | visium \ | ||
317 | | we32k \ | ||
318 | | x86 | xc16x | xstormy16 | xtensa \ | ||
319 | | z8k | z80) | ||
320 | basic_machine=$basic_machine-unknown | ||
321 | ;; | ||
322 | c54x) | ||
323 | basic_machine=tic54x-unknown | ||
324 | ;; | ||
325 | c55x) | ||
326 | basic_machine=tic55x-unknown | ||
327 | ;; | ||
328 | c6x) | ||
329 | basic_machine=tic6x-unknown | ||
330 | ;; | ||
331 | leon|leon[3-9]) | ||
332 | basic_machine=sparc-$basic_machine | ||
333 | ;; | ||
334 | m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) | ||
335 | basic_machine=$basic_machine-unknown | ||
336 | os=-none | ||
337 | ;; | 665 | ;; |
338 | m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) | 666 | op50n) |
667 | cpu=hppa1.1 | ||
668 | vendor=oki | ||
339 | ;; | 669 | ;; |
340 | ms1) | 670 | op60c) |
341 | basic_machine=mt-unknown | 671 | cpu=hppa1.1 |
672 | vendor=oki | ||
342 | ;; | 673 | ;; |
343 | 674 | ibm*) | |
344 | strongarm | thumb | xscale) | 675 | cpu=i370 |
345 | basic_machine=arm-unknown | 676 | vendor=ibm |
346 | ;; | 677 | ;; |
347 | xgate) | 678 | orion105) |
348 | basic_machine=$basic_machine-unknown | 679 | cpu=clipper |
349 | os=-none | 680 | vendor=highlevel |
350 | ;; | 681 | ;; |
351 | xscaleeb) | 682 | mac | mpw | mac-mpw) |
352 | basic_machine=armeb-unknown | 683 | cpu=m68k |
684 | vendor=apple | ||
353 | ;; | 685 | ;; |
354 | 686 | pmac | pmac-mpw) | |
355 | xscaleel) | 687 | cpu=powerpc |
356 | basic_machine=armel-unknown | 688 | vendor=apple |
357 | ;; | 689 | ;; |
358 | 690 | ||
359 | # We use `pc' rather than `unknown' | ||
360 | # because (1) that's what they normally are, and | ||
361 | # (2) the word "unknown" tends to confuse beginning users. | ||
362 | i*86 | x86_64) | ||
363 | basic_machine=$basic_machine-pc | ||
364 | ;; | ||
365 | # Object if more than one company name word. | ||
366 | *-*-*) | ||
367 | echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 | ||
368 | exit 1 | ||
369 | ;; | ||
370 | # Recognize the basic CPU types with company name. | ||
371 | 580-* \ | ||
372 | | a29k-* \ | ||
373 | | aarch64-* | aarch64_be-* \ | ||
374 | | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | ||
375 | | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ | ||
376 | | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ | ||
377 | | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | ||
378 | | avr-* | avr32-* \ | ||
379 | | ba-* \ | ||
380 | | be32-* | be64-* \ | ||
381 | | bfin-* | bs2000-* \ | ||
382 | | c[123]* | c30-* | [cjt]90-* | c4x-* \ | ||
383 | | c8051-* | clipper-* | craynv-* | cydra-* \ | ||
384 | | d10v-* | d30v-* | dlx-* \ | ||
385 | | e2k-* | elxsi-* \ | ||
386 | | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ | ||
387 | | h8300-* | h8500-* \ | ||
388 | | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | ||
389 | | hexagon-* \ | ||
390 | | i*86-* | i860-* | i960-* | ia64-* \ | ||
391 | | ip2k-* | iq2000-* \ | ||
392 | | k1om-* \ | ||
393 | | le32-* | le64-* \ | ||
394 | | lm32-* \ | ||
395 | | m32c-* | m32r-* | m32rle-* \ | ||
396 | | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ | ||
397 | | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ | ||
398 | | microblaze-* | microblazeel-* \ | ||
399 | | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | ||
400 | | mips16-* \ | ||
401 | | mips64-* | mips64el-* \ | ||
402 | | mips64octeon-* | mips64octeonel-* \ | ||
403 | | mips64orion-* | mips64orionel-* \ | ||
404 | | mips64r5900-* | mips64r5900el-* \ | ||
405 | | mips64vr-* | mips64vrel-* \ | ||
406 | | mips64vr4100-* | mips64vr4100el-* \ | ||
407 | | mips64vr4300-* | mips64vr4300el-* \ | ||
408 | | mips64vr5000-* | mips64vr5000el-* \ | ||
409 | | mips64vr5900-* | mips64vr5900el-* \ | ||
410 | | mipsisa32-* | mipsisa32el-* \ | ||
411 | | mipsisa32r2-* | mipsisa32r2el-* \ | ||
412 | | mipsisa32r6-* | mipsisa32r6el-* \ | ||
413 | | mipsisa64-* | mipsisa64el-* \ | ||
414 | | mipsisa64r2-* | mipsisa64r2el-* \ | ||
415 | | mipsisa64r6-* | mipsisa64r6el-* \ | ||
416 | | mipsisa64sb1-* | mipsisa64sb1el-* \ | ||
417 | | mipsisa64sr71k-* | mipsisa64sr71kel-* \ | ||
418 | | mipsr5900-* | mipsr5900el-* \ | ||
419 | | mipstx39-* | mipstx39el-* \ | ||
420 | | mmix-* \ | ||
421 | | mt-* \ | ||
422 | | msp430-* \ | ||
423 | | nds32-* | nds32le-* | nds32be-* \ | ||
424 | | nios-* | nios2-* | nios2eb-* | nios2el-* \ | ||
425 | | none-* | np1-* | ns16k-* | ns32k-* \ | ||
426 | | open8-* \ | ||
427 | | or1k*-* \ | ||
428 | | orion-* \ | ||
429 | | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ | ||
430 | | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ | ||
431 | | pyramid-* \ | ||
432 | | riscv32-* | riscv64-* \ | ||
433 | | rl78-* | romp-* | rs6000-* | rx-* \ | ||
434 | | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | ||
435 | | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | ||
436 | | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | ||
437 | | sparclite-* \ | ||
438 | | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \ | ||
439 | | tahoe-* \ | ||
440 | | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ | ||
441 | | tile*-* \ | ||
442 | | tron-* \ | ||
443 | | ubicom32-* \ | ||
444 | | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ | ||
445 | | vax-* \ | ||
446 | | visium-* \ | ||
447 | | we32k-* \ | ||
448 | | x86-* | x86_64-* | xc16x-* | xps100-* \ | ||
449 | | xstormy16-* | xtensa*-* \ | ||
450 | | ymp-* \ | ||
451 | | z8k-* | z80-*) | ||
452 | ;; | ||
453 | # Recognize the basic CPU types without company name, with glob match. | ||
454 | xtensa*) | ||
455 | basic_machine=$basic_machine-unknown | ||
456 | ;; | ||
457 | # Recognize the various machine names and aliases which stand | 691 | # Recognize the various machine names and aliases which stand |
458 | # for a CPU type and a company and sometimes even an OS. | 692 | # for a CPU type and a company and sometimes even an OS. |
459 | 386bsd) | ||
460 | basic_machine=i386-unknown | ||
461 | os=-bsd | ||
462 | ;; | ||
463 | 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) | 693 | 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) |
464 | basic_machine=m68000-att | 694 | cpu=m68000 |
695 | vendor=att | ||
465 | ;; | 696 | ;; |
466 | 3b*) | 697 | 3b*) |
467 | basic_machine=we32k-att | 698 | cpu=we32k |
468 | ;; | 699 | vendor=att |
469 | a29khif) | ||
470 | basic_machine=a29k-amd | ||
471 | os=-udi | ||
472 | ;; | ||
473 | abacus) | ||
474 | basic_machine=abacus-unknown | ||
475 | ;; | ||
476 | adobe68k) | ||
477 | basic_machine=m68010-adobe | ||
478 | os=-scout | ||
479 | ;; | ||
480 | alliant | fx80) | ||
481 | basic_machine=fx80-alliant | ||
482 | ;; | ||
483 | altos | altos3068) | ||
484 | basic_machine=m68k-altos | ||
485 | ;; | ||
486 | am29k) | ||
487 | basic_machine=a29k-none | ||
488 | os=-bsd | ||
489 | ;; | ||
490 | amd64) | ||
491 | basic_machine=x86_64-pc | ||
492 | ;; | ||
493 | amd64-*) | ||
494 | basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` | ||
495 | ;; | ||
496 | amdahl) | ||
497 | basic_machine=580-amdahl | ||
498 | os=-sysv | ||
499 | ;; | ||
500 | amiga | amiga-*) | ||
501 | basic_machine=m68k-unknown | ||
502 | ;; | ||
503 | amigaos | amigados) | ||
504 | basic_machine=m68k-unknown | ||
505 | os=-amigaos | ||
506 | ;; | ||
507 | amigaunix | amix) | ||
508 | basic_machine=m68k-unknown | ||
509 | os=-sysv4 | ||
510 | ;; | ||
511 | apollo68) | ||
512 | basic_machine=m68k-apollo | ||
513 | os=-sysv | ||
514 | ;; | ||
515 | apollo68bsd) | ||
516 | basic_machine=m68k-apollo | ||
517 | os=-bsd | ||
518 | ;; | ||
519 | aros) | ||
520 | basic_machine=i386-pc | ||
521 | os=-aros | ||
522 | ;; | ||
523 | asmjs) | ||
524 | basic_machine=asmjs-unknown | ||
525 | ;; | ||
526 | aux) | ||
527 | basic_machine=m68k-apple | ||
528 | os=-aux | ||
529 | ;; | ||
530 | balance) | ||
531 | basic_machine=ns32k-sequent | ||
532 | os=-dynix | ||
533 | ;; | ||
534 | blackfin) | ||
535 | basic_machine=bfin-unknown | ||
536 | os=-linux | ||
537 | ;; | ||
538 | blackfin-*) | ||
539 | basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` | ||
540 | os=-linux | ||
541 | ;; | 700 | ;; |
542 | bluegene*) | 701 | bluegene*) |
543 | basic_machine=powerpc-ibm | 702 | cpu=powerpc |
544 | os=-cnk | 703 | vendor=ibm |
545 | ;; | 704 | basic_os=cnk |
546 | c54x-*) | ||
547 | basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` | ||
548 | ;; | ||
549 | c55x-*) | ||
550 | basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` | ||
551 | ;; | ||
552 | c6x-*) | ||
553 | basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` | ||
554 | ;; | ||
555 | c90) | ||
556 | basic_machine=c90-cray | ||
557 | os=-unicos | ||
558 | ;; | ||
559 | cegcc) | ||
560 | basic_machine=arm-unknown | ||
561 | os=-cegcc | ||
562 | ;; | ||
563 | convex-c1) | ||
564 | basic_machine=c1-convex | ||
565 | os=-bsd | ||
566 | ;; | ||
567 | convex-c2) | ||
568 | basic_machine=c2-convex | ||
569 | os=-bsd | ||
570 | ;; | ||
571 | convex-c32) | ||
572 | basic_machine=c32-convex | ||
573 | os=-bsd | ||
574 | ;; | ||
575 | convex-c34) | ||
576 | basic_machine=c34-convex | ||
577 | os=-bsd | ||
578 | ;; | ||
579 | convex-c38) | ||
580 | basic_machine=c38-convex | ||
581 | os=-bsd | ||
582 | ;; | ||
583 | cray | j90) | ||
584 | basic_machine=j90-cray | ||
585 | os=-unicos | ||
586 | ;; | ||
587 | craynv) | ||
588 | basic_machine=craynv-cray | ||
589 | os=-unicosmp | ||
590 | ;; | ||
591 | cr16 | cr16-*) | ||
592 | basic_machine=cr16-unknown | ||
593 | os=-elf | ||
594 | ;; | ||
595 | crds | unos) | ||
596 | basic_machine=m68k-crds | ||
597 | ;; | ||
598 | crisv32 | crisv32-* | etraxfs*) | ||
599 | basic_machine=crisv32-axis | ||
600 | ;; | ||
601 | cris | cris-* | etrax*) | ||
602 | basic_machine=cris-axis | ||
603 | ;; | ||
604 | crx) | ||
605 | basic_machine=crx-unknown | ||
606 | os=-elf | ||
607 | ;; | ||
608 | da30 | da30-*) | ||
609 | basic_machine=m68k-da30 | ||
610 | ;; | ||
611 | decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) | ||
612 | basic_machine=mips-dec | ||
613 | ;; | 705 | ;; |
614 | decsystem10* | dec10*) | 706 | decsystem10* | dec10*) |
615 | basic_machine=pdp10-dec | 707 | cpu=pdp10 |
616 | os=-tops10 | 708 | vendor=dec |
709 | basic_os=tops10 | ||
617 | ;; | 710 | ;; |
618 | decsystem20* | dec20*) | 711 | decsystem20* | dec20*) |
619 | basic_machine=pdp10-dec | 712 | cpu=pdp10 |
620 | os=-tops20 | 713 | vendor=dec |
714 | basic_os=tops20 | ||
621 | ;; | 715 | ;; |
622 | delta | 3300 | motorola-3300 | motorola-delta \ | 716 | delta | 3300 | motorola-3300 | motorola-delta \ |
623 | | 3300-motorola | delta-motorola) | 717 | | 3300-motorola | delta-motorola) |
624 | basic_machine=m68k-motorola | 718 | cpu=m68k |
625 | ;; | 719 | vendor=motorola |
626 | delta88) | ||
627 | basic_machine=m88k-motorola | ||
628 | os=-sysv3 | ||
629 | ;; | ||
630 | dicos) | ||
631 | basic_machine=i686-pc | ||
632 | os=-dicos | ||
633 | ;; | ||
634 | djgpp) | ||
635 | basic_machine=i586-pc | ||
636 | os=-msdosdjgpp | ||
637 | ;; | 720 | ;; |
638 | dpx20 | dpx20-*) | 721 | dpx2*) |
639 | basic_machine=rs6000-bull | 722 | cpu=m68k |
640 | os=-bosx | 723 | vendor=bull |
641 | ;; | 724 | basic_os=sysv3 |
642 | dpx2* | dpx2*-bull) | ||
643 | basic_machine=m68k-bull | ||
644 | os=-sysv3 | ||
645 | ;; | ||
646 | ebmon29k) | ||
647 | basic_machine=a29k-amd | ||
648 | os=-ebmon | ||
649 | ;; | ||
650 | elxsi) | ||
651 | basic_machine=elxsi-elxsi | ||
652 | os=-bsd | ||
653 | ;; | 725 | ;; |
654 | encore | umax | mmax) | 726 | encore | umax | mmax) |
655 | basic_machine=ns32k-encore | 727 | cpu=ns32k |
728 | vendor=encore | ||
656 | ;; | 729 | ;; |
657 | es1800 | OSE68k | ose68k | ose | OSE) | 730 | elxsi) |
658 | basic_machine=m68k-ericsson | 731 | cpu=elxsi |
659 | os=-ose | 732 | vendor=elxsi |
733 | basic_os=${basic_os:-bsd} | ||
660 | ;; | 734 | ;; |
661 | fx2800) | 735 | fx2800) |
662 | basic_machine=i860-alliant | 736 | cpu=i860 |
737 | vendor=alliant | ||
663 | ;; | 738 | ;; |
664 | genix) | 739 | genix) |
665 | basic_machine=ns32k-ns | 740 | cpu=ns32k |
666 | ;; | 741 | vendor=ns |
667 | gmicro) | ||
668 | basic_machine=tron-gmicro | ||
669 | os=-sysv | ||
670 | ;; | ||
671 | go32) | ||
672 | basic_machine=i386-pc | ||
673 | os=-go32 | ||
674 | ;; | 742 | ;; |
675 | h3050r* | hiux*) | 743 | h3050r* | hiux*) |
676 | basic_machine=hppa1.1-hitachi | 744 | cpu=hppa1.1 |
677 | os=-hiuxwe2 | 745 | vendor=hitachi |
678 | ;; | 746 | basic_os=hiuxwe2 |
679 | h8300hms) | ||
680 | basic_machine=h8300-hitachi | ||
681 | os=-hms | ||
682 | ;; | ||
683 | h8300xray) | ||
684 | basic_machine=h8300-hitachi | ||
685 | os=-xray | ||
686 | ;; | ||
687 | h8500hms) | ||
688 | basic_machine=h8500-hitachi | ||
689 | os=-hms | ||
690 | ;; | ||
691 | harris) | ||
692 | basic_machine=m88k-harris | ||
693 | os=-sysv3 | ||
694 | ;; | ||
695 | hp300-*) | ||
696 | basic_machine=m68k-hp | ||
697 | ;; | ||
698 | hp300bsd) | ||
699 | basic_machine=m68k-hp | ||
700 | os=-bsd | ||
701 | ;; | ||
702 | hp300hpux) | ||
703 | basic_machine=m68k-hp | ||
704 | os=-hpux | ||
705 | ;; | 747 | ;; |
706 | hp3k9[0-9][0-9] | hp9[0-9][0-9]) | 748 | hp3k9[0-9][0-9] | hp9[0-9][0-9]) |
707 | basic_machine=hppa1.0-hp | 749 | cpu=hppa1.0 |
750 | vendor=hp | ||
708 | ;; | 751 | ;; |
709 | hp9k2[0-9][0-9] | hp9k31[0-9]) | 752 | hp9k2[0-9][0-9] | hp9k31[0-9]) |
710 | basic_machine=m68000-hp | 753 | cpu=m68000 |
754 | vendor=hp | ||
711 | ;; | 755 | ;; |
712 | hp9k3[2-9][0-9]) | 756 | hp9k3[2-9][0-9]) |
713 | basic_machine=m68k-hp | 757 | cpu=m68k |
758 | vendor=hp | ||
714 | ;; | 759 | ;; |
715 | hp9k6[0-9][0-9] | hp6[0-9][0-9]) | 760 | hp9k6[0-9][0-9] | hp6[0-9][0-9]) |
716 | basic_machine=hppa1.0-hp | 761 | cpu=hppa1.0 |
762 | vendor=hp | ||
717 | ;; | 763 | ;; |
718 | hp9k7[0-79][0-9] | hp7[0-79][0-9]) | 764 | hp9k7[0-79][0-9] | hp7[0-79][0-9]) |
719 | basic_machine=hppa1.1-hp | 765 | cpu=hppa1.1 |
766 | vendor=hp | ||
720 | ;; | 767 | ;; |
721 | hp9k78[0-9] | hp78[0-9]) | 768 | hp9k78[0-9] | hp78[0-9]) |
722 | # FIXME: really hppa2.0-hp | 769 | # FIXME: really hppa2.0-hp |
723 | basic_machine=hppa1.1-hp | 770 | cpu=hppa1.1 |
771 | vendor=hp | ||
724 | ;; | 772 | ;; |
725 | hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) | 773 | hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) |
726 | # FIXME: really hppa2.0-hp | 774 | # FIXME: really hppa2.0-hp |
727 | basic_machine=hppa1.1-hp | 775 | cpu=hppa1.1 |
776 | vendor=hp | ||
728 | ;; | 777 | ;; |
729 | hp9k8[0-9][13679] | hp8[0-9][13679]) | 778 | hp9k8[0-9][13679] | hp8[0-9][13679]) |
730 | basic_machine=hppa1.1-hp | 779 | cpu=hppa1.1 |
780 | vendor=hp | ||
731 | ;; | 781 | ;; |
732 | hp9k8[0-9][0-9] | hp8[0-9][0-9]) | 782 | hp9k8[0-9][0-9] | hp8[0-9][0-9]) |
733 | basic_machine=hppa1.0-hp | 783 | cpu=hppa1.0 |
734 | ;; | 784 | vendor=hp |
735 | hppa-next) | ||
736 | os=-nextstep3 | ||
737 | ;; | ||
738 | hppaosf) | ||
739 | basic_machine=hppa1.1-hp | ||
740 | os=-osf | ||
741 | ;; | ||
742 | hppro) | ||
743 | basic_machine=hppa1.1-hp | ||
744 | os=-proelf | ||
745 | ;; | ||
746 | i370-ibm* | ibm*) | ||
747 | basic_machine=i370-ibm | ||
748 | ;; | 785 | ;; |
749 | i*86v32) | 786 | i*86v32) |
750 | basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` | 787 | cpu=`echo "$1" | sed -e 's/86.*/86/'` |
751 | os=-sysv32 | 788 | vendor=pc |
789 | basic_os=sysv32 | ||
752 | ;; | 790 | ;; |
753 | i*86v4*) | 791 | i*86v4*) |
754 | basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` | 792 | cpu=`echo "$1" | sed -e 's/86.*/86/'` |
755 | os=-sysv4 | 793 | vendor=pc |
794 | basic_os=sysv4 | ||
756 | ;; | 795 | ;; |
757 | i*86v) | 796 | i*86v) |
758 | basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` | 797 | cpu=`echo "$1" | sed -e 's/86.*/86/'` |
759 | os=-sysv | 798 | vendor=pc |
799 | basic_os=sysv | ||
760 | ;; | 800 | ;; |
761 | i*86sol2) | 801 | i*86sol2) |
762 | basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` | 802 | cpu=`echo "$1" | sed -e 's/86.*/86/'` |
763 | os=-solaris2 | 803 | vendor=pc |
764 | ;; | 804 | basic_os=solaris2 |
765 | i386mach) | ||
766 | basic_machine=i386-mach | ||
767 | os=-mach | ||
768 | ;; | 805 | ;; |
769 | i386-vsta | vsta) | 806 | j90 | j90-cray) |
770 | basic_machine=i386-unknown | 807 | cpu=j90 |
771 | os=-vsta | 808 | vendor=cray |
809 | basic_os=${basic_os:-unicos} | ||
772 | ;; | 810 | ;; |
773 | iris | iris4d) | 811 | iris | iris4d) |
774 | basic_machine=mips-sgi | 812 | cpu=mips |
775 | case $os in | 813 | vendor=sgi |
776 | -irix*) | 814 | case $basic_os in |
815 | irix*) | ||
777 | ;; | 816 | ;; |
778 | *) | 817 | *) |
779 | os=-irix4 | 818 | basic_os=irix4 |
780 | ;; | 819 | ;; |
781 | esac | 820 | esac |
782 | ;; | 821 | ;; |
783 | isi68 | isi) | ||
784 | basic_machine=m68k-isi | ||
785 | os=-sysv | ||
786 | ;; | ||
787 | leon-*|leon[3-9]-*) | ||
788 | basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'` | ||
789 | ;; | ||
790 | m68knommu) | ||
791 | basic_machine=m68k-unknown | ||
792 | os=-linux | ||
793 | ;; | ||
794 | m68knommu-*) | ||
795 | basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` | ||
796 | os=-linux | ||
797 | ;; | ||
798 | m88k-omron*) | ||
799 | basic_machine=m88k-omron | ||
800 | ;; | ||
801 | magnum | m3230) | ||
802 | basic_machine=mips-mips | ||
803 | os=-sysv | ||
804 | ;; | ||
805 | merlin) | ||
806 | basic_machine=ns32k-utek | ||
807 | os=-sysv | ||
808 | ;; | ||
809 | microblaze*) | ||
810 | basic_machine=microblaze-xilinx | ||
811 | ;; | ||
812 | mingw64) | ||
813 | basic_machine=x86_64-pc | ||
814 | os=-mingw64 | ||
815 | ;; | ||
816 | mingw32) | ||
817 | basic_machine=i686-pc | ||
818 | os=-mingw32 | ||
819 | ;; | ||
820 | mingw32ce) | ||
821 | basic_machine=arm-unknown | ||
822 | os=-mingw32ce | ||
823 | ;; | ||
824 | miniframe) | 822 | miniframe) |
825 | basic_machine=m68000-convergent | 823 | cpu=m68000 |
826 | ;; | 824 | vendor=convergent |
827 | *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) | ||
828 | basic_machine=m68k-atari | ||
829 | os=-mint | ||
830 | ;; | ||
831 | mips3*-*) | ||
832 | basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` | ||
833 | ;; | 825 | ;; |
834 | mips3*) | 826 | *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*) |
835 | basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown | 827 | cpu=m68k |
836 | ;; | 828 | vendor=atari |
837 | monitor) | 829 | basic_os=mint |
838 | basic_machine=m68k-rom68k | ||
839 | os=-coff | ||
840 | ;; | ||
841 | morphos) | ||
842 | basic_machine=powerpc-unknown | ||
843 | os=-morphos | ||
844 | ;; | ||
845 | moxiebox) | ||
846 | basic_machine=moxie-unknown | ||
847 | os=-moxiebox | ||
848 | ;; | ||
849 | msdos) | ||
850 | basic_machine=i386-pc | ||
851 | os=-msdos | ||
852 | ;; | ||
853 | ms1-*) | ||
854 | basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` | ||
855 | ;; | ||
856 | msys) | ||
857 | basic_machine=i686-pc | ||
858 | os=-msys | ||
859 | ;; | ||
860 | mvs) | ||
861 | basic_machine=i370-ibm | ||
862 | os=-mvs | ||
863 | ;; | ||
864 | nacl) | ||
865 | basic_machine=le32-unknown | ||
866 | os=-nacl | ||
867 | ;; | ||
868 | ncr3000) | ||
869 | basic_machine=i486-ncr | ||
870 | os=-sysv4 | ||
871 | ;; | ||
872 | netbsd386) | ||
873 | basic_machine=i386-unknown | ||
874 | os=-netbsd | ||
875 | ;; | ||
876 | netwinder) | ||
877 | basic_machine=armv4l-rebel | ||
878 | os=-linux | ||
879 | ;; | ||
880 | news | news700 | news800 | news900) | ||
881 | basic_machine=m68k-sony | ||
882 | os=-newsos | ||
883 | ;; | ||
884 | news1000) | ||
885 | basic_machine=m68030-sony | ||
886 | os=-newsos | ||
887 | ;; | 830 | ;; |
888 | news-3600 | risc-news) | 831 | news-3600 | risc-news) |
889 | basic_machine=mips-sony | 832 | cpu=mips |
890 | os=-newsos | 833 | vendor=sony |
891 | ;; | 834 | basic_os=newsos |
892 | necv70) | 835 | ;; |
893 | basic_machine=v70-nec | 836 | next | m*-next) |
894 | os=-sysv | 837 | cpu=m68k |
895 | ;; | 838 | vendor=next |
896 | next | m*-next ) | 839 | case $basic_os in |
897 | basic_machine=m68k-next | 840 | openstep*) |
898 | case $os in | 841 | ;; |
899 | -nextstep* ) | 842 | nextstep*) |
900 | ;; | 843 | ;; |
901 | -ns2*) | 844 | ns2*) |
902 | os=-nextstep2 | 845 | basic_os=nextstep2 |
903 | ;; | 846 | ;; |
904 | *) | 847 | *) |
905 | os=-nextstep3 | 848 | basic_os=nextstep3 |
906 | ;; | 849 | ;; |
907 | esac | 850 | esac |
908 | ;; | 851 | ;; |
909 | nh3000) | ||
910 | basic_machine=m68k-harris | ||
911 | os=-cxux | ||
912 | ;; | ||
913 | nh[45]000) | ||
914 | basic_machine=m88k-harris | ||
915 | os=-cxux | ||
916 | ;; | ||
917 | nindy960) | ||
918 | basic_machine=i960-intel | ||
919 | os=-nindy | ||
920 | ;; | ||
921 | mon960) | ||
922 | basic_machine=i960-intel | ||
923 | os=-mon960 | ||
924 | ;; | ||
925 | nonstopux) | ||
926 | basic_machine=mips-compaq | ||
927 | os=-nonstopux | ||
928 | ;; | ||
929 | np1) | 852 | np1) |
930 | basic_machine=np1-gould | 853 | cpu=np1 |
931 | ;; | 854 | vendor=gould |
932 | neo-tandem) | ||
933 | basic_machine=neo-tandem | ||
934 | ;; | ||
935 | nse-tandem) | ||
936 | basic_machine=nse-tandem | ||
937 | ;; | ||
938 | nsr-tandem) | ||
939 | basic_machine=nsr-tandem | ||
940 | ;; | 855 | ;; |
941 | op50n-* | op60c-*) | 856 | op50n-* | op60c-*) |
942 | basic_machine=hppa1.1-oki | 857 | cpu=hppa1.1 |
943 | os=-proelf | 858 | vendor=oki |
944 | ;; | 859 | basic_os=proelf |
945 | openrisc | openrisc-*) | ||
946 | basic_machine=or32-unknown | ||
947 | ;; | ||
948 | os400) | ||
949 | basic_machine=powerpc-ibm | ||
950 | os=-os400 | ||
951 | ;; | ||
952 | OSE68000 | ose68000) | ||
953 | basic_machine=m68000-ericsson | ||
954 | os=-ose | ||
955 | ;; | ||
956 | os68k) | ||
957 | basic_machine=m68k-none | ||
958 | os=-os68k | ||
959 | ;; | 860 | ;; |
960 | pa-hitachi) | 861 | pa-hitachi) |
961 | basic_machine=hppa1.1-hitachi | 862 | cpu=hppa1.1 |
962 | os=-hiuxwe2 | 863 | vendor=hitachi |
963 | ;; | 864 | basic_os=hiuxwe2 |
964 | paragon) | ||
965 | basic_machine=i860-intel | ||
966 | os=-osf | ||
967 | ;; | ||
968 | parisc) | ||
969 | basic_machine=hppa-unknown | ||
970 | os=-linux | ||
971 | ;; | ||
972 | parisc-*) | ||
973 | basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` | ||
974 | os=-linux | ||
975 | ;; | 865 | ;; |
976 | pbd) | 866 | pbd) |
977 | basic_machine=sparc-tti | 867 | cpu=sparc |
868 | vendor=tti | ||
978 | ;; | 869 | ;; |
979 | pbb) | 870 | pbb) |
980 | basic_machine=m68k-tti | 871 | cpu=m68k |
981 | ;; | 872 | vendor=tti |
982 | pc532 | pc532-*) | ||
983 | basic_machine=ns32k-pc532 | ||
984 | ;; | ||
985 | pc98) | ||
986 | basic_machine=i386-pc | ||
987 | ;; | ||
988 | pc98-*) | ||
989 | basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` | ||
990 | ;; | ||
991 | pentium | p5 | k5 | k6 | nexgen | viac3) | ||
992 | basic_machine=i586-pc | ||
993 | ;; | ||
994 | pentiumpro | p6 | 6x86 | athlon | athlon_*) | ||
995 | basic_machine=i686-pc | ||
996 | ;; | ||
997 | pentiumii | pentium2 | pentiumiii | pentium3) | ||
998 | basic_machine=i686-pc | ||
999 | ;; | 873 | ;; |
1000 | pentium4) | 874 | pc532) |
1001 | basic_machine=i786-pc | 875 | cpu=ns32k |
1002 | ;; | 876 | vendor=pc532 |
1003 | pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) | ||
1004 | basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` | ||
1005 | ;; | ||
1006 | pentiumpro-* | p6-* | 6x86-* | athlon-*) | ||
1007 | basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` | ||
1008 | ;; | ||
1009 | pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) | ||
1010 | basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` | ||
1011 | ;; | ||
1012 | pentium4-*) | ||
1013 | basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` | ||
1014 | ;; | 877 | ;; |
1015 | pn) | 878 | pn) |
1016 | basic_machine=pn-gould | 879 | cpu=pn |
1017 | ;; | 880 | vendor=gould |
1018 | power) basic_machine=power-ibm | ||
1019 | ;; | ||
1020 | ppc | ppcbe) basic_machine=powerpc-unknown | ||
1021 | ;; | ||
1022 | ppc-* | ppcbe-*) | ||
1023 | basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` | ||
1024 | ;; | ||
1025 | ppcle | powerpclittle | ppc-le | powerpc-little) | ||
1026 | basic_machine=powerpcle-unknown | ||
1027 | ;; | ||
1028 | ppcle-* | powerpclittle-*) | ||
1029 | basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` | ||
1030 | ;; | 881 | ;; |
1031 | ppc64) basic_machine=powerpc64-unknown | 882 | power) |
1032 | ;; | 883 | cpu=power |
1033 | ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` | 884 | vendor=ibm |
1034 | ;; | ||
1035 | ppc64le | powerpc64little | ppc64-le | powerpc64-little) | ||
1036 | basic_machine=powerpc64le-unknown | ||
1037 | ;; | ||
1038 | ppc64le-* | powerpc64little-*) | ||
1039 | basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` | ||
1040 | ;; | 885 | ;; |
1041 | ps2) | 886 | ps2) |
1042 | basic_machine=i386-ibm | 887 | cpu=i386 |
1043 | ;; | 888 | vendor=ibm |
1044 | pw32) | ||
1045 | basic_machine=i586-unknown | ||
1046 | os=-pw32 | ||
1047 | ;; | ||
1048 | rdos | rdos64) | ||
1049 | basic_machine=x86_64-pc | ||
1050 | os=-rdos | ||
1051 | ;; | ||
1052 | rdos32) | ||
1053 | basic_machine=i386-pc | ||
1054 | os=-rdos | ||
1055 | ;; | ||
1056 | rom68k) | ||
1057 | basic_machine=m68k-rom68k | ||
1058 | os=-coff | ||
1059 | ;; | 889 | ;; |
1060 | rm[46]00) | 890 | rm[46]00) |
1061 | basic_machine=mips-siemens | 891 | cpu=mips |
892 | vendor=siemens | ||
1062 | ;; | 893 | ;; |
1063 | rtpc | rtpc-*) | 894 | rtpc | rtpc-*) |
1064 | basic_machine=romp-ibm | 895 | cpu=romp |
1065 | ;; | 896 | vendor=ibm |
1066 | s390 | s390-*) | ||
1067 | basic_machine=s390-ibm | ||
1068 | ;; | 897 | ;; |
1069 | s390x | s390x-*) | 898 | sde) |
1070 | basic_machine=s390x-ibm | 899 | cpu=mipsisa32 |
1071 | ;; | 900 | vendor=sde |
1072 | sa29200) | 901 | basic_os=${basic_os:-elf} |
1073 | basic_machine=a29k-amd | ||
1074 | os=-udi | ||
1075 | ;; | 902 | ;; |
1076 | sb1) | 903 | simso-wrs) |
1077 | basic_machine=mipsisa64sb1-unknown | 904 | cpu=sparclite |
905 | vendor=wrs | ||
906 | basic_os=vxworks | ||
1078 | ;; | 907 | ;; |
1079 | sb1el) | 908 | tower | tower-32) |
1080 | basic_machine=mipsisa64sb1el-unknown | 909 | cpu=m68k |
910 | vendor=ncr | ||
1081 | ;; | 911 | ;; |
1082 | sde) | 912 | vpp*|vx|vx-*) |
1083 | basic_machine=mipsisa32-sde | 913 | cpu=f301 |
1084 | os=-elf | 914 | vendor=fujitsu |
1085 | ;; | 915 | ;; |
1086 | sei) | 916 | w65) |
1087 | basic_machine=mips-sei | 917 | cpu=w65 |
1088 | os=-seiux | 918 | vendor=wdc |
1089 | ;; | 919 | ;; |
1090 | sequent) | 920 | w89k-*) |
1091 | basic_machine=i386-sequent | 921 | cpu=hppa1.1 |
922 | vendor=winbond | ||
923 | basic_os=proelf | ||
1092 | ;; | 924 | ;; |
1093 | sh) | 925 | none) |
1094 | basic_machine=sh-hitachi | 926 | cpu=none |
1095 | os=-hms | 927 | vendor=none |
1096 | ;; | 928 | ;; |
1097 | sh5el) | 929 | leon|leon[3-9]) |
1098 | basic_machine=sh5le-unknown | 930 | cpu=sparc |
931 | vendor=$basic_machine | ||
1099 | ;; | 932 | ;; |
1100 | sh64) | 933 | leon-*|leon[3-9]-*) |
1101 | basic_machine=sh64-unknown | 934 | cpu=sparc |
935 | vendor=`echo "$basic_machine" | sed 's/-.*//'` | ||
1102 | ;; | 936 | ;; |
1103 | sparclite-wrs | simso-wrs) | 937 | |
1104 | basic_machine=sparclite-wrs | 938 | *-*) |
1105 | os=-vxworks | 939 | # shellcheck disable=SC2162 |
940 | saved_IFS=$IFS | ||
941 | IFS="-" read cpu vendor <<EOF | ||
942 | $basic_machine | ||
943 | EOF | ||
944 | IFS=$saved_IFS | ||
1106 | ;; | 945 | ;; |
1107 | sps7) | 946 | # We use `pc' rather than `unknown' |
1108 | basic_machine=m68k-bull | 947 | # because (1) that's what they normally are, and |
1109 | os=-sysv2 | 948 | # (2) the word "unknown" tends to confuse beginning users. |
949 | i*86 | x86_64) | ||
950 | cpu=$basic_machine | ||
951 | vendor=pc | ||
1110 | ;; | 952 | ;; |
1111 | spur) | 953 | # These rules are duplicated from below for sake of the special case above; |
1112 | basic_machine=spur-unknown | 954 | # i.e. things that normalized to x86 arches should also default to "pc" |
955 | pc98) | ||
956 | cpu=i386 | ||
957 | vendor=pc | ||
1113 | ;; | 958 | ;; |
1114 | st2000) | 959 | x64 | amd64) |
1115 | basic_machine=m68k-tandem | 960 | cpu=x86_64 |
961 | vendor=pc | ||
1116 | ;; | 962 | ;; |
1117 | stratus) | 963 | # Recognize the basic CPU types without company name. |
1118 | basic_machine=i860-stratus | 964 | *) |
1119 | os=-sysv4 | 965 | cpu=$basic_machine |
966 | vendor=unknown | ||
1120 | ;; | 967 | ;; |
1121 | strongarm-* | thumb-*) | 968 | esac |
1122 | basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` | 969 | |
970 | unset -v basic_machine | ||
971 | |||
972 | # Decode basic machines in the full and proper CPU-Company form. | ||
973 | case $cpu-$vendor in | ||
974 | # Here we handle the default manufacturer of certain CPU types in canonical form. It is in | ||
975 | # some cases the only manufacturer, in others, it is the most popular. | ||
976 | craynv-unknown) | ||
977 | vendor=cray | ||
978 | basic_os=${basic_os:-unicosmp} | ||
1123 | ;; | 979 | ;; |
1124 | sun2) | 980 | c90-unknown | c90-cray) |
1125 | basic_machine=m68000-sun | 981 | vendor=cray |
982 | basic_os=${Basic_os:-unicos} | ||
1126 | ;; | 983 | ;; |
1127 | sun2os3) | 984 | fx80-unknown) |
1128 | basic_machine=m68000-sun | 985 | vendor=alliant |
1129 | os=-sunos3 | ||
1130 | ;; | 986 | ;; |
1131 | sun2os4) | 987 | romp-unknown) |
1132 | basic_machine=m68000-sun | 988 | vendor=ibm |
1133 | os=-sunos4 | ||
1134 | ;; | 989 | ;; |
1135 | sun3os3) | 990 | mmix-unknown) |
1136 | basic_machine=m68k-sun | 991 | vendor=knuth |
1137 | os=-sunos3 | ||
1138 | ;; | 992 | ;; |
1139 | sun3os4) | 993 | microblaze-unknown | microblazeel-unknown) |
1140 | basic_machine=m68k-sun | 994 | vendor=xilinx |
1141 | os=-sunos4 | ||
1142 | ;; | 995 | ;; |
1143 | sun4os3) | 996 | rs6000-unknown) |
1144 | basic_machine=sparc-sun | 997 | vendor=ibm |
1145 | os=-sunos3 | ||
1146 | ;; | 998 | ;; |
1147 | sun4os4) | 999 | vax-unknown) |
1148 | basic_machine=sparc-sun | 1000 | vendor=dec |
1149 | os=-sunos4 | ||
1150 | ;; | 1001 | ;; |
1151 | sun4sol2) | 1002 | pdp11-unknown) |
1152 | basic_machine=sparc-sun | 1003 | vendor=dec |
1153 | os=-solaris2 | ||
1154 | ;; | 1004 | ;; |
1155 | sun3 | sun3-*) | 1005 | we32k-unknown) |
1156 | basic_machine=m68k-sun | 1006 | vendor=att |
1157 | ;; | 1007 | ;; |
1158 | sun4) | 1008 | cydra-unknown) |
1159 | basic_machine=sparc-sun | 1009 | vendor=cydrome |
1160 | ;; | 1010 | ;; |
1161 | sun386 | sun386i | roadrunner) | 1011 | i370-ibm*) |
1162 | basic_machine=i386-sun | 1012 | vendor=ibm |
1163 | ;; | 1013 | ;; |
1164 | sv1) | 1014 | orion-unknown) |
1165 | basic_machine=sv1-cray | 1015 | vendor=highlevel |
1166 | os=-unicos | ||
1167 | ;; | 1016 | ;; |
1168 | symmetry) | 1017 | xps-unknown | xps100-unknown) |
1169 | basic_machine=i386-sequent | 1018 | cpu=xps100 |
1170 | os=-dynix | 1019 | vendor=honeywell |
1171 | ;; | 1020 | ;; |
1172 | t3e) | 1021 | |
1173 | basic_machine=alphaev5-cray | 1022 | # Here we normalize CPU types with a missing or matching vendor |
1174 | os=-unicos | 1023 | armh-unknown | armh-alt) |
1024 | cpu=armv7l | ||
1025 | vendor=alt | ||
1026 | basic_os=${basic_os:-linux-gnueabihf} | ||
1175 | ;; | 1027 | ;; |
1176 | t90) | 1028 | dpx20-unknown | dpx20-bull) |
1177 | basic_machine=t90-cray | 1029 | cpu=rs6000 |
1178 | os=-unicos | 1030 | vendor=bull |
1031 | basic_os=${basic_os:-bosx} | ||
1179 | ;; | 1032 | ;; |
1180 | tile*) | 1033 | |
1181 | basic_machine=$basic_machine-unknown | 1034 | # Here we normalize CPU types irrespective of the vendor |
1182 | os=-linux-gnu | 1035 | amd64-*) |
1036 | cpu=x86_64 | ||
1183 | ;; | 1037 | ;; |
1184 | tx39) | 1038 | blackfin-*) |
1185 | basic_machine=mipstx39-unknown | 1039 | cpu=bfin |
1040 | basic_os=linux | ||
1186 | ;; | 1041 | ;; |
1187 | tx39el) | 1042 | c54x-*) |
1188 | basic_machine=mipstx39el-unknown | 1043 | cpu=tic54x |
1189 | ;; | 1044 | ;; |
1190 | toad1) | 1045 | c55x-*) |
1191 | basic_machine=pdp10-xkl | 1046 | cpu=tic55x |
1192 | os=-tops20 | ||
1193 | ;; | 1047 | ;; |
1194 | tower | tower-32) | 1048 | c6x-*) |
1195 | basic_machine=m68k-ncr | 1049 | cpu=tic6x |
1196 | ;; | 1050 | ;; |
1197 | tpf) | 1051 | e500v[12]-*) |
1198 | basic_machine=s390x-ibm | 1052 | cpu=powerpc |
1199 | os=-tpf | 1053 | basic_os=${basic_os}"spe" |
1200 | ;; | 1054 | ;; |
1201 | udi29k) | 1055 | mips3*-*) |
1202 | basic_machine=a29k-amd | 1056 | cpu=mips64 |
1203 | os=-udi | ||
1204 | ;; | 1057 | ;; |
1205 | ultra3) | 1058 | ms1-*) |
1206 | basic_machine=a29k-nyu | 1059 | cpu=mt |
1207 | os=-sym1 | ||
1208 | ;; | 1060 | ;; |
1209 | v810 | necv810) | 1061 | m68knommu-*) |
1210 | basic_machine=v810-nec | 1062 | cpu=m68k |
1211 | os=-none | 1063 | basic_os=linux |
1212 | ;; | 1064 | ;; |
1213 | vaxv) | 1065 | m9s12z-* | m68hcs12z-* | hcs12z-* | s12z-*) |
1214 | basic_machine=vax-dec | 1066 | cpu=s12z |
1215 | os=-sysv | ||
1216 | ;; | 1067 | ;; |
1217 | vms) | 1068 | openrisc-*) |
1218 | basic_machine=vax-dec | 1069 | cpu=or32 |
1219 | os=-vms | ||
1220 | ;; | 1070 | ;; |
1221 | vpp*|vx|vx-*) | 1071 | parisc-*) |
1222 | basic_machine=f301-fujitsu | 1072 | cpu=hppa |
1073 | basic_os=linux | ||
1223 | ;; | 1074 | ;; |
1224 | vxworks960) | 1075 | pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) |
1225 | basic_machine=i960-wrs | 1076 | cpu=i586 |
1226 | os=-vxworks | ||
1227 | ;; | 1077 | ;; |
1228 | vxworks68) | 1078 | pentiumpro-* | p6-* | 6x86-* | athlon-* | athalon_*-*) |
1229 | basic_machine=m68k-wrs | 1079 | cpu=i686 |
1230 | os=-vxworks | ||
1231 | ;; | 1080 | ;; |
1232 | vxworks29k) | 1081 | pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) |
1233 | basic_machine=a29k-wrs | 1082 | cpu=i686 |
1234 | os=-vxworks | ||
1235 | ;; | 1083 | ;; |
1236 | w65*) | 1084 | pentium4-*) |
1237 | basic_machine=w65-wdc | 1085 | cpu=i786 |
1238 | os=-none | ||
1239 | ;; | 1086 | ;; |
1240 | w89k-*) | 1087 | pc98-*) |
1241 | basic_machine=hppa1.1-winbond | 1088 | cpu=i386 |
1242 | os=-proelf | ||
1243 | ;; | 1089 | ;; |
1244 | xbox) | 1090 | ppc-* | ppcbe-*) |
1245 | basic_machine=i686-pc | 1091 | cpu=powerpc |
1246 | os=-mingw32 | ||
1247 | ;; | 1092 | ;; |
1248 | xps | xps100) | 1093 | ppcle-* | powerpclittle-*) |
1249 | basic_machine=xps100-honeywell | 1094 | cpu=powerpcle |
1250 | ;; | 1095 | ;; |
1251 | xscale-* | xscalee[bl]-*) | 1096 | ppc64-*) |
1252 | basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` | 1097 | cpu=powerpc64 |
1253 | ;; | 1098 | ;; |
1254 | ymp) | 1099 | ppc64le-* | powerpc64little-*) |
1255 | basic_machine=ymp-cray | 1100 | cpu=powerpc64le |
1256 | os=-unicos | ||
1257 | ;; | 1101 | ;; |
1258 | z8k-*-coff) | 1102 | sb1-*) |
1259 | basic_machine=z8k-unknown | 1103 | cpu=mipsisa64sb1 |
1260 | os=-sim | ||
1261 | ;; | 1104 | ;; |
1262 | z80-*-coff) | 1105 | sb1el-*) |
1263 | basic_machine=z80-unknown | 1106 | cpu=mipsisa64sb1el |
1264 | os=-sim | ||
1265 | ;; | 1107 | ;; |
1266 | none) | 1108 | sh5e[lb]-*) |
1267 | basic_machine=none-none | 1109 | cpu=`echo "$cpu" | sed 's/^\(sh.\)e\(.\)$/\1\2e/'` |
1268 | os=-none | ||
1269 | ;; | 1110 | ;; |
1270 | 1111 | spur-*) | |
1271 | # Here we handle the default manufacturer of certain CPU types. It is in | 1112 | cpu=spur |
1272 | # some cases the only manufacturer, in others, it is the most popular. | ||
1273 | w89k) | ||
1274 | basic_machine=hppa1.1-winbond | ||
1275 | ;; | 1113 | ;; |
1276 | op50n) | 1114 | strongarm-* | thumb-*) |
1277 | basic_machine=hppa1.1-oki | 1115 | cpu=arm |
1278 | ;; | 1116 | ;; |
1279 | op60c) | 1117 | tx39-*) |
1280 | basic_machine=hppa1.1-oki | 1118 | cpu=mipstx39 |
1281 | ;; | 1119 | ;; |
1282 | romp) | 1120 | tx39el-*) |
1283 | basic_machine=romp-ibm | 1121 | cpu=mipstx39el |
1284 | ;; | 1122 | ;; |
1285 | mmix) | 1123 | x64-*) |
1286 | basic_machine=mmix-knuth | 1124 | cpu=x86_64 |
1287 | ;; | 1125 | ;; |
1288 | rs6000) | 1126 | xscale-* | xscalee[bl]-*) |
1289 | basic_machine=rs6000-ibm | 1127 | cpu=`echo "$cpu" | sed 's/^xscale/arm/'` |
1290 | ;; | 1128 | ;; |
1291 | vax) | 1129 | arm64-* | aarch64le-*) |
1292 | basic_machine=vax-dec | 1130 | cpu=aarch64 |
1293 | ;; | 1131 | ;; |
1294 | pdp10) | 1132 | |
1295 | # there are many clones, so DEC is not a safe bet | 1133 | # Recognize the canonical CPU Types that limit and/or modify the |
1296 | basic_machine=pdp10-unknown | 1134 | # company names they are paired with. |
1135 | cr16-*) | ||
1136 | basic_os=${basic_os:-elf} | ||
1297 | ;; | 1137 | ;; |
1298 | pdp11) | 1138 | crisv32-* | etraxfs*-*) |
1299 | basic_machine=pdp11-dec | 1139 | cpu=crisv32 |
1140 | vendor=axis | ||
1300 | ;; | 1141 | ;; |
1301 | we32k) | 1142 | cris-* | etrax*-*) |
1302 | basic_machine=we32k-att | 1143 | cpu=cris |
1144 | vendor=axis | ||
1303 | ;; | 1145 | ;; |
1304 | sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) | 1146 | crx-*) |
1305 | basic_machine=sh-unknown | 1147 | basic_os=${basic_os:-elf} |
1306 | ;; | 1148 | ;; |
1307 | sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) | 1149 | neo-tandem) |
1308 | basic_machine=sparc-sun | 1150 | cpu=neo |
1151 | vendor=tandem | ||
1309 | ;; | 1152 | ;; |
1310 | cydra) | 1153 | nse-tandem) |
1311 | basic_machine=cydra-cydrome | 1154 | cpu=nse |
1155 | vendor=tandem | ||
1312 | ;; | 1156 | ;; |
1313 | orion) | 1157 | nsr-tandem) |
1314 | basic_machine=orion-highlevel | 1158 | cpu=nsr |
1159 | vendor=tandem | ||
1315 | ;; | 1160 | ;; |
1316 | orion105) | 1161 | nsv-tandem) |
1317 | basic_machine=clipper-highlevel | 1162 | cpu=nsv |
1163 | vendor=tandem | ||
1318 | ;; | 1164 | ;; |
1319 | mac | mpw | mac-mpw) | 1165 | nsx-tandem) |
1320 | basic_machine=m68k-apple | 1166 | cpu=nsx |
1167 | vendor=tandem | ||
1321 | ;; | 1168 | ;; |
1322 | pmac | pmac-mpw) | 1169 | mipsallegrexel-sony) |
1323 | basic_machine=powerpc-apple | 1170 | cpu=mipsallegrexel |
1171 | vendor=sony | ||
1324 | ;; | 1172 | ;; |
1325 | *-unknown) | 1173 | tile*-*) |
1326 | # Make sure to match an already-canonicalized machine name. | 1174 | basic_os=${basic_os:-linux-gnu} |
1327 | ;; | 1175 | ;; |
1176 | |||
1328 | *) | 1177 | *) |
1329 | echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 | 1178 | # Recognize the canonical CPU types that are allowed with any |
1330 | exit 1 | 1179 | # company name. |
1180 | case $cpu in | ||
1181 | 1750a | 580 \ | ||
1182 | | a29k \ | ||
1183 | | aarch64 | aarch64_be \ | ||
1184 | | abacus \ | ||
1185 | | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \ | ||
1186 | | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \ | ||
1187 | | alphapca5[67] | alpha64pca5[67] \ | ||
1188 | | am33_2.0 \ | ||
1189 | | amdgcn \ | ||
1190 | | arc | arceb | arc32 | arc64 \ | ||
1191 | | arm | arm[lb]e | arme[lb] | armv* \ | ||
1192 | | avr | avr32 \ | ||
1193 | | asmjs \ | ||
1194 | | ba \ | ||
1195 | | be32 | be64 \ | ||
1196 | | bfin | bpf | bs2000 \ | ||
1197 | | c[123]* | c30 | [cjt]90 | c4x \ | ||
1198 | | c8051 | clipper | craynv | csky | cydra \ | ||
1199 | | d10v | d30v | dlx | dsp16xx \ | ||
1200 | | e2k | elxsi | epiphany \ | ||
1201 | | f30[01] | f700 | fido | fr30 | frv | ft32 | fx80 \ | ||
1202 | | h8300 | h8500 \ | ||
1203 | | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | ||
1204 | | hexagon \ | ||
1205 | | i370 | i*86 | i860 | i960 | ia16 | ia64 \ | ||
1206 | | ip2k | iq2000 \ | ||
1207 | | k1om \ | ||
1208 | | le32 | le64 \ | ||
1209 | | lm32 \ | ||
1210 | | loongarch32 | loongarch64 \ | ||
1211 | | m32c | m32r | m32rle \ | ||
1212 | | m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k \ | ||
1213 | | m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \ | ||
1214 | | m88110 | m88k | maxq | mb | mcore | mep | metag \ | ||
1215 | | microblaze | microblazeel \ | ||
1216 | | mips | mipsbe | mipseb | mipsel | mipsle \ | ||
1217 | | mips16 \ | ||
1218 | | mips64 | mips64eb | mips64el \ | ||
1219 | | mips64octeon | mips64octeonel \ | ||
1220 | | mips64orion | mips64orionel \ | ||
1221 | | mips64r5900 | mips64r5900el \ | ||
1222 | | mips64vr | mips64vrel \ | ||
1223 | | mips64vr4100 | mips64vr4100el \ | ||
1224 | | mips64vr4300 | mips64vr4300el \ | ||
1225 | | mips64vr5000 | mips64vr5000el \ | ||
1226 | | mips64vr5900 | mips64vr5900el \ | ||
1227 | | mipsisa32 | mipsisa32el \ | ||
1228 | | mipsisa32r2 | mipsisa32r2el \ | ||
1229 | | mipsisa32r3 | mipsisa32r3el \ | ||
1230 | | mipsisa32r5 | mipsisa32r5el \ | ||
1231 | | mipsisa32r6 | mipsisa32r6el \ | ||
1232 | | mipsisa64 | mipsisa64el \ | ||
1233 | | mipsisa64r2 | mipsisa64r2el \ | ||
1234 | | mipsisa64r3 | mipsisa64r3el \ | ||
1235 | | mipsisa64r5 | mipsisa64r5el \ | ||
1236 | | mipsisa64r6 | mipsisa64r6el \ | ||
1237 | | mipsisa64sb1 | mipsisa64sb1el \ | ||
1238 | | mipsisa64sr71k | mipsisa64sr71kel \ | ||
1239 | | mipsr5900 | mipsr5900el \ | ||
1240 | | mipstx39 | mipstx39el \ | ||
1241 | | mmix \ | ||
1242 | | mn10200 | mn10300 \ | ||
1243 | | moxie \ | ||
1244 | | mt \ | ||
1245 | | msp430 \ | ||
1246 | | nds32 | nds32le | nds32be \ | ||
1247 | | nfp \ | ||
1248 | | nios | nios2 | nios2eb | nios2el \ | ||
1249 | | none | np1 | ns16k | ns32k | nvptx \ | ||
1250 | | open8 \ | ||
1251 | | or1k* \ | ||
1252 | | or32 \ | ||
1253 | | orion \ | ||
1254 | | picochip \ | ||
1255 | | pdp10 | pdp11 | pj | pjl | pn | power \ | ||
1256 | | powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \ | ||
1257 | | pru \ | ||
1258 | | pyramid \ | ||
1259 | | riscv | riscv32 | riscv32be | riscv64 | riscv64be \ | ||
1260 | | rl78 | romp | rs6000 | rx \ | ||
1261 | | s390 | s390x \ | ||
1262 | | score \ | ||
1263 | | sh | shl \ | ||
1264 | | sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \ | ||
1265 | | sh[1234]e[lb] | sh[12345][lb]e | sh[23]ele | sh64 | sh64le \ | ||
1266 | | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet \ | ||
1267 | | sparclite \ | ||
1268 | | sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \ | ||
1269 | | spu \ | ||
1270 | | tahoe \ | ||
1271 | | thumbv7* \ | ||
1272 | | tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \ | ||
1273 | | tron \ | ||
1274 | | ubicom32 \ | ||
1275 | | v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \ | ||
1276 | | vax \ | ||
1277 | | visium \ | ||
1278 | | w65 \ | ||
1279 | | wasm32 | wasm64 \ | ||
1280 | | we32k \ | ||
1281 | | x86 | x86_64 | xc16x | xgate | xps100 \ | ||
1282 | | xstormy16 | xtensa* \ | ||
1283 | | ymp \ | ||
1284 | | z8k | z80) | ||
1285 | ;; | ||
1286 | |||
1287 | *) | ||
1288 | echo Invalid configuration \`"$1"\': machine \`"$cpu-$vendor"\' not recognized 1>&2 | ||
1289 | exit 1 | ||
1290 | ;; | ||
1291 | esac | ||
1331 | ;; | 1292 | ;; |
1332 | esac | 1293 | esac |
1333 | 1294 | ||
1334 | # Here we canonicalize certain aliases for manufacturers. | 1295 | # Here we canonicalize certain aliases for manufacturers. |
1335 | case $basic_machine in | 1296 | case $vendor in |
1336 | *-digital*) | 1297 | digital*) |
1337 | basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` | 1298 | vendor=dec |
1338 | ;; | 1299 | ;; |
1339 | *-commodore*) | 1300 | commodore*) |
1340 | basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` | 1301 | vendor=cbm |
1341 | ;; | 1302 | ;; |
1342 | *) | 1303 | *) |
1343 | ;; | 1304 | ;; |
@@ -1345,201 +1306,219 @@ esac | |||
1345 | 1306 | ||
1346 | # Decode manufacturer-specific aliases for certain operating systems. | 1307 | # Decode manufacturer-specific aliases for certain operating systems. |
1347 | 1308 | ||
1348 | if [ x"$os" != x"" ] | 1309 | if test x$basic_os != x |
1349 | then | 1310 | then |
1311 | |||
1312 | # First recognize some ad-hoc cases, or perhaps split kernel-os, or else just | ||
1313 | # set os. | ||
1314 | case $basic_os in | ||
1315 | gnu/linux*) | ||
1316 | kernel=linux | ||
1317 | os=`echo "$basic_os" | sed -e 's|gnu/linux|gnu|'` | ||
1318 | ;; | ||
1319 | os2-emx) | ||
1320 | kernel=os2 | ||
1321 | os=`echo "$basic_os" | sed -e 's|os2-emx|emx|'` | ||
1322 | ;; | ||
1323 | nto-qnx*) | ||
1324 | kernel=nto | ||
1325 | os=`echo "$basic_os" | sed -e 's|nto-qnx|qnx|'` | ||
1326 | ;; | ||
1327 | *-*) | ||
1328 | # shellcheck disable=SC2162 | ||
1329 | saved_IFS=$IFS | ||
1330 | IFS="-" read kernel os <<EOF | ||
1331 | $basic_os | ||
1332 | EOF | ||
1333 | IFS=$saved_IFS | ||
1334 | ;; | ||
1335 | # Default OS when just kernel was specified | ||
1336 | nto*) | ||
1337 | kernel=nto | ||
1338 | os=`echo "$basic_os" | sed -e 's|nto|qnx|'` | ||
1339 | ;; | ||
1340 | linux*) | ||
1341 | kernel=linux | ||
1342 | os=`echo "$basic_os" | sed -e 's|linux|gnu|'` | ||
1343 | ;; | ||
1344 | managarm*) | ||
1345 | kernel=managarm | ||
1346 | os=`echo "$basic_os" | sed -e 's|managarm|mlibc|'` | ||
1347 | ;; | ||
1348 | *) | ||
1349 | kernel= | ||
1350 | os=$basic_os | ||
1351 | ;; | ||
1352 | esac | ||
1353 | |||
1354 | # Now, normalize the OS (knowing we just have one component, it's not a kernel, | ||
1355 | # etc.) | ||
1350 | case $os in | 1356 | case $os in |
1351 | # First match some system type aliases | 1357 | # First match some system type aliases that might get confused |
1352 | # that might get confused with valid system types. | 1358 | # with valid system types. |
1353 | # -solaris* is a basic system type, with this one exception. | 1359 | # solaris* is a basic system type, with this one exception. |
1354 | -auroraux) | 1360 | auroraux) |
1355 | os=-auroraux | 1361 | os=auroraux |
1356 | ;; | 1362 | ;; |
1357 | -solaris1 | -solaris1.*) | 1363 | bluegene*) |
1358 | os=`echo $os | sed -e 's|solaris1|sunos4|'` | 1364 | os=cnk |
1359 | ;; | 1365 | ;; |
1360 | -solaris) | 1366 | solaris1 | solaris1.*) |
1361 | os=-solaris2 | 1367 | os=`echo "$os" | sed -e 's|solaris1|sunos4|'` |
1362 | ;; | 1368 | ;; |
1363 | -svr4*) | 1369 | solaris) |
1364 | os=-sysv4 | 1370 | os=solaris2 |
1365 | ;; | 1371 | ;; |
1366 | -unixware*) | 1372 | unixware*) |
1367 | os=-sysv4.2uw | 1373 | os=sysv4.2uw |
1368 | ;; | 1374 | ;; |
1369 | -gnu/linux*) | 1375 | # es1800 is here to avoid being matched by es* (a different OS) |
1370 | os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` | 1376 | es1800*) |
1377 | os=ose | ||
1371 | ;; | 1378 | ;; |
1372 | # First accept the basic system types. | 1379 | # Some version numbers need modification |
1373 | # The portable systems comes first. | 1380 | chorusos*) |
1374 | # Each alternative MUST END IN A *, to match a version number. | 1381 | os=chorusos |
1375 | # -sysv* is not here because it comes later, after sysvr4. | ||
1376 | -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ | ||
1377 | | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ | ||
1378 | | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ | ||
1379 | | -sym* | -kopensolaris* | -plan9* \ | ||
1380 | | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ | ||
1381 | | -aos* | -aros* | -cloudabi* | -sortix* \ | ||
1382 | | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | ||
1383 | | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | ||
1384 | | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ | ||
1385 | | -bitrig* | -openbsd* | -solidbsd* \ | ||
1386 | | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ | ||
1387 | | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | ||
1388 | | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | ||
1389 | | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | ||
1390 | | -chorusos* | -chorusrdb* | -cegcc* \ | ||
1391 | | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | ||
1392 | | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ | ||
1393 | | -linux-newlib* | -linux-musl* | -linux-uclibc* \ | ||
1394 | | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ | ||
1395 | | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | ||
1396 | | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ | ||
1397 | | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ | ||
1398 | | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | ||
1399 | | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ | ||
1400 | | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ | ||
1401 | | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \ | ||
1402 | | -onefs* | -tirtos*) | ||
1403 | # Remember, each alternative MUST END IN *, to match a version number. | ||
1404 | ;; | ||
1405 | -qnx*) | ||
1406 | case $basic_machine in | ||
1407 | x86-* | i*86-*) | ||
1408 | ;; | ||
1409 | *) | ||
1410 | os=-nto$os | ||
1411 | ;; | ||
1412 | esac | ||
1413 | ;; | 1382 | ;; |
1414 | -nto-qnx*) | 1383 | isc) |
1384 | os=isc2.2 | ||
1415 | ;; | 1385 | ;; |
1416 | -nto*) | 1386 | sco6) |
1417 | os=`echo $os | sed -e 's|nto|nto-qnx|'` | 1387 | os=sco5v6 |
1418 | ;; | 1388 | ;; |
1419 | -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ | 1389 | sco5) |
1420 | | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ | 1390 | os=sco3.2v5 |
1421 | | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) | ||
1422 | ;; | 1391 | ;; |
1423 | -mac*) | 1392 | sco4) |
1424 | os=`echo $os | sed -e 's|mac|macos|'` | 1393 | os=sco3.2v4 |
1425 | ;; | 1394 | ;; |
1426 | -linux-dietlibc) | 1395 | sco3.2.[4-9]*) |
1427 | os=-linux-dietlibc | 1396 | os=`echo "$os" | sed -e 's/sco3.2./sco3.2v/'` |
1428 | ;; | 1397 | ;; |
1429 | -linux*) | 1398 | sco*v* | scout) |
1430 | os=`echo $os | sed -e 's|linux|linux-gnu|'` | 1399 | # Don't match below |
1431 | ;; | 1400 | ;; |
1432 | -sunos5*) | 1401 | sco*) |
1433 | os=`echo $os | sed -e 's|sunos5|solaris2|'` | 1402 | os=sco3.2v2 |
1434 | ;; | 1403 | ;; |
1435 | -sunos6*) | 1404 | psos*) |
1436 | os=`echo $os | sed -e 's|sunos6|solaris3|'` | 1405 | os=psos |
1437 | ;; | 1406 | ;; |
1438 | -opened*) | 1407 | qnx*) |
1439 | os=-openedition | 1408 | os=qnx |
1440 | ;; | 1409 | ;; |
1441 | -os400*) | 1410 | hiux*) |
1442 | os=-os400 | 1411 | os=hiuxwe2 |
1443 | ;; | 1412 | ;; |
1444 | -wince*) | 1413 | lynx*178) |
1445 | os=-wince | 1414 | os=lynxos178 |
1446 | ;; | 1415 | ;; |
1447 | -osfrose*) | 1416 | lynx*5) |
1448 | os=-osfrose | 1417 | os=lynxos5 |
1449 | ;; | 1418 | ;; |
1450 | -osf*) | 1419 | lynxos*) |
1451 | os=-osf | 1420 | # don't get caught up in next wildcard |
1452 | ;; | 1421 | ;; |
1453 | -utek*) | 1422 | lynx*) |
1454 | os=-bsd | 1423 | os=lynxos |
1455 | ;; | 1424 | ;; |
1456 | -dynix*) | 1425 | mac[0-9]*) |
1457 | os=-bsd | 1426 | os=`echo "$os" | sed -e 's|mac|macos|'` |
1458 | ;; | 1427 | ;; |
1459 | -acis*) | 1428 | opened*) |
1460 | os=-aos | 1429 | os=openedition |
1461 | ;; | 1430 | ;; |
1462 | -atheos*) | 1431 | os400*) |
1463 | os=-atheos | 1432 | os=os400 |
1464 | ;; | 1433 | ;; |
1465 | -syllable*) | 1434 | sunos5*) |
1466 | os=-syllable | 1435 | os=`echo "$os" | sed -e 's|sunos5|solaris2|'` |
1467 | ;; | 1436 | ;; |
1468 | -386bsd) | 1437 | sunos6*) |
1469 | os=-bsd | 1438 | os=`echo "$os" | sed -e 's|sunos6|solaris3|'` |
1470 | ;; | 1439 | ;; |
1471 | -ctix* | -uts*) | 1440 | wince*) |
1472 | os=-sysv | 1441 | os=wince |
1473 | ;; | 1442 | ;; |
1474 | -nova*) | 1443 | utek*) |
1475 | os=-rtmk-nova | 1444 | os=bsd |
1476 | ;; | 1445 | ;; |
1477 | -ns2 ) | 1446 | dynix*) |
1478 | os=-nextstep2 | 1447 | os=bsd |
1479 | ;; | 1448 | ;; |
1480 | -nsk*) | 1449 | acis*) |
1481 | os=-nsk | 1450 | os=aos |
1482 | ;; | 1451 | ;; |
1483 | # Preserve the version number of sinix5. | 1452 | atheos*) |
1484 | -sinix5.*) | 1453 | os=atheos |
1485 | os=`echo $os | sed -e 's|sinix|sysv|'` | ||
1486 | ;; | 1454 | ;; |
1487 | -sinix*) | 1455 | syllable*) |
1488 | os=-sysv4 | 1456 | os=syllable |
1489 | ;; | 1457 | ;; |
1490 | -tpf*) | 1458 | 386bsd) |
1491 | os=-tpf | 1459 | os=bsd |
1492 | ;; | 1460 | ;; |
1493 | -triton*) | 1461 | ctix* | uts*) |
1494 | os=-sysv3 | 1462 | os=sysv |
1495 | ;; | 1463 | ;; |
1496 | -oss*) | 1464 | nova*) |
1497 | os=-sysv3 | 1465 | os=rtmk-nova |
1498 | ;; | 1466 | ;; |
1499 | -svr4) | 1467 | ns2) |
1500 | os=-sysv4 | 1468 | os=nextstep2 |
1501 | ;; | 1469 | ;; |
1502 | -svr3) | 1470 | # Preserve the version number of sinix5. |
1503 | os=-sysv3 | 1471 | sinix5.*) |
1472 | os=`echo "$os" | sed -e 's|sinix|sysv|'` | ||
1504 | ;; | 1473 | ;; |
1505 | -sysvr4) | 1474 | sinix*) |
1506 | os=-sysv4 | 1475 | os=sysv4 |
1507 | ;; | 1476 | ;; |
1508 | # This must come after -sysvr4. | 1477 | tpf*) |
1509 | -sysv*) | 1478 | os=tpf |
1510 | ;; | 1479 | ;; |
1511 | -ose*) | 1480 | triton*) |
1512 | os=-ose | 1481 | os=sysv3 |
1513 | ;; | 1482 | ;; |
1514 | -es1800*) | 1483 | oss*) |
1515 | os=-ose | 1484 | os=sysv3 |
1516 | ;; | 1485 | ;; |
1517 | -xenix) | 1486 | svr4*) |
1518 | os=-xenix | 1487 | os=sysv4 |
1519 | ;; | 1488 | ;; |
1520 | -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) | 1489 | svr3) |
1521 | os=-mint | 1490 | os=sysv3 |
1522 | ;; | 1491 | ;; |
1523 | -aros*) | 1492 | sysvr4) |
1524 | os=-aros | 1493 | os=sysv4 |
1525 | ;; | 1494 | ;; |
1526 | -zvmoe) | 1495 | ose*) |
1527 | os=-zvmoe | 1496 | os=ose |
1528 | ;; | 1497 | ;; |
1529 | -dicos*) | 1498 | *mint | mint[0-9]* | *MiNT | MiNT[0-9]*) |
1530 | os=-dicos | 1499 | os=mint |
1531 | ;; | 1500 | ;; |
1532 | -nacl*) | 1501 | dicos*) |
1502 | os=dicos | ||
1533 | ;; | 1503 | ;; |
1534 | -none) | 1504 | pikeos*) |
1505 | # Until real need of OS specific support for | ||
1506 | # particular features comes up, bare metal | ||
1507 | # configurations are quite functional. | ||
1508 | case $cpu in | ||
1509 | arm*) | ||
1510 | os=eabi | ||
1511 | ;; | ||
1512 | *) | ||
1513 | os=elf | ||
1514 | ;; | ||
1515 | esac | ||
1535 | ;; | 1516 | ;; |
1536 | *) | 1517 | *) |
1537 | # Get rid of the `-' at the beginning of $os. | 1518 | # No normalization, but not necessarily accepted, that comes below. |
1538 | os=`echo $os | sed 's/[^-]*-//'` | ||
1539 | echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 | ||
1540 | exit 1 | ||
1541 | ;; | 1519 | ;; |
1542 | esac | 1520 | esac |
1521 | |||
1543 | else | 1522 | else |
1544 | 1523 | ||
1545 | # Here we handle the default operating systems that come with various machines. | 1524 | # Here we handle the default operating systems that come with various machines. |
@@ -1552,261 +1531,376 @@ else | |||
1552 | # will signal an error saying that MANUFACTURER isn't an operating | 1531 | # will signal an error saying that MANUFACTURER isn't an operating |
1553 | # system, and we'll never get to this point. | 1532 | # system, and we'll never get to this point. |
1554 | 1533 | ||
1555 | case $basic_machine in | 1534 | kernel= |
1535 | case $cpu-$vendor in | ||
1556 | score-*) | 1536 | score-*) |
1557 | os=-elf | 1537 | os=elf |
1558 | ;; | 1538 | ;; |
1559 | spu-*) | 1539 | spu-*) |
1560 | os=-elf | 1540 | os=elf |
1561 | ;; | 1541 | ;; |
1562 | *-acorn) | 1542 | *-acorn) |
1563 | os=-riscix1.2 | 1543 | os=riscix1.2 |
1564 | ;; | 1544 | ;; |
1565 | arm*-rebel) | 1545 | arm*-rebel) |
1566 | os=-linux | 1546 | kernel=linux |
1547 | os=gnu | ||
1567 | ;; | 1548 | ;; |
1568 | arm*-semi) | 1549 | arm*-semi) |
1569 | os=-aout | 1550 | os=aout |
1570 | ;; | 1551 | ;; |
1571 | c4x-* | tic4x-*) | 1552 | c4x-* | tic4x-*) |
1572 | os=-coff | 1553 | os=coff |
1573 | ;; | 1554 | ;; |
1574 | c8051-*) | 1555 | c8051-*) |
1575 | os=-elf | 1556 | os=elf |
1557 | ;; | ||
1558 | clipper-intergraph) | ||
1559 | os=clix | ||
1576 | ;; | 1560 | ;; |
1577 | hexagon-*) | 1561 | hexagon-*) |
1578 | os=-elf | 1562 | os=elf |
1579 | ;; | 1563 | ;; |
1580 | tic54x-*) | 1564 | tic54x-*) |
1581 | os=-coff | 1565 | os=coff |
1582 | ;; | 1566 | ;; |
1583 | tic55x-*) | 1567 | tic55x-*) |
1584 | os=-coff | 1568 | os=coff |
1585 | ;; | 1569 | ;; |
1586 | tic6x-*) | 1570 | tic6x-*) |
1587 | os=-coff | 1571 | os=coff |
1588 | ;; | 1572 | ;; |
1589 | # This must come before the *-dec entry. | 1573 | # This must come before the *-dec entry. |
1590 | pdp10-*) | 1574 | pdp10-*) |
1591 | os=-tops20 | 1575 | os=tops20 |
1592 | ;; | 1576 | ;; |
1593 | pdp11-*) | 1577 | pdp11-*) |
1594 | os=-none | 1578 | os=none |
1595 | ;; | 1579 | ;; |
1596 | *-dec | vax-*) | 1580 | *-dec | vax-*) |
1597 | os=-ultrix4.2 | 1581 | os=ultrix4.2 |
1598 | ;; | 1582 | ;; |
1599 | m68*-apollo) | 1583 | m68*-apollo) |
1600 | os=-domain | 1584 | os=domain |
1601 | ;; | 1585 | ;; |
1602 | i386-sun) | 1586 | i386-sun) |
1603 | os=-sunos4.0.2 | 1587 | os=sunos4.0.2 |
1604 | ;; | 1588 | ;; |
1605 | m68000-sun) | 1589 | m68000-sun) |
1606 | os=-sunos3 | 1590 | os=sunos3 |
1607 | ;; | 1591 | ;; |
1608 | m68*-cisco) | 1592 | m68*-cisco) |
1609 | os=-aout | 1593 | os=aout |
1610 | ;; | 1594 | ;; |
1611 | mep-*) | 1595 | mep-*) |
1612 | os=-elf | 1596 | os=elf |
1613 | ;; | 1597 | ;; |
1614 | mips*-cisco) | 1598 | mips*-cisco) |
1615 | os=-elf | 1599 | os=elf |
1616 | ;; | 1600 | ;; |
1617 | mips*-*) | 1601 | mips*-*) |
1618 | os=-elf | 1602 | os=elf |
1619 | ;; | 1603 | ;; |
1620 | or32-*) | 1604 | or32-*) |
1621 | os=-coff | 1605 | os=coff |
1622 | ;; | 1606 | ;; |
1623 | *-tti) # must be before sparc entry or we get the wrong os. | 1607 | *-tti) # must be before sparc entry or we get the wrong os. |
1624 | os=-sysv3 | 1608 | os=sysv3 |
1625 | ;; | 1609 | ;; |
1626 | sparc-* | *-sun) | 1610 | sparc-* | *-sun) |
1627 | os=-sunos4.1.1 | 1611 | os=sunos4.1.1 |
1628 | ;; | 1612 | ;; |
1629 | *-be) | 1613 | pru-*) |
1630 | os=-beos | 1614 | os=elf |
1631 | ;; | 1615 | ;; |
1632 | *-haiku) | 1616 | *-be) |
1633 | os=-haiku | 1617 | os=beos |
1634 | ;; | 1618 | ;; |
1635 | *-ibm) | 1619 | *-ibm) |
1636 | os=-aix | 1620 | os=aix |
1637 | ;; | 1621 | ;; |
1638 | *-knuth) | 1622 | *-knuth) |
1639 | os=-mmixware | 1623 | os=mmixware |
1640 | ;; | 1624 | ;; |
1641 | *-wec) | 1625 | *-wec) |
1642 | os=-proelf | 1626 | os=proelf |
1643 | ;; | 1627 | ;; |
1644 | *-winbond) | 1628 | *-winbond) |
1645 | os=-proelf | 1629 | os=proelf |
1646 | ;; | 1630 | ;; |
1647 | *-oki) | 1631 | *-oki) |
1648 | os=-proelf | 1632 | os=proelf |
1649 | ;; | 1633 | ;; |
1650 | *-hp) | 1634 | *-hp) |
1651 | os=-hpux | 1635 | os=hpux |
1652 | ;; | 1636 | ;; |
1653 | *-hitachi) | 1637 | *-hitachi) |
1654 | os=-hiux | 1638 | os=hiux |
1655 | ;; | 1639 | ;; |
1656 | i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) | 1640 | i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) |
1657 | os=-sysv | 1641 | os=sysv |
1658 | ;; | 1642 | ;; |
1659 | *-cbm) | 1643 | *-cbm) |
1660 | os=-amigaos | 1644 | os=amigaos |
1661 | ;; | 1645 | ;; |
1662 | *-dg) | 1646 | *-dg) |
1663 | os=-dgux | 1647 | os=dgux |
1664 | ;; | 1648 | ;; |
1665 | *-dolphin) | 1649 | *-dolphin) |
1666 | os=-sysv3 | 1650 | os=sysv3 |
1667 | ;; | 1651 | ;; |
1668 | m68k-ccur) | 1652 | m68k-ccur) |
1669 | os=-rtu | 1653 | os=rtu |
1670 | ;; | 1654 | ;; |
1671 | m88k-omron*) | 1655 | m88k-omron*) |
1672 | os=-luna | 1656 | os=luna |
1673 | ;; | 1657 | ;; |
1674 | *-next ) | 1658 | *-next) |
1675 | os=-nextstep | 1659 | os=nextstep |
1676 | ;; | 1660 | ;; |
1677 | *-sequent) | 1661 | *-sequent) |
1678 | os=-ptx | 1662 | os=ptx |
1679 | ;; | 1663 | ;; |
1680 | *-crds) | 1664 | *-crds) |
1681 | os=-unos | 1665 | os=unos |
1682 | ;; | 1666 | ;; |
1683 | *-ns) | 1667 | *-ns) |
1684 | os=-genix | 1668 | os=genix |
1685 | ;; | 1669 | ;; |
1686 | i370-*) | 1670 | i370-*) |
1687 | os=-mvs | 1671 | os=mvs |
1688 | ;; | ||
1689 | *-next) | ||
1690 | os=-nextstep3 | ||
1691 | ;; | 1672 | ;; |
1692 | *-gould) | 1673 | *-gould) |
1693 | os=-sysv | 1674 | os=sysv |
1694 | ;; | 1675 | ;; |
1695 | *-highlevel) | 1676 | *-highlevel) |
1696 | os=-bsd | 1677 | os=bsd |
1697 | ;; | 1678 | ;; |
1698 | *-encore) | 1679 | *-encore) |
1699 | os=-bsd | 1680 | os=bsd |
1700 | ;; | 1681 | ;; |
1701 | *-sgi) | 1682 | *-sgi) |
1702 | os=-irix | 1683 | os=irix |
1703 | ;; | 1684 | ;; |
1704 | *-siemens) | 1685 | *-siemens) |
1705 | os=-sysv4 | 1686 | os=sysv4 |
1706 | ;; | 1687 | ;; |
1707 | *-masscomp) | 1688 | *-masscomp) |
1708 | os=-rtu | 1689 | os=rtu |
1709 | ;; | 1690 | ;; |
1710 | f30[01]-fujitsu | f700-fujitsu) | 1691 | f30[01]-fujitsu | f700-fujitsu) |
1711 | os=-uxpv | 1692 | os=uxpv |
1712 | ;; | 1693 | ;; |
1713 | *-rom68k) | 1694 | *-rom68k) |
1714 | os=-coff | 1695 | os=coff |
1715 | ;; | 1696 | ;; |
1716 | *-*bug) | 1697 | *-*bug) |
1717 | os=-coff | 1698 | os=coff |
1718 | ;; | 1699 | ;; |
1719 | *-apple) | 1700 | *-apple) |
1720 | os=-macos | 1701 | os=macos |
1721 | ;; | 1702 | ;; |
1722 | *-atari*) | 1703 | *-atari*) |
1723 | os=-mint | 1704 | os=mint |
1705 | ;; | ||
1706 | *-wrs) | ||
1707 | os=vxworks | ||
1724 | ;; | 1708 | ;; |
1725 | *) | 1709 | *) |
1726 | os=-none | 1710 | os=none |
1727 | ;; | 1711 | ;; |
1728 | esac | 1712 | esac |
1713 | |||
1729 | fi | 1714 | fi |
1730 | 1715 | ||
1716 | # Now, validate our (potentially fixed-up) OS. | ||
1717 | case $os in | ||
1718 | # Sometimes we do "kernel-libc", so those need to count as OSes. | ||
1719 | musl* | newlib* | relibc* | uclibc*) | ||
1720 | ;; | ||
1721 | # Likewise for "kernel-abi" | ||
1722 | eabi* | gnueabi*) | ||
1723 | ;; | ||
1724 | # VxWorks passes extra cpu info in the 4th filed. | ||
1725 | simlinux | simwindows | spe) | ||
1726 | ;; | ||
1727 | # Now accept the basic system types. | ||
1728 | # The portable systems comes first. | ||
1729 | # Each alternative MUST end in a * to match a version number. | ||
1730 | gnu* | android* | bsd* | mach* | minix* | genix* | ultrix* | irix* \ | ||
1731 | | *vms* | esix* | aix* | cnk* | sunos | sunos[34]* \ | ||
1732 | | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \ | ||
1733 | | sym* | plan9* | psp* | sim* | xray* | os68k* | v88r* \ | ||
1734 | | hiux* | abug | nacl* | netware* | windows* \ | ||
1735 | | os9* | macos* | osx* | ios* \ | ||
1736 | | mpw* | magic* | mmixware* | mon960* | lnews* \ | ||
1737 | | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \ | ||
1738 | | aos* | aros* | cloudabi* | sortix* | twizzler* \ | ||
1739 | | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \ | ||
1740 | | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \ | ||
1741 | | mirbsd* | netbsd* | dicos* | openedition* | ose* \ | ||
1742 | | bitrig* | openbsd* | secbsd* | solidbsd* | libertybsd* | os108* \ | ||
1743 | | ekkobsd* | freebsd* | riscix* | lynxos* | os400* \ | ||
1744 | | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \ | ||
1745 | | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \ | ||
1746 | | udi* | lites* | ieee* | go32* | aux* | hcos* \ | ||
1747 | | chorusrdb* | cegcc* | glidix* | serenity* \ | ||
1748 | | cygwin* | msys* | pe* | moss* | proelf* | rtems* \ | ||
1749 | | midipix* | mingw32* | mingw64* | mint* \ | ||
1750 | | uxpv* | beos* | mpeix* | udk* | moxiebox* \ | ||
1751 | | interix* | uwin* | mks* | rhapsody* | darwin* \ | ||
1752 | | openstep* | oskit* | conix* | pw32* | nonstopux* \ | ||
1753 | | storm-chaos* | tops10* | tenex* | tops20* | its* \ | ||
1754 | | os2* | vos* | palmos* | uclinux* | nucleus* | morphos* \ | ||
1755 | | scout* | superux* | sysv* | rtmk* | tpf* | windiss* \ | ||
1756 | | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \ | ||
1757 | | skyos* | haiku* | rdos* | toppers* | drops* | es* \ | ||
1758 | | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \ | ||
1759 | | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \ | ||
1760 | | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr* \ | ||
1761 | | fiwix* | mlibc* ) | ||
1762 | ;; | ||
1763 | # This one is extra strict with allowed versions | ||
1764 | sco3.2v2 | sco3.2v[4-9]* | sco5v6*) | ||
1765 | # Don't forget version if it is 3.2v4 or newer. | ||
1766 | ;; | ||
1767 | none) | ||
1768 | ;; | ||
1769 | kernel* ) | ||
1770 | # Restricted further below | ||
1771 | ;; | ||
1772 | *) | ||
1773 | echo Invalid configuration \`"$1"\': OS \`"$os"\' not recognized 1>&2 | ||
1774 | exit 1 | ||
1775 | ;; | ||
1776 | esac | ||
1777 | |||
1778 | # As a final step for OS-related things, validate the OS-kernel combination | ||
1779 | # (given a valid OS), if there is a kernel. | ||
1780 | case $kernel-$os in | ||
1781 | linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* \ | ||
1782 | | linux-musl* | linux-relibc* | linux-uclibc* | linux-mlibc* ) | ||
1783 | ;; | ||
1784 | uclinux-uclibc* ) | ||
1785 | ;; | ||
1786 | managarm-mlibc* | managarm-kernel* ) | ||
1787 | ;; | ||
1788 | -dietlibc* | -newlib* | -musl* | -relibc* | -uclibc* | -mlibc* ) | ||
1789 | # These are just libc implementations, not actual OSes, and thus | ||
1790 | # require a kernel. | ||
1791 | echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2 | ||
1792 | exit 1 | ||
1793 | ;; | ||
1794 | -kernel* ) | ||
1795 | echo "Invalid configuration \`$1': \`$os' needs explicit kernel." 1>&2 | ||
1796 | exit 1 | ||
1797 | ;; | ||
1798 | *-kernel* ) | ||
1799 | echo "Invalid configuration \`$1': \`$kernel' does not support \`$os'." 1>&2 | ||
1800 | exit 1 | ||
1801 | ;; | ||
1802 | kfreebsd*-gnu* | kopensolaris*-gnu*) | ||
1803 | ;; | ||
1804 | vxworks-simlinux | vxworks-simwindows | vxworks-spe) | ||
1805 | ;; | ||
1806 | nto-qnx*) | ||
1807 | ;; | ||
1808 | os2-emx) | ||
1809 | ;; | ||
1810 | *-eabi* | *-gnueabi*) | ||
1811 | ;; | ||
1812 | -*) | ||
1813 | # Blank kernel with real OS is always fine. | ||
1814 | ;; | ||
1815 | *-*) | ||
1816 | echo "Invalid configuration \`$1': Kernel \`$kernel' not known to work with OS \`$os'." 1>&2 | ||
1817 | exit 1 | ||
1818 | ;; | ||
1819 | esac | ||
1820 | |||
1731 | # Here we handle the case where we know the os, and the CPU type, but not the | 1821 | # Here we handle the case where we know the os, and the CPU type, but not the |
1732 | # manufacturer. We pick the logical manufacturer. | 1822 | # manufacturer. We pick the logical manufacturer. |
1733 | vendor=unknown | 1823 | case $vendor in |
1734 | case $basic_machine in | 1824 | unknown) |
1735 | *-unknown) | 1825 | case $cpu-$os in |
1736 | case $os in | 1826 | *-riscix*) |
1737 | -riscix*) | ||
1738 | vendor=acorn | 1827 | vendor=acorn |
1739 | ;; | 1828 | ;; |
1740 | -sunos*) | 1829 | *-sunos*) |
1741 | vendor=sun | 1830 | vendor=sun |
1742 | ;; | 1831 | ;; |
1743 | -cnk*|-aix*) | 1832 | *-cnk* | *-aix*) |
1744 | vendor=ibm | 1833 | vendor=ibm |
1745 | ;; | 1834 | ;; |
1746 | -beos*) | 1835 | *-beos*) |
1747 | vendor=be | 1836 | vendor=be |
1748 | ;; | 1837 | ;; |
1749 | -hpux*) | 1838 | *-hpux*) |
1750 | vendor=hp | 1839 | vendor=hp |
1751 | ;; | 1840 | ;; |
1752 | -mpeix*) | 1841 | *-mpeix*) |
1753 | vendor=hp | 1842 | vendor=hp |
1754 | ;; | 1843 | ;; |
1755 | -hiux*) | 1844 | *-hiux*) |
1756 | vendor=hitachi | 1845 | vendor=hitachi |
1757 | ;; | 1846 | ;; |
1758 | -unos*) | 1847 | *-unos*) |
1759 | vendor=crds | 1848 | vendor=crds |
1760 | ;; | 1849 | ;; |
1761 | -dgux*) | 1850 | *-dgux*) |
1762 | vendor=dg | 1851 | vendor=dg |
1763 | ;; | 1852 | ;; |
1764 | -luna*) | 1853 | *-luna*) |
1765 | vendor=omron | 1854 | vendor=omron |
1766 | ;; | 1855 | ;; |
1767 | -genix*) | 1856 | *-genix*) |
1768 | vendor=ns | 1857 | vendor=ns |
1769 | ;; | 1858 | ;; |
1770 | -mvs* | -opened*) | 1859 | *-clix*) |
1860 | vendor=intergraph | ||
1861 | ;; | ||
1862 | *-mvs* | *-opened*) | ||
1863 | vendor=ibm | ||
1864 | ;; | ||
1865 | *-os400*) | ||
1771 | vendor=ibm | 1866 | vendor=ibm |
1772 | ;; | 1867 | ;; |
1773 | -os400*) | 1868 | s390-* | s390x-*) |
1774 | vendor=ibm | 1869 | vendor=ibm |
1775 | ;; | 1870 | ;; |
1776 | -ptx*) | 1871 | *-ptx*) |
1777 | vendor=sequent | 1872 | vendor=sequent |
1778 | ;; | 1873 | ;; |
1779 | -tpf*) | 1874 | *-tpf*) |
1780 | vendor=ibm | 1875 | vendor=ibm |
1781 | ;; | 1876 | ;; |
1782 | -vxsim* | -vxworks* | -windiss*) | 1877 | *-vxsim* | *-vxworks* | *-windiss*) |
1783 | vendor=wrs | 1878 | vendor=wrs |
1784 | ;; | 1879 | ;; |
1785 | -aux*) | 1880 | *-aux*) |
1786 | vendor=apple | 1881 | vendor=apple |
1787 | ;; | 1882 | ;; |
1788 | -hms*) | 1883 | *-hms*) |
1789 | vendor=hitachi | 1884 | vendor=hitachi |
1790 | ;; | 1885 | ;; |
1791 | -mpw* | -macos*) | 1886 | *-mpw* | *-macos*) |
1792 | vendor=apple | 1887 | vendor=apple |
1793 | ;; | 1888 | ;; |
1794 | -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) | 1889 | *-*mint | *-mint[0-9]* | *-*MiNT | *-MiNT[0-9]*) |
1795 | vendor=atari | 1890 | vendor=atari |
1796 | ;; | 1891 | ;; |
1797 | -vos*) | 1892 | *-vos*) |
1798 | vendor=stratus | 1893 | vendor=stratus |
1799 | ;; | 1894 | ;; |
1800 | esac | 1895 | esac |
1801 | basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` | ||
1802 | ;; | 1896 | ;; |
1803 | esac | 1897 | esac |
1804 | 1898 | ||
1805 | echo $basic_machine$os | 1899 | echo "$cpu-$vendor-${kernel:+$kernel-}$os" |
1806 | exit | 1900 | exit |
1807 | 1901 | ||
1808 | # Local variables: | 1902 | # Local variables: |
1809 | # eval: (add-hook 'write-file-hooks 'time-stamp) | 1903 | # eval: (add-hook 'before-save-hook 'time-stamp) |
1810 | # time-stamp-start: "timestamp='" | 1904 | # time-stamp-start: "timestamp='" |
1811 | # time-stamp-format: "%:y-%02m-%02d" | 1905 | # time-stamp-format: "%:y-%02m-%02d" |
1812 | # time-stamp-end: "'" | 1906 | # time-stamp-end: "'" |
diff --git a/ssl/CMakeLists.txt b/ssl/CMakeLists.txt index 8e974a8..4c7357a 100644 --- a/ssl/CMakeLists.txt +++ b/ssl/CMakeLists.txt | |||
@@ -64,8 +64,8 @@ set( | |||
64 | add_library(ssl_obj OBJECT ${SSL_SRC}) | 64 | add_library(ssl_obj OBJECT ${SSL_SRC}) |
65 | target_include_directories(ssl_obj | 65 | target_include_directories(ssl_obj |
66 | PRIVATE | 66 | PRIVATE |
67 | . | ||
68 | ../crypto/bio | 67 | ../crypto/bio |
68 | . | ||
69 | ../include/compat | 69 | ../include/compat |
70 | PUBLIC | 70 | PUBLIC |
71 | ../include) | 71 | ../include) |
diff --git a/ssl/Makefile.am b/ssl/Makefile.am index d5c0466..6591ffa 100644 --- a/ssl/Makefile.am +++ b/ssl/Makefile.am | |||
@@ -39,6 +39,9 @@ libbs_la_SOURCES += bs_cbb.c | |||
39 | libbs_la_SOURCES += bs_cbs.c | 39 | libbs_la_SOURCES += bs_cbs.c |
40 | noinst_HEADERS = bytestring.h | 40 | noinst_HEADERS = bytestring.h |
41 | 41 | ||
42 | noinst_HEADERS += hidden/ssl_namespace.h | ||
43 | noinst_HEADERS += hidden/openssl/ssl.h | ||
44 | |||
42 | libssl_la_SOURCES = bio_ssl.c | 45 | libssl_la_SOURCES = bio_ssl.c |
43 | libssl_la_SOURCES += d1_both.c | 46 | libssl_la_SOURCES += d1_both.c |
44 | libssl_la_SOURCES += d1_lib.c | 47 | libssl_la_SOURCES += d1_lib.c |
@@ -93,12 +96,13 @@ libssl_la_SOURCES += tls13_record_layer.c | |||
93 | libssl_la_SOURCES += tls13_server.c | 96 | libssl_la_SOURCES += tls13_server.c |
94 | 97 | ||
95 | noinst_HEADERS += srtp.h | 98 | noinst_HEADERS += srtp.h |
96 | noinst_HEADERS += dtls_locl.h | 99 | noinst_HEADERS += dtls_local.h |
97 | noinst_HEADERS += ssl_locl.h | 100 | noinst_HEADERS += ssl_local.h |
98 | noinst_HEADERS += ssl_sigalgs.h | 101 | noinst_HEADERS += ssl_sigalgs.h |
99 | noinst_HEADERS += ssl_tlsext.h | 102 | noinst_HEADERS += ssl_tlsext.h |
100 | noinst_HEADERS += tls_content.h | 103 | noinst_HEADERS += tls_content.h |
101 | noinst_HEADERS += tls_internal.h | 104 | noinst_HEADERS += tls_internal.h |
105 | noinst_HEADERS += tls12_internal.h | ||
102 | noinst_HEADERS += tls13_internal.h | 106 | noinst_HEADERS += tls13_internal.h |
103 | noinst_HEADERS += tls13_handshake.h | 107 | noinst_HEADERS += tls13_handshake.h |
104 | noinst_HEADERS += tls13_record.h | 108 | noinst_HEADERS += tls13_record.h |
diff --git a/tap-driver.sh b/tap-driver.sh index 0ca4903..fea066f 100755 --- a/tap-driver.sh +++ b/tap-driver.sh | |||
@@ -1,5 +1,5 @@ | |||
1 | #! /bin/sh | 1 | #! /bin/sh |
2 | # Copyright (C) 2011-2020 Free Software Foundation, Inc. | 2 | # Copyright (C) 2011-2021 Free Software Foundation, Inc. |
3 | # | 3 | # |
4 | # This program is free software; you can redistribute it and/or modify | 4 | # This program is free software; you can redistribute it and/or modify |
5 | # it under the terms of the GNU General Public License as published by | 5 | # it under the terms of the GNU General Public License as published by |
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 9b10b33..a7f92cd 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt | |||
@@ -5,6 +5,7 @@ include_directories( | |||
5 | ../crypto/asn1 | 5 | ../crypto/asn1 |
6 | ../crypto/bio | 6 | ../crypto/bio |
7 | ../crypto/bn | 7 | ../crypto/bn |
8 | ../crypto/curve25519 | ||
8 | ../crypto/evp | 9 | ../crypto/evp |
9 | ../crypto/modes | 10 | ../crypto/modes |
10 | ../crypto/x509 | 11 | ../crypto/x509 |
@@ -29,6 +30,11 @@ else() | |||
29 | add_test(aeadtest aeadtest aead ${CMAKE_CURRENT_SOURCE_DIR}/aeadtests.txt) | 30 | add_test(aeadtest aeadtest aead ${CMAKE_CURRENT_SOURCE_DIR}/aeadtests.txt) |
30 | endif() | 31 | endif() |
31 | 32 | ||
33 | # aes_test | ||
34 | add_executable(aes_test aes_test.c) | ||
35 | target_link_libraries(aes_test ${OPENSSL_TEST_LIBS}) | ||
36 | add_test(aes_test aes_test) | ||
37 | |||
32 | # aes_wrap | 38 | # aes_wrap |
33 | add_executable(aes_wrap aes_wrap.c) | 39 | add_executable(aes_wrap aes_wrap.c) |
34 | target_link_libraries(aes_wrap ${OPENSSL_TEST_LIBS}) | 40 | target_link_libraries(aes_wrap ${OPENSSL_TEST_LIBS}) |
@@ -87,34 +93,68 @@ add_executable(asn1x509 asn1x509.c) | |||
87 | target_link_libraries(asn1x509 ${OPENSSL_TEST_LIBS}) | 93 | target_link_libraries(asn1x509 ${OPENSSL_TEST_LIBS}) |
88 | add_test(asn1x509 asn1x509) | 94 | add_test(asn1x509 asn1x509) |
89 | 95 | ||
96 | # asn1_string_to_utf8 | ||
97 | add_executable(asn1_string_to_utf8 asn1_string_to_utf8.c) | ||
98 | target_link_libraries(asn1_string_to_utf8 ${OPENSSL_TEST_LIBS}) | ||
99 | add_test(asn1_string_to_utf8 asn1_string_to_utf8) | ||
100 | |||
90 | # base64test | 101 | # base64test |
91 | add_executable(base64test base64test.c) | 102 | add_executable(base64test base64test.c) |
92 | target_link_libraries(base64test ${OPENSSL_TEST_LIBS}) | 103 | target_link_libraries(base64test ${OPENSSL_TEST_LIBS}) |
93 | add_test(base64test base64test) | 104 | add_test(base64test base64test) |
94 | 105 | ||
95 | # bftest | 106 | # bf_test |
96 | add_executable(bftest bftest.c) | 107 | add_executable(bf_test bf_test.c) |
97 | target_link_libraries(bftest ${OPENSSL_TEST_LIBS}) | 108 | target_link_libraries(bf_test ${OPENSSL_TEST_LIBS}) |
98 | add_test(bftest bftest) | 109 | add_test(bf_test bf_test) |
110 | |||
111 | # bio_chain | ||
112 | add_executable(bio_chain bio_chain.c) | ||
113 | target_link_libraries(bio_chain ${OPENSSL_TEST_LIBS}) | ||
114 | add_test(bio_chain bio_chain) | ||
99 | 115 | ||
100 | # biotest | 116 | # bio_host |
101 | # the BIO tests rely on resolver results that are OS and environment-specific | 117 | # this test relies on resolver results that are OS and environment-specific |
102 | if(ENABLE_EXTRATESTS) | 118 | if(ENABLE_EXTRATESTS) |
103 | add_executable(biotest biotest.c) | 119 | add_executable(bio_host bio_host.c) |
104 | target_link_libraries(biotest ${OPENSSL_TEST_LIBS}) | 120 | target_link_libraries(bio_host ${OPENSSL_TEST_LIBS}) |
105 | add_test(biotest biotest) | 121 | add_test(bio_host bio_host) |
106 | endif() | 122 | endif() |
107 | 123 | ||
108 | # bnaddsub | 124 | # bio_mem |
109 | add_executable(bnaddsub bnaddsub.c) | 125 | add_executable(bio_mem bio_mem.c) |
110 | target_link_libraries(bnaddsub ${OPENSSL_TEST_LIBS}) | 126 | target_link_libraries(bio_mem ${OPENSSL_TEST_LIBS}) |
111 | add_test(bnaddsub bnaddsub) | 127 | add_test(bio_mem bio_mem) |
128 | |||
129 | # bn_add_sub | ||
130 | add_executable(bn_add_sub bn_add_sub.c) | ||
131 | target_link_libraries(bn_add_sub ${OPENSSL_TEST_LIBS}) | ||
132 | add_test(bn_add_sub bn_add_sub) | ||
133 | |||
134 | # bn_cmp | ||
135 | add_executable(bn_cmp bn_cmp.c) | ||
136 | target_link_libraries(bn_cmp ${OPENSSL_TEST_LIBS}) | ||
137 | add_test(bn_cmp bn_cmp) | ||
112 | 138 | ||
113 | # bn_isqrt | 139 | # bn_isqrt |
114 | add_executable(bn_isqrt bn_isqrt.c) | 140 | add_executable(bn_isqrt bn_isqrt.c) |
115 | target_link_libraries(bn_isqrt ${OPENSSL_TEST_LIBS}) | 141 | target_link_libraries(bn_isqrt ${OPENSSL_TEST_LIBS}) |
116 | add_test(bn_isqrt bn_isqrt) | 142 | add_test(bn_isqrt bn_isqrt) |
117 | 143 | ||
144 | # bn_mod_exp | ||
145 | add_executable(bn_mod_exp bn_mod_exp.c) | ||
146 | set_source_files_properties(bn_mod_exp.c PROPERTIES COMPILE_FLAGS | ||
147 | -ULIBRESSL_INTERNAL) | ||
148 | target_link_libraries(bn_mod_exp ${OPENSSL_TEST_LIBS}) | ||
149 | add_test(bn_mod_exp bn_mod_exp) | ||
150 | |||
151 | # bn_mod_exp_zero | ||
152 | add_executable(bn_mod_exp_zero bn_mod_exp_zero.c) | ||
153 | set_source_files_properties(bn_mod_exp_zero.c PROPERTIES COMPILE_FLAGS | ||
154 | -ULIBRESSL_INTERNAL) | ||
155 | target_link_libraries(bn_mod_exp_zero ${OPENSSL_TEST_LIBS}) | ||
156 | add_test(bn_mod_exp_zero bn_mod_exp_zero) | ||
157 | |||
118 | # bn_mod_exp2_mont | 158 | # bn_mod_exp2_mont |
119 | add_executable(bn_mod_exp2_mont bn_mod_exp2_mont.c) | 159 | add_executable(bn_mod_exp2_mont bn_mod_exp2_mont.c) |
120 | target_link_libraries(bn_mod_exp2_mont ${OPENSSL_TEST_LIBS}) | 160 | target_link_libraries(bn_mod_exp2_mont ${OPENSSL_TEST_LIBS}) |
@@ -125,6 +165,11 @@ add_executable(bn_mod_sqrt bn_mod_sqrt.c) | |||
125 | target_link_libraries(bn_mod_sqrt ${OPENSSL_TEST_LIBS}) | 165 | target_link_libraries(bn_mod_sqrt ${OPENSSL_TEST_LIBS}) |
126 | add_test(bn_mod_sqrt bn_mod_sqrt) | 166 | add_test(bn_mod_sqrt bn_mod_sqrt) |
127 | 167 | ||
168 | # bn_mont | ||
169 | add_executable(bn_mont bn_mont.c) | ||
170 | target_link_libraries(bn_mont ${OPENSSL_TEST_LIBS}) | ||
171 | add_test(bn_mont bn_mont) | ||
172 | |||
128 | # bn_primes | 173 | # bn_primes |
129 | add_executable(bn_primes bn_primes.c) | 174 | add_executable(bn_primes bn_primes.c) |
130 | target_link_libraries(bn_primes ${OPENSSL_TEST_LIBS}) | 175 | target_link_libraries(bn_primes ${OPENSSL_TEST_LIBS}) |
@@ -135,18 +180,23 @@ add_executable(bn_rand_interval bn_rand_interval.c) | |||
135 | target_link_libraries(bn_rand_interval ${OPENSSL_TEST_LIBS}) | 180 | target_link_libraries(bn_rand_interval ${OPENSSL_TEST_LIBS}) |
136 | add_test(bn_rand_interval bn_rand_interval) | 181 | add_test(bn_rand_interval bn_rand_interval) |
137 | 182 | ||
138 | # bntest | 183 | # bn_test |
139 | add_executable(bntest bntest.c) | 184 | add_executable(bn_test bn_test.c) |
140 | set_source_files_properties(bntest.c PROPERTIES COMPILE_FLAGS | 185 | set_source_files_properties(bn_test.c PROPERTIES COMPILE_FLAGS |
141 | -ULIBRESSL_INTERNAL) | 186 | -ULIBRESSL_INTERNAL) |
142 | target_link_libraries(bntest ${OPENSSL_TEST_LIBS}) | 187 | target_link_libraries(bn_test ${OPENSSL_TEST_LIBS}) |
143 | add_test(bntest bntest) | 188 | add_test(bn_test bn_test) |
144 | 189 | ||
145 | # bn_to_string | 190 | # bn_to_string |
146 | add_executable(bn_to_string bn_to_string.c) | 191 | add_executable(bn_to_string bn_to_string.c) |
147 | target_link_libraries(bn_to_string ${OPENSSL_TEST_LIBS}) | 192 | target_link_libraries(bn_to_string ${OPENSSL_TEST_LIBS}) |
148 | add_test(bn_to_string bn_to_string) | 193 | add_test(bn_to_string bn_to_string) |
149 | 194 | ||
195 | # bn_unit | ||
196 | add_executable(bn_unit bn_unit.c) | ||
197 | target_link_libraries(bn_unit ${OPENSSL_TEST_LIBS}) | ||
198 | add_test(bn_unit bn_unit) | ||
199 | |||
150 | # buffertest | 200 | # buffertest |
151 | add_executable(buffertest buffertest.c) | 201 | add_executable(buffertest buffertest.c) |
152 | target_link_libraries(buffertest ${OPENSSL_TEST_LIBS}) | 202 | target_link_libraries(buffertest ${OPENSSL_TEST_LIBS}) |
@@ -217,13 +267,14 @@ add_executable(dsatest dsatest.c) | |||
217 | target_link_libraries(dsatest ${OPENSSL_TEST_LIBS}) | 267 | target_link_libraries(dsatest ${OPENSSL_TEST_LIBS}) |
218 | add_test(dsatest dsatest) | 268 | add_test(dsatest dsatest) |
219 | 269 | ||
220 | # dtlstest | 270 | # XXX This test is too flaky for CI. Disable it until it is fixed. |
221 | if(NOT WIN32) | 271 | # # dtlstest |
222 | add_executable(dtlstest dtlstest.c) | 272 | # if(NOT WIN32) |
223 | target_link_libraries(dtlstest ${OPENSSL_TEST_LIBS}) | 273 | # add_executable(dtlstest dtlstest.c) |
224 | add_test(NAME dtlstest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/dtlstest.sh) | 274 | # target_link_libraries(dtlstest ${OPENSSL_TEST_LIBS}) |
225 | set_tests_properties(dtlstest PROPERTIES ENVIRONMENT "srcdir=${TEST_SOURCE_DIR}") | 275 | # add_test(NAME dtlstest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/dtlstest.sh) |
226 | endif() | 276 | # set_tests_properties(dtlstest PROPERTIES ENVIRONMENT "srcdir=${TEST_SOURCE_DIR}") |
277 | # endif() | ||
227 | 278 | ||
228 | # ec_asn1_test | 279 | # ec_asn1_test |
229 | add_executable(ec_asn1_test ec_asn1_test.c) | 280 | add_executable(ec_asn1_test ec_asn1_test.c) |
@@ -250,11 +301,21 @@ add_executable(ectest ectest.c) | |||
250 | target_link_libraries(ectest ${OPENSSL_TEST_LIBS}) | 301 | target_link_libraries(ectest ${OPENSSL_TEST_LIBS}) |
251 | add_test(ectest ectest) | 302 | add_test(ectest ectest) |
252 | 303 | ||
304 | # ed25519test | ||
305 | add_executable(ed25519test ed25519test.c) | ||
306 | target_link_libraries(ed25519test ${OPENSSL_TEST_LIBS}) | ||
307 | add_test(ed25519test ed25519test) | ||
308 | |||
253 | # enginetest | 309 | # enginetest |
254 | add_executable(enginetest enginetest.c) | 310 | add_executable(enginetest enginetest.c) |
255 | target_link_libraries(enginetest ${OPENSSL_TEST_LIBS}) | 311 | target_link_libraries(enginetest ${OPENSSL_TEST_LIBS}) |
256 | add_test(enginetest enginetest) | 312 | add_test(enginetest enginetest) |
257 | 313 | ||
314 | # evp_ecx_test | ||
315 | add_executable(evp_ecx_test evp_ecx_test.c) | ||
316 | target_link_libraries(evp_ecx_test ${OPENSSL_TEST_LIBS}) | ||
317 | add_test(evp_ecx_test evp_ecx_test) | ||
318 | |||
258 | # evp_pkey_check | 319 | # evp_pkey_check |
259 | add_executable(evp_pkey_check evp_pkey_check.c) | 320 | add_executable(evp_pkey_check evp_pkey_check.c) |
260 | target_link_libraries(evp_pkey_check ${OPENSSL_TEST_LIBS}) | 321 | target_link_libraries(evp_pkey_check ${OPENSSL_TEST_LIBS}) |
@@ -282,13 +343,6 @@ if(NOT WIN32) | |||
282 | add_test(explicit_bzero explicit_bzero) | 343 | add_test(explicit_bzero explicit_bzero) |
283 | endif() | 344 | endif() |
284 | 345 | ||
285 | # exptest | ||
286 | add_executable(exptest exptest.c) | ||
287 | set_source_files_properties(exptest.c PROPERTIES COMPILE_FLAGS | ||
288 | -ULIBRESSL_INTERNAL) | ||
289 | target_link_libraries(exptest ${OPENSSL_TEST_LIBS}) | ||
290 | add_test(exptest exptest) | ||
291 | |||
292 | # freenull | 346 | # freenull |
293 | add_executable(freenull freenull.c) | 347 | add_executable(freenull freenull.c) |
294 | target_link_libraries(freenull ${OPENSSL_TEST_LIBS}) | 348 | target_link_libraries(freenull ${OPENSSL_TEST_LIBS}) |
@@ -347,11 +401,6 @@ add_executable(md_test md_test.c) | |||
347 | target_link_libraries(md_test ${OPENSSL_TEST_LIBS}) | 401 | target_link_libraries(md_test ${OPENSSL_TEST_LIBS}) |
348 | add_test(md_test md_test) | 402 | add_test(md_test md_test) |
349 | 403 | ||
350 | # mont | ||
351 | add_executable(mont mont.c) | ||
352 | target_link_libraries(mont ${OPENSSL_TEST_LIBS}) | ||
353 | add_test(mont mont) | ||
354 | |||
355 | # objectstest | 404 | # objectstest |
356 | add_executable(objectstest objectstest.c) | 405 | add_executable(objectstest objectstest.c) |
357 | target_link_libraries(objectstest ${OPENSSL_TEST_LIBS}) | 406 | target_link_libraries(objectstest ${OPENSSL_TEST_LIBS}) |
diff --git a/tests/Makefile.am b/tests/Makefile.am index 24e6f2e..6fea2eb 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am | |||
@@ -5,6 +5,7 @@ AM_CPPFLAGS += -DLIBRESSL_CRYPTO_INTERNAL | |||
5 | AM_CPPFLAGS += -I $(top_srcdir)/crypto/asn1 | 5 | AM_CPPFLAGS += -I $(top_srcdir)/crypto/asn1 |
6 | AM_CPPFLAGS += -I $(top_srcdir)/crypto/bio | 6 | AM_CPPFLAGS += -I $(top_srcdir)/crypto/bio |
7 | AM_CPPFLAGS += -I $(top_srcdir)/crypto/bn | 7 | AM_CPPFLAGS += -I $(top_srcdir)/crypto/bn |
8 | AM_CPPFLAGS += -I $(top_srcdir)/crypto/curve25519 | ||
8 | AM_CPPFLAGS += -I $(top_srcdir)/crypto/evp | 9 | AM_CPPFLAGS += -I $(top_srcdir)/crypto/evp |
9 | AM_CPPFLAGS += -I $(top_srcdir)/crypto/modes | 10 | AM_CPPFLAGS += -I $(top_srcdir)/crypto/modes |
10 | AM_CPPFLAGS += -I $(top_srcdir)/crypto/x509 | 11 | AM_CPPFLAGS += -I $(top_srcdir)/crypto/x509 |
@@ -40,6 +41,11 @@ EXTRA_DIST += aes_256_gcm_tests.txt | |||
40 | EXTRA_DIST += chacha20_poly1305_tests.txt | 41 | EXTRA_DIST += chacha20_poly1305_tests.txt |
41 | EXTRA_DIST += xchacha20_poly1305_tests.txt | 42 | EXTRA_DIST += xchacha20_poly1305_tests.txt |
42 | 43 | ||
44 | # aes | ||
45 | TESTS += aes_test | ||
46 | check_PROGRAMS += aes_test | ||
47 | aes_test_SOURCES = aes_test.c | ||
48 | |||
43 | # aes_wrap | 49 | # aes_wrap |
44 | TESTS += aes_wrap | 50 | TESTS += aes_wrap |
45 | check_PROGRAMS += aes_wrap | 51 | check_PROGRAMS += aes_wrap |
@@ -109,29 +115,56 @@ TESTS += base64test | |||
109 | check_PROGRAMS += base64test | 115 | check_PROGRAMS += base64test |
110 | base64test_SOURCES = base64test.c | 116 | base64test_SOURCES = base64test.c |
111 | 117 | ||
112 | # bftest | 118 | # bf_test |
113 | TESTS += bftest | 119 | TESTS += bf_test |
114 | check_PROGRAMS += bftest | 120 | check_PROGRAMS += bf_test |
115 | bftest_SOURCES = bftest.c | 121 | bf_test_SOURCES = bf_test.c |
122 | |||
123 | # bio_chain | ||
124 | TESTS += bio_chain | ||
125 | check_PROGRAMS += bio_chain | ||
126 | bio_chain_SOURCES = bio_chain.c | ||
116 | 127 | ||
117 | # biotest | 128 | # bio_host |
118 | # the BIO tests rely on resolver results that are OS and environment-specific | 129 | # this test relies on resolver results that are OS and environment-specific |
119 | if ENABLE_EXTRATESTS | 130 | if ENABLE_EXTRATESTS |
120 | TESTS += biotest | 131 | TESTS += bio_host |
121 | check_PROGRAMS += biotest | 132 | check_PROGRAMS += bio_host |
122 | biotest_SOURCES = biotest.c | 133 | bio_host_SOURCES = bio_host.c |
123 | endif | 134 | endif |
124 | 135 | ||
125 | # bnaddsub | 136 | # bio_mem |
126 | TESTS += bnaddsub | 137 | TESTS += bio_mem |
127 | check_PROGRAMS += bnaddsub | 138 | check_PROGRAMS += bio_mem |
128 | bnaddsub_SOURCES = bnaddsub.c | 139 | bio_mem_SOURCES = bio_mem.c |
140 | |||
141 | # bn_add_sub | ||
142 | TESTS += bn_add_sub | ||
143 | check_PROGRAMS += bn_add_sub | ||
144 | bn_add_sub_SOURCES = bn_add_sub.c | ||
145 | |||
146 | # bn_cmp | ||
147 | TESTS += bn_cmp | ||
148 | check_PROGRAMS += bn_cmp | ||
149 | bn_cmp_SOURCES = bn_cmp.c | ||
129 | 150 | ||
130 | # bn_isqrt | 151 | # bn_isqrt |
131 | TESTS += bn_isqrt | 152 | TESTS += bn_isqrt |
132 | check_PROGRAMS += bn_isqrt | 153 | check_PROGRAMS += bn_isqrt |
133 | bn_isqrt_SOURCES = bn_isqrt.c | 154 | bn_isqrt_SOURCES = bn_isqrt.c |
134 | 155 | ||
156 | # bn_mod_exp | ||
157 | TESTS += bn_mod_exp | ||
158 | check_PROGRAMS += bn_mod_exp | ||
159 | bn_mod_exp_CPPFLAGS = $(AM_CPPFLAGS) -ULIBRESSL_INTERNAL | ||
160 | bn_mod_exp_SOURCES = bn_mod_exp.c | ||
161 | |||
162 | # bn_mod_exp_zero | ||
163 | TESTS += bn_mod_exp_zero | ||
164 | check_PROGRAMS += bn_mod_exp_zero | ||
165 | bn_mod_exp_zero_CPPFLAGS = $(AM_CPPFLAGS) -ULIBRESSL_INTERNAL | ||
166 | bn_mod_exp_zero_SOURCES = bn_mod_exp_zero.c | ||
167 | |||
135 | # bn_mod_exp2_mont | 168 | # bn_mod_exp2_mont |
136 | TESTS += bn_mod_exp2_mont | 169 | TESTS += bn_mod_exp2_mont |
137 | check_PROGRAMS += bn_mod_exp2_mont | 170 | check_PROGRAMS += bn_mod_exp2_mont |
@@ -142,6 +175,11 @@ TESTS += bn_mod_sqrt | |||
142 | check_PROGRAMS += bn_mod_sqrt | 175 | check_PROGRAMS += bn_mod_sqrt |
143 | bn_mod_sqrt_SOURCES = bn_mod_sqrt.c | 176 | bn_mod_sqrt_SOURCES = bn_mod_sqrt.c |
144 | 177 | ||
178 | # bn_mont | ||
179 | TESTS += bn_mont | ||
180 | check_PROGRAMS += bn_mont | ||
181 | bn_mont_SOURCES = bn_mont.c | ||
182 | |||
145 | # bn_primes | 183 | # bn_primes |
146 | TESTS += bn_primes | 184 | TESTS += bn_primes |
147 | check_PROGRAMS += bn_primes | 185 | check_PROGRAMS += bn_primes |
@@ -152,17 +190,22 @@ TESTS += bn_rand_interval | |||
152 | check_PROGRAMS += bn_rand_interval | 190 | check_PROGRAMS += bn_rand_interval |
153 | bn_rand_interval_SOURCES = bn_rand_interval.c | 191 | bn_rand_interval_SOURCES = bn_rand_interval.c |
154 | 192 | ||
155 | # bntest | 193 | # bn_test |
156 | TESTS += bntest | 194 | TESTS += bn_test |
157 | bntest_CPPFLAGS = $(AM_CPPFLAGS) -ULIBRESSL_INTERNAL | 195 | bn_test_CPPFLAGS = $(AM_CPPFLAGS) -ULIBRESSL_INTERNAL |
158 | check_PROGRAMS += bntest | 196 | check_PROGRAMS += bn_test |
159 | bntest_SOURCES = bntest.c | 197 | bn_test_SOURCES = bn_test.c |
160 | 198 | ||
161 | # bn_to_string | 199 | # bn_to_string |
162 | TESTS += bn_to_string | 200 | TESTS += bn_to_string |
163 | check_PROGRAMS += bn_to_string | 201 | check_PROGRAMS += bn_to_string |
164 | bn_to_string_SOURCES = bn_to_string.c | 202 | bn_to_string_SOURCES = bn_to_string.c |
165 | 203 | ||
204 | # bn_unit | ||
205 | TESTS += bn_unit | ||
206 | check_PROGRAMS += bn_unit | ||
207 | bn_unit_SOURCES = bn_unit.c | ||
208 | |||
166 | # buffertest | 209 | # buffertest |
167 | TESTS += buffertest | 210 | TESTS += buffertest |
168 | check_PROGRAMS += buffertest | 211 | check_PROGRAMS += buffertest |
@@ -234,13 +277,14 @@ TESTS += dsatest | |||
234 | check_PROGRAMS += dsatest | 277 | check_PROGRAMS += dsatest |
235 | dsatest_SOURCES = dsatest.c | 278 | dsatest_SOURCES = dsatest.c |
236 | 279 | ||
237 | # dtlstest | 280 | # XXX this test is too flaky for CI. Disable it until it is fixed. |
238 | if !HOST_WIN | 281 | ## dtlstest |
239 | TESTS += dtlstest.sh | 282 | #if !HOST_WIN |
240 | check_PROGRAMS += dtlstest | 283 | #TESTS += dtlstest.sh |
241 | dtlstest_SOURCES = dtlstest.c | 284 | #check_PROGRAMS += dtlstest |
242 | endif | 285 | #dtlstest_SOURCES = dtlstest.c |
243 | EXTRA_DIST += dtlstest.sh | 286 | #endif |
287 | #EXTRA_DIST += dtlstest.sh | ||
244 | 288 | ||
245 | # ec_asn1_test | 289 | # ec_asn1_test |
246 | TESTS += ec_asn1_test | 290 | TESTS += ec_asn1_test |
@@ -267,11 +311,21 @@ TESTS += ectest | |||
267 | check_PROGRAMS += ectest | 311 | check_PROGRAMS += ectest |
268 | ectest_SOURCES = ectest.c | 312 | ectest_SOURCES = ectest.c |
269 | 313 | ||
314 | # ed25519test | ||
315 | TESTS += ed25519test | ||
316 | check_PROGRAMS += ed25519test | ||
317 | ed25519test_SOURCES = ed25519test.c | ||
318 | |||
270 | # enginetest | 319 | # enginetest |
271 | TESTS += enginetest | 320 | TESTS += enginetest |
272 | check_PROGRAMS += enginetest | 321 | check_PROGRAMS += enginetest |
273 | enginetest_SOURCES = enginetest.c | 322 | enginetest_SOURCES = enginetest.c |
274 | 323 | ||
324 | # evp_ecx_test | ||
325 | TESTS += evp_ecx_test | ||
326 | check_PROGRAMS += evp_ecx_test | ||
327 | evp_ecx_test_SOURCES = evp_ecx_test.c | ||
328 | |||
275 | # evp_pkey_check | 329 | # evp_pkey_check |
276 | TESTS += evp_pkey_check | 330 | TESTS += evp_pkey_check |
277 | check_PROGRAMS += evp_pkey_check | 331 | check_PROGRAMS += evp_pkey_check |
@@ -302,12 +356,6 @@ endif | |||
302 | endif | 356 | endif |
303 | endif | 357 | endif |
304 | 358 | ||
305 | # exptest | ||
306 | TESTS += exptest | ||
307 | check_PROGRAMS += exptest | ||
308 | exptest_CPPFLAGS = $(AM_CPPFLAGS) -ULIBRESSL_INTERNAL | ||
309 | exptest_SOURCES = exptest.c | ||
310 | |||
311 | # freenull | 359 | # freenull |
312 | TESTS += freenull | 360 | TESTS += freenull |
313 | check_PROGRAMS += freenull | 361 | check_PROGRAMS += freenull |
@@ -365,11 +413,6 @@ TESTS += md_test | |||
365 | check_PROGRAMS += md_test | 413 | check_PROGRAMS += md_test |
366 | md_test_SOURCES = md_test.c | 414 | md_test_SOURCES = md_test.c |
367 | 415 | ||
368 | # mont | ||
369 | TESTS += mont | ||
370 | check_PROGRAMS += mont | ||
371 | mont_SOURCES = mont.c | ||
372 | |||
373 | # objectstest | 416 | # objectstest |
374 | TESTS += objectstest | 417 | TESTS += objectstest |
375 | check_PROGRAMS += objectstest | 418 | check_PROGRAMS += objectstest |
@@ -277,7 +277,9 @@ done | |||
277 | echo "copying libssl source" | 277 | echo "copying libssl source" |
278 | rm -f ssl/*.c ssl/*.h | 278 | rm -f ssl/*.c ssl/*.h |
279 | for i in `awk '/SOURCES|HEADERS/ { print $3 }' ssl/Makefile.am` ; do | 279 | for i in `awk '/SOURCES|HEADERS/ { print $3 }' ssl/Makefile.am` ; do |
280 | $CP $libssl_src/$i ssl | 280 | dir=`dirname $i` |
281 | mkdir -p ssl/$dir | ||
282 | $CP $libssl_src/$i ssl/$i | ||
281 | done | 283 | done |
282 | # add the libssl symbol export list | 284 | # add the libssl symbol export list |
283 | $GREP '^[A-Za-z0-9_]' < $libssl_src/Symbols.list > ssl/ssl.sym | 285 | $GREP '^[A-Za-z0-9_]' < $libssl_src/Symbols.list > ssl/ssl.sym |