aboutsummaryrefslogtreecommitdiffstats
path: root/tools/libxc/Makefile
diff options
context:
space:
mode:
authorKeir Fraser <keir@xen.org>2010-12-24 10:17:49 +0000
committerKeir Fraser <keir@xen.org>2010-12-24 10:17:49 +0000
commit39810ac59bf2e15cb2a54464ac0059384e56b912 (patch)
treec2886f96d2d38e402c163b0344ed43a121cca6d7 /tools/libxc/Makefile
parent500483a2156e2311c974ef6e4f7f04f5b94b3c88 (diff)
downloadxen-39810ac59bf2e15cb2a54464ac0059384e56b912.tar.gz
xen-39810ac59bf2e15cb2a54464ac0059384e56b912.tar.bz2
xen-39810ac59bf2e15cb2a54464ac0059384e56b912.zip
libxc: Use .opic to build xenctrl_osdep_ENOSYS.so
Resolves build error: /usr/bin/ld: xenctrl_osdep_ENOSYS.o: relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC xenctrl_osdep_ENOSYS.o: could not read symbols: Bad value collect2: ld returned 1 exit status Clean up object files correctly too. Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Diffstat (limited to 'tools/libxc/Makefile')
-rw-r--r--tools/libxc/Makefile12
1 files changed, 9 insertions, 3 deletions
diff --git a/tools/libxc/Makefile b/tools/libxc/Makefile
index d59a2f1e5d..a99f5c7e4c 100644
--- a/tools/libxc/Makefile
+++ b/tools/libxc/Makefile
@@ -62,6 +62,8 @@ GUEST_SRCS-$(CONFIG_X86) += xc_dom_x86.c
GUEST_SRCS-$(CONFIG_X86) += xc_cpuid_x86.c
GUEST_SRCS-$(CONFIG_IA64) += xc_dom_ia64.c
+OSDEP_SRCS-y += xenctrl_osdep_ENOSYS.c
+
-include $(XEN_TARGET_ARCH)/Makefile
CFLAGS += -Werror -Wmissing-prototypes
@@ -82,6 +84,9 @@ CTRL_PIC_OBJS := $(patsubst %.c,%.opic,$(CTRL_SRCS-y))
GUEST_LIB_OBJS := $(patsubst %.c,%.o,$(GUEST_SRCS-y))
GUEST_PIC_OBJS := $(patsubst %.c,%.opic,$(GUEST_SRCS-y))
+OSDEP_LIB_OBJS := $(patsubst %.c,%.o,$(OSDEP_SRCS-y))
+OSDEP_PIC_OBJS := $(patsubst %.c,%.opic,$(OSDEP_SRCS-y))
+
LIB := libxenctrl.a
ifneq ($(stubdom),y)
LIB += libxenctrl.so libxenctrl.so.$(MAJOR) libxenctrl.so.$(MAJOR).$(MINOR)
@@ -129,7 +134,8 @@ TAGS:
clean:
rm -rf *.rpm $(LIB) *~ $(DEPS) \
$(CTRL_LIB_OBJS) $(CTRL_PIC_OBJS) \
- $(GUEST_LIB_OBJS) $(GUEST_PIC_OBJS)
+ $(GUEST_LIB_OBJS) $(GUEST_PIC_OBJS) \
+ $(OSDEP_LIB_OBJS) $(OSDEP_PIC_OBJS)
.PHONY: rpm
rpm: build
@@ -190,8 +196,8 @@ libxenguest.so.$(MAJOR).$(MINOR): COMPRESSION_LIBS = $(call zlib-options,l)
libxenguest.so.$(MAJOR).$(MINOR): $(GUEST_PIC_OBJS) libxenctrl.so
$(CC) $(CFLAGS) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxenguest.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(GUEST_PIC_OBJS) $(COMPRESSION_LIBS) -lz -lxenctrl $(PTHREAD_LIBS)
-xenctrl_osdep_ENOSYS.so: xenctrl_osdep_ENOSYS.o libxenctrl.so
- $(CC) -g $(CFLAGS) $(LDFLAGS) $(SHLIB_LDFLAGS) -o $@ xenctrl_osdep_ENOSYS.o -lxenctrl
+xenctrl_osdep_ENOSYS.so: $(OSDEP_PIC_OBJS) libxenctrl.so
+ $(CC) -g $(CFLAGS) $(LDFLAGS) $(SHLIB_LDFLAGS) -o $@ $(OSDEP_PIC_OBJS) -lxenctrl
-include $(DEPS)