Fix configure tests to play nice with GCC 4.6
authorPrakash Surya <surya1@llnl.gov>
Tue, 29 Nov 2011 22:31:20 +0000 (14:31 -0800)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Wed, 30 Nov 2011 00:14:25 +0000 (16:14 -0800)
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 <surya1@llnl.gov>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #459

12 files changed:
config/kernel-bdev-block-device-operations.m4
config/kernel-bdev-logical-size.m4
config/kernel-blk-end-request.m4
config/kernel-blk-fetch-request.m4
config/kernel-blk-requeue-request.m4
config/kernel-blk-rq-bytes.m4
config/kernel-blk-rq-pos.m4
config/kernel-blk-rq-sectors.m4
config/kernel-get-disk-ro.m4
config/kernel-rq-for-each_segment.m4
config/kernel-rq-is_sync.m4
configure

index daf14f0..2805237 100644 (file)
@@ -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 <linux/blkdev.h>
        ],[
@@ -30,4 +32,5 @@ AC_DEFUN([ZFS_AC_KERNEL_BDEV_BLOCK_DEVICE_OPERATIONS], [
        ],[
                AC_MSG_RESULT(struct inode)
        ])
+       EXTRA_KCFLAGS="$tmp_flags"
 ])
index 1e19966..d066c86 100644 (file)
@@ -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 <linux/blkdev.h>
        ],[
@@ -19,4 +21,5 @@ AC_DEFUN([ZFS_AC_KERNEL_BDEV_LOGICAL_BLOCK_SIZE], [
        ],[
                AC_MSG_RESULT(no)
        ])
+       EXTRA_KCFLAGS="$tmp_flags"
 ])
index 20ad1a9..0228fb0 100644 (file)
@@ -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 <linux/blkdev.h>
        ],[
@@ -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"
 ])
index 34a5d2f..c277f52 100644 (file)
@@ -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 <linux/blkdev.h>
        ],[
@@ -19,4 +21,5 @@ AC_DEFUN([ZFS_AC_KERNEL_BLK_FETCH_REQUEST], [
        ],[
                AC_MSG_RESULT(no)
        ])
+       EXTRA_KCFLAGS="$tmp_flags"
 ])
index f676f85..d8e7439 100644 (file)
@@ -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 <linux/blkdev.h>
        ],[
@@ -19,4 +21,5 @@ AC_DEFUN([ZFS_AC_KERNEL_BLK_REQUEUE_REQUEST], [
        ],[
                AC_MSG_RESULT(no)
        ])
+       EXTRA_KCFLAGS="$tmp_flags"
 ])
index da83405..6430dfe 100644 (file)
@@ -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 <linux/blkdev.h>
        ],[
@@ -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"
 ])
index aaa4646..fd8a926 100644 (file)
@@ -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 <linux/blkdev.h>
        ],[
@@ -15,4 +17,5 @@ AC_DEFUN([ZFS_AC_KERNEL_BLK_RQ_POS], [
        ],[
                AC_MSG_RESULT(no)
        ])
+       EXTRA_KCFLAGS="$tmp_flags"
 ])
index db8c439..fbcd113 100644 (file)
@@ -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 <linux/blkdev.h>
        ],[
@@ -15,4 +17,5 @@ AC_DEFUN([ZFS_AC_KERNEL_BLK_RQ_SECTORS], [
        ],[
                AC_MSG_RESULT(no)
        ])
+       EXTRA_KCFLAGS="$tmp_flags"
 ])
index 365afdb..aac69b7 100644 (file)
@@ -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 <linux/blkdev.h>
        ],[
@@ -15,4 +17,5 @@ AC_DEFUN([ZFS_AC_KERNEL_GET_DISK_RO], [
        ],[
                AC_MSG_RESULT(no)
        ])
+       EXTRA_KCFLAGS="$tmp_flags"
 ])
index 15f030f..1821478 100644 (file)
@@ -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 <linux/blkdev.h>
        ],[
@@ -17,4 +19,5 @@ AC_DEFUN([ZFS_AC_KERNEL_RQ_FOR_EACH_SEGMENT], [
        ],[
                AC_MSG_RESULT(no)
        ])
+       EXTRA_KCFLAGS="$tmp_flags"
 ])
index 40d0de8..507bf68 100644 (file)
@@ -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 <linux/blkdev.h>
        ],[
@@ -15,4 +17,5 @@ AC_DEFUN([ZFS_AC_KERNEL_RQ_IS_SYNC], [
        ],[
                AC_MSG_RESULT(no)
        ])
+       EXTRA_KCFLAGS="$tmp_flags"
 ])
index 89596d9..885d5eb 100755 (executable)
--- 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
        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
        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
        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
        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
        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
        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
        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
        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
        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
        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
        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
        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
        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
        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
        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
        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; }