diff options
Diffstat (limited to 'contrib/plugins/Makefile')
-rw-r--r-- | contrib/plugins/Makefile | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/contrib/plugins/Makefile b/contrib/plugins/Makefile new file mode 100644 index 000000000..54ac5ccd9 --- /dev/null +++ b/contrib/plugins/Makefile @@ -0,0 +1,45 @@ +# -*- Mode: makefile -*- +# +# This Makefile example is fairly independent from the main makefile +# so users can take and adapt it for their build. We only really +# include config-host.mak so we don't have to repeat probing for +# cflags that the main configure has already done for us. +# + +BUILD_DIR := $(CURDIR)/../.. + +include $(BUILD_DIR)/config-host.mak + +VPATH += $(SRC_PATH)/contrib/plugins + +NAMES := +NAMES += execlog +NAMES += hotblocks +NAMES += hotpages +NAMES += howvec +NAMES += lockstep +NAMES += hwprofile +NAMES += cache + +SONAMES := $(addsuffix .so,$(addprefix lib,$(NAMES))) + +# The main QEMU uses Glib extensively so it's perfectly fine to use it +# in plugins (which many example do). +CFLAGS = $(GLIB_CFLAGS) +CFLAGS += -fPIC -Wall $(filter -W%, $(QEMU_CFLAGS)) +CFLAGS += $(if $(findstring no-psabi,$(QEMU_CFLAGS)),-Wpsabi) +CFLAGS += -I$(SRC_PATH)/include/qemu + +all: $(SONAMES) + +%.o: %.c + $(CC) $(CFLAGS) -c -o $@ $< + +lib%.so: %.o + $(CC) -shared -Wl,-soname,$@ -o $@ $^ $(LDLIBS) + +clean: + rm -f *.o *.so *.d + rm -Rf .libs + +.PHONY: all clean |