$(foreach lib,$(1),-L$(XEN_ROOT)/tools/libs/$(lib))
endef
+# Flags for linking against all Xen libraries listed in $(1) but by making use
+# of -L and -l instead of providing a path to the shared library.
+define xenlibs-ldflags-ldlibs
+ $(call xenlibs-ldflags,$(1)) \
+ $(foreach lib,$(1), -l$(FILENAME_$(lib))) \
+ $(foreach lib,$(1),$(xenlibs-ldlibs-$(lib)))
+endef
+
define LIB_defs
FILENAME_$(1) ?= xen$(1)
XEN_libxen$(1) = $$(XEN_ROOT)/tools/libs/$(1)
INTF = $(foreach obj, $(OBJS),$(obj).cmi)
LIBS = xeneventchn.cma xeneventchn.cmxa
-LIBS_xeneventchn = $(LDLIBS_libxenevtchn)
+LIBS_xeneventchn = $(call xenlibs-ldflags-ldlibs,evtchn)
all: $(INTF) $(LIBS) $(PROGRAMS)
INTF = xenctrl.cmi
LIBS = xenctrl.cma xenctrl.cmxa
-LIBS_xenctrl = $(LDLIBS_libxenctrl) $(LDLIBS_libxenguest)
+LIBS_xenctrl = $(call xenlibs-ldflags-ldlibs,ctrl guest)
xenctrl_OBJS = $(OBJS)
xenctrl_C_OBJS = xenctrl_stubs
INTF = xentoollog.cmi
LIBS = xentoollog.cma xentoollog.cmxa
-LIBS_xentoollog = $(LDLIBS_libxentoollog)
+LIBS_xentoollog = $(call xenlibs-ldflags-ldlibs,toollog)
xentoollog_OBJS = $(OBJS)
xentoollog_C_OBJS = xentoollog_stubs
OCAMLINCLUDE += -I ../xentoollog
-LIBS_xenlight = $(LDLIBS_libxenlight)
+LIBS_xenlight = $(call xenlibs-ldflags-ldlibs,light)
xenlight_OBJS = $(OBJS)
xenlight_C_OBJS = xenlight_stubs