aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa/main/Makefile.BeOS-R5
diff options
context:
space:
mode:
authorBrian Paul <[email protected]>2002-09-19 16:19:43 +0000
committerBrian Paul <[email protected]>2002-09-19 16:19:43 +0000
commit473e51f2fbfb003717bb88616ea585fc8d76f75e (patch)
treef1ce211df7e089916bb720d36f8a950ef4624f4f /src/mesa/main/Makefile.BeOS-R5
parentcbc1fb0a9a4c97a36608fb20483246559b4c2f76 (diff)
Updated BeOS support (Philippe Houdoin)
Diffstat (limited to 'src/mesa/main/Makefile.BeOS-R5')
-rw-r--r--src/mesa/main/Makefile.BeOS-R5452
1 files changed, 452 insertions, 0 deletions
diff --git a/src/mesa/main/Makefile.BeOS-R5 b/src/mesa/main/Makefile.BeOS-R5
new file mode 100644
index 00000000000..65303863a23
--- /dev/null
+++ b/src/mesa/main/Makefile.BeOS-R5
@@ -0,0 +1,452 @@
+# Mesa 3-D graphics library
+# Version: 4.1
+#
+# Copyright (C) 1995-2002 Brian Paul All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# the rights to use, copy, modify, merge, publish, distribute, sublicense,
+# and/or sell copies of the Software, and to permit persons to whom the
+# Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included
+# in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+# BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+# BeOS driver makefile v1.0 for Mesa 4.1
+#
+# Copyright (C) 2002 - Philippe Houdoin
+# Web : http://philippe.houdoin.free.fr/phil/beos/index-en.html
+#
+# -------------------------------------------------------------------
+
+## BeOS Generic Makefile v2.0 ##
+
+## Fill in this file to specify the project being created, and the referenced
+## makefile-engine will do all of the hard work for you. This handles both
+## Intel and PowerPC builds of the BeOS.
+
+## Application Specific Settings ---------------------------------------------
+
+# specify the name of the binary
+NAME= libGL.so
+
+# specify the type of binary
+# APP: Application
+# SHARED: Shared library or add-on
+# STATIC: Static library archive
+# DRIVER: Kernel Driver
+TYPE= SHARED
+
+# specify the source files to use
+# full paths or paths relative to the makefile can be included
+# all files, regardless of directory, will have their object
+# files created in the common object directory.
+# Note that this means this makefile will not work correctly
+# if two source files with the same name (source.c or source.cpp)
+# are included from different directories. Also note that spaces
+# in folder names do not work well with this makefile.
+
+MESA_CORE_SRCS = \
+ api_arrayelt.c \
+ api_loopback.c \
+ api_noop.c \
+ api_validate.c \
+ accum.c \
+ attrib.c \
+ blend.c \
+ buffers.c \
+ clip.c \
+ colortab.c \
+ context.c \
+ convolve.c \
+ debug.c \
+ depth.c \
+ dispatch.c \
+ dlist.c \
+ drawpix.c \
+ enable.c \
+ enums.c \
+ eval.c \
+ extensions.c \
+ feedback.c \
+ fog.c \
+ get.c \
+ glapi.c \
+ glthread.c \
+ hash.c \
+ hint.c \
+ histogram.c \
+ image.c \
+ imports.c \
+ light.c \
+ lines.c \
+ matrix.c \
+ mem.c \
+ mmath.c \
+ pixel.c \
+ points.c \
+ polygon.c \
+ rastpos.c \
+ state.c \
+ stencil.c \
+ texformat.c \
+ teximage.c \
+ texobj.c \
+ texstate.c \
+ texstore.c \
+ texutil.c \
+ varray.c \
+ vpexec.c \
+ vpparse.c \
+ vpstate.c \
+ vtxfmt.c \
+ math/m_debug_clip.c \
+ math/m_debug_norm.c \
+ math/m_debug_xform.c \
+ math/m_eval.c \
+ math/m_matrix.c \
+ math/m_translate.c \
+ math/m_vector.c \
+ math/m_xform.c \
+ array_cache/ac_context.c \
+ array_cache/ac_import.c \
+ swrast/s_aaline.c \
+ swrast/s_aatriangle.c \
+ swrast/s_accum.c \
+ swrast/s_alpha.c \
+ swrast/s_alphabuf.c \
+ swrast/s_bitmap.c \
+ swrast/s_blend.c \
+ swrast/s_buffers.c \
+ swrast/s_copypix.c \
+ swrast/s_context.c \
+ swrast/s_depth.c \
+ swrast/s_drawpix.c \
+ swrast/s_feedback.c \
+ swrast/s_fog.c \
+ swrast/s_histogram.c \
+ swrast/s_imaging.c \
+ swrast/s_lines.c \
+ swrast/s_logic.c \
+ swrast/s_masking.c \
+ swrast/s_pixeltex.c \
+ swrast/s_points.c \
+ swrast/s_readpix.c \
+ swrast/s_span.c \
+ swrast/s_stencil.c \
+ swrast/s_texture.c \
+ swrast/s_texstore.c \
+ swrast/s_triangle.c \
+ swrast/s_zoom.c \
+ swrast_setup/ss_context.c \
+ swrast_setup/ss_triangle.c \
+ swrast_setup/ss_vb.c \
+ tnl/t_array_api.c \
+ tnl/t_array_import.c \
+ tnl/t_context.c \
+ tnl/t_eval_api.c \
+ tnl/t_imm_alloc.c \
+ tnl/t_imm_api.c \
+ tnl/t_imm_debug.c \
+ tnl/t_imm_dlist.c \
+ tnl/t_imm_elt.c \
+ tnl/t_imm_eval.c \
+ tnl/t_imm_exec.c \
+ tnl/t_imm_fixup.c \
+ tnl/t_pipeline.c \
+ tnl/t_vb_fog.c \
+ tnl/t_vb_light.c \
+ tnl/t_vb_normals.c \
+ tnl/t_vb_points.c \
+ tnl/t_vb_program.c \
+ tnl/t_vb_render.c \
+ tnl/t_vb_texgen.c \
+ tnl/t_vb_texmat.c \
+ tnl/t_vb_vertex.c
+
+MESA_BEOS_DRIVER_SRCS = \
+ BeOS/GLView.cpp
+
+MESA_X86_SRCS = \
+ X86/x86.c \
+ X86/glapi_x86.S \
+ X86/common_x86.c \
+ X86/common_x86_asm.S \
+ X86/x86_xform2.S \
+ X86/x86_xform3.S \
+ X86/x86_xform4.S \
+ X86/x86_cliptest.S
+
+MESA_MMX_SRCS = \
+ X86/mmx_blend.S
+
+MESA_SSE_SRCS = \
+ X86/sse.c \
+ X86/sse_xform2.S \
+ X86/sse_xform3.S \
+ X86/sse_xform4.S \
+ X86/sse_normal.S
+
+MESA_3DNOW_SRCS = \
+ X86/3dnow.c \
+ X86/3dnow_normal.S \
+ X86/3dnow_xform1.S \
+ X86/3dnow_xform2.S \
+ X86/3dnow_xform3.S \
+ X86/3dnow_xform4.S
+
+MESA_DEFINES =
+# To use GAS assembler, uncomment this line instead:
+MESA_DEFINES += GNU_ASSEMBLER
+# To use NASM assembler, uncomment this line instead:
+# MESA_DEFINES += NASM_ASSEMBLER
+# To build a DEBUG version of Mesa, uncomment this line instead:
+# MESA_DEFINES += DEBUG
+
+# x86-optimized code
+MACHINE=$(shell uname -m)
+ifeq ($(MACHINE), BePC)
+ HAVE_MMX = 1
+ HAVE_SSE = 1
+ HAVE_3DNOW = 1
+else
+ # No assembly optimization for PowerPC...
+ # HAVE_ALTIVEC=1
+endif
+
+ifdef HAVE_MMX
+ MESA_X86_SRCS += $(MESA_MMX_SRCS)
+ MESA_DEFINES += USE_MMX_ASM
+ HAVE_X86 = 1
+endif
+ifdef HAVE_SSE
+ MESA_X86_SRCS += $(MESA_SSE_SRCS)
+ MESA_DEFINES += USE_SSE_ASM
+ HAVE_X86 = 1
+endif
+ifdef HAVE_3DNOW
+ MESA_X86_SRCS += $(MESA_3DNOW_SRCS)
+ MESA_DEFINES += USE_3DNOW_ASM
+ HAVE_X86 = 1
+endif
+ifdef HAVE_X86
+ MESA_DEFINES += USE_X86_ASM
+else
+ MESA_X86_SRCS =
+endif
+
+# FIXME: SI-GLU version support currently broken
+# USE_SI_GLU=1
+ifdef USE_SI_GLU
+ GLU_SRCS = \
+ ../si-glu/libutil/error.c \
+ ../si-glu/libutil/glue.c \
+ ../si-glu/libutil/mipmap.c \
+ ../si-glu/libutil/project.c \
+ ../si-glu/libutil/quad.c \
+ ../si-glu/libutil/registry.c \
+ ../si-glu/libtess/dict.c \
+ ../si-glu/libtess/geom.c \
+ ../si-glu/libtess/memalloc.c \
+ ../si-glu/libtess/mesh.c \
+ ../si-glu/libtess/normal.c \
+ ../si-glu/libtess/priorityq.c \
+ ../si-glu/libtess/render.c \
+ ../si-glu/libtess/sweep.c \
+ ../si-glu/libtess/tess.c \
+ ../si-glu/libtess/tessmono.c \
+ ../si-glu/libnurbs/interface/bezierEval.cc \
+ ../si-glu/libnurbs/interface/bezierPatch.cc \
+ ../si-glu/libnurbs/interface/bezierPatchMesh.cc \
+ ../si-glu/libnurbs/interface/glcurveval.cc \
+ ../si-glu/libnurbs/interface/glinterface.cc \
+ ../si-glu/libnurbs/interface/glrenderer.cc \
+ ../si-glu/libnurbs/interface/glsurfeval.cc \
+ ../si-glu/libnurbs/interface/incurveeval.cc \
+ ../si-glu/libnurbs/interface/insurfeval.cc \
+ ../si-glu/libnurbs/internals/arc.cc \
+ ../si-glu/libnurbs/internals/arcsorter.cc \
+ ../si-glu/libnurbs/internals/arctess.cc \
+ ../si-glu/libnurbs/internals/backend.cc \
+ ../si-glu/libnurbs/internals/basiccrveval.cc \
+ ../si-glu/libnurbs/internals/basicsurfeval.cc \
+ ../si-glu/libnurbs/internals/bin.cc \
+ ../si-glu/libnurbs/internals/bufpool.cc \
+ ../si-glu/libnurbs/internals/cachingeval.cc \
+ ../si-glu/libnurbs/internals/ccw.cc \
+ ../si-glu/libnurbs/internals/coveandtiler.cc \
+ ../si-glu/libnurbs/internals/curve.cc \
+ ../si-glu/libnurbs/internals/curvelist.cc \
+ ../si-glu/libnurbs/internals/curvesub.cc \
+ ../si-glu/libnurbs/internals/dataTransform.cc \
+ ../si-glu/libnurbs/internals/displaylist.cc \
+ ../si-glu/libnurbs/internals/flist.cc \
+ ../si-glu/libnurbs/internals/flistsorter.cc \
+ ../si-glu/libnurbs/internals/hull.cc \
+ ../si-glu/libnurbs/internals/intersect.cc \
+ ../si-glu/libnurbs/internals/knotvector.cc \
+ ../si-glu/libnurbs/internals/mapdesc.cc \
+ ../si-glu/libnurbs/internals/mapdescv.cc \
+ ../si-glu/libnurbs/internals/maplist.cc \
+ ../si-glu/libnurbs/internals/mesher.cc \
+ ../si-glu/libnurbs/internals/monoTriangulationBackend.cc \
+ ../si-glu/libnurbs/internals/monotonizer.cc \
+ ../si-glu/libnurbs/internals/mycode.cc \
+ ../si-glu/libnurbs/internals/nurbsinterfac.cc \
+ ../si-glu/libnurbs/internals/nurbstess.cc \
+ ../si-glu/libnurbs/internals/patch.cc \
+ ../si-glu/libnurbs/internals/patchlist.cc \
+ ../si-glu/libnurbs/internals/quilt.cc \
+ ../si-glu/libnurbs/internals/reader.cc \
+ ../si-glu/libnurbs/internals/renderhints.cc \
+ ../si-glu/libnurbs/internals/slicer.cc \
+ ../si-glu/libnurbs/internals/sorter.cc \
+ ../si-glu/libnurbs/internals/splitarcs.cc \
+ ../si-glu/libnurbs/internals/subdivider.cc \
+ ../si-glu/libnurbs/internals/tobezier.cc \
+ ../si-glu/libnurbs/internals/trimline.cc \
+ ../si-glu/libnurbs/internals/trimregion.cc \
+ ../si-glu/libnurbs/internals/trimvertpool.cc \
+ ../si-glu/libnurbs/internals/uarray.cc \
+ ../si-glu/libnurbs/internals/varray.cc \
+ ../si-glu/libnurbs/nurbtess/directedLine.cc \
+ ../si-glu/libnurbs/nurbtess/gridWrap.cc \
+ ../si-glu/libnurbs/nurbtess/monoChain.cc \
+ ../si-glu/libnurbs/nurbtess/monoPolyPart.cc \
+ ../si-glu/libnurbs/nurbtess/monoTriangulation.cc \
+ ../si-glu/libnurbs/nurbtess/partitionX.cc \
+ ../si-glu/libnurbs/nurbtess/partitionY.cc \
+ ../si-glu/libnurbs/nurbtess/polyDBG.cc \
+ ../si-glu/libnurbs/nurbtess/polyUtil.cc \
+ ../si-glu/libnurbs/nurbtess/primitiveStream.cc \
+ ../si-glu/libnurbs/nurbtess/quicksort.cc \
+ ../si-glu/libnurbs/nurbtess/rectBlock.cc \
+ ../si-glu/libnurbs/nurbtess/sampleComp.cc \
+ ../si-glu/libnurbs/nurbtess/sampleCompBot.cc \
+ ../si-glu/libnurbs/nurbtess/sampleCompRight.cc \
+ ../si-glu/libnurbs/nurbtess/sampleCompTop.cc \
+ ../si-glu/libnurbs/nurbtess/sampleMonoPoly.cc \
+ ../si-glu/libnurbs/nurbtess/sampledLine.cc \
+ ../si-glu/libnurbs/nurbtess/searchTree.cc
+else
+ GLU_SRCS = \
+ ../src-glu/glu.c \
+ ../src-glu/mipmap.c \
+ ../src-glu/project.c \
+ ../src-glu/quadric.c \
+ ../src-glu/tess.c \
+ ../src-glu/tesselat.c \
+ ../src-glu/polytest.c \
+ ../src-glu/nurbs.c \
+ ../src-glu/nurbscrv.c \
+ ../src-glu/nurbssrf.c \
+ ../src-glu/nurbsutl.c
+endif
+
+SRCS = $(MESA_CORE_SRCS) $(MESA_X86_SRCS) $(GLU_SRCS) $(MESA_BEOS_DRIVER_SRCS)
+
+# specify the resource files to use
+# full path or a relative path to the resource file can be used.
+RSRCS =
+
+# specify additional libraries to link against
+# there are two acceptable forms of library specifications
+# - if your library follows the naming pattern of:
+# libXXX.so or libXXX.a you can simply specify XXX
+# library: libbe.so entry: be
+#
+# - if your library does not follow the standard library
+# naming scheme you need to specify the path to the library
+# and it's name
+# library: my_lib.a entry: my_lib.a or path/my_lib.a
+LIBS = be
+
+# specify additional paths to directories following the standard
+# libXXX.so or libXXX.a naming scheme. You can specify full paths
+# or paths relative to the makefile. The paths included may not
+# be recursive, so include all of the paths where libraries can
+# be found. Directories where source files are found are
+# automatically included.
+LIBPATHS =
+
+# additional paths to look for system headers
+# thes use the form: #include <header>
+# source file directories are NOT auto-included here
+SYSTEM_INCLUDE_PATHS = ../include
+ifdef USE_SI_GLU
+ SYSTEM_INCLUDE_PATHS += ../si-glu/include
+endif
+
+# additional paths to look for local headers
+# thes use the form: #include "header"
+# source file directories are automatically included
+LOCAL_INCLUDE_PATHS =
+
+# specify the level of optimization that you desire
+# NONE, SOME, FULL
+OPTIMIZE = FULL
+
+# specify any preprocessor symbols to be defined. The symbols
+# will be set to a value of 1. For example specify DEBUG if you want
+# DEBUG=1 to be set when compiling.
+DEFINES = $(MESA_DEFINES)
+
+# specify special warning levels
+# if unspecified default warnings will be used
+# NONE = suppress all warnings
+# ALL = enable all warnings
+WARNINGS = ALL
+
+# specify whether image symbols will be created
+# so that stack crawls in the debugger are meaningful
+# if TRUE symbols will be created
+SYMBOLS = TRUE
+
+# specify debug settings
+# if TRUE will allow application to be run from
+# a source-level debugger
+# DEBUGGER = TRUE
+DEBUGGER = FALSE
+
+# specify additional compiler flags for all files
+COMPILER_FLAGS =
+
+# specify additional linker flags
+LINKER_FLAGS =
+
+
+
+## include the makefile-engine
+include /boot/develop/etc/makefile-engine
+
+
+
+# X86/matypes.h include file is *generated*!
+# Rules to (re)generate it as needed:
+
+X86/common_x86_asm.S : X86/matypes.h
+
+X86/matypes.h : X86/gen_matypes.c
+ @echo "(Re-)Generating $@ ..."
+ $(CC) $< $(INCLUDES) $(CFLAGS) -o X86/gen_matypes
+ X86/gen_matypes > $@
+ rm -f X86/gen_matypes
+
+## Add NASM support for assembly code compilation...
+# $(OBJ_DIR)/%.o : %.nasm
+# nasm -f elf $(MESA_DEFINES) -o $@ $<
+
+$(OBJ_DIR)/%.o : %.S
+ gcc -c $< $(INCLUDES) $(CFLAGS) -o $@
+# gcc $(INCLUDES) $(CFLAGS) -E $< | grep -v '^$$' > $(addsuffix .nasm, $(basename $<))
+# nasm -f elf $(MESA_DEFINES) -o $@ $(addsuffix .nasm, $(basename $<))
+