[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH RFC 41/59] libxl.go: Link statically rather than dynamically
From: George Dunlap <george.dunlap@xxxxxxxxxx> Link statically rather than dynamically, because Go prefers that. This also gets rid of the need for schedbench-report, so disable that from the build (although keep the rule and the dummy file around just in case. Also update README.md. Signed-off-by: George Dunlap <george.dunlap@xxxxxxxxxx> --- Makefile | 11 +++++++---- libxl.go | 10 +++++++++- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 0265dc8..699cc53 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -BIN = schedbench schedbench-report +BIN = schedbench BINALL = $(BIN) .PHONY: all @@ -10,12 +10,15 @@ CGO_CFLAGS = -I/build/hg/xen.git/dist/install/usr/local/include # FIXME XENLIB_PATH ?= /build/hg/xen.git/dist/install/usr/local/lib/ -CGO_LDFLAGS = -L$(XENLIB_PATH) -Wl,-rpath-link=$(XENLIB_PATH) +CGO_LDFLAGS = -L$(XENLIB_PATH) -Wl,-rpath-link=$(XENLIB_PATH) schedbench: main.go processworker.go xenworker.go benchmark.go run.go libxl.go htmlreport.go plan.go - CGO_LDFLAGS="$(CGO_LDFLAGS)" CGO_CFLAGS="$(CGO_CFLAGS)" go build -o $@ $^ + CGO_LDFLAGS="$(CGO_LDFLAGS)" CGO_CFLAGS="$(CGO_CFLAGS)" go build -ldflags '-linkmode external -extldflags "-static"' -o $@ $^ -# FIXME: Do with dlopen instead +# If we use a statically linked binary we don't need this; the same +# binary can be used on any system. Keep this version (without any +# run support) support) around for now in case we want to go back to +# it. schedbench-report: main.go benchmark.go stubs.go htmlreport.go plan.go go build -o $@ $^ diff --git a/libxl.go b/libxl.go index 6621974..27e7766 100644 --- a/libxl.go +++ b/libxl.go @@ -19,12 +19,20 @@ package main /* -#cgo LDFLAGS: -lyajl -lxenlight +#cgo LDFLAGS: -lxenlight -lyajl_s -lxengnttab -lxenstore -lxenguest -lxentoollog -lxenevtchn -lxenctrl -lblktapctl -lxenforeignmemory -lxencall -lz -luuid -lutil #include <libxl.h> #include <stdlib.h> */ import "C" +/* + * Other flags that may be needed at some point: + * -lnl-route-3 -lnl-3 + * + * To get back to simple dynamic linking: +#cgo LDFLAGS: -lxenlight -lyajl +*/ + import ( "unsafe" "fmt" -- 2.7.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |