]> git.proxmox.com Git - mirror_zfs-debian.git/commitdiff
Additional buidl system cleanup. Starting to move all
authorBrian Behlendorf <behlendorf1@llnl.gov>
Wed, 26 Nov 2008 22:06:23 +0000 (14:06 -0800)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Wed, 26 Nov 2008 22:06:23 +0000 (14:06 -0800)
of the kernel specific build info in to config/kernel,
likewise and user specific build flags should go in
config/user.  This seems like a reasonable way to go.

TODO [deleted file]
config/kernel
config/zfs-build.m4
configure.ac

diff --git a/TODO b/TODO
deleted file mode 100644 (file)
index 0d9310d..0000000
--- a/TODO
+++ /dev/null
@@ -1,30 +0,0 @@
-* We may need a libefi replacement.  It appears libefi is used
-  to determine if the device passed to zpool is a 'whole device'
-  or just a partition of a device.  In the short term I think we
-  can simply treat everything as a partition and be alright.
-
-* We also do not have support for getting Solaris style device
-  ids which is done when a zpool is setup.  We may or may not
-  be able to live without this, the jury is still out.
-
------------------------------------------------------------------------
-
-* Port zvol (ZFS volume interface).
-
-* Port zpl (ZFS posix interface).
-
-* Port lustre fsfilt interface to use DMU.
-
-* Andreas issue #1:
-  "the maximum allocation DMU "blocksize" was 128kB and it would be better
-  to be able to get 1MB contiguous allocations for best performance"
-
-* Andreas issue #2:
-  "there would need to be some work done to allow multiple operations to
-  be atomic.  This is needed by Lustre for object creation + LAST_ID
-  updates, unlink + llog updates, etc.  Conceptually this isn't very
-  much work for a phase tree, but I've never looked at the ZFS code."
-
-* Design and implement mechanism for viewing and modifying OST content
-  from user space (by manipulating datasets/objects), possibly
-  by implementing scaled down file system interface.
index 22a43aaa70d4046cb09e944264f75c75fb68b05b..d7d52ad07f33b135aff69aaa195d2d758792d998 100644 (file)
@@ -1 +1,51 @@
 # Default ZFS kernel mode configuration 
