blob: e5196848776baec672274699c22cab38edf6fe25 [file] [log] [blame]
Brian Paula70ad912004-03-26 15:16:35 +00001# Configuration for Darwin / MacOS X, making dynamic libs
2
3include $(TOP)/configs/default
4
5CONFIG_NAME = darwin
6
Jeremy Huddlestonc61f4e22008-08-12 09:45:04 -07007INSTALL_DIR = /usr/X11
Jeremy Huddleston9993ccc2008-02-19 00:54:35 -08008
Jeremy Huddleston7817fea2009-03-06 11:20:21 -05009X11_DIR = $(INSTALL_DIR)
10
Brian Paula70ad912004-03-26 15:16:35 +000011# Compiler and flags
Jeremy Huddleston9993ccc2008-02-19 00:54:35 -080012CC = gcc
Vinson Leed3b46fc2009-06-26 12:36:32 -060013CXX = g++
Jeremy Huddlestonc61f4e22008-08-12 09:45:04 -070014PIC_FLAGS = -fPIC
Jeremy Huddleston4a1e1032009-12-20 21:32:35 -080015DEFINES = -D_DARWIN_C_SOURCE -DPTHREADS -D_GNU_SOURCE \
Jeremy Huddlestonde96d062010-04-02 00:57:38 -070016 -DGLX_ALIAS_UNSUPPORTED \
17 -DGLX_DIRECT_RENDERING -DGLX_USE_APPLEGL
18
19# -DGLX_INDIRECT_RENDERING \
Jeremy Huddleston9993ccc2008-02-19 00:54:35 -080020
Jeremy Huddleston4a1e1032009-12-20 21:32:35 -080021# -D_GNU_SOURCE - for src/mesa/main ...
Kristian Høgsberg6e8897f2010-02-09 09:58:36 -050022# -DGLX_DIRECT_RENDERING - pulls in libdrm stuff in glx
Jeremy Huddleston8338cc22008-09-26 12:36:42 -070023# -DGLX_USE_APPLEGL - supposed to be used with GLX_DIRECT_RENDERING to use AGL rather than DRM, but doesn't compile
Jeremy Huddlestonc61f4e22008-08-12 09:45:04 -070024# -DIN_DRI_DRIVER
Brian Paula70ad912004-03-26 15:16:35 +000025
Jeremy Huddlestonf911ca02008-08-12 11:04:19 -070026ARCH_FLAGS += $(RC_CFLAGS)
Jeremy Huddlestonc61f4e22008-08-12 09:45:04 -070027
Jeremy Huddlestonf1888002008-12-03 17:03:13 -080028CFLAGS = -ggdb3 -Os -Wall -Wmissing-prototypes -std=c99 -ffast-math -fno-strict-aliasing \
Jeremy Huddleston7817fea2009-03-06 11:20:21 -050029 -I$(INSTALL_DIR)/include -I$(X11_DIR)/include $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(ASM_FLAGS) $(DEFINES)
Jeremy Huddlestonf1888002008-12-03 17:03:13 -080030CXXFLAGS = -ggdb3 -Os -Wall -fno-strict-aliasing \
Jeremy Huddleston7817fea2009-03-06 11:20:21 -050031 -I$(INSTALL_DIR)/include -I$(X11_DIR)/include $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(ASM_FLAGS) $(DEFINES)
Dan Nicholson01b18ab2007-11-01 06:01:53 -070032
Brian Paula70ad912004-03-26 15:16:35 +000033# Library names (actual file names)
34GL_LIB_NAME = libGL.dylib
35GLU_LIB_NAME = libGLU.dylib
36GLUT_LIB_NAME = libglut.dylib
37GLW_LIB_NAME = libGLw.dylib
38OSMESA_LIB_NAME = libOSMesa.dylib
39
Jeremy Huddleston98e7c1c2008-08-12 10:59:40 -070040# globs used to install the lib and all symlinks
41GL_LIB_GLOB = libGL.*dylib
42GLU_LIB_GLOB = libGLU.*dylib
43GLUT_LIB_GLOB = libglut.*dylib
44GLW_LIB_GLOB = libGLw.*dylib
45OSMESA_LIB_GLOB = libOSMesa.*dylib
46
Jeremy Huddleston7817fea2009-03-06 11:20:21 -050047GL_LIB_DEPS = -L$(INSTALL_DIR)/$(LIB_DIR) -L$(X11_DIR)/$(LIB_DIR) -lX11 -lXext -lm -lpthread
Jeremy Huddlestonc61f4e22008-08-12 09:45:04 -070048OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
49GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
Jeremy Huddleston7817fea2009-03-06 11:20:21 -050050GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L$(INSTALL_DIR)/$(LIB_DIR) -L$(X11_DIR)/$(LIB_DIR) -lX11 -lXmu -lXi -lXext
51GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L$(INSTALL_DIR)/$(LIB_DIR) -L$(X11_DIR)/$(LIB_DIR) -lX11 -lXt
52APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L$(INSTALL_DIR)/$(LIB_DIR) -L$(X11_DIR)/$(LIB_DIR) -lX11 -lXmu -lXt -lXi -lm
Jeremy Huddleston01ac4542008-08-08 02:19:52 -070053
Brian Paul0e558912005-06-30 02:34:07 +000054# omit glw lib for now:
Jeremy Huddlestonde96d062010-04-02 00:57:38 -070055SRC_DIRS = glsl glx/apple mesa gallium glu glut/glx glew
Jeremy Huddlestonc61f4e22008-08-12 09:45:04 -070056GLU_DIRS = sgi
Jeremy Huddleston7c7fece2008-03-10 15:13:28 -070057DRIVER_DIRS = osmesa
Jeremy Huddlestonc61f4e22008-08-12 09:45:04 -070058#DRIVER_DIRS = dri
59DRI_DIRS = swrast
60PROGRAM_DIRS = xdemos