summaryrefslogtreecommitdiffstats
path: root/share/mk/install.mk
blob: 11fe2aeb22cf94efea6323e3d21df2199e2ad1d7 (plain) (blame)
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
# Copyright 2022-2024 Alejandro Colomar <alx@kernel.org>
# SPDX-License-Identifier: LGPL-3.0-only WITH LGPL-3.0-linking-exception


ifndef MAKEFILE_INSTALL_INCLUDED
MAKEFILE_INSTALL_INCLUDED := 1


DESTDIR      :=
prefix       := /usr/local
exec_prefix  := $(prefix)/
datarootdir  := $(prefix)/share
pcdir        := $(datarootdir)/pkgconfig
includedir   := $(prefix)/include
docdir       := $(datarootdir)/doc/$(libname)
pdfdir       := $(docdir)/pdf
libdir       := $(exec_prefix)/lib
mandir       := $(datarootdir)/man
man3dir      := $(mandir)/man3
man3headdir  := $(mandir)/man3head


_prefix      := $(DESTDIR)$(prefix)
_exec_prefix := $(DESTDIR)$(exec_prefix)
_datarootdir := $(DESTDIR)$(datarootdir)
_pcdir       := $(DESTDIR)$(pcdir)
_includedir  := $(DESTDIR)$(includedir)
_docdir      := $(DESTDIR)$(docdir)
_pdfdir      := $(DESTDIR)$(pdfdir)
_libdir      := $(DESTDIR)$(libdir)
_mandir      := $(DESTDIR)$(mandir)
_man3dir     := $(DESTDIR)$(man3dir)
_man3headdir := $(DESTDIR)$(man3headdir)


_includedirs := $(patsubst $(INCLUDEDIR)/%,$(_includedir)/%/,$(TU_DIRS))


INSTALL         := install
INSTALL_DATA    := $(INSTALL) -m 644
INSTALL_DIR     := $(INSTALL) -m 755 -d
INSTALL_PROGRAM := $(INSTALL) -m 755


$(_includedirs): | $$(dir $$(@D))
	$(info	INSTALL		$@)
	$(INSTALL_DIR) $@

$(_man3dir)/ \
$(_man3headdir)/: $(_mandir)/
	$(info	INSTALL		$@)
	$(INSTALL_DIR) $@

$(_pdfdir)/: $(_docdir)/
	$(info	INSTALL		$@)
	$(INSTALL_DIR) $@

$(_pcdir)/ \
$(_docdir)/ \
$(_mandir)/: $(_datarootdir)/
	$(info	INSTALL		$@)
	$(INSTALL_DIR) $@

$(_libdir)/: $(_exec_prefix)/
	$(info	INSTALL		$@)
	$(INSTALL_DIR) $@

$(_exec_prefix)/ \
$(_datarootdir)/ \
$(_includedir)/: $(_prefix)/
	$(info	INSTALL		$@)
	$(INSTALL_DIR) $@

$(_prefix)/:
	$(info	INSTALL		$@)
	$(INSTALL_DIR) $@


.PHONY: install
install: install-dev install-lib install-man
	@:


endif  # include guard