Don't use '__attribute__ visibility' with gcc unless it's at version 4 or better.
diff --git a/include/git2/common.h b/include/git2/common.h
index 58cb1f2..4995473 100644
--- a/include/git2/common.h
+++ b/include/git2/common.h
@@ -40,7 +40,7 @@
#endif
/** Declare a public function exported for application use. */
-#ifdef __GNUC__
+#if __GNUC__ >= 4
# define GIT_EXTERN(type) extern \
__attribute__((visibility("default"))) \
type
@@ -51,7 +51,7 @@
#endif
/** Declare a public TLS symbol exported for application use. */
-#ifdef __GNUC__
+#if __GNUC__ >= 4
# define GIT_EXTERN_TLS(type) extern \
__attribute__((visibility("default"))) \
GIT_TLS \