blob: 9974b7b220194798385d4d08c7a78bb339c7c6f2 [file] [log] [blame]
Philippe Houdoinaf8031c2004-08-14 09:18:04 +00001# Configuration for BeOS
2# Written by Philippe Houdoin
3
4include $(TOP)/configs/default
5
6CONFIG_NAME = beos
7
8
9DEFINES = \
10 -DBEOS_THREADS
11
12MACHINE=$(shell uname -m)
13ifeq ($(MACHINE), BePC)
14 CPU = x86
15else
16 CPU = ppc
17endif
18
19ifeq ($(CPU), x86)
20 # BeOS x86 settings
21
22 DEFINES += \
23 -DGNU_ASSEMBLER \
24 -DUSE_X86_ASM \
25 -DUSE_MMX_ASM \
26 -DUSE_3DNOW_ASM \
27 -DUSE_SSE_ASM
28
Brian Paul28569c22005-09-12 15:19:19 +000029 ASM_SOURCES = $(X86_SOURCES)
30 ASM_API = $(X86_API)
Philippe Houdoinaf8031c2004-08-14 09:18:04 +000031
32 CC = gcc
33 CXX = g++
34 LD = gcc
35
36 CFLAGS = \
37 -Wall -Wno-multichar -Wno-ctor-dtor-privacy \
38 $(DEFINES)
39
40 CXXFLAGS = $(CFLAGS)
41
Dan Nicholson01b18ab2007-11-01 06:01:53 -070042 # Work around aliasing bugs - developers should comment this out
43 CFLAGS += -fno-strict-aliasing
44 CXXFLAGS += -fno-strict-aliasing
45
Philippe Houdoinaf8031c2004-08-14 09:18:04 +000046 LDFLAGS += -Xlinker
47
48 ifdef DEBUG
49 CFLAGS += -g -O0
Philippe Houdoinaf8031c2004-08-14 09:18:04 +000050 LDFLAGS += -g
Philippe Houdoinb227e902004-08-24 08:17:08 +000051 DEFINES += -DDEBUG
Philippe Houdoinaf8031c2004-08-14 09:18:04 +000052 else
Philippe Houdoin25f2d962004-08-14 14:29:21 +000053 CFLAGS += -O3
Philippe Houdoinaf8031c2004-08-14 09:18:04 +000054 endif
55
56 GLUT_CFLAGS = -fexceptions
57
58else
59 # BeOS PPC settings
60
61 CC = mwcc
62 CXX = $(CC)
63 LD = mwldppc
64
65 CFLAGS = \
66 -w on -requireprotos \
67 $(DEFINES)
68
69 CXXFLAGS = $(CFLAGS)
70
71 LDFLAGS += \
72 -export pragma \
73 -init _init_routine_ \
74 -term _term_routine_ \
75 -lroot \
76 /boot/develop/lib/ppc/glue-noinit.a \
77 /boot/develop/lib/ppc/init_term_dyn.o \
78 /boot/develop/lib/ppc/start_dyn.o
79
80 ifdef DEBUG
81 CFLAGS += -g -O0
82 CXXFLAGS += -g -O0
83 LDFLAGS += -g
84 else
85 CFLAGS += -O7
86 CXXFLAGS += -O7
87 endif
88
89 GLUT_CFLAGS = -fexceptions
90endif
91
92# Directories
Philippe Houdoin375047b2004-08-16 08:42:05 +000093SRC_DIRS = mesa glu glut/beos
94GLU_DIRS = sgi
Philippe Houdoinaf8031c2004-08-14 09:18:04 +000095DRIVER_DIRS = beos
Philippe Houdoin375047b2004-08-16 08:42:05 +000096PROGRAM_DIRS = beos samples redbook demos tests
Philippe Houdoinaf8031c2004-08-14 09:18:04 +000097
98# Library/program dependencies
99GL_LIB_DEPS =
Brian Paul883f9892006-07-13 02:50:27 +0000100OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
Philippe Houdoinaf8031c2004-08-14 09:18:04 +0000101GLU_LIB_DEPS =
Brian Paul883f9892006-07-13 02:50:27 +0000102GLUT_LIB_DEPS = -lgame -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
103APP_LIB_DEPS = -lbe -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -l$(GLUT_LIB)
Philippe Houdoinaf8031c2004-08-14 09:18:04 +0000104