Skip to content

Commit 96c6117

Browse files
committed
cmake: only use getloadavg where it exists
1 parent 3809ab0 commit 96c6117

File tree

3 files changed

+8
-2
lines changed

3 files changed

+8
-2
lines changed

src/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ check_function_exists(qsort_s GIT_QSORT_S)
7171
# random / entropy data
7272

7373
check_function_exists(getentropy GIT_RAND_GETENTROPY)
74+
check_function_exists(getloadavg GIT_RAND_GETLOADAVG)
7475

7576
# determine architecture of the machine
7677

src/features.h.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,5 +57,6 @@
5757
#cmakedefine GIT_SHA256_MBEDTLS 1
5858

5959
#cmakedefine GIT_RAND_GETENTROPY 1
60+
#cmakedefine GIT_RAND_GETLOADAVG 1
6061

6162
#endif

src/util/rand.c

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -106,8 +106,6 @@ GIT_INLINE(int) getseed(uint64_t *seed)
106106
return -1;
107107
}
108108

109-
getloadavg(loadavg, 3);
110-
111109
*seed = 0;
112110
*seed |= ((uint64_t)tv.tv_usec << 40);
113111
*seed |= ((uint64_t)tv.tv_sec);
@@ -119,9 +117,15 @@ GIT_INLINE(int) getseed(uint64_t *seed)
119117
*seed ^= ((uint64_t)getuid() << 8);
120118
*seed ^= ((uint64_t)getgid());
121119

120+
# if defined(GIT_RAND_GETLOADAVG)
121+
getloadavg(loadavg, 3);
122+
122123
convert.f = loadavg[0]; *seed ^= (convert.d >> 36);
123124
convert.f = loadavg[1]; *seed ^= (convert.d);
124125
convert.f = loadavg[2]; *seed ^= (convert.d >> 16);
126+
# else
127+
GIT_UNUSED(loadavg[0]);
128+
# endif
125129

126130
convert.f = git__timer(); *seed ^= (convert.d);
127131

0 commit comments

Comments
 (0)