blob: 9d4b8929e898c09f4bf0e26aa7389a1f9e5cbe9f [file] [log] [blame]
Patrick Williamsd8c66bc2016-06-20 12:57:21 -05001Use extern "C" instead of __BEGIN_DECL/__END_DECL macros
2these macros are defined in sys/cdefs.h for glibc and this header is not available on all libc
3
4anyway they defined like below
5
6#ifdef __cplusplus
7# define __BEGIN_DECLS extern "C" {
8# define __END_DECLS }
9#else
10# define __BEGIN_DECLS /* empty */
11# define __END_DECLS /* empty */
12#endif
13
14__THROW macro is also not available on musl, defined thusly
15
16Upstream-Status: Pending
17
18Signed-off-by: Khem Raj <raj.khem@gmail.com>
19
20Index: attr-2.4.47/include/xattr.h
21===================================================================
22--- attr-2.4.47.orig/include/xattr.h 2014-04-02 00:01:30.252091280 -0700
23+++ attr-2.4.47/include/xattr.h 2014-04-02 00:12:57.985428099 -0700
24@@ -30,8 +30,20 @@
25 #define XATTR_CREATE 0x1 /* set value, fail if attr already exists */
26 #define XATTR_REPLACE 0x2 /* set value, fail if attr does not exist */
27
28-
29-__BEGIN_DECLS
30+#ifndef __THROW
31+# ifndef __GNUC_PREREQ
32+# define __GNUC_PREREQ(maj, min) (0)
33+# endif
34+# if defined __cplusplus && __GNUC_PREREQ (2,8)
35+# define __THROW throw ()
36+# else
37+# define __THROW
38+# endif
39+#endif
40+
41+#ifdef __cplusplus
42+extern "C" {
43+#endif
44
45 extern int setxattr (const char *__path, const char *__name,
46 const void *__value, size_t __size, int __flags) __THROW;
47@@ -58,6 +70,8 @@
48 extern int lremovexattr (const char *__path, const char *__name) __THROW;
49 extern int fremovexattr (int __filedes, const char *__name) __THROW;
50
51-__END_DECLS
52+#ifdef __cplusplus
53+}
54+#endif
55
56 #endif /* __XATTR_H__ */