]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/Makefile
dir reorganization
[helm.git] / helm / Makefile
index fb0fac9941eb107bad4365835d8873f2a87e99c2..de2a403c12d124d0cfc160bcea8b78f0da343f95 100644 (file)
@@ -1,17 +1,61 @@
-DIRS = ocaml hbugs gTopLevel searchEngine
-
-DIRS_BYTE = $(patsubst %,%.byte,$(DIRS))
-DIRS_OPT = $(patsubst %,%.opt,$(DIRS))
-DIRS_CLEAN = $(patsubst %,%.clean,$(DIRS))
-all: byte
-byte: $(DIRS_BYTE)
-opt: $(DIRS_OPT)
-world: byte opt
-clean: $(DIRS_CLEAN)
-%.byte:
-       $(MAKE) -C $*/ all
-%.opt:
-       $(MAKE) -C $*/ opt
-%.clean:
-       $(MAKE) -C $*/ clean
-.PHONY: all byte opt world clean
+
+include Makefile.defs
+
+SUBDIRS = libs matita
+
+all: $(foreach d,$(SUBDIRS),all.$(d))
+opt: $(foreach d,$(SUBDIRS),opt.$(d))
+clean: $(foreach d,$(SUBDIRS),clean.$(d))
+distclean: $(foreach d,$(SUBDIRS),distclean.$(d))
+
+all.%:
+       $(MAKE) -C $* all
+opt.%:
+       $(MAKE) -C $* opt
+clean.%:
+       $(MAKE) -C $* clean
+distclean.%:
+       $(MAKE) -C $* distclean
+install.%:
+       $(MAKE) -C $* install
+uninstall.%:
+       $(MAKE) -C $* uninstall
+
+BASENAME = matita
+NULL =
+DISTDIR = $(BASENAME)-$(MATITA_VERSION)
+CLEAN_ON_DIST =                \
+       ocaml/license           \
+       $(NULL)
+EXTRA_DIST =                   \
+       dist/AUTHORS            \
+       dist/COPYING            \
+       dist/INSTALL            \
+       dist/README             \
+       dist/ChangeLog          \
+       Makefile                \
+       Makefile.defs.in        \
+       ./configure             \
+       $(NULL)
+
+dist: autotools export mktarball
+distcheck: dist extract build
+
+autotools:
+       autoconf
+
+export:
+       rm -rf $(DISTDIR)
+       mkdir $(DISTDIR)
+       svn export ocaml $(DISTDIR)/ocaml
+       svn export matita $(DISTDIR)/matita
+       (cd $(DISTDIR) && rm -f $(CLEAN_ON_DIST))
+       mv $(DISTDIR)/ocaml $(DISTDIR)/libs
+       cp -r $(EXTRA_DIST) $(DISTDIR)
+
+mktarball:
+       tar cvzf $(DISTDIR).tar.gz $(DISTDIR)
+
+.PHONY: dist export mktarball distcheck extract build autotools
+.PHONY: all opt clean distclean
+