# Make-config

MAJOR=3
MINOR=0
VERSION=$(MAJOR).$(MINOR)

# Mesa 3-D graphics library
# Copyright (C) 1995-1998  Brian Paul
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Library General Public
# License as published by the Free Software Foundation; either
# version 2 of the License, or (at your option) any later version.
#
# This library 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
# Library General Public License for more details.
#
# You should have received a copy of the GNU Library General Public
# License along with this library; if not, write to the Free
# Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.


# $Id: Make-config,v 3.30 1998/08/30 03:27:42 brianp Exp $

# $Log: Make-config,v $
# Revision 3.30  1998/08/30 03:27:42  brianp
# minor changes to Linux/Alpha configs per Dave Gilbert
#
# Revision 3.29  1998/08/16 15:01:45  brianp
# added -lXmu to mklinux config
#
# Revision 3.28  1998/08/05 01:27:47  brianp
# updated OS/2 config (Alexander Mai)
#
# Revision 3.27  1998/08/01 03:58:11  brianp
# added hpux10-gcc-sl and irix6-gcc-n32-sl configs (Albert De Knuydt)
#
# Revision 3.26  1998/07/30 23:51:47  brianp
# updated BeOS configs (Ed Silva)
#
# Revision 3.25  1998/07/30 23:26:55  brianp
# fixed XLIBS for ultrix (Albert De Knuydt)
#
# Revision 3.24  1998/07/26 01:17:05  brianp
# added irix5-gcc config
#
# Revision 3.23  1998/07/09 03:20:05  brianp
# replaced asm-386.S with asm_386.S, another IRIX library fix
#
# Revision 3.22  1998/07/08 02:03:16  brianp
# added linux-386-pthread-shared config
#
# Revision 3.21  1998/07/08 01:40:28  brianp
# -rpath changes for IRIX configs
#
# Revision 3.20  1998/07/08 01:38:27  brianp
# added linux-ggi config
#
# Revision 3.19  1998/06/23 00:11:47  brianp
# added -I/usr/include/glide to CFLAGS for Linux Glide configs
#
# Revision 3.18  1998/06/22 01:53:58  brianp
# added linux-386-glide-mits config
#
# Revision 3.17  1998/06/22 01:46:22  brianp
# updated linux-ppc CFLAGS per Jens Ch. Restemeier
#
# Revision 3.16  1998/06/20 04:14:11  brianp
# added NO_CONST define to IRIX 6 64-bit configs
#
# Revision 3.15  1998/06/14 15:15:19  brianp
# minor changes to IRIX configs
#
# Revision 3.14  1998/06/01 01:14:06  brianp
# removed ucb stuff from Solaris configs (Steven Bellenot)
#
# Revision 3.13  1998/06/01 00:57:38  brianp
# updated NeXT and OpenStep configs
#
# Revision 3.12  1998/06/01 00:43:44  brianp
# added linux-sparc config from Timothy Small
#
# Revision 3.11  1998/06/01 00:41:56  brianp
# fixed X lib path problem for hpux9-gcc-sl
#
# Revision 3.10  1998/05/31 23:51:24  brianp
# added -DNO_CONST to a few more configs
#
# Revision 3.9  1998/05/31 23:34:38  brianp
# updated OS/2 support from Alexander Mai
#
# Revision 3.8  1998/05/07 00:44:20  brianp
# various linux-ppc config changes
#
# Revision 3.7  1998/04/22 00:49:57  brianp
# removed -fullwarn from irix configs.  replaced a USE_ASM symbol
#
# Revision 3.6  1998/04/20 23:54:16  brianp
# added DavidB's 3Dfx v0.25 driver changes
#
# Revision 3.5  1998/04/20 21:51:28  brianp
# small change in CFLAGS for hpux9-gcc-sl
#
# Revision 3.4  1998/04/18 05:02:20  brianp
# added linux-sparc5-elf, renamed USE_ASM to USE_X86_ASM
#
# Revision 3.3  1998/03/24 00:52:28  brianp
# added openstep-dynlib config
#
# Revision 3.2  1998/03/11 03:13:00  brianp
# added linux-ppc-so config
#
# Revision 3.1  1998/02/21 01:40:59  brianp
# added sunos4-gcc-x11r6-sl
#
# Revision 3.0  1998/02/14 17:44:15  brianp
# initial rev
#



