X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=autoMakefile.am;h=d40970fa7ba5144105f03d27da556eb68439fccd;hp=884b636b2c633d7ab5abf8f57c5100261962ccc8;hb=a296e9433919a6d709ae7826ecc5310d9e2d1365;hpb=2ec4f8cc2c890edcd2199c92113438c8584b78b7 diff --git a/autoMakefile.am b/autoMakefile.am index 884b636..d40970f 100644 --- a/autoMakefile.am +++ b/autoMakefile.am @@ -1,57 +1,60 @@ -SUBDIRS := . build portals lustre +SUBDIRS := @LDISKFS_SUBDIR@ @SPL_SUBDIR@ @ZFS_SUBDIR@ . @LIBSYSIO_SUBDIR@ @SNMP_SUBDIR@ @LUSTREIOKIT_SUBDIR@ @LIBCFS_SUBDIR@ lnet lustre +DIST_SUBDIRS := @LDISKFS_DIST_SUBDIR@ @SNMP_DIST_SUBDIR@ libsysio lustre-iokit @LIBCFS_SUBDIR@ lnet lustre +SOURCES_SUBDIRS := @LDISKFS_SUBDIR@ @LIBCFS_SUBDIR@ lnet lustre +RPM_SUBDIRS := @LDISKFS_SUBDIR@ @LUSTREIOKIT_SUBDIR@ +MODULE_SYMVERS_DEPS = module-symvers -# these empty rules are needed so that automake doesn't add its own -# recursive rules -etags-recursive: +@TESTS_TRUE@BUILD_TESTS = true +@TESTS_FALSE@BUILD_TESTS = false -ctags-recursive: +include build/autoMakefile.am.toplevel -tags-recursive: +EXTRA_DIST += config.h.in -TAGS: - -tags: - rm -f $(top_srcdir)/TAGS - ETAGSF=`etags --version | grep -iq exuberant && \ - echo "-I __initdata,__exitdata,EXPORT_SYMBOL"`; \ - find $(top_srcdir) -name '*.[hc]' | xargs etags $$ETAGSF -a - - rm -f $(top_srcdir)/tags - CTAGSF=`ctags --version | grep -iq exuberant && \ - echo "-I __initdata,__exitdata,EXPORT_SYMBOL"`; \ - find $(top_srcdir) -name '*.[hc]' | xargs ctags $$CTAGSF -a - -if MODULES -all-am: modules - -all-sources: - $(MAKE) sources -C portals - $(MAKE) sources -C lustre - -if !LINUX25 -DEP = dep -dep: .depend - -.depend: all-sources - $(MAKE) $(ARCH_UM) CC="$(CC)" -C $(LINUX_OBJ) \ - -f $(PWD)/build/Makefile LUSTRE_LINUX_CONFIG=$(LINUX_CONFIG) \ - -o scripts -o include/config/MARKER _sfdep_$(PWD) \ - _FASTDEP_ALL_SUB_DIRS="$(PWD)" - -CLEANFILES = .depend +if USES_DPKG +EXTRA_DIST += debian/* endif -modules: $(DEP) all-sources - $(MAKE) $(ARCH_UM) CC="$(CC)" -C $(LINUX_OBJ) \ - -f $(PWD)/build/Makefile LUSTRE_LINUX_CONFIG=$(LINUX_CONFIG) \ - $(MODULE_TARGET)=$(PWD) -o tmp_include_depends -o scripts -o \ - include/config/MARKER $@ - -endif # MODULES - -dist-hook: - find $(distdir) -name .deps | xargs rm -rf - find $(distdir) -name CVS | xargs rm -rf - -rpms: dist Makefile - rpmbuild -ta $(distdir).tar.gz +module-symvers-ldiskfs: +if LDISKFS_ENABLED + @if [ -f @LDISKFS_DIR@/@SYMVERFILE@ ]; then \ + cat @LDISKFS_DIR@/@SYMVERFILE@ >>@SYMVERFILE@; \ + elif [ -f @LDISKFS_DIR@/ldiskfs/@SYMVERFILE@ ]; then \ + cat @LDISKFS_DIR@/ldiskfs/@SYMVERFILE@ >>@SYMVERFILE@; \ + else \ + echo -e "\n" \ + "*** Missing ldiskfs symbols. Ensure you have built ldiskfs:\n"\ + "*** - @LDISKFS_OBJ@/ldiskfs/@SYMVERFILE@\n"; \ + exit 1; \ + fi +endif # LDISKFS_ENABLED + +module-symvers: module-symvers-ldiskfs + +CSTK=/tmp/checkstack +CSTKO=/tmp/checkstack.orig + +checkstack: + [ -f ${CSTK} -a ! -s ${CSTKO} ] && mv -f ${CSTK} ${CSTKO} || true + { for MOD in $$(find . -name "*.ko"); do \ + objdump -d $$MOD | perl build/checkstack.pl; \ + done } | grep -v " bug " | sort -nr | uniq > ${CSTK} + [ -f ${CSTKO} ] && ! diff -u ${CSTKO} ${CSTK} || head -30 ${CSTK} + +checkstack-update: + [ -f ${CSTK} ] && mv -f ${CSTK} ${CSTKO} + +checkstack-clean: + rm -f ${CSTK} ${CSTKO} + +module-dist-hook: + if [ -d CVS -o -d .git ]; then \ + perl lustre/scripts/make_META.pl > $(distdir)/META; \ + cp $(distdir)/META $(distdir)/ldiskfs/META; \ + elif [ -f META ]; then \ + cp META $(distdir)/META; \ + cp $(distdir)/META $(distdir)/ldiskfs/META; \ + else \ + echo -e "I have no idea how to create a META file in $(distdir).\nPlease file a bug at http://bugzilla.lustre.org/"; \ + exit 1; \ + fi