/
Makefile
159 lines (128 loc) · 3.75 KB
/
Makefile
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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=selinux-python
PKG_VERSION:=3.1
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/SELinuxProject/selinux/releases/download/20200710
PKG_HASH:=f4d0a1a030bc291a6af498b26e0676b745075dd289a8ba16cdec86c3ea8f2f02
PKG_MAINTAINER:=Thomas Petazzoni <thomas.petazzoni@bootlin.com>
PKG_LICENSE:=GPL-2.0-only
PKG_LICENSE_FILES:=COPYING
PYTHON3_PKG_BUILD:=0
PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
include ../../lang/python/python3-package.mk
#
# common definitions
#
define Package/selinux-python/Default
SECTION:=utils
DEPENDS:=+python3 +python3-libselinux
CATEGORY:=Utilities
URL:=http://selinuxproject.org/page/Main_Page
endef
define Package/selinux-python/Default/description
A set of SELinux tools written in python that help with
managing a system with SELinux enabled.
endef
MAKE_VARS = \
PYTHON=$(HOST_PYTHON3_BIN) \
PYTHONLIBDIR=$(PYTHON3_PKG_DIR) \
$(PYTHON3_VARS)
define Build/Compile
$(call Build/Compile/Default,all)
endef
#
# selinux-audit2allow
#
define Package/selinux-audit2allow
$(call Package/selinux-python/Default)
TITLE:=selinux-audit2allow
DEPENDS+=+python3-sepolgen +libselinux +libsepol
endef
define Package/selinux-audit2allow/description
$(call Package/selinux-python/Default/description)
This package contains the audit2allow and audit2why tools.
endef
define Package/selinux-audit2allow/install
$(MAKE_VARS) $(MAKE) -C $(PKG_BUILD_DIR)/audit2allow DESTDIR=$(1) install
rm -rf $(1)/usr/share/man
endef
#
# selinux-chchat
#
define Package/selinux-chcat
$(call Package/selinux-python/Default)
TITLE:=selinux-chcat
endef
define Package/selinux-chcat/description
$(call Package/selinux-python/Default/description)
This package contains the chcat tool.
endef
define Package/selinux-chcat/install
$(MAKE_VARS) $(MAKE) -C $(PKG_BUILD_DIR)/chcat DESTDIR=$(1) install
rm -rf $(1)/usr/share
endef
#
# selinux-semanage
#
define Package/selinux-semanage
$(call Package/selinux-python/Default)
TITLE:=selinux-semanage
DEPENDS+=+python3-sepolicy +python3-libsemanage +setools
endef
define Package/selinux-semanage/description
$(call Package/selinux-python/Default/description)
This package contains the semanage tool.
endef
define Package/selinux-semanage/install
$(MAKE_VARS) $(MAKE) -C $(PKG_BUILD_DIR)/semanage DESTDIR=$(1) install
rm -rf $(1)/usr/share
endef
#
# python3-sepolgen
#
define Package/python3-sepolgen
$(call Package/selinux-python/Default)
SUBMENU:=Python
SECTION:=lang
CATEGORY:=Languages
TITLE:=python3-sepolgen
endef
define Package/python3-sepolgen/description
$(call Package/selinux-python/Default/description)
This package contains the sepolgen Python library.
endef
define Package/python3-sepolgen/install
$(MAKE_VARS) $(MAKE) -C $(PKG_BUILD_DIR)/sepolgen DESTDIR=$(1) install
$(INSTALL_DIR) $(1)/usr/share/sepolgen/
$(INSTALL_DATA) $(1)/var/lib/sepolgen/perm_map $(1)/usr/share/sepolgen/perm_map
$(RM) -rf $(1)/var
endef
#
# python3-sepolicy
#
define Package/python3-sepolicy
$(call Package/selinux-python/Default)
SUBMENU:=Python
SECTION:=lang
CATEGORY:=Languages
TITLE:=python3-sepolicy
endef
define Package/python3-sepolicy/description
$(call Package/selinux-python/Default/description)
This package contains the sepolicy Python library.
endef
define Package/python3-sepolicy/install
$(MAKE_VARS) $(MAKE) -C $(PKG_BUILD_DIR)/sepolicy DESTDIR=$(1) install
rm -rf $(1)/usr/share
endef
$(eval $(call BuildPackage,selinux-audit2allow))
$(eval $(call BuildPackage,selinux-chcat))
$(eval $(call BuildPackage,selinux-semanage))
$(eval $(call BuildPackage,python3-sepolgen))
$(eval $(call BuildPackage,python3-sepolicy))