Skip to content

Commit

Permalink
Makefile: refactor include path settings
Browse files Browse the repository at this point in the history
This commit merges commonly-used header include paths
to UBOOTINCLUDE and NOSTDINC_FLAGS variables, which are placed
at the top Makefile.

Signed-off-by: Masahiro Yamada <[email protected]>
  • Loading branch information
masahir0y authored and trini committed Feb 19, 2014
1 parent 2b3c9d3 commit fea1ca8
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 18 deletions.
14 changes: 13 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -226,6 +226,15 @@ CHECK = sparse
CHECKFLAGS := -D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ \
-Wbitwise -Wno-return-void -D__CHECK_ENDIAN__ $(CF)

# Use UBOOTINCLUDE when you must reference the include/ directory.
# Needed to be compatible with the O= option
UBOOTINCLUDE :=
ifneq ($(OBJTREE),$(SRCTREE))
UBOOTINCLUDE += -I$(OBJTREE)/include
endif
UBOOTINCLUDE += -I$(srctree)/include \
-I$(srctree)/arch/$(ARCH)/include

KBUILD_CPPFLAGS := -D__KERNEL__

KBUILD_CFLAGS := -Wall -Wstrict-prototypes \
Expand All @@ -238,7 +247,7 @@ export CPP AR NM LDR STRIP OBJCOPY OBJDUMP
export MAKE AWK
export DTC CHECK CHECKFLAGS

export KBUILD_CPPFLAGS
export KBUILD_CPPFLAGS NOSTDINC_FLAGS UBOOTINCLUDE
export KBUILD_CFLAGS KBUILD_AFLAGS

KBUILD_CFLAGS += -Os #-fomit-frame-pointer
Expand All @@ -254,6 +263,9 @@ KBUILD_CFLAGS += -g
# option to the assembler.
KBUILD_AFLAGS += -g

NOSTDINC_FLAGS += -nostdinc -isystem $(shell $(CC) -print-file-name=include)
CHECKFLAGS += $(NOSTDINC_FLAGS)

# Report stack usage if supported
KBUILD_CFLAGS += $(call cc-option,-fstack-usage)

Expand Down
11 changes: 2 additions & 9 deletions config.mk
Original file line number Diff line number Diff line change
Expand Up @@ -94,8 +94,6 @@ RELFLAGS= $(PLATFORM_RELFLAGS)

OBJCFLAGS += --gap-fill=0xff

gccincdir := $(shell $(CC) -print-file-name=include)

CPPFLAGS = $(KBUILD_CPPFLAGS) $(RELFLAGS)

# Enable garbage collection of un-used sections for SPL
Expand Down Expand Up @@ -123,13 +121,8 @@ Please undefined CONFIG_SYS_GENERIC_BOARD in your board config file)
endif
endif

ifneq ($(OBJTREE),$(SRCTREE))
CPPFLAGS += -I$(OBJTREE)/include
endif

CPPFLAGS += -I$(TOPDIR)/include -I$(SRCTREE)/arch/$(ARCH)/include
CPPFLAGS += -nostdinc \
-isystem $(gccincdir) -pipe $(PLATFORM_CPPFLAGS)
CPPFLAGS += $(UBOOTINCLUDE)
CPPFLAGS += $(NOSTDINC_FLAGS) -pipe $(PLATFORM_CPPFLAGS)

CFLAGS := $(KBUILD_CFLAGS) $(CPPFLAGS)

Expand Down
8 changes: 3 additions & 5 deletions tools/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -175,11 +175,9 @@ HOSTSRCS += $(addprefix $(SRCTREE)/lib/libfdt/,$(LIBFDT_OBJ_FILES-y:.o=.c))
# Define _GNU_SOURCE to obtain the getline prototype from stdio.h
#
HOST_EXTRACFLAGS += -include $(SRCTREE)/include/libfdt_env.h \
-idirafter $(SRCTREE)/include \
-idirafter $(SRCTREE)/arch/$(ARCH)/include \
-idirafter $(OBJTREE)/include \
-I $(SRCTREE)/lib/libfdt \
-I $(SRCTREE)/tools \
$(patsubst -I%,-idirafter%, $(UBOOTINCLUDE)) \
-I$(SRCTREE)/lib/libfdt \
-I$(SRCTREE)/tools \
-DCONFIG_SYS_TEXT_BASE=$(CONFIG_SYS_TEXT_BASE) \
-DUSE_HOSTCC \
-D__KERNEL_STRICT_NAMES \
Expand Down
4 changes: 1 addition & 3 deletions tools/env/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,7 @@
#

# Compile for a hosted environment on the target
HOST_EXTRACFLAGS = -idirafter $(SRCTREE)/include \
-idirafter $(SRCTREE)/arch/$(ARCH)/include \
-idirafter $(OBJTREE)/include \
HOST_EXTRACFLAGS = $(patsubst -I%,-idirafter%, $(UBOOTINCLUDE)) \
-idirafter $(SRCTREE)/tools/env \
-DUSE_HOSTCC \
-DTEXT_BASE=$(TEXT_BASE)
Expand Down

0 comments on commit fea1ca8

Please sign in to comment.