aboutsummaryrefslogtreecommitdiff
path: root/src/projects.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/projects.h')
-rw-r--r--src/projects.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/projects.h b/src/projects.h
index 6cf90f4e..eb998d3a 100644
--- a/src/projects.h
+++ b/src/projects.h
@@ -454,8 +454,12 @@ struct PJ_LIST *pj_get_list_ref( void );
struct PJ_PRIME_MERIDIANS *pj_get_prime_meridians_ref( void );
#ifndef DISABLE_CVSID
-# define PJ_CVSID(string) static char pj_cvsid[] = string; \
-static char *cvsid_aw() { return( cvsid_aw() ? ((char *) NULL) : pj_cvsid ); }
+# if defined(__GNUC__) && __GNUC__ >= 4
+# define PJ_CVSID(string) static char pj_cvsid[] __attribute__((used)) = string;
+# else
+# define PJ_CVSID(string) static char pj_cvsid[] = string; \
+static char *cvsid_aw() { return( cvsid_aw() ? ((char *) NULL) : cpl_cvsid ); }
+# endif
#else
# define PJ_CVSID(string)
#endif