1 # Default/template configuration
3 # This is included by other config files which may override some
5 # Think of this as a base class from which configs are derived.
14 MESA_VERSION = $(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY)
16 # external projects. This should be useless now that we use libdrm.
17 DRM_SOURCE_PATH=$(TOP)/../drm
26 HOST_CFLAGS = $(CFLAGS)
29 # Compiler for building demos/tests/etc
33 # Misc tools and flags
35 MKLIB = $(SHELL) $(TOP)/bin/mklib
38 MKDEP_OPTIONS = -fdepend
41 # Use MINSTALL for installing libraries, INSTALL for everything else
42 MINSTALL = $(SHELL) $(TOP)/bin/minstall
45 # Tools for regenerating glapi (generally only needed by the developers)
47 PYTHON_FLAGS = -t -O -O
49 INDENT_FLAGS = -i4 -nut -br -brs -npcs -ce -T GLubyte -T GLbyte -T Bool
51 # Library names (base name)
61 # Library names (actual file names)
62 GL_LIB_NAME = lib$(GL_LIB).so
63 GLU_LIB_NAME = lib$(GLU_LIB).so
64 GLUT_LIB_NAME = lib$(GLUT_LIB).so
65 GLEW_LIB_NAME = lib$(GLEW_LIB).a
66 GLW_LIB_NAME = lib$(GLW_LIB).so
67 OSMESA_LIB_NAME = lib$(OSMESA_LIB).so
68 EGL_LIB_NAME = lib$(EGL_LIB).so
70 # globs used to install the lib and all symlinks
71 GL_LIB_GLOB = $(GL_LIB_NAME)*
72 GLU_LIB_GLOB = $(GLU_LIB_NAME)*
73 GLUT_LIB_GLOB = $(GLUT_LIB_NAME)*
74 GLW_LIB_GLOB = $(GLW_LIB_NAME)*
75 OSMESA_LIB_GLOB = $(OSMESA_LIB_NAME)*
76 EGL_LIB_GLOB = $(EGL_LIB_NAME)*
78 # Optional assembly language optimization files for libGL
81 # GLw widget sources (Append "GLwMDrawA.c" here and add -lXm to GLW_LIB_DEPS in
82 # order to build the Motif widget too)
83 GLW_SOURCES = GLwDrawA.c
84 MOTIF_CFLAGS = -I/usr/include/Motif1.2
87 # Directories to build
89 SRC_DIRS = glsl mesa gallium egl gallium/winsys gallium/targets glu glut/glx glew glw
91 DRIVER_DIRS = x11 osmesa
92 # Which subdirs under $(TOP)/progs/ to enter:
93 PROGRAM_DIRS = demos redbook samples glsl objviewer xdemos
95 # EGL drivers to build
96 EGL_DRIVERS_DIRS = glx
98 # Gallium directories and
99 GALLIUM_DIRS = auxiliary drivers state_trackers
100 GALLIUM_AUXILIARIES = $(TOP)/src/gallium/auxiliary/libgallium.a
101 GALLIUM_DRIVERS_DIRS = softpipe failover svga i915 i965 r300 trace identity
102 GALLIUM_DRIVERS = $(foreach DIR,$(GALLIUM_DRIVERS_DIRS),$(TOP)/src/gallium/drivers/$(DIR)/lib$(DIR).a)
103 GALLIUM_WINSYS_DIRS = null xlib drm
104 GALLIUM_TARGET_DIRS = libgl-xlib
105 GALLIUM_WINSYS_DRM_DIRS = swrast
106 GALLIUM_STATE_TRACKERS_DIRS = glx vega
108 # native displays EGL should support
111 # Library dependencies
113 GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lm -lpthread
114 EGL_LIB_DEPS = $(EXTRA_LIB_PATH) -ldl -lpthread
115 OSMESA_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
116 GLU_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
117 GLUT_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXi -lm
118 GLW_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lXt -lX11
119 APP_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
121 # Program dependencies - specific GL/glut libraries added in Makefiles
125 # Installation directories (for make install)
126 INSTALL_DIR = /usr/local
127 INSTALL_LIB_DIR = $(INSTALL_DIR)/$(LIB_DIR)
128 INSTALL_INC_DIR = $(INSTALL_DIR)/include
129 DRI_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/dri
131 # Where libGL will look for DRI hardware drivers
132 DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR)
134 # EGL driver install directory
135 EGL_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/egl
137 # Xorg driver install directory (for xorg state-tracker)
138 XORG_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/xorg/modules/drivers
140 # pkg-config substitutions