# The following variables are passed to each Makefile:
#
# GL_LIB      the name of the Mesa "GL" library file (usually libMesaGL.a)
# GLU_LIB     the name of the Mesa "GLU" library file (usually libMesaGLU.a)
# GLUT_LIB    the name of the GLUT library file (usually libglut.a)
# CC          the C compiler (usually cc or gcc)
# CFLAGS      flags to C compiler (usually -O)
# MAKELIB     the script or command to make a library file
# XLIBS       libraries needed to link X apps (at least -lX11)
#
# Optionally, you can add definitions for the INCDIR and LIBDIR variables
# which specify where to find the Mesa include files and where to put the
# Mesa libraries.  The defaults are ../include and ../lib.  This use of
# overriding makefile macros on the command line should work with most
# variants of make.
#
# To enable profiling add -DPROFILE to the CFLAGS line.  Be sure to set the
# MESA_PROFILE environment variable to enable printing of the profile report.
#
# If your system supports the X Shared Memory extension add -DSHM to the
# CFLAGS line and add -lXext to the XLIBS line.
#
# Some compilers complain about const parameters.  Adding -DNO_CONST to the
# CFLAGS line should silence suth warnings.
#
#
# To add a new system configuration just follow the examples below and update
# the top-level Makefile.



aix:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = -O -DAIXV3" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -lX11 -lXext -lXmu -lXi"

aix-sl:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = -O -DAIXV3" \
	"MAKELIB = ../mklib.aix" \
	"XLIBS = -lX11 -lXext -lXmu -lXi"

# Make-config additions for the Amiga 3000 UX
# Carlyn Voss Iuzzolino   5/8/95: 
# Modified gcc part as follows:
# Needed to take out -pedantic because that makes gcc complain about 
# ANSI-CC not allowing #ident in Amiga's /usr/include/*.h files.
# Took out -O2 (unrecognized option for gcc on the Amiga).
# Needs /usr/lib/libsocket.a file. 
amix:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS =" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -lX11 -lsocket -lnsl "

beos-ppc:
	$(MAKE) -f Makefile.BeOS targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = mwccppc" \
	"CFLAGS = -O7" \
	"MAKELIB = ../mklib.beos-ppc" \
	"DRIVER_SOURCES = osmesa.c"

beos-x86:
	$(MAKE) -f Makefile.BeOS targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = mwccx86" \
	"CFLAGS = -O7" \
	"MAKELIB = ../mklib.beos-x86" \
	"DRIVER_SOURCES = osmesa.c"

beos-glide:
	$(MAKE) -f Makefile.BeOS targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = mwccppc" \
	"CFLAGS = -O7 -DFX -i ../../glide/include" \
	"MAKELIB = ../mklib.beos-ppc" \
	"DRIVER_SOURCES = fxmesa1.c fxmesa2.c fxmesa3.c fxmesa4.c fxmesa5.c fxmesa6.c"

bsdos:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -I/usr/X11/include -O2" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/X11/lib -lX11 -lipc"

cygnus:
	$(MAKE) -f Makefile.cygnus $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"DLLTOOL = dlltool" \
	"WING_DIR= /wing" \
	"LD = ld" \
	"CFLAGS = -I. -DWIN32 -D__WIN32__ -D_WINDOWS \
		-O2 -funroll-loops \
		-fexpensive-optimizations -fomit-frame-pointer -ffast-math \
		-malign-loops=2 -malign-jumps=2 -malign-functions=2" \
	"MAKELIB = ../mklib.ar-ruv" \
	"WLIBS = ../lib/wing32.a -lkernel32 -luser32 -lgdi32"

