5 SUBDIRS = components matita
7 ifeq ($(DISTRIBUTED),yes)
8 # 'world' is the default target when distributed, otherwise 'all' is
9 world: depend $(foreach d,$(SUBDIRS),rec@world@$(d))
10 all: depend $(foreach d,$(SUBDIRS),rec@all@$(d))
11 opt: depend $(foreach d,$(SUBDIRS),rec@opt@$(d))
13 all: $(foreach d,$(SUBDIRS),rec@all@$(d))
14 opt: $(foreach d,$(SUBDIRS),rec@opt@$(d))
15 world: depend $(foreach d,$(SUBDIRS),rec@world@$(d))
19 ifeq ($(HAVE_OCAMLOPT),yes)
20 ifeq ($(DISTRIBUTED),yes)
21 $(MAKE) $(foreach d,$(SUBDIRS),rec@depend.opt@$(d))
23 $(MAKE) $(foreach d,$(SUBDIRS),rec@depend@$(d))
26 $(MAKE) $(foreach d,$(SUBDIRS),rec@depend@$(d))
28 $(H)touch depend-stamp
31 $(H)make $(foreach d,$(SUBDIRS),rec@clean@$(d)) || true
33 $(H)make $(foreach d,$(SUBDIRS),rec@distclean@$(d)) || true
34 $(H)rm -rf .matita library-stamp depend-stamp
35 install-indep: $(foreach d,$(SUBDIRS),rec@install-indep@$(d))
36 install-arch: $(foreach d,$(SUBDIRS),rec@install-arch@$(d))
37 install: install-indep install-arch
38 uninstall: $(foreach d,$(SUBDIRS),rec@uninstall@$(d))
41 $(MAKE) -C $(word 2, $(subst @, ,$*)) $(word 1, $(subst @, ,$*)) DESTDIR=$(DESTDIR)
43 # {{{ Distribution stuff
45 ifeq ($(DISTRIBUTED),yes)
46 library: library-stamp
48 $(MAKE) -C matita/ dist_library
54 DISTDIR = $(BASENAME)-$(MATITA_VERSION)
59 components/binaries/matitaprover/benchmarks/ \
71 matita/dist/ChangeLog \
77 matita/matitaGeneratedGui.ml \
80 distcheck: dist dist_extract dist_test
82 dist: dist_mktmpdir dist_pre dist_export dist_mktarball dist_rmtmpdir
83 dist/configure.ac: configure.ac matita/dist/configure.ac.sed
84 sed -f matita/dist/configure.ac.sed < $< > $@
85 dist/configure: dist/configure.ac
88 test -d dist || mkdir dist
90 test -d dist && rm -rf dist/ || true
92 $(MAKE) -C matita dist_pre
93 dist_export: dist/configure
96 svn export components $(DISTDIR)/components
97 svn export matita $(DISTDIR)/matita
98 (cd $(DISTDIR) && find . -name .depend -exec rm \{\} \;)
99 (cd $(DISTDIR) && find . -name .depend.opt -exec rm \{\} \;)
100 (cd $(DISTDIR) && rm -rf $(CLEAN_ON_DIST))
101 cp $< $(DISTDIR)/configure
102 cp -r $(EXTRA_DIST) $(DISTDIR)
103 cp -r $(EXTRA_DIST_matita) $(DISTDIR)/matita
104 # distribute HTML version of the manual
105 mkdir -p $(DISTDIR)/docs/manual/
106 $(MAKE) -C matita/help/C/ install DESTDIR=$(CURDIR)/$(DISTDIR)/docs/manual/
108 tar czf $(DISTDIR).tar.gz $(DISTDIR)
109 #tar cjf $(DISTDIR).tar.bz2 $(DISTDIR)
113 tar xzf $(DISTDIR).tar.gz
118 && $(MAKE) install DESTDIR=`pwd`/install)
120 .PHONY: dist dist_export dist_mktarball distcheck dist_extract dist_test dist_autotools
122 # }}} End of distribution stuff
124 .PHONY: all opt clean distclean
126 # vim: set foldmethod=marker: