Whamcloud - gitweb
b=20226 rename osd to osd-ldiskfs
[fs/lustre-release.git] / lustre / autoMakefile.am
index 9b829bf..7183812 100644 (file)
@@ -1,70 +1,92 @@
-# Copyright (C) 2001  Cluster File Systems, Inc.
 #
-# This code is issued under the GNU General Public License.
-# See the file COPYING in this distribution
+# GPL HEADER START
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2 only,
+# as published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License version 2 for more details (a copy is included
+# in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU General Public License
+# version 2 along with this program; If not, see
+# http://www.sun.com/software/products/lustre/docs/GPLv2.pdf
+#
+# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+# CA 95054 USA or visit www.sun.com if you need additional information or
+# have any questions.
+#
+# GPL HEADER END
+#
+
+#
+# Copyright  2008 Sun Microsystems, Inc. All rights reserved
+# Use is subject to license terms.
+#
+
+#
+# This file is part of Lustre, http://www.lustre.org/
+# Lustre is a trademark of Sun Microsystems, Inc.
+#
 
 AUTOMAKE_OPTIONS = foreign
 
-SUBDIRS = . include portals ldiskfs lvfs obdclass lov ldlm ptlrpc      \
-       obdecho osc mdc mds obdfilter ost llite cobd ptlbd snapfs smfs \
-       liblustre doc utils tests conf scripts
+# also update lustre/autoconf/lustre-core.m4 AC_CONFIG_FILES
+ALWAYS_SUBDIRS := include lvfs obdclass ldlm ptlrpc osc lov obdecho \
+       mgc fid fld doc utils tests scripts autoconf contrib
 
-EXTRA_DIST = BUGS FDL Rules.in kernel_patches kernel-tests/Makefile    \
-       README.kernel-source
+SERVER_SUBDIRS := obdfilter ost mds mgs mdt cmm mdd osd-ldiskfs
 
-if MODULES
-all-am: modules
+CLIENT_SUBDIRS := mdc lmv llite lclient
 
-if !LINUX25
-DEP = dep
-dep: .depend
+QUOTA_SUBDIRS := quota
 
-.depend:
-       $(MAKE) $(ARCH_UM) -C $(LINUX) -f $(PWD)/kernel-tests/Makefile LUSTRE_LINUX_CONFIG=$(LINUX_CONFIG) -o scripts -o include/config/MARKER _sfdep_$(PWD) _FASTDEP_ALL_SUB_DIRS="$(PWD)"
-endif
+LIBLUSTRE_SUBDIRS := liblustre
+
+SUBDIRS := $(ALWAYS_SUBDIRS)
 
-if LDISKFS
-LDISKFS = ldiskfs-sources
-ldiskfs-sources:
-       $(MAKE) sources -C ldiskfs
+if SERVER
+SUBDIRS += $(SERVER_SUBDIRS)
 endif
 
-lvfs-sources:
-       $(MAKE) sources -C lvfs
+if CLIENT
+SUBDIRS += $(CLIENT_SUBDIRS)
+endif
 
-modules: lustre_build_version $(DEP) $(LDISKFS) lvfs-sources
-       $(MAKE) $(ARCH_UM) -C $(LINUX) -f $(PWD)/kernel-tests/Makefile LUSTRE_LINUX_CONFIG=$(LINUX_CONFIG) SUBDIRS=$(PWD) -o tmp_include_depends -o scripts -o include/config/MARKER $@
+SUBDIRS += $(QUOTA_SUBDIRS)
 
-lustre_build_version:
-       perl $(top_builddir)/scripts/version_tag.pl $(top_srcdir) $(top_builddir) > tmpver
-       echo "#define LUSTRE_RELEASE @RELEASE@" >> tmpver
-       cmp -s $(top_builddir)/include/linux/lustre_build_version.h tmpver \
-                2> /dev/null &&                                            \
-                $(RM) tmpver ||                                            \
-                mv tmpver $(top_builddir)/include/linux/lustre_build_version.h
+# this needs to be after the client subdirs
+if LIBLUSTRE
+if !CLIENT
+SUBDIRS += $(CLIENT_SUBDIRS)
+endif
+SUBDIRS += $(LIBLUSTRE_SUBDIRS)
+endif
 
-endif # MODULES
+DIST_SUBDIRS := $(ALWAYS_SUBDIRS) $(SERVER_SUBDIRS) $(CLIENT_SUBDIRS)  \
+       $(LIBLUSTRE_SUBDIRS) $(QUOTA_SUBDIRS)
 
-dist-hook:
-       find $(distdir) -name .deps | xargs rm -rf
-       find $(distdir) -name CVS | xargs rm -rf
+EXTRA_DIST = BUGS FDL kernel_patches
 
-rpms: dist Makefile
-       rpmbuild -ta $(distdir).tar.gz
+lvfs-sources:
+       $(MAKE) sources -C lvfs
+obdclass-sources:
+       $(MAKE) sources -C obdclass
 
-CSTK=/tmp/checkstack
-CSTKO=/tmp/checkstack.orig
+sources: $(LDISKFS) lvfs-sources obdclass-sources lustre_build_version
 
-checkstack:
-       [ -f ${CSTK} -a ! -s ${CSTKO} ] && mv ${CSTK} ${CSTKO} || true
-       for i in ${SUBDIRS} portals/knals/*; do                              \
-               MOD=$$i/`basename $$i`.o;                                    \
-               [ -f $$MOD ] && objdump -d $$MOD | perl tests/checkstack.pl; \
-       done | sort -nr > ${CSTK}
-       [ -f ${CSTKO} ] && ! diff -u ${CSTKO} ${CSTK} || head -30 ${CSTK}
+all-recursive: lustre_build_version
 
-checkstack-update:
-       [ -f ${CSTK} ] && mv ${CSTK} ${CSTKO}
+BUILD_VER_H=$(top_builddir)/lustre/include/lustre/lustre_build_version.h
 
-checkstack-clean:
-       rm -f ${CSTK} ${CSTKO}
+lustre_build_version:
+       perl $(top_builddir)/lustre/scripts/version_tag.pl $(top_srcdir) $(top_builddir) > tmpver
+       echo "#define LUSTRE_RELEASE @RELEASE@" >> tmpver
+       cmp -s $(BUILD_VER_H) tmpver > tmpdiff 2> /dev/null &&          \
+                $(RM) tmpver tmpdiff ||                                        \
+               mv -f tmpver $(BUILD_VER_H)