Whamcloud - gitweb
e2fsck: mark that we don't care about the return value of e2fsck_lookup()
[tools/e2fsprogs.git] / Makefile.in
index ab9e245..79b7116 100644 (file)
@@ -4,43 +4,79 @@ VPATH = @srcdir@
 top_builddir = .
 my_dir = .
 INSTALL = @INSTALL@
+MKDIR_P = @MKDIR_P@
 
 @MCONFIG@
 
-LIB_SUBDIRS=lib/et lib/ss lib/e2p lib/ext2fs lib/uuid # lib/finddev
-PROG_SUBDIRS=e2fsck debugfs misc resize tests/progs 
+% : %.sh
+
+@RESIZER_CMT@RESIZE_DIR= resize
+@DEBUGFS_CMT@DEBUGFS_DIR= debugfs
+@UUID_CMT@UUID_LIB_SUBDIR= lib/uuid
+@BLKID_CMT@BLKID_LIB_SUBDIR= lib/blkid
+@E2SCRUB_CMT@E2SCRUB_DIR= scrub
+@ALL_CMT@SUPPORT_LIB_SUBDIR= lib/support
+@ALL_CMT@E2P_LIB_SUBDIR= lib/e2p
+@ALL_CMT@EXT2FS_LIB_SUBDIR= lib/ext2fs
+
+LIB_SUBDIRS=lib/et lib/ss $(E2P_LIB_SUBDIR) $(UUID_LIB_SUBDIR) \
+       $(BLKID_LIB_SUBDIR) $(SUPPORT_LIB_SUBDIR) $(EXT2FS_LIB_SUBDIR)
+
+PROG_SUBDIRS=e2fsck $(DEBUGFS_DIR) misc $(RESIZE_DIR) tests/progs \
+       tests/fuzz po $(E2SCRUB_DIR)
+
 SUBDIRS=util $(LIB_SUBDIRS) $(PROG_SUBDIRS) tests
 
-SUBS= include/asm/types.h
+SUBS= util/subst.conf lib/config.h $(top_builddir)/lib/dirpaths.h \
+       lib/ext2fs/ext2_types.h lib/blkid/blkid_types.h lib/uuid/uuid_types.h
 
 TAR=tar
 
-all:: $(SUBS) 
+all:: subs
+       $(MAKE) libs
+@ALL_CMT@      $(MAKE) progs
+@ALL_CMT@      $(MAKE) docs
+
+all-static::
        $(MAKE) libs
-       $(MAKE) progs
-       $(MAKE) docs
+@ALL_CMT@      $(MAKE) static-progs
+
+subs: $(DEP_SUBSTITUTE)
+       @for i in $(SUBS) ; do if test -d `dirname $$i` ; \
+               then $(MAKE) $$i || exit $$? ; fi ; done
+       @(if test -d lib/et ; then cd lib/et && $(MAKE) compile_et; fi)
+       @(if test -d lib/ext2fs ; then cd lib/ext2fs && $(MAKE) ext2_err.h; fi)
+       @(if test -d lib/support ; then cd lib/support && $(MAKE) prof_err.h; fi)
+
+progs: all-progs-recursive
+static-progs: all-static-progs-recursive
+libs: all-libs-recursive
+all-progs-recursive all-libs-recursive:: subs
 
-progs: $(SUBS) all-progs-recursive
-libs: $(SUBS) all-libs-recursive
+rpm:
+       sh contrib/build-rpm
 
 docs:
-       cd doc && $(MAKE) libext2fs.info
+       -@test -d doc && cd doc && $(MAKE) libext2fs.info
 
 install-doc-libs:
-       cd doc && $(MAKE) install-doc-libs
+       -@test -d doc && cd doc && $(MAKE) install-doc-libs
 
 uninstall-doc-libs:
-       cd doc && $(MAKE) uninstall-doc-libs
+       -@test -d doc && cd doc && $(MAKE) uninstall-doc-libs
 
 clean-doc:
-       cd doc && $(MAKE) clean
+       -@test -d doc && cd doc && $(MAKE) clean
 
 distclean-doc:
-       cd doc && $(MAKE) distclean
+       -test -d doc && cd doc && $(MAKE) distclean
 
