Compass-ci
Threads by month
- ----- 2025 -----
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- 5229 discussions
---
hosts/0001-add-new-hosts-file.patch | 913 ++++++++++++++++++
...and-the-128G-s-host-will-be-added-to.patch | 454 +++++++++
hosts/0003-hosts-file-add-ipmi_ip.patch | 411 ++++++++
hosts/taishan200-2280-2s64p-256g--a9 | 2 +-
4 files changed, 1779 insertions(+), 1 deletion(-)
create mode 100644 hosts/0001-add-new-hosts-file.patch
create mode 100644 hosts/0002-fix-memory-size-and-the-128G-s-host-will-be-added-to.patch
create mode 100644 hosts/0003-hosts-file-add-ipmi_ip.patch
diff --git a/hosts/0001-add-new-hosts-file.patch b/hosts/0001-add-new-hosts-file.patch
new file mode 100644
index 0000000..18318eb
--- /dev/null
+++ b/hosts/0001-add-new-hosts-file.patch
@@ -0,0 +1,913 @@
+From bdf38f06d38302d4510387bc41b1bdce52518665 Mon Sep 17 00:00:00 2001
+From: Zhang Dewan <513619464(a)qq.com>
+Date: Fri, 9 Oct 2020 19:14:31 +0800
+Subject: [PATCH lab-z9 1/3] add new hosts file
+
+---
+ hosts/taishan200-2280-2s48p-256g--a13 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a14 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a15 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a17 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a18 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a19 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a21 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a22 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a24 | 7 +++----
+ hosts/taishan200-2280-2s48p-256g--a25 | 5 ++---
+ hosts/taishan200-2280-2s48p-256g--a26 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a27 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a28 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a29 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a30 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a31 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a32 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a33 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a34 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a52 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a53 | 17 +++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a60 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a61 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a62 | 19 +++++++++++++++++++
+ hosts/taishan200-2280-2s48p-256g--a66 | 5 ++---
+ hosts/taishan200-2280-2s48p-256g--a67 | 5 ++---
+ hosts/taishan200-2280-2s48p-256g--a68 | 5 ++---
+ hosts/taishan200-2280-2s48p-256g--a69 | 5 ++---
+ hosts/taishan200-2280-2s48p-256g--a70 | 5 ++---
+ hosts/taishan200-2280-2s48p-256g--a71 | 2 +-
+ hosts/taishan200-2280-2s64p-256g--a10 | 8 ++++++--
+ hosts/taishan200-2280-2s64p-256g--a36 | 24 ++++++++++++++++++++++++
+ hosts/taishan200-2280-2s64p-256g--a40 | 21 +++++++++++++++++++++
+ hosts/taishan200-2280-2s64p-256g--a41 | 21 +++++++++++++++++++++
+ hosts/taishan200-2280-2s64p-256g--a42 | 21 +++++++++++++++++++++
+ hosts/taishan200-2280-2s64p-256g--a9 | 5 ++---
+ 36 files changed, 527 insertions(+), 28 deletions(-)
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a13
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a14
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a15
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a17
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a18
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a19
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a21
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a22
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a26
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a27
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a28
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a29
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a30
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a31
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a32
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a33
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a34
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a52
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a53
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a60
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a61
+ create mode 100644 hosts/taishan200-2280-2s48p-256g--a62
+ create mode 100644 hosts/taishan200-2280-2s64p-256g--a36
+ create mode 100644 hosts/taishan200-2280-2s64p-256g--a40
+ create mode 100644 hosts/taishan200-2280-2s64p-256g--a41
+ create mode 100644 hosts/taishan200-2280-2s64p-256g--a42
+
+diff --git a/hosts/taishan200-2280-2s48p-256g--a13 b/hosts/taishan200-2280-2s48p-256g--a13
+new file mode 100644
+index 0000000..1c8f554
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a13
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-35000c500c2799bb3
++ - /dev/disk/by-id/scsi-35000c500c278b18b
++ - /dev/disk/by-id/scsi-35000c500c279f96b
++ - /dev/disk/by-id/scsi-35000c500c2789b4b
++mac_addr:
++ - 44:67:47:97:2b:bf
++ - 44:67:47:97:2b:c0
++ - 44:67:47:97:2b:c1
++ - 44:67:47:97:2b:c2
++ - 44:67:47:97:2b:c3
++ - 44:67:47:97:2b:c4
++ - 44:67:47:97:2b:c5
++ - 44:67:47:97:2b:c6
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a14 b/hosts/taishan200-2280-2s48p-256g--a14
+new file mode 100644
+index 0000000..ae84bd5
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a14
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b88b4475
++ - /dev/disk/by-id/scsi-350000399b88b4371
++ - /dev/disk/by-id/scsi-350000399b88b432d
++ - /dev/disk/by-id/scsi-350000399b88b4531
++mac_addr:
++ - 44:67:47:c9:e9:c2
++ - 44:67:47:c9:e9:c3
++ - 44:67:47:c9:e9:c4
++ - 44:67:47:c9:e9:c5
++ - 44:67:47:c9:e9:c6
++ - 44:67:47:c9:e9:c7
++ - 44:67:47:c9:e9:c8
++ - 44:67:47:c9:e9:c9
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a15 b/hosts/taishan200-2280-2s48p-256g--a15
+new file mode 100644
+index 0000000..7fa0b67
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a15
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b841fff5
++ - /dev/disk/by-id/scsi-350000399b841fcb9
++ - /dev/disk/by-id/scsi-350000399b8420a0d
++ - /dev/disk/by-id/scsi-350000399b841ff55
++mac_addr:
++ - 44:67:47:85:d4:9e
++ - 44:67:47:85:d4:9f
++ - 44:67:47:85:d4:a0
++ - 44:67:47:85:d4:a1
++ - 44:67:47:85:d4:a2
++ - 44:67:47:85:d4:a3
++ - 44:67:47:85:d4:a4
++ - 44:67:47:85:d4:a5
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a17 b/hosts/taishan200-2280-2s48p-256g--a17
+new file mode 100644
+index 0000000..8be93de
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a17
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b88b44cd
++ - /dev/disk/by-id/scsi-350000399b88b4541
++ - /dev/disk/by-id/scsi-350000399b88b4495
++ - /dev/disk/by-id/scsi-350000399b88b48d1
++mac_addr:
++ - 44:67:47:c9:ea:1c
++ - 44:67:47:c9:ea:1d
++ - 44:67:47:c9:ea:1e
++ - 44:67:47:c9:ea:1f
++ - 44:67:47:c9:ea:20
++ - 44:67:47:c9:ea:21
++ - 44:67:47:c9:ea:22
++ - 44:67:47:c9:ea:23
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a18 b/hosts/taishan200-2280-2s48p-256g--a18
+new file mode 100644
+index 0000000..e86bdeb
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a18
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b891b4d1
++ - /dev/disk/by-id/scsi-350000399b8890d59
++ - /dev/disk/by-id/scsi-350000399b8890f65
++ - /dev/disk/by-id/scsi-350000399b891b3c5
++mac_addr:
++ - 84:46:fe:3d:a7:e9
++ - 84:46:fe:3d:a7:ea
++ - 84:46:fe:3d:a7:eb
++ - 84:46:fe:3d:a7:ec
++ - 84:46:fe:3d:a7:ed
++ - 84:46:fe:3d:a7:ee
++ - 84:46:fe:3d:a7:ef
++ - 84:46:fe:3d:a7:f0
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a19 b/hosts/taishan200-2280-2s48p-256g--a19
+new file mode 100644
+index 0000000..0c4a60f
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a19
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b8923939
++ - /dev/disk/by-id/scsi-350000399b8420b2d
++ - /dev/disk/by-id/scsi-350000399b891b5c5
++ - /dev/disk/by-id/scsi-350000399b841f769
++mac_addr:
++ - 44:67:47:85:d5:48
++ - 44:67:47:85:d5:49
++ - 44:67:47:85:d5:4a
++ - 44:67:47:85:d5:4b
++ - 44:67:47:85:d5:4c
++ - 44:67:47:85:d5:4d
++ - 44:67:47:85:d5:4e
++ - 44:67:47:85:d5:4f
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a21 b/hosts/taishan200-2280-2s48p-256g--a21
+new file mode 100644
+index 0000000..51b7709
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a21
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b88bf2d5
++ - /dev/disk/by-id/scsi-350000399b88bf5a5
++ - /dev/disk/by-id/scsi-350000399b88bf279
++ - /dev/disk/by-id/scsi-350000399b88bf24d
++mac_addr:
++ - 44:67:47:86:1b:e0
++ - 44:67:47:86:1b:e1
++ - 44:67:47:86:1b:e2
++ - 44:67:47:86:1b:e3
++ - 44:67:47:86:1b:e4
++ - 44:67:47:86:1b:e5
++ - 44:67:47:86:1b:e6
++ - 44:67:47:86:1b:e7
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a22 b/hosts/taishan200-2280-2s48p-256g--a22
+new file mode 100644
+index 0000000..4de0ad0
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a22
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b8919069
++ - /dev/disk/by-id/scsi-350000399b8918c15
++ - /dev/disk/by-id/scsi-350000399b8918c79
++ - /dev/disk/by-id/scsi-350000399b8918cb9
++mac_addr:
++ - 44:67:47:d7:6d:14
++ - 44:67:47:d7:6d:15
++ - 44:67:47:d7:6d:16
++ - 44:67:47:d7:6d:17
++ - 44:67:47:d7:6d:18
++ - 44:67:47:d7:6d:19
++ - 44:67:47:d7:6d:1a
++ - 44:67:47:d7:6d:1b
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a24 b/hosts/taishan200-2280-2s48p-256g--a24
+index f46bfab..f47947c 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a24
++++ b/hosts/taishan200-2280-2s48p-256g--a24
+@@ -1,12 +1,11 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 256G
+-nr_hdd_partitions: 3
++memory: 252G
++nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b8917d59
+- - /dev/disk/by-id/scsi-350000399b891790d
+ - /dev/disk/by-id/scsi-350000399b89185d9
+-rootfs_partition:
++ - /dev/disk/by-id/scsi-350000399b891790d
+ - /dev/disk/by-id/scsi-350000399b8917ef1
+ mac_addr:
+ - 44:67:47:c9:d8:f4
+diff --git a/hosts/taishan200-2280-2s48p-256g--a25 b/hosts/taishan200-2280-2s48p-256g--a25
+index ee5eeb3..2f270e8 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a25
++++ b/hosts/taishan200-2280-2s48p-256g--a25
+@@ -1,12 +1,11 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 256G
+-nr_hdd_partitions: 3
++memory: 252G
++nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b88b4499
+ - /dev/disk/by-id/scsi-350000399b88b4455
+ - /dev/disk/by-id/scsi-350000399b88b442d
+-rootfs_partition:
+ - /dev/disk/by-id/scsi-350000399b88b44f9
+ mac_addr:
+ - 44:67:47:c9:ea:08
+diff --git a/hosts/taishan200-2280-2s48p-256g--a26 b/hosts/taishan200-2280-2s48p-256g--a26
+new file mode 100644
+index 0000000..b6de96e
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a26
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b88bf131
++ - /dev/disk/by-id/scsi-350000399b88bfd8d
++ - /dev/disk/by-id/scsi-350000399b88bfe55
++ - /dev/disk/by-id/scsi-350000399b88bef31
++mac_addr:
++ - 44:67:47:c9:e9:40
++ - 44:67:47:c9:e9:41
++ - 44:67:47:c9:e9:42
++ - 44:67:47:c9:e9:43
++ - 44:67:47:c9:e9:44
++ - 44:67:47:c9:e9:45
++ - 44:67:47:c9:e9:46
++ - 44:67:47:c9:e9:47
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a27 b/hosts/taishan200-2280-2s48p-256g--a27
+new file mode 100644
+index 0000000..b6d9945
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a27
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b8918ea9
++ - /dev/disk/by-id/scsi-350000399b8918bad
++ - /dev/disk/by-id/scsi-350000399b8918d05
++ - /dev/disk/by-id/scsi-350000399b8919415
++mac_addr:
++ - 44:67:47:d7:6d:3c
++ - 44:67:47:d7:6d:3d
++ - 44:67:47:d7:6d:3e
++ - 44:67:47:d7:6d:3f
++ - 44:67:47:d7:6d:40
++ - 44:67:47:d7:6d:41
++ - 44:67:47:d7:6d:42
++ - 44:67:47:d7:6d:43
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a28 b/hosts/taishan200-2280-2s48p-256g--a28
+new file mode 100644
+index 0000000..ecebafc
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a28
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-35000c500cdf1eb07
++ - /dev/disk/by-id/scsi-35000c500cdef4c6f
++ - /dev/disk/by-id/scsi-35000c500cdefac2b
++ - /dev/disk/by-id/scsi-35000c500cdefa75f
++mac_addr:
++ - 5c:e8:83:31:c8:20
++ - 5c:e8:83:31:c8:21
++ - 5c:e8:83:31:c8:22
++ - 5c:e8:83:31:c8:23
++ - 5c:e8:83:31:c8:24
++ - 5c:e8:83:31:c8:25
++ - 5c:e8:83:31:c8:26
++ - 5c:e8:83:31:c8:27
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a29 b/hosts/taishan200-2280-2s48p-256g--a29
+new file mode 100644
+index 0000000..bdb13ca
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a29
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b8918425
++ - /dev/disk/by-id/scsi-350000399b891841d
++ - /dev/disk/by-id/scsi-350000399b8917859
++ - /dev/disk/by-id/scsi-350000399b8917a51
++mac_addr:
++ - 44:67:47:c9:d8:ea
++ - 44:67:47:c9:d8:eb
++ - 44:67:47:c9:d8:ec
++ - 44:67:47:c9:d8:ed
++ - 44:67:47:c9:d8:ee
++ - 44:67:47:c9:d8:ef
++ - 44:67:47:c9:d8:f0
++ - 44:67:47:c9:d8:f1
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a30 b/hosts/taishan200-2280-2s48p-256g--a30
+new file mode 100644
+index 0000000..810859b
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a30
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b883b881
++ - /dev/disk/by-id/scsi-350000399b88bf83d
++ - /dev/disk/by-id/scsi-350000399b883bbbd
++ - /dev/disk/by-id/scsi-350000399b88bf48d
++mac_addr:
++ - 44:67:47:86:1b:cc
++ - 44:67:47:86:1b:cd
++ - 44:67:47:86:1b:ce
++ - 44:67:47:86:1b:cf
++ - 44:67:47:86:1b:d0
++ - 44:67:47:86:1b:d1
++ - 44:67:47:86:1b:d2
++ - 44:67:47:86:1b:d3
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a31 b/hosts/taishan200-2280-2s48p-256g--a31
+new file mode 100644
+index 0000000..8f9d13b
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a31
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b883b929
++ - /dev/disk/by-id/scsi-350000399b883bbe1
++ - /dev/disk/by-id/scsi-350000399b883c059
++ - /dev/disk/by-id/scsi-350000399b883bc9d
++mac_addr:
++ - 44:67:47:86:1b:ae
++ - 44:67:47:86:1b:af
++ - 44:67:47:86:1b:b0
++ - 44:67:47:86:1b:b1
++ - 44:67:47:86:1b:b2
++ - 44:67:47:86:1b:b3
++ - 44:67:47:86:1b:b4
++ - 44:67:47:86:1b:b5
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a32 b/hosts/taishan200-2280-2s48p-256g--a32
+new file mode 100644
+index 0000000..66d9b68
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a32
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b88bf141
++ - /dev/disk/by-id/scsi-350000399b88bee25
++ - /dev/disk/by-id/scsi-350000399b88bea59
++ - /dev/disk/by-id/scsi-350000399b88be1d9
++mac_addr:
++ - 44:67:47:c9:db:38
++ - 44:67:47:c9:db:39
++ - 44:67:47:c9:db:3a
++ - 44:67:47:c9:db:3b
++ - 44:67:47:c9:db:3c
++ - 44:67:47:c9:db:3d
++ - 44:67:47:c9:db:3e
++ - 44:67:47:c9:db:3f
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a33 b/hosts/taishan200-2280-2s48p-256g--a33
+new file mode 100644
+index 0000000..ef3b148
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a33
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b8919555
++ - /dev/disk/by-id/scsi-350000399b8918c4d
++ - /dev/disk/by-id/scsi-350000399b8919c3d
++ - /dev/disk/by-id/scsi-350000399b8919389
++mac_addr:
++ - 44:67:47:d7:6c:c4
++ - 44:67:47:d7:6c:c5
++ - 44:67:47:d7:6c:c6
++ - 44:67:47:d7:6c:c7
++ - 44:67:47:d7:6c:c8
++ - 44:67:47:d7:6c:c9
++ - 44:67:47:d7:6c:ca
++ - 44:67:47:d7:6c:cb
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a34 b/hosts/taishan200-2280-2s48p-256g--a34
+new file mode 100644
+index 0000000..528ec82
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a34
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b88be219
++ - /dev/disk/by-id/scsi-350000399b88bdf71
++ - /dev/disk/by-id/scsi-350000399b88bdb49
++ - /dev/disk/by-id/scsi-350000399b891784d
++mac_addr:
++ - 44:67:47:c9:d9:26
++ - 44:67:47:c9:d9:27
++ - 44:67:47:c9:d9:28
++ - 44:67:47:c9:d9:29
++ - 44:67:47:c9:d9:2a
++ - 44:67:47:c9:d9:2b
++ - 44:67:47:c9:d9:2c
++ - 44:67:47:c9:d9:2d
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a52 b/hosts/taishan200-2280-2s48p-256g--a52
+new file mode 100644
+index 0000000..4353d4c
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a52
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-35000c500cdefd89b
++ - /dev/disk/by-id/scsi-35000c500cdefac67
++ - /dev/disk/by-id/scsi-35000c500cdedee6f
++ - /dev/disk/by-id/scsi-35000c500cdedfdaf
++mac_addr:
++ - 5c:e8:83:31:c8:d4
++ - 5c:e8:83:31:c8:d5
++ - 5c:e8:83:31:c8:d6
++ - 5c:e8:83:31:c8:d7
++ - 5c:e8:83:31:c8:d8
++ - 5c:e8:83:31:c8:d9
++ - 5c:e8:83:31:c8:da
++ - 5c:e8:83:31:c8:db
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a53 b/hosts/taishan200-2280-2s48p-256g--a53
+new file mode 100644
+index 0000000..0df1cd9
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a53
+@@ -0,0 +1,17 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 2
++hdd_partitions:
++ - /dev/disk/by-id/scsi-35000c500bd6aa4e3
++ - /dev/disk/by-id/scsi-35000c500bd681acf
++mac_addr:
++ - 5c:e8:83:73:25:c9
++ - 5c:e8:83:73:25:ca
++ - 5c:e8:83:73:25:cb
++ - 5c:e8:83:73:25:cc
++ - 5c:e8:83:73:25:cd
++ - 5c:e8:83:73:25:ce
++ - 5c:e8:83:73:25:cf
++ - 5c:e8:83:73:25:d0
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a60 b/hosts/taishan200-2280-2s48p-256g--a60
+new file mode 100644
+index 0000000..6986a8f
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a60
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-35000c500bd67640b
++ - /dev/disk/by-id/scsi-35000c500bd6707a7
++ - /dev/disk/by-id/scsi-35000c500bd680dc3
++ - /dev/disk/by-id/scsi-35000c500bd683a73
++mac_addr:
++ - e0:00:84:2b:51:7d
++ - e0:00:84:2b:51:7e
++ - e0:00:84:2b:51:7f
++ - e0:00:84:2b:51:80
++ - e0:00:84:2b:51:81
++ - e0:00:84:2b:51:82
++ - e0:00:84:2b:51:83
++ - e0:00:84:2b:51:84
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a61 b/hosts/taishan200-2280-2s48p-256g--a61
+new file mode 100644
+index 0000000..1c198b8
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a61
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399886a7869
++ - /dev/disk/by-id/scsi-350000399886acc5d
++ - /dev/disk/by-id/scsi-350000399886b6861
++ - /dev/disk/by-id/scsi-350000399886ac70d
++mac_addr:
++ - 44:67:47:c9:e4:b8
++ - 44:67:47:c9:e4:b9
++ - 44:67:47:c9:e4:ba
++ - 44:67:47:c9:e4:bb
++ - 44:67:47:c9:e4:bc
++ - 44:67:47:c9:e4:bd
++ - 44:67:47:c9:e4:be
++ - 44:67:47:c9:e4:bf
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a62 b/hosts/taishan200-2280-2s48p-256g--a62
+new file mode 100644
+index 0000000..26ab646
+--- /dev/null
++++ b/hosts/taishan200-2280-2s48p-256g--a62
+@@ -0,0 +1,19 @@
++nr_node: 4
++nr_cpu: 96
++memory: 252G
++nr_hdd_partitions: 4
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b892d131
++ - /dev/disk/by-id/scsi-350000399b892d619
++ - /dev/disk/by-id/scsi-350000399b892dc1d
++ - /dev/disk/by-id/scsi-350000399b892dbb5
++mac_addr:
++ - 44:67:47:c9:e3:3a
++ - 44:67:47:c9:e3:3b
++ - 44:67:47:c9:e3:3c
++ - 44:67:47:c9:e3:3d
++ - 44:67:47:c9:e3:3e
++ - 44:67:47:c9:e3:3f
++ - 44:67:47:c9:e3:40
++ - 44:67:47:c9:e3:41
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s48p-256g--a66 b/hosts/taishan200-2280-2s48p-256g--a66
+index 881f2d6..c7b2083 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a66
++++ b/hosts/taishan200-2280-2s48p-256g--a66
+@@ -1,12 +1,11 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 256G
+-nr_hdd_partitions: 3
++memory: 252G
++nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-35000c5009a671773
+ - /dev/disk/by-id/scsi-35000c5009a690c53
+ - /dev/disk/by-id/scsi-35000c5009a6713fb
+-rootfs_partition:
+ - /dev/disk/by-id/scsi-35000c5009a65963f
+ mac_addr:
+ - 5c:e8:83:31:c8:8e
+diff --git a/hosts/taishan200-2280-2s48p-256g--a67 b/hosts/taishan200-2280-2s48p-256g--a67
+index d23d755..f207003 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a67
++++ b/hosts/taishan200-2280-2s48p-256g--a67
+@@ -1,12 +1,11 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 256G
+-nr_hdd_partitions: 3
++memory: 252G
++nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b88aed21
+ - /dev/disk/by-id/scsi-350000399b88af325
+ - /dev/disk/by-id/scsi-350000399b88af699
+-rootfs_partition:
+ - /dev/disk/by-id/scsi-350000399b88af421
+ mac_addr:
+ - 44:67:47:c9:e2:2c
+diff --git a/hosts/taishan200-2280-2s48p-256g--a68 b/hosts/taishan200-2280-2s48p-256g--a68
+index 0ceb191..054105c 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a68
++++ b/hosts/taishan200-2280-2s48p-256g--a68
+@@ -1,12 +1,11 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 256G
+-nr_hdd_partitions: 3
++memory: 252G
++nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b8909f81
+ - /dev/disk/by-id/scsi-350000399b8909f79
+ - /dev/disk/by-id/scsi-350000399b8909605
+-rootfs_partition:
+ - /dev/disk/by-id/scsi-350000399b8909b85
+ mac_addr:
+ - 84:46:fe:89:b6:e6
+diff --git a/hosts/taishan200-2280-2s48p-256g--a69 b/hosts/taishan200-2280-2s48p-256g--a69
+index 5e948ee..e96e34c 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a69
++++ b/hosts/taishan200-2280-2s48p-256g--a69
+@@ -1,12 +1,11 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 256G
+-nr_hdd_partitions: 3
++memory: 252G
++nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b88be92d
+ - /dev/disk/by-id/scsi-350000399b88befc5
+ - /dev/disk/by-id/scsi-350000399b88be701
+-rootfs_partition:
+ - /dev/disk/by-id/scsi-350000399b88bea5d
+ mac_addr:
+ - 44:67:47:c9:d9:4e
+diff --git a/hosts/taishan200-2280-2s48p-256g--a70 b/hosts/taishan200-2280-2s48p-256g--a70
+index 760ce0c..61f99a3 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a70
++++ b/hosts/taishan200-2280-2s48p-256g--a70
+@@ -1,12 +1,11 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 256G
+-nr_hdd_partitions: 3
++memory: 252G
++nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b890931d
+ - /dev/disk/by-id/scsi-350000399b8909d79
+ - /dev/disk/by-id/scsi-350000399b8909ac5
+-rootfs_partition:
+ - /dev/disk/by-id/scsi-350000399b8909c99
+ mac_addr:
+ - 84:46:fe:89:b7:22
+diff --git a/hosts/taishan200-2280-2s48p-256g--a71 b/hosts/taishan200-2280-2s48p-256g--a71
+index dde6205..4896475 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a71
++++ b/hosts/taishan200-2280-2s48p-256g--a71
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 256G
++memory: 252G
+ mac_addr:
+ - 44:67:47:d7:6d:e6
+ - 44:67:47:d7:6d:e7
+diff --git a/hosts/taishan200-2280-2s64p-256g--a10 b/hosts/taishan200-2280-2s64p-256g--a10
+index 15a9315..a66bff0 100644
+--- a/hosts/taishan200-2280-2s64p-256g--a10
++++ b/hosts/taishan200-2280-2s64p-256g--a10
+@@ -1,7 +1,11 @@
+ nr_node: 4
+ nr_cpu: 128
+-memory: 256G
+-rootfs_partition:
++memory: 252G
++nr_hdd_partitions: 1
++nr_ssd_partitions: 1
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399c8030fd5
++ssd_partitions:
+ - /dev/disk/by-id/ata-SAMSUNG_MZ7LH480HAHQ-00005_S45PNA2MB44333
+ mac_addr:
+ - 44:67:47:86:2c:95
+diff --git a/hosts/taishan200-2280-2s64p-256g--a36 b/hosts/taishan200-2280-2s64p-256g--a36
+new file mode 100644
+index 0000000..d9f1184
+--- /dev/null
++++ b/hosts/taishan200-2280-2s64p-256g--a36
+@@ -0,0 +1,24 @@
++nr_node: 4
++nr_cpu: 128
++memory: 255G
++nr_hdd_partitions: 1
++nr_ssd_partitions: 1
++hdd_partitions:
++ - /dev/disk/by-id/scsi-3500003999813487d
++ssd_partitions:
++ - /dev/disk/by-id/ata-SAMSUNG_MZ7LH480HAHQ-00005_S45PNA2MB42949-part1
++ - /dev/disk/by-id/ata-SAMSUNG_MZ7LH480HAHQ-00005_S45PNA2MB42949-part2
++mac_addr:
++ - 84:46:fe:73:b2:75
++ - 84:46:fe:73:b2:76
++ - 84:46:fe:73:b2:77
++ - 84:46:fe:73:b2:78
++ - ac:b3:b5:1e:bd:5b
++ - ac:b3:b5:1e:bd:5c
++ - ac:b3:b5:1e:bd:5d
++ - ac:b3:b5:1e:bd:5e
++ - ac:b3:b5:1e:bd:bb
++ - ac:b3:b5:1e:bd:bc
++ - ac:b3:b5:1e:bd:bd
++ - ac:b3:b5:1e:bd:be
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s64p-256g--a40 b/hosts/taishan200-2280-2s64p-256g--a40
+new file mode 100644
+index 0000000..91f5619
+--- /dev/null
++++ b/hosts/taishan200-2280-2s64p-256g--a40
+@@ -0,0 +1,21 @@
++nr_node: 4
++nr_cpu: 128
++memory: 252G
++nr_hdd_partitions: 2
++hdd_partitions:
++ - /dev/disk/by-id/scsi-3500003999812ed81
++ - /dev/disk/by-id/scsi-350000399c8020115
++mac_addr:
++ - 84:46:fe:89:be:8e
++ - 84:46:fe:89:be:8f
++ - 84:46:fe:89:be:90
++ - 84:46:fe:89:be:91
++ - ac:b3:b5:1e:d7:3b
++ - ac:b3:b5:1e:d7:3c
++ - ac:b3:b5:1e:d7:3d
++ - ac:b3:b5:1e:d7:3e
++ - ac:b3:b5:1e:d6:cb
++ - ac:b3:b5:1e:d6:cc
++ - ac:b3:b5:1e:d6:cd
++ - ac:b3:b5:1e:d6:ce
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s64p-256g--a41 b/hosts/taishan200-2280-2s64p-256g--a41
+new file mode 100644
+index 0000000..9525cfd
+--- /dev/null
++++ b/hosts/taishan200-2280-2s64p-256g--a41
+@@ -0,0 +1,21 @@
++nr_node: 4
++nr_cpu: 128
++memory: 252G
++nr_hdd_partitions: 2
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b8919495
++ - /dev/disk/by-id/scsi-35000039998130a85
++mac_addr:
++ - 84:46:fe:89:bc:4a
++ - 84:46:fe:89:bc:4b
++ - 84:46:fe:89:bc:4c
++ - 84:46:fe:89:bc:4d
++ - ac:b3:b5:1e:b6:db
++ - ac:b3:b5:1e:b6:dc
++ - ac:b3:b5:1e:b6:dd
++ - ac:b3:b5:1e:b6:de
++ - ac:b3:b5:1e:b7:5b
++ - ac:b3:b5:1e:b7:5c
++ - ac:b3:b5:1e:b7:5d
++ - ac:b3:b5:1e:b7:5e
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s64p-256g--a42 b/hosts/taishan200-2280-2s64p-256g--a42
+new file mode 100644
+index 0000000..40c1c4b
+--- /dev/null
++++ b/hosts/taishan200-2280-2s64p-256g--a42
+@@ -0,0 +1,21 @@
++nr_node: 4
++nr_cpu: 128
++memory: 252G
++nr_hdd_partitions: 2
++hdd_partitions:
++ - /dev/disk/by-id/scsi-350000399b8918a11
++ - /dev/disk/by-id/scsi-350000399c802ee75
++mac_addr:
++ - cc:05:77:fe:d8:64
++ - cc:05:77:fe:d8:65
++ - cc:05:77:fe:d8:66
++ - cc:05:77:fe:d8:67
++ - 44:a1:91:35:6c:50
++ - 44:a1:91:35:6c:51
++ - 44:a1:91:35:6c:52
++ - 44:a1:91:35:6c:53
++ - 44:a1:91:35:68:d0
++ - 44:a1:91:35:68:d1
++ - 44:a1:91:35:68:d2
++ - 44:a1:91:35:68:d3
++model_name: Kunpeng-920
+diff --git a/hosts/taishan200-2280-2s64p-256g--a9 b/hosts/taishan200-2280-2s64p-256g--a9
+index d6c4353..e360e88 100644
+--- a/hosts/taishan200-2280-2s64p-256g--a9
++++ b/hosts/taishan200-2280-2s64p-256g--a9
+@@ -1,10 +1,9 @@
+ nr_node: 4
+ nr_cpu: 128
+-memory: 128G
+-nr_hdd_partitions: 1
++memory: 126G
++nr_hdd_partitions: 2
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-35000c500bd6a1347
+-rootfs_partition:
+ - /dev/disk/by-id/scsi-35000c500bd62acb3
+ mac_addr:
+ - cc:05:77:fe:d4:0e
+--
+2.23.0
+
diff --git a/hosts/0002-fix-memory-size-and-the-128G-s-host-will-be-added-to.patch b/hosts/0002-fix-memory-size-and-the-128G-s-host-will-be-added-to.patch
new file mode 100644
index 0000000..f16c13b
--- /dev/null
+++ b/hosts/0002-fix-memory-size-and-the-128G-s-host-will-be-added-to.patch
@@ -0,0 +1,454 @@
+From 5eb020ab8c2591423a1ec55aadf716191ba9b1f3 Mon Sep 17 00:00:00 2001
+From: Zhang Dewan <513619464(a)qq.com>
+Date: Sat, 10 Oct 2020 09:44:42 +0800
+Subject: [PATCH lab-z9 2/3] fix memory size, and the 128G's host will be added
+ to 256G as soon
+
+---
+ hosts/taishan200-2280-2s48p-256g--a13 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a14 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a15 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a17 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a18 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a19 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a21 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a22 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a24 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a25 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a26 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a27 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a28 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a29 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a30 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a31 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a32 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a33 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a34 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a52 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a53 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a60 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a61 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a62 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a66 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a67 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a68 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a69 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a70 | 2 +-
+ hosts/taishan200-2280-2s48p-256g--a71 | 2 +-
+ hosts/taishan200-2280-2s64p-256g--a10 | 2 +-
+ hosts/taishan200-2280-2s64p-256g--a40 | 2 +-
+ hosts/taishan200-2280-2s64p-256g--a41 | 2 +-
+ hosts/taishan200-2280-2s64p-256g--a42 | 2 +-
+ 34 files changed, 34 insertions(+), 34 deletions(-)
+
+diff --git a/hosts/taishan200-2280-2s48p-256g--a13 b/hosts/taishan200-2280-2s48p-256g--a13
+index 1c8f554..fe05233 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a13
++++ b/hosts/taishan200-2280-2s48p-256g--a13
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-35000c500c2799bb3
+diff --git a/hosts/taishan200-2280-2s48p-256g--a14 b/hosts/taishan200-2280-2s48p-256g--a14
+index ae84bd5..bd5962b 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a14
++++ b/hosts/taishan200-2280-2s48p-256g--a14
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b88b4475
+diff --git a/hosts/taishan200-2280-2s48p-256g--a15 b/hosts/taishan200-2280-2s48p-256g--a15
+index 7fa0b67..9b0cd96 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a15
++++ b/hosts/taishan200-2280-2s48p-256g--a15
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b841fff5
+diff --git a/hosts/taishan200-2280-2s48p-256g--a17 b/hosts/taishan200-2280-2s48p-256g--a17
+index 8be93de..cbbf268 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a17
++++ b/hosts/taishan200-2280-2s48p-256g--a17
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b88b44cd
+diff --git a/hosts/taishan200-2280-2s48p-256g--a18 b/hosts/taishan200-2280-2s48p-256g--a18
+index e86bdeb..648a1db 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a18
++++ b/hosts/taishan200-2280-2s48p-256g--a18
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b891b4d1
+diff --git a/hosts/taishan200-2280-2s48p-256g--a19 b/hosts/taishan200-2280-2s48p-256g--a19
+index 0c4a60f..2aec477 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a19
++++ b/hosts/taishan200-2280-2s48p-256g--a19
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b8923939
+diff --git a/hosts/taishan200-2280-2s48p-256g--a21 b/hosts/taishan200-2280-2s48p-256g--a21
+index 51b7709..9cbb5b5 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a21
++++ b/hosts/taishan200-2280-2s48p-256g--a21
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b88bf2d5
+diff --git a/hosts/taishan200-2280-2s48p-256g--a22 b/hosts/taishan200-2280-2s48p-256g--a22
+index 4de0ad0..6af83a7 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a22
++++ b/hosts/taishan200-2280-2s48p-256g--a22
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b8919069
+diff --git a/hosts/taishan200-2280-2s48p-256g--a24 b/hosts/taishan200-2280-2s48p-256g--a24
+index f47947c..dd9b501 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a24
++++ b/hosts/taishan200-2280-2s48p-256g--a24
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b8917d59
+diff --git a/hosts/taishan200-2280-2s48p-256g--a25 b/hosts/taishan200-2280-2s48p-256g--a25
+index 2f270e8..5d075b9 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a25
++++ b/hosts/taishan200-2280-2s48p-256g--a25
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b88b4499
+diff --git a/hosts/taishan200-2280-2s48p-256g--a26 b/hosts/taishan200-2280-2s48p-256g--a26
+index b6de96e..fe395ec 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a26
++++ b/hosts/taishan200-2280-2s48p-256g--a26
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b88bf131
+diff --git a/hosts/taishan200-2280-2s48p-256g--a27 b/hosts/taishan200-2280-2s48p-256g--a27
+index b6d9945..63b94f3 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a27
++++ b/hosts/taishan200-2280-2s48p-256g--a27
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b8918ea9
+diff --git a/hosts/taishan200-2280-2s48p-256g--a28 b/hosts/taishan200-2280-2s48p-256g--a28
+index ecebafc..df048f7 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a28
++++ b/hosts/taishan200-2280-2s48p-256g--a28
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-35000c500cdf1eb07
+diff --git a/hosts/taishan200-2280-2s48p-256g--a29 b/hosts/taishan200-2280-2s48p-256g--a29
+index bdb13ca..849be55 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a29
++++ b/hosts/taishan200-2280-2s48p-256g--a29
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b8918425
+diff --git a/hosts/taishan200-2280-2s48p-256g--a30 b/hosts/taishan200-2280-2s48p-256g--a30
+index 810859b..2be9047 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a30
++++ b/hosts/taishan200-2280-2s48p-256g--a30
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b883b881
+diff --git a/hosts/taishan200-2280-2s48p-256g--a31 b/hosts/taishan200-2280-2s48p-256g--a31
+index 8f9d13b..8af7d18 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a31
++++ b/hosts/taishan200-2280-2s48p-256g--a31
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b883b929
+diff --git a/hosts/taishan200-2280-2s48p-256g--a32 b/hosts/taishan200-2280-2s48p-256g--a32
+index 66d9b68..fb52e7f 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a32
++++ b/hosts/taishan200-2280-2s48p-256g--a32
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b88bf141
+diff --git a/hosts/taishan200-2280-2s48p-256g--a33 b/hosts/taishan200-2280-2s48p-256g--a33
+index ef3b148..4095419 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a33
++++ b/hosts/taishan200-2280-2s48p-256g--a33
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b8919555
+diff --git a/hosts/taishan200-2280-2s48p-256g--a34 b/hosts/taishan200-2280-2s48p-256g--a34
+index 528ec82..bae3e58 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a34
++++ b/hosts/taishan200-2280-2s48p-256g--a34
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b88be219
+diff --git a/hosts/taishan200-2280-2s48p-256g--a52 b/hosts/taishan200-2280-2s48p-256g--a52
+index 4353d4c..654b021 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a52
++++ b/hosts/taishan200-2280-2s48p-256g--a52
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-35000c500cdefd89b
+diff --git a/hosts/taishan200-2280-2s48p-256g--a53 b/hosts/taishan200-2280-2s48p-256g--a53
+index 0df1cd9..a90b8eb 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a53
++++ b/hosts/taishan200-2280-2s48p-256g--a53
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 2
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-35000c500bd6aa4e3
+diff --git a/hosts/taishan200-2280-2s48p-256g--a60 b/hosts/taishan200-2280-2s48p-256g--a60
+index 6986a8f..b87d962 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a60
++++ b/hosts/taishan200-2280-2s48p-256g--a60
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-35000c500bd67640b
+diff --git a/hosts/taishan200-2280-2s48p-256g--a61 b/hosts/taishan200-2280-2s48p-256g--a61
+index 1c198b8..b33712c 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a61
++++ b/hosts/taishan200-2280-2s48p-256g--a61
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399886a7869
+diff --git a/hosts/taishan200-2280-2s48p-256g--a62 b/hosts/taishan200-2280-2s48p-256g--a62
+index 26ab646..5c3b04d 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a62
++++ b/hosts/taishan200-2280-2s48p-256g--a62
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b892d131
+diff --git a/hosts/taishan200-2280-2s48p-256g--a66 b/hosts/taishan200-2280-2s48p-256g--a66
+index c7b2083..88ef791 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a66
++++ b/hosts/taishan200-2280-2s48p-256g--a66
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-35000c5009a671773
+diff --git a/hosts/taishan200-2280-2s48p-256g--a67 b/hosts/taishan200-2280-2s48p-256g--a67
+index f207003..97ea498 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a67
++++ b/hosts/taishan200-2280-2s48p-256g--a67
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b88aed21
+diff --git a/hosts/taishan200-2280-2s48p-256g--a68 b/hosts/taishan200-2280-2s48p-256g--a68
+index 054105c..f3d50f4 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a68
++++ b/hosts/taishan200-2280-2s48p-256g--a68
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b8909f81
+diff --git a/hosts/taishan200-2280-2s48p-256g--a69 b/hosts/taishan200-2280-2s48p-256g--a69
+index e96e34c..9e5734e 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a69
++++ b/hosts/taishan200-2280-2s48p-256g--a69
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b88be92d
+diff --git a/hosts/taishan200-2280-2s48p-256g--a70 b/hosts/taishan200-2280-2s48p-256g--a70
+index 61f99a3..0dd8208 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a70
++++ b/hosts/taishan200-2280-2s48p-256g--a70
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 4
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b890931d
+diff --git a/hosts/taishan200-2280-2s48p-256g--a71 b/hosts/taishan200-2280-2s48p-256g--a71
+index 4896475..dde6205 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a71
++++ b/hosts/taishan200-2280-2s48p-256g--a71
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 96
+-memory: 252G
++memory: 256G
+ mac_addr:
+ - 44:67:47:d7:6d:e6
+ - 44:67:47:d7:6d:e7
+diff --git a/hosts/taishan200-2280-2s64p-256g--a10 b/hosts/taishan200-2280-2s64p-256g--a10
+index a66bff0..4687d1a 100644
+--- a/hosts/taishan200-2280-2s64p-256g--a10
++++ b/hosts/taishan200-2280-2s64p-256g--a10
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 128
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 1
+ nr_ssd_partitions: 1
+ hdd_partitions:
+diff --git a/hosts/taishan200-2280-2s64p-256g--a40 b/hosts/taishan200-2280-2s64p-256g--a40
+index 91f5619..c0ce550 100644
+--- a/hosts/taishan200-2280-2s64p-256g--a40
++++ b/hosts/taishan200-2280-2s64p-256g--a40
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 128
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 2
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-3500003999812ed81
+diff --git a/hosts/taishan200-2280-2s64p-256g--a41 b/hosts/taishan200-2280-2s64p-256g--a41
+index 9525cfd..9e01396 100644
+--- a/hosts/taishan200-2280-2s64p-256g--a41
++++ b/hosts/taishan200-2280-2s64p-256g--a41
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 128
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 2
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b8919495
+diff --git a/hosts/taishan200-2280-2s64p-256g--a42 b/hosts/taishan200-2280-2s64p-256g--a42
+index 40c1c4b..1a953df 100644
+--- a/hosts/taishan200-2280-2s64p-256g--a42
++++ b/hosts/taishan200-2280-2s64p-256g--a42
+@@ -1,6 +1,6 @@
+ nr_node: 4
+ nr_cpu: 128
+-memory: 252G
++memory: 256G
+ nr_hdd_partitions: 2
+ hdd_partitions:
+ - /dev/disk/by-id/scsi-350000399b8918a11
+--
+2.23.0
+
diff --git a/hosts/0003-hosts-file-add-ipmi_ip.patch b/hosts/0003-hosts-file-add-ipmi_ip.patch
new file mode 100644
index 0000000..5201fc3
--- /dev/null
+++ b/hosts/0003-hosts-file-add-ipmi_ip.patch
@@ -0,0 +1,411 @@
+From 02376f205393290c0fef2452decbe23836362204 Mon Sep 17 00:00:00 2001
+From: Zhang Dewan <513619464(a)qq.com>
+Date: Tue, 13 Oct 2020 14:49:53 +0800
+Subject: [PATCH lab-z9 3/3] hosts file add ipmi_ip
+
+---
+ hosts/taishan200-2280-2s48p-256g--a11 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a13 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a14 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a15 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a17 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a18 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a19 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a21 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a22 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a24 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a25 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a26 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a27 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a28 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a29 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a30 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a31 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a32 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a33 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a34 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a52 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a53 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a60 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a61 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a62 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a66 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a67 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a68 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a69 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a70 | 1 +
+ hosts/taishan200-2280-2s48p-256g--a71 | 1 +
+ hosts/taishan200-2280-2s64p-256g--a10 | 1 +
+ hosts/taishan200-2280-2s64p-256g--a3 | 1 +
+ hosts/taishan200-2280-2s64p-256g--a36 | 1 +
+ hosts/taishan200-2280-2s64p-256g--a4 | 1 +
+ hosts/taishan200-2280-2s64p-256g--a40 | 1 +
+ hosts/taishan200-2280-2s64p-256g--a41 | 1 +
+ hosts/taishan200-2280-2s64p-256g--a42 | 1 +
+ hosts/taishan200-2280-2s64p-256g--a8 | 1 +
+ hosts/taishan200-2280-2s64p-256g--a9 | 1 +
+ 40 files changed, 40 insertions(+)
+
+diff --git a/hosts/taishan200-2280-2s48p-256g--a11 b/hosts/taishan200-2280-2s48p-256g--a11
+index b23cb94..a281e24 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a11
++++ b/hosts/taishan200-2280-2s48p-256g--a11
+@@ -18,3 +18,4 @@ mac_addr:
+ - cc:05:77:ab:97:68
+ - cc:05:77:ab:97:69
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.5.1
+diff --git a/hosts/taishan200-2280-2s48p-256g--a13 b/hosts/taishan200-2280-2s48p-256g--a13
+index fe05233..78cd2ee 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a13
++++ b/hosts/taishan200-2280-2s48p-256g--a13
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:97:2b:c5
+ - 44:67:47:97:2b:c6
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.5.3
+diff --git a/hosts/taishan200-2280-2s48p-256g--a14 b/hosts/taishan200-2280-2s48p-256g--a14
+index bd5962b..162e687 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a14
++++ b/hosts/taishan200-2280-2s48p-256g--a14
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:c9:e9:c8
+ - 44:67:47:c9:e9:c9
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.5.4
+diff --git a/hosts/taishan200-2280-2s48p-256g--a15 b/hosts/taishan200-2280-2s48p-256g--a15
+index 9b0cd96..3890ff0 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a15
++++ b/hosts/taishan200-2280-2s48p-256g--a15
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:85:d4:a4
+ - 44:67:47:85:d4:a5
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.5.5
+diff --git a/hosts/taishan200-2280-2s48p-256g--a17 b/hosts/taishan200-2280-2s48p-256g--a17
+index cbbf268..f2146f8 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a17
++++ b/hosts/taishan200-2280-2s48p-256g--a17
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:c9:ea:22
+ - 44:67:47:c9:ea:23
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.5.7
+diff --git a/hosts/taishan200-2280-2s48p-256g--a18 b/hosts/taishan200-2280-2s48p-256g--a18
+index 648a1db..e0ca747 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a18
++++ b/hosts/taishan200-2280-2s48p-256g--a18
+@@ -17,3 +17,4 @@ mac_addr:
+ - 84:46:fe:3d:a7:ef
+ - 84:46:fe:3d:a7:f0
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.5.8
+diff --git a/hosts/taishan200-2280-2s48p-256g--a19 b/hosts/taishan200-2280-2s48p-256g--a19
+index 2aec477..2b3c440 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a19
++++ b/hosts/taishan200-2280-2s48p-256g--a19
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:85:d5:4e
+ - 44:67:47:85:d5:4f
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.5.9
+diff --git a/hosts/taishan200-2280-2s48p-256g--a21 b/hosts/taishan200-2280-2s48p-256g--a21
+index 9cbb5b5..44c4e64 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a21
++++ b/hosts/taishan200-2280-2s48p-256g--a21
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:86:1b:e6
+ - 44:67:47:86:1b:e7
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.5.11
+diff --git a/hosts/taishan200-2280-2s48p-256g--a22 b/hosts/taishan200-2280-2s48p-256g--a22
+index 6af83a7..b6d10af 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a22
++++ b/hosts/taishan200-2280-2s48p-256g--a22
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:d7:6d:1a
+ - 44:67:47:d7:6d:1b
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.5.12
+diff --git a/hosts/taishan200-2280-2s48p-256g--a24 b/hosts/taishan200-2280-2s48p-256g--a24
+index dd9b501..5e1571d 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a24
++++ b/hosts/taishan200-2280-2s48p-256g--a24
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:c9:d8:fa
+ - 44:67:47:c9:d8:fb
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.9.1
+diff --git a/hosts/taishan200-2280-2s48p-256g--a25 b/hosts/taishan200-2280-2s48p-256g--a25
+index 5d075b9..1f3f599 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a25
++++ b/hosts/taishan200-2280-2s48p-256g--a25
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:c9:ea:0e
+ - 44:67:47:c9:ea:0f
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.9.2
+diff --git a/hosts/taishan200-2280-2s48p-256g--a26 b/hosts/taishan200-2280-2s48p-256g--a26
+index fe395ec..b136009 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a26
++++ b/hosts/taishan200-2280-2s48p-256g--a26
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:c9:e9:46
+ - 44:67:47:c9:e9:47
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.9.3
+diff --git a/hosts/taishan200-2280-2s48p-256g--a27 b/hosts/taishan200-2280-2s48p-256g--a27
+index 63b94f3..96a387d 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a27
++++ b/hosts/taishan200-2280-2s48p-256g--a27
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:d7:6d:42
+ - 44:67:47:d7:6d:43
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.9.4
+diff --git a/hosts/taishan200-2280-2s48p-256g--a28 b/hosts/taishan200-2280-2s48p-256g--a28
+index df048f7..5a4f298 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a28
++++ b/hosts/taishan200-2280-2s48p-256g--a28
+@@ -17,3 +17,4 @@ mac_addr:
+ - 5c:e8:83:31:c8:26
+ - 5c:e8:83:31:c8:27
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.9.5
+diff --git a/hosts/taishan200-2280-2s48p-256g--a29 b/hosts/taishan200-2280-2s48p-256g--a29
+index 849be55..5b7c0b8 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a29
++++ b/hosts/taishan200-2280-2s48p-256g--a29
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:c9:d8:f0
+ - 44:67:47:c9:d8:f1
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.9.6
+diff --git a/hosts/taishan200-2280-2s48p-256g--a30 b/hosts/taishan200-2280-2s48p-256g--a30
+index 2be9047..2c8d2d3 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a30
++++ b/hosts/taishan200-2280-2s48p-256g--a30
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:86:1b:d2
+ - 44:67:47:86:1b:d3
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.9.7
+diff --git a/hosts/taishan200-2280-2s48p-256g--a31 b/hosts/taishan200-2280-2s48p-256g--a31
+index 8af7d18..9aec903 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a31
++++ b/hosts/taishan200-2280-2s48p-256g--a31
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:86:1b:b4
+ - 44:67:47:86:1b:b5
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.9.8
+diff --git a/hosts/taishan200-2280-2s48p-256g--a32 b/hosts/taishan200-2280-2s48p-256g--a32
+index fb52e7f..d677838 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a32
++++ b/hosts/taishan200-2280-2s48p-256g--a32
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:c9:db:3e
+ - 44:67:47:c9:db:3f
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.9.9
+diff --git a/hosts/taishan200-2280-2s48p-256g--a33 b/hosts/taishan200-2280-2s48p-256g--a33
+index 4095419..d4df847 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a33
++++ b/hosts/taishan200-2280-2s48p-256g--a33
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:d7:6c:ca
+ - 44:67:47:d7:6c:cb
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.9.10
+diff --git a/hosts/taishan200-2280-2s48p-256g--a34 b/hosts/taishan200-2280-2s48p-256g--a34
+index bae3e58..680cb6f 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a34
++++ b/hosts/taishan200-2280-2s48p-256g--a34
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:c9:d9:2c
+ - 44:67:47:c9:d9:2d
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.9.11
+diff --git a/hosts/taishan200-2280-2s48p-256g--a52 b/hosts/taishan200-2280-2s48p-256g--a52
+index 654b021..a64cdec 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a52
++++ b/hosts/taishan200-2280-2s48p-256g--a52
+@@ -17,3 +17,4 @@ mac_addr:
+ - 5c:e8:83:31:c8:da
+ - 5c:e8:83:31:c8:db
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.3.5
+diff --git a/hosts/taishan200-2280-2s48p-256g--a53 b/hosts/taishan200-2280-2s48p-256g--a53
+index a90b8eb..148e747 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a53
++++ b/hosts/taishan200-2280-2s48p-256g--a53
+@@ -15,3 +15,4 @@ mac_addr:
+ - 5c:e8:83:73:25:cf
+ - 5c:e8:83:73:25:d0
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.3.6
+diff --git a/hosts/taishan200-2280-2s48p-256g--a60 b/hosts/taishan200-2280-2s48p-256g--a60
+index b87d962..9e969b0 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a60
++++ b/hosts/taishan200-2280-2s48p-256g--a60
+@@ -17,3 +17,4 @@ mac_addr:
+ - e0:00:84:2b:51:83
+ - e0:00:84:2b:51:84
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.4.1
+diff --git a/hosts/taishan200-2280-2s48p-256g--a61 b/hosts/taishan200-2280-2s48p-256g--a61
+index b33712c..2992c6f 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a61
++++ b/hosts/taishan200-2280-2s48p-256g--a61
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:c9:e4:be
+ - 44:67:47:c9:e4:bf
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.4.2
+diff --git a/hosts/taishan200-2280-2s48p-256g--a62 b/hosts/taishan200-2280-2s48p-256g--a62
+index 5c3b04d..5262637 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a62
++++ b/hosts/taishan200-2280-2s48p-256g--a62
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:c9:e3:40
+ - 44:67:47:c9:e3:41
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.4.3
+diff --git a/hosts/taishan200-2280-2s48p-256g--a66 b/hosts/taishan200-2280-2s48p-256g--a66
+index 88ef791..b7a3715 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a66
++++ b/hosts/taishan200-2280-2s48p-256g--a66
+@@ -17,3 +17,4 @@ mac_addr:
+ - 5c:e8:83:31:c8:94
+ - 5c:e8:83:31:c8:95
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.4.7
+diff --git a/hosts/taishan200-2280-2s48p-256g--a67 b/hosts/taishan200-2280-2s48p-256g--a67
+index 97ea498..2501f6e 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a67
++++ b/hosts/taishan200-2280-2s48p-256g--a67
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:c9:e2:32
+ - 44:67:47:c9:e2:33
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.4.8
+diff --git a/hosts/taishan200-2280-2s48p-256g--a68 b/hosts/taishan200-2280-2s48p-256g--a68
+index f3d50f4..c51e348 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a68
++++ b/hosts/taishan200-2280-2s48p-256g--a68
+@@ -17,3 +17,4 @@ mac_addr:
+ - 84:46:fe:89:b6:ec
+ - 84:46:fe:89:b6:ed
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.4.9
+diff --git a/hosts/taishan200-2280-2s48p-256g--a69 b/hosts/taishan200-2280-2s48p-256g--a69
+index 9e5734e..964f79e 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a69
++++ b/hosts/taishan200-2280-2s48p-256g--a69
+@@ -17,3 +17,4 @@ mac_addr:
+ - 44:67:47:c9:d9:54
+ - 44:67:47:c9:d9:55
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.4.10
+diff --git a/hosts/taishan200-2280-2s48p-256g--a70 b/hosts/taishan200-2280-2s48p-256g--a70
+index 0dd8208..2424a9f 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a70
++++ b/hosts/taishan200-2280-2s48p-256g--a70
+@@ -17,3 +17,4 @@ mac_addr:
+ - 84:46:fe:89:b7:28
+ - 84:46:fe:89:b7:29
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.4.11
+diff --git a/hosts/taishan200-2280-2s48p-256g--a71 b/hosts/taishan200-2280-2s48p-256g--a71
+index dde6205..501ea4b 100644
+--- a/hosts/taishan200-2280-2s48p-256g--a71
++++ b/hosts/taishan200-2280-2s48p-256g--a71
+@@ -11,3 +11,4 @@ mac_addr:
+ - 44:67:47:d7:6d:ec
+ - 44:67:47:d7:6d:ed
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.4.12
+diff --git a/hosts/taishan200-2280-2s64p-256g--a10 b/hosts/taishan200-2280-2s64p-256g--a10
+index 4687d1a..fcc6c63 100644
+--- a/hosts/taishan200-2280-2s64p-256g--a10
++++ b/hosts/taishan200-2280-2s64p-256g--a10
+@@ -21,3 +21,4 @@ mac_addr:
+ - ac:b3:b5:1e:d5:4d
+ - ac:b3:b5:1e:d5:4e
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.1.10
+diff --git a/hosts/taishan200-2280-2s64p-256g--a3 b/hosts/taishan200-2280-2s64p-256g--a3
+index 1bdadca..744978e 100644
+--- a/hosts/taishan200-2280-2s64p-256g--a3
++++ b/hosts/taishan200-2280-2s64p-256g--a3
+@@ -22,3 +22,4 @@ mac_addr:
+ - ac:b3:b5:1f:74:f0
+ - ac:b3:b5:1f:74:f1
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.1.3
+diff --git a/hosts/taishan200-2280-2s64p-256g--a36 b/hosts/taishan200-2280-2s64p-256g--a36
+index d9f1184..e04bc3a 100644
+--- a/hosts/taishan200-2280-2s64p-256g--a36
++++ b/hosts/taishan200-2280-2s64p-256g--a36
+@@ -22,3 +22,4 @@ mac_addr:
+ - ac:b3:b5:1e:bd:bd
+ - ac:b3:b5:1e:bd:be
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.2.1
+diff --git a/hosts/taishan200-2280-2s64p-256g--a4 b/hosts/taishan200-2280-2s64p-256g--a4
+index 8ef481c..0f73c52 100644
+--- a/hosts/taishan200-2280-2s64p-256g--a4
++++ b/hosts/taishan200-2280-2s64p-256g--a4
+@@ -22,3 +22,4 @@ mac_addr:
+ - ac:b3:b5:1f:7d:50
+ - ac:b3:b5:1f:7d:51
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.1.4
+diff --git a/hosts/taishan200-2280-2s64p-256g--a40 b/hosts/taishan200-2280-2s64p-256g--a40
+index c0ce550..3172475 100644
+--- a/hosts/taishan200-2280-2s64p-256g--a40
++++ b/hosts/taishan200-2280-2s64p-256g--a40
+@@ -19,3 +19,4 @@ mac_addr:
+ - ac:b3:b5:1e:d6:cd
+ - ac:b3:b5:1e:d6:ce
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.2.5
+diff --git a/hosts/taishan200-2280-2s64p-256g--a41 b/hosts/taishan200-2280-2s64p-256g--a41
+index 9e01396..4253e1f 100644
+--- a/hosts/taishan200-2280-2s64p-256g--a41
++++ b/hosts/taishan200-2280-2s64p-256g--a41
+@@ -19,3 +19,4 @@ mac_addr:
+ - ac:b3:b5:1e:b7:5d
+ - ac:b3:b5:1e:b7:5e
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.2.6
+diff --git a/hosts/taishan200-2280-2s64p-256g--a42 b/hosts/taishan200-2280-2s64p-256g--a42
+index 1a953df..dce3cf0 100644
+--- a/hosts/taishan200-2280-2s64p-256g--a42
++++ b/hosts/taishan200-2280-2s64p-256g--a42
+@@ -19,3 +19,4 @@ mac_addr:
+ - 44:a1:91:35:68:d2
+ - 44:a1:91:35:68:d3
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.2.7
+diff --git a/hosts/taishan200-2280-2s64p-256g--a8 b/hosts/taishan200-2280-2s64p-256g--a8
+index fd22672..64f2750 100644
+--- a/hosts/taishan200-2280-2s64p-256g--a8
++++ b/hosts/taishan200-2280-2s64p-256g--a8
+@@ -13,3 +13,4 @@ mac_addr:
+ - ac:b3:b5:1e:b6:7d
+ - ac:b3:b5:1e:b6:7e
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.1.8
+diff --git a/hosts/taishan200-2280-2s64p-256g--a9 b/hosts/taishan200-2280-2s64p-256g--a9
+index e360e88..f977a7c 100644
+--- a/hosts/taishan200-2280-2s64p-256g--a9
++++ b/hosts/taishan200-2280-2s64p-256g--a9
+@@ -15,3 +15,4 @@ mac_addr:
+ - 44:a1:91:35:1a:72
+ - 44:a1:91:35:1a:73
+ model_name: Kunpeng-920
++ipmi_ip: 9.3.1.9
+--
+2.23.0
+
diff --git a/hosts/taishan200-2280-2s64p-256g--a9 b/hosts/taishan200-2280-2s64p-256g--a9
index d6c4353..a6aee01 100644
--- a/hosts/taishan200-2280-2s64p-256g--a9
+++ b/hosts/taishan200-2280-2s64p-256g--a9
@@ -1,6 +1,6 @@
nr_node: 4
nr_cpu: 128
-memory: 128G
+memory: 256G
nr_hdd_partitions: 1
hdd_partitions:
- /dev/disk/by-id/scsi-35000c500bd6a1347
--
2.23.0
1
0
when use system() or %x() call shell command git, there would be a new
child process to do git command. And it seems the child process doesn't
clear everytime when it's finished. It needs to be waited by parent
process.
But it often comes out 'no child' error when wait in main thread, so I
trap SIGCHLD to SIG_IGN, and the init process will handle it.
Signed-off-by: Li Yuanchao <lyc163mail(a)163.com>
---
lib/git_mirror.rb | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/lib/git_mirror.rb b/lib/git_mirror.rb
index 88a94ac..0420c10 100644
--- a/lib/git_mirror.rb
+++ b/lib/git_mirror.rb
@@ -46,7 +46,7 @@ class GitMirror
def git_fetch(mirror_dir)
fetch_info = %x(git -C #{mirror_dir} fetch 2>&1)
# Check whether mirror_dir is a good git repository by 3 conditions. If not, delete it.
- if ($CHILD_STATUS.exitstatus == ERR_CODE) && fetch_info.include?(ERR_MESSAGE) && Dir.empty?(mirror_dir)
+ if fetch_info.include?(ERR_MESSAGE) && Dir.empty?(mirror_dir)
FileUtils.rmdir(mirror_dir)
end
return fetch_info.include? '->'
@@ -89,6 +89,7 @@ class MirrorMain
connection.start
channel = connection.create_channel
@message_queue = channel.queue('new_refs')
+ Signal.trap(:SIGCHLD, 'SIG_IGN')
end
def fork_stat_init(stat_key)
--
2.23.0
3
4

13 Oct '20
Signed-off-by: Luan Shengde <luanshengde2(a)huawei.com>
---
container/send-internet-mail/build | 5 +++++
1 file changed, 5 insertions(+)
create mode 100755 container/send-internet-mail/build
diff --git a/container/send-internet-mail/build b/container/send-internet-mail/build
new file mode 100755
index 0000000..078adaf
--- /dev/null
+++ b/container/send-internet-mail/build
@@ -0,0 +1,5 @@
+#!/bin/sh
+# SPDX-License-Identifier: MulanPSL-2.0+
+# Copyright (c) 2020 Huawei Technologies Co., Ltd. All rights reserved.
+
+docker build -t send-internet-mail:latest .
--
2.23.0
1
0

13 Oct '20
Signed-off-by: Luan Shengde <luanshengde2(a)huawei.com>
---
container/send-internet-mail/Dockerfile | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
create mode 100644 container/send-internet-mail/Dockerfile
diff --git a/container/send-internet-mail/Dockerfile b/container/send-internet-mail/Dockerfile
new file mode 100644
index 0000000..b8bc3a5
--- /dev/null
+++ b/container/send-internet-mail/Dockerfile
@@ -0,0 +1,21 @@
+# SPDX-License-Identifier: MulanPSL-2.0+
+# Copyright (c) 2020 Huawei Technologies Co., Ltd. All rights reserved.
+
+FROM debian
+
+MAINTAINER shdluan(a)163.com
+
+ENV DEBIAN_FRONTEND noninteractive
+
+RUN apt-get update && \
+ apt-get install -y ruby-mail ruby-json ruby-sinatra && \
+ ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
+ echo 'Asia/Shanghai' > /etc/timezone
+
+EXPOSE 25
+
+COPY mail-post.rb /usr/local/bin/
+
+COPY send-internet-mail.rb /usr/local/bin/
+
+CMD ["/usr/local/bin/mail-post.rb"]
--
2.23.0
1
0

[PATCH v2 compass-ci 2/5] container/send-internet-mail: send-internet-mail.rb
by Luan Shengde 13 Oct '20
by Luan Shengde 13 Oct '20
13 Oct '20
setup smtp
send mail with received email info
Signed-off-by: Luan Shengde <luanshengde2(a)huawei.com>
---
.../send-internet-mail/send-internet-mail.rb | 33 +++++++++++++++++++
1 file changed, 33 insertions(+)
create mode 100755 container/send-internet-mail/send-internet-mail.rb
diff --git a/container/send-internet-mail/send-internet-mail.rb b/container/send-internet-mail/send-internet-mail.rb
new file mode 100755
index 0000000..f0d7698
--- /dev/null
+++ b/container/send-internet-mail/send-internet-mail.rb
@@ -0,0 +1,33 @@
+#!/usr/bin/env ruby
+# SPDX-License-Identifier: MulanPSL-2.0+
+# Copyright (c) 2020 Huawei Technologies Co., Ltd. All rights reserved.
+# frozen_string_literal: true
+
+require 'mail'
+
+# setup smtp config
+smtp = {
+ address: 'smtp.qq.com',
+ port: 25,
+ domain: 'qq.com',
+ user_name: 'compass-ci(a)qq.com',
+ password: 'passwd for user_name',
+ # enable_ssl: true,
+ # authentication: :login,
+ openssl_verify_mode: 'none',
+ enable_starttls_auto: true
+}
+
+Mail.defaults { delivery_method :smtp, smtp }
+
+# send mail
+def send_mail(mail_info)
+ mail = Mail.new do
+ references mail_info['references']
+ from 'compass-ci(a)qq.com'
+ to mail_info['to']
+ subject mail_info['subject']
+ body mail_info['body']
+ end
+ mail.deliver!
+end
--
2.23.0
1
0
Signed-off-by: cuiyili <2268260388(a)qq.com>
---
container/conserver/conserver-head.cf | 16 +++++++++++
container/conserver/generate_conserver | 37 ++++++++++++++++++++++++++
2 files changed, 53 insertions(+)
create mode 100644 container/conserver/conserver-head.cf
create mode 100755 container/conserver/generate_conserver
diff --git a/container/conserver/conserver-head.cf b/container/conserver/conserver-head.cf
new file mode 100644
index 0000000..6648f88
--- /dev/null
+++ b/container/conserver/conserver-head.cf
@@ -0,0 +1,16 @@
+# This is a fairly basic configuration file that interacts with one
+
+default * {
+ logfile /srv/cci/serial/logs/&; # '&' is replaced with console name
+ timestamp 1hab; # write timestamps
+ rw *; # allow all users
+ type exec;
+ master localhost;
+ portbase 2000; # port numbers start at 2001 and
+ portinc 100; # go up by 1 (port #1 == 2001, etc)
+}
+
+access * {
+ trusted 127.0.0.1;
+}
+
diff --git a/container/conserver/generate_conserver b/container/conserver/generate_conserver
new file mode 100755
index 0000000..0d01350
--- /dev/null
+++ b/container/conserver/generate_conserver
@@ -0,0 +1,37 @@
+#!/bin/bash
+# SPDX-License-Identifier: MulanPSL-2.0+
+
+git clone file:///$CCI_REPOS/lab-$lab.git > /dev/null 2>&1 || exit 1
+
+cat conserver-head.cf > conserver.cf
+
+# lab-z9/hosts/xxx
+# nr_node: x
+# nr_cpu: xx
+# memory: xx
+# nr_hdd_partitions: x
+# hdd_partitions:
+# - xx
+# rootfs_partition:
+# - xx
+# mac_addr:
+# - xx:xx:xx:xx:xx:xx
+# model_name: xx-xx
+for host in $(ls lab-$lab/hosts/*)
+do
+ ipmi_ip=$(grep -q "ipmi_ip:" $host | awk '{print $2}')
+ [[ "$ipmi_ip" =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]] || continue
+
+ textbox=$host
+ [ -n "$textbox" ] || continue
+
+ cat <<EOF >> conserver.cf
+console $textbox {
+ exec /usr/local/bin/ipmi-sol $ipmi_ip;
+}
+
+EOF
+
+done
+
+[ -d "$PWD/lab-$lab" ] && rm -rf "$PWD/lab-$lab"
--
2.23.0
2
1
Signed-off-by: Zhang Yu <2134782174(a)qq.com>
---
distro/depends/host-info | 1 +
1 file changed, 1 insertion(+)
create mode 100644 distro/depends/host-info
diff --git a/distro/depends/host-info b/distro/depends/host-info
new file mode 100644
index 00000000..3335a68b
--- /dev/null
+++ b/distro/depends/host-info
@@ -0,0 +1 @@
+ipmitool
--
2.23.0
1
0

[PATCH v2 lkp-tests] pkg/lmbench3: fix the lmbench3 adaption the openeuler OS
by Bai Jing 13 Oct '20
by Bai Jing 13 Oct '20
13 Oct '20
problem:
../scripts/gnu-os: unable to guess system type. This script,
last modified 2004-08-18,has failed to recognize the operating
system you are using
Modification:
1.sed -i 's/llseek/lseek64/g' ./src/disk.c
2.mkdir SCCS && touch ./SCCS/s.ChangeSet
3.sripts/gnu-os update
Signed-off-by: Bai Jing <799286817(a)qq.com>
---
pkg/lmbench3/lmbench.patch | 2358 ++++++++++++++++++++++++++++++++++++
1 file changed, 2358 insertions(+)
create mode 100644 pkg/lmbench3/lmbench.patch
diff --git a/pkg/lmbench3/lmbench.patch b/pkg/lmbench3/lmbench.patch
new file mode 100644
index 00000000..78550d56
--- /dev/null
+++ b/pkg/lmbench3/lmbench.patch
@@ -0,0 +1,2358 @@
+diff -uNr b/scripts/gnu-os a/scripts/gnu-os
+--- b/scripts/gnu-os 2020-09-23 09:33:24.921303235 +0800
++++ a/scripts/gnu-os 2020-09-23 09:33:24.913302982 +0800
+@@ -1,13 +1,12 @@
+ #! /bin/sh
+ # Attempt to guess a canonical system name.
+-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+-# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
++# Copyright 1992-2020 Free Software Foundation, Inc.
+
+-timestamp='2004-08-18'
++timestamp='2020-04-26'
+
+ # This file is free software; you can redistribute it and/or modify it
+ # under the terms of the GNU General Public License as published by
+-# the Free Software Foundation; either version 2 of the License, or
++# the Free Software Foundation; either version 3 of the License, or
+ # (at your option) any later version.
+ #
+ # This program is distributed in the hope that it will be useful, but
+@@ -16,24 +15,22 @@
+ # General Public License for more details.
+ #
+ # You should have received a copy of the GNU General Public License
+-# along with this program; if not, write to the Free Software
+-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
++# along with this program; if not, see <https://www.gnu.org/licenses/>.
+ #
+ # As a special exception to the GNU General Public License, if you
+ # distribute this file as part of a program that contains a
+ # configuration script generated by Autoconf, you may include it under
+-# the same distribution terms that you use for the rest of that program.
+-
+-# Originally written by Per Bothner <per(a)bothner.com>.
+-# Please send patches to <config-patches(a)gnu.org>. Submit a context
+-# diff and a properly formatted ChangeLog entry.
++# the same distribution terms that you use for the rest of that
++# program. This Exception is an additional permission under section 7
++# of the GNU General Public License, version 3 ("GPLv3").
++#
++# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
+ #
+-# This script attempts to guess a canonical system name similar to
+-# config.sub. If it succeeds, it prints the system name on stdout, and
+-# exits with 0. Otherwise, it exits with 1.
++# You can get the latest version of this script from:
++# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.gue…
+ #
+-# The plan is that this can be called by configure scripts if you
+-# don't specify an explicit build system type.
++# Please send patches to <config-patches(a)gnu.org>.
++
+
+ me=`echo "$0" | sed -e 's,.*/,,'`
+
+@@ -42,7 +39,7 @@
+
+ Output the configuration name of the system \`$me' is run on.
+
+-Operation modes:
++Options:
+ -h, --help print this help, then exit
+ -t, --time-stamp print date of last modification, then exit
+ -v, --version print version number, then exit
+@@ -53,8 +50,7 @@
+ GNU config.guess ($timestamp)
+
+ Originally written by Per Bothner.
+-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+-Free Software Foundation, Inc.
++Copyright 1992-2020 Free Software Foundation, Inc.
+
+ This is free software; see the source for copying conditions. There is NO
+ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+@@ -66,11 +62,11 @@
+ while test $# -gt 0 ; do
+ case $1 in
+ --time-stamp | --time* | -t )
+- echo "$timestamp" ; exit 0 ;;
++ echo "$timestamp" ; exit ;;
+ --version | -v )
+- echo "$version" ; exit 0 ;;
++ echo "$version" ; exit ;;
+ --help | --h* | -h )
+- echo "$usage"; exit 0 ;;
++ echo "$usage"; exit ;;
+ -- ) # Stop option processing
+ shift; break ;;
+ - ) # Use stdin as input.
+@@ -88,15 +84,6 @@
+ exit 1
+ fi
+
+-trap 'exit 1' 1 2 15
+-
+-for t in /usr/tmp /var/tmp /tmp; do
+- if [ -d $t -a -w $t ]
+- then TMPDIR=$t
+- break
+- fi
+-done
+-
+ # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
+ # compiler to aid in system detection is discouraged as it requires
+ # temporary files to be created and, as you can see below, it is a
+@@ -107,34 +94,40 @@
+
+ # Portable tmp directory creation inspired by the Autoconf team.
+
+-set_cc_for_build='
+-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
+-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
+-: ${TMPDIR=/tmp} ;
+- { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
+- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
+- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
+-dummy=$tmp/dummy ;
+-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
+-case $CC_FOR_BUILD,$HOST_CC,$CC in
+- ,,) echo "int x;" > $dummy.c ;
+- for c in cc gcc c89 c99 ; do
+- if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
+- CC_FOR_BUILD="$c"; break ;
+- fi ;
+- done ;
+- if test x"$CC_FOR_BUILD" = x ; then
+- CC_FOR_BUILD=no_compiler_found ;
+- fi
+- ;;
+- ,,*) CC_FOR_BUILD=$CC ;;
+- ,*,*) CC_FOR_BUILD=$HOST_CC ;;
+-esac ;'
++tmp=
++# shellcheck disable=SC2172
++trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15
++
++set_cc_for_build() {
++ # prevent multiple calls if $tmp is already set
++ test "$tmp" && return 0
++ : "${TMPDIR=/tmp}"
++ # shellcheck disable=SC2039
++ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
++ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } ||
++ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } ||
++ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; }
++ dummy=$tmp/dummy
++ case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in
++ ,,) echo "int x;" > "$dummy.c"
++ for driver in cc gcc c89 c99 ; do
++ if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
++ CC_FOR_BUILD="$driver"
++ break
++ fi
++ done
++ if test x"$CC_FOR_BUILD" = x ; then
++ CC_FOR_BUILD=no_compiler_found
++ fi
++ ;;
++ ,,*) CC_FOR_BUILD=$CC ;;
++ ,*,*) CC_FOR_BUILD=$HOST_CC ;;
++ esac
++}
+
+ # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
+ # (ghazi(a)noc.rutgers.edu 1994-08-24)
+-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
++if test -f /.attbin/uname ; then
+ PATH=$PATH:/.attbin ; export PATH
+ fi
+
+@@ -143,12 +136,40 @@
+ UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
+ UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
+
++case "$UNAME_SYSTEM" in
++Linux|GNU|GNU/*)
++ # If the system lacks a compiler, then just pick glibc.
++ # We could probably try harder.
++ LIBC=gnu
++
++ set_cc_for_build
++ cat <<-EOF > "$dummy.c"
++ #include <features.h>
++ #if defined(__UCLIBC__)
++ LIBC=uclibc
++ #elif defined(__dietlibc__)
++ LIBC=dietlibc
++ #else
++ LIBC=gnu
++ #endif
++ EOF
++ eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`"
++
++ # If ldd exists, use it to detect musl libc.
++ if command -v ldd >/dev/null && \
++ ldd --version 2>&1 | grep -q ^musl
++ then
++ LIBC=musl
++ fi
++ ;;
++esac
++
+ # Note: order is significant - the case branches are not exclusive.
+
+-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
++case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
+ *:NetBSD:*:*)
+ # NetBSD (nbsd) targets should (where applicable) match one or
+- # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
++ # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
+ # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
+ # switched to ELF, *-*-netbsd* would select the old
+ # object file format. This provides both forward
+@@ -158,22 +179,33 @@
+ # Note: NetBSD doesn't particularly care about the vendor
+ # portion of the name. We always set it to "unknown".
+ sysctl="sysctl -n hw.machine_arch"
+- UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
+- /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
+- case "${UNAME_MACHINE_ARCH}" in
++ UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
++ "/sbin/$sysctl" 2>/dev/null || \
++ "/usr/sbin/$sysctl" 2>/dev/null || \
++ echo unknown)`
++ case "$UNAME_MACHINE_ARCH" in
+ armeb) machine=armeb-unknown ;;
+ arm*) machine=arm-unknown ;;
+ sh3el) machine=shl-unknown ;;
+ sh3eb) machine=sh-unknown ;;
+- *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
++ sh5el) machine=sh5le-unknown ;;
++ earmv*)
++ arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
++ endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'`
++ machine="${arch}${endian}"-unknown
++ ;;
++ *) machine="$UNAME_MACHINE_ARCH"-unknown ;;
+ esac
+ # The Operating System including object format, if it has switched
+- # to ELF recently, or will in the future.
+- case "${UNAME_MACHINE_ARCH}" in
++ # to ELF recently (or will in the future) and ABI.
++ case "$UNAME_MACHINE_ARCH" in
++ earm*)
++ os=netbsdelf
++ ;;
+ arm*|i386|m68k|ns32k|sh3*|sparc|vax)
+- eval $set_cc_for_build
++ set_cc_for_build
+ if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
+- | grep __ELF__ >/dev/null
++ | grep -q __ELF__
+ then
+ # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
+ # Return netbsd for either. FIX?
+@@ -183,7 +215,14 @@
+ fi
+ ;;
+ *)
+- os=netbsd
++ os=netbsd
++ ;;
++ esac
++ # Determine ABI tags.
++ case "$UNAME_MACHINE_ARCH" in
++ earm*)
++ expr='s/^earmv[0-9]/-eabi/;s/eb$//'
++ abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"`
+ ;;
+ esac
+ # The OS release
+@@ -191,65 +230,70 @@
+ # thus, need a distinct triplet. However, they do not need
+ # kernel version information, so it can be replaced with a
+ # suitable tag, in the style of linux-gnu.
+- case "${UNAME_VERSION}" in
++ case "$UNAME_VERSION" in
+ Debian*)
+ release='-gnu'
+ ;;
+ *)
+- release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
++ release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2`
+ ;;
+ esac
+ # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
+ # contains redundant information, the shorter form:
+ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
+- echo "${machine}-${os}${release}"
+- exit 0 ;;
+- amiga:OpenBSD:*:*)
+- echo m68k-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- arc:OpenBSD:*:*)
+- echo mipsel-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- hp300:OpenBSD:*:*)
+- echo m68k-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- mac68k:OpenBSD:*:*)
+- echo m68k-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- macppc:OpenBSD:*:*)
+- echo powerpc-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- mvme68k:OpenBSD:*:*)
+- echo m68k-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- mvme88k:OpenBSD:*:*)
+- echo m88k-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- mvmeppc:OpenBSD:*:*)
+- echo powerpc-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- pegasos:OpenBSD:*:*)
+- echo powerpc-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- pmax:OpenBSD:*:*)
+- echo mipsel-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- sgi:OpenBSD:*:*)
+- echo mipseb-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- sun3:OpenBSD:*:*)
+- echo m68k-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- wgrisc:OpenBSD:*:*)
+- echo mipsel-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
++ echo "$machine-${os}${release}${abi-}"
++ exit ;;
++ *:Bitrig:*:*)
++ UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
++ echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE"
++ exit ;;
+ *:OpenBSD:*:*)
+- echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
++ UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
++ echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE"
++ exit ;;
++ *:LibertyBSD:*:*)
++ UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
++ echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE"
++ exit ;;
++ *:MidnightBSD:*:*)
++ echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE"
++ exit ;;
++ *:ekkoBSD:*:*)
++ echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE"
++ exit ;;
++ *:SolidBSD:*:*)
++ echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
++ exit ;;
++ *:OS108:*:*)
++ echo "$UNAME_MACHINE"-unknown-os108_"$UNAME_RELEASE"
++ exit ;;
++ macppc:MirBSD:*:*)
++ echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
++ exit ;;
++ *:MirBSD:*:*)
++ echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE"
++ exit ;;
++ *:Sortix:*:*)
++ echo "$UNAME_MACHINE"-unknown-sortix
++ exit ;;
++ *:Twizzler:*:*)
++ echo "$UNAME_MACHINE"-unknown-twizzler
++ exit ;;
++ *:Redox:*:*)
++ echo "$UNAME_MACHINE"-unknown-redox
++ exit ;;
++ mips:OSF1:*.*)
++ echo mips-dec-osf1
++ exit ;;
+ alpha:OSF1:*:*)
+- if test $UNAME_RELEASE = "V4.0"; then
++ case $UNAME_RELEASE in
++ *4.0)
+ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
+- fi
++ ;;
++ *5.*)
++ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
++ ;;
++ esac
+ # According to Compaq, /usr/sbin/psrinfo has been available on
+ # OSF/1 and Tru64 systems produced since 1995. I hope that
+ # covers most systems running today. This code pipes the CPU
+@@ -257,75 +301,73 @@
+ ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
+ case "$ALPHA_CPU_TYPE" in
+ "EV4 (21064)")
+- UNAME_MACHINE="alpha" ;;
++ UNAME_MACHINE=alpha ;;
+ "EV4.5 (21064)")
+- UNAME_MACHINE="alpha" ;;
++ UNAME_MACHINE=alpha ;;
+ "LCA4 (21066/21068)")
+- UNAME_MACHINE="alpha" ;;
++ UNAME_MACHINE=alpha ;;
+ "EV5 (21164)")
+- UNAME_MACHINE="alphaev5" ;;
++ UNAME_MACHINE=alphaev5 ;;
+ "EV5.6 (21164A)")
+- UNAME_MACHINE="alphaev56" ;;
++ UNAME_MACHINE=alphaev56 ;;
+ "EV5.6 (21164PC)")
+- UNAME_MACHINE="alphapca56" ;;
++ UNAME_MACHINE=alphapca56 ;;
+ "EV5.7 (21164PC)")
+- UNAME_MACHINE="alphapca57" ;;
++ UNAME_MACHINE=alphapca57 ;;
+ "EV6 (21264)")
+- UNAME_MACHINE="alphaev6" ;;
++ UNAME_MACHINE=alphaev6 ;;
+ "EV6.7 (21264A)")
+- UNAME_MACHINE="alphaev67" ;;
++ UNAME_MACHINE=alphaev67 ;;
+ "EV6.8CB (21264C)")
+- UNAME_MACHINE="alphaev68" ;;
++ UNAME_MACHINE=alphaev68 ;;
+ "EV6.8AL (21264B)")
+- UNAME_MACHINE="alphaev68" ;;
++ UNAME_MACHINE=alphaev68 ;;
+ "EV6.8CX (21264D)")
+- UNAME_MACHINE="alphaev68" ;;
++ UNAME_MACHINE=alphaev68 ;;
+ "EV6.9A (21264/EV69A)")
+- UNAME_MACHINE="alphaev69" ;;
++ UNAME_MACHINE=alphaev69 ;;
+ "EV7 (21364)")
+- UNAME_MACHINE="alphaev7" ;;
++ UNAME_MACHINE=alphaev7 ;;
+ "EV7.9 (21364A)")
+- UNAME_MACHINE="alphaev79" ;;
++ UNAME_MACHINE=alphaev79 ;;
+ esac
++ # A Pn.n version is a patched version.
+ # A Vn.n version is a released version.
+ # A Tn.n version is a released field test version.
+ # A Xn.n version is an unreleased experimental baselevel.
+ # 1.2 uses "1.2" for uname -r.
+- echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+- exit 0 ;;
+- Alpha*:OpenVMS:*:*)
+- echo alpha-hp-vms
+- exit 0 ;;
+- Alpha\ *:Windows_NT*:*)
+- # How do we know it's Interix rather than the generic POSIX subsystem?
+- # Should we change UNAME_MACHINE based on the output of uname instead
+- # of the specific Alpha model?
+- echo alpha-pc-interix
+- exit 0 ;;
+- 21064:Windows_NT:50:3)
+- echo alpha-dec-winnt3.5
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`"
++ # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
++ exitcode=$?
++ trap '' 0
++ exit $exitcode ;;
+ Amiga*:UNIX_System_V:4.0:*)
+ echo m68k-unknown-sysv4
+- exit 0;;
++ exit ;;
+ *:[Aa]miga[Oo][Ss]:*:*)
+- echo ${UNAME_MACHINE}-unknown-amigaos
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-amigaos
++ exit ;;
+ *:[Mm]orph[Oo][Ss]:*:*)
+- echo ${UNAME_MACHINE}-unknown-morphos
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-morphos
++ exit ;;
+ *:OS/390:*:*)
+ echo i370-ibm-openedition
+- exit 0 ;;
++ exit ;;
++ *:z/VM:*:*)
++ echo s390-ibm-zvmoe
++ exit ;;
+ *:OS400:*:*)
+- echo powerpc-ibm-os400
+- exit 0 ;;
++ echo powerpc-ibm-os400
++ exit ;;
+ arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
+- echo arm-acorn-riscix${UNAME_RELEASE}
+- exit 0;;
++ echo arm-acorn-riscix"$UNAME_RELEASE"
++ exit ;;
++ arm*:riscos:*:*|arm*:RISCOS:*:*)
++ echo arm-unknown-riscos
++ exit ;;
+ SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
+ echo hppa1.1-hitachi-hiuxmpp
+- exit 0;;
++ exit ;;
+ Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
+ # akee(a)wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
+ if test "`(/bin/universe) 2>/dev/null`" = att ; then
+@@ -333,32 +375,51 @@
+ else
+ echo pyramid-pyramid-bsd
+ fi
+- exit 0 ;;
++ exit ;;
+ NILE*:*:*:dcosx)
+ echo pyramid-pyramid-svr4
+- exit 0 ;;
++ exit ;;
+ DRS?6000:unix:4.0:6*)
+ echo sparc-icl-nx6
+- exit 0 ;;
+- DRS?6000:UNIX_SV:4.2*:7*)
++ exit ;;
++ DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
+ case `/usr/bin/uname -p` in
+- sparc) echo sparc-icl-nx7 && exit 0 ;;
++ sparc) echo sparc-icl-nx7; exit ;;
+ esac ;;
++ s390x:SunOS:*:*)
++ echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
++ exit ;;
+ sun4H:SunOS:5.*:*)
+- echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+- exit 0 ;;
++ echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
++ exit ;;
+ sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
+- echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+- exit 0 ;;
+- i86pc:SunOS:5.*:*)
+- echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+- exit 0 ;;
++ echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
++ exit ;;
++ i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
++ echo i386-pc-auroraux"$UNAME_RELEASE"
++ exit ;;
++ i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
++ set_cc_for_build
++ SUN_ARCH=i386
++ # If there is a compiler, see if it is configured for 64-bit objects.
++ # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
++ # This test works for both compilers.
++ if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
++ if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
++ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
++ grep IS_64BIT_ARCH >/dev/null
++ then
++ SUN_ARCH=x86_64
++ fi
++ fi
++ echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
++ exit ;;
+ sun4*:SunOS:6*:*)
+ # According to config.sub, this is the proper way to canonicalize
+ # SunOS6. Hard to guess exactly what SunOS6 will be like, but
+ # it's likely to be more like Solaris than SunOS4.
+- echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+- exit 0 ;;
++ echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
++ exit ;;
+ sun4*:SunOS:*:*)
+ case "`/usr/bin/arch -k`" in
+ Series*|S4*)
+@@ -366,26 +427,26 @@
+ ;;
+ esac
+ # Japanese Language versions have a version number like `4.1.3-JL'.
+- echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
+- exit 0 ;;
++ echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`"
++ exit ;;
+ sun3*:SunOS:*:*)
+- echo m68k-sun-sunos${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-sun-sunos"$UNAME_RELEASE"
++ exit ;;
+ sun*:*:4.2BSD:*)
+ UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
+- test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
++ test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
+ case "`/bin/arch`" in
+ sun3)
+- echo m68k-sun-sunos${UNAME_RELEASE}
++ echo m68k-sun-sunos"$UNAME_RELEASE"
+ ;;
+ sun4)
+- echo sparc-sun-sunos${UNAME_RELEASE}
++ echo sparc-sun-sunos"$UNAME_RELEASE"
+ ;;
+ esac
+- exit 0 ;;
++ exit ;;
+ aushp:SunOS:*:*)
+- echo sparc-auspex-sunos${UNAME_RELEASE}
+- exit 0 ;;
++ echo sparc-auspex-sunos"$UNAME_RELEASE"
++ exit ;;
+ # The situation for MiNT is a little confusing. The machine name
+ # can be virtually everything (everything which is not
+ # "atarist" or "atariste" at least should have a processor
+@@ -395,41 +456,44 @@
+ # MiNT. But MiNT is downward compatible to TOS, so this should
+ # be no problem.
+ atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
+- echo m68k-atari-mint${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-atari-mint"$UNAME_RELEASE"
++ exit ;;
+ atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
+- echo m68k-atari-mint${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-atari-mint"$UNAME_RELEASE"
++ exit ;;
+ *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
+- echo m68k-atari-mint${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-atari-mint"$UNAME_RELEASE"
++ exit ;;
+ milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
+- echo m68k-milan-mint${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-milan-mint"$UNAME_RELEASE"
++ exit ;;
+ hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
+- echo m68k-hades-mint${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-hades-mint"$UNAME_RELEASE"
++ exit ;;
+ *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
+- echo m68k-unknown-mint${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-unknown-mint"$UNAME_RELEASE"
++ exit ;;
++ m68k:machten:*:*)
++ echo m68k-apple-machten"$UNAME_RELEASE"
++ exit ;;
+ powerpc:machten:*:*)
+- echo powerpc-apple-machten${UNAME_RELEASE}
+- exit 0 ;;
++ echo powerpc-apple-machten"$UNAME_RELEASE"
++ exit ;;
+ RISC*:Mach:*:*)
+ echo mips-dec-mach_bsd4.3
+- exit 0 ;;
++ exit ;;
+ RISC*:ULTRIX:*:*)
+- echo mips-dec-ultrix${UNAME_RELEASE}
+- exit 0 ;;
++ echo mips-dec-ultrix"$UNAME_RELEASE"
++ exit ;;
+ VAX*:ULTRIX*:*:*)
+- echo vax-dec-ultrix${UNAME_RELEASE}
+- exit 0 ;;
++ echo vax-dec-ultrix"$UNAME_RELEASE"
++ exit ;;
+ 2020:CLIX:*:* | 2430:CLIX:*:*)
+- echo clipper-intergraph-clix${UNAME_RELEASE}
+- exit 0 ;;
++ echo clipper-intergraph-clix"$UNAME_RELEASE"
++ exit ;;
+ mips:*:*:UMIPS | mips:*:*:RISCos)
+- eval $set_cc_for_build
+- sed 's/^ //' << EOF >$dummy.c
++ set_cc_for_build
++ sed 's/^ //' << EOF > "$dummy.c"
+ #ifdef __cplusplus
+ #include <stdio.h> /* for printf() prototype */
+ int main (int argc, char *argv[]) {
+@@ -438,94 +502,95 @@
+ #endif
+ #if defined (host_mips) && defined (MIPSEB)
+ #if defined (SYSTYPE_SYSV)
+- printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
++ printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0);
+ #endif
+ #if defined (SYSTYPE_SVR4)
+- printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
++ printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0);
+ #endif
+ #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
+- printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
++ printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0);
+ #endif
+ #endif
+ exit (-1);
+ }
+ EOF
+- $CC_FOR_BUILD -o $dummy $dummy.c \
+- && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
+- && exit 0
+- echo mips-mips-riscos${UNAME_RELEASE}
+- exit 0 ;;
++ $CC_FOR_BUILD -o "$dummy" "$dummy.c" &&
++ dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` &&
++ SYSTEM_NAME=`"$dummy" "$dummyarg"` &&
++ { echo "$SYSTEM_NAME"; exit; }
++ echo mips-mips-riscos"$UNAME_RELEASE"
++ exit ;;
+ Motorola:PowerMAX_OS:*:*)
+ echo powerpc-motorola-powermax
+- exit 0 ;;
++ exit ;;
+ Motorola:*:4.3:PL8-*)
+ echo powerpc-harris-powermax
+- exit 0 ;;
++ exit ;;
+ Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
+ echo powerpc-harris-powermax
+- exit 0 ;;
++ exit ;;
+ Night_Hawk:Power_UNIX:*:*)
+ echo powerpc-harris-powerunix
+- exit 0 ;;
++ exit ;;
+ m88k:CX/UX:7*:*)
+ echo m88k-harris-cxux7
+- exit 0 ;;
++ exit ;;
+ m88k:*:4*:R4*)
+ echo m88k-motorola-sysv4
+- exit 0 ;;
++ exit ;;
+ m88k:*:3*:R3*)
+ echo m88k-motorola-sysv3
+- exit 0 ;;
++ exit ;;
+ AViiON:dgux:*:*)
+- # DG/UX returns AViiON for all architectures
+- UNAME_PROCESSOR=`/usr/bin/uname -p`
+- if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
++ # DG/UX returns AViiON for all architectures
++ UNAME_PROCESSOR=`/usr/bin/uname -p`
++ if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ]
+ then
+- if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
+- [ ${TARGET_BINARY_INTERFACE}x = x ]
++ if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \
++ [ "$TARGET_BINARY_INTERFACE"x = x ]
+ then
+- echo m88k-dg-dgux${UNAME_RELEASE}
++ echo m88k-dg-dgux"$UNAME_RELEASE"
+ else
+- echo m88k-dg-dguxbcs${UNAME_RELEASE}
++ echo m88k-dg-dguxbcs"$UNAME_RELEASE"
+ fi
+ else
+- echo i586-dg-dgux${UNAME_RELEASE}
++ echo i586-dg-dgux"$UNAME_RELEASE"
+ fi
+- exit 0 ;;
++ exit ;;
+ M88*:DolphinOS:*:*) # DolphinOS (SVR3)
+ echo m88k-dolphin-sysv3
+- exit 0 ;;
++ exit ;;
+ M88*:*:R3*:*)
+ # Delta 88k system running SVR3
+ echo m88k-motorola-sysv3
+- exit 0 ;;
++ exit ;;
+ XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
+ echo m88k-tektronix-sysv3
+- exit 0 ;;
++ exit ;;
+ Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
+ echo m68k-tektronix-bsd
+- exit 0 ;;
++ exit ;;
+ *:IRIX*:*:*)
+- echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
+- exit 0 ;;
++ echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`"
++ exit ;;
+ ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
+- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
+- exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
++ echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
++ exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
+ i*86:AIX:*:*)
+ echo i386-ibm-aix
+- exit 0 ;;
++ exit ;;
+ ia64:AIX:*:*)
+ if [ -x /usr/bin/oslevel ] ; then
+ IBM_REV=`/usr/bin/oslevel`
+ else
+- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
++ IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
+ fi
+- echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV"
++ exit ;;
+ *:AIX:2:3)
+ if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
+- eval $set_cc_for_build
+- sed 's/^ //' << EOF >$dummy.c
++ set_cc_for_build
++ sed 's/^ //' << EOF > "$dummy.c"
+ #include <sys/systemcfg.h>
+
+ main()
+@@ -536,128 +601,143 @@
+ exit(0);
+ }
+ EOF
+- $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
+- echo rs6000-ibm-aix3.2.5
++ if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"`
++ then
++ echo "$SYSTEM_NAME"
++ else
++ echo rs6000-ibm-aix3.2.5
++ fi
+ elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
+ echo rs6000-ibm-aix3.2.4
+ else
+ echo rs6000-ibm-aix3.2
+ fi
+- exit 0 ;;
+- *:AIX:*:[45])
++ exit ;;
++ *:AIX:*:[4567])
+ IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
+- if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
++ if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then
+ IBM_ARCH=rs6000
+ else
+ IBM_ARCH=powerpc
+ fi
+- if [ -x /usr/bin/oslevel ] ; then
+- IBM_REV=`/usr/bin/oslevel`
++ if [ -x /usr/bin/lslpp ] ; then
++ IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
++ awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
+ else
+- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
++ IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
+ fi
+- echo ${IBM_ARCH}-ibm-aix${IBM_REV}
+- exit 0 ;;
++ echo "$IBM_ARCH"-ibm-aix"$IBM_REV"
++ exit ;;
+ *:AIX:*:*)
+ echo rs6000-ibm-aix
+- exit 0 ;;
+- ibmrt:4.4BSD:*|romp-ibm:BSD:*)
++ exit ;;
++ ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)
+ echo romp-ibm-bsd4.4
+- exit 0 ;;
++ exit ;;
+ ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
+- echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
+- exit 0 ;; # report: romp-ibm BSD 4.3
++ echo romp-ibm-bsd"$UNAME_RELEASE" # 4.3 with uname added to
++ exit ;; # report: romp-ibm BSD 4.3
+ *:BOSX:*:*)
+ echo rs6000-bull-bosx
+- exit 0 ;;
++ exit ;;
+ DPX/2?00:B.O.S.:*:*)
+ echo m68k-bull-sysv3
+- exit 0 ;;
++ exit ;;
+ 9000/[34]??:4.3bsd:1.*:*)
+ echo m68k-hp-bsd
+- exit 0 ;;
++ exit ;;
+ hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
+ echo m68k-hp-bsd4.4
+- exit 0 ;;
++ exit ;;
+ 9000/[34678]??:HP-UX:*:*)
+- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+- case "${UNAME_MACHINE}" in
+- 9000/31? ) HP_ARCH=m68000 ;;
+- 9000/[34]?? ) HP_ARCH=m68k ;;
++ HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
++ case "$UNAME_MACHINE" in
++ 9000/31?) HP_ARCH=m68000 ;;
++ 9000/[34]??) HP_ARCH=m68k ;;
+ 9000/[678][0-9][0-9])
+ if [ -x /usr/bin/getconf ]; then
+ sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
+- sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
+- case "${sc_cpu_version}" in
+- 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
+- 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
+- 532) # CPU_PA_RISC2_0
+- case "${sc_kernel_bits}" in
+- 32) HP_ARCH="hppa2.0n" ;;
+- 64) HP_ARCH="hppa2.0w" ;;
+- '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
+- esac ;;
+- esac
++ sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
++ case "$sc_cpu_version" in
++ 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
++ 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
++ 532) # CPU_PA_RISC2_0
++ case "$sc_kernel_bits" in
++ 32) HP_ARCH=hppa2.0n ;;
++ 64) HP_ARCH=hppa2.0w ;;
++ '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20
++ esac ;;
++ esac
+ fi
+- if [ "${HP_ARCH}" = "" ]; then
+- eval $set_cc_for_build
+- sed 's/^ //' << EOF >$dummy.c
+-
+- #define _HPUX_SOURCE
+- #include <stdlib.h>
+- #include <unistd.h>
+-
+- int main ()
+- {
+- #if defined(_SC_KERNEL_BITS)
+- long bits = sysconf(_SC_KERNEL_BITS);
+- #endif
+- long cpu = sysconf (_SC_CPU_VERSION);
+-
+- switch (cpu)
+- {
+- case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
+- case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
+- case CPU_PA_RISC2_0:
+- #if defined(_SC_KERNEL_BITS)
+- switch (bits)
+- {
+- case 64: puts ("hppa2.0w"); break;
+- case 32: puts ("hppa2.0n"); break;
+- default: puts ("hppa2.0"); break;
+- } break;
+- #else /* !defined(_SC_KERNEL_BITS) */
+- puts ("hppa2.0"); break;
+- #endif
+- default: puts ("hppa1.0"); break;
+- }
+- exit (0);
+- }
++ if [ "$HP_ARCH" = "" ]; then
++ set_cc_for_build
++ sed 's/^ //' << EOF > "$dummy.c"
++
++ #define _HPUX_SOURCE
++ #include <stdlib.h>
++ #include <unistd.h>
++
++ int main ()
++ {
++ #if defined(_SC_KERNEL_BITS)
++ long bits = sysconf(_SC_KERNEL_BITS);
++ #endif
++ long cpu = sysconf (_SC_CPU_VERSION);
++
++ switch (cpu)
++ {
++ case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
++ case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
++ case CPU_PA_RISC2_0:
++ #if defined(_SC_KERNEL_BITS)
++ switch (bits)
++ {
++ case 64: puts ("hppa2.0w"); break;
++ case 32: puts ("hppa2.0n"); break;
++ default: puts ("hppa2.0"); break;
++ } break;
++ #else /* !defined(_SC_KERNEL_BITS) */
++ puts ("hppa2.0"); break;
++ #endif
++ default: puts ("hppa1.0"); break;
++ }
++ exit (0);
++ }
+ EOF
+- (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
++ (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"`
+ test -z "$HP_ARCH" && HP_ARCH=hppa
+ fi ;;
+ esac
+- if [ ${HP_ARCH} = "hppa2.0w" ]
++ if [ "$HP_ARCH" = hppa2.0w ]
+ then
+- # avoid double evaluation of $set_cc_for_build
+- test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
+- if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null
++ set_cc_for_build
++
++ # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
++ # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
++ # generating 64-bit code. GNU and HP use different nomenclature:
++ #
++ # $ CC_FOR_BUILD=cc ./config.guess
++ # => hppa2.0w-hp-hpux11.23
++ # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
++ # => hppa64-hp-hpux11.23
++
++ if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
++ grep -q __LP64__
+ then
+- HP_ARCH="hppa2.0w"
++ HP_ARCH=hppa2.0w
+ else
+- HP_ARCH="hppa64"
++ HP_ARCH=hppa64
+ fi
+ fi
+- echo ${HP_ARCH}-hp-hpux${HPUX_REV}
+- exit 0 ;;
++ echo "$HP_ARCH"-hp-hpux"$HPUX_REV"
++ exit ;;
+ ia64:HP-UX:*:*)
+- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+- echo ia64-hp-hpux${HPUX_REV}
+- exit 0 ;;
++ HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
++ echo ia64-hp-hpux"$HPUX_REV"
++ exit ;;
+ 3050*:HI-UX:*:*)
+- eval $set_cc_for_build
+- sed 's/^ //' << EOF >$dummy.c
++ set_cc_for_build
++ sed 's/^ //' << EOF > "$dummy.c"
+ #include <unistd.h>
+ int
+ main ()
+@@ -682,357 +762,409 @@
+ exit (0);
+ }
+ EOF
+- $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
++ $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` &&
++ { echo "$SYSTEM_NAME"; exit; }
+ echo unknown-hitachi-hiuxwe2
+- exit 0 ;;
+- 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
++ exit ;;
++ 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)
+ echo hppa1.1-hp-bsd
+- exit 0 ;;
++ exit ;;
+ 9000/8??:4.3bsd:*:*)
+ echo hppa1.0-hp-bsd
+- exit 0 ;;
++ exit ;;
+ *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
+ echo hppa1.0-hp-mpeix
+- exit 0 ;;
+- hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
++ exit ;;
++ hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)
+ echo hppa1.1-hp-osf
+- exit 0 ;;
++ exit ;;
+ hp8??:OSF1:*:*)
+ echo hppa1.0-hp-osf
+- exit 0 ;;
++ exit ;;
+ i*86:OSF1:*:*)
+ if [ -x /usr/sbin/sysversion ] ; then
+- echo ${UNAME_MACHINE}-unknown-osf1mk
++ echo "$UNAME_MACHINE"-unknown-osf1mk
+ else
+- echo ${UNAME_MACHINE}-unknown-osf1
++ echo "$UNAME_MACHINE"-unknown-osf1
+ fi
+- exit 0 ;;
++ exit ;;
+ parisc*:Lites*:*:*)
+ echo hppa1.1-hp-lites
+- exit 0 ;;
++ exit ;;
+ C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
+ echo c1-convex-bsd
+- exit 0 ;;
++ exit ;;
+ C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
+ if getsysinfo -f scalar_acc
+ then echo c32-convex-bsd
+ else echo c2-convex-bsd
+ fi
+- exit 0 ;;
++ exit ;;
+ C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
+ echo c34-convex-bsd
+- exit 0 ;;
++ exit ;;
+ C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
+ echo c38-convex-bsd
+- exit 0 ;;
++ exit ;;
+ C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
+ echo c4-convex-bsd
+- exit 0 ;;
++ exit ;;
+ CRAY*Y-MP:*:*:*)
+- echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+- exit 0 ;;
++ echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
++ exit ;;
+ CRAY*[A-Z]90:*:*:*)
+- echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
++ echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \
+ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
+ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
+ -e 's/\.[^.]*$/.X/'
+- exit 0 ;;
++ exit ;;
+ CRAY*TS:*:*:*)
+- echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+- exit 0 ;;
++ echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
++ exit ;;
+ CRAY*T3E:*:*:*)
+- echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+- exit 0 ;;
++ echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
++ exit ;;
+ CRAY*SV1:*:*:*)
+- echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+- exit 0 ;;
++ echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
++ exit ;;
+ *:UNICOS/mp:*:*)
+- echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+- exit 0 ;;
++ echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
++ exit ;;
+ F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
+- FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+- FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
+- echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+- exit 0 ;;
++ FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
++ FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
++ FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'`
++ echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
++ exit ;;
+ 5000:UNIX_System_V:4.*:*)
+- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+- FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+- echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+- exit 0 ;;
++ FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
++ FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
++ echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
++ exit ;;
+ i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
+- echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE"
++ exit ;;
+ sparc*:BSD/OS:*:*)
+- echo sparc-unknown-bsdi${UNAME_RELEASE}
+- exit 0 ;;
++ echo sparc-unknown-bsdi"$UNAME_RELEASE"
++ exit ;;
+ *:BSD/OS:*:*)
+- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"
++ exit ;;
++ arm:FreeBSD:*:*)
++ UNAME_PROCESSOR=`uname -p`
++ set_cc_for_build
++ if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
++ | grep -q __ARM_PCS_VFP
++ then
++ echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabi
++ else
++ echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabihf
++ fi
++ exit ;;
+ *:FreeBSD:*:*)
+- # Determine whether the default compiler uses glibc.
+- eval $set_cc_for_build
+- sed 's/^ //' << EOF >$dummy.c
+- #include <features.h>
+- #if __GLIBC__ >= 2
+- LIBC=gnu
+- #else
+- LIBC=
+- #endif
+-EOF
+- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
+- # GNU/KFreeBSD systems have a "k" prefix to indicate we are using
+- # FreeBSD's kernel, but not the complete OS.
+- case ${LIBC} in gnu) kernel_only='k' ;; esac
+- echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
+- exit 0 ;;
++ UNAME_PROCESSOR=`/usr/bin/uname -p`
++ case "$UNAME_PROCESSOR" in
++ amd64)
++ UNAME_PROCESSOR=x86_64 ;;
++ i386)
++ UNAME_PROCESSOR=i586 ;;
++ esac
++ echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
++ exit ;;
+ i*:CYGWIN*:*)
+- echo ${UNAME_MACHINE}-pc-cygwin
+- exit 0 ;;
+- i*:MINGW*:*)
+- echo ${UNAME_MACHINE}-pc-mingw32
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-pc-cygwin
++ exit ;;
++ *:MINGW64*:*)
++ echo "$UNAME_MACHINE"-pc-mingw64
++ exit ;;
++ *:MINGW*:*)
++ echo "$UNAME_MACHINE"-pc-mingw32
++ exit ;;
++ *:MSYS*:*)
++ echo "$UNAME_MACHINE"-pc-msys
++ exit ;;
+ i*:PW*:*)
+- echo ${UNAME_MACHINE}-pc-pw32
+- exit 0 ;;
+- x86:Interix*:[34]*)
+- echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
+- exit 0 ;;
+- [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
+- echo i${UNAME_MACHINE}-pc-mks
+- exit 0 ;;
+- i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
+- # How do we know it's Interix rather than the generic POSIX subsystem?
+- # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
+- # UNAME_MACHINE based on the output of uname instead of i386?
+- echo i586-pc-interix
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-pc-pw32
++ exit ;;
++ *:Interix*:*)
++ case "$UNAME_MACHINE" in
++ x86)
++ echo i586-pc-interix"$UNAME_RELEASE"
++ exit ;;
++ authenticamd | genuineintel | EM64T)
++ echo x86_64-unknown-interix"$UNAME_RELEASE"
++ exit ;;
++ IA64)
++ echo ia64-unknown-interix"$UNAME_RELEASE"
++ exit ;;
++ esac ;;
+ i*:UWIN*:*)
+- echo ${UNAME_MACHINE}-pc-uwin
+- exit 0 ;;
+- p*:CYGWIN*:*)
+- echo powerpcle-unknown-cygwin
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-pc-uwin
++ exit ;;
++ amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
++ echo x86_64-pc-cygwin
++ exit ;;
+ prep*:SunOS:5.*:*)
+- echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+- exit 0 ;;
++ echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
++ exit ;;
+ *:GNU:*:*)
+ # the GNU system
+- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+- exit 0 ;;
++ echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`"
++ exit ;;
+ *:GNU/*:*:*)
+ # other systems with GNU libc and userland
+- echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+- exit 0 ;;
+- i*86:Minix:*:*)
+- echo ${UNAME_MACHINE}-pc-minix
+- exit 0 ;;
++ echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC"
++ exit ;;
++ *:Minix:*:*)
++ echo "$UNAME_MACHINE"-unknown-minix
++ exit ;;
++ aarch64:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ aarch64_be:Linux:*:*)
++ UNAME_MACHINE=aarch64_be
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ alpha:Linux:*:*)
++ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null` in
++ EV5) UNAME_MACHINE=alphaev5 ;;
++ EV56) UNAME_MACHINE=alphaev56 ;;
++ PCA56) UNAME_MACHINE=alphapca56 ;;
++ PCA57) UNAME_MACHINE=alphapca56 ;;
++ EV6) UNAME_MACHINE=alphaev6 ;;
++ EV67) UNAME_MACHINE=alphaev67 ;;
++ EV68*) UNAME_MACHINE=alphaev68 ;;
++ esac
++ objdump --private-headers /bin/sh | grep -q ld.so.1
++ if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ arc:Linux:*:* | arceb:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
+ arm*:Linux:*:*)
+- echo ${UNAME_MACHINE}-unknown-linux-gnu
+- exit 0 ;;
++ set_cc_for_build
++ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
++ | grep -q __ARM_EABI__
++ then
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ else
++ if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
++ | grep -q __ARM_PCS_VFP
++ then
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi
++ else
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf
++ fi
++ fi
++ exit ;;
++ avr32*:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
+ cris:Linux:*:*)
+- echo cris-axis-linux-gnu
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
++ exit ;;
++ crisv32:Linux:*:*)
++ echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
++ exit ;;
++ e2k:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ frv:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ hexagon:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ i*86:Linux:*:*)
++ echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
++ exit ;;
+ ia64:Linux:*:*)
+- echo ${UNAME_MACHINE}-unknown-linux-gnu
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ k1om:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ m32r*:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
+ m68*:Linux:*:*)
+- echo ${UNAME_MACHINE}-unknown-linux-gnu
+- exit 0 ;;
+- mips:Linux:*:*)
+- eval $set_cc_for_build
+- sed 's/^ //' << EOF >$dummy.c
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ mips:Linux:*:* | mips64:Linux:*:*)
++ set_cc_for_build
++ IS_GLIBC=0
++ test x"${LIBC}" = xgnu && IS_GLIBC=1
++ sed 's/^ //' << EOF > "$dummy.c"
+ #undef CPU
+ #undef mips
+ #undef mipsel
+- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+- CPU=mipsel
++ #undef mips64
++ #undef mips64el
++ #if ${IS_GLIBC} && defined(_ABI64)
++ LIBCABI=gnuabi64
+ #else
+- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+- CPU=mips
++ #if ${IS_GLIBC} && defined(_ABIN32)
++ LIBCABI=gnuabin32
+ #else
+- CPU=
++ LIBCABI=${LIBC}
+ #endif
+ #endif
+-EOF
+- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+- test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
+- ;;
+- mips64:Linux:*:*)
+- eval $set_cc_for_build
+- sed 's/^ //' << EOF >$dummy.c
+- #undef CPU
+- #undef mips64
+- #undef mips64el
++
++ #if ${IS_GLIBC} && defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6
++ CPU=mipsisa64r6
++ #else
++ #if ${IS_GLIBC} && !defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6
++ CPU=mipsisa32r6
++ #else
++ #if defined(__mips64)
++ CPU=mips64
++ #else
++ CPU=mips
++ #endif
++ #endif
++ #endif
++
+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+- CPU=mips64el
++ MIPS_ENDIAN=el
+ #else
+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+- CPU=mips64
++ MIPS_ENDIAN=
+ #else
+- CPU=
++ MIPS_ENDIAN=
+ #endif
+ #endif
+ EOF
+- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+- test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
++ eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'`"
++ test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; }
+ ;;
+- ppc:Linux:*:*)
+- echo powerpc-unknown-linux-gnu
+- exit 0 ;;
+- ppc64:Linux:*:*)
+- echo powerpc64-unknown-linux-gnu
+- exit 0 ;;
+- alpha:Linux:*:*)
+- case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+- EV5) UNAME_MACHINE=alphaev5 ;;
+- EV56) UNAME_MACHINE=alphaev56 ;;
+- PCA56) UNAME_MACHINE=alphapca56 ;;
+- PCA57) UNAME_MACHINE=alphapca56 ;;
+- EV6) UNAME_MACHINE=alphaev6 ;;
+- EV67) UNAME_MACHINE=alphaev67 ;;
+- EV68*) UNAME_MACHINE=alphaev68 ;;
+- esac
+- objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
+- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
+- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+- exit 0 ;;
++ mips64el:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ openrisc*:Linux:*:*)
++ echo or1k-unknown-linux-"$LIBC"
++ exit ;;
++ or32:Linux:*:* | or1k*:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ padre:Linux:*:*)
++ echo sparc-unknown-linux-"$LIBC"
++ exit ;;
++ parisc64:Linux:*:* | hppa64:Linux:*:*)
++ echo hppa64-unknown-linux-"$LIBC"
++ exit ;;
+ parisc:Linux:*:* | hppa:Linux:*:*)
+ # Look for CPU level
+ case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
+- PA7*) echo hppa1.1-unknown-linux-gnu ;;
+- PA8*) echo hppa2.0-unknown-linux-gnu ;;
+- *) echo hppa-unknown-linux-gnu ;;
++ PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;;
++ PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;;
++ *) echo hppa-unknown-linux-"$LIBC" ;;
+ esac
+- exit 0 ;;
+- parisc64:Linux:*:* | hppa64:Linux:*:*)
+- echo hppa64-unknown-linux-gnu
+- exit 0 ;;
++ exit ;;
++ ppc64:Linux:*:*)
++ echo powerpc64-unknown-linux-"$LIBC"
++ exit ;;
++ ppc:Linux:*:*)
++ echo powerpc-unknown-linux-"$LIBC"
++ exit ;;
++ ppc64le:Linux:*:*)
++ echo powerpc64le-unknown-linux-"$LIBC"
++ exit ;;
++ ppcle:Linux:*:*)
++ echo powerpcle-unknown-linux-"$LIBC"
++ exit ;;
++ riscv32:Linux:*:* | riscv64:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
+ s390:Linux:*:* | s390x:Linux:*:*)
+- echo ${UNAME_MACHINE}-ibm-linux
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-ibm-linux-"$LIBC"
++ exit ;;
+ sh64*:Linux:*:*)
+- echo ${UNAME_MACHINE}-unknown-linux-gnu
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
+ sh*:Linux:*:*)
+- echo ${UNAME_MACHINE}-unknown-linux-gnu
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
+ sparc:Linux:*:* | sparc64:Linux:*:*)
+- echo ${UNAME_MACHINE}-unknown-linux-gnu
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ tile*:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ vax:Linux:*:*)
++ echo "$UNAME_MACHINE"-dec-linux-"$LIBC"
++ exit ;;
+ x86_64:Linux:*:*)
+- echo x86_64-unknown-linux-gnu
+- exit 0 ;;
+- i*86:Linux:*:*)
+- # The BFD linker knows what the default object file format is, so
+- # first see if it will tell us. cd to the root directory to prevent
+- # problems with other programs or directories called `ld' in the path.
+- # Set LC_ALL=C to ensure ld outputs messages in English.
+- ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
+- | sed -ne '/supported targets:/!d
+- s/[ ][ ]*/ /g
+- s/.*supported targets: *//
+- s/ .*//
+- p'`
+- case "$ld_supported_targets" in
+- elf32-i386)
+- TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
+- ;;
+- a.out-i386-linux)
+- echo "${UNAME_MACHINE}-pc-linux-gnuaout"
+- exit 0 ;;
+- coff-i386)
+- echo "${UNAME_MACHINE}-pc-linux-gnucoff"
+- exit 0 ;;
+- "")
+- # Either a pre-BFD a.out linker (linux-gnuoldld) or
+- # one that does not give us useful --help.
+- echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
+- exit 0 ;;
+- esac
+- # Determine whether the default compiler is a.out or elf
+- eval $set_cc_for_build
+- sed 's/^ //' << EOF >$dummy.c
+- #include <features.h>
+- #ifdef __ELF__
+- # ifdef __GLIBC__
+- # if __GLIBC__ >= 2
+- LIBC=gnu
+- # else
+- LIBC=gnulibc1
+- # endif
+- # else
+- LIBC=gnulibc1
+- # endif
+- #else
+- #ifdef __INTEL_COMPILER
+- LIBC=gnu
+- #else
+- LIBC=gnuaout
+- #endif
+- #endif
+- #ifdef __dietlibc__
+- LIBC=dietlibc
+- #endif
+-EOF
+- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
+- test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
+- test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
+- ;;
++ set_cc_for_build
++ LIBCABI=$LIBC
++ if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
++ if (echo '#ifdef __ILP32__'; echo IS_X32; echo '#endif') | \
++ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
++ grep IS_X32 >/dev/null
++ then
++ LIBCABI="$LIBC"x32
++ fi
++ fi
++ echo "$UNAME_MACHINE"-pc-linux-"$LIBCABI"
++ exit ;;
++ xtensa*:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
+ i*86:DYNIX/ptx:4*:*)
+ # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
+ # earlier versions are messed up and put the nodename in both
+ # sysname and nodename.
+ echo i386-sequent-sysv4
+- exit 0 ;;
++ exit ;;
+ i*86:UNIX_SV:4.2MP:2.*)
+- # Unixware is an offshoot of SVR4, but it has its own version
+- # number series starting with 2...
+- # I am not positive that other SVR4 systems won't match this,
++ # Unixware is an offshoot of SVR4, but it has its own version
++ # number series starting with 2...
++ # I am not positive that other SVR4 systems won't match this,
+ # I just have to hope. -- rms.
+- # Use sysv4.2uw... so that sysv4* matches it.
+- echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
+- exit 0 ;;
++ # Use sysv4.2uw... so that sysv4* matches it.
++ echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION"
++ exit ;;
+ i*86:OS/2:*:*)
+ # If we were able to find `uname', then EMX Unix compatibility
+ # is probably installed.
+- echo ${UNAME_MACHINE}-pc-os2-emx
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-pc-os2-emx
++ exit ;;
+ i*86:XTS-300:*:STOP)
+- echo ${UNAME_MACHINE}-unknown-stop
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-stop
++ exit ;;
+ i*86:atheos:*:*)
+- echo ${UNAME_MACHINE}-unknown-atheos
+- exit 0 ;;
+- i*86:syllable:*:*)
+- echo ${UNAME_MACHINE}-pc-syllable
+- exit 0 ;;
+- i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
+- echo i386-unknown-lynxos${UNAME_RELEASE}
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-atheos
++ exit ;;
++ i*86:syllable:*:*)
++ echo "$UNAME_MACHINE"-pc-syllable
++ exit ;;
++ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
++ echo i386-unknown-lynxos"$UNAME_RELEASE"
++ exit ;;
+ i*86:*DOS:*:*)
+- echo ${UNAME_MACHINE}-pc-msdosdjgpp
+- exit 0 ;;
+- i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
+- UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
++ echo "$UNAME_MACHINE"-pc-msdosdjgpp
++ exit ;;
++ i*86:*:4.*:*)
++ UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'`
+ if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
+- echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
++ echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL"
+ else
+- echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
++ echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL"
+ fi
+- exit 0 ;;
+- i*86:*:5:[78]*)
++ exit ;;
++ i*86:*:5:[678]*)
++ # UnixWare 7.x, OpenUNIX and OpenServer 6.
+ case `/bin/uname -X | grep "^Machine"` in
+ *486*) UNAME_MACHINE=i486 ;;
+ *Pentium) UNAME_MACHINE=i586 ;;
+ *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
+ esac
+- echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+- exit 0 ;;
++ echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}"
++ exit ;;
+ i*86:*:3.2:*)
+ if test -f /usr/options/cb.name; then
+ UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
+- echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
++ echo "$UNAME_MACHINE"-pc-isc"$UNAME_REL"
+ elif /bin/uname -X 2>/dev/null >/dev/null ; then
+ UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
+ (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
+@@ -1042,214 +1174,326 @@
+ && UNAME_MACHINE=i686
+ (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
+ && UNAME_MACHINE=i686
+- echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
++ echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL"
+ else
+- echo ${UNAME_MACHINE}-pc-sysv32
++ echo "$UNAME_MACHINE"-pc-sysv32
+ fi
+- exit 0 ;;
++ exit ;;
+ pc:*:*:*)
+ # Left here for compatibility:
+- # uname -m prints for DJGPP always 'pc', but it prints nothing about
+- # the processor, so we play safe by assuming i386.
+- echo i386-pc-msdosdjgpp
+- exit 0 ;;
++ # uname -m prints for DJGPP always 'pc', but it prints nothing about
++ # the processor, so we play safe by assuming i586.
++ # Note: whatever this is, it MUST be the same as what config.sub
++ # prints for the "djgpp" host, or else GDB configure will decide that
++ # this is a cross-build.
++ echo i586-pc-msdosdjgpp
++ exit ;;
+ Intel:Mach:3*:*)
+ echo i386-pc-mach3
+- exit 0 ;;
++ exit ;;
+ paragon:*:*:*)
+ echo i860-intel-osf1
+- exit 0 ;;
++ exit ;;
+ i860:*:4.*:*) # i860-SVR4
+ if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
+- echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
++ echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4
+ else # Add other i860-SVR4 vendors below as they are discovered.
+- echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
++ echo i860-unknown-sysv"$UNAME_RELEASE" # Unknown i860-SVR4
+ fi
+- exit 0 ;;
++ exit ;;
+ mini*:CTIX:SYS*5:*)
+ # "miniframe"
+ echo m68010-convergent-sysv
+- exit 0 ;;
++ exit ;;
+ mc68k:UNIX:SYSTEM5:3.51m)
+ echo m68k-convergent-sysv
+- exit 0 ;;
++ exit ;;
+ M680?0:D-NIX:5.3:*)
+ echo m68k-diab-dnix
+- exit 0 ;;
+- M68*:*:R3V[567]*:*)
+- test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
+- 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)
++ exit ;;
++ M68*:*:R3V[5678]*:*)
++ test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
++ 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)
+ OS_REL=''
+ test -r /etc/.relid \
+ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+- && echo i486-ncr-sysv4.3${OS_REL} && exit 0
++ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
+ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+- && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
++ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
+ 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
+- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+- && echo i486-ncr-sysv4 && exit 0 ;;
++ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
++ && { echo i486-ncr-sysv4; exit; } ;;
++ NCR*:*:4.2:* | MPRAS*:*:4.2:*)
++ OS_REL='.3'
++ test -r /etc/.relid \
++ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
++ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
++ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
++ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
++ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; }
++ /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
++ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
+ m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
+- echo m68k-unknown-lynxos${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-unknown-lynxos"$UNAME_RELEASE"
++ exit ;;
+ mc68030:UNIX_System_V:4.*:*)
+ echo m68k-atari-sysv4
+- exit 0 ;;
++ exit ;;
+ TSUNAMI:LynxOS:2.*:*)
+- echo sparc-unknown-lynxos${UNAME_RELEASE}
+- exit 0 ;;
++ echo sparc-unknown-lynxos"$UNAME_RELEASE"
++ exit ;;
+ rs6000:LynxOS:2.*:*)
+- echo rs6000-unknown-lynxos${UNAME_RELEASE}
+- exit 0 ;;
+- PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
+- echo powerpc-unknown-lynxos${UNAME_RELEASE}
+- exit 0 ;;
++ echo rs6000-unknown-lynxos"$UNAME_RELEASE"
++ exit ;;
++ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
++ echo powerpc-unknown-lynxos"$UNAME_RELEASE"
++ exit ;;
+ SM[BE]S:UNIX_SV:*:*)
+- echo mips-dde-sysv${UNAME_RELEASE}
+- exit 0 ;;
++ echo mips-dde-sysv"$UNAME_RELEASE"
++ exit ;;
+ RM*:ReliantUNIX-*:*:*)
+ echo mips-sni-sysv4
+- exit 0 ;;
++ exit ;;
+ RM*:SINIX-*:*:*)
+ echo mips-sni-sysv4
+- exit 0 ;;
++ exit ;;
+ *:SINIX-*:*:*)
+ if uname -p 2>/dev/null >/dev/null ; then
+ UNAME_MACHINE=`(uname -p) 2>/dev/null`
+- echo ${UNAME_MACHINE}-sni-sysv4
++ echo "$UNAME_MACHINE"-sni-sysv4
+ else
+ echo ns32k-sni-sysv
+ fi
+- exit 0 ;;
+- PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+- # says <Richard.M.Bartel(a)ccMail.Census.GOV>
+- echo i586-unisys-sysv4
+- exit 0 ;;
++ exit ;;
++ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
++ # says <Richard.M.Bartel(a)ccMail.Census.GOV>
++ echo i586-unisys-sysv4
++ exit ;;
+ *:UNIX_System_V:4*:FTX*)
+ # From Gerald Hewes <hewes(a)openmarket.com>.
+ # How about differentiating between stratus architectures? -djm
+ echo hppa1.1-stratus-sysv4
+- exit 0 ;;
++ exit ;;
+ *:*:*:FTX*)
+ # From seanf(a)swdc.stratus.com.
+ echo i860-stratus-sysv4
+- exit 0 ;;
++ exit ;;
++ i*86:VOS:*:*)
++ # From Paul.Green(a)stratus.com.
++ echo "$UNAME_MACHINE"-stratus-vos
++ exit ;;
+ *:VOS:*:*)
+ # From Paul.Green(a)stratus.com.
+ echo hppa1.1-stratus-vos
+- exit 0 ;;
++ exit ;;
+ mc68*:A/UX:*:*)
+- echo m68k-apple-aux${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-apple-aux"$UNAME_RELEASE"
++ exit ;;
+ news*:NEWS-OS:6*:*)
+ echo mips-sony-newsos6
+- exit 0 ;;
++ exit ;;
+ R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
+ if [ -d /usr/nec ]; then
+- echo mips-nec-sysv${UNAME_RELEASE}
++ echo mips-nec-sysv"$UNAME_RELEASE"
+ else
+- echo mips-unknown-sysv${UNAME_RELEASE}
++ echo mips-unknown-sysv"$UNAME_RELEASE"
+ fi
+- exit 0 ;;
++ exit ;;
+ BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
+ echo powerpc-be-beos
+- exit 0 ;;
++ exit ;;
+ BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
+ echo powerpc-apple-beos
+- exit 0 ;;
++ exit ;;
+ BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
+ echo i586-pc-beos
+- exit 0 ;;
++ exit ;;
++ BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
++ echo i586-pc-haiku
++ exit ;;
++ x86_64:Haiku:*:*)
++ echo x86_64-unknown-haiku
++ exit ;;
+ SX-4:SUPER-UX:*:*)
+- echo sx4-nec-superux${UNAME_RELEASE}
+- exit 0 ;;
++ echo sx4-nec-superux"$UNAME_RELEASE"
++ exit ;;
+ SX-5:SUPER-UX:*:*)
+- echo sx5-nec-superux${UNAME_RELEASE}
+- exit 0 ;;
++ echo sx5-nec-superux"$UNAME_RELEASE"
++ exit ;;
+ SX-6:SUPER-UX:*:*)
+- echo sx6-nec-superux${UNAME_RELEASE}
+- exit 0 ;;
++ echo sx6-nec-superux"$UNAME_RELEASE"
++ exit ;;
++ SX-7:SUPER-UX:*:*)
++ echo sx7-nec-superux"$UNAME_RELEASE"
++ exit ;;
++ SX-8:SUPER-UX:*:*)
++ echo sx8-nec-superux"$UNAME_RELEASE"
++ exit ;;
++ SX-8R:SUPER-UX:*:*)
++ echo sx8r-nec-superux"$UNAME_RELEASE"
++ exit ;;
++ SX-ACE:SUPER-UX:*:*)
++ echo sxace-nec-superux"$UNAME_RELEASE"
++ exit ;;
+ Power*:Rhapsody:*:*)
+- echo powerpc-apple-rhapsody${UNAME_RELEASE}
+- exit 0 ;;
++ echo powerpc-apple-rhapsody"$UNAME_RELEASE"
++ exit ;;
+ *:Rhapsody:*:*)
+- echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
++ exit ;;
+ *:Darwin:*:*)
+- case `uname -p` in
+- *86) UNAME_PROCESSOR=i686 ;;
+- powerpc) UNAME_PROCESSOR=powerpc ;;
++ UNAME_PROCESSOR=`uname -p`
++ case $UNAME_PROCESSOR in
++ unknown) UNAME_PROCESSOR=powerpc ;;
+ esac
+- echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
+- exit 0 ;;
++ if command -v xcode-select > /dev/null 2> /dev/null && \
++ ! xcode-select --print-path > /dev/null 2> /dev/null ; then
++ # Avoid executing cc if there is no toolchain installed as
++ # cc will be a stub that puts up a graphical alert
++ # prompting the user to install developer tools.
++ CC_FOR_BUILD=no_compiler_found
++ else
++ set_cc_for_build
++ fi
++ if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
++ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
++ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
++ grep IS_64BIT_ARCH >/dev/null
++ then
++ case $UNAME_PROCESSOR in
++ i386) UNAME_PROCESSOR=x86_64 ;;
++ powerpc) UNAME_PROCESSOR=powerpc64 ;;
++ esac
++ fi
++ # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
++ if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
++ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
++ grep IS_PPC >/dev/null
++ then
++ UNAME_PROCESSOR=powerpc
++ fi
++ elif test "$UNAME_PROCESSOR" = i386 ; then
++ # uname -m returns i386 or x86_64
++ UNAME_PROCESSOR=$UNAME_MACHINE
++ fi
++ echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
++ exit ;;
+ *:procnto*:*:* | *:QNX:[0123456789]*:*)
+ UNAME_PROCESSOR=`uname -p`
+- if test "$UNAME_PROCESSOR" = "x86"; then
++ if test "$UNAME_PROCESSOR" = x86; then
+ UNAME_PROCESSOR=i386
+ UNAME_MACHINE=pc
+ fi
+- echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
+- exit 0 ;;
++ echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE"
++ exit ;;
+ *:QNX:*:4*)
+ echo i386-pc-qnx
+- exit 0 ;;
+- NSR-?:NONSTOP_KERNEL:*:*)
+- echo nsr-tandem-nsk${UNAME_RELEASE}
+- exit 0 ;;
++ exit ;;
++ NEO-*:NONSTOP_KERNEL:*:*)
++ echo neo-tandem-nsk"$UNAME_RELEASE"
++ exit ;;
++ NSE-*:NONSTOP_KERNEL:*:*)
++ echo nse-tandem-nsk"$UNAME_RELEASE"
++ exit ;;
++ NSR-*:NONSTOP_KERNEL:*:*)
++ echo nsr-tandem-nsk"$UNAME_RELEASE"
++ exit ;;
++ NSV-*:NONSTOP_KERNEL:*:*)
++ echo nsv-tandem-nsk"$UNAME_RELEASE"
++ exit ;;
++ NSX-*:NONSTOP_KERNEL:*:*)
++ echo nsx-tandem-nsk"$UNAME_RELEASE"
++ exit ;;
+ *:NonStop-UX:*:*)
+ echo mips-compaq-nonstopux
+- exit 0 ;;
++ exit ;;
+ BS2000:POSIX*:*:*)
+ echo bs2000-siemens-sysv
+- exit 0 ;;
++ exit ;;
+ DS/*:UNIX_System_V:*:*)
+- echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE"
++ exit ;;
+ *:Plan9:*:*)
+ # "uname -m" is not consistent, so use $cputype instead. 386
+ # is converted to i386 for consistency with other x86
+ # operating systems.
+- if test "$cputype" = "386"; then
++ # shellcheck disable=SC2154
++ if test "$cputype" = 386; then
+ UNAME_MACHINE=i386
+ else
+ UNAME_MACHINE="$cputype"
+ fi
+- echo ${UNAME_MACHINE}-unknown-plan9
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-plan9
++ exit ;;
+ *:TOPS-10:*:*)
+ echo pdp10-unknown-tops10
+- exit 0 ;;
++ exit ;;
+ *:TENEX:*:*)
+ echo pdp10-unknown-tenex
+- exit 0 ;;
++ exit ;;
+ KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
+ echo pdp10-dec-tops20
+- exit 0 ;;
++ exit ;;
+ XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
+ echo pdp10-xkl-tops20
+- exit 0 ;;
++ exit ;;
+ *:TOPS-20:*:*)
+ echo pdp10-unknown-tops20
+- exit 0 ;;
++ exit ;;
+ *:ITS:*:*)
+ echo pdp10-unknown-its
+- exit 0 ;;
++ exit ;;
+ SEI:*:*:SEIUX)
+- echo mips-sei-seiux${UNAME_RELEASE}
+- exit 0 ;;
+- *:DRAGONFLY:*:*)
+- echo ${UNAME_MACHINE}-unknown-dragonfly${UNAME_RELEASE}
+- exit 0 ;;
++ echo mips-sei-seiux"$UNAME_RELEASE"
++ exit ;;
++ *:DragonFly:*:*)
++ echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
++ exit ;;
++ *:*VMS:*:*)
++ UNAME_MACHINE=`(uname -p) 2>/dev/null`
++ case "$UNAME_MACHINE" in
++ A*) echo alpha-dec-vms ; exit ;;
++ I*) echo ia64-dec-vms ; exit ;;
++ V*) echo vax-dec-vms ; exit ;;
++ esac ;;
++ *:XENIX:*:SysV)
++ echo i386-pc-xenix
++ exit ;;
++ i*86:skyos:*:*)
++ echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`"
++ exit ;;
++ i*86:rdos:*:*)
++ echo "$UNAME_MACHINE"-pc-rdos
++ exit ;;
++ i*86:AROS:*:*)
++ echo "$UNAME_MACHINE"-pc-aros
++ exit ;;
++ x86_64:VMkernel:*:*)
++ echo "$UNAME_MACHINE"-unknown-esx
++ exit ;;
++ amd64:Isilon\ OneFS:*:*)
++ echo x86_64-unknown-onefs
++ exit ;;
++ *:Unleashed:*:*)
++ echo "$UNAME_MACHINE"-unknown-unleashed"$UNAME_RELEASE"
++ exit ;;
+ esac
+
+-#echo '(No uname command or uname output not recognized.)' 1>&2
+-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
+-
+-eval $set_cc_for_build
+-cat >$dummy.c <<EOF
++# No uname command or uname output not recognized.
++set_cc_for_build
++cat > "$dummy.c" <<EOF
+ #ifdef _SEQUENT_
+-# include <sys/types.h>
+-# include <sys/utsname.h>
++#include <sys/types.h>
++#include <sys/utsname.h>
++#endif
++#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
++#if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
++#include <signal.h>
++#if defined(_SIZE_T_) || defined(SIGLOST)
++#include <sys/utsname.h>
++#endif
++#endif
+ #endif
+ main ()
+ {
+@@ -1262,20 +1506,12 @@
+ #include <sys/param.h>
+ printf ("m68k-sony-newsos%s\n",
+ #ifdef NEWSOS4
+- "4"
++ "4"
+ #else
+- ""
+-#endif
+- ); exit (0);
++ ""
+ #endif
++ ); exit (0);
+ #endif
+-
+-#if defined (__arm) && defined (__acorn) && defined (__unix)
+- printf ("arm-acorn-riscix"); exit (0);
+-#endif
+-
+-#if defined (hp300) && !defined (hpux)
+- printf ("m68k-hp-bsd\n"); exit (0);
+ #endif
+
+ #if defined (NeXT)
+@@ -1317,39 +1553,54 @@
+ #endif
+
+ #if defined (_SEQUENT_)
+- struct utsname un;
+-
+- uname(&un);
+-
+- if (strncmp(un.version, "V2", 2) == 0) {
+- printf ("i386-sequent-ptx2\n"); exit (0);
+- }
+- if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
+- printf ("i386-sequent-ptx1\n"); exit (0);
+- }
+- printf ("i386-sequent-ptx\n"); exit (0);
++ struct utsname un;
+
++ uname(&un);
++ if (strncmp(un.version, "V2", 2) == 0) {
++ printf ("i386-sequent-ptx2\n"); exit (0);
++ }
++ if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
++ printf ("i386-sequent-ptx1\n"); exit (0);
++ }
++ printf ("i386-sequent-ptx\n"); exit (0);
+ #endif
+
+ #if defined (vax)
+-# if !defined (ultrix)
+-# include <sys/param.h>
+-# if defined (BSD)
+-# if BSD == 43
+- printf ("vax-dec-bsd4.3\n"); exit (0);
+-# else
+-# if BSD == 199006
+- printf ("vax-dec-bsd4.3reno\n"); exit (0);
+-# else
+- printf ("vax-dec-bsd\n"); exit (0);
+-# endif
+-# endif
+-# else
+- printf ("vax-dec-bsd\n"); exit (0);
+-# endif
+-# else
+- printf ("vax-dec-ultrix\n"); exit (0);
+-# endif
++#if !defined (ultrix)
++#include <sys/param.h>
++#if defined (BSD)
++#if BSD == 43
++ printf ("vax-dec-bsd4.3\n"); exit (0);
++#else
++#if BSD == 199006
++ printf ("vax-dec-bsd4.3reno\n"); exit (0);
++#else
++ printf ("vax-dec-bsd\n"); exit (0);
++#endif
++#endif
++#else
++ printf ("vax-dec-bsd\n"); exit (0);
++#endif
++#else
++#if defined(_SIZE_T_) || defined(SIGLOST)
++ struct utsname un;
++ uname (&un);
++ printf ("vax-dec-ultrix%s\n", un.release); exit (0);
++#else
++ printf ("vax-dec-ultrix\n"); exit (0);
++#endif
++#endif
++#endif
++#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
++#if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
++#if defined(_SIZE_T_) || defined(SIGLOST)
++ struct utsname *un;
++ uname (&un);
++ printf ("mips-dec-ultrix%s\n", un.release); exit (0);
++#else
++ printf ("mips-dec-ultrix\n"); exit (0);
++#endif
++#endif
+ #endif
+
+ #if defined (alliant) && defined (i860)
+@@ -1360,51 +1611,44 @@
+ }
+ EOF
+
+-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0
++$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`$dummy` &&
++ { echo "$SYSTEM_NAME"; exit; }
+
+ # Apollos put the system type in the environment.
++test -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; }
+
+-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
++echo "$0: unable to guess system type" >&2
+
+-# Convex versions that predate uname can use getsysinfo(1)
++case "$UNAME_MACHINE:$UNAME_SYSTEM" in
++ mips:Linux | mips64:Linux)
++ # If we got here on MIPS GNU/Linux, output extra information.
++ cat >&2 <<EOF
+
+-if [ -x /usr/convex/getsysinfo ]
+-then
+- case `getsysinfo -f cpu_type` in
+- c1*)
+- echo c1-convex-bsd
+- exit 0 ;;
+- c2*)
+- if getsysinfo -f scalar_acc
+- then echo c32-convex-bsd
+- else echo c2-convex-bsd
+- fi
+- exit 0 ;;
+- c34*)
+- echo c34-convex-bsd
+- exit 0 ;;
+- c38*)
+- echo c38-convex-bsd
+- exit 0 ;;
+- c4*)
+- echo c4-convex-bsd
+- exit 0 ;;
+- esac
+-fi
++NOTE: MIPS GNU/Linux systems require a C compiler to fully recognize
++the system type. Please install a C compiler and try again.
++EOF
++ ;;
++esac
+
+ cat >&2 <<EOF
+-$0: unable to guess system type
+
+-This script, last modified $timestamp, has failed to recognize
+-the operating system you are using. It is advised that you
+-download the most up to date version of the config scripts from
+-
+- ftp://ftp.gnu.org/pub/gnu/config/
+-
+-If the version you run ($0) is already up to date, please
+-send the following data and any information you think might be
+-pertinent to <config-patches(a)gnu.org> in order to provide the needed
+-information to handle your system.
++This script (version $timestamp), has failed to recognize the
++operating system you are using. If your script is old, overwrite *all*
++copies of config.guess and config.sub with the latest versions from:
++
++ https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.gue…
++and
++ https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
++EOF
++
++year=`echo $timestamp | sed 's,-.*,,'`
++# shellcheck disable=SC2003
++if test "`expr "\`date +%Y\`" - "$year"`" -lt 3 ; then
++ cat >&2 <<EOF
++
++If $0 has already been updated, send the following data and any
++information you think might be pertinent to config-patches(a)gnu.org to
++provide the necessary information to handle your system.
+
+ config.guess timestamp = $timestamp
+
+@@ -1423,16 +1667,17 @@
+ /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
+ /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
+
+-UNAME_MACHINE = ${UNAME_MACHINE}
+-UNAME_RELEASE = ${UNAME_RELEASE}
+-UNAME_SYSTEM = ${UNAME_SYSTEM}
+-UNAME_VERSION = ${UNAME_VERSION}
++UNAME_MACHINE = "$UNAME_MACHINE"
++UNAME_RELEASE = "$UNAME_RELEASE"
++UNAME_SYSTEM = "$UNAME_SYSTEM"
++UNAME_VERSION = "$UNAME_VERSION"
+ EOF
++fi
+
+ exit 1
+
+ # Local variables:
+-# eval: (add-hook 'write-file-hooks 'time-stamp)
++# eval: (add-hook 'before-save-hook 'time-stamp)
+ # time-stamp-start: "timestamp='"
+ # time-stamp-format: "%:y-%02m-%02d"
+ # time-stamp-end: "'"
+diff -uNr b/src/disk.c a/src/disk.c
+--- b/src/disk.c 2020-09-23 09:33:24.921303235 +0800
++++ a/src/disk.c 2020-09-23 09:33:24.901302603 +0800
+@@ -288,16 +288,16 @@
+ int
+ seekto(int fd, uint64 off)
+ {
+- // In modern times, lseek() is 64-bit clean.
++ // In modern times, lseek64() is 64-bit clean.
+
+ uint64 here = 0;
+
+- lseek(fd, 0, 0);
++ lseek64(fd, 0, 0);
+ while ((uint64)(off - here) > (uint64)BIGSEEK) {
+- if (lseek(fd, BIGSEEK, SEEK_CUR) == -1) break;
++ if (lseek64(fd, BIGSEEK, SEEK_CUR) == -1) break;
+ here += BIGSEEK;
+ }
+ assert((uint64)(off - here) <= (uint64)BIGSEEK);
+- if (lseek(fd, (int)(off - here), SEEK_CUR) == -1) return (-1);
++ if (lseek64(fd, (int)(off - here), SEEK_CUR) == -1) return (-1);
+ return (0);
+ }
--
2.23.0
1
0

[PATCH lkp-tests] lmbench3: fix the lmbench3 adaption the openeuler OS problem
by Bai Jing 13 Oct '20
by Bai Jing 13 Oct '20
13 Oct '20
problem:
../scripts/gnu-os: unable to guess system type. This script,
last modified 2004-08-18,has failed to recognize the operating
system you are using
Modification:
1.sed -i 's/llseek/lseek64/g' ./src/disk.c
2.mkdir SCCS && touch ./SCCS/s.ChangeSet
3. sripts/gnu-os update
Signed-off-by: Bai Jing <799286817(a)qq.com>
---
pkg/lmbench3/lmbench.patch | 2358 ++++++++++++++++++++++++++++++++++++
pkg/lmbench3/test.patch | 1 +
2 files changed, 2359 insertions(+)
create mode 100644 pkg/lmbench3/lmbench.patch
create mode 100644 pkg/lmbench3/test.patch
diff --git a/pkg/lmbench3/lmbench.patch b/pkg/lmbench3/lmbench.patch
new file mode 100644
index 00000000..78550d56
--- /dev/null
+++ b/pkg/lmbench3/lmbench.patch
@@ -0,0 +1,2358 @@
+diff -uNr b/scripts/gnu-os a/scripts/gnu-os
+--- b/scripts/gnu-os 2020-09-23 09:33:24.921303235 +0800
++++ a/scripts/gnu-os 2020-09-23 09:33:24.913302982 +0800
+@@ -1,13 +1,12 @@
+ #! /bin/sh
+ # Attempt to guess a canonical system name.
+-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+-# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
++# Copyright 1992-2020 Free Software Foundation, Inc.
+
+-timestamp='2004-08-18'
++timestamp='2020-04-26'
+
+ # This file is free software; you can redistribute it and/or modify it
+ # under the terms of the GNU General Public License as published by
+-# the Free Software Foundation; either version 2 of the License, or
++# the Free Software Foundation; either version 3 of the License, or
+ # (at your option) any later version.
+ #
+ # This program is distributed in the hope that it will be useful, but
+@@ -16,24 +15,22 @@
+ # General Public License for more details.
+ #
+ # You should have received a copy of the GNU General Public License
+-# along with this program; if not, write to the Free Software
+-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
++# along with this program; if not, see <https://www.gnu.org/licenses/>.
+ #
+ # As a special exception to the GNU General Public License, if you
+ # distribute this file as part of a program that contains a
+ # configuration script generated by Autoconf, you may include it under
+-# the same distribution terms that you use for the rest of that program.
+-
+-# Originally written by Per Bothner <per(a)bothner.com>.
+-# Please send patches to <config-patches(a)gnu.org>. Submit a context
+-# diff and a properly formatted ChangeLog entry.
++# the same distribution terms that you use for the rest of that
++# program. This Exception is an additional permission under section 7
++# of the GNU General Public License, version 3 ("GPLv3").
++#
++# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
+ #
+-# This script attempts to guess a canonical system name similar to
+-# config.sub. If it succeeds, it prints the system name on stdout, and
+-# exits with 0. Otherwise, it exits with 1.
++# You can get the latest version of this script from:
++# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.gue…
+ #
+-# The plan is that this can be called by configure scripts if you
+-# don't specify an explicit build system type.
++# Please send patches to <config-patches(a)gnu.org>.
++
+
+ me=`echo "$0" | sed -e 's,.*/,,'`
+
+@@ -42,7 +39,7 @@
+
+ Output the configuration name of the system \`$me' is run on.
+
+-Operation modes:
++Options:
+ -h, --help print this help, then exit
+ -t, --time-stamp print date of last modification, then exit
+ -v, --version print version number, then exit
+@@ -53,8 +50,7 @@
+ GNU config.guess ($timestamp)
+
+ Originally written by Per Bothner.
+-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+-Free Software Foundation, Inc.
++Copyright 1992-2020 Free Software Foundation, Inc.
+
+ This is free software; see the source for copying conditions. There is NO
+ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+@@ -66,11 +62,11 @@
+ while test $# -gt 0 ; do
+ case $1 in
+ --time-stamp | --time* | -t )
+- echo "$timestamp" ; exit 0 ;;
++ echo "$timestamp" ; exit ;;
+ --version | -v )
+- echo "$version" ; exit 0 ;;
++ echo "$version" ; exit ;;
+ --help | --h* | -h )
+- echo "$usage"; exit 0 ;;
++ echo "$usage"; exit ;;
+ -- ) # Stop option processing
+ shift; break ;;
+ - ) # Use stdin as input.
+@@ -88,15 +84,6 @@
+ exit 1
+ fi
+
+-trap 'exit 1' 1 2 15
+-
+-for t in /usr/tmp /var/tmp /tmp; do
+- if [ -d $t -a -w $t ]
+- then TMPDIR=$t
+- break
+- fi
+-done
+-
+ # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
+ # compiler to aid in system detection is discouraged as it requires
+ # temporary files to be created and, as you can see below, it is a
+@@ -107,34 +94,40 @@
+
+ # Portable tmp directory creation inspired by the Autoconf team.
+
+-set_cc_for_build='
+-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
+-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
+-: ${TMPDIR=/tmp} ;
+- { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
+- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
+- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
+-dummy=$tmp/dummy ;
+-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
+-case $CC_FOR_BUILD,$HOST_CC,$CC in
+- ,,) echo "int x;" > $dummy.c ;
+- for c in cc gcc c89 c99 ; do
+- if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
+- CC_FOR_BUILD="$c"; break ;
+- fi ;
+- done ;
+- if test x"$CC_FOR_BUILD" = x ; then
+- CC_FOR_BUILD=no_compiler_found ;
+- fi
+- ;;
+- ,,*) CC_FOR_BUILD=$CC ;;
+- ,*,*) CC_FOR_BUILD=$HOST_CC ;;
+-esac ;'
++tmp=
++# shellcheck disable=SC2172
++trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15
++
++set_cc_for_build() {
++ # prevent multiple calls if $tmp is already set
++ test "$tmp" && return 0
++ : "${TMPDIR=/tmp}"
++ # shellcheck disable=SC2039
++ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
++ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } ||
++ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } ||
++ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; }
++ dummy=$tmp/dummy
++ case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in
++ ,,) echo "int x;" > "$dummy.c"
++ for driver in cc gcc c89 c99 ; do
++ if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
++ CC_FOR_BUILD="$driver"
++ break
++ fi
++ done
++ if test x"$CC_FOR_BUILD" = x ; then
++ CC_FOR_BUILD=no_compiler_found
++ fi
++ ;;
++ ,,*) CC_FOR_BUILD=$CC ;;
++ ,*,*) CC_FOR_BUILD=$HOST_CC ;;
++ esac
++}
+
+ # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
+ # (ghazi(a)noc.rutgers.edu 1994-08-24)
+-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
++if test -f /.attbin/uname ; then
+ PATH=$PATH:/.attbin ; export PATH
+ fi
+
+@@ -143,12 +136,40 @@
+ UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
+ UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
+
++case "$UNAME_SYSTEM" in
++Linux|GNU|GNU/*)
++ # If the system lacks a compiler, then just pick glibc.
++ # We could probably try harder.
++ LIBC=gnu
++
++ set_cc_for_build
++ cat <<-EOF > "$dummy.c"
++ #include <features.h>
++ #if defined(__UCLIBC__)
++ LIBC=uclibc
++ #elif defined(__dietlibc__)
++ LIBC=dietlibc
++ #else
++ LIBC=gnu
++ #endif
++ EOF
++ eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`"
++
++ # If ldd exists, use it to detect musl libc.
++ if command -v ldd >/dev/null && \
++ ldd --version 2>&1 | grep -q ^musl
++ then
++ LIBC=musl
++ fi
++ ;;
++esac
++
+ # Note: order is significant - the case branches are not exclusive.
+
+-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
++case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
+ *:NetBSD:*:*)
+ # NetBSD (nbsd) targets should (where applicable) match one or
+- # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
++ # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
+ # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
+ # switched to ELF, *-*-netbsd* would select the old
+ # object file format. This provides both forward
+@@ -158,22 +179,33 @@
+ # Note: NetBSD doesn't particularly care about the vendor
+ # portion of the name. We always set it to "unknown".
+ sysctl="sysctl -n hw.machine_arch"
+- UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
+- /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
+- case "${UNAME_MACHINE_ARCH}" in
++ UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
++ "/sbin/$sysctl" 2>/dev/null || \
++ "/usr/sbin/$sysctl" 2>/dev/null || \
++ echo unknown)`
++ case "$UNAME_MACHINE_ARCH" in
+ armeb) machine=armeb-unknown ;;
+ arm*) machine=arm-unknown ;;
+ sh3el) machine=shl-unknown ;;
+ sh3eb) machine=sh-unknown ;;
+- *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
++ sh5el) machine=sh5le-unknown ;;
++ earmv*)
++ arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
++ endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'`
++ machine="${arch}${endian}"-unknown
++ ;;
++ *) machine="$UNAME_MACHINE_ARCH"-unknown ;;
+ esac
+ # The Operating System including object format, if it has switched
+- # to ELF recently, or will in the future.
+- case "${UNAME_MACHINE_ARCH}" in
++ # to ELF recently (or will in the future) and ABI.
++ case "$UNAME_MACHINE_ARCH" in
++ earm*)
++ os=netbsdelf
++ ;;
+ arm*|i386|m68k|ns32k|sh3*|sparc|vax)
+- eval $set_cc_for_build
++ set_cc_for_build
+ if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
+- | grep __ELF__ >/dev/null
++ | grep -q __ELF__
+ then
+ # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
+ # Return netbsd for either. FIX?
+@@ -183,7 +215,14 @@
+ fi
+ ;;
+ *)
+- os=netbsd
++ os=netbsd
++ ;;
++ esac
++ # Determine ABI tags.
++ case "$UNAME_MACHINE_ARCH" in
++ earm*)
++ expr='s/^earmv[0-9]/-eabi/;s/eb$//'
++ abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"`
+ ;;
+ esac
+ # The OS release
+@@ -191,65 +230,70 @@
+ # thus, need a distinct triplet. However, they do not need
+ # kernel version information, so it can be replaced with a
+ # suitable tag, in the style of linux-gnu.
+- case "${UNAME_VERSION}" in
++ case "$UNAME_VERSION" in
+ Debian*)
+ release='-gnu'
+ ;;
+ *)
+- release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
++ release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2`
+ ;;
+ esac
+ # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
+ # contains redundant information, the shorter form:
+ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
+- echo "${machine}-${os}${release}"
+- exit 0 ;;
+- amiga:OpenBSD:*:*)
+- echo m68k-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- arc:OpenBSD:*:*)
+- echo mipsel-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- hp300:OpenBSD:*:*)
+- echo m68k-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- mac68k:OpenBSD:*:*)
+- echo m68k-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- macppc:OpenBSD:*:*)
+- echo powerpc-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- mvme68k:OpenBSD:*:*)
+- echo m68k-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- mvme88k:OpenBSD:*:*)
+- echo m88k-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- mvmeppc:OpenBSD:*:*)
+- echo powerpc-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- pegasos:OpenBSD:*:*)
+- echo powerpc-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- pmax:OpenBSD:*:*)
+- echo mipsel-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- sgi:OpenBSD:*:*)
+- echo mipseb-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- sun3:OpenBSD:*:*)
+- echo m68k-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
+- wgrisc:OpenBSD:*:*)
+- echo mipsel-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
++ echo "$machine-${os}${release}${abi-}"
++ exit ;;
++ *:Bitrig:*:*)
++ UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
++ echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE"
++ exit ;;
+ *:OpenBSD:*:*)
+- echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
+- exit 0 ;;
++ UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
++ echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE"
++ exit ;;
++ *:LibertyBSD:*:*)
++ UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
++ echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE"
++ exit ;;
++ *:MidnightBSD:*:*)
++ echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE"
++ exit ;;
++ *:ekkoBSD:*:*)
++ echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE"
++ exit ;;
++ *:SolidBSD:*:*)
++ echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
++ exit ;;
++ *:OS108:*:*)
++ echo "$UNAME_MACHINE"-unknown-os108_"$UNAME_RELEASE"
++ exit ;;
++ macppc:MirBSD:*:*)
++ echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
++ exit ;;
++ *:MirBSD:*:*)
++ echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE"
++ exit ;;
++ *:Sortix:*:*)
++ echo "$UNAME_MACHINE"-unknown-sortix
++ exit ;;
++ *:Twizzler:*:*)
++ echo "$UNAME_MACHINE"-unknown-twizzler
++ exit ;;
++ *:Redox:*:*)
++ echo "$UNAME_MACHINE"-unknown-redox
++ exit ;;
++ mips:OSF1:*.*)
++ echo mips-dec-osf1
++ exit ;;
+ alpha:OSF1:*:*)
+- if test $UNAME_RELEASE = "V4.0"; then
++ case $UNAME_RELEASE in
++ *4.0)
+ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
+- fi
++ ;;
++ *5.*)
++ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
++ ;;
++ esac
+ # According to Compaq, /usr/sbin/psrinfo has been available on
+ # OSF/1 and Tru64 systems produced since 1995. I hope that
+ # covers most systems running today. This code pipes the CPU
+@@ -257,75 +301,73 @@
+ ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
+ case "$ALPHA_CPU_TYPE" in
+ "EV4 (21064)")
+- UNAME_MACHINE="alpha" ;;
++ UNAME_MACHINE=alpha ;;
+ "EV4.5 (21064)")
+- UNAME_MACHINE="alpha" ;;
++ UNAME_MACHINE=alpha ;;
+ "LCA4 (21066/21068)")
+- UNAME_MACHINE="alpha" ;;
++ UNAME_MACHINE=alpha ;;
+ "EV5 (21164)")
+- UNAME_MACHINE="alphaev5" ;;
++ UNAME_MACHINE=alphaev5 ;;
+ "EV5.6 (21164A)")
+- UNAME_MACHINE="alphaev56" ;;
++ UNAME_MACHINE=alphaev56 ;;
+ "EV5.6 (21164PC)")
+- UNAME_MACHINE="alphapca56" ;;
++ UNAME_MACHINE=alphapca56 ;;
+ "EV5.7 (21164PC)")
+- UNAME_MACHINE="alphapca57" ;;
++ UNAME_MACHINE=alphapca57 ;;
+ "EV6 (21264)")
+- UNAME_MACHINE="alphaev6" ;;
++ UNAME_MACHINE=alphaev6 ;;
+ "EV6.7 (21264A)")
+- UNAME_MACHINE="alphaev67" ;;
++ UNAME_MACHINE=alphaev67 ;;
+ "EV6.8CB (21264C)")
+- UNAME_MACHINE="alphaev68" ;;
++ UNAME_MACHINE=alphaev68 ;;
+ "EV6.8AL (21264B)")
+- UNAME_MACHINE="alphaev68" ;;
++ UNAME_MACHINE=alphaev68 ;;
+ "EV6.8CX (21264D)")
+- UNAME_MACHINE="alphaev68" ;;
++ UNAME_MACHINE=alphaev68 ;;
+ "EV6.9A (21264/EV69A)")
+- UNAME_MACHINE="alphaev69" ;;
++ UNAME_MACHINE=alphaev69 ;;
+ "EV7 (21364)")
+- UNAME_MACHINE="alphaev7" ;;
++ UNAME_MACHINE=alphaev7 ;;
+ "EV7.9 (21364A)")
+- UNAME_MACHINE="alphaev79" ;;
++ UNAME_MACHINE=alphaev79 ;;
+ esac
++ # A Pn.n version is a patched version.
+ # A Vn.n version is a released version.
+ # A Tn.n version is a released field test version.
+ # A Xn.n version is an unreleased experimental baselevel.
+ # 1.2 uses "1.2" for uname -r.
+- echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+- exit 0 ;;
+- Alpha*:OpenVMS:*:*)
+- echo alpha-hp-vms
+- exit 0 ;;
+- Alpha\ *:Windows_NT*:*)
+- # How do we know it's Interix rather than the generic POSIX subsystem?
+- # Should we change UNAME_MACHINE based on the output of uname instead
+- # of the specific Alpha model?
+- echo alpha-pc-interix
+- exit 0 ;;
+- 21064:Windows_NT:50:3)
+- echo alpha-dec-winnt3.5
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`"
++ # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
++ exitcode=$?
++ trap '' 0
++ exit $exitcode ;;
+ Amiga*:UNIX_System_V:4.0:*)
+ echo m68k-unknown-sysv4
+- exit 0;;
++ exit ;;
+ *:[Aa]miga[Oo][Ss]:*:*)
+- echo ${UNAME_MACHINE}-unknown-amigaos
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-amigaos
++ exit ;;
+ *:[Mm]orph[Oo][Ss]:*:*)
+- echo ${UNAME_MACHINE}-unknown-morphos
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-morphos
++ exit ;;
+ *:OS/390:*:*)
+ echo i370-ibm-openedition
+- exit 0 ;;
++ exit ;;
++ *:z/VM:*:*)
++ echo s390-ibm-zvmoe
++ exit ;;
+ *:OS400:*:*)
+- echo powerpc-ibm-os400
+- exit 0 ;;
++ echo powerpc-ibm-os400
++ exit ;;
+ arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
+- echo arm-acorn-riscix${UNAME_RELEASE}
+- exit 0;;
++ echo arm-acorn-riscix"$UNAME_RELEASE"
++ exit ;;
++ arm*:riscos:*:*|arm*:RISCOS:*:*)
++ echo arm-unknown-riscos
++ exit ;;
+ SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
+ echo hppa1.1-hitachi-hiuxmpp
+- exit 0;;
++ exit ;;
+ Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
+ # akee(a)wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
+ if test "`(/bin/universe) 2>/dev/null`" = att ; then
+@@ -333,32 +375,51 @@
+ else
+ echo pyramid-pyramid-bsd
+ fi
+- exit 0 ;;
++ exit ;;
+ NILE*:*:*:dcosx)
+ echo pyramid-pyramid-svr4
+- exit 0 ;;
++ exit ;;
+ DRS?6000:unix:4.0:6*)
+ echo sparc-icl-nx6
+- exit 0 ;;
+- DRS?6000:UNIX_SV:4.2*:7*)
++ exit ;;
++ DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
+ case `/usr/bin/uname -p` in
+- sparc) echo sparc-icl-nx7 && exit 0 ;;
++ sparc) echo sparc-icl-nx7; exit ;;
+ esac ;;
++ s390x:SunOS:*:*)
++ echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
++ exit ;;
+ sun4H:SunOS:5.*:*)
+- echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+- exit 0 ;;
++ echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
++ exit ;;
+ sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
+- echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+- exit 0 ;;
+- i86pc:SunOS:5.*:*)
+- echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+- exit 0 ;;
++ echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
++ exit ;;
++ i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
++ echo i386-pc-auroraux"$UNAME_RELEASE"
++ exit ;;
++ i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
++ set_cc_for_build
++ SUN_ARCH=i386
++ # If there is a compiler, see if it is configured for 64-bit objects.
++ # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
++ # This test works for both compilers.
++ if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
++ if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
++ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
++ grep IS_64BIT_ARCH >/dev/null
++ then
++ SUN_ARCH=x86_64
++ fi
++ fi
++ echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
++ exit ;;
+ sun4*:SunOS:6*:*)
+ # According to config.sub, this is the proper way to canonicalize
+ # SunOS6. Hard to guess exactly what SunOS6 will be like, but
+ # it's likely to be more like Solaris than SunOS4.
+- echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+- exit 0 ;;
++ echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
++ exit ;;
+ sun4*:SunOS:*:*)
+ case "`/usr/bin/arch -k`" in
+ Series*|S4*)
+@@ -366,26 +427,26 @@
+ ;;
+ esac
+ # Japanese Language versions have a version number like `4.1.3-JL'.
+- echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
+- exit 0 ;;
++ echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`"
++ exit ;;
+ sun3*:SunOS:*:*)
+- echo m68k-sun-sunos${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-sun-sunos"$UNAME_RELEASE"
++ exit ;;
+ sun*:*:4.2BSD:*)
+ UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
+- test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
++ test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
+ case "`/bin/arch`" in
+ sun3)
+- echo m68k-sun-sunos${UNAME_RELEASE}
++ echo m68k-sun-sunos"$UNAME_RELEASE"
+ ;;
+ sun4)
+- echo sparc-sun-sunos${UNAME_RELEASE}
++ echo sparc-sun-sunos"$UNAME_RELEASE"
+ ;;
+ esac
+- exit 0 ;;
++ exit ;;
+ aushp:SunOS:*:*)
+- echo sparc-auspex-sunos${UNAME_RELEASE}
+- exit 0 ;;
++ echo sparc-auspex-sunos"$UNAME_RELEASE"
++ exit ;;
+ # The situation for MiNT is a little confusing. The machine name
+ # can be virtually everything (everything which is not
+ # "atarist" or "atariste" at least should have a processor
+@@ -395,41 +456,44 @@
+ # MiNT. But MiNT is downward compatible to TOS, so this should
+ # be no problem.
+ atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
+- echo m68k-atari-mint${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-atari-mint"$UNAME_RELEASE"
++ exit ;;
+ atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
+- echo m68k-atari-mint${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-atari-mint"$UNAME_RELEASE"
++ exit ;;
+ *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
+- echo m68k-atari-mint${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-atari-mint"$UNAME_RELEASE"
++ exit ;;
+ milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
+- echo m68k-milan-mint${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-milan-mint"$UNAME_RELEASE"
++ exit ;;
+ hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
+- echo m68k-hades-mint${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-hades-mint"$UNAME_RELEASE"
++ exit ;;
+ *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
+- echo m68k-unknown-mint${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-unknown-mint"$UNAME_RELEASE"
++ exit ;;
++ m68k:machten:*:*)
++ echo m68k-apple-machten"$UNAME_RELEASE"
++ exit ;;
+ powerpc:machten:*:*)
+- echo powerpc-apple-machten${UNAME_RELEASE}
+- exit 0 ;;
++ echo powerpc-apple-machten"$UNAME_RELEASE"
++ exit ;;
+ RISC*:Mach:*:*)
+ echo mips-dec-mach_bsd4.3
+- exit 0 ;;
++ exit ;;
+ RISC*:ULTRIX:*:*)
+- echo mips-dec-ultrix${UNAME_RELEASE}
+- exit 0 ;;
++ echo mips-dec-ultrix"$UNAME_RELEASE"
++ exit ;;
+ VAX*:ULTRIX*:*:*)
+- echo vax-dec-ultrix${UNAME_RELEASE}
+- exit 0 ;;
++ echo vax-dec-ultrix"$UNAME_RELEASE"
++ exit ;;
+ 2020:CLIX:*:* | 2430:CLIX:*:*)
+- echo clipper-intergraph-clix${UNAME_RELEASE}
+- exit 0 ;;
++ echo clipper-intergraph-clix"$UNAME_RELEASE"
++ exit ;;
+ mips:*:*:UMIPS | mips:*:*:RISCos)
+- eval $set_cc_for_build
+- sed 's/^ //' << EOF >$dummy.c
++ set_cc_for_build
++ sed 's/^ //' << EOF > "$dummy.c"
+ #ifdef __cplusplus
+ #include <stdio.h> /* for printf() prototype */
+ int main (int argc, char *argv[]) {
+@@ -438,94 +502,95 @@
+ #endif
+ #if defined (host_mips) && defined (MIPSEB)
+ #if defined (SYSTYPE_SYSV)
+- printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
++ printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0);
+ #endif
+ #if defined (SYSTYPE_SVR4)
+- printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
++ printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0);
+ #endif
+ #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
+- printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
++ printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0);
+ #endif
+ #endif
+ exit (-1);
+ }
+ EOF
+- $CC_FOR_BUILD -o $dummy $dummy.c \
+- && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
+- && exit 0
+- echo mips-mips-riscos${UNAME_RELEASE}
+- exit 0 ;;
++ $CC_FOR_BUILD -o "$dummy" "$dummy.c" &&
++ dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` &&
++ SYSTEM_NAME=`"$dummy" "$dummyarg"` &&
++ { echo "$SYSTEM_NAME"; exit; }
++ echo mips-mips-riscos"$UNAME_RELEASE"
++ exit ;;
+ Motorola:PowerMAX_OS:*:*)
+ echo powerpc-motorola-powermax
+- exit 0 ;;
++ exit ;;
+ Motorola:*:4.3:PL8-*)
+ echo powerpc-harris-powermax
+- exit 0 ;;
++ exit ;;
+ Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
+ echo powerpc-harris-powermax
+- exit 0 ;;
++ exit ;;
+ Night_Hawk:Power_UNIX:*:*)
+ echo powerpc-harris-powerunix
+- exit 0 ;;
++ exit ;;
+ m88k:CX/UX:7*:*)
+ echo m88k-harris-cxux7
+- exit 0 ;;
++ exit ;;
+ m88k:*:4*:R4*)
+ echo m88k-motorola-sysv4
+- exit 0 ;;
++ exit ;;
+ m88k:*:3*:R3*)
+ echo m88k-motorola-sysv3
+- exit 0 ;;
++ exit ;;
+ AViiON:dgux:*:*)
+- # DG/UX returns AViiON for all architectures
+- UNAME_PROCESSOR=`/usr/bin/uname -p`
+- if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
++ # DG/UX returns AViiON for all architectures
++ UNAME_PROCESSOR=`/usr/bin/uname -p`
++ if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ]
+ then
+- if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
+- [ ${TARGET_BINARY_INTERFACE}x = x ]
++ if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \
++ [ "$TARGET_BINARY_INTERFACE"x = x ]
+ then
+- echo m88k-dg-dgux${UNAME_RELEASE}
++ echo m88k-dg-dgux"$UNAME_RELEASE"
+ else
+- echo m88k-dg-dguxbcs${UNAME_RELEASE}
++ echo m88k-dg-dguxbcs"$UNAME_RELEASE"
+ fi
+ else
+- echo i586-dg-dgux${UNAME_RELEASE}
++ echo i586-dg-dgux"$UNAME_RELEASE"
+ fi
+- exit 0 ;;
++ exit ;;
+ M88*:DolphinOS:*:*) # DolphinOS (SVR3)
+ echo m88k-dolphin-sysv3
+- exit 0 ;;
++ exit ;;
+ M88*:*:R3*:*)
+ # Delta 88k system running SVR3
+ echo m88k-motorola-sysv3
+- exit 0 ;;
++ exit ;;
+ XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
+ echo m88k-tektronix-sysv3
+- exit 0 ;;
++ exit ;;
+ Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
+ echo m68k-tektronix-bsd
+- exit 0 ;;
++ exit ;;
+ *:IRIX*:*:*)
+- echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
+- exit 0 ;;
++ echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`"
++ exit ;;
+ ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
+- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
+- exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
++ echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
++ exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
+ i*86:AIX:*:*)
+ echo i386-ibm-aix
+- exit 0 ;;
++ exit ;;
+ ia64:AIX:*:*)
+ if [ -x /usr/bin/oslevel ] ; then
+ IBM_REV=`/usr/bin/oslevel`
+ else
+- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
++ IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
+ fi
+- echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV"
++ exit ;;
+ *:AIX:2:3)
+ if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
+- eval $set_cc_for_build
+- sed 's/^ //' << EOF >$dummy.c
++ set_cc_for_build
++ sed 's/^ //' << EOF > "$dummy.c"
+ #include <sys/systemcfg.h>
+
+ main()
+@@ -536,128 +601,143 @@
+ exit(0);
+ }
+ EOF
+- $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
+- echo rs6000-ibm-aix3.2.5
++ if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"`
++ then
++ echo "$SYSTEM_NAME"
++ else
++ echo rs6000-ibm-aix3.2.5
++ fi
+ elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
+ echo rs6000-ibm-aix3.2.4
+ else
+ echo rs6000-ibm-aix3.2
+ fi
+- exit 0 ;;
+- *:AIX:*:[45])
++ exit ;;
++ *:AIX:*:[4567])
+ IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
+- if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
++ if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then
+ IBM_ARCH=rs6000
+ else
+ IBM_ARCH=powerpc
+ fi
+- if [ -x /usr/bin/oslevel ] ; then
+- IBM_REV=`/usr/bin/oslevel`
++ if [ -x /usr/bin/lslpp ] ; then
++ IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
++ awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
+ else
+- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
++ IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
+ fi
+- echo ${IBM_ARCH}-ibm-aix${IBM_REV}
+- exit 0 ;;
++ echo "$IBM_ARCH"-ibm-aix"$IBM_REV"
++ exit ;;
+ *:AIX:*:*)
+ echo rs6000-ibm-aix
+- exit 0 ;;
+- ibmrt:4.4BSD:*|romp-ibm:BSD:*)
++ exit ;;
++ ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)
+ echo romp-ibm-bsd4.4
+- exit 0 ;;
++ exit ;;
+ ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
+- echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
+- exit 0 ;; # report: romp-ibm BSD 4.3
++ echo romp-ibm-bsd"$UNAME_RELEASE" # 4.3 with uname added to
++ exit ;; # report: romp-ibm BSD 4.3
+ *:BOSX:*:*)
+ echo rs6000-bull-bosx
+- exit 0 ;;
++ exit ;;
+ DPX/2?00:B.O.S.:*:*)
+ echo m68k-bull-sysv3
+- exit 0 ;;
++ exit ;;
+ 9000/[34]??:4.3bsd:1.*:*)
+ echo m68k-hp-bsd
+- exit 0 ;;
++ exit ;;
+ hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
+ echo m68k-hp-bsd4.4
+- exit 0 ;;
++ exit ;;
+ 9000/[34678]??:HP-UX:*:*)
+- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+- case "${UNAME_MACHINE}" in
+- 9000/31? ) HP_ARCH=m68000 ;;
+- 9000/[34]?? ) HP_ARCH=m68k ;;
++ HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
++ case "$UNAME_MACHINE" in
++ 9000/31?) HP_ARCH=m68000 ;;
++ 9000/[34]??) HP_ARCH=m68k ;;
+ 9000/[678][0-9][0-9])
+ if [ -x /usr/bin/getconf ]; then
+ sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
+- sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
+- case "${sc_cpu_version}" in
+- 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
+- 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
+- 532) # CPU_PA_RISC2_0
+- case "${sc_kernel_bits}" in
+- 32) HP_ARCH="hppa2.0n" ;;
+- 64) HP_ARCH="hppa2.0w" ;;
+- '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
+- esac ;;
+- esac
++ sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
++ case "$sc_cpu_version" in
++ 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
++ 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
++ 532) # CPU_PA_RISC2_0
++ case "$sc_kernel_bits" in
++ 32) HP_ARCH=hppa2.0n ;;
++ 64) HP_ARCH=hppa2.0w ;;
++ '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20
++ esac ;;
++ esac
+ fi
+- if [ "${HP_ARCH}" = "" ]; then
+- eval $set_cc_for_build
+- sed 's/^ //' << EOF >$dummy.c
+-
+- #define _HPUX_SOURCE
+- #include <stdlib.h>
+- #include <unistd.h>
+-
+- int main ()
+- {
+- #if defined(_SC_KERNEL_BITS)
+- long bits = sysconf(_SC_KERNEL_BITS);
+- #endif
+- long cpu = sysconf (_SC_CPU_VERSION);
+-
+- switch (cpu)
+- {
+- case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
+- case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
+- case CPU_PA_RISC2_0:
+- #if defined(_SC_KERNEL_BITS)
+- switch (bits)
+- {
+- case 64: puts ("hppa2.0w"); break;
+- case 32: puts ("hppa2.0n"); break;
+- default: puts ("hppa2.0"); break;
+- } break;
+- #else /* !defined(_SC_KERNEL_BITS) */
+- puts ("hppa2.0"); break;
+- #endif
+- default: puts ("hppa1.0"); break;
+- }
+- exit (0);
+- }
++ if [ "$HP_ARCH" = "" ]; then
++ set_cc_for_build
++ sed 's/^ //' << EOF > "$dummy.c"
++
++ #define _HPUX_SOURCE
++ #include <stdlib.h>
++ #include <unistd.h>
++
++ int main ()
++ {
++ #if defined(_SC_KERNEL_BITS)
++ long bits = sysconf(_SC_KERNEL_BITS);
++ #endif
++ long cpu = sysconf (_SC_CPU_VERSION);
++
++ switch (cpu)
++ {
++ case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
++ case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
++ case CPU_PA_RISC2_0:
++ #if defined(_SC_KERNEL_BITS)
++ switch (bits)
++ {
++ case 64: puts ("hppa2.0w"); break;
++ case 32: puts ("hppa2.0n"); break;
++ default: puts ("hppa2.0"); break;
++ } break;
++ #else /* !defined(_SC_KERNEL_BITS) */
++ puts ("hppa2.0"); break;
++ #endif
++ default: puts ("hppa1.0"); break;
++ }
++ exit (0);
++ }
+ EOF
+- (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
++ (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"`
+ test -z "$HP_ARCH" && HP_ARCH=hppa
+ fi ;;
+ esac
+- if [ ${HP_ARCH} = "hppa2.0w" ]
++ if [ "$HP_ARCH" = hppa2.0w ]
+ then
+- # avoid double evaluation of $set_cc_for_build
+- test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
+- if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null
++ set_cc_for_build
++
++ # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
++ # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
++ # generating 64-bit code. GNU and HP use different nomenclature:
++ #
++ # $ CC_FOR_BUILD=cc ./config.guess
++ # => hppa2.0w-hp-hpux11.23
++ # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
++ # => hppa64-hp-hpux11.23
++
++ if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
++ grep -q __LP64__
+ then
+- HP_ARCH="hppa2.0w"
++ HP_ARCH=hppa2.0w
+ else
+- HP_ARCH="hppa64"
++ HP_ARCH=hppa64
+ fi
+ fi
+- echo ${HP_ARCH}-hp-hpux${HPUX_REV}
+- exit 0 ;;
++ echo "$HP_ARCH"-hp-hpux"$HPUX_REV"
++ exit ;;
+ ia64:HP-UX:*:*)
+- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+- echo ia64-hp-hpux${HPUX_REV}
+- exit 0 ;;
++ HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
++ echo ia64-hp-hpux"$HPUX_REV"
++ exit ;;
+ 3050*:HI-UX:*:*)
+- eval $set_cc_for_build
+- sed 's/^ //' << EOF >$dummy.c
++ set_cc_for_build
++ sed 's/^ //' << EOF > "$dummy.c"
+ #include <unistd.h>
+ int
+ main ()
+@@ -682,357 +762,409 @@
+ exit (0);
+ }
+ EOF
+- $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
++ $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` &&
++ { echo "$SYSTEM_NAME"; exit; }
+ echo unknown-hitachi-hiuxwe2
+- exit 0 ;;
+- 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
++ exit ;;
++ 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)
+ echo hppa1.1-hp-bsd
+- exit 0 ;;
++ exit ;;
+ 9000/8??:4.3bsd:*:*)
+ echo hppa1.0-hp-bsd
+- exit 0 ;;
++ exit ;;
+ *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
+ echo hppa1.0-hp-mpeix
+- exit 0 ;;
+- hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
++ exit ;;
++ hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)
+ echo hppa1.1-hp-osf
+- exit 0 ;;
++ exit ;;
+ hp8??:OSF1:*:*)
+ echo hppa1.0-hp-osf
+- exit 0 ;;
++ exit ;;
+ i*86:OSF1:*:*)
+ if [ -x /usr/sbin/sysversion ] ; then
+- echo ${UNAME_MACHINE}-unknown-osf1mk
++ echo "$UNAME_MACHINE"-unknown-osf1mk
+ else
+- echo ${UNAME_MACHINE}-unknown-osf1
++ echo "$UNAME_MACHINE"-unknown-osf1
+ fi
+- exit 0 ;;
++ exit ;;
+ parisc*:Lites*:*:*)
+ echo hppa1.1-hp-lites
+- exit 0 ;;
++ exit ;;
+ C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
+ echo c1-convex-bsd
+- exit 0 ;;
++ exit ;;
+ C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
+ if getsysinfo -f scalar_acc
+ then echo c32-convex-bsd
+ else echo c2-convex-bsd
+ fi
+- exit 0 ;;
++ exit ;;
+ C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
+ echo c34-convex-bsd
+- exit 0 ;;
++ exit ;;
+ C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
+ echo c38-convex-bsd
+- exit 0 ;;
++ exit ;;
+ C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
+ echo c4-convex-bsd
+- exit 0 ;;
++ exit ;;
+ CRAY*Y-MP:*:*:*)
+- echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+- exit 0 ;;
++ echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
++ exit ;;
+ CRAY*[A-Z]90:*:*:*)
+- echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
++ echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \
+ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
+ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
+ -e 's/\.[^.]*$/.X/'
+- exit 0 ;;
++ exit ;;
+ CRAY*TS:*:*:*)
+- echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+- exit 0 ;;
++ echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
++ exit ;;
+ CRAY*T3E:*:*:*)
+- echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+- exit 0 ;;
++ echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
++ exit ;;
+ CRAY*SV1:*:*:*)
+- echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+- exit 0 ;;
++ echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
++ exit ;;
+ *:UNICOS/mp:*:*)
+- echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+- exit 0 ;;
++ echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
++ exit ;;
+ F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
+- FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+- FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
+- echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+- exit 0 ;;
++ FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
++ FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
++ FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'`
++ echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
++ exit ;;
+ 5000:UNIX_System_V:4.*:*)
+- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+- FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+- echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+- exit 0 ;;
++ FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
++ FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
++ echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
++ exit ;;
+ i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
+- echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE"
++ exit ;;
+ sparc*:BSD/OS:*:*)
+- echo sparc-unknown-bsdi${UNAME_RELEASE}
+- exit 0 ;;
++ echo sparc-unknown-bsdi"$UNAME_RELEASE"
++ exit ;;
+ *:BSD/OS:*:*)
+- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"
++ exit ;;
++ arm:FreeBSD:*:*)
++ UNAME_PROCESSOR=`uname -p`
++ set_cc_for_build
++ if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
++ | grep -q __ARM_PCS_VFP
++ then
++ echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabi
++ else
++ echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabihf
++ fi
++ exit ;;
+ *:FreeBSD:*:*)
+- # Determine whether the default compiler uses glibc.
+- eval $set_cc_for_build
+- sed 's/^ //' << EOF >$dummy.c
+- #include <features.h>
+- #if __GLIBC__ >= 2
+- LIBC=gnu
+- #else
+- LIBC=
+- #endif
+-EOF
+- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
+- # GNU/KFreeBSD systems have a "k" prefix to indicate we are using
+- # FreeBSD's kernel, but not the complete OS.
+- case ${LIBC} in gnu) kernel_only='k' ;; esac
+- echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
+- exit 0 ;;
++ UNAME_PROCESSOR=`/usr/bin/uname -p`
++ case "$UNAME_PROCESSOR" in
++ amd64)
++ UNAME_PROCESSOR=x86_64 ;;
++ i386)
++ UNAME_PROCESSOR=i586 ;;
++ esac
++ echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
++ exit ;;
+ i*:CYGWIN*:*)
+- echo ${UNAME_MACHINE}-pc-cygwin
+- exit 0 ;;
+- i*:MINGW*:*)
+- echo ${UNAME_MACHINE}-pc-mingw32
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-pc-cygwin
++ exit ;;
++ *:MINGW64*:*)
++ echo "$UNAME_MACHINE"-pc-mingw64
++ exit ;;
++ *:MINGW*:*)
++ echo "$UNAME_MACHINE"-pc-mingw32
++ exit ;;
++ *:MSYS*:*)
++ echo "$UNAME_MACHINE"-pc-msys
++ exit ;;
+ i*:PW*:*)
+- echo ${UNAME_MACHINE}-pc-pw32
+- exit 0 ;;
+- x86:Interix*:[34]*)
+- echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
+- exit 0 ;;
+- [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
+- echo i${UNAME_MACHINE}-pc-mks
+- exit 0 ;;
+- i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
+- # How do we know it's Interix rather than the generic POSIX subsystem?
+- # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
+- # UNAME_MACHINE based on the output of uname instead of i386?
+- echo i586-pc-interix
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-pc-pw32
++ exit ;;
++ *:Interix*:*)
++ case "$UNAME_MACHINE" in
++ x86)
++ echo i586-pc-interix"$UNAME_RELEASE"
++ exit ;;
++ authenticamd | genuineintel | EM64T)
++ echo x86_64-unknown-interix"$UNAME_RELEASE"
++ exit ;;
++ IA64)
++ echo ia64-unknown-interix"$UNAME_RELEASE"
++ exit ;;
++ esac ;;
+ i*:UWIN*:*)
+- echo ${UNAME_MACHINE}-pc-uwin
+- exit 0 ;;
+- p*:CYGWIN*:*)
+- echo powerpcle-unknown-cygwin
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-pc-uwin
++ exit ;;
++ amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
++ echo x86_64-pc-cygwin
++ exit ;;
+ prep*:SunOS:5.*:*)
+- echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+- exit 0 ;;
++ echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
++ exit ;;
+ *:GNU:*:*)
+ # the GNU system
+- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+- exit 0 ;;
++ echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`"
++ exit ;;
+ *:GNU/*:*:*)
+ # other systems with GNU libc and userland
+- echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+- exit 0 ;;
+- i*86:Minix:*:*)
+- echo ${UNAME_MACHINE}-pc-minix
+- exit 0 ;;
++ echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC"
++ exit ;;
++ *:Minix:*:*)
++ echo "$UNAME_MACHINE"-unknown-minix
++ exit ;;
++ aarch64:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ aarch64_be:Linux:*:*)
++ UNAME_MACHINE=aarch64_be
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ alpha:Linux:*:*)
++ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null` in
++ EV5) UNAME_MACHINE=alphaev5 ;;
++ EV56) UNAME_MACHINE=alphaev56 ;;
++ PCA56) UNAME_MACHINE=alphapca56 ;;
++ PCA57) UNAME_MACHINE=alphapca56 ;;
++ EV6) UNAME_MACHINE=alphaev6 ;;
++ EV67) UNAME_MACHINE=alphaev67 ;;
++ EV68*) UNAME_MACHINE=alphaev68 ;;
++ esac
++ objdump --private-headers /bin/sh | grep -q ld.so.1
++ if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ arc:Linux:*:* | arceb:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
+ arm*:Linux:*:*)
+- echo ${UNAME_MACHINE}-unknown-linux-gnu
+- exit 0 ;;
++ set_cc_for_build
++ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
++ | grep -q __ARM_EABI__
++ then
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ else
++ if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
++ | grep -q __ARM_PCS_VFP
++ then
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi
++ else
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf
++ fi
++ fi
++ exit ;;
++ avr32*:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
+ cris:Linux:*:*)
+- echo cris-axis-linux-gnu
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
++ exit ;;
++ crisv32:Linux:*:*)
++ echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
++ exit ;;
++ e2k:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ frv:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ hexagon:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ i*86:Linux:*:*)
++ echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
++ exit ;;
+ ia64:Linux:*:*)
+- echo ${UNAME_MACHINE}-unknown-linux-gnu
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ k1om:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ m32r*:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
+ m68*:Linux:*:*)
+- echo ${UNAME_MACHINE}-unknown-linux-gnu
+- exit 0 ;;
+- mips:Linux:*:*)
+- eval $set_cc_for_build
+- sed 's/^ //' << EOF >$dummy.c
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ mips:Linux:*:* | mips64:Linux:*:*)
++ set_cc_for_build
++ IS_GLIBC=0
++ test x"${LIBC}" = xgnu && IS_GLIBC=1
++ sed 's/^ //' << EOF > "$dummy.c"
+ #undef CPU
+ #undef mips
+ #undef mipsel
+- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+- CPU=mipsel
++ #undef mips64
++ #undef mips64el
++ #if ${IS_GLIBC} && defined(_ABI64)
++ LIBCABI=gnuabi64
+ #else
+- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+- CPU=mips
++ #if ${IS_GLIBC} && defined(_ABIN32)
++ LIBCABI=gnuabin32
+ #else
+- CPU=
++ LIBCABI=${LIBC}
+ #endif
+ #endif
+-EOF
+- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+- test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
+- ;;
+- mips64:Linux:*:*)
+- eval $set_cc_for_build
+- sed 's/^ //' << EOF >$dummy.c
+- #undef CPU
+- #undef mips64
+- #undef mips64el
++
++ #if ${IS_GLIBC} && defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6
++ CPU=mipsisa64r6
++ #else
++ #if ${IS_GLIBC} && !defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6
++ CPU=mipsisa32r6
++ #else
++ #if defined(__mips64)
++ CPU=mips64
++ #else
++ CPU=mips
++ #endif
++ #endif
++ #endif
++
+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+- CPU=mips64el
++ MIPS_ENDIAN=el
+ #else
+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+- CPU=mips64
++ MIPS_ENDIAN=
+ #else
+- CPU=
++ MIPS_ENDIAN=
+ #endif
+ #endif
+ EOF
+- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+- test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
++ eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'`"
++ test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; }
+ ;;
+- ppc:Linux:*:*)
+- echo powerpc-unknown-linux-gnu
+- exit 0 ;;
+- ppc64:Linux:*:*)
+- echo powerpc64-unknown-linux-gnu
+- exit 0 ;;
+- alpha:Linux:*:*)
+- case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+- EV5) UNAME_MACHINE=alphaev5 ;;
+- EV56) UNAME_MACHINE=alphaev56 ;;
+- PCA56) UNAME_MACHINE=alphapca56 ;;
+- PCA57) UNAME_MACHINE=alphapca56 ;;
+- EV6) UNAME_MACHINE=alphaev6 ;;
+- EV67) UNAME_MACHINE=alphaev67 ;;
+- EV68*) UNAME_MACHINE=alphaev68 ;;
+- esac
+- objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
+- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
+- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+- exit 0 ;;
++ mips64el:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ openrisc*:Linux:*:*)
++ echo or1k-unknown-linux-"$LIBC"
++ exit ;;
++ or32:Linux:*:* | or1k*:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ padre:Linux:*:*)
++ echo sparc-unknown-linux-"$LIBC"
++ exit ;;
++ parisc64:Linux:*:* | hppa64:Linux:*:*)
++ echo hppa64-unknown-linux-"$LIBC"
++ exit ;;
+ parisc:Linux:*:* | hppa:Linux:*:*)
+ # Look for CPU level
+ case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
+- PA7*) echo hppa1.1-unknown-linux-gnu ;;
+- PA8*) echo hppa2.0-unknown-linux-gnu ;;
+- *) echo hppa-unknown-linux-gnu ;;
++ PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;;
++ PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;;
++ *) echo hppa-unknown-linux-"$LIBC" ;;
+ esac
+- exit 0 ;;
+- parisc64:Linux:*:* | hppa64:Linux:*:*)
+- echo hppa64-unknown-linux-gnu
+- exit 0 ;;
++ exit ;;
++ ppc64:Linux:*:*)
++ echo powerpc64-unknown-linux-"$LIBC"
++ exit ;;
++ ppc:Linux:*:*)
++ echo powerpc-unknown-linux-"$LIBC"
++ exit ;;
++ ppc64le:Linux:*:*)
++ echo powerpc64le-unknown-linux-"$LIBC"
++ exit ;;
++ ppcle:Linux:*:*)
++ echo powerpcle-unknown-linux-"$LIBC"
++ exit ;;
++ riscv32:Linux:*:* | riscv64:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
+ s390:Linux:*:* | s390x:Linux:*:*)
+- echo ${UNAME_MACHINE}-ibm-linux
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-ibm-linux-"$LIBC"
++ exit ;;
+ sh64*:Linux:*:*)
+- echo ${UNAME_MACHINE}-unknown-linux-gnu
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
+ sh*:Linux:*:*)
+- echo ${UNAME_MACHINE}-unknown-linux-gnu
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
+ sparc:Linux:*:* | sparc64:Linux:*:*)
+- echo ${UNAME_MACHINE}-unknown-linux-gnu
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ tile*:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
++ vax:Linux:*:*)
++ echo "$UNAME_MACHINE"-dec-linux-"$LIBC"
++ exit ;;
+ x86_64:Linux:*:*)
+- echo x86_64-unknown-linux-gnu
+- exit 0 ;;
+- i*86:Linux:*:*)
+- # The BFD linker knows what the default object file format is, so
+- # first see if it will tell us. cd to the root directory to prevent
+- # problems with other programs or directories called `ld' in the path.
+- # Set LC_ALL=C to ensure ld outputs messages in English.
+- ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
+- | sed -ne '/supported targets:/!d
+- s/[ ][ ]*/ /g
+- s/.*supported targets: *//
+- s/ .*//
+- p'`
+- case "$ld_supported_targets" in
+- elf32-i386)
+- TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
+- ;;
+- a.out-i386-linux)
+- echo "${UNAME_MACHINE}-pc-linux-gnuaout"
+- exit 0 ;;
+- coff-i386)
+- echo "${UNAME_MACHINE}-pc-linux-gnucoff"
+- exit 0 ;;
+- "")
+- # Either a pre-BFD a.out linker (linux-gnuoldld) or
+- # one that does not give us useful --help.
+- echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
+- exit 0 ;;
+- esac
+- # Determine whether the default compiler is a.out or elf
+- eval $set_cc_for_build
+- sed 's/^ //' << EOF >$dummy.c
+- #include <features.h>
+- #ifdef __ELF__
+- # ifdef __GLIBC__
+- # if __GLIBC__ >= 2
+- LIBC=gnu
+- # else
+- LIBC=gnulibc1
+- # endif
+- # else
+- LIBC=gnulibc1
+- # endif
+- #else
+- #ifdef __INTEL_COMPILER
+- LIBC=gnu
+- #else
+- LIBC=gnuaout
+- #endif
+- #endif
+- #ifdef __dietlibc__
+- LIBC=dietlibc
+- #endif
+-EOF
+- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
+- test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
+- test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
+- ;;
++ set_cc_for_build
++ LIBCABI=$LIBC
++ if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
++ if (echo '#ifdef __ILP32__'; echo IS_X32; echo '#endif') | \
++ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
++ grep IS_X32 >/dev/null
++ then
++ LIBCABI="$LIBC"x32
++ fi
++ fi
++ echo "$UNAME_MACHINE"-pc-linux-"$LIBCABI"
++ exit ;;
++ xtensa*:Linux:*:*)
++ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++ exit ;;
+ i*86:DYNIX/ptx:4*:*)
+ # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
+ # earlier versions are messed up and put the nodename in both
+ # sysname and nodename.
+ echo i386-sequent-sysv4
+- exit 0 ;;
++ exit ;;
+ i*86:UNIX_SV:4.2MP:2.*)
+- # Unixware is an offshoot of SVR4, but it has its own version
+- # number series starting with 2...
+- # I am not positive that other SVR4 systems won't match this,
++ # Unixware is an offshoot of SVR4, but it has its own version
++ # number series starting with 2...
++ # I am not positive that other SVR4 systems won't match this,
+ # I just have to hope. -- rms.
+- # Use sysv4.2uw... so that sysv4* matches it.
+- echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
+- exit 0 ;;
++ # Use sysv4.2uw... so that sysv4* matches it.
++ echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION"
++ exit ;;
+ i*86:OS/2:*:*)
+ # If we were able to find `uname', then EMX Unix compatibility
+ # is probably installed.
+- echo ${UNAME_MACHINE}-pc-os2-emx
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-pc-os2-emx
++ exit ;;
+ i*86:XTS-300:*:STOP)
+- echo ${UNAME_MACHINE}-unknown-stop
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-stop
++ exit ;;
+ i*86:atheos:*:*)
+- echo ${UNAME_MACHINE}-unknown-atheos
+- exit 0 ;;
+- i*86:syllable:*:*)
+- echo ${UNAME_MACHINE}-pc-syllable
+- exit 0 ;;
+- i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
+- echo i386-unknown-lynxos${UNAME_RELEASE}
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-atheos
++ exit ;;
++ i*86:syllable:*:*)
++ echo "$UNAME_MACHINE"-pc-syllable
++ exit ;;
++ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
++ echo i386-unknown-lynxos"$UNAME_RELEASE"
++ exit ;;
+ i*86:*DOS:*:*)
+- echo ${UNAME_MACHINE}-pc-msdosdjgpp
+- exit 0 ;;
+- i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
+- UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
++ echo "$UNAME_MACHINE"-pc-msdosdjgpp
++ exit ;;
++ i*86:*:4.*:*)
++ UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'`
+ if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
+- echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
++ echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL"
+ else
+- echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
++ echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL"
+ fi
+- exit 0 ;;
+- i*86:*:5:[78]*)
++ exit ;;
++ i*86:*:5:[678]*)
++ # UnixWare 7.x, OpenUNIX and OpenServer 6.
+ case `/bin/uname -X | grep "^Machine"` in
+ *486*) UNAME_MACHINE=i486 ;;
+ *Pentium) UNAME_MACHINE=i586 ;;
+ *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
+ esac
+- echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+- exit 0 ;;
++ echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}"
++ exit ;;
+ i*86:*:3.2:*)
+ if test -f /usr/options/cb.name; then
+ UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
+- echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
++ echo "$UNAME_MACHINE"-pc-isc"$UNAME_REL"
+ elif /bin/uname -X 2>/dev/null >/dev/null ; then
+ UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
+ (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
+@@ -1042,214 +1174,326 @@
+ && UNAME_MACHINE=i686
+ (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
+ && UNAME_MACHINE=i686
+- echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
++ echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL"
+ else
+- echo ${UNAME_MACHINE}-pc-sysv32
++ echo "$UNAME_MACHINE"-pc-sysv32
+ fi
+- exit 0 ;;
++ exit ;;
+ pc:*:*:*)
+ # Left here for compatibility:
+- # uname -m prints for DJGPP always 'pc', but it prints nothing about
+- # the processor, so we play safe by assuming i386.
+- echo i386-pc-msdosdjgpp
+- exit 0 ;;
++ # uname -m prints for DJGPP always 'pc', but it prints nothing about
++ # the processor, so we play safe by assuming i586.
++ # Note: whatever this is, it MUST be the same as what config.sub
++ # prints for the "djgpp" host, or else GDB configure will decide that
++ # this is a cross-build.
++ echo i586-pc-msdosdjgpp
++ exit ;;
+ Intel:Mach:3*:*)
+ echo i386-pc-mach3
+- exit 0 ;;
++ exit ;;
+ paragon:*:*:*)
+ echo i860-intel-osf1
+- exit 0 ;;
++ exit ;;
+ i860:*:4.*:*) # i860-SVR4
+ if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
+- echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
++ echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4
+ else # Add other i860-SVR4 vendors below as they are discovered.
+- echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
++ echo i860-unknown-sysv"$UNAME_RELEASE" # Unknown i860-SVR4
+ fi
+- exit 0 ;;
++ exit ;;
+ mini*:CTIX:SYS*5:*)
+ # "miniframe"
+ echo m68010-convergent-sysv
+- exit 0 ;;
++ exit ;;
+ mc68k:UNIX:SYSTEM5:3.51m)
+ echo m68k-convergent-sysv
+- exit 0 ;;
++ exit ;;
+ M680?0:D-NIX:5.3:*)
+ echo m68k-diab-dnix
+- exit 0 ;;
+- M68*:*:R3V[567]*:*)
+- test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
+- 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)
++ exit ;;
++ M68*:*:R3V[5678]*:*)
++ test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
++ 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)
+ OS_REL=''
+ test -r /etc/.relid \
+ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+- && echo i486-ncr-sysv4.3${OS_REL} && exit 0
++ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
+ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+- && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
++ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
+ 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
+- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+- && echo i486-ncr-sysv4 && exit 0 ;;
++ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
++ && { echo i486-ncr-sysv4; exit; } ;;
++ NCR*:*:4.2:* | MPRAS*:*:4.2:*)
++ OS_REL='.3'
++ test -r /etc/.relid \
++ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
++ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
++ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
++ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
++ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; }
++ /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
++ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
+ m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
+- echo m68k-unknown-lynxos${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-unknown-lynxos"$UNAME_RELEASE"
++ exit ;;
+ mc68030:UNIX_System_V:4.*:*)
+ echo m68k-atari-sysv4
+- exit 0 ;;
++ exit ;;
+ TSUNAMI:LynxOS:2.*:*)
+- echo sparc-unknown-lynxos${UNAME_RELEASE}
+- exit 0 ;;
++ echo sparc-unknown-lynxos"$UNAME_RELEASE"
++ exit ;;
+ rs6000:LynxOS:2.*:*)
+- echo rs6000-unknown-lynxos${UNAME_RELEASE}
+- exit 0 ;;
+- PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
+- echo powerpc-unknown-lynxos${UNAME_RELEASE}
+- exit 0 ;;
++ echo rs6000-unknown-lynxos"$UNAME_RELEASE"
++ exit ;;
++ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
++ echo powerpc-unknown-lynxos"$UNAME_RELEASE"
++ exit ;;
+ SM[BE]S:UNIX_SV:*:*)
+- echo mips-dde-sysv${UNAME_RELEASE}
+- exit 0 ;;
++ echo mips-dde-sysv"$UNAME_RELEASE"
++ exit ;;
+ RM*:ReliantUNIX-*:*:*)
+ echo mips-sni-sysv4
+- exit 0 ;;
++ exit ;;
+ RM*:SINIX-*:*:*)
+ echo mips-sni-sysv4
+- exit 0 ;;
++ exit ;;
+ *:SINIX-*:*:*)
+ if uname -p 2>/dev/null >/dev/null ; then
+ UNAME_MACHINE=`(uname -p) 2>/dev/null`
+- echo ${UNAME_MACHINE}-sni-sysv4
++ echo "$UNAME_MACHINE"-sni-sysv4
+ else
+ echo ns32k-sni-sysv
+ fi
+- exit 0 ;;
+- PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+- # says <Richard.M.Bartel(a)ccMail.Census.GOV>
+- echo i586-unisys-sysv4
+- exit 0 ;;
++ exit ;;
++ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
++ # says <Richard.M.Bartel(a)ccMail.Census.GOV>
++ echo i586-unisys-sysv4
++ exit ;;
+ *:UNIX_System_V:4*:FTX*)
+ # From Gerald Hewes <hewes(a)openmarket.com>.
+ # How about differentiating between stratus architectures? -djm
+ echo hppa1.1-stratus-sysv4
+- exit 0 ;;
++ exit ;;
+ *:*:*:FTX*)
+ # From seanf(a)swdc.stratus.com.
+ echo i860-stratus-sysv4
+- exit 0 ;;
++ exit ;;
++ i*86:VOS:*:*)
++ # From Paul.Green(a)stratus.com.
++ echo "$UNAME_MACHINE"-stratus-vos
++ exit ;;
+ *:VOS:*:*)
+ # From Paul.Green(a)stratus.com.
+ echo hppa1.1-stratus-vos
+- exit 0 ;;
++ exit ;;
+ mc68*:A/UX:*:*)
+- echo m68k-apple-aux${UNAME_RELEASE}
+- exit 0 ;;
++ echo m68k-apple-aux"$UNAME_RELEASE"
++ exit ;;
+ news*:NEWS-OS:6*:*)
+ echo mips-sony-newsos6
+- exit 0 ;;
++ exit ;;
+ R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
+ if [ -d /usr/nec ]; then
+- echo mips-nec-sysv${UNAME_RELEASE}
++ echo mips-nec-sysv"$UNAME_RELEASE"
+ else
+- echo mips-unknown-sysv${UNAME_RELEASE}
++ echo mips-unknown-sysv"$UNAME_RELEASE"
+ fi
+- exit 0 ;;
++ exit ;;
+ BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
+ echo powerpc-be-beos
+- exit 0 ;;
++ exit ;;
+ BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
+ echo powerpc-apple-beos
+- exit 0 ;;
++ exit ;;
+ BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
+ echo i586-pc-beos
+- exit 0 ;;
++ exit ;;
++ BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
++ echo i586-pc-haiku
++ exit ;;
++ x86_64:Haiku:*:*)
++ echo x86_64-unknown-haiku
++ exit ;;
+ SX-4:SUPER-UX:*:*)
+- echo sx4-nec-superux${UNAME_RELEASE}
+- exit 0 ;;
++ echo sx4-nec-superux"$UNAME_RELEASE"
++ exit ;;
+ SX-5:SUPER-UX:*:*)
+- echo sx5-nec-superux${UNAME_RELEASE}
+- exit 0 ;;
++ echo sx5-nec-superux"$UNAME_RELEASE"
++ exit ;;
+ SX-6:SUPER-UX:*:*)
+- echo sx6-nec-superux${UNAME_RELEASE}
+- exit 0 ;;
++ echo sx6-nec-superux"$UNAME_RELEASE"
++ exit ;;
++ SX-7:SUPER-UX:*:*)
++ echo sx7-nec-superux"$UNAME_RELEASE"
++ exit ;;
++ SX-8:SUPER-UX:*:*)
++ echo sx8-nec-superux"$UNAME_RELEASE"
++ exit ;;
++ SX-8R:SUPER-UX:*:*)
++ echo sx8r-nec-superux"$UNAME_RELEASE"
++ exit ;;
++ SX-ACE:SUPER-UX:*:*)
++ echo sxace-nec-superux"$UNAME_RELEASE"
++ exit ;;
+ Power*:Rhapsody:*:*)
+- echo powerpc-apple-rhapsody${UNAME_RELEASE}
+- exit 0 ;;
++ echo powerpc-apple-rhapsody"$UNAME_RELEASE"
++ exit ;;
+ *:Rhapsody:*:*)
+- echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
++ exit ;;
+ *:Darwin:*:*)
+- case `uname -p` in
+- *86) UNAME_PROCESSOR=i686 ;;
+- powerpc) UNAME_PROCESSOR=powerpc ;;
++ UNAME_PROCESSOR=`uname -p`
++ case $UNAME_PROCESSOR in
++ unknown) UNAME_PROCESSOR=powerpc ;;
+ esac
+- echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
+- exit 0 ;;
++ if command -v xcode-select > /dev/null 2> /dev/null && \
++ ! xcode-select --print-path > /dev/null 2> /dev/null ; then
++ # Avoid executing cc if there is no toolchain installed as
++ # cc will be a stub that puts up a graphical alert
++ # prompting the user to install developer tools.
++ CC_FOR_BUILD=no_compiler_found
++ else
++ set_cc_for_build
++ fi
++ if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
++ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
++ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
++ grep IS_64BIT_ARCH >/dev/null
++ then
++ case $UNAME_PROCESSOR in
++ i386) UNAME_PROCESSOR=x86_64 ;;
++ powerpc) UNAME_PROCESSOR=powerpc64 ;;
++ esac
++ fi
++ # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
++ if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
++ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
++ grep IS_PPC >/dev/null
++ then
++ UNAME_PROCESSOR=powerpc
++ fi
++ elif test "$UNAME_PROCESSOR" = i386 ; then
++ # uname -m returns i386 or x86_64
++ UNAME_PROCESSOR=$UNAME_MACHINE
++ fi
++ echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
++ exit ;;
+ *:procnto*:*:* | *:QNX:[0123456789]*:*)
+ UNAME_PROCESSOR=`uname -p`
+- if test "$UNAME_PROCESSOR" = "x86"; then
++ if test "$UNAME_PROCESSOR" = x86; then
+ UNAME_PROCESSOR=i386
+ UNAME_MACHINE=pc
+ fi
+- echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
+- exit 0 ;;
++ echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE"
++ exit ;;
+ *:QNX:*:4*)
+ echo i386-pc-qnx
+- exit 0 ;;
+- NSR-?:NONSTOP_KERNEL:*:*)
+- echo nsr-tandem-nsk${UNAME_RELEASE}
+- exit 0 ;;
++ exit ;;
++ NEO-*:NONSTOP_KERNEL:*:*)
++ echo neo-tandem-nsk"$UNAME_RELEASE"
++ exit ;;
++ NSE-*:NONSTOP_KERNEL:*:*)
++ echo nse-tandem-nsk"$UNAME_RELEASE"
++ exit ;;
++ NSR-*:NONSTOP_KERNEL:*:*)
++ echo nsr-tandem-nsk"$UNAME_RELEASE"
++ exit ;;
++ NSV-*:NONSTOP_KERNEL:*:*)
++ echo nsv-tandem-nsk"$UNAME_RELEASE"
++ exit ;;
++ NSX-*:NONSTOP_KERNEL:*:*)
++ echo nsx-tandem-nsk"$UNAME_RELEASE"
++ exit ;;
+ *:NonStop-UX:*:*)
+ echo mips-compaq-nonstopux
+- exit 0 ;;
++ exit ;;
+ BS2000:POSIX*:*:*)
+ echo bs2000-siemens-sysv
+- exit 0 ;;
++ exit ;;
+ DS/*:UNIX_System_V:*:*)
+- echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE"
++ exit ;;
+ *:Plan9:*:*)
+ # "uname -m" is not consistent, so use $cputype instead. 386
+ # is converted to i386 for consistency with other x86
+ # operating systems.
+- if test "$cputype" = "386"; then
++ # shellcheck disable=SC2154
++ if test "$cputype" = 386; then
+ UNAME_MACHINE=i386
+ else
+ UNAME_MACHINE="$cputype"
+ fi
+- echo ${UNAME_MACHINE}-unknown-plan9
+- exit 0 ;;
++ echo "$UNAME_MACHINE"-unknown-plan9
++ exit ;;
+ *:TOPS-10:*:*)
+ echo pdp10-unknown-tops10
+- exit 0 ;;
++ exit ;;
+ *:TENEX:*:*)
+ echo pdp10-unknown-tenex
+- exit 0 ;;
++ exit ;;
+ KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
+ echo pdp10-dec-tops20
+- exit 0 ;;
++ exit ;;
+ XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
+ echo pdp10-xkl-tops20
+- exit 0 ;;
++ exit ;;
+ *:TOPS-20:*:*)
+ echo pdp10-unknown-tops20
+- exit 0 ;;
++ exit ;;
+ *:ITS:*:*)
+ echo pdp10-unknown-its
+- exit 0 ;;
++ exit ;;
+ SEI:*:*:SEIUX)
+- echo mips-sei-seiux${UNAME_RELEASE}
+- exit 0 ;;
+- *:DRAGONFLY:*:*)
+- echo ${UNAME_MACHINE}-unknown-dragonfly${UNAME_RELEASE}
+- exit 0 ;;
++ echo mips-sei-seiux"$UNAME_RELEASE"
++ exit ;;
++ *:DragonFly:*:*)
++ echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
++ exit ;;
++ *:*VMS:*:*)
++ UNAME_MACHINE=`(uname -p) 2>/dev/null`
++ case "$UNAME_MACHINE" in
++ A*) echo alpha-dec-vms ; exit ;;
++ I*) echo ia64-dec-vms ; exit ;;
++ V*) echo vax-dec-vms ; exit ;;
++ esac ;;
++ *:XENIX:*:SysV)
++ echo i386-pc-xenix
++ exit ;;
++ i*86:skyos:*:*)
++ echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`"
++ exit ;;
++ i*86:rdos:*:*)
++ echo "$UNAME_MACHINE"-pc-rdos
++ exit ;;
++ i*86:AROS:*:*)
++ echo "$UNAME_MACHINE"-pc-aros
++ exit ;;
++ x86_64:VMkernel:*:*)
++ echo "$UNAME_MACHINE"-unknown-esx
++ exit ;;
++ amd64:Isilon\ OneFS:*:*)
++ echo x86_64-unknown-onefs
++ exit ;;
++ *:Unleashed:*:*)
++ echo "$UNAME_MACHINE"-unknown-unleashed"$UNAME_RELEASE"
++ exit ;;
+ esac
+
+-#echo '(No uname command or uname output not recognized.)' 1>&2
+-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
+-
+-eval $set_cc_for_build
+-cat >$dummy.c <<EOF
++# No uname command or uname output not recognized.
++set_cc_for_build
++cat > "$dummy.c" <<EOF
+ #ifdef _SEQUENT_
+-# include <sys/types.h>
+-# include <sys/utsname.h>
++#include <sys/types.h>
++#include <sys/utsname.h>
++#endif
++#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
++#if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
++#include <signal.h>
++#if defined(_SIZE_T_) || defined(SIGLOST)
++#include <sys/utsname.h>
++#endif
++#endif
+ #endif
+ main ()
+ {
+@@ -1262,20 +1506,12 @@
+ #include <sys/param.h>
+ printf ("m68k-sony-newsos%s\n",
+ #ifdef NEWSOS4
+- "4"
++ "4"
+ #else
+- ""
+-#endif
+- ); exit (0);
++ ""
+ #endif
++ ); exit (0);
+ #endif
+-
+-#if defined (__arm) && defined (__acorn) && defined (__unix)
+- printf ("arm-acorn-riscix"); exit (0);
+-#endif
+-
+-#if defined (hp300) && !defined (hpux)
+- printf ("m68k-hp-bsd\n"); exit (0);
+ #endif
+
+ #if defined (NeXT)
+@@ -1317,39 +1553,54 @@
+ #endif
+
+ #if defined (_SEQUENT_)
+- struct utsname un;
+-
+- uname(&un);
+-
+- if (strncmp(un.version, "V2", 2) == 0) {
+- printf ("i386-sequent-ptx2\n"); exit (0);
+- }
+- if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
+- printf ("i386-sequent-ptx1\n"); exit (0);
+- }
+- printf ("i386-sequent-ptx\n"); exit (0);
++ struct utsname un;
+
++ uname(&un);
++ if (strncmp(un.version, "V2", 2) == 0) {
++ printf ("i386-sequent-ptx2\n"); exit (0);
++ }
++ if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
++ printf ("i386-sequent-ptx1\n"); exit (0);
++ }
++ printf ("i386-sequent-ptx\n"); exit (0);
+ #endif
+
+ #if defined (vax)
+-# if !defined (ultrix)
+-# include <sys/param.h>
+-# if defined (BSD)
+-# if BSD == 43
+- printf ("vax-dec-bsd4.3\n"); exit (0);
+-# else
+-# if BSD == 199006
+- printf ("vax-dec-bsd4.3reno\n"); exit (0);
+-# else
+- printf ("vax-dec-bsd\n"); exit (0);
+-# endif
+-# endif
+-# else
+- printf ("vax-dec-bsd\n"); exit (0);
+-# endif
+-# else
+- printf ("vax-dec-ultrix\n"); exit (0);
+-# endif
++#if !defined (ultrix)
++#include <sys/param.h>
++#if defined (BSD)
++#if BSD == 43
++ printf ("vax-dec-bsd4.3\n"); exit (0);
++#else
++#if BSD == 199006
++ printf ("vax-dec-bsd4.3reno\n"); exit (0);
++#else
++ printf ("vax-dec-bsd\n"); exit (0);
++#endif
++#endif
++#else
++ printf ("vax-dec-bsd\n"); exit (0);
++#endif
++#else
++#if defined(_SIZE_T_) || defined(SIGLOST)
++ struct utsname un;
++ uname (&un);
++ printf ("vax-dec-ultrix%s\n", un.release); exit (0);
++#else
++ printf ("vax-dec-ultrix\n"); exit (0);
++#endif
++#endif
++#endif
++#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
++#if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
++#if defined(_SIZE_T_) || defined(SIGLOST)
++ struct utsname *un;
++ uname (&un);
++ printf ("mips-dec-ultrix%s\n", un.release); exit (0);
++#else
++ printf ("mips-dec-ultrix\n"); exit (0);
++#endif
++#endif
+ #endif
+
+ #if defined (alliant) && defined (i860)
+@@ -1360,51 +1611,44 @@
+ }
+ EOF
+
+-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0
++$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`$dummy` &&
++ { echo "$SYSTEM_NAME"; exit; }
+
+ # Apollos put the system type in the environment.
++test -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; }
+
+-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
++echo "$0: unable to guess system type" >&2
+
+-# Convex versions that predate uname can use getsysinfo(1)
++case "$UNAME_MACHINE:$UNAME_SYSTEM" in
++ mips:Linux | mips64:Linux)
++ # If we got here on MIPS GNU/Linux, output extra information.
++ cat >&2 <<EOF
+
+-if [ -x /usr/convex/getsysinfo ]
+-then
+- case `getsysinfo -f cpu_type` in
+- c1*)
+- echo c1-convex-bsd
+- exit 0 ;;
+- c2*)
+- if getsysinfo -f scalar_acc
+- then echo c32-convex-bsd
+- else echo c2-convex-bsd
+- fi
+- exit 0 ;;
+- c34*)
+- echo c34-convex-bsd
+- exit 0 ;;
+- c38*)
+- echo c38-convex-bsd
+- exit 0 ;;
+- c4*)
+- echo c4-convex-bsd
+- exit 0 ;;
+- esac
+-fi
++NOTE: MIPS GNU/Linux systems require a C compiler to fully recognize
++the system type. Please install a C compiler and try again.
++EOF
++ ;;
++esac
+
+ cat >&2 <<EOF
+-$0: unable to guess system type
+
+-This script, last modified $timestamp, has failed to recognize
+-the operating system you are using. It is advised that you
+-download the most up to date version of the config scripts from
+-
+- ftp://ftp.gnu.org/pub/gnu/config/
+-
+-If the version you run ($0) is already up to date, please
+-send the following data and any information you think might be
+-pertinent to <config-patches(a)gnu.org> in order to provide the needed
+-information to handle your system.
++This script (version $timestamp), has failed to recognize the
++operating system you are using. If your script is old, overwrite *all*
++copies of config.guess and config.sub with the latest versions from:
++
++ https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.gue…
++and
++ https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
++EOF
++
++year=`echo $timestamp | sed 's,-.*,,'`
++# shellcheck disable=SC2003
++if test "`expr "\`date +%Y\`" - "$year"`" -lt 3 ; then
++ cat >&2 <<EOF
++
++If $0 has already been updated, send the following data and any
++information you think might be pertinent to config-patches(a)gnu.org to
++provide the necessary information to handle your system.
+
+ config.guess timestamp = $timestamp
+
+@@ -1423,16 +1667,17 @@
+ /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
+ /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
+
+-UNAME_MACHINE = ${UNAME_MACHINE}
+-UNAME_RELEASE = ${UNAME_RELEASE}
+-UNAME_SYSTEM = ${UNAME_SYSTEM}
+-UNAME_VERSION = ${UNAME_VERSION}
++UNAME_MACHINE = "$UNAME_MACHINE"
++UNAME_RELEASE = "$UNAME_RELEASE"
++UNAME_SYSTEM = "$UNAME_SYSTEM"
++UNAME_VERSION = "$UNAME_VERSION"
+ EOF
++fi
+
+ exit 1
+
+ # Local variables:
+-# eval: (add-hook 'write-file-hooks 'time-stamp)
++# eval: (add-hook 'before-save-hook 'time-stamp)
+ # time-stamp-start: "timestamp='"
+ # time-stamp-format: "%:y-%02m-%02d"
+ # time-stamp-end: "'"
+diff -uNr b/src/disk.c a/src/disk.c
+--- b/src/disk.c 2020-09-23 09:33:24.921303235 +0800
++++ a/src/disk.c 2020-09-23 09:33:24.901302603 +0800
+@@ -288,16 +288,16 @@
+ int
+ seekto(int fd, uint64 off)
+ {
+- // In modern times, lseek() is 64-bit clean.
++ // In modern times, lseek64() is 64-bit clean.
+
+ uint64 here = 0;
+
+- lseek(fd, 0, 0);
++ lseek64(fd, 0, 0);
+ while ((uint64)(off - here) > (uint64)BIGSEEK) {
+- if (lseek(fd, BIGSEEK, SEEK_CUR) == -1) break;
++ if (lseek64(fd, BIGSEEK, SEEK_CUR) == -1) break;
+ here += BIGSEEK;
+ }
+ assert((uint64)(off - here) <= (uint64)BIGSEEK);
+- if (lseek(fd, (int)(off - here), SEEK_CUR) == -1) return (-1);
++ if (lseek64(fd, (int)(off - here), SEEK_CUR) == -1) return (-1);
+ return (0);
+ }
diff --git a/pkg/lmbench3/test.patch b/pkg/lmbench3/test.patch
new file mode 100644
index 00000000..79f9ef58
--- /dev/null
+++ b/pkg/lmbench3/test.patch
@@ -0,0 +1 @@
++
--
2.23.0
1
1

13 Oct '20
problem :
cat:results/x86_64-linux-gnu/vm-aarch64-2p8g--baijing-2994780.0: No
such file or directory
Signed-off-by: Bai Jing <799286817(a)qq.com>
---
tests/lmbench3 | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tests/lmbench3 b/tests/lmbench3
index 8570a35a..f09c49e2 100755
--- a/tests/lmbench3
+++ b/tests/lmbench3
@@ -138,7 +138,7 @@ run_lmbench3_development()
eval "$test=yes"
- sed -i '/lat_pagefault -P $SYNC_MAX $FILE/i [ -f $FILE ] || dd if=/dev/zero of=$FILE count=1 bs=1G' bin/x86_64-linux-gnu/lmbench
+ sed -i '/lat_pagefault -P $SYNC_MAX $FILE/i [ -f $FILE ] || dd if=/dev/zero of=$FILE count=1 bs=1G' bin/aarch64-linux-gnu/lmbench
log_eval "
(
echo $nr_threads
@@ -177,7 +177,7 @@ run_lmbench3_development()
show_result()
{
- cat results/x86_64-linux-gnu/$testbox.0 || {
+ cat results/aarch64-linux-gnu/$testbox.0 || {
echo "no test result found"
exit -1
}
--
2.23.0
1
0