Home My Page Projects Code Snippets Project Openings diderot
Summary Activity Tracker Tasks SCM

SCM Repository

[diderot] View of /benchmarks/mk/clean-rules.gmk
ViewVC logotype

View of /benchmarks/mk/clean-rules.gmk

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1538 - (download) (annotate)
Fri Oct 14 22:07:34 2011 UTC (7 years, 9 months ago) by jhr
File size: 1794 byte(s)
  Working on benchmark infrastructure
# Common makerules for cleaning directory trees.
#
# COPYRIGHT (c) 2011 The Diderot Project (http://diderot-language.cs.uchicago.edu)
# All rights reserved.
#
# This file defines standard rules for the clean, distclean, and devclean
# targets.  To use, define the following make variables:
#
#	CLEAN_SUBDIRS		-- subdirectories to recursively clean
#	CLEAN_FILES		-- extra files to remove for clean target
#				   The default is to remove CM subdirectories,
#				   .o files, .so files, .a files, .dSYM directories
#				   and the $(TARGET).
#	DISTCLEAN_FILES		-- extra files to remove for distclean target
#				   The default is to remove Makefile.
#	DEVCLEAN_FILES		-- extra files to remove for devclean target
#

CLEAN_FILES +=		$(wildcard *.o) \
			$(wildcard *.so) \
			$(wildcard *.a) \
			$(wildcard *.dSYM) \
			$(TARGETS)
DISTCLEAN_FILES +=	Makefile

.PHONY:		sub-clean local-clean clean
sub-clean:
	dirs="$(CLEAN_SUBDIRS)"; \
        if test -n "$$dirs" ; then \
	  for dir in $$dirs ; do \
	    (cd $$dir && $(MAKE) clean) \
	  done \
	fi

local-clean:
	-rm -rf $(CLEAN_FILES)
	find . \( -name .cm -exec rm -rf {} \; -prune -print \)

clean:		sub-clean local-clean

.PHONY: 	sub-distclean local-distclean distclean
sub-distclean:
	dirs="$(CLEAN_SUBDIRS)"; \
        if test -n "$$dirs" ; then \
	  for dir in $$dirs ; do \
	    (cd $$dir && $(MAKE) distclean) \
	  done \
	fi

local-distclean:	local-clean
	-rm -rf $(DISTCLEAN_FILES)

distclean:		sub-distclean local-distclean

.PHONY: 	sub-devclean local-devclean devclean
sub-devclean:
	dirs="$(CLEAN_SUBDIRS)"; \
        if test -n "$$dirs" ; then \
	  for dir in $$dirs ; do \
	    (cd $$dir && $(MAKE) devclean) \
	  done \
	fi

local-devclean:	local-distclean
	-rm -rf $(DEVCLEAN_FILES)

devclean:		sub-devclean local-devclean


root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0