[PATCH 8/8] libselinux: add booleans.c to ANDROID_HOST=y recipe
From: William RobertsWe build booleans.c with DISABLE_BOOL set on Android host and target. Add that file to the upstream Makefile. Signed-off-by: William Roberts --- libselinux/src/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libselinux/src/Makefile b/libselinux/src/Makefile index 7a1ae05..ccd8442 100644 --- a/libselinux/src/Makefile +++ b/libselinux/src/Makefile @@ -100,7 +100,7 @@ DISABLE_FLAGS+= -DNO_MEDIA_BACKEND -DNO_DB_BACKEND -DNO_X_BACKEND \ -DBUILD_HOST SRCS= callbacks.c freecon.c label.c label_file.c \ label_backends_android.c regex.c label_support.c \ - matchpathcon.c setrans_client.c sha1.c + matchpathcon.c setrans_client.c sha1.c booleans.c else DISABLE_FLAGS+= -DNO_ANDROID_BACKEND SRCS:= $(filter-out label_backends_android.c, $(SRCS)) -- 1.9.1 ___ Selinux mailing list Selinux@tycho.nsa.gov To unsubscribe, send email to selinux-le...@tycho.nsa.gov. To get help, send an email containing "help" to selinux-requ...@tycho.nsa.gov.
[PATCH 2/8] libsepol: build on mac
From: William RobertsCorrect the build issues on mac, mostly flags for tools. libsepol and cil now build completley on Mac with a simple make command. Signed-off-by: William Roberts --- libsepol/src/Makefile | 9 - 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/libsepol/src/Makefile b/libsepol/src/Makefile index b0c901f..7856213 100644 --- a/libsepol/src/Makefile +++ b/libsepol/src/Makefile @@ -30,6 +30,13 @@ LOBJS += $(sort $(patsubst %.c,%.lo,$(sort $(wildcard $(CILDIR)/src/*.c)) $(CIL_ override CFLAGS += -I$(CILDIR)/include endif +LD_SONAME_FLAGS=-soname,$(LIBSO),--version-script=$(LIBMAP),-z,defs + +OS := $(shell uname) +ifeq ($(OS), Darwin) +LD_SONAME_FLAGS=-install_name,$(LIBSO) +LDFLAGS += -undefined dynamic_lookup +endif all: $(LIBA) $(LIBSO) $(LIBPC) @@ -39,7 +46,7 @@ $(LIBA): $(OBJS) $(RANLIB) $@ $(LIBSO): $(LOBJS) $(LIBMAP) - $(CC) $(CFLAGS) $(LDFLAGS) -shared -o $@ $(LOBJS) -Wl,-soname,$(LIBSO),--version-script=$(LIBMAP),-z,defs + $(CC) $(CFLAGS) $(LDFLAGS) -shared -o $@ $(LOBJS) -Wl,$(LD_SONAME_FLAGS) ln -sf $@ $(TARGET) $(LIBPC): $(LIBPC).in ../VERSION -- 1.9.1 ___ Selinux mailing list Selinux@tycho.nsa.gov To unsubscribe, send email to selinux-le...@tycho.nsa.gov. To get help, send an email containing "help" to selinux-requ...@tycho.nsa.gov.
[PATCH 3/8] libselinux: fix mac build warning when ANDROID_HOST=y
From: William RobertsWhen building on Mac, outside of the Android tree, with ANDROID_HOST=y, this warning is observed: label.c:102:9: warning: implicit declaration of function 'fgets_unlocked' is invalid in C99 [-Wimplicit-function-declaration] while (fgets_unlocked(buf, sizeof(buf) - 1, cfg)) { Fix it by using the fgets_unlocked define that was introduced for Android, just apply it for mac builds as well. Signed-off-by: William Roberts --- libselinux/src/label_internal.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libselinux/src/label_internal.h b/libselinux/src/label_internal.h index 6a9481a..3d7ff74 100644 --- a/libselinux/src/label_internal.h +++ b/libselinux/src/label_internal.h @@ -16,8 +16,8 @@ #include "dso.h" #include "sha1.h" -#ifdef ANDROID -// Android does not have fgets_unlocked() +#if defined(ANDROID) || defined(__APPLE__) +// Android and Mac do not have fgets_unlocked() #define fgets_unlocked(buf, size, fp) fgets(buf, size, fp) #endif -- 1.9.1 ___ Selinux mailing list Selinux@tycho.nsa.gov To unsubscribe, send email to selinux-le...@tycho.nsa.gov. To get help, send an email containing "help" to selinux-requ...@tycho.nsa.gov.
[PATCH 7/8] libselinux: DISABLE_BOOL move to include headers
From: William RobertsSome systems, like Mac, don't have stdio_ext.h. Since we're building with DISABLE_BOOL=y on Mac, just include the header files with the DISABLE define, and use the bare minimum headers for DISABLE_BOOL=y. Signed-off-by: William Roberts --- libselinux/src/booleans.c | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/libselinux/src/booleans.c b/libselinux/src/booleans.c index cbb0610..ba9d934 100644 --- a/libselinux/src/booleans.c +++ b/libselinux/src/booleans.c @@ -5,6 +5,8 @@ * Dan Walsh - Added security_load_booleans(). */ +#ifndef DISABLE_BOOL + #include #include #include @@ -25,8 +27,6 @@ #define SELINUX_BOOL_DIR "/booleans/" -#ifndef DISABLE_BOOL - static int filename_select(const struct dirent *d) { if (d->d_name[0] == '.' @@ -561,6 +561,10 @@ int security_load_booleans(char *path) } #else + +#include +#include "selinux_internal.h" + int security_set_boolean_list(size_t boolcnt __attribute__((unused)), SELboolean * boollist __attribute__((unused)), int permanent __attribute__((unused))) -- 1.9.1 ___ Selinux mailing list Selinux@tycho.nsa.gov To unsubscribe, send email to selinux-le...@tycho.nsa.gov. To get help, send an email containing "help" to selinux-requ...@tycho.nsa.gov.
[PATCH 5/8] libselinux/utils: add noreturn to sefcontext_compile
From: William RobertsWhen building on mac, one encounters this error: sefcontext_compile.c:270:1: error: function 'usage' could be declared with attribute 'noreturn' [-Werror,-Wmissing-noreturn] To correct this, add the attribute noreturn to the function. Signed-off-by: William Roberts --- libselinux/utils/sefcontext_compile.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libselinux/utils/sefcontext_compile.c b/libselinux/utils/sefcontext_compile.c index 6b564b4..54600e2 100644 --- a/libselinux/utils/sefcontext_compile.c +++ b/libselinux/utils/sefcontext_compile.c @@ -266,7 +266,7 @@ static void free_specs(struct saved_data *data) memset(data, 0, sizeof(*data)); } -static void usage(const char *progname) +static __attribute__ ((__noreturn__)) void usage(const char *progname) { fprintf(stderr, "usage: %s [-o out_file] [-p policy_file] fc_file\n" -- 1.9.1 ___ Selinux mailing list Selinux@tycho.nsa.gov To unsubscribe, send email to selinux-le...@tycho.nsa.gov. To get help, send an email containing "help" to selinux-requ...@tycho.nsa.gov.