Whamcloud - gitweb
Fix UBSan when shifting (1LL << 63)
[tools/e2fsprogs.git] / Makefile.in
1 srcdir = @srcdir@
2 top_srcdir = @top_srcdir@
3 VPATH = @srcdir@
4 top_builddir = .
5 my_dir = .
6 INSTALL = @INSTALL@
7
8 @MCONFIG@
9
10 % : %.sh
11
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 @E2SCRUB_CMT@E2SCRUB_DIR= scrub
17 @ALL_CMT@SUPPORT_LIB_SUBDIR= lib/support
18 @ALL_CMT@E2P_LIB_SUBDIR= lib/e2p
19 @ALL_CMT@EXT2FS_LIB_SUBDIR= lib/ext2fs
20
21 LIB_SUBDIRS=lib/et lib/ss $(E2P_LIB_SUBDIR) $(UUID_LIB_SUBDIR) \
22         $(BLKID_LIB_SUBDIR) $(SUPPORT_LIB_SUBDIR) $(EXT2FS_LIB_SUBDIR) intl
23
24 PROG_SUBDIRS=e2fsck $(DEBUGFS_DIR) misc $(RESIZE_DIR) tests/progs po \
25         $(E2SCRUB_DIR)
26
27 SUBDIRS=util $(LIB_SUBDIRS) $(PROG_SUBDIRS) tests
28
29 SUBS= util/subst.conf lib/config.h $(top_builddir)/lib/dirpaths.h \
30         lib/ext2fs/ext2_types.h lib/blkid/blkid_types.h lib/uuid/uuid_types.h
31
32 TAR=tar
33
34 all:: subs
35         $(MAKE) libs
36 @ALL_CMT@       $(MAKE) progs
37 @ALL_CMT@       $(MAKE) docs
38
39 subs: $(DEP_SUBSTITUTE)
40         @for i in $(SUBS) ; do if test -d `dirname $$i` ; \
41                 then $(MAKE) $$i || exit $$? ; fi ; done
42         @(if test -d lib/et ; then cd lib/et && $(MAKE) compile_et; fi)
43         @(if test -d lib/ext2fs ; then cd lib/ext2fs && $(MAKE) ext2_err.h; fi)
44         @(if test -d lib/support ; then cd lib/support && $(MAKE) prof_err.h; fi)
45
46 progs: all-progs-recursive
47 libs: all-libs-recursive
48 all-progs-recursive all-libs-recursive:: subs
49
50 rpm:
51         sh contrib/build-rpm
52
53 docs:
54         -@test -d doc && cd doc && $(MAKE) libext2fs.info
55
56 install-doc-libs:
57         -@test -d doc && cd doc && $(MAKE) install-doc-libs
58
59 uninstall-doc-libs:
60         -@test -d doc && cd doc && $(MAKE) uninstall-doc-libs
61
62 clean-doc:
63         -@test -d doc && cd doc && $(MAKE) clean
64
65 distclean-doc:
66         -test -d doc && cd doc && $(MAKE) distclean
67
68 install: subs all-libs-recursive install-progs-recursive \
69   install-shlibs-libs-recursive install-doc-libs
70 @SUBSET_CMT@    $(MAKE) install-libs
71
72 install-strip: subs all-libs-recursive install-strip-progs-recursive \
73   install-shlibs-strip-libs-recursive install-doc-libs
74
75 uninstall: uninstall-progs-recursive uninstall-shlibs-libs-recursive uninstall-doc-libs
76
77 install-libs: install-libs-recursive
78
79 uninstall-libs: uninstall-libs-recursive
80
81 coverage.txt: coverage.txt-recursive
82
83 check-recursive: all
84
85 TAGS clean-recursive distclean-recursive depend-recursive fullcheck-recursive \
86   check-recursive mostlyclean-recursive realclean-recursive \
87   coverage.txt-recursive:
88         @for subdir in $(SUBDIRS); do \
89           if test -d $$subdir ; then \
90             target=`echo $@|$(SED) 's/-recursive//'`; \
91             echo making $$target in $$subdir; \
92             (cd $$subdir && $(MAKE) $$target) || exit 1; \
93           fi ; \
94         done
95
96 all-progs-recursive install-progs-recursive install-strip-progs-recursive \
97   uninstall-progs-recursive coverage.txt-progs-recursive:: all-libs-recursive
98
99
100 @ALL_CMT@all-progs-recursive install-progs-recursive install-strip-progs-recursive \
101 @ALL_CMT@  uninstall-progs-recursive coverage.txt-progs-recursive:: all-libs-recursive
102 @ALL_CMT@       @for subdir in $(PROG_SUBDIRS); do \
103 @ALL_CMT@         if test -d $$subdir ; then \
104 @ALL_CMT@           target=`echo $@|$(SED) 's/-progs-recursive//'`; \
105 @ALL_CMT@           echo making $$target in $$subdir; \
106 @ALL_CMT@           (cd $$subdir && $(MAKE) $$target) || exit 1; \
107 @ALL_CMT@         fi ; \
108 @ALL_CMT@       done
109
110 all-libs-recursive install-libs-recursive install-strip-libs-recursive \
111   uninstall-libs-recursive install-shlibs-libs-recursive \
112   install-shlibs-strip-libs-recursive uninstall-shlibs-libs-recursive \
113   coverage.txt-libs-recursive::
114         @for subdir in $(LIB_SUBDIRS); do \
115           if test -d $$subdir ; then \
116             target=`echo $@|$(SED) 's/-libs-recursive//'`; \
117             echo making $$target in $$subdir; \
118             (cd $$subdir && $(MAKE) $$target) || exit 1; \
119           fi ; \
120         done
121
122 mostlyclean: mostlyclean-recursive mostlyclean-local
123
124 clean:: clean-recursive clean-local clean-doc
125         $(RM) -f $(SUBS) 
126
127 distclean: distclean-doc distclean-recursive
128         $(RM) -rf autom4te.cache ext2ed/Makefile po/stamp-po \
129                 asm_types.h config.log public_config.h parse-types.log
130         $(MAKE) distclean-local 
131
132 realclean: realclean-recursive realclean-local
133
134 depend:: depend-recursive
135
136 lib/ext2fs/ext2_types.h: $(DEP_SUBSTITUTE) asm_types.h \
137                 $(srcdir)/lib/ext2fs/ext2_types.h.in
138         cd $(top_builddir); CONFIG_FILES=./lib/ext2fs/ext2_types.h ./config.status
139
140 lib/blkid/blkid_types.h: $(DEP_SUBSTITUTE) asm_types.h \
141                 $(srcdir)/lib/blkid/blkid_types.h.in
142         cd $(top_builddir); CONFIG_FILES=./lib/blkid/blkid_types.h ./config.status
143
144 lib/uuid/uuid_types.h: $(DEP_SUBSTITUTE) asm_types.h \
145                 $(srcdir)/lib/uuid/uuid_types.h.in
146         cd $(top_builddir); CONFIG_FILES=./lib/uuid/uuid_types.h ./config.status
147
148 mostlyclean-local:
149         $(RM) -f \#* *~ *.orig core MAKELOG 
150
151 clean-local: mostlyclean-local
152
153 distclean-local: clean-local
154         $(RM) -f $(SUBS) $(SUBST_CONF) \
155                 config.status config.log config.cache MCONFIG Makefile \
156                 $(srcdir)/TAGS $(srcdir)/Makefile.in.old
157
158 realclean-local: distclean-local
159         $(RM) -f configure
160
161 check:: all check-recursive
162
163 fullcheck:: all fullcheck-recursive