cygnus-linux:
	$(MAKE) -f Makefile.cygnus $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gnuwin32gcc" \
	"DLLTOOL = gnuwin32dlltool --as gnuwin32as" \
	"LD = gnuwin32ld" \
	"WING_DIR= /dos/wing" \
	"CFLAGS = -I. -DWIN32 -D__WIN32__ -D_WINDOWS \
		-O2 -funroll-loops \
		-fexpensive-optimizations -fomit-frame-pointer -ffast-math \
		-malign-loops=2 -malign-jumps=2 -malign-functions=2" \
	"MAKELIB = ../mklib.cygnus-linux" \
	"WLIBS = ../lib/wing32.a -lkernel32 -luser32 -lgdi32"

dgux:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -O" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -lX11"

freebsd:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -O2 -fPIC -pedantic -I/usr/X11R6/include -DSHM -DHZ=100" \
	"MAKELIB = ../mklib.freebsd" \
	"XLIBS = -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11"

freebsd-386:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -O3 -ffast-math -fPIC -pedantic -I/usr/X11R6/include -DSHM -DHZ=100 -DUSE_X86_ASM -DFREEBSD" \
	"MAKELIB = ../mklib.freebsd" \
	"XLIBS = -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11" \
	"ASM_SOURCES = asm_386.S"

gcc:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -pedantic -O2" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -lX11"

hpux9:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = +O3 -Aa -D_HPUX_SOURCE -I/usr/include/X11R5 -DSHM" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/lib/X11R5 -lXext -lXmu -lXi -lX11"

hpux9-gcc:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R5 -DSHM" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/lib/X11R5 -lXext -lXmu -lXi -lX11"

hpux9-sl:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.sl" \
	"GLU_LIB = libMesaGLU.sl" \
	"GLUT_LIB = libglut.sl" \
	"CC = cc" \
	"CFLAGS = +z +O3 +Olibcalls +ESlit -Aa +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R5 -DSHM" \
	"MAKELIB = ../mklib.hpux" \
	"XLIBS = -L/usr/lib/X11R5 -s -Wl,+s,-B,nonfatal,-B,immediate -lXext -lXmu -lXi -lX11"

hpux9-gcc-sl:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.sl" \
	"GLU_LIB = libMesaGLU.sl" \
	"GLUT_LIB = libglut.sl" \
	"CC = gcc" \
	"CFLAGS = -fPIC -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R5 -DSHM" \
	"MAKELIB = ../mklib.hpux" \
	"XLIBS = -L/usr/lib/X11R5 -lXext -lXmu -lXi -lX11"

hpux10:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = +O3 +DAportable -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DSHM" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11"

hpux10-gcc:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include  -DSHM" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11"

hpux10-gcc-sl:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.sl" \
	"GLU_LIB = libMesaGLU.sl" \
	"GLUT_LIB = libglut.sl" \
	"CC = gcc" \
	"CFLAGS = -fPIC -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DSHM" \
	"MAKELIB = ../mklib.hpux" \
	"XLIBS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11"


# For IRIX 4: don't use -fullwarn because it causes too much garbage
irix4:
	pmake $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = -O2 -ansi -prototypes -DSHM" \
	"MAKELIB = ../mklib.ar-rcv" \
	"XLIBS = -lXext -lXmu -lXi -lX11"

# On IRIX 5.3 -sopt causes a problem in drawpixels.c so we don't use it
irix5:
	pmake $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = -O2 -ansi -fullwarn -DSHM" \
	"MAKELIB = ../mklib.ar-rcv" \
	"XLIBS = -lX11 -lXext -lXmu -lXi"

# On IRIX 5.2+gcc
irix5-gcc:
	make $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -O2 -pedantic -DSHM" \
	"MAKELIB = ../mklib.ar-rcv" \
	"XLIBS = -lX11 -lXext -lXmu -lXi"

# IRIX 5 using Dynamic Shared Objects (DSO)
irix5-dso:
	pmake $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = cc" \
	"CFLAGS = -O2 -ansi -fullwarn -DSHM" \
	"MAKELIB = ../mklib.irix5" \
	"XLIBS = -rpath ../lib -lX11 -lXmu -lXi"

irix6-32:
	pmake $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = -32 -mips2 -O2 -ansi -DSHM -DNO_CONST" \
	"MAKELIB = ../mklib.ar-rcv" \
	"XLIBS = -lX11 -lXext -lXmu -lXi"

