summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 1063a89)
raw | patch | inline | side by side (parent: 1063a89)
author | Jan Andres <jandres@gmx.net> | |
Sat, 31 Jan 2015 08:43:30 +0000 (09:43 +0100) | ||
committer | Jan Andres <jandres@gmx.net> | |
Sat, 31 Jan 2015 09:08:00 +0000 (10:08 +0100) |
Work around a #error in <sys/procfs.h> that occurs when building a
32-bit binary with _FILE_OFFSET_BITS=64. This uses a hack similar
to the one in swap.c.
32-bit binary with _FILE_OFFSET_BITS=64. This uses a hack similar
to the one in swap.c.
src/processes.c | patch | blob | history |
diff --git a/src/processes.c b/src/processes.c
index fb88a3153e1e150618805141404da25100602498..f5f293a409dc0ba1ae47436d602caeb239a6e65e 100644 (file)
--- a/src/processes.c
+++ b/src/processes.c
/* #endif HAVE_PROCINFO_H */
#elif KERNEL_SOLARIS
+/* Hack: Avoid #error when building a 32-bit binary with
+ * _FILE_OFFSET_BITS=64. There is a reason for this #error, as one
+ * of the structures in <sys/procfs.h> uses an off_t, but that
+ * isn't relevant to our usage of procfs. */
+#if !defined(_LP64) && _FILE_OFFSET_BITS == 64
+# define SAVE_FOB_64
+# undef _FILE_OFFSET_BITS
+#endif
+
# include <procfs.h>
+
+#ifdef SAVE_FOB_64
+# define _FILE_OFFSET_BITS 64
+# undef SAVE_FOB_64
+#endif
+
# include <dirent.h>
/* #endif KERNEL_SOLARIS */