c540479a36
Our build system compiles flex/bison as C++ rather than C, but a few projects add `-x c` to their flags, forcing the compiler to compile them as C. This causes the compiler to reject the global C++ standard flag, so we need to explicitly provide a C standard flag to override it. Bug: 18466763 Change-Id: I49a6aeecf4abc563bd77127778b6d214e3851037 Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
78 lines
1.6 KiB
Makefile
78 lines
1.6 KiB
Makefile
LOCAL_PATH:= $(call my-dir)
|
|
|
|
common_src_files := \
|
|
policy_parse.y \
|
|
policy_scan.l \
|
|
queue.c \
|
|
module_compiler.c \
|
|
parse_util.c \
|
|
policy_define.c
|
|
|
|
common_cflags := \
|
|
-Wall -Wshadow -O2 \
|
|
-pipe -fno-strict-aliasing \
|
|
-Wno-return-type
|
|
|
|
ifeq ($(HOST_OS),darwin)
|
|
common_cflags += -DDARWIN
|
|
endif
|
|
|
|
common_includes := \
|
|
$(LOCAL_PATH)/ \
|
|
$(LOCAL_PATH)/../libsepol/include/ \
|
|
$(LOCAL_PATH)/../libsepol/src/ \
|
|
|
|
##
|
|
# "-x c" forces the lex/yacc files to be compiled as c the build system
|
|
# otherwise forces them to be c++. Need to also add an explicit -std because the
|
|
# build system will soon default C++ to -std=c++11.
|
|
yacc_flags := -x c -std=gnu89
|
|
|
|
|
|
##
|
|
# checkpolicy
|
|
#
|
|
include $(CLEAR_VARS)
|
|
|
|
LOCAL_MODULE := checkpolicy
|
|
LOCAL_MODULE_TAGS := optional
|
|
LOCAL_C_INCLUDES := $(common_includes)
|
|
LOCAL_CFLAGS := $(yacc_flags) $(common_cflags)
|
|
LOCAL_SRC_FILES := $(common_src_files) checkpolicy.c
|
|
LOCAL_STATIC_LIBRARIES := libsepol
|
|
LOCAL_YACCFLAGS := -v
|
|
LOCAL_MODULE_CLASS := EXECUTABLES
|
|
|
|
include $(BUILD_HOST_EXECUTABLE)
|
|
|
|
|
|
##
|
|
# checkmodule
|
|
#
|
|
include $(CLEAR_VARS)
|
|
|
|
LOCAL_MODULE := checkmodule
|
|
LOCAL_MODULE_TAGS := optional
|
|
LOCAL_C_INCLUDES := $(common_includes)
|
|
LOCAL_CFLAGS := $(yacc_flags) $(common_cflags)
|
|
LOCAL_SRC_FILES := $(common_src_files) checkmodule.c
|
|
LOCAL_STATIC_LIBRARIES := libsepol
|
|
LOCAL_YACCFLAGS := -v
|
|
LOCAL_MODULE_CLASS := EXECUTABLES
|
|
|
|
include $(BUILD_HOST_EXECUTABLE)
|
|
|
|
##
|
|
# dispol
|
|
#
|
|
include $(CLEAR_VARS)
|
|
|
|
LOCAL_MODULE := dispol
|
|
LOCAL_MODULE_TAGS := optional
|
|
LOCAL_C_INCLUDES := $(common_includes)
|
|
LOCAL_CFLAGS := $(common_cflags)
|
|
LOCAL_SRC_FILES := test/dispol.c
|
|
LOCAL_STATIC_LIBRARIES := libsepol
|
|
LOCAL_MODULE_CLASS := EXECUTABLES
|
|
|
|
include $(BUILD_HOST_EXECUTABLE)
|