On 24.12.2011 07:30, Brian Paul wrote:
On Fri, Dec 23, 2011 at 4:24 PM, Alexander von Gluck
<kallis...@unixzen.com> wrote:

---
 Makefile      |    1 +
 acinclude.m4  |    2 +-
 configs/haiku |   66
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 68 insertions(+), 1 deletions(-)
 create mode 100644 configs/haiku

diff --git a/Makefile b/Makefile
index cf6555c..4caa8ce 100644
--- a/Makefile
+++ b/Makefile
@@ -90,6 +90,7 @@ freebsd \
 freebsd-dri \
 freebsd-dri-amd64 \
 freebsd-dri-x86 \
+haiku \
 hpux10 \
 hpux10-gcc \
 hpux10-static \
diff --git a/acinclude.m4 b/acinclude.m4
index a5b389d..1ff61c2 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -34,7 +34,7 @@ if test "$enable_pic" != no; then
        # see if we're using GCC
        if test "x$GCC" = xyes; then
            case "$host_os" in
-            aix*|beos*|cygwin*|irix5*|irix6*|osf3*|osf4*|osf5*)
+            aix*|haiku*|cygwin*|irix5*|irix6*|osf3*|osf4*|osf5*)
                # PIC is the default for these OSes.
                ;;
            mingw*|os2*|pw32*)
diff --git a/configs/haiku b/configs/haiku
new file mode 100644
index 0000000..12f958e
--- /dev/null
+++ b/configs/haiku
@@ -0,0 +1,66 @@
+# Configuration for Haiku
+# Written by Alexander von Gluck IV
+#
+# Based on the BeOS config
+# written by Philippe Houdoin
+
+include $(TOP)/configs/default
+
+CONFIG_NAME = haiku
+
+# Haiku settings
+
+DEFINES = \
+       -DBEOS_THREADS \
+       -DGNU_ASSEMBLER \
+       -DUSE_X86_ASM \
+       -DUSE_MMX_ASM \
+       -DUSE_3DNOW_ASM \
+       -DUSE_SSE_ASM
+
+MESA_ASM_SOURCES = $(X86_SOURCES)
+GLAPI_ASM_SOURCES = $(X86_API)
+
+CC = gcc
+CXX = g++
+LD = gcc
+
+CFLAGS = -Wall -Wno-multichar $(DEFINES)
+CXXFLAGS = $(CFLAGS)
+LDFLAGS += -Xlinker
+
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing -std=c99
+CXXFLAGS += -fno-strict-aliasing
+
+# No makedepend on Haiku, this will solve it
+MKDEP = true
+
+# Debug defines
+ifdef DEBUG
+       CFLAGS  += -g -O0
+       LDFLAGS += -g
+       DEFINES += -DDEBUG
+else
+       CFLAGS   += -O3
+endif
+
+# Glut setings
+GLUT_CFLAGS = -fexceptions

GLUT is no longer in the Mesa tree (it's in a separate repo now) so
this could be removed.

I left it in there as it seems the GLUT package gets extracted into
the Mesa tree when you need it... is this correct?

That line can be cut, it doesn't seem to effect the build though
when glut is not present in the source tree.

+
+# Gallium settings
+GALLIUM_DRIVERS_DIRS = trace softpipe i915 r300
+GALLIUM_STATE_TRACKERS_DIRS =
+
+# Directories
+SRC_DIRS = gallium glsl mapi/glapi mesa/x86 mesa glu
+SRC_DIRS += glut/beos
+GLU_DIRS = sgi
+DRIVER_DIRS =
+
+# Library/program dependencies
+GL_LIB_DEPS =
+OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
+GLU_LIB_DEPS =
+GLUT_LIB_DEPS = -lgame -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
+APP_LIB_DEPS = -lbe -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -l$(GLUT_LIB)


BTW, there's talk of removing the old Mesa Makefile system in favor of
autoconf/automake.  Will you be able to adapt to the later (or scons)?

I could migrate to autoconf/automake, for the moment though while this
platform support is in it's early stages, could we leave the makefile?
I'm still hammering out our build process for Mesa on the Haiku side.

Do you think this transition will occur after 7.12?

 -- Alex
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to