# 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) $(TOP)/bin/mklib -o $(OSMESA_LIB) \ -linker "$(CC)" \ -major $(MESA_MAJOR) -minor $(MESA_MINOR) -patch $(MESA_TINY) \ -install $(TOP)/$(LIB_DIR) \ $(MKLIB_OPTIONS) \ $(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) $(TOP)/bin/mklib -o $(OSMESA_LIB) \ -linker "$(CC)" \ -major $(MESA_MAJOR) -minor $(MESA_MINOR) -patch $(MESA_TINY) \ -install $(TOP)/$(LIB_DIR) \ $(MKLIB_OPTIONS) \ $(OSMESA_LIB_DEPS) $(OBJECTS) $(CORE_MESA) clean: -rm -f *.o *~ # XXX todo install rule?