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
8CONFIG_NAME = default
9
10# Version info
11MESA_MAJOR=9
12MESA_MINOR=0
13MESA_TINY=3
14MESA_VERSION = $(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY)
15
16# external projects.  This should be useless now that we use libdrm.
17DRM_SOURCE_PATH=$(TOP)/../drm
18
19# Compiler and flags
20CC = cc
21CXX = CC
22CFLAGS = -O
23CXXFLAGS = -O
24LDFLAGS =
25GLU_CFLAGS =
26GLX_TLS = no
27
28# Compiler for building demos/tests/etc
29APP_CC = $(CC)
30APP_CXX = $(CXX)
31
32# Misc tools and flags
33SHELL = /bin/sh
34MKLIB = $(SHELL) $(TOP)/bin/mklib
35MKLIB_OPTIONS =
36MKDEP = makedepend
37MKDEP_OPTIONS = -fdepend
38MAKE = make
39FLEX = flex
40BISON = bison
41PKG_CONFIG = pkg-config
42
43# Use MINSTALL for installing libraries, INSTALL for everything else
44MINSTALL = $(SHELL) $(TOP)/bin/minstall
45INSTALL = $(MINSTALL)
46
47# Tools for regenerating glapi (generally only needed by the developers)
48PYTHON2 = python
49PYTHON_FLAGS = -t -O -O
50INDENT = indent
51INDENT_FLAGS = -i4 -nut -br -brs -npcs -ce -T GLubyte -T GLbyte -T Bool
52
53# Library names (base name)
54GL_LIB = GL
55GLU_LIB = GLU
56GLW_LIB = GLw
57OSMESA_LIB = OSMesa
58EGL_LIB = EGL
59GLESv1_CM_LIB = GLESv1_CM
60GLESv2_LIB = GLESv2
61VG_LIB = OpenVG
62GLAPI_LIB = glapi
63
64# Library names (actual file names)
65GL_LIB_NAME = lib$(GL_LIB).so
66GLU_LIB_NAME = lib$(GLU_LIB).so
67GLW_LIB_NAME = lib$(GLW_LIB).so
68OSMESA_LIB_NAME = lib$(OSMESA_LIB).so
69EGL_LIB_NAME = lib$(EGL_LIB).so
70GLESv1_CM_LIB_NAME = lib$(GLESv1_CM_LIB).so
71GLESv2_LIB_NAME = lib$(GLESv2_LIB).so
72VG_LIB_NAME = lib$(VG_LIB).so
73GLAPI_LIB_NAME = lib$(GLAPI_LIB).so
74
75# globs used to install the lib and all symlinks
76GL_LIB_GLOB = $(GL_LIB_NAME)*
77GLU_LIB_GLOB = $(GLU_LIB_NAME)*
78GLW_LIB_GLOB = $(GLW_LIB_NAME)*
79EGL_LIB_GLOB = $(EGL_LIB_NAME)*
80GLESv1_CM_LIB_GLOB = $(GLESv1_CM_LIB_NAME)*
81GLESv2_LIB_GLOB = $(GLESv2_LIB_NAME)*
82VG_LIB_GLOB = $(VG_LIB_NAME)*
83GLAPI_LIB_GLOB = $(GLAPI_LIB_NAME)*
84
85# Optional assembly language optimization files for libGL
86MESA_ASM_FILES =
87
88# GLw widget sources (Append "GLwMDrawA.c" here and add -lXm to GLW_LIB_DEPS in
89# order to build the Motif widget too)
90GLW_SOURCES = GLwDrawA.c
91MOTIF_CFLAGS = -I/usr/include/Motif1.2
92
93
94# Directories to build
95LIB_DIR = lib
96SRC_DIRS = glsl mapi/glapi mapi/vgapi mesa \
97	gallium egl gallium/winsys gallium/targets
98DRIVER_DIRS = x11 osmesa
99
100# Gallium directories and
101GALLIUM_DIRS = auxiliary drivers state_trackers
102GALLIUM_AUXILIARIES = $(TOP)/src/gallium/auxiliary/libgallium.a
103GALLIUM_DRIVERS_DIRS = softpipe trace rbug noop identity galahad i915 svga r300 nvfx nv50
104GALLIUM_DRIVERS = $(foreach DIR,$(GALLIUM_DRIVERS_DIRS),$(TOP)/src/gallium/drivers/$(DIR)/lib$(DIR).a)
105GALLIUM_WINSYS_DIRS = sw sw/xlib
106GALLIUM_TARGET_DIRS = libgl-xlib
107GALLIUM_STATE_TRACKERS_DIRS = glx vega
108
109# native platforms EGL should support
110EGL_PLATFORMS = x11
111EGL_CLIENT_APIS = $(GL_LIB)
112
113# Library dependencies
114#EXTRA_LIB_PATH ?=
115GL_LIB_DEPS     = -lX11 -lXext -lm -lpthread
116EGL_LIB_DEPS    = -ldl -lpthread
117OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
118GLU_LIB_DEPS    = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
119GLW_LIB_DEPS    = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lXt -lX11
120GLESv1_CM_LIB_DEPS = -lpthread
121GLESv2_LIB_DEPS = -lpthread
122VG_LIB_DEPS    = -lpthread
123GLAPI_LIB_DEPS = -lpthread
124
125# Program dependencies - specific GL libraries added in Makefiles
126X11_LIBS = -lX11
127
128DLOPEN_LIBS = -ldl
129
130# Installation directories (for make install)
131INSTALL_DIR = /usr/local
132INSTALL_LIB_DIR = $(INSTALL_DIR)/$(LIB_DIR)
133INSTALL_INC_DIR = $(INSTALL_DIR)/include
134DRI_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/dri
135
136# Where libGL will look for DRI hardware drivers
137DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR)
138
139# EGL driver install directory
140EGL_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/egl
141
142# Xorg driver install directory (for xorg state-tracker)
143XORG_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/xorg/modules/drivers
144
145# pkg-config substitutions
146GL_PC_REQ_PRIV =
147GL_PC_LIB_PRIV =
148GL_PC_CFLAGS =
149DRI_PC_REQ_PRIV =
150GLU_PC_REQ = gl
151GLU_PC_REQ_PRIV =
152GLU_PC_LIB_PRIV =
153GLU_PC_CFLAGS =
154GLW_PC_REQ_PRIV =
155GLW_PC_LIB_PRIV =
156GLW_PC_CFLAGS =
157OSMESA_PC_REQ =
158OSMESA_PC_LIB_PRIV =
159GLESv1_CM_PC_REQ_PRIV =
160GLESv1_CM_PC_LIB_PRIV =
161GLESv1_CM_PC_CFLAGS =
162GLESv2_PC_REQ_PRIV =
163GLESv2_PC_LIB_PRIV =
164GLESv2_PC_CFLAGS =
165VG_PC_REQ_PRIV =
166VG_PC_LIB_PRIV =
167VG_PC_CFLAGS =
168
169# default targets
170# this helps reduce the mismatch between our automake Makefiles and the old
171# custom Makefiles while we transition.
172
173all: default
174
175am--refresh:
176
177distclean: clean
178
179check:
180test:
181