]> mj.ucw.cz Git - libucw.git/blobdiff - build/Maketop
ucw docs: more hash functions
[libucw.git] / build / Maketop
index 2fa010d0ba7c80a183e7b2b228dad3fd3ba20e26..23d1510adab80077441c93ca042bacb8c3fc6e6b 100644 (file)
@@ -1,21 +1,22 @@
 # Top part of Makefile for the UCW Libraries
-# (c) 1997--2007 Martin Mares <mj@ucw.cz>
+# (c) 1997--2008 Martin Mares <mj@ucw.cz>
 
 # Set to 1 if you want verbose output
 V=0
 
+# Set to 'y' (or 'n') if you want to auto-confirm (auto-reject) all questions in build/installer
+CONFIRM=
+
 # Disable all built-in rules and variables. Speeds up make and simplifies debugging.
 MAKEFLAGS+=-rR
 
-s=$(SRCDIR)
-o=obj
-
-CFLAGS=$(CLANG) $(COPT) $(CDEBUG) $(CWARNS) -I. -I$(o) -I$(s)
-LDFLAGS=$(LOPT)
+CFLAGS=$(CLANG) $(COPT) $(CDEBUG) $(CWARNS) $(CEXTRA) -I. -I$(o) -I$(s)
+LDFLAGS=$(LOPT) $(LEXTRA)
 
 DIRS=
 PROGS=
 CONFIGS=
+CONFIG_DIR=cf
 TESTS=
 EXTRA_RUNDIRS=tmp log
 INSTALL_RUNDIRS=bin lib
@@ -59,20 +60,28 @@ endif
 # to define their own cleanup actions.
 dust::
        rm -f `find . -path "*~" -or -name "\#*\#" -or -name core`
-       rm -f allocs.tmp cscope.out
+       rm -f allocs.tmp cscope.out TAGS
 
 clean:: dust
-       rm -rf obj tests run/bin/* run/lib/* run/include/* run/.tree-stamp TAGS
+       rm -rf `find obj -mindepth 1 -maxdepth 1 -not \( -name config.mk -o -name autoconf.h \)`
+       rm -rf tests run/{bin,lib,include,.tree-stamp}
 
 distclean:: clean
-       rm -rf run
+       rm -rf obj run
 
 testclean::
        rm -f `find obj -name "*.test"`
 
+docclean::
+       rm -f $(DOCS) $(patsubst %.html,%.txt,$(DOCS))
+
+# Extra default rules (appended to by submakefiles)
+extras::
+
 # Relative symlinks and other pathname manipulation macros
 empty:=
 space:=$(empty) $(empty)
 backref=$(subst $(space),/,$(patsubst %,..,$(subst /,$(space),$(1))))
 tack-on=$(if $(patsubst /%,,$(2)),$(1)/$(2),$(2))
 symlink=ln -sf $(call tack-on,$(call backref,$(2)),$(1)) $(2)/
+symlink-alias=ln -sf $(call tack-on,$(call backref,$(2)),$(1)) $(2)/$(3)