irix6-32-dso:
	pmake $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = cc" \
	"CFLAGS = -32 -mips2 -O2 -ansi -DSHM -DNO_CONST" \
	"MAKELIB = ../mklib.irix6-32" \
	"XLIBS = -rpath ../lib -lX11 -lXext -lXmu -lXi"

# For IRIX 6: -woff:
#   1209 - controlling expression is constant
irix6-n32:
	pmake $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"LIBDIR = ../lib32" \
	"CC = cc" \
	"CFLAGS = -n32 -mips3 -O3 -ansi -woff 1209 -DNO_CONST" \
	"MAKELIB = ../mklib.ar-rcv" \
	"XLIBS = -lX11 -lXext -lXmu -lXi"

irix6-n32-dso:
	pmake $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"LIBDIR = ../lib32" \
	"CC = cc" \
	"CFLAGS = -n32 -mips3 -O3 -ansi -DSHM -woff 1185 -DNO_CONST" \
	"MAKELIB = ../mklib.irix6-n32" \
	"XLIBS = -rpath ../lib32 -lX11 -lXmu -lXi"

irix6-gcc-n32-sl:
	make $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"LIBDIR = ../lib32" \
	"CC = gcc" \
	"CFLAGS = -mabi=n32 -mips3 -O3 -DSHM" \
	"MAKELIB = ../mklib.irix6-n32" \
	"XLIBS = -rpath ../lib32 -lX11 -lXmu -lXi"

# For IRIX 6-64: -woff:
#   1068 - integer conversion resulted in a change of sign
#   1069 - integer conversion resulted in truncation
#   1174 - variable was declared but never referenced
#   1185 - enumerated type mixed with another type
#   1209 - controlling expression is constant
#   1474 - declaring a void parameter list with a typedef is nonstandard
#   1552 - variable was set but never used
irix6-64:
	pmake $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"LIBDIR = ../lib64" \
	"CC = cc" \
	"CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DSHM -DNO_CONST" \
	"MAKELIB = ../mklib.ar-rcv" \
	"XLIBS = -lX11 -lXext -lXmu -lXi"

irix6-64-dso:
	pmake $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"LIBDIR = ../lib64" \
	"CC = cc" \
	"CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DSHM -DNO_CONST" \
	"MAKELIB = ../mklib.irix6-64" \
	"XLIBS = -rpath ../lib64 -lX11 -lXmu -lXi"

# May want to try these CFLAGS for better performance under Linux and GCC:
# -fPIC -O2 -ansi -pedantic -mieee-fp -DSHM -funroll-loops
# -fexpensive-optimizations -fomit-frame-pointer -ffast-math
# and  -malign-loops=2 -malign-jumps=2 -malign-functions=2 for Pentium

linux:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -O2 -funroll-loops -ansi -pedantic -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -I/usr/X11R6/include" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE"

# One Linux user reports having to use these XLIBS:
#    -lMrm -lXmu -lXi -lXt -lXext -lXmu -lXi -lSM -lICE -lX11

linux-elf:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -I/usr/X11R6/include" \
	"MAKELIB = ../mklib.linux" \
	"XLIBS = -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE"

linux-glide:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -DFX -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include" \
	"MAKELIB = ../mklib.glide" \
	"XLIBS = -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE"

# Linux on Intel X86: assembly language optimizations
linux-386:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -O2 -funroll-loops -ansi -pedantic -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -DUSE_X86_ASM -I/usr/X11R6/include" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE" \
	"ASM_SOURCES = asm_386.S"

linux-386-elf:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -DUSE_X86_ASM -I/usr/X11R6/include" \
	"MAKELIB = ../mklib.linux" \
	"XLIBS = -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE" \
	"ASM_SOURCES = asm_386.S"

linux-386-glide:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_X86_ASM -DSHM -DFX -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include" \
	"MAKELIB = ../mklib.glide" \
	"XLIBS = -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE" \
	"ASM_SOURCES = asm_386.S"

