xref: /OK3568_Linux_fs/buildroot/package/lshw/0002-Fix-musl-build-wrong-usage-of-LONG_BIT.patch (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunFrom 246b9e07f22d551fae0718315273760c087b79ca Mon Sep 17 00:00:00 2001
2*4882a593SmuzhiyunFrom: Sergio Prado <sergio.prado@e-labworks.com>
3*4882a593SmuzhiyunDate: Sat, 4 Jul 2020 20:28:26 -0300
4*4882a593SmuzhiyunSubject: [PATCH] Fix musl build: wrong usage of LONG_BIT
5*4882a593Smuzhiyun
6*4882a593SmuzhiyunLONG_BIT is not a sysconf value, it is either 32 or 64. Using it as
7*4882a593Smuzhiyuna sysconf value will give weird results.
8*4882a593Smuzhiyun
9*4882a593SmuzhiyunOriginally it was sysconf(_SC_LONG_BIT) (before it was "fixed" by the
10*4882a593Smuzhiyungentoo guys). But this is useless: it will always return a value
11*4882a593Smuzhiyunequal to LONG_BIT: it's either compiled 32-bit or 64-bit so a runtime
12*4882a593Smuzhiyunlookup doesn't make sense. For this reason, musl has removed the
13*4882a593Smuzhiyundefinition of _SC_LONG_BIT.
14*4882a593Smuzhiyun
15*4882a593SmuzhiyunSigned-off-by: Sergio Prado <sergio.prado@e-labworks.com>
16*4882a593SmuzhiyunSigned-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
17*4882a593Smuzhiyun---
18*4882a593Smuzhiyun src/core/abi.cc | 4 +---
19*4882a593Smuzhiyun 1 file changed, 1 insertion(+), 3 deletions(-)
20*4882a593Smuzhiyun
21*4882a593Smuzhiyundiff --git a/src/core/abi.cc b/src/core/abi.cc
22*4882a593Smuzhiyunindex adff7b55acfa..76c664c03ce7 100644
23*4882a593Smuzhiyun--- a/src/core/abi.cc
24*4882a593Smuzhiyun+++ b/src/core/abi.cc
25*4882a593Smuzhiyun@@ -20,9 +20,7 @@ __ID("@(#) $Id: mem.cc 1352 2006-05-27 23:54:13Z ezix $");
26*4882a593Smuzhiyun bool scan_abi(hwNode & system)
27*4882a593Smuzhiyun {
28*4882a593Smuzhiyun   // are we compiled as 32- or 64-bit process ?
29*4882a593Smuzhiyun-  long sc = sysconf(LONG_BIT);
30*4882a593Smuzhiyun-  if(sc==-1) sc = sysconf(_SC_LONG_BIT);
31*4882a593Smuzhiyun-  if(sc!=-1) system.setWidth(sc);
32*4882a593Smuzhiyun+  system.setWidth(LONG_BIT);
33*4882a593Smuzhiyun
34*4882a593Smuzhiyun   pushd(PROC_SYS);
35*4882a593Smuzhiyun
36*4882a593Smuzhiyun--
37*4882a593Smuzhiyun2.17.1
38*4882a593Smuzhiyun
39