From b9c59ec83ab50e1cd097f067461e34a5750694c8 Mon Sep 17 00:00:00 2001 From: Prakash Surya Date: Tue, 29 Nov 2011 14:31:20 -0800 Subject: [PATCH] Fix configure tests to play nice with GCC 4.6 As of GCC 4.6, specific kernel 2.6.32 header files do not compile cleanly without warnings. One specific example of this is the arch/x86/include/asm/percpu.h file. Thus, a few of the configure tests were getting hung up on this and the '-Wno-unsued-but-set-variables' compile option had to be introduced. Signed-off-by: Prakash Surya Signed-off-by: Brian Behlendorf Closes #459 --- config/kernel-bdev-block-device-operations.m4 | 3 ++ config/kernel-bdev-logical-size.m4 | 3 ++ config/kernel-blk-end-request.m4 | 3 ++ config/kernel-blk-fetch-request.m4 | 3 ++ config/kernel-blk-requeue-request.m4 | 3 ++ config/kernel-blk-rq-bytes.m4 | 3 ++ config/kernel-blk-rq-pos.m4 | 3 ++ config/kernel-blk-rq-sectors.m4 | 3 ++ config/kernel-get-disk-ro.m4 | 3 ++ config/kernel-rq-for-each_segment.m4 | 3 ++ config/kernel-rq-is_sync.m4 | 3 ++ configure | 66 +++++++++++++++++++++++++++ 12 files changed, 99 insertions(+) diff --git a/config/kernel-bdev-block-device-operations.m4 b/config/kernel-bdev-block-device-operations.m4 index daf14f0..2805237 100644 --- a/config/kernel-bdev-block-device-operations.m4 +++ b/config/kernel-bdev-block-device-operations.m4 @@ -3,6 +3,8 @@ dnl # 2.6.x API change dnl # AC_DEFUN([ZFS_AC_KERNEL_BDEV_BLOCK_DEVICE_OPERATIONS], [ AC_MSG_CHECKING([block device operation prototypes]) + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" ZFS_LINUX_TRY_COMPILE([ #include ],[ @@ -30,4 +32,5 @@ AC_DEFUN([ZFS_AC_KERNEL_BDEV_BLOCK_DEVICE_OPERATIONS], [ ],[ AC_MSG_RESULT(struct inode) ]) + EXTRA_KCFLAGS="$tmp_flags" ]) diff --git a/config/kernel-bdev-logical-size.m4 b/config/kernel-bdev-logical-size.m4 index 1e19966..d066c86 100644 --- a/config/kernel-bdev-logical-size.m4 +++ b/config/kernel-bdev-logical-size.m4 @@ -7,6 +7,8 @@ dnl # it explicit. dnl # AC_DEFUN([ZFS_AC_KERNEL_BDEV_LOGICAL_BLOCK_SIZE], [ AC_MSG_CHECKING([whether bdev_logical_block_size() is available]) + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" ZFS_LINUX_TRY_COMPILE([ #include ],[ @@ -19,4 +21,5 @@ AC_DEFUN([ZFS_AC_KERNEL_BDEV_LOGICAL_BLOCK_SIZE], [ ],[ AC_MSG_RESULT(no) ]) + EXTRA_KCFLAGS="$tmp_flags" ]) diff --git a/config/kernel-blk-end-request.m4 b/config/kernel-blk-end-request.m4 index 20ad1a9..0228fb0 100644 --- a/config/kernel-blk-end-request.m4 +++ b/config/kernel-blk-end-request.m4 @@ -5,6 +5,8 @@ dnl # changed in 2.6.31 so it may be used by non-GPL modules. dnl # AC_DEFUN([ZFS_AC_KERNEL_BLK_END_REQUEST], [ AC_MSG_CHECKING([whether blk_end_request() is available]) + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" ZFS_LINUX_TRY_COMPILE([ #include ],[ @@ -34,4 +36,5 @@ AC_DEFUN([ZFS_AC_KERNEL_BLK_END_REQUEST], [ AC_DEFINE(HAVE_BLK_END_REQUEST_GPL_ONLY, 1, [blk_end_request() is GPL-only]) ]) + EXTRA_KCFLAGS="$tmp_flags" ]) diff --git a/config/kernel-blk-fetch-request.m4 b/config/kernel-blk-fetch-request.m4 index 34a5d2f..c277f52 100644 --- a/config/kernel-blk-fetch-request.m4 +++ b/config/kernel-blk-fetch-request.m4 @@ -7,6 +7,8 @@ dnl # next available request and removed it from the request queue. dnl # AC_DEFUN([ZFS_AC_KERNEL_BLK_FETCH_REQUEST], [ AC_MSG_CHECKING([whether blk_fetch_request() is available]) + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" ZFS_LINUX_TRY_COMPILE([ #include ],[ @@ -19,4 +21,5 @@ AC_DEFUN([ZFS_AC_KERNEL_BLK_FETCH_REQUEST], [ ],[ AC_MSG_RESULT(no) ]) + EXTRA_KCFLAGS="$tmp_flags" ]) diff --git a/config/kernel-blk-requeue-request.m4 b/config/kernel-blk-requeue-request.m4 index f676f85..d8e7439 100644 --- a/config/kernel-blk-requeue-request.m4 +++ b/config/kernel-blk-requeue-request.m4 @@ -6,6 +6,8 @@ dnl # blk_requeue_request() function. dnl # AC_DEFUN([ZFS_AC_KERNEL_BLK_REQUEUE_REQUEST], [ AC_MSG_CHECKING([whether blk_requeue_request() is available]) + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" ZFS_LINUX_TRY_COMPILE([ #include ],[ @@ -19,4 +21,5 @@ AC_DEFUN([ZFS_AC_KERNEL_BLK_REQUEUE_REQUEST], [ ],[ AC_MSG_RESULT(no) ]) + EXTRA_KCFLAGS="$tmp_flags" ]) diff --git a/config/kernel-blk-rq-bytes.m4 b/config/kernel-blk-rq-bytes.m4 index da83405..6430dfe 100644 --- a/config/kernel-blk-rq-bytes.m4 +++ b/config/kernel-blk-rq-bytes.m4 @@ -6,6 +6,8 @@ dnl blk_rq_bytes() helper was changed to a static inline which we can use. dnl # AC_DEFUN([ZFS_AC_KERNEL_BLK_RQ_BYTES], [ AC_MSG_CHECKING([whether blk_rq_bytes() is available]) + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" ZFS_LINUX_TRY_COMPILE([ #include ],[ @@ -35,4 +37,5 @@ AC_DEFUN([ZFS_AC_KERNEL_BLK_RQ_BYTES], [ AC_DEFINE(HAVE_BLK_RQ_BYTES_GPL_ONLY, 1, [blk_rq_bytes() is GPL-only]) ]) + EXTRA_KCFLAGS="$tmp_flags" ]) diff --git a/config/kernel-blk-rq-pos.m4 b/config/kernel-blk-rq-pos.m4 index aaa4646..fd8a926 100644 --- a/config/kernel-blk-rq-pos.m4 +++ b/config/kernel-blk-rq-pos.m4 @@ -3,6 +3,8 @@ dnl # 2.6.31 API change dnl # AC_DEFUN([ZFS_AC_KERNEL_BLK_RQ_POS], [ AC_MSG_CHECKING([whether blk_rq_pos() is available]) + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" ZFS_LINUX_TRY_COMPILE([ #include ],[ @@ -15,4 +17,5 @@ AC_DEFUN([ZFS_AC_KERNEL_BLK_RQ_POS], [ ],[ AC_MSG_RESULT(no) ]) + EXTRA_KCFLAGS="$tmp_flags" ]) diff --git a/config/kernel-blk-rq-sectors.m4 b/config/kernel-blk-rq-sectors.m4 index db8c439..fbcd113 100644 --- a/config/kernel-blk-rq-sectors.m4 +++ b/config/kernel-blk-rq-sectors.m4 @@ -3,6 +3,8 @@ dnl # 2.6.31 API change dnl # AC_DEFUN([ZFS_AC_KERNEL_BLK_RQ_SECTORS], [ AC_MSG_CHECKING([whether blk_rq_sectors() is available]) + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" ZFS_LINUX_TRY_COMPILE([ #include ],[ @@ -15,4 +17,5 @@ AC_DEFUN([ZFS_AC_KERNEL_BLK_RQ_SECTORS], [ ],[ AC_MSG_RESULT(no) ]) + EXTRA_KCFLAGS="$tmp_flags" ]) diff --git a/config/kernel-get-disk-ro.m4 b/config/kernel-get-disk-ro.m4 index 365afdb..aac69b7 100644 --- a/config/kernel-get-disk-ro.m4 +++ b/config/kernel-get-disk-ro.m4 @@ -3,6 +3,8 @@ dnl # 2.6.x API change dnl # AC_DEFUN([ZFS_AC_KERNEL_GET_DISK_RO], [ AC_MSG_CHECKING([whether get_disk_ro() is available]) + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" ZFS_LINUX_TRY_COMPILE([ #include ],[ @@ -15,4 +17,5 @@ AC_DEFUN([ZFS_AC_KERNEL_GET_DISK_RO], [ ],[ AC_MSG_RESULT(no) ]) + EXTRA_KCFLAGS="$tmp_flags" ]) diff --git a/config/kernel-rq-for-each_segment.m4 b/config/kernel-rq-for-each_segment.m4 index 15f030f..1821478 100644 --- a/config/kernel-rq-for-each_segment.m4 +++ b/config/kernel-rq-for-each_segment.m4 @@ -3,6 +3,8 @@ dnl # 2.6.x API change dnl # AC_DEFUN([ZFS_AC_KERNEL_RQ_FOR_EACH_SEGMENT], [ AC_MSG_CHECKING([whether rq_for_each_segment() is available]) + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" ZFS_LINUX_TRY_COMPILE([ #include ],[ @@ -17,4 +19,5 @@ AC_DEFUN([ZFS_AC_KERNEL_RQ_FOR_EACH_SEGMENT], [ ],[ AC_MSG_RESULT(no) ]) + EXTRA_KCFLAGS="$tmp_flags" ]) diff --git a/config/kernel-rq-is_sync.m4 b/config/kernel-rq-is_sync.m4 index 40d0de8..507bf68 100644 --- a/config/kernel-rq-is_sync.m4 +++ b/config/kernel-rq-is_sync.m4 @@ -3,6 +3,8 @@ dnl # 2.6.x API change dnl # AC_DEFUN([ZFS_AC_KERNEL_RQ_IS_SYNC], [ AC_MSG_CHECKING([whether rq_is_sync() is available]) + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" ZFS_LINUX_TRY_COMPILE([ #include ],[ @@ -15,4 +17,5 @@ AC_DEFUN([ZFS_AC_KERNEL_RQ_IS_SYNC], [ ],[ AC_MSG_RESULT(no) ]) + EXTRA_KCFLAGS="$tmp_flags" ]) diff --git a/configure b/configure index 89596d9..885d5eb 100755 --- a/configure +++ b/configure @@ -12486,6 +12486,8 @@ fi { $as_echo "$as_me:$LINENO: checking block device operation prototypes" >&5 $as_echo_n "checking block device operation prototypes... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -12563,6 +12565,7 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether kernel defines fmode_t" >&5 $as_echo_n "checking whether kernel defines fmode_t... " >&6; } @@ -12869,6 +12872,8 @@ fi { $as_echo "$as_me:$LINENO: checking whether bdev_logical_block_size() is available" >&5 $as_echo_n "checking whether bdev_logical_block_size() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -12931,6 +12936,7 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether bio_empty_barrier() is defined" >&5 @@ -13471,6 +13477,8 @@ fi { $as_echo "$as_me:$LINENO: checking whether blk_end_request() is available" >&5 $as_echo_n "checking whether blk_end_request() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -13601,10 +13609,13 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether blk_fetch_request() is available" >&5 $as_echo_n "checking whether blk_fetch_request() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -13667,10 +13678,13 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether blk_requeue_request() is available" >&5 $as_echo_n "checking whether blk_requeue_request() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -13734,10 +13748,13 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether blk_rq_bytes() is available" >&5 $as_echo_n "checking whether blk_rq_bytes() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -13868,10 +13885,13 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether blk_rq_pos() is available" >&5 $as_echo_n "checking whether blk_rq_pos() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -13934,10 +13954,13 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether blk_rq_sectors() is available" >&5 $as_echo_n "checking whether blk_rq_sectors() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -14000,10 +14023,13 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether get_disk_ro() is available" >&5 $as_echo_n "checking whether get_disk_ro() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -14066,10 +14092,13 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether rq_is_sync() is available" >&5 $as_echo_n "checking whether rq_is_sync() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -14132,10 +14161,13 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether rq_for_each_segment() is available" >&5 $as_echo_n "checking whether rq_for_each_segment() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -14200,6 +14232,7 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether super_block uses const struct xattr_hander" >&5 $as_echo_n "checking whether super_block uses const struct xattr_hander... " >&6; } @@ -17223,6 +17256,8 @@ fi { $as_echo "$as_me:$LINENO: checking block device operation prototypes" >&5 $as_echo_n "checking block device operation prototypes... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -17300,6 +17335,7 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether kernel defines fmode_t" >&5 $as_echo_n "checking whether kernel defines fmode_t... " >&6; } @@ -17606,6 +17642,8 @@ fi { $as_echo "$as_me:$LINENO: checking whether bdev_logical_block_size() is available" >&5 $as_echo_n "checking whether bdev_logical_block_size() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -17668,6 +17706,7 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether bio_empty_barrier() is defined" >&5 @@ -18208,6 +18247,8 @@ fi { $as_echo "$as_me:$LINENO: checking whether blk_end_request() is available" >&5 $as_echo_n "checking whether blk_end_request() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -18338,10 +18379,13 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether blk_fetch_request() is available" >&5 $as_echo_n "checking whether blk_fetch_request() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -18404,10 +18448,13 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether blk_requeue_request() is available" >&5 $as_echo_n "checking whether blk_requeue_request() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -18471,10 +18518,13 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether blk_rq_bytes() is available" >&5 $as_echo_n "checking whether blk_rq_bytes() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -18605,10 +18655,13 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether blk_rq_pos() is available" >&5 $as_echo_n "checking whether blk_rq_pos() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -18671,10 +18724,13 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether blk_rq_sectors() is available" >&5 $as_echo_n "checking whether blk_rq_sectors() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -18737,10 +18793,13 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether get_disk_ro() is available" >&5 $as_echo_n "checking whether get_disk_ro() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -18803,10 +18862,13 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether rq_is_sync() is available" >&5 $as_echo_n "checking whether rq_is_sync() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -18869,10 +18931,13 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether rq_for_each_segment() is available" >&5 $as_echo_n "checking whether rq_for_each_segment() is available... " >&6; } + tmp_flags="$EXTRA_KCFLAGS" + EXTRA_KCFLAGS="-Wno-unused-but-set-variable" cat confdefs.h - <<_ACEOF >conftest.c @@ -18937,6 +19002,7 @@ fi rm -Rf build + EXTRA_KCFLAGS="$tmp_flags" { $as_echo "$as_me:$LINENO: checking whether super_block uses const struct xattr_hander" >&5 $as_echo_n "checking whether super_block uses const struct xattr_hander... " >&6; } -- 1.8.3.1