linux-386-glide-mits:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -DFX -D_REENTRANT -DMITS -DUSE_X86_ASM -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include" \
	"MAKELIB = ../mklib.mits" \
	"XLIBS = -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE" \
	"ASM_SOURCES = asm_386.S"

linux-386-opt-V2-glide:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -O3 -m486 -fomit-frame-pointer -pipe -ansi -pedantic -ffast-math -fexpensive-optimizations -malign-loops=2 -malign-jumps=2 -malign-functions=2 -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -DFX -DFX_V2 -DUSE_X86_ASM -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include"\
	"MAKELIB = ../mklib.glide" \
	"XLIBS = -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE" \
	"ASM_SOURCES = asm_386.S"

linux-386-opt-glide:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -O3 -m486 -fomit-frame-pointer -pipe -ansi -pedantic -ffast-math -fexpensive-optimizations -malign-loops=2 -malign-jumps=2 -malign-functions=2 -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -DFX -DUSE_X86_ASM -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include" \
	"MAKELIB = ../mklib.glide" \
	"XLIBS = -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE" \
	"ASM_SOURCES = asm_386.S"

# Contributed by John Stone
linux-386-pthread:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -O2 -funroll-loops -ansi -pedantic -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DSHM -DUSE_X86_ASM -D_REENTRANT -DTHREADS -DPTHREADS" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lpthread" \
	"ASM_SOURCES = asm_386.S"

# Contributed by John Gotts
linux-386-pthread-shared:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -O3 -fPIC -funroll-loops -ansi -pedantic -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DSHM -DUSE_X86_ASM -D_REENTRANT -DTHREADS -DPTHREADS" \
	"MAKELIB = ../mklib.linux" \
	"XLIBS = -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lpthread" \
	"ASM_SOURCES = asm_386.S"

# contribued by Uwe_Maurer@t-online.de
linux-ggi:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc"  \
	"CFLAGS = -O3 -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DSHM -DGGI -DCDECL=" \
	"MAKELIB = ../mklib.ggi" \
	"XLIBS = -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lggi"

# Linux on Alpha (based on email from John Ferguson ferguson@viz.tamu.edu)
linux-alpha:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -O2 -pedantic -L/usr/X11R6/lib -D_XOPEN_SOURCE -DSHM" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/X11R6/lib -lX11"

linux-alpha-elf:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -ansi -pedantic -fPIC -D_XOPEN_SOURCE -DSHM" \
	"MAKELIB = ../mklib.linux" \
	"XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXi"

# Not tested, but should be okay on any RedHat-based linux for PowerPC machines
# If your linux supports shared libraries, you might want to build with the 
# the "linux-ppc-shared" entry instead
# You might want to change the mcpu flag appropriately for your 
# processor (601, 603, 604, etc.), it but doesn't make much difference
linux-ppc:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -O5 -mcpu=603 -ansi -pedantic -fsigned-char -fexpensive-optimizations -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DSHM" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE"

# Tested on mklinux pre-DR3  
# Should run on any other RedHat-based linux for PowerPC machines
# that supports shared libraries
# You might want to change the mcpu flag appropriately for your 
# processor (601, 603, 604, etc.), it but doesn't make much difference
linux-ppc-so:
	$(MAKE) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -O5 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -fexpensive-optimizations -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DSHM" \
	"MAKELIB = ../mklib.linux" \
	"XLIBS = -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE"

linux-sparc:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -pedantic -funroll-loops -O3 -DSHM" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/X11/lib -lX11 -lXext -lXt -lSM -lICE -lXmu -lXi"


# Replace -mv8 with -mcypress, -msupersparc or -msparclite as appropriate.
linux-sparc5-elf:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -mv8 -O2 -ffast-math -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DSHM" \
	"MAKELIB = ../mklib.linux" \
	"XLIBS = -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE"

# For Linux with prototype Cirrus Mondello 3-D card
linux-mondello:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -O2 -ansi -pedantic -fPIC -funroll-loops -mieee-fp -DSHM -DMONDELLO" \
	"MAKELIB = ../mklib.linux" \
	"XLIBS = -L/usr/X11/lib -lX11 -lXext -lXmu -lXi -lclgd547x"

