1f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org# This makefile template is used to build libvdpau_g3dvl.so 2f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 3f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgLIBNAME = lib$(LIBBASENAME).so 4f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgVDPAU_LIB_GLOB=lib$(LIBBASENAME).*so* 5f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgVDPAU_MAJOR = 1 6f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgVDPAU_MINOR = 0 7f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgINCLUDES = -I$(TOP)/src/gallium/include \ 8f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org -I$(TOP)/src/gallium/drivers \ 9f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org -I$(TOP)/src/gallium/auxiliary \ 10f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org -I$(TOP)/src/gallium/winsys \ 11f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org $(DRIVER_INCLUDES) 12f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgDEFINES = -DGALLIUM_TRACE -DVER_MAJOR=$(VDPAU_MAJOR) -DVER_MINOR=$(VDPAU_MINOR) $(DRIVER_DEFINES) 13f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgLIBS = $(DRIVER_LIBS) -lvdpau -lX11-xcb -lxcb-dri2 -lm -lrt 14f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgSTATE_TRACKER_LIB = $(TOP)/src/gallium/state_trackers/vdpau/libvdpautracker.a 15f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 16f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgifeq ($(MESA_LLVM),1) 17f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgLDFLAGS += $(LLVM_LDFLAGS) 18f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgDRIVER_EXTRAS = $(LLVM_LIBS) 19f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgLD=$(CXX) 20f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgelse 21f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org ifeq ($(LINK_WITH_CXX),1) 22f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org LD=$(CXX) 23f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org else 24f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org LD=$(CC) 25f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org endif 26f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgendif 27f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 28f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org# XXX: Hack, VDPAU public funcs aren't exported if we link to libvdpautracker.a :( 29f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgC_SOURCES += $(TOP)/src/gallium/state_trackers/vdpau/device.c 30f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgOBJECTS = $(C_SOURCES:.c=.o) \ 31f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org $(ASM_SOURCES:.S=.o) 32f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 33f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org##### RULES ##### 34f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 35f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org.c.o: 36f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org $(CC) -c $(INCLUDES) $(CFLAGS) $(DEFINES) $< -o $@ 37f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 38f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org.S.o: 39f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org $(CC) -c $(INCLUDES) $(CFLAGS) $(DEFINES) $< -o $@ 40f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 41f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org##### TARGETS ##### 42f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 43f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgdefault: depend symlinks $(TOP)/$(LIB_DIR)/gallium/$(LIBNAME) 44f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 45f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org$(TOP)/$(LIB_DIR)/gallium/$(LIBNAME): $(OBJECTS) $(PIPE_DRIVERS) $(STATE_TRACKER_LIB) Makefile 46f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org $(MKLIB) -o $(LIBBASENAME) -linker '$(LD)' -ldflags '$(LDFLAGS)' \ 47f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org -major $(VDPAU_MAJOR) -minor $(VDPAU_MINOR) $(MKLIB_OPTIONS) \ 48f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org -install $(TOP)/$(LIB_DIR)/gallium \ 49f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org $(OBJECTS) $(STATE_TRACKER_LIB) $(PIPE_DRIVERS) $(LIBS) $(DRIVER_EXTRAS) 50f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 51f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org$(TOP)/$(LIB_DIR)/gallium: 52f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org mkdir -p $@ 53f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 54f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgdepend: $(C_SOURCES) $(ASM_SOURCES) $(SYMLINKS) 55f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org rm -f depend 56f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org touch depend 57f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org $(MKDEP) $(MKDEP_OPTIONS) $(DEFINES) $(INCLUDES) $(C_SOURCES) \ 58f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org $(ASM_SOURCES) 2> /dev/null 59f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 60f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org# Emacs tags 61f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgtags: 62f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org etags `find . -name \*.[ch]` `find ../include` 63f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 64f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org# Remove .o and backup files 65f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgclean: 66f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org -rm -f $(OBJECTS) *~ *.so $(SYMLINKS) 67f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org -rm -f depend depend.bak 68f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 69f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orginstall: default 70f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org $(INSTALL) -d $(DESTDIR)$(VDPAU_LIB_INSTALL_DIR) 71f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org $(MINSTALL) -m 755 $(TOP)/$(LIB_DIR)/gallium/$(VDPAU_LIB_GLOB) $(DESTDIR)$(VDPAU_LIB_INSTALL_DIR) 72f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 73f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orginclude depend 74