]> granicus.if.org Git - procps-ng/commitdiff
library: replace the troublesome '__BEGIN_DECLS' macro
authorJim Warner <james.warner@comcast.net>
Fri, 6 Apr 2018 05:00:00 +0000 (00:00 -0500)
committerCraig Small <csmall@enc.com.au>
Sat, 5 May 2018 21:19:38 +0000 (07:19 +1000)
When 'newlib' was introduced, in the commit referenced
below, the use of that glibc '__BEGIN_DECLS' macro was
standardized. However, as issue #88 revealed, this may
result in a fatal build error with other environments.

So, this patch just trades that macro for the standard
'#ifdef __cplusplus' conventions (thus avoiding use of
all those '#include <features.h>' directives as well).

Reference(s):
. newlib introduced
commit a410e236abb47c7c43194e61d0566686f81513af
. procps-ng-3.3.13 issue
https://gitlab.com/procps-ng/procps/issues/88
. some additional discussion
https://www.freelists.org/post/procps/PATCH-Replace-glibcspecific-macros-in-procnumah,1
. musl wiki (see: sys/cdefs.h error messages)
https://wiki.musl-libc.org/faq.html

Signed-off-by: Jim Warner <james.warner@comcast.net>
proc/diskstats.h
proc/meminfo.h
proc/namespace.h
proc/pids.h
proc/slabinfo.h
proc/stat.h
proc/sysinfo.h
proc/uptime.h
proc/version.h
proc/vmstat.h

index 83b8c479dc4e48c78871b1736b2786385d935fd4..dd718910f2ccc9c536bd0ad0984e121f911bc6ce 100644 (file)
@@ -23,9 +23,9 @@
 #ifndef PROCPS_DISKSTATS_H
 #define PROCPS_DISKSTATS_H
 
-#include <sys/cdefs.h>
-
-__BEGIN_DECLS
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 enum diskstats_item {
     DISKSTATS_noop,                 //        ( never altered )
@@ -126,5 +126,7 @@ struct diskstats_stack **procps_diskstats_sort (
     enum diskstats_item sortitem,
     enum diskstats_sort_order order);
 
-__END_DECLS
+#ifdef __cplusplus
+}
+#endif
 #endif
index 1e36384631a5a86e1a41b73aa3e0b8bc45564060..238221c60eb3f59a45790c3cc7c147761d4a50b8 100644 (file)
@@ -19,9 +19,9 @@
 #ifndef PROCPS_MEMINFO_H
 #define PROCPS_MEMINFO_H
 
-#include <sys/cdefs.h>
-
-__BEGIN_DECLS
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 enum meminfo_item {
     MEMINFO_noop,                  //        ( never altered )
@@ -171,5 +171,7 @@ struct meminfo_stack *procps_meminfo_select (
     enum meminfo_item *items,
     int numitems);
 
-__END_DECLS
+#ifdef __cplusplus
+}
+#endif
 #endif
index 2885d8d5c0a6e65839a2fee05182d263fdb50822..f57b060d64afd6a0ee3b2c0d600bf7fa35bb3d1d 100644 (file)
@@ -23,7 +23,9 @@
 #ifndef PROC_NAMESPACE_H
 #define PROC_NAMESPACE_H
 
-__BEGIN_DECLS
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 enum namespace_type {
     PROCPS_NS_IPC,
@@ -44,6 +46,8 @@ const char *procps_ns_get_name(const int id);
 int procps_ns_get_id(const char *name);
 
 int procps_ns_read_pid(const int pid, struct procps_namespaces *nsp);
-__END_DECLS
 
+#ifdef __cplusplus
+}
+#endif
 #endif
index f6c158103c5fe49ed4306e00b82f4c5082272c62..c183c88af0df4835518622f06b4e39dfa293b899 100644 (file)
@@ -23,9 +23,9 @@
 #ifndef PROCPS_PIDS_H
 #define PROCPS_PIDS_H
 
-#include <sys/cdefs.h>
-
-__BEGIN_DECLS
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 enum pids_item {
     PIDS_noop,              //        ( never altered )
@@ -233,5 +233,7 @@ struct pids_stack **procps_pids_sort (
     enum pids_item sortitem,
     enum pids_sort_order order);
 
-__END_DECLS
+#ifdef __cplusplus
+}
+#endif
 #endif
