Commit 51eb2f90a1469542799823e0f3249520bf8f9cf3

Shawn O. Pearce 2009-01-02T21:48:40

Change the use of asm/atomic.h to require -DGIT_HAS_ASM_ATOMIC These headers aren't always available; they typically come from the Linux kernel, but aren't supposed to be exported into the userspace /usr/include. Modern kernels won't install these and some distros rm -rf the directory post kernel header install. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>

1
2
3
4
5
6
7
8
9
10
11
12
13
diff --git a/src/thread-utils.h b/src/thread-utils.h
index f8ed08a..9922841 100644
--- a/src/thread-utils.h
+++ b/src/thread-utils.h
@@ -9,7 +9,7 @@ typedef pthread_mutex_t git_lck;
 # define gitlck_unlock(a) pthread_mutex_unlock(a)
 # define gitlck_free(a)   pthread_mutex_destroy(a)
 
-# if defined(__GLIBC__)
+# if defined(GIT_HAS_ASM_ATOMIC)
 #  include <asm/atomic.h>
 typedef atomic_t git_refcnt;
 #  define gitrc_init(a)   atomic_set(a, 0)