Make license compatibility checks consistent

Apply the license specified in the META file to ensure the
compatibility checks are all performed consistently.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Issue #2757
This commit is contained in:
Brian Behlendorf 2014-10-03 10:58:47 -07:00
parent e82cdc3acc
commit e33045ee98
6 changed files with 19 additions and 13 deletions

2
META
View File

@ -5,4 +5,4 @@ Version: 0.6.3
Release: 1 Release: 1
Release-Tags: relext Release-Tags: relext
License: CDDL License: CDDL
Author: Sun Microsystems/Oracle, Lawrence Livermore National Laboratory Author: OpenZFS on Linux

View File

@ -1,6 +1,6 @@
dnl # dnl #
dnl # Check if posix_acl_release can be used from a CDDL module, dnl # Check if posix_acl_release can be used from a ZFS_META_LICENSED
dnl # The is_owner_or_cap macro was replaced by dnl # module. The is_owner_or_cap macro was replaced by
dnl # inode_owner_or_capable dnl # inode_owner_or_capable
dnl # dnl #
AC_DEFUN([ZFS_AC_KERNEL_POSIX_ACL_RELEASE], [ AC_DEFUN([ZFS_AC_KERNEL_POSIX_ACL_RELEASE], [
@ -26,7 +26,7 @@ AC_DEFUN([ZFS_AC_KERNEL_POSIX_ACL_RELEASE], [
#include <linux/fs.h> #include <linux/fs.h>
#include <linux/posix_acl.h> #include <linux/posix_acl.h>
MODULE_LICENSE("CDDL"); MODULE_LICENSE("$ZFS_META_LICENSE");
],[ ],[
struct posix_acl* tmp = posix_acl_alloc(1, 0); struct posix_acl* tmp = posix_acl_alloc(1, 0);
posix_acl_release(tmp); posix_acl_release(tmp);

View File

@ -25,7 +25,7 @@ AC_DEFUN([ZFS_AC_KERNEL_BLK_END_REQUEST], [
#include <linux/module.h> #include <linux/module.h>
#include <linux/blkdev.h> #include <linux/blkdev.h>
MODULE_LICENSE("CDDL"); MODULE_LICENSE("$ZFS_META_LICENSE");
],[ ],[
struct request *req = NULL; struct request *req = NULL;
(void) blk_end_request(req, 0, 0); (void) blk_end_request(req, 0, 0);

View File

@ -31,7 +31,7 @@ AC_DEFUN([ZFS_AC_KERNEL_BLK_QUEUE_FLUSH], [
#include <linux/module.h> #include <linux/module.h>
#include <linux/blkdev.h> #include <linux/blkdev.h>
MODULE_LICENSE("CDDL"); MODULE_LICENSE("$ZFS_META_LICENSE");
],[ ],[
struct request_queue *q = NULL; struct request_queue *q = NULL;
(void) blk_queue_flush(q, REQ_FLUSH); (void) blk_queue_flush(q, REQ_FLUSH);

View File

@ -26,7 +26,7 @@ AC_DEFUN([ZFS_AC_KERNEL_BLK_RQ_BYTES], [
#include <linux/module.h> #include <linux/module.h>
#include <linux/blkdev.h> #include <linux/blkdev.h>
MODULE_LICENSE("CDDL"); MODULE_LICENSE("$ZFS_META_LICENSE");
],[ ],[
struct request *req = NULL; struct request *req = NULL;
(void) blk_rq_bytes(req); (void) blk_rq_bytes(req);

View File

@ -420,8 +420,8 @@ AC_DEFUN([ZFS_AC_SPL], [
dnl # dnl #
dnl # Basic toolchain sanity check. dnl # Basic toolchain sanity check.
dnl # dnl #
AC_DEFUN([ZFS_AC_TEST_MODULE], AC_DEFUN([ZFS_AC_TEST_MODULE], [
[AC_MSG_CHECKING([whether modules can be built]) AC_MSG_CHECKING([whether modules can be built])
ZFS_LINUX_TRY_COMPILE([],[],[ ZFS_LINUX_TRY_COMPILE([],[],[
AC_MSG_RESULT([yes]) AC_MSG_RESULT([yes])
],[ ],[
@ -442,10 +442,16 @@ dnl # detected at configure time and cause a build failure. Otherwise
dnl # modules may be successfully built that behave incorrectly. dnl # modules may be successfully built that behave incorrectly.
dnl # dnl #
AC_DEFUN([ZFS_AC_KERNEL_CONFIG], [ AC_DEFUN([ZFS_AC_KERNEL_CONFIG], [
AC_RUN_IFELSE([
AS_IF([test "$ZFS_META_LICENSE" = GPL], [ AC_LANG_PROGRAM([
AC_DEFINE([HAVE_GPL_ONLY_SYMBOLS], [1], #include "$LINUX/include/linux/license.h"
[Define to 1 if licensed under the GPL]) ], [
return !license_is_gpl_compatible("$ZFS_META_LICENSE");
])
], [
AC_DEFINE([ZFS_IS_GPL_COMPATIBLE], [1],
[Define to 1 if GPL-only symbols can be used])
], [
]) ])
ZFS_AC_KERNEL_CONFIG_DEBUG_LOCK_ALLOC ZFS_AC_KERNEL_CONFIG_DEBUG_LOCK_ALLOC