1 # This makefile template is used to build libXvMCg3dvl.so
3 LIBNAME = lib$(LIBBASENAME).so
4 LIB_GLOB=lib$(LIBBASENAME).*so*
7 INCLUDES = -I$(TOP)/src/gallium/include \
8 -I$(TOP)/src/gallium/drivers \
9 -I$(TOP)/src/gallium/auxiliary \
10 -I$(TOP)/src/gallium/winsys \
12 DEFINES = -DGALLIUM_TRACE $(DRIVER_DEFINES)
13 LIBS = $(EXTRA_LIB_PATH) $(DRIVER_LIBS) -lXv -lX11-xcb -lxcb-dri2 -lm
14 STATE_TRACKER_LIB = $(TOP)/src/gallium/state_trackers/xvmc/libxvmctracker.a
17 LDFLAGS += $(LLVM_LDFLAGS)
18 DRIVER_EXTRAS = $(LLVM_LIBS)
21 ifeq ($(LINK_WITH_CXX),1)
28 # XXX: Hack, XvMC public funcs aren't exported if we link to libxvmctracker.a :(
29 C_SOURCES += $(wildcard $(TOP)/src/gallium/state_trackers/xvmc/*.c)
30 OBJECTS = $(C_SOURCES:.c=.o) \
36 $(CC) -c $(INCLUDES) $(CFLAGS) $(DEFINES) $< -o $@
39 $(CC) -c $(INCLUDES) $(CFLAGS) $(DEFINES) $< -o $@
43 default: depend symlinks $(TOP)/$(LIB_DIR)/gallium/$(LIBNAME)
45 $(TOP)/$(LIB_DIR)/gallium/$(LIBNAME): $(OBJECTS) $(PIPE_DRIVERS) $(STATE_TRACKER_LIB) Makefile
46 $(MKLIB) -o $(LIBBASENAME) -linker '$(LD)' -ldflags '$(LDFLAGS)' \
47 -major $(XVMC_MAJOR) -minor $(XVMC_MINOR) $(MKLIB_OPTIONS) \
48 -install $(TOP)/$(LIB_DIR)/gallium \
49 $(OBJECTS) $(STATE_TRACKER_LIB) $(PIPE_DRIVERS) $(LIBS) $(DRIVER_EXTRAS)
51 $(TOP)/$(LIB_DIR)/gallium:
54 depend: $(C_SOURCES) $(ASM_SOURCES) $(SYMLINKS)
57 $(MKDEP) $(MKDEP_OPTIONS) $(DEFINES) $(INCLUDES) $(C_SOURCES) \
58 $(ASM_SOURCES) 2> /dev/null
62 etags `find . -name \*.[ch]` `find ../include`
64 # Remove .o and backup files
66 -rm -f $(OBJECTS) *~ *.so $(SYMLINKS)
67 -rm -f depend depend.bak
70 $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
71 $(MINSTALL) -m 755 $(TOP)/$(LIB_DIR)/gallium/$(LIB_GLOB) $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)