1 # src/gbm/backends/Makefile.template
3 # Backends should define
5 # GBM_BACKEND, the driver name
6 # GBM_SOURCES, the driver sources
7 # GBM_INCLUDES, the include pathes
8 # GBM_CFLAGS, additional CFLAGS
9 # GBM_LIBS, additional LIBS
11 # before including this template.
15 GBM_BACKEND_PATH = $(TOP)/$(LIB_DIR)/gbm/$(GBM_BACKEND).so
16 GBM_OBJECTS = $(GBM_SOURCES:.c=.o)
18 GBM_TARGET = $(GBM_BACKEND_PATH)
19 GBM_INSTALL = install-so
21 default: depend $(GBM_TARGET) $(GBM_EXTRA_TARGETS)
23 $(GBM_BACKEND_PATH): $(GBM_BACKEND).so
24 @$(INSTALL) -d $(TOP)/$(LIB_DIR)/gbm
25 $(INSTALL) $< $(TOP)/$(LIB_DIR)/gbm
27 $(GBM_BACKEND).so: $(GBM_OBJECTS) Makefile $(TOP)/src/gbm/backends/Makefile.template
28 @$(MKLIB) -o $(GBM_BACKEND).so -noprefix \
29 -linker '$(CC)' -ldflags '-L$(TOP)/$(LIB_DIR) $(LDFLAGS)' \
31 $(GBM_OBJECTS) $(GBM_LIBS) -lgbm
34 $(CC) -c $(GBM_INCLUDES) $(CFLAGS) $(GBM_CFLAGS) $< -o $@
36 install-so: $(GBM_BACKEND_PATH)
37 $(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)/gbm
38 $(MINSTALL) $(GBM_BACKEND_PATH) $(DESTDIR)$(INSTALL_LIB_DIR)/gbm
40 install: $(GBM_INSTALL) $(GBM_EXTRA_INSTALL)
42 clean: $(GBM_EXTRA_CLEAN)
43 rm -f $(GBM_BACKEND).so
45 rm -f depend depend.bak
47 depend: $(GBM_SOURCES) $(GBM_EXTRA_SOURCES)
48 @ echo "running $(MKDEP)"
51 $(MKDEP) $(MKDEP_OPTIONS) $(GBM_INCLUDES) $(GBM_SOURCES) \
52 $(GBM_EXTRA_SOURCES) >/dev/null 2>/dev/null