132ccbee3cfaf75d8162ec77415b34569116513e
[mesa.git] / configs / default
1 # Default/template configuration
2
3 # This is included by other config files which may override some
4 # of these variables.
5 # Think of this as a base class from which configs are derived.
6
7
8 CONFIG_NAME = default
9
10 # Version info
11 MESA_MAJOR=7
12 MESA_MINOR=12
13 MESA_TINY=0
14 MESA_VERSION = $(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY)
15
16 # external projects. This should be useless now that we use libdrm.
17 DRM_SOURCE_PATH=$(TOP)/../drm
18
19 # Compiler and flags
20 CC = cc
21 CXX = CC
22 HOST_CC = $(CC)
23 CFLAGS = -O
24 CXXFLAGS = -O
25 LDFLAGS =
26 HOST_CFLAGS = $(CFLAGS)
27 GLU_CFLAGS =
28 GLX_TLS = no
29
30 # Compiler for building demos/tests/etc
31 APP_CC = $(CC)
32 APP_CXX = $(CXX)
33
34 # Misc tools and flags
35 SHELL = /bin/sh
36 MKLIB = $(SHELL) $(TOP)/bin/mklib
37 MKLIB_OPTIONS =
38 MKDEP = makedepend
39 MKDEP_OPTIONS = -fdepend
40 MAKE = make
41 FLEX = flex
42 BISON = bison
43
44 # Use MINSTALL for installing libraries, INSTALL for everything else
45 MINSTALL = $(SHELL) $(TOP)/bin/minstall
46 INSTALL = $(MINSTALL)
47
48 # Tools for regenerating glapi (generally only needed by the developers)
49 PYTHON2 = python
50 PYTHON_FLAGS = -t -O -O
51 INDENT = indent
52 INDENT_FLAGS = -i4 -nut -br -brs -npcs -ce -T GLubyte -T GLbyte -T Bool
53
54 # Library names (base name)
55 GL_LIB = GL
56 GLU_LIB = GLU
57 GLUT_LIB = glut
58 GLW_LIB = GLw
59 OSMESA_LIB = OSMesa
60 EGL_LIB = EGL
61 GLESv1_CM_LIB = GLESv1_CM
62 GLESv2_LIB = GLESv2
63 VG_LIB = OpenVG
64 GLAPI_LIB = glapi
65 WAYLAND_EGL_LIB = wayland-egl
66 GBM_LIB = gbm
67
68 # Library names (actual file names)
69 GL_LIB_NAME = lib$(GL_LIB).so
70 GLU_LIB_NAME = lib$(GLU_LIB).so
71 GLUT_LIB_NAME = lib$(GLUT_LIB).so
72 GLW_LIB_NAME = lib$(GLW_LIB).so
73 OSMESA_LIB_NAME = lib$(OSMESA_LIB).so
74 EGL_LIB_NAME = lib$(EGL_LIB).so
75 GLESv1_CM_LIB_NAME = lib$(GLESv1_CM_LIB).so
76 GLESv2_LIB_NAME = lib$(GLESv2_LIB).so
77 VG_LIB_NAME = lib$(VG_LIB).so
78 GLAPI_LIB_NAME = lib$(GLAPI_LIB).so
79 WAYLAND_EGL_LIB_NAME = lib$(WAYLAND_EGL_LIB).so
80 GBM_LIB_NAME = lib$(GBM_LIB).so
81
82 # globs used to install the lib and all symlinks
83 GL_LIB_GLOB = $(GL_LIB_NAME)*
84 GLU_LIB_GLOB = $(GLU_LIB_NAME)*
85 GLUT_LIB_GLOB = $(GLUT_LIB_NAME)*
86 GLW_LIB_GLOB = $(GLW_LIB_NAME)*
87 OSMESA_LIB_GLOB = $(OSMESA_LIB_NAME)*
88 EGL_LIB_GLOB = $(EGL_LIB_NAME)*
89 GLESv1_CM_LIB_GLOB = $(GLESv1_CM_LIB_NAME)*
90 GLESv2_LIB_GLOB = $(GLESv2_LIB_NAME)*
91 VG_LIB_GLOB = $(VG_LIB_NAME)*
92 GLAPI_LIB_GLOB = $(GLAPI_LIB_NAME)*
93 WAYLAND_EGL_LIB_GLOB = $(WAYLAND_EGL_LIB_NAME)*
94 GBM_LIB_GLOB = $(GBM_LIB_NAME)*
95
96 DRI_CFLAGS = $(CFLAGS)
97 DRI_CXXFLAGS = $(CXXFLAGS)
98
99 # Optional assembly language optimization files for libGL
100 MESA_ASM_SOURCES =
101
102 # GLw widget sources (Append "GLwMDrawA.c" here and add -lXm to GLW_LIB_DEPS in
103 # order to build the Motif widget too)
104 GLW_SOURCES = GLwDrawA.c
105 MOTIF_CFLAGS = -I/usr/include/Motif1.2
106
107
108 # Directories to build
109 LIB_DIR = lib
110 SRC_DIRS = glsl mapi/glapi mapi/vgapi mesa \
111 gallium egl gallium/winsys gallium/targets glu glut/glx glw
112 GLU_DIRS = sgi
113 DRIVER_DIRS = x11 osmesa
114
115 # EGL drivers to build
116 EGL_DRIVERS_DIRS = glx
117
118 # gbm backends to build
119 GBM_BACKEND_DIRS = dri
120
121 # Gallium directories and
122 GALLIUM_DIRS = auxiliary drivers state_trackers
123 GALLIUM_AUXILIARIES = $(TOP)/src/gallium/auxiliary/libgallium.a
124 GALLIUM_DRIVERS_DIRS = softpipe trace rbug noop identity galahad i915 i965 svga r300 nvfx nv50 failover
125 GALLIUM_DRIVERS = $(foreach DIR,$(GALLIUM_DRIVERS_DIRS),$(TOP)/src/gallium/drivers/$(DIR)/lib$(DIR).a)
126 GALLIUM_WINSYS_DIRS = sw sw/xlib
127 GALLIUM_TARGET_DIRS = libgl-xlib
128 GALLIUM_STATE_TRACKERS_DIRS = glx vega
129
130 # native platforms EGL should support
131 EGL_PLATFORMS = x11
132 EGL_CLIENT_APIS = $(GL_LIB)
133
134 # Library dependencies
135 #EXTRA_LIB_PATH ?=
136 GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lm -lpthread
137 EGL_LIB_DEPS = $(EXTRA_LIB_PATH) -ldl -lpthread
138 OSMESA_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
139 GLU_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
140 GLUT_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXi -lm
141 GLW_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lXt -lX11
142 APP_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
143 GLESv1_CM_LIB_DEPS = $(EXTRA_LIB_PATH) -lpthread
144 GLESv2_LIB_DEPS = $(EXTRA_LIB_PATH) -lpthread
145 VG_LIB_DEPS = $(EXTRA_LIB_PATH) -lpthread
146 GLAPI_LIB_DEPS = $(EXTRA_LIB_PATH) -lpthread
147 WAYLAND_EGL_LIB_DEPS = $(EXTRA_LIB_PATH) -lwayland-client -ldrm
148 GBM_LIB_DEPS = $(EXTRA_LIB_PATH) -ludev -ldl
149
150 # Program dependencies - specific GL/glut libraries added in Makefiles
151 APP_LIB_DEPS = -lm
152 X11_LIBS = -lX11
153
154 DLOPEN_LIBS = -ldl
155
156 # Installation directories (for make install)
157 INSTALL_DIR = /usr/local
158 INSTALL_LIB_DIR = $(INSTALL_DIR)/$(LIB_DIR)
159 INSTALL_INC_DIR = $(INSTALL_DIR)/include
160 DRI_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/dri
161
162 # Where libGL will look for DRI hardware drivers
163 DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR)
164
165 # EGL driver install directory
166 EGL_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/egl
167
168 # gbm backend install directory
169 GBM_BACKEND_INSTALL_DIR = $(INSTALL_LIB_DIR)/gbm
170
171 # Xorg driver install directory (for xorg state-tracker)
172 XORG_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/xorg/modules/drivers
173
174 # pkg-config substitutions
175 GL_PC_REQ_PRIV =
176 GL_PC_LIB_PRIV =
177 GL_PC_CFLAGS =
178 DRI_PC_REQ_PRIV =
179 GLU_PC_REQ = gl
180 GLU_PC_REQ_PRIV =
181 GLU_PC_LIB_PRIV =
182 GLU_PC_CFLAGS =
183 GLUT_PC_REQ_PRIV =
184 GLUT_PC_LIB_PRIV =
185 GLUT_PC_CFLAGS =
186 GLW_PC_REQ_PRIV =
187 GLW_PC_LIB_PRIV =
188 GLW_PC_CFLAGS =
189 OSMESA_PC_REQ =
190 OSMESA_PC_LIB_PRIV =
191 GLESv1_CM_PC_REQ_PRIV =
192 GLESv1_CM_PC_LIB_PRIV =
193 GLESv1_CM_PC_CFLAGS =
194 GLESv2_PC_REQ_PRIV =
195 GLESv2_PC_LIB_PRIV =
196 GLESv2_PC_CFLAGS =
197 VG_PC_REQ_PRIV =
198 VG_PC_LIB_PRIV =
199 VG_PC_CFLAGS =
200 WAYLAND_EGL_PC_REQ_PRIV =
201 WAYLAND_EGL_PC_LIB_PRIV =
202 WAYLAND_EGL_PC_CFLAGS =
203 GBM_PC_REQ_PRIV =
204 GBM_PC_LIB_PRIV =
205 GBM_PC_CFLAGS =