summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--graphics/rayshade/Makefile39
-rw-r--r--graphics/rayshade/files/config.ans19
-rw-r--r--graphics/rayshade/files/config.h189
-rw-r--r--graphics/rayshade/files/md53
-rw-r--r--graphics/rayshade/patches/patch-aa63
-rw-r--r--graphics/rayshade/patches/patch-ab26
-rw-r--r--graphics/rayshade/patches/patch-ba29
-rw-r--r--graphics/rayshade/pkg/COMMENT1
-rw-r--r--graphics/rayshade/pkg/DESCR3
-rw-r--r--graphics/rayshade/pkg/PLIST36
10 files changed, 408 insertions, 0 deletions
diff --git a/graphics/rayshade/Makefile b/graphics/rayshade/Makefile
new file mode 100644
index 00000000000..9dd650eb36e
--- /dev/null
+++ b/graphics/rayshade/Makefile
@@ -0,0 +1,39 @@
+# $NetBSD: Makefile,v 1.1 1998/08/24 18:11:40 agc Exp $
+# FreeBSD Id: Makefile,v 1.1.1.1 1998/05/26 04:04:11 mph Exp
+#
+
+DISTNAME= rayshade.4.0
+PKGNAME= rayshade-4.0
+CATEGORIES= graphics
+MASTER_SITES= ftp://graphics.stanford.edu/pub/rayshade/ \
+ ftp://ftp.princeton.edu/pub/Graphics/rayshade.4.0/
+EXTRACT_SUFX= .tar.Z
+
+MAINTAINER= packages@netbsd.org
+
+BUILD_DEPENDS= ${PKGSRCDIR}/graphics/urt/${WRKDIR:T}/include/rle.h:../../graphics/urt:patch
+DEPENDS+= urt-3.1b1:../../graphics/urt
+
+HAS_CONFIGURE= yes
+CONFIGURE_SCRIPT= Configure
+CONFIGURE_ARGS+= < ${WRKDIR}/config.ans
+ALL_TARGET=
+
+pre-configure:
+ ${SED} -e 's|@CFLAGS@|${CFLAGS}|g' -e 's|\$${PREFIX}|${PREFIX}|g' \
+ -e 's|\$${URTDIR}|${.CURDIR}/../../graphics/urt/${WRKDIR:T}|g' \
+ ${FILESDIR}/config.ans > ${WRKDIR}/config.ans
+
+do-install:
+ $(INSTALL_PROGRAM) $(WRKSRC)/rayshade/rayshade $(PREFIX)/bin
+ $(INSTALL_DATA) $(WRKSRC)/libray/libray.a $(PREFIX)/lib
+ ${RANLIB} ${PREFIX}/lib/libray.a
+ $(INSTALL_DATA) $(WRKSRC)/libshade/libshade.a $(PREFIX)/lib
+ ${RANLIB} ${PREFIX}/lib/libshade.a
+ $(MKDIR) $(PREFIX)/share/doc/rayshade
+ $(INSTALL_DATA) $(WRKSRC)/Doc/Guide/* $(PREFIX)/share/doc/rayshade
+ $(INSTALL_DATA) $(WRKSRC)/Doc/quickref.txt $(PREFIX)/share/doc/rayshade
+ $(MKDIR) $(PREFIX)/share/examples/rayshade
+ $(INSTALL_DATA) $(WRKSRC)/Examples/* $(PREFIX)/share/examples/rayshade
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/graphics/rayshade/files/config.ans b/graphics/rayshade/files/config.ans
new file mode 100644
index 00000000000..4725073c076
--- /dev/null
+++ b/graphics/rayshade/files/config.ans
@@ -0,0 +1,19 @@
+
+
+-lm
+clock_t
+
+cc
+@CFLAGS@
+-I${PREFIX}/include -I${URTDIR}/include
+
+${URTDIR}
+${PREFIX}/lib/librle.a
+drand48
+11
+${PREFIX}/bin
+/usr/bin/mkdep
+yacc
+
+y
+
diff --git a/graphics/rayshade/files/config.h b/graphics/rayshade/files/config.h
new file mode 100644
index 00000000000..23f59936f70
--- /dev/null
+++ b/graphics/rayshade/files/config.h
@@ -0,0 +1,189 @@
+/* config.h
+ * This file was produced by running the config.h.SH script, which
+ * gets its values from config.sh, which is generally produced by
+ * running Configure.
+ *
+ * Feel free to modify any of this as the need arises. Note, however,
+ * that running config.h.SH again will wipe out any changes you've made.
+ * For a more permanent change edit config.sh and rerun config.h.SH.
+ */
+
+
+/* EUNICE:
+ * This symbol, if defined, indicates that the program is being compiled
+ * under the EUNICE package under VMS. The program will need to handle
+ * things like files that don't go away the first time you unlink them,
+ * due to version numbering. It will also need to compensate for lack
+ * of a respectable link() command.
+ */
+/* VMS:
+ * This symbol, if defined, indicates that the program is running under
+ * VMS. It is currently only set in conjunction with the EUNICE symbol.
+ */
+/* XENIX:
+ * This symbol, if defined, indicates thet the program is running under
+ * Xenix (at least 3.0 ?).
+ */
+/* BSD:
+ * This symbol, if defined, indicates that the program is running under
+ * a BSD system.
+ */
+/*#undef EUNICE /**/
+/*#undef VMS /**/
+/*#undef XENIX /**/
+#define BSD /**/
+
+/* CPPSTDIN:
+ * This symbol contains the first part of the string which will invoke
+ * the C preprocessor on the standard input and produce to standard
+ * output. Typical value of "cc -E" or "/lib/cpp".
+ */
+/* CPPMINUS:
+ * This symbol contains the second part of the string which will invoke
+ * the C preprocessor on the standard input and produce to standard
+ * output. This symbol will have the value "-" if CPPSTDIN needs a minus
+ * to specify standard input, otherwise the value is "".
+ */
+#define CPPSTDIN "/usr/bin/cpp"
+#define CPPMINUS ""
+
+/* bzero:
+ * This symbol is maped to memset if the bzero() routine is not
+ * available to set memory to 0.
+ */
+/*#undef bzero(s,l) memset((s),0,(l)) ; /* mapped to memset */
+
+/* CBRT:
+ * This symbol, if defined, indicates that the cbrt() (cube root)
+ * function is available.
+ */
+#define CBRT /**/
+
+/* index:
+ * This preprocessor symbol is defined, along with rindex, if the system
+ * uses the strchr and strrchr routines instead.
+ */
+/* rindex:
+ * This preprocessor symbol is defined, along with index, if the system
+ * uses the strchr and strrchr routines instead.
+ */
+#define index strchr /* cultural */
+#define rindex strrchr /* differences? */
+
+/* MEMSET:
+ * This symbol, if defined, indicates that the memset routine is available
+ * to set blocks of memory. You should always use bzero() instead of
+ * memset() because bzero is remaped to memset if necessary. This means
+ * that a memset() routine must be provided in case MEMSET is not defined
+ * and no bzero() is found.
+ */
+#define MEMSET /**/
+
+/* POPEN:
+ * This symbol, if defined, indicates that the popen routine is
+ * available to open a pipe from a process.
+ */
+#define POPEN /**/
+
+/* RUSAGE:
+ * This symbol, if defined, indicates that the getrusage() routine exists.
+ * Inclusion of <sys/resource.h> and <sys/time.h> may be necessary.
+ */
+#define RUSAGE /**/
+
+/* TIMES:
+ * This symbol, if defined, indicates that the times() routine exists.
+ * Note that this became obsolete on some systems (SUNOS), which now
+ * use getrusage().
+ */
+/* CLOCKTYPE:
+ * This symbol holds the type returned by times(). It can be long,
+ * or clock_t on BSD sites (in which case <sys/types.h> should be
+ * included). Moreover, the Clock_t symbol is defined in common.h
+ * and should be used for easy clean reference.
+ */
+#define TIMES /**/
+#define CLOCKTYPE clock_t /**/
+
+/* I_STRING:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <string.h> (USG systems) instead of <strings.h> (BSD systems).
+ */
+#define I_STRING /**/
+
+/* I_SYSRESOURCE:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <sys/resource.h>.
+ */
+#define I_SYSRESOURCE /**/
+
+/* I_SYSTYPES:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <sys/types.h>.
+ */
+#define I_SYSTYPES /**/
+
+/* I_TIME:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <time.h>.
+ */
+/* I_SYSTIME:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <sys/time.h>.
+ */
+/* I_SYSTIMEKERNEL:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <sys/time.h> with KERNEL defined.
+ */
+/*#undef I_TIME /**/
+#define I_SYSTIME /**/
+/*#undef I_SYSTIMEKERNEL /**/
+
+/* nrand:
+ * This macro is to be used to generate uniformly distributed
+ * random numbers over the range [0., 1.].
+ */
+/* seednrand:
+ * This symbol defines the macro to be used in seeding the
+ * random number generator (see nrand).
+ */
+#define nrand() drand48() /**/
+#define seednrand(x) srand48(x) /**/
+
+/* VOIDFLAGS:
+ * This symbol indicates how much support of the void type is given by this
+ * compiler. What various bits mean:
+ *
+ * 1 = supports declaration of void
+ * 2 = supports arrays of pointers to functions returning void
+ * 4 = supports comparisons between pointers to void functions and
+ * addresses of void functions
+ * 8 = suports declaration of generic void pointers
+ *
+ * The package designer should define VOIDUSED to indicate the requirements
+ * of the package. This can be done either by #defining VOIDUSED before
+ * including config.h, or by defining defvoidused in Myinit.U. If the
+ * latter approach is taken, only those flags will be tested. If the
+ * level of void support necessary is not present, defines void to int.
+ */
+#ifndef VOIDUSED
+#define VOIDUSED 11
+#endif
+#define VOIDFLAGS 11
+#if (VOIDFLAGS & VOIDUSED) != VOIDUSED
+#define void int /* is void to be avoided? */
+#define M_VOID /* Xenix strikes again */
+#endif
+
+/* URT:
+ * This symbol, if defined, indicates that the Utah Raster
+ * Toolkit is being used.
+ */
+#define URT /**/
+
+/* I_VARARGS:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <stdlib.h>.
+ */
+#define I_STDLIB /**/
+
diff --git a/graphics/rayshade/files/md5 b/graphics/rayshade/files/md5
new file mode 100644
index 00000000000..fc8d6306487
--- /dev/null
+++ b/graphics/rayshade/files/md5
@@ -0,0 +1,3 @@
+$NetBSD: md5,v 1.1 1998/08/24 18:11:41 agc Exp $
+
+MD5 (rayshade.4.0.tar.Z) = c81f9507c20cd6060a8bdc611a6771ff
diff --git a/graphics/rayshade/patches/patch-aa b/graphics/rayshade/patches/patch-aa
new file mode 100644
index 00000000000..4daa37a46b3
--- /dev/null
+++ b/graphics/rayshade/patches/patch-aa
@@ -0,0 +1,63 @@
+$NetBSD: patch-aa,v 1.1 1998/08/24 18:11:42 agc Exp $
+
+Work around deficiencies in the Configure script:
++ don't test for stdin being a tty
++ NetBSD's ar ts does generate random libs, but you *STILL* need
+to run ranlib, especially on a.out platforms. Comment out ar ts
+test - it's just plain wrong.
+
+*** Configure.orig Sun Feb 9 22:04:23 1992
+--- Configure Sun Mar 8 19:33:26 1998
+@@ -28,10 +28,11 @@
+ PATH=$PATH:'/bsd4.3/usr/bin:/usr/bsd'
+ export PATH || (echo "OOPS, this isn't sh. Desperation time. I will feed myself to sh."; sh $0; kill $$)
+
+-if test ! -t 0; then
+- echo "Say 'sh Configure', not 'sh <Configure'"
+- exit 1
+-fi
++# Neither FreeBSD's ports, or NetBSD's packages, want to be interactive
++#if test ! -t 0; then
++# echo "Say 'sh Configure', not 'sh <Configure'"
++# exit 1
++#fi
+
+ (alias) >/dev/null 2>&1 && \
+ echo "(I see you are using the Korn shell. Some ksh's blow up on Configure," && \
+@@ -872,7 +873,7 @@
+ : determine where manual pages are on this system
+ echo " "
+ case "$sysman" in
+- '') sysman=`loc . /usr/man/man1 /usr/man/man1 /usr/man/mann /usr/man/manl /usr/man/local/man1 /usr/man/u_man/man1 /usr/share/man/man1 /usr/catman/u_man/man1 /usr/man/l_man/man1 /usr/local/man/u_man/man1 /usr/local/man/l_man/man1 /usr/man/man.L`
++ '') sysman=`loc . /usr/local/man/man1 /usr/man/man1 /usr/man/mann /usr/man/manl /usr/man/local/man1 /usr/man/u_man/man1 /usr/share/man/man1 /usr/catman/u_man/man1 /usr/man/l_man/man1 /usr/local/man/u_man/man1 /usr/local/man/l_man/man1 /usr/man/man.L`
+ ;;
+ esac
+ if test -d "$sysman"; then
+@@ -1988,12 +1989,12 @@
+ : see if ar generates random libraries by itself
+ echo " "
+ echo "Checking how to generate random libraries on your machine..."
+-ar rc ran.a /dev/null
+-if ar ts ran.a >/dev/null 2>&1; then
+- echo "ar appears to generate random libraries itself."
+- orderlib=false
+- ranlib=":"
+-else
++#ar rc ran.a /dev/null
++#if ar ts ran.a >/dev/null 2>&1; then
++# echo "ar appears to generate random libraries itself."
++# orderlib=false
++# ranlib=":"
++#else
+ if test -f /usr/bin/ranlib; then
+ ranlib=/usr/bin/ranlib
+ elif test -f /bin/ranlib; then
+@@ -2009,7 +2010,7 @@
+ orderlib=true
+ ranlib=":"
+ fi
+-fi
++#fi
+
+ : determine compiler compiler
+ case "$bison" in
diff --git a/graphics/rayshade/patches/patch-ab b/graphics/rayshade/patches/patch-ab
new file mode 100644
index 00000000000..d5962af9314
--- /dev/null
+++ b/graphics/rayshade/patches/patch-ab
@@ -0,0 +1,26 @@
+$NetBSD: patch-ab,v 1.1 1998/08/24 18:11:43 agc Exp $
+
+*** etc/rsconvert/lex.l.orig Sun Mar 8 18:55:39 1998
+--- etc/rsconvert/lex.l Sun Mar 8 18:56:05 1998
+***************
+*** 22,27 ****
+--- 22,28 ----
+ #include "libcommon/common.h"
+ #include "y.tab.h"
+ %}
++ %option yylineno
+ alpha [a-zA-Z]
+ special [\.\_-]
+ digit [0-9]
+*** libshade/lex.l.orig Sun Mar 8 18:52:11 1998
+--- libshade/lex.l Sun Mar 8 18:53:18 1998
+***************
+*** 29,34 ****
+--- 29,35 ----
+ #include "y.tab.h"
+ extern char *strsave();
+ %}
++ %option yylineno
+ alpha [a-zA-Z]
+ special [\.\_-]
+ digit [0-9]
diff --git a/graphics/rayshade/patches/patch-ba b/graphics/rayshade/patches/patch-ba
new file mode 100644
index 00000000000..fa7940b82f1
--- /dev/null
+++ b/graphics/rayshade/patches/patch-ba
@@ -0,0 +1,29 @@
+$NetBSD: patch-ba,v 1.1 1998/08/24 18:11:44 agc Exp $
+
+*** raypaint/Makefile.SH.orig Sat Mar 28 20:31:28 1998
+--- raypaint/Makefile.SH Sat Mar 28 20:31:55 1998
+***************
+*** 55,65 ****
+
+ #
+ # If using X11, use:
+! #GRAPHICSLIB = -lX11
+
+ #
+ # If you are using GL, use:
+! GRAPHICSLIB = -lgl_s
+
+ LIBRAY = $(LIBRAYDIR)/libray.a
+ LIBSHADE = $(LIBSHADEDIR)/libshade.a
+--- 55,65 ----
+
+ #
+ # If using X11, use:
+! GRAPHICSLIB = -lX11
+
+ #
+ # If you are using GL, use:
+! #GRAPHICSLIB = -lgl_s
+
+ LIBRAY = $(LIBRAYDIR)/libray.a
+ LIBSHADE = $(LIBSHADEDIR)/libshade.a
diff --git a/graphics/rayshade/pkg/COMMENT b/graphics/rayshade/pkg/COMMENT
new file mode 100644
index 00000000000..09890de549e
--- /dev/null
+++ b/graphics/rayshade/pkg/COMMENT
@@ -0,0 +1 @@
+An extensible system for creating ray-traced images.
diff --git a/graphics/rayshade/pkg/DESCR b/graphics/rayshade/pkg/DESCR
new file mode 100644
index 00000000000..eaab43c8b11
--- /dev/null
+++ b/graphics/rayshade/pkg/DESCR
@@ -0,0 +1,3 @@
+Rayshade is a system for generating ray-traced images. Rayshade's main
+function is to read a multi-line ASCII file describing a scene to be
+rendered and produce a file containing the ray traced image.
diff --git a/graphics/rayshade/pkg/PLIST b/graphics/rayshade/pkg/PLIST
new file mode 100644
index 00000000000..9e3ee7502a5
--- /dev/null
+++ b/graphics/rayshade/pkg/PLIST
@@ -0,0 +1,36 @@
+@comment $NetBSD: PLIST,v 1.1 1998/08/24 18:11:45 agc Exp $
+bin/rayshade
+lib/libray.a
+lib/libshade.a
+share/doc/rayshade/README
+share/doc/rayshade/animate.tex
+share/doc/rayshade/camera.tex
+share/doc/rayshade/guide.tex
+share/doc/rayshade/height.tex
+share/doc/rayshade/intro.tex
+share/doc/rayshade/lights.tex
+share/doc/rayshade/objects.tex
+share/doc/rayshade/options.tex
+share/doc/rayshade/preface.tex
+share/doc/rayshade/running.tex
+share/doc/rayshade/surfaces.tex
+share/doc/rayshade/texture.tex
+share/doc/rayshade/transform.tex
+share/doc/rayshade/quickref.txt
+share/examples/rayshade/ashtray.def.ray
+share/examples/rayshade/ashtray.ray
+share/examples/rayshade/balls.ray
+share/examples/rayshade/blob.ray
+share/examples/rayshade/boxball.ray
+share/examples/rayshade/coin.ray
+share/examples/rayshade/csg.ray
+share/examples/rayshade/glass.def.ray
+share/examples/rayshade/glass.ray
+share/examples/rayshade/mtv.ray
+share/examples/rayshade/planet.map
+share/examples/rayshade/planet.ray
+share/examples/rayshade/pool.ray
+share/examples/rayshade/solids.ray
+share/examples/rayshade/stripe.ray
+@dirrm share/doc/rayshade
+@dirrm share/examples/rayshade