Merge pull request #7964 from kevinburke/no-selinux-mac

GNUMakefile: fix compilation on Macs
This commit is contained in:
Sylvestre Ledru 2025-06-06 11:58:26 +02:00 committed by GitHub
commit 858db601aa
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 16 additions and 0 deletions

View file

@ -526,6 +526,8 @@ jobs:
- { os: ubuntu-latest , target: x86_64-unknown-redox , features: feat_os_unix_redox , use-cross: redoxer , skip-tests: true }
- { os: ubuntu-latest , target: wasm32-unknown-unknown , default-features: false, features: uucore/format, skip-tests: true, skip-package: true, skip-publish: true }
- { os: macos-latest , target: aarch64-apple-darwin , features: feat_os_macos, workspace-tests: true } # M1 CPU
# PR #7964: Mac should still build even if the feature is not enabled
- { os: macos-latest , target: aarch64-apple-darwin , workspace-tests: true } # M1 CPU
- { os: macos-13 , target: x86_64-apple-darwin , features: feat_os_macos, workspace-tests: true }
- { os: windows-latest , target: i686-pc-windows-msvc , features: feat_os_windows }
- { os: windows-latest , target: x86_64-pc-windows-gnu , features: feat_os_windows }

View file

@ -58,6 +58,13 @@ TOYBOX_ROOT := $(BASEDIR)/tmp
TOYBOX_VER := 0.8.12
TOYBOX_SRC := $(TOYBOX_ROOT)/toybox-$(TOYBOX_VER)
#------------------------------------------------------------------------
# Detect the host system.
# On Windows the environment already sets OS = Windows_NT.
# Otherwise let it default to the kernel name returned by uname -s
# (Linux, Darwin, FreeBSD, …).
#------------------------------------------------------------------------
OS ?= $(shell uname -s)
ifdef SELINUX_ENABLED
override SELINUX_ENABLED := 0
@ -181,6 +188,13 @@ SELINUX_PROGS := \
chcon \
runcon
$(info Detected OS = $(OS))
# Don't build the SELinux programs on macOS (Darwin)
ifeq ($(OS),Darwin)
SELINUX_PROGS :=
endif
ifneq ($(OS),Windows_NT)
PROGS := $(PROGS) $(UNIX_PROGS)
# Build the selinux command even if not on the system