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 SUPPORT_LIB_SUBDIR= lib/support
18 LIB_SUBDIRS=lib/et lib/ss lib/e2p $(UUID_LIB_SUBDIR) $(BLKID_LIB_SUBDIR) $(SUPPORT_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 $(top_builddir)/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)
37 @(if test -d lib/support ; then cd lib/support && $(MAKE) prof_err.h; fi)
39 progs: all-progs-recursive
40 libs: all-libs-recursive
41 all-progs-recursive all-libs-recursive: subs
43 e2fsprogs.spec: $(DEP_SUBSTITUTE) e2fsprogs.spec.in
44 cd $(top_builddir); CONFIG_FILES=./e2fsprogs.spec ./config.status
50 -@test -d doc && cd doc && $(MAKE) libext2fs.info
53 -@test -d doc && cd doc && $(MAKE) install-doc-libs
56 -@test -d doc && cd doc && $(MAKE) uninstall-doc-libs
59 -@test -d doc && cd doc && $(MAKE) clean
62 -test -d doc && cd doc && $(MAKE) distclean
64 install: subs all-libs-recursive install-progs-recursive \
65 install-shlibs-libs-recursive install-doc-libs
66 if test ! -d e2fsck && test ! -d debugfs && test ! -d misc && test ! -d ext2ed ; then $(MAKE) install-libs ; fi
68 install-strip: subs all-libs-recursive install-strip-progs-recursive \
69 install-shlibs-strip-libs-recursive install-doc-libs
71 uninstall: uninstall-progs-recursive uninstall-shlibs-libs-recursive uninstall-doc-libs
73 install-libs: install-libs-recursive
75 uninstall-libs: uninstall-libs-recursive
77 coverage.txt: coverage.txt-recursive
81 TAGS clean-recursive distclean-recursive depend-recursive fullcheck-recursive \
82 check-recursive mostlyclean-recursive realclean-recursive \
83 coverage.txt-recursive:
84 @for subdir in $(SUBDIRS); do \
85 if test -d $$subdir ; then \
86 target=`echo $@|$(SED) 's/-recursive//'`; \
87 echo making $$target in $$subdir; \
88 (cd $$subdir && $(MAKE) $$target) || exit 1; \
92 all-progs-recursive install-progs-recursive install-strip-progs-recursive \
93 uninstall-progs-recursive coverage.txt-progs-recursive: all-libs-recursive
94 @for subdir in $(PROG_SUBDIRS); do \
95 if test -d $$subdir ; then \
96 target=`echo $@|$(SED) 's/-progs-recursive//'`; \
97 echo making $$target in $$subdir; \
98 (cd $$subdir && $(MAKE) $$target) || exit 1; \
102 all-libs-recursive install-libs-recursive install-strip-libs-recursive \
103 uninstall-libs-recursive install-shlibs-libs-recursive \
104 install-shlibs-strip-libs-recursive uninstall-shlibs-libs-recursive \
105 coverage.txt-libs-recursive:
106 @for subdir in $(LIB_SUBDIRS); do \
107 if test -d $$subdir ; then \
108 target=`echo $@|$(SED) 's/-libs-recursive//'`; \
109 echo making $$target in $$subdir; \
110 (cd $$subdir && $(MAKE) $$target) || exit 1; \
114 mostlyclean: mostlyclean-recursive mostlyclean-local
116 clean:: clean-recursive clean-local clean-doc
119 distclean: distclean-doc distclean-recursive
120 $(RM) -rf autom4te.cache e2fsprogs.spec ext2ed/Makefile po/stamp-po \
121 asm_types.h config.log public_config.h parse-types.log
122 $(MAKE) distclean-local
124 realclean: realclean-recursive realclean-local
126 depend:: depend-recursive
128 lib/ext2fs/ext2_types.h: $(DEP_SUBSTITUTE) asm_types.h \
129 $(srcdir)/lib/ext2fs/ext2_types.h.in
130 cd $(top_builddir); CONFIG_FILES=./lib/ext2fs/ext2_types.h ./config.status
132 lib/blkid/blkid_types.h: $(DEP_SUBSTITUTE) asm_types.h \
133 $(srcdir)/lib/blkid/blkid_types.h.in
134 cd $(top_builddir); CONFIG_FILES=./lib/blkid/blkid_types.h ./config.status
136 lib/uuid/uuid_types.h: $(DEP_SUBSTITUTE) asm_types.h \
137 $(srcdir)/lib/uuid/uuid_types.h.in
138 cd $(top_builddir); CONFIG_FILES=./lib/uuid/uuid_types.h ./config.status
141 $(RM) -f \#* *~ *.orig core MAKELOG
143 clean-local: mostlyclean-local
145 distclean-local: clean-local
146 $(RM) -f $(SUBS) $(SUBST_CONF) \
147 config.status config.log config.cache MCONFIG Makefile \
148 $(srcdir)/TAGS $(srcdir)/Makefile.in.old
150 realclean-local: distclean-local
153 check:: all check-recursive
155 fullcheck:: all fullcheck-recursive