Whamcloud - gitweb
LU-4430 mdt: check for MDS_FMODE_EXEC in mdt_mfd_open()
[fs/lustre-release.git] / config / lustre-build.m4
1 #
2 # LB_CHECK_VERSION
3 #
4 # Verify that LUSTRE_VERSION was defined properly
5 #
6 AC_DEFUN([LB_CHECK_VERSION],
7 [if test "LUSTRE_VERSION" = "LUSTRE""_VERSION" ; then
8         AC_MSG_ERROR([This script was not built with a version number.])
9 fi
10 ])
11
12 #
13 # LB_CANONICAL_SYSTEM
14 #
15 # fixup $target_os for use in other places
16 #
17 AC_DEFUN([LB_CANONICAL_SYSTEM],
18 [case $target_os in
19         linux*)
20                 lb_target_os="linux"
21                 ;;
22         darwin*)
23                 lb_target_os="darwin"
24                 ;;
25         solaris*)
26                 lb_target_os="SunOS"
27                 ;;
28 esac
29 AC_SUBST(lb_target_os)
30 ])
31
32 #
33 # LB_DOWNSTREAM_RELEASE
34 #
35 AC_DEFUN([LB_DOWNSTREAM_RELEASE],
36 [AC_ARG_WITH([downstream-release],
37         AC_HELP_STRING([--with-downstream-release=string],
38                        [set a string in the BUILD_VERSION and RPM Release: (default is nothing)]),
39         [DOWNSTREAM_RELEASE=$with_downstream_release],
40         [
41         # if not specified, see if it's in the META file
42         if test -f META; then
43                 DOWNSTREAM_RELEASE=$(sed -ne '/^LOCAL_VERSION =/s/.*= *//p' META)
44         fi
45         ])
46 AC_SUBST(DOWNSTREAM_RELEASE)
47 ])
48
49 #
50 # LB_BUILDID
51 #
52 # Check if the source is a GA release and if not, set a "BUILDID"
53 #
54 # Currently there are at least two ways/modes of/for doing this.  One
55 # is if we are in a valid git repository, the other is if we are in a
56 # non-git source tree of some form.  Building the latter from the former
57 # will be handled here.
58 AC_DEFUN([LB_BUILDID],
59 [
60 AC_MSG_CHECKING([for buildid])
61 BUILDID=""
62 if git branch >/dev/null 2>&1; then
63         ffw=0
64         hash=""
65         ver=$(git describe --match v[[0-9]]_*_[[0-9]]* --tags)
66         if [[[ $ver = *-*-* ]]]; then
67                 hash=${ver##*-}
68                 ffw=${ver#*-}
69                 ffw=${ffw%-*}
70                 ver=${ver%%-*}
71         fi
72         # it's tempting to use [[ $ver =~ ^v([0-9]+_)+([0-9]+|RC[0-9]+)$ ]]
73         # here but the portability of the regex on the right is dismal
74         # (thanx suse)
75         if echo "$ver" | egrep -q "^v([[0-9]]+_)+([[0-9]]+|RC[[0-9]]+)$"; then
76                 ver=$(echo $ver | sed -e 's/^v\(.*\)/\1/' \
77                                       -e 's/_RC[[0-9]].*$//' -e 's/_/./g')
78         fi
79
80         # a "lustre fix" value of .0 should be truncated
81         if [[[ $ver = *.*.*.0 ]]]; then
82                 ver=${ver%.0}
83         fi
84         # ditto for a "lustre fix" value of _0
85         if [[[ $ver = v*_*_*_0 ]]]; then
86                 ver=${ver%_0}
87         fi
88         if [[[ $ver = v*_*_* ]]]; then
89                 ver=${ver#v}
90                 ver=${ver//_/.}
91         fi
92
93         if test "$ver" != "$VERSION"; then
94                 AC_MSG_WARN([most recent tag found: $ver does not match current version $VERSION.])
95         fi
96
97         if test "$ffw" != "0"; then
98                 BUILDID="$hash"
99                 msg="$BUILDID (ahead by $ffw commits)"
100                 AC_MSG_RESULT([$msg])
101         else
102                 AC_MSG_RESULT([none... congratulations, you must be on a tag])
103         fi
104 elif test -f META; then
105         BUILDID=$(sed -ne '/^BUILDID =/s/.*= *//p' META)
106         msg="$BUILDID (from META file)"
107         AC_MSG_RESULT([$msg])
108 else
109         AC_MSG_WARN([FIXME: I don't know how to deal with source trees outside of git that don't have a META file.  Not setting a buildid.])
110 fi
111 AC_SUBST(BUILDID)
112 ])
113
114 #
115 # LB_CHECK_FILE
116 #
117 # Check for file existance even when cross compiling
118 #
119 AC_DEFUN([LB_CHECK_FILE],
120 [AS_VAR_PUSHDEF([lb_File], [lb_cv_file_$1])dnl
121 AC_CACHE_CHECK([for $1], lb_File,
122 [if test -r "$1"; then
123         AS_VAR_SET(lb_File, yes)
124 else
125         AS_VAR_SET(lb_File, no)
126 fi])
127 AS_IF([test AS_VAR_GET(lb_File) = yes], [$2], [$3])[]dnl
128 AS_VAR_POPDEF([lb_File])dnl
129 ])# LB_CHECK_FILE
130
131
132 #
133 # LB_ARG_LIBS_INCLUDES
134 #
135 # support for --with-foo, --with-foo-includes, and --with-foo-libs in
136 # a single magical macro
137 #
138 AC_DEFUN([LB_ARG_LIBS_INCLUDES],
139 [lb_pathvar="m4_bpatsubst([$2], -, _)"
140 AC_MSG_CHECKING([for $1])
141 AC_ARG_WITH([$2],
142         AC_HELP_STRING([--with-$2=path],
143                 [path to $1]),
144         [],[withval=$4])
145
146 if test x$withval = xyes ; then
147         eval "$lb_pathvar='$3'"
148 else
149         eval "$lb_pathvar='$withval'"
150 fi
151 AC_MSG_RESULT([${!lb_pathvar:-no}])
152
153 if test x${!lb_pathvar} != x -a x${!lb_pathvar} != xno ; then
154         AC_MSG_CHECKING([for $1 includes])
155         AC_ARG_WITH([$2-includes],
156                 AC_HELP_STRING([--with-$2-includes=path],
157                         [path to $1 includes]),
158                 [],[withval='yes'])
159
160         lb_includevar="${lb_pathvar}_includes"
161         if test x$withval = xyes ; then
162                 eval "${lb_includevar}='${!lb_pathvar}/include'"
163         else
164                 eval "${lb_includevar}='$withval'"
165         fi
166         AC_MSG_RESULT([${!lb_includevar}])
167
168         AC_MSG_CHECKING([for $1 libs])
169         AC_ARG_WITH([$2-libs],
170                 AC_HELP_STRING([--with-$2-libs=path],
171                         [path to $1 libs]),
172                 [],[withval='yes'])
173
174         lb_libvar="${lb_pathvar}_libs"
175         if test x$withval = xyes ; then
176                 eval "${lb_libvar}='${!lb_pathvar}/lib'"
177         else
178                 eval "${lb_libvar}='$withval'"
179         fi
180         AC_MSG_RESULT([${!lb_libvar}])
181 fi
182 ])
183 ])
184
185 #
186 # LB_PATH_LIBSYSIO
187 #
188 # Handle internal/external libsysio
189 #
190 AC_DEFUN([LB_PATH_LIBSYSIO],
191 [AC_ARG_WITH([sysio],
192         AC_HELP_STRING([--with-sysio=path],
193                         [set path to libsysio source (default is included libsysio)]),
194         [],[
195                 case $lb_target_os in
196                         linux)
197                                 with_sysio='yes'
198                                 ;;
199                         *)
200                                 with_sysio='no'
201                                 ;;
202                 esac
203         ])
204 AC_MSG_CHECKING([location of libsysio])
205 enable_sysio="$with_sysio"
206 case x$with_sysio in
207         xyes)
208                 AC_MSG_RESULT([internal])
209                 LB_CHECK_FILE([$srcdir/libsysio/src/rmdir.c],[],[
210                         AC_MSG_ERROR([A complete internal libsysio was not found.])
211                 ])
212                 LIBSYSIO_SUBDIR="libsysio"
213                 SYSIO="$PWD/libsysio"
214                 ;;
215         xno)
216                 AC_MSG_RESULT([disabled])
217                 ;;
218         *)
219                 AC_MSG_RESULT([$with_sysio])
220                 LB_CHECK_FILE([$with_sysio/lib/libsysio.a],[],[
221                         AC_MSG_ERROR([A complete (built) external libsysio was not found.])
222                 ])
223                 SYSIO=$with_sysio
224                 with_sysio="yes"
225                 ;;
226 esac
227
228 # We have to configure even if we don't build here for make dist to work
229 AC_CONFIG_SUBDIRS([libsysio])
230 ])
231
232 #
233 # LB_PATH_LUSTREIOKIT
234 #
235 # We no longer handle external lustre-iokit
236 #
237 AC_DEFUN([LB_PATH_LUSTREIOKIT],
238 [AC_ARG_ENABLE([iokit],
239         AC_HELP_STRING([--disable-iokit],
240                 [disable iokit (default is enable)]),
241         [],[
242                 enable_iokit='yes'
243         ])
244 AC_MSG_CHECKING([whether to build iokit])
245 AC_MSG_RESULT([$enable_iokit])
246 AS_IF([test "x$enable_iokit" = xyes], [LUSTREIOKIT_SUBDIR="lustre-iokit"], [LUSTREIOKIT_SUBDIR=""])[]dnl
247 AC_SUBST(LUSTREIOKIT_SUBDIR)
248 AM_CONDITIONAL(BUILD_LUSTREIOKIT, [test "x$enable_iokit" = xyes])
249 ])
250
251 # Define no libcfs by default.
252 AC_DEFUN([LB_LIBCFS_DIR],
253 [
254 case x$libcfs_is_module in
255         xyes)
256           LIBCFS_INCLUDE_DIR="libcfs/include"
257           LIBCFS_SUBDIR="libcfs"
258           ;;
259         x*)
260           LIBCFS_INCLUDE_DIR="lnet/include"
261           LIBCFS_SUBDIR=""
262           ;;
263 esac
264 AC_SUBST(LIBCFS_SUBDIR)
265 AC_SUBST(LIBCFS_INCLUDE_DIR)
266 ])
267
268 #
269 # LB_PATH_SNMP
270 #
271 # check for in-tree snmp support
272 #
273 AC_DEFUN([LB_PATH_SNMP],
274 [LB_CHECK_FILE([$srcdir/snmp/lustre-snmp.c],[SNMP_DIST_SUBDIR="snmp"])
275 AC_SUBST(SNMP_DIST_SUBDIR)
276 AC_SUBST(SNMP_SUBDIR)
277 ])
278
279 #
280 # LB_CONFIG_MODULES
281 #
282 # Build kernel modules?
283 #
284 AC_DEFUN([LB_CONFIG_MODULES],
285 [AC_MSG_CHECKING([whether to build kernel modules])
286 AC_ARG_ENABLE([modules],
287         AC_HELP_STRING([--disable-modules],
288                         [disable building of Lustre kernel modules]),
289         [],[
290                 LC_TARGET_SUPPORTED([
291                         enable_modules='yes'
292                 ],[
293                         enable_modules='no'
294                 ])
295         ])
296 AC_MSG_RESULT([$enable_modules ($target_os)])
297
298 if test x$enable_modules = xyes ; then
299         case $target_os in
300                 linux*)
301                         LB_PROG_LINUX
302                         LIBCFS_PROG_LINUX
303                         LN_PROG_LINUX
304                         if test x$enable_server != xno; then
305                                 LB_EXT4_SRC_DIR
306                         fi
307                         LC_PROG_LINUX
308                         ;;
309                 darwin*)
310                         LB_PROG_DARWIN
311                         LIBCFS_PROG_DARWIN
312                         ;;
313                 *)
314                         # This is strange - Lustre supports a target we don't
315                         AC_MSG_ERROR([Modules are not supported on $target_os])
316                         ;;
317         esac
318 fi
319 ])
320
321 #
322 # LB_CONFIG_UTILS
323 #
324 # Build utils?
325 #
326 AC_DEFUN([LB_CONFIG_UTILS],
327 [AC_MSG_CHECKING([whether to build utilities])
328 AC_ARG_ENABLE([utils],
329         AC_HELP_STRING([--disable-utils],
330                         [disable building of Lustre utility programs]),
331         [],[enable_utils='yes'])
332 AC_MSG_RESULT([$enable_utils])
333 if test x$enable_utils = xyes ; then 
334         LB_CONFIG_INIT_SCRIPTS
335 fi
336 ])
337
338 #
339 # LB_CONFIG_TESTS
340 #
341 # Build tests?
342 #
343 AC_DEFUN([LB_CONFIG_TESTS],
344 [AC_MSG_CHECKING([whether to build Lustre tests])
345 AC_ARG_ENABLE([tests],
346         AC_HELP_STRING([--disable-tests],
347                         [disable building of Lustre tests]),
348         [],
349         [
350                 enable_tests='yes'
351         ])
352 AC_MSG_RESULT([$enable_tests])
353 ])
354
355 #
356 # LB_CONFIG_DIST
357 #
358 # Just enough configure so that "make dist" is useful
359 #
360 # this simply re-adjusts some defaults, which of course can be overridden
361 # on the configure line after the --for-dist option
362 #
363 AC_DEFUN([LB_CONFIG_DIST],
364 [AC_MSG_CHECKING([whether to configure just enough for make dist])
365 AC_ARG_ENABLE([dist],
366         AC_HELP_STRING([--enable-dist],
367                         [only configure enough for make dist]),
368         [enable_dist='yes'],[enable_dist='no'])
369 AC_MSG_RESULT([$enable_dist])
370 if test x$enable_dist != xno; then
371         enable_modules='no'
372         enable_utils='no'
373         enable_liblustre='no'
374         enable_doc='no'
375         enable_tests='no'
376 fi
377 ])
378
379 #
380 # LB_CONFIG_DOCS
381 #
382 # Build docs?
383 #
384 AC_DEFUN([LB_CONFIG_DOCS],
385 [AC_MSG_CHECKING([whether to build docs])
386 AC_ARG_ENABLE(doc,
387         AC_HELP_STRING([--disable-doc],
388                         [skip creation of pdf documentation]),
389         [
390                 if test x$enable_doc = xyes ; then
391                     ENABLE_DOC=1
392                 else
393                     ENABLE_DOC=0
394                 fi
395         ],[
396                 ENABLE_DOC=0
397                 enable_doc='no'
398         ])
399 AC_MSG_RESULT([$enable_doc])
400 AC_SUBST(ENABLE_DOC)
401 ])
402
403 #
404 # LB_CONFIG_INIT_SCRIPTS
405 #
406 # our init scripts only work on red hat linux
407 #
408 AC_DEFUN([LB_CONFIG_INIT_SCRIPTS],
409 [ENABLE_INIT_SCRIPTS=0
410 if test x$enable_utils = xyes ; then
411         AC_MSG_CHECKING([whether to install init scripts])
412         # our scripts only work on red hat systems
413         if test -f /etc/init.d/functions -a -f /etc/sysconfig/network ; then
414                 ENABLE_INIT_SCRIPTS=1
415                 AC_MSG_RESULT([yes])
416         else
417                 AC_MSG_RESULT([no])
418         fi
419 fi
420 AC_SUBST(ENABLE_INIT_SCRIPTS)
421 ])
422
423 #
424 # LB_CONFIG_HEADERS
425 #
426 # add -include config.h
427 #
428 AC_DEFUN([LB_CONFIG_HEADERS],[
429         AC_CONFIG_HEADERS([config.h])
430         CPPFLAGS="-include $PWD/config.h $CPPFLAGS"
431         EXTRA_KCFLAGS="-include $PWD/config.h $EXTRA_KCFLAGS"
432         AC_SUBST(EXTRA_KCFLAGS)
433 ])
434
435 #
436 # LB_INCLUDE_RULES
437 #
438 # defines for including the toplevel Rules
439 #
440 AC_DEFUN([LB_INCLUDE_RULES],[
441         INCLUDE_RULES="include $PWD/Rules"
442         AC_SUBST(INCLUDE_RULES)
443 ])
444
445 #
446 # LB_PATH_DEFAULTS
447 #
448 # 'fixup' default paths
449 #
450 AC_DEFUN([LB_PATH_DEFAULTS],
451 [# directories for binaries
452 AC_PREFIX_DEFAULT([/usr])
453
454 sysconfdir='$(CROSS_PATH)/etc'
455 AC_SUBST(sysconfdir)
456
457 # Directories for documentation and demos.
458 docdir='$(datadir)/doc/$(PACKAGE)'
459 AC_SUBST(docdir)
460
461 LIBCFS_PATH_DEFAULTS
462 LN_PATH_DEFAULTS
463 LC_PATH_DEFAULTS
464
465 ])
466
467 #
468 # LB_PROG_CC
469 #
470 # checks on the C compiler
471 #
472 AC_DEFUN([LB_PROG_CC],
473 [AC_PROG_RANLIB
474 AC_CHECK_TOOL(LD, ld, [no])
475 AC_CHECK_TOOL(OBJDUMP, objdump, [no])
476 AC_CHECK_TOOL(STRIP, strip, [no])
477
478 # ---------  unsigned long long sane? -------
479 AC_CHECK_SIZEOF(unsigned long long, 0)
480 echo "---> size SIZEOF $SIZEOF_unsigned_long_long"
481 echo "---> size SIZEOF $ac_cv_sizeof_unsigned_long_long"
482 if test $ac_cv_sizeof_unsigned_long_long != 8 ; then
483         AC_MSG_ERROR([** we assume that sizeof(long long) == 8.])
484 fi
485
486 if test $target_cpu == "powerpc64"; then
487         AC_MSG_WARN([set compiler with -m64])
488         CFLAGS="$CFLAGS -m64"
489         CC="$CC -m64"
490 fi
491
492 CPPFLAGS="-I$PWD/$LIBCFS_INCLUDE_DIR -I$PWD/lnet/include -I$PWD/lustre/include $CPPFLAGS"
493
494 LLCPPFLAGS="-D__arch_lib__ -D_LARGEFILE64_SOURCE=1"
495 AC_SUBST(LLCPPFLAGS)
496
497 # Add _GNU_SOURCE for strnlen on linux
498 LLCFLAGS="-g -Wall -fPIC -D_GNU_SOURCE"
499 AC_SUBST(LLCFLAGS)
500
501 CCASFLAGS="-Wall -fPIC -D_GNU_SOURCE"
502 AC_SUBST(CCASFLAGS)
503
504 # everyone builds against lnet and lustre
505 EXTRA_KCFLAGS="$EXTRA_KCFLAGS -g -I$PWD/$LIBCFS_INCLUDE_DIR -I$PWD/lnet/include -I$PWD/lustre/include"
506 AC_SUBST(EXTRA_KCFLAGS)
507 ])
508
509 #
510 # LB_CONTITIONALS
511 #
512 # AM_CONDITIONAL instances for everything
513 # (so that portals/lustre can disable some if needed)
514 AC_DEFUN([LB_CONDITIONALS],
515 [AM_CONDITIONAL(MODULES, test x$enable_modules = xyes)
516 AM_CONDITIONAL(UTILS, test x$enable_utils = xyes)
517 AM_CONDITIONAL(TESTS, test x$enable_tests = xyes)
518 AM_CONDITIONAL(DOC, test x$ENABLE_DOC = x1)
519 AM_CONDITIONAL(INIT_SCRIPTS, test x$ENABLE_INIT_SCRIPTS = "x1")
520 AM_CONDITIONAL(LINUX, test x$lb_target_os = "xlinux")
521 AM_CONDITIONAL(DARWIN, test x$lb_target_os = "xdarwin")
522 AM_CONDITIONAL(SUNOS, test x$lb_target_os = "xSunOS")
523 AM_CONDITIONAL(USES_DPKG, test x$uses_dpkg = "xyes")
524 AM_CONDITIONAL([USE_QUILT], [test x$use_quilt = xyes])
525
526 # Sanity check for PCLMULQDQ instruction availability
527 # PCLMULQDQ instruction is a new instruction available beginning with
528 # the all new Core processor family based on the 32nm microarchitecture
529 # codename Westmere. So, $target_cpu = x86_64 should have this instruction
530 # except MIC microarchitecture (k1om).
531 AM_CONDITIONAL(HAVE_PCLMULQDQ, test x$target_cpu = "xx86_64" -a x$target_vendor != "xk1om")
532 if test x$target_cpu = "xx86_64" -a x$target_vendor != "xk1om" ; then
533         AC_DEFINE(HAVE_PCLMULQDQ, 1, [have PCLMULQDQ instruction])
534 fi
535
536 # this lets lustre cancel libsysio, per-branch or if liblustre is
537 # disabled
538 if test "x$LIBSYSIO_SUBDIR" = xlibsysio ; then
539         if test "x$with_sysio" != xyes ; then
540                 SYSIO=""
541                 LIBSYSIO_SUBDIR=""
542         fi
543 fi
544 AC_SUBST(LIBSYSIO_SUBDIR)
545 AC_SUBST(SYSIO)
546
547 LB_DARWIN_CONDITIONALS
548
549 LIBCFS_CONDITIONALS
550 LN_CONDITIONALS
551 LC_CONDITIONALS
552 ])
553
554 #
555 # LB_CONFIG_FILES
556 #
557 # build-specific config files
558 #
559 AC_DEFUN([LB_CONFIG_FILES],
560 [
561         AC_CONFIG_FILES([
562                 Makefile
563                 autoMakefile]
564                 config/Makefile
565                 [Rules:build/Rules.in]
566                 AC_PACKAGE_TARNAME[.spec]
567                 contrib/Makefile
568                 contrib/lbuild/Makefile
569                 contrib/scripts/Makefile
570                 ldiskfs/Makefile
571                 ldiskfs/autoMakefile
572                 lustre-iokit/Makefile
573                 lustre-iokit/obdfilter-survey/Makefile
574                 lustre-iokit/ost-survey/Makefile
575                 lustre-iokit/sgpdd-survey/Makefile
576                 lustre-iokit/mds-survey/Makefile
577                 lustre-iokit/ior-survey/Makefile
578                 lustre-iokit/stats-collect/Makefile
579         )
580 ])
581
582 #
583 # LB_CONFIG_SERVERS
584 #
585 AC_DEFUN([LB_CONFIG_SERVERS],
586 [
587 AC_ARG_ENABLE([server],
588         AC_HELP_STRING([--disable-server],
589                         [disable Lustre server support]),
590         [AS_IF([test x$enable_server != xyes -a x$enable_server != xno],
591                 [AC_MSG_ERROR([server valid options are "yes" or "no"])])
592         AS_IF([test x$enable_server = xyes -a x$enable_dist = xyes],
593                 [AC_MSG_ERROR([--enable-server cannot be used with --enable-dist])])
594         ],
595         [AS_IF([test x$enable_dist = xyes],
596                      [enable_server=no],
597                      [enable_server=maybe])
598         ]
599 )
600
601 # There are at least two good reasons why we should really run
602 # LB_CONFIG_MODULES elsewhere before the call to LB_CONFIG_SERVERS:
603 # LB_CONFIG_MODULES needs to be run for client support even when
604 # servers are disabled, and because module support is actually a
605 # prerequisite of server support.  However, some things under
606 # LB_CONFIG_MODULES need us to already have checked for --disable-server,
607 # before running, so until LB_CONFIG_MODULES can be reorganized, we
608 # call it here.
609 LB_CONFIG_MODULES
610 AS_IF([test x$enable_modules = xno],[enable_server=no])
611 LB_CONFIG_LDISKFS
612 LB_CONFIG_ZFS
613
614 # If no backends were configured, and the user did not explicitly
615 # require servers to be enabled, we just disable servers.
616 AS_IF([test x$enable_ldiskfs = xno -a x$enable_zfs = xno],
617         [AS_CASE([$enable_server],
618                 [maybe], [enable_server=no],
619                 [yes], [AC_MSG_ERROR([cannot enable servers, no backends were configured])])
620         ],
621         [AS_IF([test x$enable_server = xmaybe], [enable_server=yes])]
622 )
623
624 AC_MSG_CHECKING([whether to build Lustre server support])
625 AC_MSG_RESULT([$enable_server])
626 AS_IF([test x$enable_server = xyes],
627         [AC_DEFINE(HAVE_SERVER_SUPPORT, 1, [support server])]
628 )
629 ])
630
631 #
632 # LB_CONFIGURE
633 #
634 # main configure steps
635 #
636 AC_DEFUN([LB_CONFIGURE],
637 [LB_CANONICAL_SYSTEM
638
639 LB_CONFIG_DIST
640
641 LB_DOWNSTREAM_RELEASE
642 LB_USES_DPKG
643 LB_BUILDID
644
645 LB_LIBCFS_DIR
646
647 LB_INCLUDE_RULES
648
649 LB_PATH_DEFAULTS
650
651 LB_PROG_CC
652
653 LC_OSD_ADDON
654
655 LB_CONFIG_DOCS
656 LB_CONFIG_UTILS
657 LB_CONFIG_TESTS
658 LC_CONFIG_CLIENT
659 LB_CONFIG_SERVERS
660
661 # two macros for cmd3
662 m4_ifdef([LC_CONFIG_SPLIT], [LC_CONFIG_SPLIT])
663 LN_CONFIG_CDEBUG
664 LC_QUOTA
665
666 LN_CONFIG_USERSPACE
667
668 LB_PATH_LIBSYSIO
669 LB_PATH_SNMP
670 LB_PATH_LUSTREIOKIT
671
672 LB_DEFINE_E2FSPROGS_NAMES
673
674 LC_CONFIG_LIBLUSTRE
675 LIBCFS_CONFIGURE
676 LN_CONFIGURE
677
678 LC_CONFIGURE
679
680 if test "$SNMP_DIST_SUBDIR" ; then
681         LS_CONFIGURE
682 fi
683
684
685 LB_CONDITIONALS
686 LB_CONFIG_HEADERS
687
688 LIBCFS_CONFIG_FILES
689 LB_CONFIG_FILES
690 LN_CONFIG_FILES
691 LC_CONFIG_FILES
692 if test "$SNMP_DIST_SUBDIR" ; then
693         LS_CONFIG_FILES
694 fi
695
696 AC_SUBST(ac_configure_args)
697
698 MOSTLYCLEANFILES='.*.cmd .*.flags *.o *.ko *.mod.c .depend .*.1.* Modules.symvers Module.symvers'
699 AC_SUBST(MOSTLYCLEANFILES)
700
701 AC_OUTPUT
702
703 cat <<_ACEOF
704
705 CC:            $CC
706 LD:            $LD
707 CPPFLAGS:      $CPPFLAGS
708 LLCPPFLAGS:    $LLCPPFLAGS
709 CFLAGS:        $CFLAGS
710 EXTRA_KCFLAGS: $EXTRA_KCFLAGS
711 LLCFLAGS:      $LLCFLAGS
712
713 Type 'make' to build Lustre.
714 _ACEOF
715 ])