[CRIU] [PATCH] criu: add a shell wrapper
Andrey Vagin
avagin at openvz.org
Tue Apr 19 15:51:03 PDT 2016
From: Andrew Vagin <avagin at virtuozzo.com>
This is a way to solve a problem with loading libsoccr.so.
Signed-off-by: Andrew Vagin <avagin at virtuozzo.com>
---
.gitignore | 2 +-
criu/Makefile | 10 +++++-----
criu/criu | 7 +++++++
3 files changed, 13 insertions(+), 6 deletions(-)
create mode 100755 criu/criu
diff --git a/.gitignore b/.gitignore
index fedb73b..af3f7e2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -20,7 +20,7 @@ images/*.h
images/google/protobuf/*.c
images/google/protobuf/*.h
.gitid
-criu/criu
+criu/.criu
criu/arch/*/sys-exec-tbl.c
criu/arch/*/syscalls.S
criu/include/config.h
diff --git a/criu/Makefile b/criu/Makefile
index 66c046a..386a57c 100644
--- a/criu/Makefile
+++ b/criu/Makefile
@@ -163,7 +163,7 @@ PROGRAM-BUILTINS += pie/lib.a
built-in.o: pie
$(Q) $(MAKE) $(call build-as,Makefile.crtools,.) all
-criu: $(PROGRAM-BUILTINS)
+.criu: $(PROGRAM-BUILTINS)
$(call msg-link, $@)
$(Q) $(CC) $(CFLAGS) $^ $(ARCH-LIB) $(LIBS) $(LDFLAGS) $(GMONLDOPT) -rdynamic -o $@
@@ -172,7 +172,7 @@ subclean:
$(Q) $(RM) ./*.{gcda,gcno,gcov}
$(Q) $(RM) ./pie/*.{gcda,gcno,gcov}
$(Q) $(RM) -r ./gcov
- $(Q) $(RM) criu
+ $(Q) $(RM) .criu
.PHONY: subclean
#
@@ -199,16 +199,16 @@ mrproper: subclean
UAPI_HEADERS := include/criu-plugin.h include/criu-log.h
-install: criu
+install: .criu
$(E) " INSTALL " criu
$(Q) mkdir -p $(DESTDIR)$(SBINDIR)
- $(Q) install -m 755 criu $(DESTDIR)$(SBINDIR)
+ $(Q) install -m 755 .criu $(DESTDIR)$(SBINDIR)/criu
$(Q) mkdir -p $(DESTDIR)$(INCLUDEDIR)
$(Q) install -m 644 $(UAPI_HEADERS) $(DESTDIR)$(INCLUDEDIR)
.PHONY: install
#
# Final @all target.
-all: criu
+all: .criu
@true
.PHONY: all
diff --git a/criu/criu b/criu/criu
new file mode 100755
index 0000000..a1faa46
--- /dev/null
+++ b/criu/criu
@@ -0,0 +1,7 @@
+#!/bin/sh -x
+
+# This is a wrapper around @REALBIN@ to be able to run it with a library
+# from @LIB_PATH@ that might not yet be installed into a proper place.
+
+BASEDIR=$(dirname $0)
+LD_LIBRARY_PATH=${BASEDIR}/../soccr exec ${BASEDIR}/.criu
--
2.5.0
More information about the CRIU
mailing list