# May want to add these CFLAGS for better performance under LynxOS and GCC:
# -fPIC -O2 -ansi -pedantic -mieee-fp -DSHM -funroll-loops
# -fexpensive-optimizations -fomit-frame-pointer -ffast-math
# and  -malign-loops=2 -malign-jumps=2 -malign-functions=2 for Pentium

lynxos:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -O2 -ansi -pedantic -funroll-loops -ffast-math -DSHM" \
	"MAKELIB = ./mklib.ar-ruv" \
	"XLIBS = -L/usr/X11/lib -lX11 -lXext -lXmu -lXi -lbsd"

machten-2.2:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -DTENON -D__MACHTEN__ -fstrength-reduce -m68881 -O2" \
	"MAKELIB = ../mklib.ar-rcv" \
	"XLIBS = -L/usr/lib/X11 -lX11"

machten-4.0:
	$(MAKE) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -DTENON -D__MACHTEN__ -fstrength-reduce -O2" \
	"MAKELIB = ../mklib.ar-rcv" \
	"XLIBS = -L/usr/X11R5/lib -lX11"

mklinux:
	$(MAKE) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -pedantic -O2" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -lmoto -L/usr/X11/lib -lXmu -lX11"

netbsd:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -O2 -fPIC -DSHM -I/usr/X11R6/include -DHZ=100"  \
	"MAKELIB = ../mklib.netbsd" \
	"XLIBS = -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11"

next:	
	$(MAKE)	-f Makefile.NeXT targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"CFLAGS = -DOPENSTEP -O4" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -lNeXT_s -lsys_s"

# For NeXTStep on non-X86 with X11
next-x11:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"CFLAGS = -DOPENSTEP -pedantic -funroll-loops -O4" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/X11/lib -lX11 -lXext -lXmu -lXi"

# For NeXTStep on Intel X86 with X11
next-x86-x11:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"CFLAGS = -DOPENSTEP -pedantic -funroll-loops -O4 -mieee-fp" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/X11/lib -lX11 -lXext -lXmu -lXi"

openbsd:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = cc" \
	"CFLAGS = -O2 -fPIC -I/usr/X11R6/include -DSHM -DHZ=100" \
	"MAKELIB = ../mklib.openbsd" \
	"XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXi"

openstep:	
	$(MAKE)	-f Makefile.OpenStep targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"CFLAGS = -DOPENSTEP -O4" \
	"MAKELIB = ../mklib.openstep"

# OpenStep needs absolute paths for dylibs
openstep-dylib:       
	( libdir=`cd $(LIBDIR); pwd`; \
	$(MAKE) -f Makefile.OpenStep targets \
	"LIBDIR=$$libdir" \
	"GL_LIB=$$libdir/libMesaGL.dylib" \
	"GLU_LIB=$$libdir/libMesaGLU.dylib" \
	"CFLAGS= -DOPENSTEP -fno-common -O4" \
	"MAKELIB=../mklib.openstep" \
	)

os2-x11:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB   = MesaGL.a" \
	"GLU_LIB  = MesaGLU.a" \
	"GLUT_LIB = glut.a" \
	"CC = gcc" \
	"CFLAGS = -Zmt -O2 -Wall -funroll-loops -ansi -pedantic -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I$(X11ROOT)/XFree86/include" \
	"MAKELIB = ..\\mklib-emx.cmd " \
	"XLIBS = -Zmt -Zcrtdll -Zexe -L$(X11ROOT)/XFree86/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE"

osf1:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = -O2 -std1 -ieee_with_no_inexact -DSHM -DNO_CONST" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -lX11 -lXext -lXmu -lXi"

osf1-sl:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = cc" \
	"CFLAGS = -O2 -std1 -ieee_with_no_inexact -DSHM -DNO_CONST" \
	"MAKELIB = ../mklib.osf1" \
	"XLIBS = -lX11 -lXext -lXmu -lXi"

