Blob Blame History Raw
#!/bin/csh
# Motif
#
# Copyright (c) 1987-2012, The Open Group. All rights reserved.
#
# These libraries and programs are free software; you can
# redistribute them and/or modify them under the terms of the GNU
# Lesser General Public License as published by the Free Software
# Foundation; either version 2 of the License, or (at your option)
# any later version.
#
# These libraries and programs are distributed in the hope that
# they will be useful, but WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with these librararies and programs; if not, write
# to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
# Floor, Boston, MA 02110-1301 USA
# 
# HISTORY

#the second argument is the directory we're working on
# all arguments that follow are defines. This version does
# not use the defines.

if ($#argv == 0) then
	echo "Error: no CURRENT_DIR passed to Genrun"
	echo "Please check Imakefile"
	exit 1
else
	set current_dir = $argv[1]
	set top = $argv[2]
endif

#other files we use

set dirsAutoFile = "$top/./tests/General/dirsAuto"
set runCustomFile = "./RUN.custom"
set runTemplate = "$top/./tests/General/RUN_template"

#if these files are missing, issue message and bail out now

if !(-e $dirsAutoFile) then
	echo $dirsAutoFile " is missing, cannot continue"
	exit 1
endif

if !(-e $runTemplate) then
	echo $runTemplate " is missing, cannot continue"
	exit 1
endif

#preclean

if (-e RUN) then
	rm -f RUN.bak
	mv RUN RUN.bak
endif

#go for it

set is_automated = `grep -c $current_dir $dirsAutoFile`

if ($is_automated) then
#	first check for the runCustomFile
	if !(-e $runCustomFile) then
		echo $runCustomFile " in " $current_dir "is missing"
		echo "Cannot continue"
		exit 1
	endif

	sed -e '/<Customize>/r ./RUN.custom' -e '/<Customize>/d'   \
	$runTemplate > RUN
	chmod +x RUN
else
#	this directory isn't an automated one
	echo "Not an automated directory"
#	because this rule ends up EVERYWHERE, do nothing if not
#	automated
#	*** old code ***
#	echo "Using fcopy to get latest version of this RUN script"
#	we'll do this eventually
#	fcopy -x $current_dir/RUN
#	but until the bug with -x is fixed, we'll do the following
#	this will not work correctly for directories which clash with
#	Performance directories:
#		tests/Toolkit/Text
#		tests/Toolkit/Traversal
#	fcopy $current_dir/RUN <<!
#y
#!

endif