+
+# Kernel build make options
+KERNELMAKE_PARAMS=
+#KERNELMAKE_PARAMS="V=1"       # Enable verbose module build
+
+# Kernel build cpp flags
+KERNELCPPFLAGS="$KERNELCPPFLAGS -DHAVE_SPL -D_KERNEL "
+KERNELCPPFLAGS="$KERNELCPPFLAGS -I$splsrc -I$splsrc/include -I$TOPDIR"
+
+# Minimally required for pread() functionality an other GNU goodness
+HOSTCFLAGS="$HOSTCFLAGS -ggdb -O2 -std=c99 -D_GNU_SOURCE -D__EXTENSIONS__ "
+
+# XXX: Quiet warnings not covered by the gcc-* patches
+# XXX: Once all the warnings are resolved these flags should be removed
+HOSTCFLAGS="$HOSTCFLAGS -Wno-switch -Wno-unused -Wno-missing-braces -Wno-parentheses "
+HOSTCFLAGS="$HOSTCFLAGS -Wno-uninitialized -fno-strict-aliasing "
+
+# Expected defines not covered by zfs_config.h or spl_config.h
+HOSTCFLAGS="$HOSTCFLAGS -DHAVE_SPL -D_POSIX_PTHREAD_SEMANTICS "
+HOSTCFLAGS="$HOSTCFLAGS -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_REENTRANT "
+HOSTCFLAGS="$HOSTCFLAGS -DTEXT_DOMAIN=\\\"zfs-linux-kernel\\\" "
+
+# Expected default include paths additional paths added by Makefiles
+HOSTCFLAGS="$HOSTCFLAGS -I$TOPDIR "
+
+if test "$kernelbuild" != "$kernelsrc"; then
+       KERNELMAKE_PARAMS="$KERNELMAKE_PARAMS O=$kernelbuild"
+fi
+
+# XXX: I really, really hate this...  but to ensure the kernel build 
+# system compiles C files shared between a library and a kernel module, 
+# we need to ensure each file has a unique make target.  To do that 
+# I'm creating symlinks for each shared file at configure time.  It 
+# may be possible something better can be done in the Makefile but it
+# will take some serious investigation and I don't have the time now.
+
+echo "Creating symlinks for additional make targets"
+ln -f -s $LIBDIR/libport/u8_textprep.c      $LIBDIR/libport/ku8_textprep.c
+ln -f -s $LIBDIR/libavl/avl.c               $LIBDIR/libavl/kavl.c
+ln -f -s $LIBDIR/libavl/avl.c               $LIBDIR/libavl/uavl.c
+ln -f -s $LIBDIR/libnvpair/nvpair.c         $LIBDIR/libnvpair/knvpair.c
+ln -f -s $LIBDIR/libnvpair/nvpair.c         $LIBDIR/libnvpair/unvpair.c
+ln -f -s $LIBDIR/libzcommon/zfs_deleg.c     $LIBDIR/libzcommon/kzfs_deleg.c
+ln -f -s $LIBDIR/libzcommon/zfs_prop.c      $LIBDIR/libzcommon/kzfs_prop.c
+ln -f -s $LIBDIR/libzcommon/zprop_common.c  $LIBDIR/libzcommon/kzprop_common.c
+ln -f -s $LIBDIR/libzcommon/compress.c      $LIBDIR/libzcommon/kcompress.c
+ln -f -s $LIBDIR/libzcommon/list.c          $LIBDIR/libzcommon/klist.c
+ln -f -s $LIBDIR/libzcommon/zfs_namecheck.c $LIBDIR/libzcommon/kzfs_namecheck.c
+ln -f -s $LIBDIR/libzcommon/zfs_comutil.c   $LIBDIR/libzcommon/kzfs_comutil.c
+ln -f -s $LIBDIR/libzcommon/zpool_prop.c    $LIBDIR/libzcommon/kzpool_prop.c
index 484ce8dd30d1f17b1acd84c3651cb168f46dc0d6..badb8b69e1b976851fdae372b2b0ac9809ef2f68 100644 (file)
@@ -13,9 +13,6 @@ AC_DEFUN([ZFS_AC_CONFIG], [
                *** in ./config/ with the '--with-zfs-config=CONFIG' option])
        fi
 
-       AC_MSG_RESULT([$zfsconfig]);
-       . ./config/$zfsconfig
-
        TOPDIR=`/bin/pwd`
        BUILDDIR=$ZFS_META_NAME #+$zfsconfig
        ZFSDIR=$TOPDIR/$BUILDDIR
