blob: 183ba255e4874b472805097757bec023233b56e1 [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
29 ASM_SOURCES = $(X86_SOURCES) $(X86_API)
30
31 CC = gcc
32 CXX = g++
33 LD = gcc
34
35 CFLAGS = \
36 -Wall -Wno-multichar -Wno-ctor-dtor-privacy \
37 $(DEFINES)
38
39 CXXFLAGS = $(CFLAGS)
40
41 LDFLAGS += -Xlinker
42
43 ifdef DEBUG
44 CFLAGS += -g -O0
45 CXXFLAGS += -g -O0
46 LDFLAGS += -g
47 else
48 CFLAGS += -O2
49 CXXFLAGS += -O2
50 endif
51
52 GLUT_CFLAGS = -fexceptions
53
54else
55 # BeOS PPC settings
56
57 CC = mwcc
58 CXX = $(CC)
59 LD = mwldppc
60
61 CFLAGS = \
62 -w on -requireprotos \
63 $(DEFINES)
64
65 CXXFLAGS = $(CFLAGS)
66
67 LDFLAGS += \
68 -export pragma \
69 -init _init_routine_ \
70 -term _term_routine_ \
71 -lroot \
72 /boot/develop/lib/ppc/glue-noinit.a \
73 /boot/develop/lib/ppc/init_term_dyn.o \
74 /boot/develop/lib/ppc/start_dyn.o
75
76 ifdef DEBUG
77 CFLAGS += -g -O0
78 CXXFLAGS += -g -O0
79 LDFLAGS += -g
80 else
81 CFLAGS += -O7
82 CXXFLAGS += -O7
83 endif
84
85 GLUT_CFLAGS = -fexceptions
86endif
87
88# Directories
89SRC_DIRS = mesa glut/beos
90GLU_DIRS = # sgi
91DRIVER_DIRS = beos
92PROGRAM_DIRS = beos samples redbook tests demos
93
94# Library/program dependencies
95GL_LIB_DEPS =
96OSMESA_LIB_DEPS = -L$(LIB_DIR) -lGL
97GLU_LIB_DEPS =
98GLUT_LIB_DEPS = -lgame -L$(LIB_DIR) -lGL
99APP_LIB_DEPS = -lbe -L$(LIB_DIR) -lGL -lglut
100