mirror of
https://gitlab.com/apparmor/apparmor.git
synced 2025-03-04 08:24:42 +01:00

The Makefile is missing some of its .h depenedncies causing compiles to either fail or worse result in bad builds when rebuilding in an already built tree. Move the header dependencies into a variable and use it for each target. While some targets don't need every include as a dependency and this will result in unnecessary rebuilds in some cases, it makes the Makefile cleaner, easier to maintain and makes sure a dependency isn't accidentally missed. Signed-off-by: John Johansen <john.johansen@canonical.com>
52 lines
1,015 B
Makefile
52 lines
1,015 B
Makefile
# Profiling:
|
|
#EXTRA_CFLAGS = -pg
|
|
|
|
ifdef USE_SYSTEM
|
|
# Using the system libapparmor
|
|
INCLUDE_APPARMOR =
|
|
else
|
|
INCLUDE_APPARMOR = -I../../libraries/libapparmor/include
|
|
endif
|
|
|
|
TARGET=libapparmor_re.a
|
|
|
|
AR ?= ar
|
|
CFLAGS ?= -g -Wall -O2 ${EXTRA_CFLAGS} -std=gnu++0x
|
|
CXXFLAGS := ${CFLAGS} ${INCLUDE_APPARMOR}
|
|
|
|
LIB_HDRS = aare_rules.h flex-tables.h apparmor_re.h hfa.h chfa.h parse.h \
|
|
expr-tree.h policy_compat.h
|
|
|
|
OTHER_HDRS = ../common_optarg.h ../common_flags.h ../immunix.h \
|
|
../policydb.h ../perms.h ../rule.h
|
|
|
|
HDRS = ${LIB_HDRS} ${OTHER_HDRS}
|
|
|
|
ARFLAGS=-rcs
|
|
|
|
BISON := bison
|
|
|
|
all : ${TARGET}
|
|
|
|
UNITTESTS = tst_parse
|
|
|
|
libapparmor_re.a: parse.o expr-tree.o hfa.o chfa.o aare_rules.o policy_compat.o
|
|
${AR} ${ARFLAGS} $@ $^
|
|
|
|
expr-tree.o: expr-tree.cc expr-tree.h
|
|
|
|
hfa.o: hfa.cc ${HDRS}
|
|
|
|
aare_rules.o: aare_rules.cc ${HDRS}
|
|
|
|
chfa.o: chfa.cc ${HDRS}
|
|
|
|
policy_compat.o: policy_compat.cc ${HDRS}
|
|
|
|
parse.o : parse.cc ${HDRS}
|
|
|
|
parse.cc : parse.y ${HDRS}
|
|
${BISON} -o $@ $<
|
|
|
|
clean:
|
|
rm -f *.o parse.cc ${TARGET} *.gcda *.gcno
|