2004-03-26 15:16:35 +00:00
|
|
|
# Default/template configuration
|
|
|
|
|
|
|
|
# This is included by other config files which may override some
|
|
|
|
# of these variables.
|
2006-06-22 23:50:48 +01:00
|
|
|
# Think of this as a base class from which configs are derived.
|
|
|
|
|
2004-03-26 15:16:35 +00:00
|
|
|
|
|
|
|
CONFIG_NAME = default
|
|
|
|
|
|
|
|
# Version info
|
2007-04-28 00:01:23 +01:00
|
|
|
MESA_MAJOR=7
|
2011-01-06 07:27:30 +00:00
|
|
|
MESA_MINOR=11
|
2007-04-28 00:01:23 +01:00
|
|
|
MESA_TINY=0
|
2008-04-30 23:06:00 +01:00
|
|
|
MESA_VERSION = $(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY)
|
2004-03-26 15:16:35 +00:00
|
|
|
|
2005-08-19 21:20:03 +01:00
|
|
|
# external projects. This should be useless now that we use libdrm.
|
2005-07-02 22:28:01 +01:00
|
|
|
DRM_SOURCE_PATH=$(TOP)/../drm
|
2004-03-26 15:16:35 +00:00
|
|
|
|
|
|
|
# Compiler and flags
|
|
|
|
CC = cc
|
|
|
|
CXX = CC
|
2008-01-03 23:08:53 +00:00
|
|
|
HOST_CC = $(CC)
|
2004-03-26 15:16:35 +00:00
|
|
|
CFLAGS = -O
|
|
|
|
CXXFLAGS = -O
|
2007-09-29 01:42:21 +01:00
|
|
|
LDFLAGS =
|
2009-09-12 17:27:01 +01:00
|
|
|
HOST_CFLAGS = $(CFLAGS)
|
2004-03-26 15:16:35 +00:00
|
|
|
GLU_CFLAGS =
|
2011-01-10 22:37:26 +00:00
|
|
|
GLX_TLS = no
|
2004-04-08 00:15:26 +01:00
|
|
|
|
2008-09-11 18:00:54 +01:00
|
|
|
# Compiler for building demos/tests/etc
|
|
|
|
APP_CC = $(CC)
|
|
|
|
APP_CXX = $(CXX)
|
|
|
|
|
2004-04-08 00:15:26 +01:00
|
|
|
# Misc tools and flags
|
2008-07-08 15:44:58 +01:00
|
|
|
SHELL = /bin/sh
|
2008-07-11 21:54:48 +01:00
|
|
|
MKLIB = $(SHELL) $(TOP)/bin/mklib
|
2004-03-26 15:16:35 +00:00
|
|
|
MKLIB_OPTIONS =
|
2004-04-08 00:15:26 +01:00
|
|
|
MKDEP = makedepend
|
2004-12-08 15:16:36 +00:00
|
|
|
MKDEP_OPTIONS = -fdepend
|
2004-06-01 01:06:14 +01:00
|
|
|
MAKE = make
|
2009-05-22 17:39:02 +01:00
|
|
|
|
|
|
|
# Use MINSTALL for installing libraries, INSTALL for everything else
|
|
|
|
MINSTALL = $(SHELL) $(TOP)/bin/minstall
|
|
|
|
INSTALL = $(MINSTALL)
|
2004-03-26 15:16:35 +00:00
|
|
|
|
2008-01-15 17:52:17 +00:00
|
|
|
# Tools for regenerating glapi (generally only needed by the developers)
|
2005-07-01 02:27:00 +01:00
|
|
|
PYTHON2 = python
|
|
|
|
PYTHON_FLAGS = -t -O -O
|
2008-01-15 17:52:17 +00:00
|
|
|
INDENT = indent
|
|
|
|
INDENT_FLAGS = -i4 -nut -br -brs -npcs -ce -T GLubyte -T GLbyte -T Bool
|
2005-07-01 02:27:00 +01:00
|
|
|
|
2004-03-26 15:16:35 +00:00
|
|
|
# Library names (base name)
|
|
|
|
GL_LIB = GL
|
|
|
|
GLU_LIB = GLU
|
|
|
|
GLUT_LIB = glut
|
|
|
|
GLW_LIB = GLw
|
|
|
|
OSMESA_LIB = OSMesa
|
2009-12-21 03:13:18 +00:00
|
|
|
EGL_LIB = EGL
|
2010-05-04 15:43:05 +01:00
|
|
|
GLESv1_CM_LIB = GLESv1_CM
|
|
|
|
GLESv2_LIB = GLESv2
|
|
|
|
VG_LIB = OpenVG
|
2010-12-26 10:02:59 +00:00
|
|
|
GLAPI_LIB = glapi
|
2011-02-04 11:24:08 +00:00
|
|
|
WAYLAND_EGL_LIB = wayland-egl
|
2004-03-26 15:16:35 +00:00
|
|
|
|
|
|
|
|
|
|
|
# Library names (actual file names)
|
2005-03-23 02:12:21 +00:00
|
|
|
GL_LIB_NAME = lib$(GL_LIB).so
|
|
|
|
GLU_LIB_NAME = lib$(GLU_LIB).so
|
|
|
|
GLUT_LIB_NAME = lib$(GLUT_LIB).so
|
|
|
|
GLW_LIB_NAME = lib$(GLW_LIB).so
|
2005-06-07 16:25:08 +01:00
|
|
|
OSMESA_LIB_NAME = lib$(OSMESA_LIB).so
|
2009-12-21 03:13:18 +00:00
|
|
|
EGL_LIB_NAME = lib$(EGL_LIB).so
|
2010-05-04 15:43:05 +01:00
|
|
|
GLESv1_CM_LIB_NAME = lib$(GLESv1_CM_LIB).so
|
|
|
|
GLESv2_LIB_NAME = lib$(GLESv2_LIB).so
|
|
|
|
VG_LIB_NAME = lib$(VG_LIB).so
|
2010-12-26 10:02:59 +00:00
|
|
|
GLAPI_LIB_NAME = lib$(GLAPI_LIB).so
|
2011-02-04 11:24:08 +00:00
|
|
|
WAYLAND_EGL_LIB_NAME = lib$(WAYLAND_EGL_LIB).so
|
2004-03-26 15:16:35 +00:00
|
|
|
|
2008-08-12 18:59:40 +01:00
|
|
|
# globs used to install the lib and all symlinks
|
|
|
|
GL_LIB_GLOB = $(GL_LIB_NAME)*
|
|
|
|
GLU_LIB_GLOB = $(GLU_LIB_NAME)*
|
|
|
|
GLUT_LIB_GLOB = $(GLUT_LIB_NAME)*
|
|
|
|
GLW_LIB_GLOB = $(GLW_LIB_NAME)*
|
|
|
|
OSMESA_LIB_GLOB = $(OSMESA_LIB_NAME)*
|
2009-12-21 03:13:18 +00:00
|
|
|
EGL_LIB_GLOB = $(EGL_LIB_NAME)*
|
2010-05-04 15:43:05 +01:00
|
|
|
GLESv1_CM_LIB_GLOB = $(GLESv1_CM_LIB_NAME)*
|
|
|
|
GLESv2_LIB_GLOB = $(GLESv2_LIB_NAME)*
|
|
|
|
VG_LIB_GLOB = $(VG_LIB_NAME)*
|
2010-12-26 10:02:59 +00:00
|
|
|
GLAPI_LIB_GLOB = $(GLAPI_LIB_NAME)*
|
2011-02-04 11:24:08 +00:00
|
|
|
WAYLAND_EGL_LIB_GLOB = $(WAYLAND_EGL_LIB_NAME)*
|
2004-03-26 15:16:35 +00:00
|
|
|
|
2011-02-03 00:19:32 +00:00
|
|
|
DRI_CFLAGS = $(CFLAGS)
|
|
|
|
DRI_CXXFLAGS = $(CXXFLAGS)
|
|
|
|
|
2004-03-26 15:16:35 +00:00
|
|
|
# Optional assembly language optimization files for libGL
|
2008-02-19 04:27:13 +00:00
|
|
|
MESA_ASM_SOURCES =
|
2004-03-26 15:16:35 +00:00
|
|
|
|
2004-07-20 21:43:24 +01:00
|
|
|
# GLw widget sources (Append "GLwMDrawA.c" here and add -lXm to GLW_LIB_DEPS in
|
|
|
|
# order to build the Motif widget too)
|
2004-03-26 21:48:09 +00:00
|
|
|
GLW_SOURCES = GLwDrawA.c
|
2008-07-18 15:40:41 +01:00
|
|
|
MOTIF_CFLAGS = -I/usr/include/Motif1.2
|
2004-03-26 15:16:35 +00:00
|
|
|
|
|
|
|
|
2006-06-22 23:50:48 +01:00
|
|
|
# Directories to build
|
2006-07-13 03:50:27 +01:00
|
|
|
LIB_DIR = lib
|
2010-04-26 05:56:44 +01:00
|
|
|
SRC_DIRS = glsl mapi/glapi mapi/vgapi mesa \
|
2010-06-05 12:33:58 +01:00
|
|
|
gallium egl gallium/winsys gallium/targets glu glut/glx glw
|
2004-03-26 15:16:35 +00:00
|
|
|
GLU_DIRS = sgi
|
2009-02-10 16:43:25 +00:00
|
|
|
DRIVER_DIRS = x11 osmesa
|
2004-03-26 15:16:35 +00:00
|
|
|
|
2009-12-21 03:13:18 +00:00
|
|
|
# EGL drivers to build
|
2010-01-22 07:07:58 +00:00
|
|
|
EGL_DRIVERS_DIRS = glx
|
2007-10-24 13:34:01 +01:00
|
|
|
|
2009-02-10 12:59:35 +00:00
|
|
|
# Gallium directories and
|
2009-02-10 15:23:02 +00:00
|
|
|
GALLIUM_DIRS = auxiliary drivers state_trackers
|
2009-12-31 23:46:46 +00:00
|
|
|
GALLIUM_AUXILIARIES = $(TOP)/src/gallium/auxiliary/libgallium.a
|
2011-01-10 02:04:41 +00:00
|
|
|
GALLIUM_DRIVERS_DIRS = softpipe trace rbug noop identity galahad i915 i965 svga r300 nvfx nv50 failover
|
2009-02-20 11:03:18 +00:00
|
|
|
GALLIUM_DRIVERS = $(foreach DIR,$(GALLIUM_DRIVERS_DIRS),$(TOP)/src/gallium/drivers/$(DIR)/lib$(DIR).a)
|
2010-03-16 13:54:18 +00:00
|
|
|
GALLIUM_WINSYS_DIRS = sw sw/xlib
|
gallium: introduce target directory
Currently there are still at least two functions bundled up inside the
winsys concept:
a) that of a backend resource manager, sometimes capable of performing
present() operations,
b) the initialization code/routine for the whole driver stack.
The inclusion of (b) makes it difficult to share implementations of
(a) between different drivers. For instance, a clean xlib winsys
could be of use for software-rasterized VG, GLES, EGL, etc, stacks.
But that is only true as long as there is no dependency from the
winsys to higher level code, as would be the case when we include (b)
in this component.
This change creates a new gallium/targets subtree, specifically for
implementing the glue needed to build individual driver stacks, and
moves that code out of a single example winsys, namely xlib.
Other drivers continue to build unchanged, but hopefully can migrate
to this structure over time.
2010-03-08 19:11:35 +00:00
|
|
|
GALLIUM_TARGET_DIRS = libgl-xlib
|
2010-01-27 00:31:06 +00:00
|
|
|
GALLIUM_STATE_TRACKERS_DIRS = glx vega
|
2008-02-18 05:25:04 +00:00
|
|
|
|
2010-06-17 09:07:46 +01:00
|
|
|
# native platforms EGL should support
|
|
|
|
EGL_PLATFORMS = x11
|
2010-05-05 08:38:02 +01:00
|
|
|
EGL_CLIENT_APIS = $(GL_LIB)
|
2009-02-10 12:59:35 +00:00
|
|
|
|
|
|
|
# Library dependencies
|
2006-09-06 14:56:26 +01:00
|
|
|
#EXTRA_LIB_PATH ?=
|
2011-01-17 00:01:54 +00:00
|
|
|
GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lm -lpthread
|
2009-08-21 06:53:36 +01:00
|
|
|
EGL_LIB_DEPS = $(EXTRA_LIB_PATH) -ldl -lpthread
|
2008-01-03 22:59:14 +00:00
|
|
|
OSMESA_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
|
|
|
|
GLU_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
|
|
|
|
GLUT_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXi -lm
|
|
|
|
GLW_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lXt -lX11
|
|
|
|
APP_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
|
2010-05-04 15:43:05 +01:00
|
|
|
GLESv1_CM_LIB_DEPS = $(EXTRA_LIB_PATH) -lpthread
|
|
|
|
GLESv2_LIB_DEPS = $(EXTRA_LIB_PATH) -lpthread
|
|
|
|
VG_LIB_DEPS = $(EXTRA_LIB_PATH) -lpthread
|
2010-12-26 10:02:59 +00:00
|
|
|
GLAPI_LIB_DEPS = $(EXTRA_LIB_PATH) -lpthread
|
2011-02-04 11:24:08 +00:00
|
|
|
WAYLAND_EGL_LIB_DEPS = $(EXTRA_LIB_PATH) -lwayland-client -ldrm
|
2007-10-29 15:04:30 +00:00
|
|
|
|
|
|
|
# Program dependencies - specific GL/glut libraries added in Makefiles
|
|
|
|
APP_LIB_DEPS = -lm
|
2010-04-01 22:59:10 +01:00
|
|
|
X11_LIBS = -lX11
|
2006-06-22 23:50:48 +01:00
|
|
|
|
2010-07-16 13:09:29 +01:00
|
|
|
DLOPEN_LIBS = -ldl
|
|
|
|
|
2006-06-22 23:50:48 +01:00
|
|
|
# Installation directories (for make install)
|
2006-10-19 21:11:15 +01:00
|
|
|
INSTALL_DIR = /usr/local
|
2008-07-03 17:17:44 +01:00
|
|
|
INSTALL_LIB_DIR = $(INSTALL_DIR)/$(LIB_DIR)
|
|
|
|
INSTALL_INC_DIR = $(INSTALL_DIR)/include
|
|
|
|
DRI_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/dri
|
2006-07-13 03:50:27 +01:00
|
|
|
|
|
|
|
# Where libGL will look for DRI hardware drivers
|
|
|
|
DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR)
|
|
|
|
|
2010-01-23 12:18:43 +00:00
|
|
|
# EGL driver install directory
|
|
|
|
EGL_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/egl
|
|
|
|
|
2009-03-05 23:46:08 +00:00
|
|
|
# Xorg driver install directory (for xorg state-tracker)
|
|
|
|
XORG_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/xorg/modules/drivers
|
|
|
|
|
2008-11-24 19:01:57 +00:00
|
|
|
# pkg-config substitutions
|
|
|
|
GL_PC_REQ_PRIV =
|
|
|
|
GL_PC_LIB_PRIV =
|
|
|
|
GL_PC_CFLAGS =
|
|
|
|
DRI_PC_REQ_PRIV =
|
|
|
|
GLU_PC_REQ = gl
|
|
|
|
GLU_PC_REQ_PRIV =
|
|
|
|
GLU_PC_LIB_PRIV =
|
|
|
|
GLU_PC_CFLAGS =
|
|
|
|
GLUT_PC_REQ_PRIV =
|
|
|
|
GLUT_PC_LIB_PRIV =
|
|
|
|
GLUT_PC_CFLAGS =
|
|
|
|
GLW_PC_REQ_PRIV =
|
|
|
|
GLW_PC_LIB_PRIV =
|
|
|
|
GLW_PC_CFLAGS =
|
2008-12-14 17:35:29 +00:00
|
|
|
OSMESA_PC_REQ =
|
|
|
|
OSMESA_PC_LIB_PRIV =
|
2010-05-04 15:43:05 +01:00
|
|
|
GLESv1_CM_PC_REQ_PRIV =
|
|
|
|
GLESv1_CM_PC_LIB_PRIV =
|
|
|
|
GLESv1_CM_PC_CFLAGS =
|
|
|
|
GLESv2_PC_REQ_PRIV =
|
|
|
|
GLESv2_PC_LIB_PRIV =
|
|
|
|
GLESv2_PC_CFLAGS =
|
|
|
|
VG_PC_REQ_PRIV =
|
|
|
|
VG_PC_LIB_PRIV =
|
|
|
|
VG_PC_CFLAGS =
|
2011-02-04 11:24:08 +00:00
|
|
|
WAYLAND_EGL_PC_REQ_PRIV =
|
|
|
|
WAYLAND_EGL_PC_LIB_PRIV =
|
|
|
|
WAYLAND_EGL_PC_CFLAGS =
|