@@ -30,6 +27,13 @@ AC_DEFUN([ZFS_AC_CONFIG], [
        AC_SUBST(LIBDIR)
        AC_SUBST(CMDDIR)
        AC_SUBST(UNAME)
+
+       AC_MSG_RESULT([$zfsconfig]);
+       . ./config/$zfsconfig
+
+       AC_SUBST(KERNELMAKE_PARAMS)
+       AC_SUBST(KERNELCPPFLAGS)
+       AC_SUBST(HOSTCFLAGS)
 ])
 
 AC_DEFUN([ZFS_AC_KERNEL], [
index 8a09cbf1c5249e389b6787054a1a8738d50e8d1f..4fd10dee5fcd4b7fa4e9490887b68a54a5517f2d 100644 (file)
@@ -102,30 +102,6 @@ AC_EGREP_HEADER(sysinfo, sys/systeminfo.h,
 #AC_DEFINE([HAVE_UNICODE], 1, ["None"])
 #AC_DEFINE([HAVE_INTTYPES], 1, [Define to 1 if unint16 defined in <sys/types.h> header file])
 
-# Add "V=1" to KERNELMAKE_PARAMS to enable verbose module build
-KERNELMAKE_PARAMS=
-KERNELCPPFLAGS="$KERNELCPPFLAGS -DHAVE_SPL -D_KERNEL -I$splsrc -I$splsrc/include -I$TOPDIR"
-
-# Minimally required for pread() functionality an other GNU goodness
-HOSTCFLAGS="$HOSTCFLAGS -ggdb -O2 -std=c99 -D_GNU_SOURCE -D__EXTENSIONS__ "
-# Quiet warnings not covered by the gcc-* patches
-HOSTCFLAGS="$HOSTCFLAGS -Wno-switch -Wno-unused -Wno-missing-braces -Wno-parentheses "
-HOSTCFLAGS="$HOSTCFLAGS -Wno-uninitialized -fno-strict-aliasing "
-# Expected defines not covered by zfs_config.h
-HOSTCFLAGS="$HOSTCFLAGS -DHAVE_SPL -D_POSIX_PTHREAD_SEMANTICS "
-HOSTCFLAGS="$HOSTCFLAGS -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_REENTRANT "
-HOSTCFLAGS="$HOSTCFLAGS -DTEXT_DOMAIN=\\\"zfs-linux-kernel\\\" "
-# Expected default include paths additional paths added by Makefiles
-HOSTCFLAGS="$HOSTCFLAGS -I$TOPDIR "
-
-if test "$kernelbuild" != "$kernelsrc"; then
-       KERNELMAKE_PARAMS="$KERNELMAKE_PARAMS O=$kernelbuild"
-fi
-
-AC_SUBST(KERNELMAKE_PARAMS)
-AC_SUBST(KERNELCPPFLAGS)
-AC_SUBST(HOSTCFLAGS)
-
 AC_CONFIG_FILES([ Makefile
                   config/Makefile
                   doc/Makefile
@@ -187,26 +163,3 @@ AC_CONFIG_FILES([ Makefile
                   zfs/zcmd/zpool/Makefile
                ])
 AC_OUTPUT
-
-# HACK: I really, really hate this...  but to ensure the kernel build 
-# system compiles C files shared between a library and a kernel module, 
-# we need to ensure each file has a unique make target.  To do that 
-# I'm creating symlinks for each shared file at configure time.  It 
-# may be possible something better can be done in the Makefile but it
-# will take some serious investigation and I don't have the time now.
-
-echo
-echo "Creating symlinks for additional make targets"
-ln -s $LIBDIR/libport/u8_textprep.c      $LIBDIR/libport/ku8_textprep.c
-ln -s $LIBDIR/libavl/avl.c               $LIBDIR/libavl/kavl.c
-ln -s $LIBDIR/libavl/avl.c               $LIBDIR/libavl/uavl.c
-ln -s $LIBDIR/libnvpair/nvpair.c         $LIBDIR/libnvpair/knvpair.c
-ln -s $LIBDIR/libnvpair/nvpair.c         $LIBDIR/libnvpair/unvpair.c
-ln -s $LIBDIR/libzcommon/zfs_deleg.c     $LIBDIR/libzcommon/kzfs_deleg.c
-ln -s $LIBDIR/libzcommon/zfs_prop.c      $LIBDIR/libzcommon/kzfs_prop.c
-ln -s $LIBDIR/libzcommon/zprop_common.c  $LIBDIR/libzcommon/kzprop_common.c
-ln -s $LIBDIR/libzcommon/compress.c      $LIBDIR/libzcommon/kcompress.c
-ln -s $LIBDIR/libzcommon/list.c          $LIBDIR/libzcommon/klist.c
-ln -s $LIBDIR/libzcommon/zfs_namecheck.c $LIBDIR/libzcommon/kzfs_namecheck.c
-ln -s $LIBDIR/libzcommon/zfs_comutil.c   $LIBDIR/libzcommon/kzfs_comutil.c
-ln -s $LIBDIR/libzcommon/zpool_prop.c    $LIBDIR/libzcommon/kzpool_prop.c