]> arthur.barton.de Git - ax-linux.git/blobdiff - Makefile.ax
btrfs-mksnapshot: Allow much more characters in subvolume names
[ax-linux.git] / Makefile.ax
index 71a566d4029b41ebd79ce049d8aaf596267fb0df..180ce3c51ffb5681cea53b9551ea1a1dc00f6dbe 100644 (file)
@@ -1,57 +1,43 @@
 #
-# ax-linux: Alex' Linux Tools & Scripts
-# Copyright (c)2013 Alexander Barton (alex@barton.de)
+# ax-make: Alex' Simple Makefile System
+# Copyright (c)2014 Alexander Barton (alex@barton.de)
 #
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# This library is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published
+# by the Free Software Foundation; either version 2.1 of the License, or
 # (at your option) any later version.
 #
 
 AX_SILENT ?= @
 
 PREFIX ?= /usr/local
-GROUP ?= staff
 
-$(SUBDIRS):
-       $(MAKE) -C $@
+USER ?= $(shell id -un)
+GROUP ?= $(shell stat --format=%G $(DESTDIR)$(PREFIX) 2>/dev/null || id -gn)
 
-clean: clean-ax clean-local
-
-clean-ax:
-       $(AX_SILENT)for subdir in $(SUBDIRS); do \
-         $(MAKE) -C $$subdir clean || exit 1; \
-        done
-
-distclean: distclean-ax distclean-local
+all: all-ax all-local
 
-distclean-ax:
-       $(AX_SILENT)for subdir in $(SUBDIRS); do \
-         $(MAKE) -C $$subdir distclean || exit 1; \
-        done
+all-ax: $(ALL) $(SUBDIRS)
 
-maintainer-clean: maintainer-clean-ax maintainer-clean-local
+clean: clean-ax clean-local
 
-maintainer-clean-ax:
-       $(AX_SILENT)for subdir in $(SUBDIRS); do \
-         $(MAKE) -C $$subdir maintainer-clean || exit 1; \
-        done
+distclean: clean-local distclean-ax distclean-local
 
-check: check-ax check-local
+maintainer-clean: clean-local distclean-local maintainer-clean-ax maintainer-clean-local
 
-check-ax:
-       $(AX_SILENT)for subdir in $(SUBDIRS); do \
-         $(MAKE) -C $$subdir check || exit 1; \
-        done
+check: check-pre check-ax check-local check-post
 
 install: install-ax install-local
 
-install-ax:
+all-ax clean-ax distclean-ax maintainer-clean-ax check-ax install-ax:
        $(AX_SILENT)for subdir in $(SUBDIRS); do \
-         $(MAKE) -C $$subdir install || exit 1; \
+         target=`echo "$@" | sed -e 's/-ax$$//'`; \
+         echo "Making \"$$target\" in \"$$subdir\" ..."; \
+         $(MAKE) -C $$subdir $$target || exit 1; \
         done
 
 .PHONY: all clean distclean maintainer-clean check install
-.PHONY: clean-ax distclean-ax maintainer-clean-ax check-ax install-ax
-.PHONY: clean-local distclean-local maintainer-clean-local check-local install-local
+.PHONY: all-ax clean-ax distclean-ax maintainer-clean-ax check-ax install-ax
+.PHONY: all-local clean-local distclean-local maintainer-clean-local check-local install-local
+.PHONY: check-pre check-post
 .PHONY: $(SUBDIRS)