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 rpm: e2fsprogs-RHEL-6.spec e2fsprogs-SUSE_LINUX-11+.spec
66 -@test -d doc && cd doc && $(MAKE) libext2fs.info
69 -@test -d doc && cd doc && $(MAKE) install-doc-libs
72 -@test -d doc && cd doc && $(MAKE) uninstall-doc-libs
75 -@test -d doc && cd doc && $(MAKE) clean
78 -test -d doc && cd doc && $(MAKE) distclean
80 install: subs all-libs-recursive install-progs-recursive \
81 install-shlibs-libs-recursive install-doc-libs
82 @SUBSET_CMT@ $(MAKE) install-libs
84 install-strip: subs all-libs-recursive install-strip-progs-recursive \
85 install-shlibs-strip-libs-recursive install-doc-libs
87 uninstall: uninstall-progs-recursive uninstall-shlibs-libs-recursive uninstall-doc-libs
89 install-libs: install-libs-recursive
91 uninstall-libs: uninstall-libs-recursive
93 coverage.txt: coverage.txt-recursive
97 TAGS clean-recursive distclean-recursive depend-recursive fullcheck-recursive \
98 check-recursive mostlyclean-recursive realclean-recursive \
99 coverage.txt-recursive:
100 @for subdir in $(SUBDIRS); do \
101 if test -d $$subdir ; then \
102 target=`echo $@|$(SED) 's/-recursive//'`; \
103 echo making $$target in $$subdir; \
104 (cd $$subdir && $(MAKE) $$target) || exit 1; \
108 all-progs-recursive install-progs-recursive install-strip-progs-recursive \
109 uninstall-progs-recursive coverage.txt-progs-recursive:: all-libs-recursive
112 @ALL_CMT@all-progs-recursive all-static-progs-recursive install-progs-recursive \
113 @ALL_CMT@ install-strip-progs-recursive uninstall-progs-recursive \
114 @ALL_CMT@ coverage.txt-progs-recursive:: all-libs-recursive
115 @ALL_CMT@ @for subdir in $(PROG_SUBDIRS); do \
116 @ALL_CMT@ if test -d $$subdir ; then \
117 @ALL_CMT@ target=`echo $@|$(SED) 's/-progs-recursive//'`; \
118 @ALL_CMT@ echo making $$target in $$subdir; \
119 @ALL_CMT@ (cd $$subdir && $(MAKE) $$target) || exit 1; \
123 all-libs-recursive install-libs-recursive install-strip-libs-recursive \
124 uninstall-libs-recursive install-shlibs-libs-recursive \
125 install-shlibs-strip-libs-recursive uninstall-shlibs-libs-recursive \
126 coverage.txt-libs-recursive::
127 @for subdir in $(LIB_SUBDIRS); do \
128 if test -d $$subdir ; then \
129 target=`echo $@|$(SED) 's/-libs-recursive//'`; \
130 echo making $$target in $$subdir; \
131 (cd $$subdir && $(MAKE) $$target) || exit 1; \
135 mostlyclean: mostlyclean-recursive mostlyclean-local
137 clean:: clean-recursive clean-local clean-doc
140 distclean: distclean-doc distclean-recursive
141 $(RM) -rf autom4te.cache ext2ed/Makefile po/stamp-po \
142 asm_types.h config.log public_config.h parse-types.log
143 $(MAKE) distclean-local
145 realclean: realclean-recursive realclean-local
147 depend:: depend-recursive
149 lib/ext2fs/ext2_types.h: $(DEP_SUBSTITUTE) asm_types.h \
150 $(srcdir)/lib/ext2fs/ext2_types.h.in
151 cd $(top_builddir); CONFIG_FILES=./lib/ext2fs/ext2_types.h ./config.status
153 lib/blkid/blkid_types.h: $(DEP_SUBSTITUTE) asm_types.h \
154 $(srcdir)/lib/blkid/blkid_types.h.in
155 cd $(top_builddir); CONFIG_FILES=./lib/blkid/blkid_types.h ./config.status
157 lib/uuid/uuid_types.h: $(DEP_SUBSTITUTE) asm_types.h \
158 $(srcdir)/lib/uuid/uuid_types.h.in
159 cd $(top_builddir); CONFIG_FILES=./lib/uuid/uuid_types.h ./config.status
162 $(RM) -f \#* *~ *.orig core MAKELOG
164 clean-local: mostlyclean-local
166 distclean-local: clean-local
167 $(RM) -f $(SUBS) $(SUBST_CONF) \
168 config.status config.log config.cache MCONFIG Makefile \
169 $(srcdir)/TAGS $(srcdir)/Makefile.in.old
171 realclean-local: distclean-local
174 check:: all check-recursive
176 fullcheck:: all fullcheck-recursive