Andreas Schwab
18971bda26
- gcc10.patch: fix build with gcc10 (bsc#1158192) OBS-URL: https://build.opensuse.org/request/show/756004 OBS-URL: https://build.opensuse.org/package/show/Base:System/libxcrypt?expand=0&rev=18
66 lines
2.2 KiB
Diff
66 lines
2.2 KiB
Diff
From 45ff87405a6f2ee64ec282e6efc6cca229eae893 Mon Sep 17 00:00:00 2001
|
||
From: Zack Weinberg <zackw@panix.com>
|
||
Date: Wed, 11 Dec 2019 13:27:54 -0500
|
||
Subject: [PATCH 1/2] Remove -Winline from the list of warnings to use (#95)
|
||
MIME-Version: 1.0
|
||
Content-Type: text/plain; charset=UTF-8
|
||
Content-Transfer-Encoding: 8bit
|
||
|
||
GCC 10 may decline to inline some functions in `alg-yescrypt-opt.c`
|
||
and, with `-Winline -Werror`, this breaks the build. This warning
|
||
isn’t ever going to expose actual bugs, so let’s just turn it off.
|
||
|
||
Fixes #95.
|
||
---
|
||
m4/zw_simple_warnings.m4 | 1 -
|
||
1 file changed, 1 deletion(-)
|
||
|
||
diff --git a/m4/zw_simple_warnings.m4 b/m4/zw_simple_warnings.m4
|
||
index cfdf9e9..e45453e 100644
|
||
--- a/m4/zw_simple_warnings.m4
|
||
+++ b/m4/zw_simple_warnings.m4
|
||
@@ -72,7 +72,6 @@ AC_ARG_ENABLE(
|
||
-Wformat-overflow=2 dnl
|
||
-Wformat-signedness dnl
|
||
-Wformat-truncation=1 dnl
|
||
- -Winline dnl
|
||
-Wlogical-op dnl
|
||
-Wmissing-declarations dnl
|
||
-Wmissing-prototypes dnl
|
||
--
|
||
2.24.1
|
||
|
||
|
||
From 941362e2868a71a32a2a497903e651fb647b4fd2 Mon Sep 17 00:00:00 2001
|
||
From: Zack Weinberg <zackw@panix.com>
|
||
Date: Wed, 11 Dec 2019 13:33:07 -0500
|
||
Subject: [PATCH 2/2] crypt-common.h: Declare `ascii64` with explicit `extern`.
|
||
|
||
GCC 10 changes its default compilation mode from `-fcommon` to
|
||
`-fno-common`, which means that tentative definitions of data objects
|
||
will no longer be merged across translation units; instead they will
|
||
produce multiple definition errors. The `ascii64` constant was
|
||
supposed to be _declared_ in crypt-common.h, but it was accidentally a
|
||
tentative definition instead. Fix this by adding the `extern`
|
||
annotation that should have always been there.
|
||
---
|
||
lib/crypt-common.h | 2 +-
|
||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||
|
||
diff --git a/lib/crypt-common.h b/lib/crypt-common.h
|
||
index c97fa5d..1134bc4 100644
|
||
--- a/lib/crypt-common.h
|
||
+++ b/lib/crypt-common.h
|
||
@@ -24,7 +24,7 @@
|
||
/* The base-64 encoding table used by most hashing methods.
|
||
(bcrypt uses a slightly different encoding.) Size 65
|
||
because it's used as a C string in a few places. */
|
||
-const unsigned char ascii64[65];
|
||
+extern const unsigned char ascii64[65];
|
||
|
||
/* Same table gets used with other names in various places. */
|
||
#define b64t ((const char *) ascii64)
|
||
--
|
||
2.24.1
|
||
|