File: Makefile.install

package info (click to toggle)
criu 4.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 11,500 kB
  • sloc: ansic: 139,280; python: 7,484; sh: 3,824; java: 2,799; makefile: 2,659; asm: 1,137; perl: 206; xml: 117; exp: 45
file content (100 lines) | stat: -rw-r--r-- 3,007 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
#
# Installation paths.
PREFIX		?= /usr/local
BINDIR		?= $(PREFIX)/bin
SBINDIR		?= $(PREFIX)/sbin
MANDIR		?= $(PREFIX)/share/man
INCLUDEDIR	?= $(PREFIX)/include
LIBEXECDIR	?= $(PREFIX)/libexec
RUNDIR		?= /run
PLUGINDIR	?= $(PREFIX)/lib/criu

#
# For recent Debian/Ubuntu with multiarch support.
DEB_HOST_MULTIARCH := $(shell dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null)
ifneq "$(DEB_HOST_MULTIARCH)" ""
        LIBDIR			?= $(PREFIX)/lib/$(DEB_HOST_MULTIARCH)
else
        #
        # For most other systems
        ifeq "$(shell uname -m)" "x86_64"
                LIBDIR		?= $(PREFIX)/lib64
        endif
endif

#
# LIBDIR falls back to the standard path.
LIBDIR ?= $(PREFIX)/lib

export PREFIX BINDIR SBINDIR MANDIR RUNDIR
export LIBDIR INCLUDEDIR LIBEXECDIR PLUGINDIR

# Detect externally managed Python environment (PEP 668).
PYTHON_EXTERNALLY_MANAGED := $(shell $(PYTHON) -c 'import os, sysconfig; print(int(os.path.isfile(os.path.join(sysconfig.get_path("stdlib"), "EXTERNALLY-MANAGED"))))')
PIP_BREAK_SYSTEM_PACKAGES ?= 0

# If Python environment is externally managed and PIP_BREAK_SYSTEM_PACKAGES is not set, skip pip install.
SKIP_PIP_INSTALL := 0
ifeq ($(PYTHON_EXTERNALLY_MANAGED),1)
ifeq ($(PIP_BREAK_SYSTEM_PACKAGES),0)

SKIP_PIP_INSTALL := 1
$(info Warn: Externally managed python environment)
$(info Consider using PIP_BREAK_SYSTEM_PACKAGES=1)

endif
endif

# Default flags for pip install:
# --ignore-installed: Overwrite already installed pycriu/crit packages
# --no-build-isolation: Use current Python environment to build pycriu/crit packages
# --no-deps: Don't install any dependencies
# --no-index: Don't use PyPI index to find packages
# --progress-bar: Cleaner output
# --upgrade: Treat the install as an upgrade when replacing the installed version
PIPFLAGS ?= --ignore-installed --no-build-isolation --no-deps --no-index --progress-bar off --upgrade

export SKIP_PIP_INSTALL PIPFLAGS

install-man:
	$(Q) $(MAKE) -C Documentation install
.PHONY: install-man

install-lib: lib
	$(Q) $(MAKE) $(build)=lib install
.PHONY: install-lib

install-crit: lib
	$(Q) $(MAKE) $(build)=crit install
.PHONY: install-crit

install-criu: criu
	$(Q) $(MAKE) $(build)=criu install
.PHONY: install-criu

install-amdgpu_plugin: amdgpu_plugin
	$(Q) $(MAKE) -C plugins/amdgpu install
.PHONY: install-amdgpu_plugin

install-cuda_plugin: cuda_plugin
	$(Q) $(MAKE) -C plugins/cuda install
.PHONY: install-cuda_plugin

install-compel: $(compel-install-targets)
	$(Q) $(MAKE) $(build)=compel install
	$(Q) $(MAKE) $(build)=compel/plugins install
.PHONY: install-compel

install: install-man install-lib install-crit install-criu install-compel install-amdgpu_plugin install-cuda_plugin ;
.PHONY: install

uninstall:
	$(Q) $(MAKE) -C Documentation $@
	$(Q) $(MAKE) $(build)=lib $@
	$(Q) $(MAKE) $(build)=crit $@
	$(Q) $(MAKE) $(build)=criu $@
	$(Q) $(MAKE) $(build)=compel $@
	$(Q) $(MAKE) $(build)=compel/plugins $@
	$(Q) $(MAKE) -C plugins/amdgpu $@
	$(Q) $(MAKE) -C plugins/cuda $@
.PHONY: uninstall