# QNX V4 & Watcom Compiler
qnx:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = -O" \
	"MAKELIB = ../mklib.qnx" \
	"XLIBS = -L/usr/X11/lib -lX11"

sco:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -pedantic -O2 -mieee-fp" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/X11/lib -lX11"

solaris-x86:
	$(MAKE) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = -Xa -xO3 -xpentium -KPIC -I/usr/openwin/include -DSHM" \
	"MAKELIB = ../mklib.solaris" \
	"XLIBS = -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi"

solaris-x86-gcc:
	$(MAKE) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -O3 -m486 -fPIC -I/usr/openwin/include -DSHM" \
	"MAKELIB = ../mklib.solaris" \
	"XLIBS = -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi"

sunos4:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = acc" \
	"CFLAGS = -O -DSHM -DSUNOS4" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -lX11 -lXext -lXmu -lXi"

sunos4-sl:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = acc" \
	"CFLAGS = -Kpic -O -I/usr/include/X11R5 -DSHM -DSUNOS4" \
	"MAKELIB = ld -assert pure-text -o" \
	"XLIBS = -L/usr/lib/X11R5 -lX11 -lXext -lXmu -lXi"

sunos4-gcc:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -O3 -DSHM -DSUNOS4 -I/usr/openwin/include" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi"

sunos4-gcc-sl:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so.$(VERSION)" \
	"GLU_LIB = libMesaGLU.so.$(VERSION)" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -fPIC -O3 -I/usr/include/X11R5 -I/usr/include/X11R5 -DSHM -DSUNOS4 -DSOLARIS_2_4_BUG" \
	"MAKELIB = ../mklib.sunos4" \
	"XLIBS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi"

sunos4-gcc-x11r6-sl:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so.$(VERSION)" \
	"GLU_LIB = libMesaGLU.so.$(VERSION)" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -fPIC -O3 -I/usr/X11R6.3/include -DSHM -DSUNOS4 -DSOLARIS_2_4_BUG" \
	"MAKELIB = ../mklib.sunos4" \
	"XLIBS = -L/usr/X11R6.3/lib/X11 -lX11 -lXext -lXmu -lXi"

sunos5:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = -Xa -fast -xO4 -native -I/usr/openwin/include -I/usr/dt/include -DSHM -DSOLARIS_2_4_BUG" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi"

sunos5-sl:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = cc" \
	"CFLAGS = -KPIC -Xa -O -I/usr/openwin/include -I/usr/dt/include -DSHM -DSOLARIS_2_4_BUG" \
	"MAKELIB = ../mklib.sunos5" \
	"XLIBS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi"

sunos5-ultra:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = -Xa -fast -xO5 -xtarget=ultra -I/usr/openwin/include -I/usr/dt/include -DSHM -DSOLARIS_2_4_BUG" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi"

sunos5-ultra-sl:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = cc" \
	"CFLAGS = -KPIC -Xa -fast -xO5 -xtarget=ultra -I/usr/openwin/include -I/usr/dt/include -DSHM -DSOLARIS_2_4_BUG" \
	"MAKELIB = ../mklib.sunos5" \
	"XLIBS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi"

sunos5-gcc:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -O3 -I/usr/openwin/include -DSHM -DSOLARIS_2_4_BUG" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi"

sunos5-gcc-sl:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -fPIC -O3 -I/usr/openwin/include -DSHM -DSOLARIS_2_4_BUG" \
	"MAKELIB = ../mklib.sunos5" \
	"XLIBS = -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi"

sunos5-x11r6-gcc-sl:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -fPIC -O3 -DSHM -DSOLARIS_2_4_BUG" \
	"MAKELIB = ../mklib.sunos5" \
	"XLIBS = -lSM -lICE -lX11 -lXext -lXmu -lXi -lnsl -lsocket"

# Contributed by John Stone
sunos5-pthread:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = -mt -Xa -fast -xO4 -native -I/usr/openwin/include -I/usr/dt/include -DSHM -DSOLARIS_2_4_BUG -DTHREADS -DPTHREADS" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lpthread"

