2 top_srcdir = @top_srcdir@
13 @RESIZER_CMT@RESIZE_DIR= resize
14 @DEBUGFS_CMT@DEBUGFS_DIR= debugfs
15 @UUID_CMT@UUID_LIB_SUBDIR= lib/uuid
16 @BLKID_CMT@BLKID_LIB_SUBDIR= lib/blkid
17 @E2SCRUB_CMT@E2SCRUB_DIR= scrub
18 @ALL_CMT@SUPPORT_LIB_SUBDIR= lib/support
19 @ALL_CMT@E2P_LIB_SUBDIR= lib/e2p
20 @ALL_CMT@EXT2FS_LIB_SUBDIR= lib/ext2fs
22 LIB_SUBDIRS=lib/et lib/ss $(E2P_LIB_SUBDIR) $(UUID_LIB_SUBDIR) \
23 $(BLKID_LIB_SUBDIR) $(SUPPORT_LIB_SUBDIR) $(EXT2FS_LIB_SUBDIR)
25 PROG_SUBDIRS=e2fsck $(DEBUGFS_DIR) misc $(RESIZE_DIR) tests/progs \
26 tests/fuzz po $(E2SCRUB_DIR)
28 SUBDIRS=util $(LIB_SUBDIRS) $(PROG_SUBDIRS) tests
30 SUBS= util/subst.conf lib/config.h $(top_builddir)/lib/dirpaths.h \
31 lib/ext2fs/ext2_types.h lib/blkid/blkid_types.h lib/uuid/uuid_types.h
37 @ALL_CMT@ $(MAKE) progs
38 @ALL_CMT@ $(MAKE) docs
42 @ALL_CMT@ $(MAKE) static-progs
44 subs: $(DEP_SUBSTITUTE)
45 @for i in $(SUBS) ; do if test -d `dirname $$i` ; \
46 then $(MAKE) $$i || exit $$? ; fi ; done
47 @(if test -d lib/et ; then cd lib/et && $(MAKE) compile_et; fi)
48 @(if test -d lib/ext2fs ; then cd lib/ext2fs && $(MAKE) ext2_err.h; fi)
49 @(if test -d lib/support ; then cd lib/support && $(MAKE) prof_err.h; fi)
51 progs: all-progs-recursive
52 static-progs: all-static-progs-recursive
53 libs: all-libs-recursive
54 all-progs-recursive all-libs-recursive:: subs
60 -@test -d doc && cd doc && $(MAKE) libext2fs.info
63 -@test -d doc && cd doc && $(MAKE) install-doc-libs
66 -@test -d doc && cd doc && $(MAKE) uninstall-doc-libs
69 -@test -d doc && cd doc && $(MAKE) clean
72 -test -d doc && cd doc && $(MAKE) distclean
74 install: subs all-libs-recursive install-progs-recursive \
75 install-shlibs-libs-recursive install-doc-libs
76 @SUBSET_CMT@ $(MAKE) install-libs
78 install-strip: subs all-libs-recursive install-strip-progs-recursive \
79 install-shlibs-strip-libs-recursive install-doc-libs
81 uninstall: uninstall-progs-recursive uninstall-shlibs-libs-recursive uninstall-doc-libs
83 install-libs: install-libs-recursive
85 uninstall-libs: uninstall-libs-recursive
87 coverage.txt: coverage.txt-recursive
91 TAGS clean-recursive distclean-recursive depend-recursive fullcheck-recursive \
92 check-recursive mostlyclean-recursive realclean-recursive \
93 coverage.txt-recursive:
94 @for subdir in $(SUBDIRS); do \
95 if test -d $$subdir ; then \
96 target=`echo $@|$(SED) 's/-recursive//'`; \
97 echo making $$target in $$subdir; \
98 (cd $$subdir && $(MAKE) $$target) || exit 1; \
102 all-progs-recursive install-progs-recursive install-strip-progs-recursive \
103 uninstall-progs-recursive coverage.txt-progs-recursive:: all-libs-recursive
106 @ALL_CMT@all-progs-recursive all-static-progs-recursive install-progs-recursive \
107 @ALL_CMT@ install-strip-progs-recursive uninstall-progs-recursive \
108 @ALL_CMT@ coverage.txt-progs-recursive:: all-libs-recursive
109 @ALL_CMT@ @for subdir in $(PROG_SUBDIRS); do \
110 @ALL_CMT@ if test -d $$subdir ; then \
111 @ALL_CMT@ target=`echo $@|$(SED) 's/-progs-recursive//'`; \
112 @ALL_CMT@ echo making $$target in $$subdir; \
113 @ALL_CMT@ (cd $$subdir && $(MAKE) $$target) || exit 1; \
117 all-libs-recursive install-libs-recursive install-strip-libs-recursive \
118 uninstall-libs-recursive install-shlibs-libs-recursive \
119 install-shlibs-strip-libs-recursive uninstall-shlibs-libs-recursive \
120 coverage.txt-libs-recursive::
121 @for subdir in $(LIB_SUBDIRS); do \
122 if test -d $$subdir ; then \
123 target=`echo $@|$(SED) 's/-libs-recursive//'`; \
124 echo making $$target in $$subdir; \
125 (cd $$subdir && $(MAKE) $$target) || exit 1; \
129 mostlyclean: mostlyclean-recursive mostlyclean-local
131 clean:: clean-recursive clean-local clean-doc
134 distclean: distclean-doc distclean-recursive
135 $(RM) -rf autom4te.cache ext2ed/Makefile po/stamp-po \
136 asm_types.h config.log public_config.h parse-types.log
137 $(MAKE) distclean-local
139 realclean: realclean-recursive realclean-local
141 depend:: depend-recursive
143 lib/ext2fs/ext2_types.h: $(DEP_SUBSTITUTE) asm_types.h \
144 $(srcdir)/lib/ext2fs/ext2_types.h.in
145 cd $(top_builddir); CONFIG_FILES=./lib/ext2fs/ext2_types.h ./config.status
147 lib/blkid/blkid_types.h: $(DEP_SUBSTITUTE) asm_types.h \
148 $(srcdir)/lib/blkid/blkid_types.h.in
149 cd $(top_builddir); CONFIG_FILES=./lib/blkid/blkid_types.h ./config.status
151 lib/uuid/uuid_types.h: $(DEP_SUBSTITUTE) asm_types.h \
152 $(srcdir)/lib/uuid/uuid_types.h.in
153 cd $(top_builddir); CONFIG_FILES=./lib/uuid/uuid_types.h ./config.status
156 $(RM) -f \#* *~ *.orig core MAKELOG
158 clean-local: mostlyclean-local
160 distclean-local: clean-local
161 $(RM) -f $(SUBS) $(SUBST_CONF) \
162 config.status config.log config.cache MCONFIG Makefile \
163 $(srcdir)/TAGS $(srcdir)/Makefile.in.old
165 realclean-local: distclean-local
168 check:: all check-recursive
170 fullcheck:: all fullcheck-recursive