index e0c549e990979d68913dbf353c383a7655820dd9..7454515c0a8dea6c3de1b6d2a932744a0d3b743f 100644 (file)
@@ -23,9 +23,9 @@
 #ifndef PROCPS_SLABINFO_H
 #define PROCPS_SLABINFO_H
 
-#include <sys/cdefs.h>
-
-__BEGIN_DECLS
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 enum slabinfo_item {
     SLABINFO_noop,            //       ( never altered )
@@ -130,5 +130,7 @@ struct slabinfo_stack **procps_slabinfo_sort (
     enum slabinfo_item sortitem,
     enum slabinfo_sort_order order);
 
-__END_DECLS
+#ifdef __cplusplus
+}
+#endif
 #endif
index 6151e282bc22ef6c4041a742d286445ed2398af7..5682773c6e4cebbbe414b1d3cd27511f624277d3 100644 (file)
@@ -19,9 +19,9 @@
 #ifndef PROCPS_STAT_H
 #define PROCPS_STAT_H
 
-#include <sys/cdefs.h>
-
-__BEGIN_DECLS
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 enum stat_item {
     STAT_noop,                    //        ( never altered )
@@ -154,5 +154,7 @@ struct stat_stack **procps_stat_sort (
     enum stat_item sortitem,
     enum stat_sort_order order);
 
-__END_DECLS
+#ifdef __cplusplus
+}
+#endif
 #endif
index 167f892bd31e5647c9f0f222b050b1965babb1c3..9bd8bc55df71c74c30ddaef25b063c89fe63c809 100644 (file)
@@ -3,13 +3,16 @@
 #include <sys/types.h>
 #include <dirent.h>
 
-#include <features.h>
-__BEGIN_DECLS
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 long procps_cpu_count(void);
 long procps_hertz_get(void);
 int procps_loadavg(double *av1, double *av5, double *av15);
 unsigned int procps_pid_length(void);
 
-__END_DECLS
-#endif /* SYSINFO_H */
+#ifdef __cplusplus
+}
+#endif
+#endif
index 8d00854d8b02e70920c6ad9392245b599466ca65..dc14be8c9209c30a8034c379ab26d5dbca863683 100644 (file)
 #ifndef PROC_UPTIME_H
 #define PROC_UPTIME_H
 
-#include <features.h>
-__BEGIN_DECLS
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 int procps_uptime(double *uptime_secs, double *idle_secs);
 char *procps_uptime_sprint(void);
 char *procps_uptime_sprint_short(void);
 
-__END_DECLS
-
+#ifdef __cplusplus
+}
+#endif
 #endif
index 3cde808cf0dbfcb910ac739672467c73b885df4c..dd9e7d778aa804b3b172ea3b3025f2cf02a9b283 100644 (file)
 #ifndef PROC_VERSION_H
 #define PROC_VERSION_H
 
-#include <features.h>
-__BEGIN_DECLS
-
-int procps_linux_version(void);
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 /* Convenience macros for composing/decomposing version codes */
 #define LINUX_VERSION(x,y,z)   (0x10000*((x)&0x7fff) + 0x100*((y)&0xff) + ((z)&0xff))
@@ -34,6 +33,9 @@ int procps_linux_version(void);
 #define LINUX_VERSION_MINOR(x) (((x)>> 8) & 0xFF)
 #define LINUX_VERSION_PATCH(x) ( (x)      & 0xFF)
 
-__END_DECLS
+int procps_linux_version(void);
 
-#endif /* PROC_VERSION_H */
+#ifdef __cplusplus
+}
+#endif
+#endif
index 98e0cc6966fd64067eee0096ce26bbfad894a65a..4db14b096acdd2e63436ffe9298aff169dbeaedf 100644 (file)
@@ -24,9 +24,9 @@
 #ifndef PROCPS_VMSTAT_H
 #define PROCPS_VMSTAT_H
 
-#include <sys/cdefs.h>
-
-__BEGIN_DECLS
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 enum vmstat_item {
     VMSTAT_noop,                                 //       ( never altered )
@@ -308,5 +308,7 @@ struct vmstat_stack *procps_vmstat_select (
     enum vmstat_item *items,
     int numitems);
 
-__END_DECLS
+#ifdef __cplusplus
+}
+#endif
 #endif