diff options
author | jfehlig@jfehlig2.provo.novell.com <jfehlig@jfehlig2.provo.novell.com> | 2006-11-22 14:25:07 -0700 |
---|---|---|
committer | jfehlig@jfehlig2.provo.novell.com <jfehlig@jfehlig2.provo.novell.com> | 2006-11-22 14:25:07 -0700 |
commit | 0dc1af83bf422a6939bbae68a739a2de6f885c47 (patch) | |
tree | dbebac888dfbc017a62506fd46f642df264ec1f8 /tools/libxen/Makefile | |
parent | caf550ed590ec2501bac755819ce61e17c1ca46c (diff) | |
download | xen-0dc1af83bf422a6939bbae68a739a2de6f885c47.tar.gz xen-0dc1af83bf422a6939bbae68a739a2de6f885c47.tar.bz2 xen-0dc1af83bf422a6939bbae68a739a2de6f885c47.zip |
Add libxen to overall xen build via a config option in Config.mk.
Signed-off-by: Jim Fehlig <jfehlig@novell.com>
Diffstat (limited to 'tools/libxen/Makefile')
-rw-r--r-- | tools/libxen/Makefile | 44 |
1 files changed, 38 insertions, 6 deletions
diff --git a/tools/libxen/Makefile b/tools/libxen/Makefile index 88755ab6dc..c944b95215 100644 --- a/tools/libxen/Makefile +++ b/tools/libxen/Makefile @@ -15,23 +15,55 @@ # License along with this library; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # +XEN_ROOT=../.. +include $(XEN_ROOT)/tools/Rules.mk + +MAJOR = 0.1 +MINOR = 0 CFLAGS = -Iinclude \ - $(shell xml2-config --cflags) \ + $(shell xml2-config --cflags) \ $(shell curl-config --cflags) \ -W -Wall -Wmissing-prototypes -Werror -std=c99 -O2 -fPIC LDFLAGS = $(shell xml2-config --libs) \ $(shell curl-config --libs) -test/test_bindings: test/test_bindings.o src/libxen.so - $(CC) $(LDFLAGS) -o $@ $< -L src -lxen +LIBXENAPI_HDRS = $(wildcard include/*.h) +LIBXENAPI_OBJS = $(patsubst %.c, %.o, $(wildcard src/*.c)) + + +.PHONY: all +all: libxenapi.so libxenapi.a + +libxenapi.so: libxenapi.so.$(MAJOR) + ln -sf $< $@ + +libxenapi.so.$(MAJOR): libxenapi.so.$(MAJOR).$(MINOR) + ln -sf $< $@ + +libxenapi.so.$(MAJOR).$(MINOR): $(LIBXENAPI_OBJS) + $(CC) $(CFLAGS) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxenapi.so.$(MAJOR) $(SHLIB_CFLAGS) -o $@ $^ + +libxenapi.a: $(LIBXENAPI_OBJS) + $(AR) rcs libxenapi.a $^ + -src/libxen.so: $(patsubst %.c, %.o, $(wildcard src/*.c)) - $(CC) -shared -o $@ $^ +.PHONY: install +install: all + $(INSTALL_DIR) -p $(DESTDIR)/usr/include/xen/api + $(INSTALL_DIR) -p $(DESTDIR)/usr/$(LIBDIR) + $(INSTALL_PROG) libxenapi.so.$(MAJOR).$(MINOR) $(DESTDIR)/usr/$(LIBDIR) + ln -sf libxenapi.so.$(MAJOR).$(MINOR) $(DESTDIR)/usr/$(LIBDIR)/libxenapi.so.$(MAJOR) + ln -sf libxenapi.so.$(MAJOR) $(DESTDIR)/usr/$(LIBDIR)/libxenapi.so + $(INSTALL_DATA) libxenapi.a $(DESTDIR)/usr/$(LIBDIR) + for i in $(LIBXENAPI_HDRS); do \ + $(INSTALL_DATA) $$i $(DESTDIR)/usr/include/xen/api; \ + done .PHONY: clean clean: rm -f `find -name *.o` - rm -f src/libxen.so + rm -f libxenapi.so* + rm -f libxenapi.a rm -f test/test_bindings |