-install: all-libs-recursive install-progs-recursive \
-       install-shlibs-libs-recursive install-doc-libs
-#      export MANPATH=$(DESTDIR)$(mandir); $(srcdir)/install-utils/compile_manpages
+install: subs all-libs-recursive install-progs-recursive \
+  install-shlibs-libs-recursive install-doc-libs
+@SUBSET_CMT@   $(MAKE) install-libs
+
+install-strip: subs all-libs-recursive install-strip-progs-recursive \
+  install-shlibs-strip-libs-recursive install-doc-libs
 
 uninstall: uninstall-progs-recursive uninstall-shlibs-libs-recursive uninstall-doc-libs
 
@@ -48,27 +84,41 @@ install-libs: install-libs-recursive
 
 uninstall-libs: uninstall-libs-recursive
 
-TAGS clean-recursive distclean-recursive depend-recursive check-recursive \
-           mostlyclean-recursive realclean-recursive install-recursive:
-       for subdir in $(SUBDIRS); do \
-         if test -d $$subdir ; then \
-           target=`echo $@|$(SED) 's/-recursive//'`; \
-           echo making $$target in $$subdir; \
-           (cd $$subdir && $(MAKE) $$target) || exit 1; \
-         fi ; \
-       done
+coverage.txt: coverage.txt-recursive
 
-all-progs-recursive install-progs-recursive uninstall-progs-recursive:
-       for subdir in $(PROG_SUBDIRS); do \
+check-recursive: all
+
+TAGS clean-recursive distclean-recursive depend-recursive fullcheck-recursive \
+  check-recursive mostlyclean-recursive realclean-recursive \
+  coverage.txt-recursive:
+       @for subdir in $(SUBDIRS); do \
          if test -d $$subdir ; then \
-           target=`echo $@|$(SED) 's/-progs-recursive//'`; \
+           target=`echo $@|$(SED) 's/-recursive//'`; \
            echo making $$target in $$subdir; \
            (cd $$subdir && $(MAKE) $$target) || exit 1; \
          fi ; \
        done
 
-all-libs-recursive install-libs-recursive uninstall-libs-recursive install-shlibs-libs-recursive uninstall-shlibs-libs-recursive:
-       for subdir in $(LIB_SUBDIRS); do \
+all-progs-recursive install-progs-recursive install-strip-progs-recursive \
+  uninstall-progs-recursive coverage.txt-progs-recursive:: all-libs-recursive
+
+
+@ALL_CMT@all-progs-recursive all-static-progs-recursive install-progs-recursive \
+@ALL_CMT@  install-strip-progs-recursive uninstall-progs-recursive \
+@ALL_CMT@  coverage.txt-progs-recursive:: all-libs-recursive
+@ALL_CMT@      @for subdir in $(PROG_SUBDIRS); do \
+@ALL_CMT@        if test -d $$subdir ; then \
+@ALL_CMT@          target=`echo $@|$(SED) 's/-progs-recursive//'`; \
+@ALL_CMT@          echo making $$target in $$subdir; \
+@ALL_CMT@          (cd $$subdir && $(MAKE) $$target) || exit 1; \
+@ALL_CMT@        fi ; \
+@ALL_CMT@      done
+
+all-libs-recursive install-libs-recursive install-strip-libs-recursive \
+  uninstall-libs-recursive install-shlibs-libs-recursive \
+  install-shlibs-strip-libs-recursive uninstall-shlibs-libs-recursive \
+  coverage.txt-libs-recursive::
+       @for subdir in $(LIB_SUBDIRS); do \
          if test -d $$subdir ; then \
            target=`echo $@|$(SED) 's/-libs-recursive//'`; \
            echo making $$target in $$subdir; \
@@ -78,65 +128,43 @@ all-libs-recursive install-libs-recursive uninstall-libs-recursive install-shlib
 
 mostlyclean: mostlyclean-recursive mostlyclean-local
 
-clean: clean-recursive clean-local clean-doc
-       $(RM) -f $(SUBS)
+clean:: clean-recursive clean-local clean-doc
+       $(RM) -f $(SUBS) 
 
-distclean: distclean-doc distclean-recursive distclean-local 
+distclean: distclean-doc distclean-recursive
+       $(RM) -rf autom4te.cache ext2ed/Makefile po/stamp-po \
+               asm_types.h config.log public_config.h parse-types.log
+       $(MAKE) distclean-local 
 
 realclean: realclean-recursive realclean-local
 
 depend:: depend-recursive
 
