orig/makeall.csh
changeset 0 0aa115157c9c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/orig/makeall.csh	Sat Apr 09 17:55:16 2011 +0100
@@ -0,0 +1,240 @@
+#!/bin/csh -f
+# RCSid $Id: makeall,v 1.25 2010/11/29 17:22:44 greg Exp $
+# 
+# Make all the Radiance programs
+#
+if ( $#argv < 1 ) then
+	echo "Usage: makeall install [clean] [make options]"
+	echo "   or: makeall clean"
+	echo "   or: makeall library"
+	exit 1
+endif
+if ( "$1" == library ) then
+	source installib
+	cp -f src/*/*.{cal,tab,hex} $ldir
+	echo ""
+	echo "Set the environment variable RAYPATH=.:$ldir"
+	echo 'For C-shell users, put the following into ~/.cshrc'
+	echo "	setenv RAYPATH .:$ldir"
+	echo 'For Bourne shell users, put the following into $HOME/.profile'
+	echo "	RAYPATH=.:$ldir"
+	echo "	export RAYPATH"
+	echo ""
+	exit 0
+endif
+set srcdirs=( common rt meta cv gen ot px hd util cal )
+if ( "$1" == install ) then
+	cat << _EOF_
+
+		`cat src/rt/VERSION` INSTALLATION
+
+This script rebuilds all of the Radiance programs and installs
+them on your system.  You should read the file README before running
+this script.  You can type ^C (followed by return) at any time to abort.
+
+You must first answer the following questions.
+
+_EOF_
+if ( ! $?EDITOR ) then
+	echo -n "What is your preferred editor [vi]? "
+	set ans="$<"
+	if ( "$ans" != "" ) then
+		setenv EDITOR "$ans"
+	else
+		setenv EDITOR vi
+	endif
+endif
+again1:
+echo -n "Where do you want the executables [/usr/local/bin]? "
+set idir=$<
+(echo $idir) >/dev/null
+if ( $status ) then
+	goto again1
+endif
+set idir=$idir
+if ( "$idir" == "" ) then
+	set idir=/usr/local/bin
+else if ( "$idir" !~ /* ) then
+	echo "Directory must be relative to root, please reenter"
+	goto again1
+endif
+if ( ! -d $idir ) then
+	mkdir $idir
+	if ( $status ) then
+		echo "Cannot create directory, please reenter"
+		goto again1
+	endif
+endif
+if ( ! -d $idir/dev ) then
+	mkdir $idir/dev
+	if ( $status ) then
+		echo "Cannot create subdirectory, please reenter"
+		goto again1
+	endif
+endif
+set inpath=0
+foreach i ( $path )
+	if ( "$i" == "$idir" ) then
+		set inpath=1
+		break
+	endif
+end
+set rmake=$idir/rmake
+if ( "`ls -tL $rmake $0 |& head -1`" == $rmake ) then
+	goto gotrmake
+endif
+set newrmake
+more src/common/copyright.h
+echo -n "Do you understand and accept the terms of this agreement [n]? "
+set ans="$<"
+if ( "$ans" !~ [yY]* ) exit
+set special=
+set arch=
+set opt=
+set mach=
+set compat=
+set extras=
+set esuffix=
+cat << _EOF_
+
+Please select your system type from the following list:
+
+	1)	Sun Solaris
+	2)	Linux
+	3)	MacOS X
+	4)	FreeBSD
+	5)	Cygwin
+	6)	Other
+
+_EOF_
+echo -n "Choice? "
+set arch="$<"
+switch ("$arch")
+case 1:			# SPARC Station
+	set arch=sun
+	set mach="-I/usr/openwin/include -L/usr/openwin/lib -DNOSTEREO"
+	set opt="-O"
+	set compat="strcmp.o timegm.o"
+	breaksw
+case 2:			# Linux
+	set mach="-Dlinux -D_FILE_OFFSET_BITS=64 -L/usr/X11R6/lib -I/usr/include/X11 -DNOSTEREO"
+	set opt="-O2"
+	set arch=IBMPC
+	set compat="erf.o"
+	set extras=CC=gcc
+	breaksw
+case 3:			# MacOS X
+	set mach="-DBSD -DNOSTEREO -Dfreebsd -I/usr/X11R6/include -L/usr/X11R6/lib"
+	set opt="-O2"
+	set arch=Intel
+	set extras="CC=cc CONFIGURE_ARCH=i386"
+	set special="ogl"
+	breaksw
+case 4:			# FreeBSD
+	set mach="-DBSD -DNOSTEREO -Dfreebsd -I/usr/X11R6/include -L/usr/X11R6/lib"
+	set opt="-O"
+	set compat="erf.o"
+	set extras='CC=cc MLIB="-lcompat -lm"'
+	set arch=IBMPC
+	breaksw
+case 5:			# Cygwin
+	set mach="-Dfreebsd -L/usr/lib -L/usr/X11R6/lib -I/usr/include/X11 -I/usr/X11R6/include -DNOSTEREO"
+	set opt="-O2"
+	set arch=IBMPC
+	set compat="erf.o"
+	set extras="CC=gcc"
+	set special="ogl"
+	set esuffix=".exe"
+	breaksw
+case 6:			# Other
+	set opt="-O"
+	set compat="erf.o strcmp.o"
+	echo -n "Are you using the GNU C compiler [n]? "
+	if ( "$<" =~ [yY]* ) then
+		set extras="CC=gcc"
+	else
+		set compat="$compat timegm.o"
+	endif
+	set arch=other
+	breaksw
+default:
+	echo "Illegal choice\!"
+	echo "Installation aborted."
+	exit 1
+	breaksw
+endsw
+source installib
+sed 's/[ 	]*$//' > $rmake << _EOF_
+#!/bin/sh
+exec make "SPECIAL=$special" \
+	"OPT=$opt" \
+	"MACH=$mach" \
+	ARCH=$arch "COMPAT=$compat" \
+	INSTDIR=$idir \
+	LIBDIR=$ldir \
+	ESUFFIX=$esuffix \
+	$extras "\$@" -f Rmakefile
+_EOF_
+chmod 755 $rmake
+chmod 644 src/*/Rmakefile src/rt/devtable.c
+gotrmake:
+echo "Current rmake command is:"
+cat $rmake
+echo -n "Do you want to change it? "
+set ans="$<"
+if ( "$ans" =~ [yY]* ) then
+	cp $rmake /tmp/rmake$$
+	$EDITOR $rmake
+	if ( `cat $rmake /tmp/rmake$$ | grep OPT= | uniq | wc -l` == 2 ) set newrmake
+	rm -f /tmp/rmake$$
+endif
+if ( ! -d src/lib ) then
+	mkdir src/lib
+endif
+if ( $?newrmake ) then
+	echo 'New rmake command -- running "makeall clean"...'
+	csh -f $0 clean
+endif
+cd src
+echo "Making programs..."
+set errs=0
+foreach i ( $srcdirs )
+	pushd $i
+	echo "In directory $i..."
+	$rmake -k $*
+	@ errs += $status
+	popd
+end
+if ( $errs ) then
+	echo "There were some errors."
+else
+	echo "Done."
+endif
+cd ..
+if (! $inpath ) then
+	echo ""
+	echo "Add $idir to the beginning of your execution path:"
+	echo 'For C-shell users, put the following into ~/.cshrc'
+	echo "	set path=( $idir "'$path )'
+	echo 'For Bourne shell users, put the following into $HOME/.profile'
+	echo "	PATH=$idir"':$PATH'
+	echo "	export PATH"
+endif
+else
+cd src
+foreach i ( $srcdirs )
+	pushd $i
+	echo "In directory $i..."
+	make -f Rmakefile $*
+	popd
+end
+cd ..
+foreach i ( $* )
+	if ( "$i" == clean ) then
+		echo "Removing library archives..."
+		rm -f src/lib/*.{a,o,la}
+	endif
+end
+echo "Done."
+endif
+exit 0