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
56 e2fsprogs-RHEL-6.spec: $(DEP_SUBSTITUTE) e2fsprogs-RHEL-6.spec.in
57 cd $(top_builddir); CONFIG_FILES=./e2fsprogs-RHEL-6.spec ./config.status
59 e2fsprogs-SUSE_LINUX-11+.spec: $(DEP_SUBSTITUTE) e2fsprogs-SUSE_LINUX-11+.spec.in
60 cd $(top_builddir); CONFIG_FILES=./e2fsprogs-SUSE_LINUX-11+.spec ./config.status
62 e2fsprogs-RHEL-7+.spec: $(DEP_SUBSTITUTE) e2fsprogs-RHEL-7+.spec.in
63 cd $(top_builddir); CONFIG_FILES=./e2fsprogs-RHEL-7+.spec ./config.status
65 rpm: e2fsprogs-RHEL-6.spec e2fsprogs-SUSE_LINUX-11+.spec e2fsprogs-RHEL-7+.spec
69 -@test -d doc && cd doc && $(MAKE) libext2fs.info
72 -@test -d doc && cd doc && $(MAKE) install-doc-libs
75 -@test -d doc && cd doc && $(MAKE) uninstall-doc-libs
78 -@test -d doc && cd doc && $(MAKE) clean
81 -test -d doc && cd doc && $(MAKE) distclean
83 install: subs all-libs-recursive install-progs-recursive \
84 install-shlibs-libs-recursive install-doc-libs
85 @SUBSET_CMT@ $(MAKE) install-libs
87 install-strip: subs all-libs-recursive install-strip-progs-recursive \
88 install-shlibs-strip-libs-recursive install-doc-libs
90 uninstall: uninstall-progs-recursive uninstall-shlibs-libs-recursive uninstall-doc-libs
92 install-libs: install-libs-recursive
94 uninstall-libs: uninstall-libs-recursive
96 coverage.txt: coverage.txt-recursive
100 TAGS clean-recursive distclean-recursive depend-recursive fullcheck-recursive \
101 check-recursive mostlyclean-recursive realclean-recursive \
102 coverage.txt-recursive:
103 @for subdir in $(SUBDIRS); do \
104 if test -d $$subdir ; then \
105 target=`echo $@|$(SED) 's/-recursive//'`; \
106 echo making $$target in $$subdir; \
107 (cd $$subdir && $(MAKE) $$target) || exit 1; \
111 all-progs-recursive install-progs-recursive install-strip-progs-recursive \
112 uninstall-progs-recursive coverage.txt-progs-recursive:: all-libs-recursive
115 @ALL_CMT@all-progs-recursive all-static-progs-recursive install-progs-recursive \
116 @ALL_CMT@ install-strip-progs-recursive uninstall-progs-recursive \
117 @ALL_CMT@ coverage.txt-progs-recursive:: all-libs-recursive
118 @ALL_CMT@ @for subdir in $(PROG_SUBDIRS); do \
119 @ALL_CMT@ if test -d $$subdir ; then \
120 @ALL_CMT@ target=`echo $@|$(SED) 's/-progs-recursive//'`; \
121 @ALL_CMT@ echo making $$target in $$subdir; \
122 @ALL_CMT@ (cd $$subdir && $(MAKE) $$target) || exit 1; \
126 all-libs-recursive install-libs-recursive install-strip-libs-recursive \
127 uninstall-libs-recursive install-shlibs-libs-recursive \
128 install-shlibs-strip-libs-recursive uninstall-shlibs-libs-recursive \
129 coverage.txt-libs-recursive::
130 @for subdir in $(LIB_SUBDIRS); do \
131 if test -d $$subdir ; then \
132 target=`echo $@|$(SED) 's/-libs-recursive//'`; \
133 echo making $$target in $$subdir; \
134 (cd $$subdir && $(MAKE) $$target) || exit 1; \
138 mostlyclean: mostlyclean-recursive mostlyclean-local
140 clean:: clean-recursive clean-local clean-doc
143 distclean: distclean-doc distclean-recursive
144 $(RM) -rf autom4te.cache ext2ed/Makefile po/stamp-po \
145 asm_types.h config.log public_config.h parse-types.log
146 $(MAKE) distclean-local
148 realclean: realclean-recursive realclean-local
150 depend:: depend-recursive
152 lib/ext2fs/ext2_types.h: $(DEP_SUBSTITUTE) asm_types.h \
153 $(srcdir)/lib/ext2fs/ext2_types.h.in
154 cd $(top_builddir); CONFIG_FILES=./lib/ext2fs/ext2_types.h ./config.status
156 lib/blkid/blkid_types.h: $(DEP_SUBSTITUTE) asm_types.h \
157 $(srcdir)/lib/blkid/blkid_types.h.in
158 cd $(top_builddir); CONFIG_FILES=./lib/blkid/blkid_types.h ./config.status
160 lib/uuid/uuid_types.h: $(DEP_SUBSTITUTE) asm_types.h \
161 $(srcdir)/lib/uuid/uuid_types.h.in
162 cd $(top_builddir); CONFIG_FILES=./lib/uuid/uuid_types.h ./config.status
165 $(RM) -f \#* *~ *.orig core MAKELOG
167 clean-local: mostlyclean-local
169 distclean-local: clean-local
170 $(RM) -f $(SUBS) $(SUBST_CONF) \
171 config.status config.log config.cache MCONFIG Makefile \
172 $(srcdir)/TAGS $(srcdir)/Makefile.in.old
174 realclean-local: distclean-local
177 check:: all check-recursive
179 fullcheck:: all fullcheck-recursive