Whamcloud - gitweb
LU-1981 build: External OSD support in configure
authorAlex Zhuravlev <bzzz@whamcloud.com>
Thu, 17 Feb 2011 08:23:18 +0000 (11:23 +0300)
committerOleg Drokin <green@whamcloud.com>
Thu, 27 Sep 2012 03:55:14 +0000 (23:55 -0400)
With configure option "--with-osd=<dir>" one can get additional
(external to main tree) directory to be built with main tree.

Change-Id: Ibe1c1d136d9c8bf8245344791f0f51933266018a
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Signed-off-by: Li Wei <liwei@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/4099
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
build/autoconf/lustre-build.m4
lustre/Makefile.in
lustre/autoconf/lustre-core.m4

index 1e30341..c75eee2 100644 (file)
@@ -762,6 +762,7 @@ LB_PROG_CC
 
 LB_UOSS
 LB_POSIX_OSD
+LC_OSD_ADDON
 
 LB_CONFIG_DOCS
 LB_CONFIG_UTILS
index 80db6b6..6886694 100644 (file)
@@ -11,5 +11,6 @@ subdir-m += mgc
 @SERVER_TRUE@subdir-m += quota osp lod
 @CLIENT_TRUE@subdir-m += mdc lmv llite fld
 @ZFS_ENABLED_TRUE@subdir-m += osd-zfs
+@OSDADDON@
 
 @INCLUDE_RULES@
index 4701029..2a62497 100644 (file)
@@ -2274,6 +2274,46 @@ LB_LINUX_TRY_COMPILE([
 ])
 
 #
+# LC_OSD_ADDON
+#
+# configure support for optional OSD implementation
+#
+AC_DEFUN([LC_OSD_ADDON],
+[AC_MSG_CHECKING([for osd])
+AC_ARG_WITH([osd],
+       AC_HELP_STRING([--with-osd=path],
+                       [set path to optional osd]),
+        [
+               case $with_osd in
+                       no)     ENABLEOSDADDON=0
+                               ;;
+                       *)      OSDADDON="${with_osd}"
+                               ENABLEOSDADDON=1
+                               ;;
+               esac
+       ], [
+               ENABLEOSDADDON=0
+       ])
+if test $ENABLEOSDADDON -eq 0; then
+       AC_MSG_RESULT([no])
+       OSDADDON=
+else
+       OSDMODNAME=`basename $OSDADDON`
+       if test -e $LUSTRE/$OSDMODNAME; then
+               AC_MSG_RESULT([can't link])
+               OSDADDON=
+       elif ln -s $OSDADDON $LUSTRE/$OSDMODNAME; then
+               AC_MSG_RESULT([$OSDMODNAME])
+               OSDADDON="subdir-m += $OSDMODNAME"
+       else
+               AC_MSG_RESULT([can't link])
+               OSDADDON=
+       fi
+fi
+AC_SUBST(OSDADDON)
+])
+
+#
 # LC_CONFIGURE
 #
 # other configure checks