X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;ds=sidebyside;f=build%2Fautoconf%2Flustre-build.m4;h=faa1919193f12e7341d034a8f4b7f355d3865566;hb=fdf2fb945d638beb2dd50d812f33c803340084b9;hp=5c40b30405bfb944fbb1d812309642c657380a20;hpb=a48cf7f8035a0f827272d2d777a7092eebb098b5;p=fs%2Flustre-release.git diff --git a/build/autoconf/lustre-build.m4 b/build/autoconf/lustre-build.m4 index 5c40b30..faa1919 100644 --- a/build/autoconf/lustre-build.m4 +++ b/build/autoconf/lustre-build.m4 @@ -22,7 +22,9 @@ AC_DEFUN([LB_CANONICAL_SYSTEM], darwin*) lb_target_os="darwin" ;; -esac + solaris2.11*) + lb_target_os="SunOS" + ;;esac AC_SUBST(lb_target_os) ]) @@ -153,12 +155,69 @@ case x$with_sysio in ;; esac -# We have to configure even if we don't build here for make dist to -# work +# We have to configure even if we don't build here for make dist to work AC_CONFIG_SUBDIRS(libsysio) ]) # +# LB_PATH_LDISKFS +# +# Handle internal/external ldiskfs +# +AC_DEFUN([LB_PATH_LDISKFS], +[AC_ARG_WITH([ldiskfs], + AC_HELP_STRING([--with-ldiskfs=path], + [set path to ldiskfs source (default is included ldiskfs)]), + [],[ + if test x$linux25$enable_server = xyesyes ; then + with_ldiskfs=yes + else + with_ldiskfs=no + fi + ]) +AC_MSG_CHECKING([location of ldiskfs]) +case x$with_ldiskfs in + xyes) + AC_MSG_RESULT([internal]) + LB_CHECK_FILE([$srcdir/ldiskfs/lustre-ldiskfs.spec.in],[],[ + AC_MSG_ERROR([A complete internal ldiskfs was not found.]) + ]) + LDISKFS_SUBDIR="ldiskfs" + LDISKFS_DIR="$PWD/ldiskfs" + ;; + xno) + AC_MSG_RESULT([disabled]) + ;; + *) + AC_MSG_RESULT([$with_ldiskfs]) + LB_CHECK_FILE([$with_ldiskfs/ldiskfs/linux/ldiskfs_fs.h],[],[ + AC_MSG_ERROR([A complete (built) external ldiskfs was not found.]) + ]) + LDISKFS_DIR=$with_ldiskfs + ;; +esac +AC_SUBST(LDISKFS_DIR) +AC_SUBST(LDISKFS_SUBDIR) + +# We have to configure even if we don't build here for make dist to work +AC_CONFIG_SUBDIRS(ldiskfs) +]) + +# +# LB_DEFINE_LDISKFS_OPTIONS +# +# Enable config options related to ldiskfs. These are used both by ldiskfs +# and lvfs (which includes ldiskfs headers.) +# +AC_DEFUN([LB_DEFINE_LDISKFS_OPTIONS], +[ + AC_DEFINE(CONFIG_LDISKFS_FS_MODULE, 1, [build ldiskfs as a module]) + AC_DEFINE(CONFIG_LDISKFS_FS_XATTR, 1, [enable extended attributes for ldiskfs]) + AC_DEFINE(CONFIG_LDISKFS_FS_POSIX_ACL, 1, [enable posix acls for ldiskfs]) + AC_DEFINE(CONFIG_LDISKFS_FS_SECURITY, 1, [enable fs security for ldiskfs]) +]) + +# # LB_CONFIG_CRAY_XT3 # # Enable Cray XT3 features @@ -197,6 +256,64 @@ if test x$enable_bgl != xno; then fi ]) + +# +# LB_PATH_DMU +# Support for --with-dmu +# +AC_DEFUN([LB_PATH_DMU], +[AC_ARG_WITH([dmu], + AC_HELP_STRING([--with-dmu=path], + [set path to a built dmu]), + [ + DMU_SRC=$with_dmu + enable_dmu_osd=yes + ], + [ + enable_dmu_osd=no + DMU_SRC="" + ]) +AC_MSG_RESULT([$dmu]) +if test x$enable_dmu_osd != xno; then + AC_DEFINE(ENABLE_DMU, 1, Enable DMU OSD) + AC_DEFINE(DMU_OSD, 1, Enable DMU OSD) + AC_DEFINE(UOSS_SUPPORT, 1, Enable user-level OSS) + AC_DEFINE(LUSTRE_ULEVEL_MT, 1, Multi-threaded user-level lustre port) + enable_uoss='yes' + enable_ulevel_mt='yes' + enable_modules='no' + enable_client='no' + enable_tests='no' + enable_liblustre='no' + with_ldiskfs=no +fi +AC_SUBST(DMU_SRC) +]) + +# +# Support for --enable-posix-dmu +# +AC_DEFUN([LB_POSIX_OSD], +[AC_MSG_CHECKING([whether to posix osd]) +AC_ARG_ENABLE([posix-osd], + AC_HELP_STRING([--enable-posix-osd], + [enable using of posix osd]), + [enable_posix_osd='yes'],[enable_posix_osd='no']) +AC_MSG_RESULT([$enable_posix_osd]) +if test x$enable_posix_osd != xno; then + AC_DEFINE(POSIX_OSD, 1, Enable POSIX OSD) + AC_DEFINE(UOSS_SUPPORT, 1, Enable user-level OSS) + AC_DEFINE(LUSTRE_ULEVEL_MT, 1, Multi-threaded user-level lustre port) + enable_uoss='yes' + enable_ulevel_mt='yes' + enable_modules='no' + enable_client='no' + enable_tests='no' + enable_liblustre='no' + with_ldiskfs=no +fi +]) + # # LB_PATH_SNMP # @@ -231,6 +348,8 @@ if test x$enable_modules = xyes ; then case $target_os in linux*) LB_PROG_LINUX + LN_PROG_LINUX + LC_PROG_LINUX ;; darwin*) LB_PROG_DARWIN @@ -339,7 +458,7 @@ AC_SUBST(EXTRA_KCFLAGS) # defines for including the toplevel Rules # AC_DEFUN([LB_INCLUDE_RULES], -[INCLUDE_RULES="include $PWD/build/Rules" +[INCLUDE_RULES="include $PWD/Rules" AC_SUBST(INCLUDE_RULES) ]) @@ -452,6 +571,8 @@ AM_CONDITIONAL(DOC, test x$ENABLE_DOC = x1) AM_CONDITIONAL(INIT_SCRIPTS, test x$ENABLE_INIT_SCRIPTS = "x1") AM_CONDITIONAL(LINUX, test x$lb_target_os = "xlinux") AM_CONDITIONAL(DARWIN, test x$lb_target_os = "xdarwin") +AM_CONDITIONAL(CRAY_XT3, test x$enable_cray_xt3 = "xyes") +AM_CONDITIONAL(SUNOS, test x$lb_target_os = "xSunOS") # this lets lustre cancel libsysio, per-branch or if liblustre is # disabled @@ -472,6 +593,22 @@ LC_CONDITIONALS ]) # +# LB_CONFIG_FILES +# +# build-specific config files +# +AC_DEFUN([LB_CONFIG_FILES], +[ +AC_CONFIG_FILES( +[Makefile +autoMakefile +] +[Rules:build/Rules.in] +AC_PACKAGE_TARNAME[.spec] +) +]) + +# # LB_CONFIGURE # # main configure steps @@ -487,18 +624,25 @@ LB_PATH_DEFAULTS LB_PROG_CC -LB_PATH_LIBSYSIO -LB_PATH_SNMP +LB_PATH_DMU +LB_POSIX_OSD LB_CONFIG_DOCS LB_CONFIG_UTILS LB_CONFIG_TESTS LC_CONFIG_CLIENT_SERVER + +# three macros for cmd3 LC_CONFIG_SPLIT LC_CONFIG_LDISKFS +LN_CONFIG_CDEBUG LB_CONFIG_MODULES +LB_PATH_LIBSYSIO +LB_PATH_SNMP +LB_PATH_LDISKFS + LC_CONFIG_LIBLUSTRE LN_CONFIGURE @@ -511,15 +655,7 @@ fi LB_CONDITIONALS LB_CONFIG_HEADERS -AC_CONFIG_FILES( -[Makefile:build/Makefile.in.toplevel] -[autoMakefile -build/autoMakefile -build/autoconf/Makefile -build/Rules -build/lustre.spec -]) - +LB_CONFIG_FILES LN_CONFIG_FILES LC_CONFIG_FILES if test "$SNMP_DIST_SUBDIR" ; then