X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;ds=sidebyside;f=build%2FautoMakefile.am.toplevel;h=2f744b1ecd7336a5d3b37d2459a2bc13b0008f20;hb=294c39d488fcd95a523466c7726ff1b5a8327890;hp=ba08fc96d36ff291843db035c0e510daad2b9b7a;hpb=116e447c76389f6eefdb818a6be5fbe475bc8dd1;p=fs%2Flustre-release.git diff --git a/build/autoMakefile.am.toplevel b/build/autoMakefile.am.toplevel index ba08fc9..2f744b1 100644 --- a/build/autoMakefile.am.toplevel +++ b/build/autoMakefile.am.toplevel @@ -1,3 +1,4 @@ +# -*- Makefile -*- # This file is included by each package's toplevel autoMakefile[.am], # which must define SUBDIRS as a minimum. @@ -7,6 +8,15 @@ FIND_TAG_FILES_CMD = find $(top_srcdir) \ -path $(top_srcdir)/ldiskfs/ldiskfs/linux-stage -prune -false -o\ -type f -name '*.[hc]' +MAKEEACHSUBDIR = \ + for subdir in $(RPM_SUBDIRS) ; do \ + echo "Making $@ in $$subdir" ; \ + cd $$subdir ; \ + $(MAKE) $(AM_MAKEFLAGS) $@ ; \ + cd - ; \ + echo "Finished $@ in $$subdir" ; \ + done + # these empty rules are needed so that automake doesn't add its own # recursive rules etags-recursive: @@ -50,7 +60,7 @@ doxygen-%: build/doxyfile.% if MODULES sources: all-sources -all-sources: $(EXTRA_SOURCES) +all-sources: $(MODULE_SYMVERS_DEPS) for dir in $(SOURCES_SUBDIRS) ; do \ $(MAKE) sources -C $$dir || exit $$? ; \ done @@ -72,9 +82,9 @@ CLEANFILES = .depend endif # !LINUX25 modules: $(DEP) all-sources - $(MAKE) $(ARCH_UM) CC="$(CC)" -C $(LINUX_OBJ) \ + $(MAKE) $(ARCH_UM) CC="$(CC)" -C $(LINUX_OBJ) \ -f $(PWD)/build/Makefile LUSTRE_LINUX_CONFIG=$(LINUX_CONFIG) \ - LINUXINCLUDE='$(EXTRA_LNET_INCLUDE) -I$$(srctree)/arch/$$(SRCARCH)/include -Iinclude $$(if $$(KBUILD_SRC),-Iinclude2 -I$$(srctree)/include) -include include/linux/autoconf.h' \ + LINUXINCLUDE='$(EXTRA_LNET_INCLUDE) -I$$(srctree)/arch/$$(SRCARCH)/include -Iinclude $$(if $$(KBUILD_SRC),-Iinclude2 -I$$(srctree)/include) -include $(CONFIG_INCLUDE)' \ $(MODULE_TARGET)=$(PWD) -o tmp_include_depends -o scripts -o \ include/config/MARKER $@ endif # LINUX @@ -94,42 +104,53 @@ dist-hook: module-dist-hook EXTRA_DIST = @PACKAGE_TARNAME@.spec \ - build/Makefile build/autoMakefile.am.toplevel build/lbuild \ - build/Rules.in build/README.kernel-source \ + build/Makefile build/autoMakefile.am.toplevel build/lbuild* \ + build/Rules.in \ build/update_oldconfig \ build/autoconf/lustre-build-linux.m4 \ build/autoconf/lustre-build-darwin.m4 \ + build/autoconf/lustre-build-ldiskfs.m4 \ build/autoconf/lustre-build.m4 build/rdac_spec \ - build/mptlinux.spec.patch build/patches + build/mptlinux.spec.patch build/patches \ + build/funcs.sh build/find_linux_rpms build/exit_traps.sh rpms-real: @PACKAGE_TARNAME@.spec dist Makefile - CONFIGURE_ARGS=$$(echo $$(eval echo $(ac_configure_args)) | sed -re 's/--(en|dis)able-tests//'); \ - RPMARGS="--define \"configure_args $$CONFIGURE_ARGS\""; \ - if ! $(BUILD_TESTS); then \ + CONFIGURE_ARGS=$$(echo $$(eval echo $(ac_configure_args)) | \ + sed -re 's/--(en|dis)able-tests//'); \ + if [ -n "@LINUX@" ]; then \ + CONFIGURE_ARGS=$$(echo $$(eval echo $$CONFIGURE_ARGS) | \ + sed -re 's/--with-linux=[^ ][^ ]*//'); \ + RPMARGS="--define \"kdir @LINUX@\""; \ + CONFIGURE_ARGS=$$(echo $$(eval echo $$CONFIGURE_ARGS) | \ + sed -re 's/--with-linux-obj=[^ ][^ ]*//'); \ + if [ -n "@LINUX_OBJ@" -a "@LINUX_OBJ@" != "@LINUX@" ]; then \ + RPMARGS="$$RPMARGS --define \"kobjdir @LINUX_OBJ@\""; \ + fi; \ + fi; \ + CONFIGURE_ARGS=$$(echo $$(eval echo $$CONFIGURE_ARGS) | \ + sed -re 's/--with-release=[^ ][^ ]*//'); \ + RPMARGS="$$RPMARGS --define \"configure_args $$CONFIGURE_ARGS\""; \ + if [[ "X$(BUILD_TESTS)" = Xfalse ]]; then \ RPMARGS="$$RPMARGS --define \"build_lustre_tests 0\""; \ fi; \ + if [[ "X$(BUILD_SERVER)" = Xfalse ]]; then \ + RPMARGS="$$RPMARGS --define \"lustre_name lustre-client\""; \ + fi; \ + echo "Building Lustre RPM with $$RPMARGS"; \ eval rpmbuild $$RPMARGS -ta $(distdir).tar.gz srpm-real: @PACKAGE_TARNAME@.spec dist Makefile - if ! $(BUILD_TESTS); then \ + if [[ "X$(BUILD_TESTS)" = Xfalse ]]; then \ RPMARGS="--define \"build_lustre_tests 0\""; \ fi; \ eval rpmbuild $$RPMARGS -ta $(distdir).tar.gz rpms: - for subdir in $(RPM_SUBDIRS) ; do \ - echo "Making rpms in $$subdir"; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) rpms); \ - echo "Finished rpms in $$subdir"; \ - done; \ + @$(MAKEEACHSUBDIR) $(MAKE) $(AM_MAKEFLAGS) rpms-real srpm: - for subdir in $(RPM_SUBDIRS) ; do \ - echo "Making srpm in $$subdir"; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) srpm); \ - echo "Finished srpms in $$subdir"; \ - done; \ + @$(MAKEEACHSUBDIR) $(MAKE) $(AM_MAKEFLAGS) srpm-real # In the debs target, first make sure what's in the changelog reflects @@ -146,8 +167,9 @@ debs: cversion=$$(sed -ne '1s/^lustre (\(.*\)-[0-9][0-9]*).*$$/\1/p' debian/changelog); \ if [ "$$lversion" != "$$cversion" ]; then \ echo -e "1i\nlustre ($$lversion-1) unstable; urgency=low\n\n * Automated changelog entry update\n\n -- Brian J. Murrell $$(date -R)\n\n.\nwq" | ed debian/changelog; \ - fi - dpkg-buildpackage || { \ + fi; \ + rm -rf debs + dpkg-buildpackage -I.git -I\*.out[0-9]\* -I\*.swp || { \ rc=$${PIPESTATUS[0]}; \ [ $${rc} -gt 1 ] && exit $${rc}; \ exit 0; \ @@ -156,7 +178,7 @@ debs: version=$$(sed -ne '1s/^lustre (\(.*\)).*$$/\1/p' debian/changelog) && \ rm -rf debian/tmp/modules-deb && \ mkdir debian/tmp/modules-deb && \ - cd debian/tmp/modules-deb && \ + pushd debian/tmp/modules-deb && \ dpkg -x ../../../../lustre-source_$${version}_all.deb $$(pwd) && \ mkdir usr_src/ && \ tar -C usr_src/ -xjf usr/src/lustre.tar.bz2 && \ @@ -166,4 +188,9 @@ debs: ln -s /usr/share/modass/packages/ usr_share_modass/ && \ echo "lustre" > usr_share_modass/compliant.list && \ export MA_DIR=$$(pwd)/usr_share_modass && \ - m-a build $${KVERS:+-l $$KVERS} -i -u $$(pwd) lustre + KVERS=$${KVERS:-$(LINUXRELEASE)}; \ + m-a build $${KVERS:+-l $$KVERS} -i -u $$(pwd) lustre && \ + popd && \ + VER=$$(sed -ne '1s/^lustre (\(.*-[0-9][0-9]*\)).*$$/\1/p' debian/changelog); \ + mkdir -p debs && \ + mv ../liblustre_$${VER}_*.deb ../linux-patch-lustre_$${VER}_all.deb ../lustre-dev_$${VER}_*.deb ../lustre-source_$${VER}_all.deb ../lustre-tests_$${VER}_*.deb ../lustre-utils_$${VER}_*.deb ../lustre_$${VER}.dsc ../lustre_$${VER}_*.changes ../lustre_$${VER%-[0-9]*}.orig.tar.gz ../lustre_$${VER}.diff.gz ../lustre-client-modules-$${KVERS}_$${VER}_*.deb debs/