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
30 clean: $(foreach d,$(SUBDIRS),rec@clean@$(d))
31 distclean: $(foreach d,$(SUBDIRS),rec@distclean@$(d))
32 $(H)rm -rf .matita library-stamp depend-stamp
33 install: $(foreach d,$(SUBDIRS),rec@install@$(d))
34 uninstall: $(foreach d,$(SUBDIRS),rec@uninstall@$(d))
37 $(MAKE) -C $(word 2, $(subst @, ,$*)) $(word 1, $(subst @, ,$*))
39 # {{{ Distribution stuff
41 ifeq ($(DISTRIBUTED),yes)
42 library: library-stamp
44 $(MAKE) -C matita/ dist_library
50 DISTDIR = $(BASENAME)-$(MATITA_VERSION)
58 matita/dist/ChangeLog \
66 matita/matitaGeneratedGui.ml \
69 distcheck: dist dist_extract dist_test
71 dist: dist_mktmpdir dist_pre dist_export dist_mktarball dist_rmtmpdir
72 dist/configure.ac: configure.ac matita/dist/configure.ac.sed
73 sed -f matita/dist/configure.ac.sed < $< > $@
74 dist/configure: dist/configure.ac
77 test -d dist || mkdir dist
79 test -d dist && rm -rf dist/ || true
81 $(MAKE) -C matita dist_pre
82 dist_export: dist/configure
85 svn export components $(DISTDIR)/components
86 svn export matita $(DISTDIR)/matita
87 (cd $(DISTDIR) && find . -name .depend -exec rm \{\} \;)
88 (cd $(DISTDIR) && rm -f $(CLEAN_ON_DIST))
89 cp $< $(DISTDIR)/configure
90 cp -r $(EXTRA_DIST) $(DISTDIR)
91 cp -r $(EXTRA_DIST_matita) $(DISTDIR)/matita
92 # distribute HTML version of the manual
93 mkdir -p $(DISTDIR)/docs/manual/
94 $(MAKE) -C matita/help/C/ install DESTDIR=$(CURDIR)/$(DISTDIR)/docs/manual/
96 tar czf $(DISTDIR).tar.gz $(DISTDIR)
97 tar cjf $(DISTDIR).tar.bz2 $(DISTDIR)
101 tar xzf $(DISTDIR).tar.gz
106 && $(MAKE) install DESTDIR=`pwd`/install)
108 .PHONY: dist dist_export dist_mktarball distcheck dist_extract dist_test dist_autotools
110 # }}} End of distribution stuff
112 .PHONY: all opt clean distclean
114 # vim: set foldmethod=marker: