blob: 824f71c0cc1bbaed3f82e0370da67539d44547ec [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 Huddleston8338cc22008-09-26 12:36:42 -070016 -DGLX_ALIAS_UNSUPPORTED -DGLX_INDIRECT_RENDERING
Jeremy Huddleston9993ccc2008-02-19 00:54:35 -080017
Jeremy Huddleston4a1e1032009-12-20 21:32:35 -080018# -D_GNU_SOURCE - for src/mesa/main ...
Jeremy Huddlestonc61f4e22008-08-12 09:45:04 -070019# -DGLX_DIRECT_RENDERING - pulls in libdrm stuff in glx/x11
Jeremy Huddleston8338cc22008-09-26 12:36:42 -070020# -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 -070021# -DIN_DRI_DRIVER
Brian Paula70ad912004-03-26 15:16:35 +000022
Jeremy Huddlestonf911ca02008-08-12 11:04:19 -070023ARCH_FLAGS += $(RC_CFLAGS)
Jeremy Huddlestonc61f4e22008-08-12 09:45:04 -070024
Jeremy Huddlestonf1888002008-12-03 17:03:13 -080025CFLAGS = -ggdb3 -Os -Wall -Wmissing-prototypes -std=c99 -ffast-math -fno-strict-aliasing \
Jeremy Huddleston7817fea2009-03-06 11:20:21 -050026 -I$(INSTALL_DIR)/include -I$(X11_DIR)/include $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(ASM_FLAGS) $(DEFINES)
Jeremy Huddlestonf1888002008-12-03 17:03:13 -080027CXXFLAGS = -ggdb3 -Os -Wall -fno-strict-aliasing \
Jeremy Huddleston7817fea2009-03-06 11:20:21 -050028 -I$(INSTALL_DIR)/include -I$(X11_DIR)/include $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(ASM_FLAGS) $(DEFINES)
Dan Nicholson01b18ab2007-11-01 06:01:53 -070029
Brian Paula70ad912004-03-26 15:16:35 +000030# Library names (actual file names)
31GL_LIB_NAME = libGL.dylib
32GLU_LIB_NAME = libGLU.dylib
33GLUT_LIB_NAME = libglut.dylib
34GLW_LIB_NAME = libGLw.dylib
35OSMESA_LIB_NAME = libOSMesa.dylib
36
Jeremy Huddleston98e7c1c2008-08-12 10:59:40 -070037# globs used to install the lib and all symlinks
38GL_LIB_GLOB = libGL.*dylib
39GLU_LIB_GLOB = libGLU.*dylib
40GLUT_LIB_GLOB = libglut.*dylib
41GLW_LIB_GLOB = libGLw.*dylib
42OSMESA_LIB_GLOB = libOSMesa.*dylib
43
Jeremy Huddleston7817fea2009-03-06 11:20:21 -050044GL_LIB_DEPS = -L$(INSTALL_DIR)/$(LIB_DIR) -L$(X11_DIR)/$(LIB_DIR) -lX11 -lXext -lm -lpthread
Jeremy Huddlestonc61f4e22008-08-12 09:45:04 -070045OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
46GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
Jeremy Huddleston7817fea2009-03-06 11:20:21 -050047GLUT_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
48GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L$(INSTALL_DIR)/$(LIB_DIR) -L$(X11_DIR)/$(LIB_DIR) -lX11 -lXt
49APP_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 -070050
Brian Paul0e558912005-06-30 02:34:07 +000051# omit glw lib for now:
José Fonseca57d00012009-01-23 12:32:35 +000052SRC_DIRS = glx/x11 mesa glu glut/glx glew
Jeremy Huddlestonc61f4e22008-08-12 09:45:04 -070053GLU_DIRS = sgi
Jeremy Huddleston7c7fece2008-03-10 15:13:28 -070054DRIVER_DIRS = osmesa
Jeremy Huddlestonc61f4e22008-08-12 09:45:04 -070055#DRIVER_DIRS = dri
56DRI_DIRS = swrast
57PROGRAM_DIRS = xdemos