From: Vlad-Andrei Badoiu Date: Thu, 29 Jul 2021 12:33:40 +0000 (+0300) Subject: Add GO build rules X-Git-Tag: RELEASE-0.6~1 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=ef7871aae8f669825a8b962625e6b9b669aa82be;p=unikraft%2Flibs%2Flibgo.git Add GO build rules Our recent patch moves the GO build rules outside the main Unikraft repo. Signed-off-by: Vlad-Andrei Badoiu Reviewed-by: Simon skuenzer Approved-by: Razvan Deaconescu Tested-by: Unikraft CI GitHub-Pull-Request: #2 --- diff --git a/Makefile.rules b/Makefile.rules new file mode 100644 index 0000000..49f8730 --- /dev/null +++ b/Makefile.rules @@ -0,0 +1,23 @@ +define buildrule_go = +$(4): $(2) | preprocess + $(call build_cmd,GOC,$(1),$(4),\ + $(GOC) $$(COMPFLAGS) $$(COMPFLAGS-y) \ + $$(GOCINCLUDES) $$(GOCINCLUDES-y) \ + $$($(call vprefix_lib,$(1),GOCINCLUDES)) $$($(call vprefix_lib,$(1),GOCINCLUDES-y)) \ + $$($(call vprefix_src,$(1),$(2),$(3),INCLUDES)) $$($(call vprefix_src,$(1),$(2),$(3),INCLUDES-y)) \ + $$($(call vprefix_glb,$(3),ARCHFLAGS)) $$($(call vprefix_glb,$(3),ARCHFLAGS-y)) \ + $$(GOCFLAGS) $$(GOCFLAGS-y) $$(GOCFLAGS_EXTRA) \ + $$($(call vprefix_lib,$(1),GOCFLAGS)) $$($(call vprefix_lib,$(1),GOCFLAGS-y)) \ + $$($(call vprefix_src,$(1),$(2),$(3),FLAGS)) $$($(call vprefix_src,$(1),$(2),$(3),FLAGS-y)) \ + $(5) \ + $$(DBGFLAGS) $$(DBGFLAGS-y) \ + -D__LIBNAME__=$(1) -D__BASENAME__=$(notdir $(2)) $(if $(3),-D__VARIANT__=$(3)) \ + -c $(2) -o $(4) $(call depflags,$(4)) + ) + +UK_SRCS-y += $(2) +UK_DEPS-y += $(call out2dep,$(4)) +UK_OBJS-y += $(4) +$(eval $(call vprefix_lib,$(1),OBJS-y) += $(4)) +$(eval $(call vprefix_lib,$(1),CLEAN-y) += $(call build_clean,$(4)) $(call out2dep,$(4))) +endef