Version: 0.6.3
Release: 1
Release-Tags: relext
+License: GPL
+Author: OpenZFS on Linux
])
AC_DEFUN([SPL_AC_LICENSE], [
+ AC_MSG_CHECKING([spl author])
+ AC_MSG_RESULT([$SPL_META_AUTHOR])
+
AC_MSG_CHECKING([spl license])
- LICENSE=GPL
- AC_MSG_RESULT([$LICENSE])
- KERNELCPPFLAGS="${KERNELCPPFLAGS} -DHAVE_GPL_ONLY_SYMBOLS"
- AC_SUBST(LICENSE)
+ AC_MSG_RESULT([$SPL_META_LICENSE])
])
AC_DEFUN([SPL_AC_CONFIG], [
])
dnl #
-dnl # Basic toolchain sanity check.
+dnl # Basic toolchain sanity check. Verify that kernel modules can
+dnl # be built and which symbols can be used.
dnl #
AC_DEFUN([SPL_AC_TEST_MODULE],
[AC_MSG_CHECKING([whether modules can be built])
*** Please run 'make scripts' inside the kernel source tree.])
fi
])
+
+ AC_RUN_IFELSE([
+ AC_LANG_PROGRAM([
+ #include "$LINUX/include/linux/license.h"
+ ], [
+ return !license_is_gpl_compatible("$SPL_META_LICENSE");
+ ])
+ ], [
+ AC_DEFINE([SPL_IS_GPL_COMPATIBLE], [1],
+ [Define to 1 if GPL-only symbols can be used])
+ ], [
+ ])
])
dnl #
AC_SUBST([RELEASE])
fi
+ SPL_META_LICENSE=_SPL_AC_META_GETVAL([License]);
+ if test -n "$SPL_META_LICENSE"; then
+ AC_DEFINE_UNQUOTED([SPL_META_LICENSE], ["$SPL_META_LICENSE"],
+ [Define the project license.]
+ )
+ AC_SUBST([SPL_META_LICENSE])
+ fi
+
if test -n "$SPL_META_NAME" -a -n "$SPL_META_VERSION"; then
SPL_META_ALIAS="$SPL_META_NAME-$SPL_META_VERSION"
test -n "$SPL_META_RELEASE" &&
})
#define mutex_exit(mp) mutex_unlock(&(mp)->m)
-#ifdef HAVE_GPL_ONLY_SYMBOLS
-# define mutex_enter_nested(mp, sc) mutex_lock_nested(&(mp)->m, sc)
-#else
-# define mutex_enter_nested(mp, sc) mutex_enter(mp)
-#endif /* HAVE_GPL_ONLY_SYMBOLS */
-
#else /* HAVE_MUTEX_OWNER */
typedef struct {
mutex_unlock(MUTEX(mp)); \
})
-#ifdef HAVE_GPL_ONLY_SYMBOLS
-# define mutex_enter_nested(mp, sc) \
-({ \
- mutex_lock_nested(MUTEX(mp), sc); \
- spl_mutex_set_owner(mp); \
-})
-#else
-# define mutex_enter_nested(mp, sc) \
-({ \
- mutex_enter(mp); \
-})
-#endif
-
#endif /* HAVE_MUTEX_OWNER */
int spl_mutex_init(void);
module_init(spl_init);
module_exit(spl_fini);
-MODULE_AUTHOR("Lawrence Livermore National Labs");
MODULE_DESCRIPTION("Solaris Porting Layer");
-MODULE_LICENSE("GPL");
+MODULE_AUTHOR(SPL_META_AUTHOR);
+MODULE_LICENSE(SPL_META_LICENSE);
MODULE_VERSION(SPL_META_VERSION "-" SPL_META_RELEASE);
spl_module_init(splat_init);
spl_module_exit(splat_fini);
-MODULE_AUTHOR("Lawrence Livermore National Labs");
MODULE_DESCRIPTION("Solaris Porting LAyer Tests");
-MODULE_LICENSE("GPL");
+MODULE_AUTHOR(SPL_META_AUTHOR);
+MODULE_LICENSE(SPL_META_LICENSE);
MODULE_VERSION(SPL_META_VERSION "-" SPL_META_RELEASE);