2 top_srcdir = @top_srcdir@
12 @RESIZER_CMT@RESIZE_DIR= resize
13 @DEBUGFS_CMT@DEBUGFS_DIR= debugfs
14 @UUID_CMT@UUID_LIB_SUBDIR= lib/uuid
15 @BLKID_CMT@BLKID_LIB_SUBDIR= lib/blkid
16 QUOTA_LIB_SUBDIR= lib/quota
18 LIB_SUBDIRS=lib/et lib/ss lib/e2p $(UUID_LIB_SUBDIR) $(BLKID_LIB_SUBDIR) $(QUOTA_LIB_SUBDIR) lib/ext2fs intl
19 PROG_SUBDIRS=e2fsck $(DEBUGFS_DIR) misc $(RESIZE_DIR) tests/progs po
20 SUBDIRS=util $(LIB_SUBDIRS) $(PROG_SUBDIRS) tests
22 SUBS= util/subst.conf lib/config.h lib/dirpaths.h \
23 lib/ext2fs/ext2_types.h lib/blkid/blkid_types.h lib/uuid/uuid_types.h
32 subs: $(DEP_SUBSTITUTE)
33 @for i in $(SUBS) ; do if test -d `dirname $$i` ; \
34 then $(MAKE) $$i || exit $$? ; fi ; done
35 @(if test -d lib/et ; then cd lib/et && $(MAKE) compile_et; fi)
36 @(if test -d lib/ext2fs ; then cd lib/ext2fs && $(MAKE) ext2_err.h; fi)
38 progs: all-progs-recursive
39 libs: all-libs-recursive
40 all-progs-recursive all-libs-recursive: subs
42 e2fsprogs.spec: $(DEP_SUBSTITUTE) e2fsprogs.spec.in
43 cd $(top_builddir); CONFIG_FILES=./e2fsprogs.spec ./config.status
49 -@test -d doc && cd doc && $(MAKE) libext2fs.info
52 -@test -d doc && cd doc && $(MAKE) install-doc-libs
55 -@test -d doc && cd doc && $(MAKE) uninstall-doc-libs
58 -@test -d doc && cd doc && $(MAKE) clean
61 -test -d doc && cd doc && $(MAKE) distclean
63 install: subs all-libs-recursive install-progs-recursive \
64 install-shlibs-libs-recursive install-doc-libs
65 if test ! -d e2fsck && test ! -d debugfs && test ! -d misc && test ! -d ext2ed ; then $(MAKE) install-libs ; fi
67 install-strip: subs all-libs-recursive install-strip-progs-recursive \
68 install-shlibs-strip-libs-recursive install-doc-libs
70 uninstall: uninstall-progs-recursive uninstall-shlibs-libs-recursive uninstall-doc-libs
72 install-libs: install-libs-recursive
74 uninstall-libs: uninstall-libs-recursive
76 coverage.txt: coverage.txt-recursive
80 TAGS clean-recursive distclean-recursive depend-recursive check-recursive \
81 mostlyclean-recursive realclean-recursive coverage.txt-recursive:
82 @for subdir in $(SUBDIRS); do \
83 if test -d $$subdir ; then \
84 target=`echo $@|$(SED) 's/-recursive//'`; \
85 echo making $$target in $$subdir; \
86 (cd $$subdir && $(MAKE) $$target) || exit 1; \
90 all-progs-recursive install-progs-recursive install-strip-progs-recursive \
91 uninstall-progs-recursive coverage.txt-progs-recursive: all-libs-recursive
92 @for subdir in $(PROG_SUBDIRS); do \
93 if test -d $$subdir ; then \
94 target=`echo $@|$(SED) 's/-progs-recursive//'`; \
95 echo making $$target in $$subdir; \
96 (cd $$subdir && $(MAKE) $$target) || exit 1; \
100 all-libs-recursive install-libs-recursive install-strip-libs-recursive \
101 uninstall-libs-recursive install-shlibs-libs-recursive \
102 install-shlibs-strip-libs-recursive uninstall-shlibs-libs-recursive \
103 coverage.txt-libs-recursive:
104 @for subdir in $(LIB_SUBDIRS); do \
105 if test -d $$subdir ; then \
106 target=`echo $@|$(SED) 's/-libs-recursive//'`; \
107 echo making $$target in $$subdir; \
108 (cd $$subdir && $(MAKE) $$target) || exit 1; \
112 mostlyclean: mostlyclean-recursive mostlyclean-local
114 clean:: clean-recursive clean-local clean-doc
117 distclean: distclean-doc distclean-recursive
118 $(RM) -rf autom4te.cache e2fsprogs.spec ext2ed/Makefile po/stamp-po
119 $(MAKE) distclean-local
121 realclean: realclean-recursive realclean-local
123 depend:: depend-recursive
125 lib/ext2fs/ext2_types.h: $(DEP_SUBSTITUTE) asm_types.h \
126 $(srcdir)/lib/ext2fs/ext2_types.h.in
127 cd $(top_builddir); CONFIG_FILES=./lib/ext2fs/ext2_types.h ./config.status
129 lib/blkid/blkid_types.h: $(DEP_SUBSTITUTE) asm_types.h \
130 $(srcdir)/lib/blkid/blkid_types.h.in
131 cd $(top_builddir); CONFIG_FILES=./lib/blkid/blkid_types.h ./config.status
133 lib/uuid/uuid_types.h: $(DEP_SUBSTITUTE) asm_types.h \
134 $(srcdir)/lib/uuid/uuid_types.h.in
135 cd $(top_builddir); CONFIG_FILES=./lib/uuid/uuid_types.h ./config.status
138 $(RM) -f \#* *~ *.orig core MAKELOG
140 clean-local: mostlyclean-local
142 distclean-local: clean-local
143 $(RM) -f $(SUBS) $(SUBST_CONF) \
144 config.status config.log config.cache MCONFIG Makefile \
145 $(srcdir)/TAGS $(srcdir)/Makefile.in.old
147 realclean-local: distclean-local
150 check:: all check-recursive