# Contributed by John Stone
sunos5-thread:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = -mt -Xa -fast -xO4 -native -I/usr/openwin/include -I/usr/dt/include -DSHM -DSOLARIS_2_4_BUG -DTHREADS -DSOLARIS_THREADS" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lthread"

# Contributed by John Stone
sunos5-gcc-thread:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -O3 -I/usr/openwin/include -DSHM -DSOLARIS_2_4_BUG -D_REENTRANT -DTHREADS -DSOLARIS_THREADS" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lthread"

# Contributed by John Stone
sunos5-gcc-pthread:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -O3 -I/usr/openwin/include -DSHM -DSOLARIS_2_4_BUG -D_REENTRANT -DTHREADS -DPTHREADS" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lpthread"

# from Ron Metoyer (metoyer@iexist.flw.lucent.com)
sunSolaris-CC:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = CC" \
	"CFLAGS = -O -I/usr/openwin/include -DSHM -DSOLARIS_2_4_BUG" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi"

#This config doesn't work, Ultrix C compiler isn't ANSI compliant
ultrix:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = -O -Dconst=/**/" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -lXmu -lX11 -lXi"

ultrix-gcc:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -pedantic -O2" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -lXmu -lX11 -lXi"

# tested on Cray C90 running UNICOS 8.0.4
unicos:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS =" \
	"MAKELIB = ../mklib/ar-rcv" \
	"XLIBS = -lX11 -lXext -lXmu -lXi"

unixware:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = -O -I/usr/X/include -DSHM" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -lX11 -lXext -lXmu -lXi -lsocket -lnsl"

unixware-shared:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL" \
	"GLU_LIB = libMesaGLU" \
	"GLUT_LIB = libglut" \
	"CC = cc" \
	"CFLAGS = -O -I/usr/X/include -KPIC,inline -DSHM" \
	"MAKELIB = ../mklib.solaris" \
	"XLIBS = -lX11 -lXext -lXmu -lXi -lsocket -lnsl"

vistra:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -pedantic -O2" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -lX11 -lsocket -lnsl -lgen"


# for debugging on IRIX 5.x systems
irix-debug:
	pmake $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = -g -ansi -prototypes -fullwarn -DSHM -DUSE_X86_ASM" \
	"MAKELIB = ../mklib.ar-rcv" \
	"XLIBS = -lX11 -lXext -lXmu -lXi -lfpe -lXext -lXmu -lXi"

DEBUG:
	pmake $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = cc" \
	"CFLAGS = -g -ansi -prototypes -fullwarn -DSHM -DDEBUG" \
	"MAKELIB = ../mklib.ar-rcv" \
	"XLIBS = -lX11 -lXext -lXmu -lXi -lfpe"

# for debugging on Linux systems
linux-debug:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -g -ansi -pedantic -Wall -DSHM -DDEBUG -DSVGA -DFX -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_X86_ASM -I/usr/include/glide -I/usr/local/glide/include" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/local/glide/lib -lglide2x -ltexus -L/usr/X11/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lvga" \
	"ASM_SOURCES = asm_386.S"

linux-elf-debug:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.so" \
	"GLU_LIB = libMesaGLU.so" \
	"GLUT_LIB = libglut.so" \
	"CC = gcc" \
	"CFLAGS = -g -ansi -pedantic -Wall -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DSHM -DFX -DUSE_X86_ASM -DDEBUG -I/usr/local/glide/include -I/usr/include/glide" \
	"MAKELIB = ../mklib.glide" \
	"XLIBS = -L/usr/local/glide/lib -lglide2x -L/usr/X11/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lvga" \
	"ASM_SOURCES = asm_386.S"

# for profiling on Linux systems
linux-prof:
	$(MAKE) $(MFLAGS) targets \
	"GL_LIB = libMesaGL.a" \
	"GLU_LIB = libMesaGLU.a" \
	"GLUT_LIB = libglut.a" \
	"CC = gcc" \
	"CFLAGS = -O2 -pg -ansi -pedantic -funroll-loops -mieee-fp -DSHM" \
	"MAKELIB = ../mklib.ar-ruv" \
	"XLIBS = -L/usr/X11/lib -lX11 -lXext -lXmu -lXi"
