Mercurial > projects > dstress
changeset 903:613f9c34bb15
added experimental Makefile.parallel
author | thomask |
---|---|
date | Sun, 12 Mar 2006 00:06:51 +0000 |
parents | 58966fea59f7 |
children | 67e77ee70d66 |
files | Makefile.parallel |
diffstat | 1 files changed, 125 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Makefile.parallel Sun Mar 12 00:06:51 2006 +0000 @@ -0,0 +1,125 @@ +# $HeadURL$ +# $Date$ +# $Author$ +# +# experimental parallel GnuMakefile for DStress http://dstress.kuehne.cn/www/dstress.html +# Copyright (C) 2006 Thomas Kuehne +# +# 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 +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# + +usage : + $(warning common target sequence: 'clean' 'all') + $(warning don't forget to call >>>clean<<< before 'all' 'compile' 'nocompile' 'norun' or 'run') + +# +# config +# + +date = date +"%a, %e %b %Y %T %z" +uname = uname -s -m -r + +ifndef CAT +CAT := cat +endif + +ifndef CC +CC := cc +endif + +ifndef DMD +DMD := dmd +export DMD +endif + +ifndef FIND +FIND := find +endif + +ifndef RM +RM := rm -f +endif + +############################################################################### +############################################################################### +# +# nothing to customize below this line +# +############################################################################### +############################################################################### + +dstress := ./dstress.exe +crashRun := ./crashRun.exe +logsuffix := .outlog + +.PHONY:: all all_prep all_real clean compile nocompile norun run tools version + +all : tools compile nocompile run norun + +%.exe : %.c + $(CC) $(CFLAGS) $< -o $@ + +tools : $(dstress) $(crashRun) + +version : + @$(date) + @$(uname) + -@$(DMD) -v + +# +# compile +# +compile : $(patsubst %,%.exe,$(shell find compile -type f | grep -v "\\.svn")) + +compile/%.exe : compile/% tools + @$(dstress) torture-compile $< > obj/$(notdir $<)$(logsuffix) + @$(CAT) obj/$(notdir $<)$(logsuffix) + +# +# nocompile +# +nocompile : $(patsubst %,%.exe,$(shell find nocompile -type f | grep -v "\\.svn")) + +nocompile/%.exe : nocompile/% tools + @$(dstress) torture-nocompile $< > obj/$(notdir $<)$(logsuffix) + @$(CAT) obj/$(notdir $<)$(logsuffix) + +# +# norun +# +norun : $(patsubst %,%.exe,$(shell find norun -type f | grep -v "\\.svn")) + +norun/%.exe : norun/% tools + @$(dstress) torture-norun $< > obj/$(notdir $<)$(logsuffix) + @$(CAT) obj/$(notdir $<)$(logsuffix) + +# +# run +# +run : $(patsubst %,%.exe,$(shell find run -type f | grep -v "\\.svn")) + +run/%.exe : run/% tools + @$(dstress) torture-run $< > obj/$(notdir $<)$(logsuffix) + @$(CAT) obj/$(notdir $<)$(logsuffix) + + +clean : + $(RM) -- $(shell find run -name "*exe") + $(RM) -- $(shell find norun -name "*exe") + $(RM) -- $(shell find compile -name "*exe") + $(RM) -- $(shell find nocompile -name "*exe") + $(RM) -- obj/?*.* + $(RM) -- $(dstress) $(crashRun) +