* [PATCH] Drop feature defines from C files, in favour of CFLAGS defines.
@ 2015-01-18 1:52 Dimitri John Ledkov
2015-01-21 18:33 ` David Sterba
0 siblings, 1 reply; 2+ messages in thread
From: Dimitri John Ledkov @ 2015-01-18 1:52 UTC (permalink / raw)
To: linux-btrfs
glibc 2.10+ (5+ years old) enables all the desired features:
_XOPEN_SOURCE 700, __XOPEN2K8, POSIX_C_SOURCE, DEFAULT_SOURCE; with a
single _GNU_SOURCE define in the makefile alone. For portability to
other libc implementations (e.g. dietlibc) _XOPEN_SOURCE=700 is also
defined.
This also resolves Debian bug report filed by Michael Tautschnig -
"Inconsistent use of _XOPEN_SOURCE results in conflicting
declarations". Whilst I was not able to reproduce the results, the
reported fact is that _XOPEN_SOURCE set to 500 in one set of files
(e.g. cmds-filesystem.c) generates/defines different struct stat from
other files (cmds-replace.c).
This patch thus cleans up all feature defines, and sets them at a
consistent level.
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=747969
Signed-off-by: Dimitri John Ledkov <dimitri.j.ledkov@intel.com>
---
Makefile | 2 +-
btrfs-calc-size.c | 2 --
btrfs-convert.c | 3 ---
btrfs-corrupt-block.c | 2 --
btrfs-find-root.c | 2 --
btrfs-fragments.c | 1 -
btrfs-image.c | 2 --
btrfs-list.c | 1 -
btrfs-map-logical.c | 2 --
btrfs-select-super.c | 2 --
btrfs-show-super.c | 2 --
btrfs-zero-log.c | 2 --
btrfs.c | 1 -
btrfstune.c | 2 --
chunk-recover.c | 2 --
cmds-check.c | 2 --
cmds-filesystem.c | 1 -
cmds-receive.c | 5 -----
cmds-restore.c | 2 --
cmds-send.c | 1 -
disk-io.c | 3 ---
extent_io.c | 2 --
mkfs.c | 3 ---
send-test.c | 2 --
super-recover.c | 3 ---
utils-lib.c | 2 --
utils.c | 4 ----
volumes.c | 2 --
28 files changed, 1 insertion(+), 59 deletions(-)
diff --git a/Makefile b/Makefile
index 8b843bb..4d7cb4a 100644
--- a/Makefile
+++ b/Makefile
@@ -4,7 +4,7 @@ export
CC = gcc
LN = ln
AR = ar
-AM_CFLAGS = -Wall -D_FILE_OFFSET_BITS=64 -DBTRFS_FLAT_INCLUDES -fno-strict-aliasing -fPIC
+AM_CFLAGS = -Wall -D_FILE_OFFSET_BITS=64 -DBTRFS_FLAT_INCLUDES -D_XOPEN_SOURCE=700 -D_GNU_SOURCE -fno-strict-aliasing -fPIC
CFLAGS = -g -O1 -fno-strict-aliasing
LDFLAGS = -rdynamic
objects = ctree.o disk-io.o radix-tree.o extent-tree.o print-tree.o \
diff --git a/btrfs-calc-size.c b/btrfs-calc-size.c
index 501111c..17d048c 100644
--- a/btrfs-calc-size.c
+++ b/btrfs-calc-size.c
@@ -16,8 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 500
-#define _GNU_SOURCE 1
#include <ctype.h>
#include <stdio.h>
#include <stdlib.h>
diff --git a/btrfs-convert.c b/btrfs-convert.c
index bbd19bb..da10ad6 100644
--- a/btrfs-convert.c
+++ b/btrfs-convert.c
@@ -16,9 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 600
-#define _GNU_SOURCE 1
-
#include "kerncompat.h"
#include <sys/ioctl.h>
diff --git a/btrfs-corrupt-block.c b/btrfs-corrupt-block.c
index b477e87..6b9dac5 100644
--- a/btrfs-corrupt-block.c
+++ b/btrfs-corrupt-block.c
@@ -16,8 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 500
-#define _GNU_SOURCE 1
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
diff --git a/btrfs-find-root.c b/btrfs-find-root.c
index 6fa61cc..3517107 100644
--- a/btrfs-find-root.c
+++ b/btrfs-find-root.c
@@ -16,8 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 500
-#define _GNU_SOURCE 1
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
diff --git a/btrfs-fragments.c b/btrfs-fragments.c
index 360f10f..d742f60 100644
--- a/btrfs-fragments.c
+++ b/btrfs-fragments.c
@@ -14,7 +14,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _GNU_SOURCE
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
diff --git a/btrfs-image.c b/btrfs-image.c
index cb17f16..0485c8f 100644
--- a/btrfs-image.c
+++ b/btrfs-image.c
@@ -16,8 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 500
-#define _GNU_SOURCE 1
#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>
diff --git a/btrfs-list.c b/btrfs-list.c
index 50edcf4..3e29cf8 100644
--- a/btrfs-list.c
+++ b/btrfs-list.c
@@ -16,7 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _GNU_SOURCE
#include <sys/ioctl.h>
#include <sys/mount.h>
#include "ioctl.h"
diff --git a/btrfs-map-logical.c b/btrfs-map-logical.c
index 47d1104..c235d44 100644
--- a/btrfs-map-logical.c
+++ b/btrfs-map-logical.c
@@ -16,8 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 500
-#define _GNU_SOURCE 1
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
diff --git a/btrfs-select-super.c b/btrfs-select-super.c
index 6231d42..063ffa3 100644
--- a/btrfs-select-super.c
+++ b/btrfs-select-super.c
@@ -16,8 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 500
-#define _GNU_SOURCE 1
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
diff --git a/btrfs-show-super.c b/btrfs-show-super.c
index 2b48f44..4afa852 100644
--- a/btrfs-show-super.c
+++ b/btrfs-show-super.c
@@ -16,8 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 500
-#define _GNU_SOURCE 1
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
diff --git a/btrfs-zero-log.c b/btrfs-zero-log.c
index 4154175..31e7481 100644
--- a/btrfs-zero-log.c
+++ b/btrfs-zero-log.c
@@ -16,8 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 500
-#define _GNU_SOURCE 1
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
diff --git a/btrfs.c b/btrfs.c
index e83349c..2451885 100644
--- a/btrfs.c
+++ b/btrfs.c
@@ -14,7 +14,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _GNU_SOURCE
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
diff --git a/btrfstune.c b/btrfstune.c
index 050418a..e175137 100644
--- a/btrfstune.c
+++ b/btrfstune.c
@@ -16,8 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 500
-#define _GNU_SOURCE 1
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
diff --git a/chunk-recover.c b/chunk-recover.c
index 381b596..89219d2 100644
--- a/chunk-recover.c
+++ b/chunk-recover.c
@@ -15,8 +15,6 @@
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 500
-#define _GNU_SOURCE
#include <stdio.h>
#include <stdio_ext.h>
diff --git a/cmds-check.c b/cmds-check.c
index f06e029..6741003 100644
--- a/cmds-check.c
+++ b/cmds-check.c
@@ -16,8 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 500
-#define _GNU_SOURCE 1
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
diff --git a/cmds-filesystem.c b/cmds-filesystem.c
index a3cf114..da12ede 100644
--- a/cmds-filesystem.c
+++ b/cmds-filesystem.c
@@ -14,7 +14,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 500
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
diff --git a/cmds-receive.c b/cmds-receive.c
index f269ade..983d179 100644
--- a/cmds-receive.c
+++ b/cmds-receive.c
@@ -16,11 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _GNU_SOURCE
-#define _POSIX_C_SOURCE 200809
-#define _XOPEN_SOURCE 700
-#define _DEFAULT_SOURCE
-
#include "kerncompat.h"
#include <unistd.h>
diff --git a/cmds-restore.c b/cmds-restore.c
index 859deaf..0bcba92 100644
--- a/cmds-restore.c
+++ b/cmds-restore.c
@@ -16,8 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 500
-#define _GNU_SOURCE 1
#include "kerncompat.h"
diff --git a/cmds-send.c b/cmds-send.c
index 9b32c1f..e59ba50 100644
--- a/cmds-send.c
+++ b/cmds-send.c
@@ -16,7 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _GNU_SOURCE
#include "kerncompat.h"
diff --git a/disk-io.c b/disk-io.c
index b853f66..7f03790 100644
--- a/disk-io.c
+++ b/disk-io.c
@@ -16,9 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 600
-#define __USE_XOPEN2K
-#define _GNU_SOURCE 1
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
diff --git a/extent_io.c b/extent_io.c
index 9c982f9..cd0efdd 100644
--- a/extent_io.c
+++ b/extent_io.c
@@ -16,8 +16,6 @@
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 600
-#define __USE_XOPEN2K
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
diff --git a/mkfs.c b/mkfs.c
index 98a1edd..9e63b2e 100644
--- a/mkfs.c
+++ b/mkfs.c
@@ -16,9 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 500
-#define _GNU_SOURCE
-
#include "kerncompat.h"
#include <sys/ioctl.h>
diff --git a/send-test.c b/send-test.c
index 0e804a2..af8229e 100644
--- a/send-test.c
+++ b/send-test.c
@@ -21,8 +21,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _GNU_SOURCE
-
#include <unistd.h>
#include <stdint.h>
#include <dirent.h>
diff --git a/super-recover.c b/super-recover.c
index adb2c44..197fc4b 100644
--- a/super-recover.c
+++ b/super-recover.c
@@ -16,9 +16,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 500
-#define _GNU_SOURCE 1
-
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
diff --git a/utils-lib.c b/utils-lib.c
index 9d53c6e..79ef35e 100644
--- a/utils-lib.c
+++ b/utils-lib.c
@@ -1,5 +1,3 @@
-#define _GNU_SOURCE
-
#include "kerncompat.h"
#include <unistd.h>
#include <stdlib.h>
diff --git a/utils.c b/utils.c
index 9b08144..a818950 100644
--- a/utils.c
+++ b/utils.c
@@ -17,10 +17,6 @@
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 700
-#define __USE_XOPEN2K8
-#define __XOPEN2K8 /* due to an error in dirent.h, to get dirfd() */
-#define _GNU_SOURCE /* O_NOATIME */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
diff --git a/volumes.c b/volumes.c
index 5ba5db5..16dbf64 100644
--- a/volumes.c
+++ b/volumes.c
@@ -15,8 +15,6 @@
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 021110-1307, USA.
*/
-#define _XOPEN_SOURCE 600
-#define __USE_XOPEN2K
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
--
2.1.0
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] Drop feature defines from C files, in favour of CFLAGS defines.
2015-01-18 1:52 [PATCH] Drop feature defines from C files, in favour of CFLAGS defines Dimitri John Ledkov
@ 2015-01-21 18:33 ` David Sterba
0 siblings, 0 replies; 2+ messages in thread
From: David Sterba @ 2015-01-21 18:33 UTC (permalink / raw)
To: Dimitri John Ledkov; +Cc: linux-btrfs
On Sun, Jan 18, 2015 at 01:52:58AM +0000, Dimitri John Ledkov wrote:
> glibc 2.10+ (5+ years old) enables all the desired features:
> _XOPEN_SOURCE 700, __XOPEN2K8, POSIX_C_SOURCE, DEFAULT_SOURCE; with a
> single _GNU_SOURCE define in the makefile alone. For portability to
> other libc implementations (e.g. dietlibc) _XOPEN_SOURCE=700 is also
> defined.
Sounds reasonable to me.
> This also resolves Debian bug report filed by Michael Tautschnig -
> "Inconsistent use of _XOPEN_SOURCE results in conflicting
> declarations". Whilst I was not able to reproduce the results, the
> reported fact is that _XOPEN_SOURCE set to 500 in one set of files
> (e.g. cmds-filesystem.c) generates/defines different struct stat from
> other files (cmds-replace.c).
>
> This patch thus cleans up all feature defines, and sets them at a
> consistent level.
Thanks, applied.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2015-01-21 18:33 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-18 1:52 [PATCH] Drop feature defines from C files, in favour of CFLAGS defines Dimitri John Ledkov
2015-01-21 18:33 ` David Sterba
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.