-include/asm/types.h: $(DEP_SUBSTITUTE) $(srcdir)/include/asm/types.h.in
-       $(SUBSTITUTE) $(srcdir)/include/asm/types.h.in \
-       > include/asm/types.h
+lib/ext2fs/ext2_types.h: $(DEP_SUBSTITUTE) asm_types.h \
+               $(srcdir)/lib/ext2fs/ext2_types.h.in
+       cd $(top_builddir); CONFIG_FILES=./lib/ext2fs/ext2_types.h ./config.status
+
+lib/blkid/blkid_types.h: $(DEP_SUBSTITUTE) asm_types.h \
+               $(srcdir)/lib/blkid/blkid_types.h.in
+       cd $(top_builddir); CONFIG_FILES=./lib/blkid/blkid_types.h ./config.status
+
+lib/uuid/uuid_types.h: $(DEP_SUBSTITUTE) asm_types.h \
+               $(srcdir)/lib/uuid/uuid_types.h.in
+       cd $(top_builddir); CONFIG_FILES=./lib/uuid/uuid_types.h ./config.status
 
 mostlyclean-local:
-       $(RM) -f \#* *~ core MAKELOG 
+       $(RM) -f \#* *~ *.orig core MAKELOG 
 
 clean-local: mostlyclean-local
 
 distclean-local: clean-local
-       $(RM) -f include/asm/types.h $(SUBST_CONF) \
+       $(RM) -f $(SUBS) $(SUBST_CONF) \
                config.status config.log config.cache MCONFIG Makefile \
                $(srcdir)/TAGS $(srcdir)/Makefile.in.old
 
 realclean-local: distclean-local
        $(RM) -f configure
 
-check::        check-recursive
-
-distribution_tar_file:
-       $(RM) -rf /tmp/dest
-       $(MAKE) DESTDIR=/tmp/dest install
-       cp -r $(srcdir)/README $(srcdir)/install-utils /tmp/dest
-       $(RM) -rf /tmp/dest/install-utils/CVS /tmp/dest/install-utils/ChangeLog
-       cp $(srcdir)/INSTALL.@BINARY_TYPE@ /tmp/dest/INSTALL
-       (cd /tmp/dest && $(TAR) cf - . ) | gzip -9 \
-               > e2fsprogs-@E2FSPROGS_VERSION@-@BINARY_TYPE@.tar.gz
-
-SRCROOT = `echo e2fsprogs-@E2FSPROGS_VERSION@ | sed -e 's/-WIP//' \
-                       -e 's/pre-//' -e 's/-PLUS//'`
-
-$(srcdir)/.exclude-file:
-       a=$(SRCROOT); \
-       (cd $(srcdir)/.. && find e2fsprogs \( -name \*~ -o -name \*.orig \
-               -o -name CVS -o -name \*.rej -o -name Makefile.pq \
-               -o -name TAGS -o -name \*.old -o -name \*.gmo \
-               -o -name TODO -o -name changed-files -o -name .#\* \) \
-               -print) | sed -e "s/e2fsprogs/$$a/" > $(srcdir)/.exclude-file
-       echo "$(SRCROOT)/build" >> $(srcdir)/.exclude-file
-       echo "$(SRCROOT)/rpm.log" >> $(srcdir)/.exclude-file
-       echo "$(SRCROOT)/powerquest" >> $(srcdir)/.exclude-file
-       echo "$(SRCROOT)/.exclude-file" >> $(srcdir)/.exclude-file
-       echo "$(SRCROOT)/po/stamp-cat-id" >> $(srcdir)/.exclude-file
-       echo "$(SRCROOT)/po/cat-id-tbl.c" >> $(srcdir)/.exclude-file
-       echo $(SRCROOT)/e2fsprogs-@E2FSPROGS_VERSION@.tar.gz \
-               >> $(srcdir)/.exclude-file
-
-source_tar_file: $(srcdir)/.exclude-file
-       cd $(srcdir)/.. && a=$(SRCROOT); rm -f $$a ; ln -sf e2fsprogs $$a ; \
-               $(TAR) -c -h -v -f - \
-                       -X $$a/.exclude-file $$a | \
-               gzip -9 > e2fsprogs-@E2FSPROGS_VERSION@.tar.gz
-       rm -f $(srcdir)/.exclude-file
+check::        all check-recursive
+
+fullcheck:: all fullcheck-recursive