# src/mesa/drivers/osmesa/Makefile for libOSMesa.so # Note that we may generate libOSMesa.so or libOSMesa16.so or libOSMesa32.so # with this Makefile TOP = ../../../.. include $(TOP)/configs/current SOURCES = osmesa.c OBJECTS = $(SOURCES:.c=.o) INCLUDE_DIRS = \ -I$(TOP)/include \ -I$(TOP)/src/mesa \ -I$(TOP)/src/mesa/main CORE_MESA = $(TOP)/src/mesa/libmesa.a $(TOP)/src/mesa/libglapi.a .PHONY: osmesa8 .PHONY: osmesa16 .c.o: $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $< -o $@ default: # $(TOP)/$(LIB_DIR)/$(OSMESA_LIB_NAME) @ if [ "${DRIVER_DIRS}" = "osmesa" ] ; then \ $(MAKE) osmesa16 ; \ else \ $(MAKE) osmesa8 ; \ fi # The normal libOSMesa is used in conjuction with libGL osmesa8: $(TOP)/lib/$(OSMESA_LIB_NAME) $(TOP)/lib/$(OSMESA_LIB_NAME): $(OBJECTS) $(MKLIB) -o $(OSMESA_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \ -major $(MESA_MAJOR) -minor $(MESA_MINOR) -patch $(MESA_TINY) \ -install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) \ -id $(INSTALL_LIB_DIR)/lib$(OSMESA_LIB).$(MESA_MAJOR).dylib \ $(OSMESA_LIB_DEPS) $(OBJECTS) # The libOSMesa16/libOSMesa32 libraries do not use libGL but rather are built # with all the other Mesa sources (compiled with -DCHAN_BITS=16/32 osmesa16: $(OBJECTS) $(CORE_MESA) $(MKLIB) -o $(OSMESA_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \ -major $(MESA_MAJOR) -minor $(MESA_MINOR) -patch $(MESA_TINY) \ -install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) \ -id $(INSTALL_LIB_DIR)/lib$(OSMESA_LIB).$(MESA_MAJOR).dylib \ $(OSMESA_LIB_DEPS) $(OBJECTS) $(CORE_MESA) clean: -rm -f *.o *~ # XXX todo install rule?