blob: 86d84d4b9ff4bf8df4103b7bca11d2bbcba0d4a8 [file] [log] [blame]
Adam Jacksoncb3610e2004-10-25 21:09:16 +00001TOP = ../../..
2include $(TOP)/configs/current
3
Brian Paul0e794a12006-06-22 22:50:48 +00004EXTRA_DEFINES = -DXF86VIDMODE -D_REENTRANT -UIN_DRI_DRIVER \
Brian Paul883f9892006-07-13 02:50:27 +00005 -DDEFAULT_DRIVER_DIR=\"$(DRI_DRIVER_SEARCH_DIR)\"
Adam Jacksoncb3610e2004-10-25 21:09:16 +00006
Brian Paul28569c22005-09-12 15:19:19 +00007SOURCES = \
Adam Jacksoncb3610e2004-10-25 21:09:16 +00008 glcontextmodes.c \
Adam Jacksoncb3610e2004-10-25 21:09:16 +00009 clientattrib.c \
10 compsize.c \
Adam Jacksoncb3610e2004-10-25 21:09:16 +000011 eval.c \
Adam Jacksoncb3610e2004-10-25 21:09:16 +000012 glxcmds.c \
George Sapountzisdf04ffb2008-04-18 17:28:34 +030013 glxcurrent.c \
Adam Jacksoncb3610e2004-10-25 21:09:16 +000014 glxext.c \
15 glxextensions.c \
Ian Romanick0d84c682004-12-20 04:53:00 +000016 indirect.c \
Adam Jacksoncb3610e2004-10-25 21:09:16 +000017 indirect_init.c \
Ian Romanick9bba1cf2004-12-01 09:11:04 +000018 indirect_size.c \
Ian Romanick6b89a832004-12-01 08:31:15 +000019 indirect_window_pos.c \
George Sapountzisf027f8d2008-04-18 17:28:53 +030020 indirect_texture_compression.c \
Ian Romanickbb427b12004-12-01 08:22:44 +000021 indirect_transpose_matrix.c \
Ian Romanick57b5e852005-02-23 00:24:18 +000022 indirect_vertex_array.c \
Ian Romanick40af76b2005-02-25 22:46:30 +000023 indirect_vertex_program.c \
Adam Jacksoncb3610e2004-10-25 21:09:16 +000024 pixel.c \
25 pixelstore.c \
26 render2.c \
27 renderpix.c \
28 single2.c \
29 singlepix.c \
30 vertarr.c \
31 xfont.c \
32 glx_pbuffer.c \
33 glx_query.c \
George Sapountzis1087cc62008-06-13 15:54:08 +030034 drisw_glx.c \
George Sapountzis07934572008-06-09 17:47:09 +030035 dri_common.c \
Adam Jacksoncb3610e2004-10-25 21:09:16 +000036 dri_glx.c \
Kristian Høgsberg4ceefcc2007-04-29 15:05:02 -040037 XF86dri.c \
Kristian Høgsberge82dd8c2008-03-26 19:26:59 -040038 glxhash.c \
39 dri2_glx.c \
40 dri2.c
Adam Jacksoncb3610e2004-10-25 21:09:16 +000041
Zack Rusind8be3932008-08-13 07:14:47 -040042include $(TOP)/src/mesa/sources.mak
Adam Jacksoncb3610e2004-10-25 21:09:16 +000043
Alan Hourihane6f7ed992008-06-12 00:11:54 +010044MESA_GLAPI_ASM_SOURCES = $(addprefix $(TOP)/src/mesa/, $(GLAPI_ASM_SOURCES))
Brian Paul28569c22005-09-12 15:19:19 +000045MESA_GLAPI_SOURCES = $(addprefix $(TOP)/src/mesa/, $(GLAPI_SOURCES))
46MESA_GLAPI_OBJECTS = $(addprefix $(TOP)/src/mesa/, $(GLAPI_OBJECTS))
Adam Jacksoncb3610e2004-10-25 21:09:16 +000047
Brian Paul28569c22005-09-12 15:19:19 +000048OBJECTS = $(SOURCES:.c=.o) $(MESA_GLAPI_OBJECTS)
Adam Jacksoncb3610e2004-10-25 21:09:16 +000049
Keith Whitwellfc236722004-12-08 15:16:36 +000050INCLUDES = -I. \
Adam Jacksoncb3610e2004-10-25 21:09:16 +000051 -I$(TOP)/include \
52 -I$(TOP)/include/GL/internal \
José Fonsecaeaa82d32007-12-12 16:04:58 +000053 -I$(TOP)/src/mesa \
Adam Jacksoncb3610e2004-10-25 21:09:16 +000054 -I$(TOP)/src/mesa/glapi \
Adam Jacksonbe85fde2006-08-10 20:19:57 +000055 $(LIBDRM_CFLAGS) \
Kristian Høgsberge82dd8c2008-03-26 19:26:59 -040056 $(DRI2PROTO_CFLAGS) \
Keith Whitwellfc236722004-12-08 15:16:36 +000057 $(X11_INCLUDES)
Adam Jacksoncb3610e2004-10-25 21:09:16 +000058
59
60##### RULES #####
61
62.c.o:
Brian Paul0d573012006-03-09 16:24:46 +000063 $(CC) -c $(INCLUDES) $(CFLAGS) $(EXTRA_DEFINES) $< -o $@
Adam Jacksoncb3610e2004-10-25 21:09:16 +000064
65.S.o:
Brian Paul0d573012006-03-09 16:24:46 +000066 $(CC) -c $(INCLUDES) $(CFLAGS) $(EXTRA_DEFINES) $< -o $@
Adam Jacksoncb3610e2004-10-25 21:09:16 +000067
68##### TARGETS #####
69
Brian Paul883f9892006-07-13 02:50:27 +000070default: depend $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME)
Adam Jacksoncb3610e2004-10-25 21:09:16 +000071
Adam Jacksoncb3610e2004-10-25 21:09:16 +000072# Make libGL
Brian Paul883f9892006-07-13 02:50:27 +000073$(TOP)/$(LIB_DIR)/$(GL_LIB_NAME): $(OBJECTS) Makefile
Dan Nicholsondb072ba2008-07-11 13:54:48 -070074 $(MKLIB) -o $(GL_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
Brian Paul8dcc6732005-07-25 22:59:58 +000075 -major 1 -minor 2 $(MKLIB_OPTIONS) \
Jeremy Huddleston98e7c1c2008-08-12 10:59:40 -070076 -install $(TOP)/$(LIB_DIR) -id $(INSTALL_LIB_DIR)/lib$(GL_LIB).1.dylib \
Jeremy Huddlestonac0d1962008-08-11 09:17:06 -070077 $(GL_LIB_DEPS) $(OBJECTS)
Adam Jacksoncb3610e2004-10-25 21:09:16 +000078
79
Alan Hourihane6f7ed992008-06-12 00:11:54 +010080depend: $(SOURCES) $(MESA_GLAPI_SOURCES) $(MESA_GLAPI_ASM_SOURCES) Makefile
81 rm -f depend
Adam Jacksoncb3610e2004-10-25 21:09:16 +000082 touch depend
Brian Paul28569c22005-09-12 15:19:19 +000083 $(MKDEP) $(MKDEP_OPTIONS) $(INCLUDES) $(SOURCES) \
Alan Hourihane6f7ed992008-06-12 00:11:54 +010084 $(MESA_GLAPI_SOURCES) $(MESA_GLAPI_ASM_SOURCES)
Adam Jacksoncb3610e2004-10-25 21:09:16 +000085
86
87# Emacs tags
88tags:
Brian4647f132007-04-07 19:36:58 -060089 etags `find . -name \*.[ch]` `find $(TOP)/include`
Adam Jacksoncb3610e2004-10-25 21:09:16 +000090
Kristian Høgsbergfe23dc52008-03-10 18:43:53 -040091install: $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME)
Brian Paul5429d4a2008-05-28 08:53:32 -060092 $(MAKE) -C $(TOP)/src/mesa install-libgl
Adam Jacksoncb3610e2004-10-25 21:09:16 +000093
94# Remove .o and backup files
95clean:
Brian Paul883f9892006-07-13 02:50:27 +000096 -rm -f $(TOP)/$(LIB_DIR)/libGL.so*
Adam Jacksoncb3610e2004-10-25 21:09:16 +000097 -rm -f *.o *~
Dan Nicholsonc5e2b852008-05-06 14:00:43 -070098 -rm -f depend depend.bak
Adam Jacksoncb3610e2004-10-25 21:09:16 +000099
Kristian Høgsbergbcecea62008-02-25 18:50:26 -0500100-include depend