summaryrefslogtreecommitdiffstats
path: root/rules/libselinux.make
blob: 19dd8e671a01aabf72dfba652b46f0d7b850702a (plain)
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
# -*-makefile-*-
#
# Copyright (C) 2012 by Wolfram Sang <w.sang@pengutronix.de>
#
# See CREDITS for details about who has contributed to this project.
#
# For further information about the PTXdist project and license conditions
# see the README file.
#

#
# We provide this package
#
PACKAGES-$(PTXCONF_LIBSELINUX) += libselinux

#
# Paths and names
#
LIBSELINUX_VERSION	:= 2.1.12
LIBSELINUX_MD5		:= 73270f384a032fad34b5fe075fa05ce2
LIBSELINUX		:= libselinux-$(LIBSELINUX_VERSION)
LIBSELINUX_SUFFIX	:= tar.gz
LIBSELINUX_URL		:= https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20120924/$(LIBSELINUX).$(LIBSELINUX_SUFFIX)
LIBSELINUX_SOURCE	:= $(SRCDIR)/$(LIBSELINUX).$(LIBSELINUX_SUFFIX)
LIBSELINUX_DIR		:= $(BUILDDIR)/$(LIBSELINUX)
LIBSELINUX_LICENSE	:= public_domain

# ----------------------------------------------------------------------------
# Prepare
# ----------------------------------------------------------------------------

LIBSELINUX_CONF_TOOL := NO
# no := due to CROSS_PYTHON
LIBSELINUX_MAKE_ENV = \
	$(CROSS_ENV) \
	CFLAGS="-O2 -Wall -g" \
	PYTHON=$(CROSS_PYTHON)
LIBSELINUX_MAKE_OPT := \
	LIBDIR=$(PTXDIST_SYSROOT_TARGET)/usr/lib
LIBSELINUX_INSTALL_OPT := \
	install

ifdef PTXCONF_LIBSELINUX_PYTHON
LIBSELINUX_MAKE_OPT	+= pywrap
LIBSELINUX_INSTALL_OPT	+= install-pywrap
endif

# ----------------------------------------------------------------------------
# Target-Install
# ----------------------------------------------------------------------------

LIBSELINUX_PROGS := \
	avcstat \
	compute_av \
	compute_create \
	compute_member \
	compute_relabel \
	compute_user \
	getconlist \
	getdefaultcon \
	getenforce \
	getfilecon \
	getpidcon \
	getsebool \
	getseuser \
	matchpathcon \
	policyvers \
	selinux_check_securetty_context \
	selinuxenabled \
	selinuxexeccon \
	setenforce \
	setfilecon \
	togglesebool

$(STATEDIR)/libselinux.targetinstall:
	@$(call targetinfo)

	@$(call install_init, libselinux)
	@$(call install_fixup, libselinux,PRIORITY,optional)
	@$(call install_fixup, libselinux,SECTION,base)
	@$(call install_fixup, libselinux,AUTHOR,"Wolfram Sang <w.sang@pengutronix.de>")
	@$(call install_fixup, libselinux,DESCRIPTION,missing)

	@$(call install_lib, libselinux, 0, 0, 0644, libselinux)

	@$(foreach prog, $(LIBSELINUX_PROGS), \
		$(call install_copy, libselinux, 0, 0, 0755, -, /usr/sbin/$(prog));)

ifdef PTXCONF_LIBSELINUX_PYTHON
	@$(call install_tree, libselinux, 0, 0, -, $(PYTHON_SITEPACKAGES))
endif
	@$(call install_finish, libselinux)

	@$(call touch)

# vim: syntax=make