From 1da2f6b685bfb9bb6113633d5b10f56952a4066a Mon Sep 17 00:00:00 2001 From: Gregory Nutt Date: Tue, 13 Aug 2019 09:45:00 -0600 Subject: [PATCH] symtab/Makefile: The OS symbol table should not be generated in the PROTECTED and KERNEL build modes. In those modes, the applications should link with libproxy which will provide symbol-compatible access to OS functions via a call gate. --- symtab/Makefile | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/symtab/Makefile b/symtab/Makefile index c4429949b2c..1fbcb2d33f1 100644 --- a/symtab/Makefile +++ b/symtab/Makefile @@ -36,9 +36,22 @@ -include $(TOPDIR)/Make.defs MKSYMTAB = $(TOPDIR)$(DELIM)tools$(DELIM)mksymtab$(HOSTEXEEXT) -CSVFILES = $(TOPDIR)$(DELIM)syscall$(DELIM)syscall.csv \ - $(TOPDIR)$(DELIM)libs$(DELIM)libc$(DELIM)libc.csv \ - $(TOPDIR)$(DELIM)libs$(DELIM)libc$(DELIM)math.csv + +# C library and math library symbols should be available in the FLAT +# and PROTECTED builds. KERNEL builds are separately linked and so should +# not need symbol tables. + +CSVFILES = $(TOPDIR)$(DELIM)libs$(DELIM)libc$(DELIM)libc.csv +CSVFILES += $(TOPDIR)$(DELIM)libs$(DELIM)libc$(DELIM)math.csv + +# In the PROTECTED and KERNEL builds, the syscall symbol table is not +# necessary. In those build modes, the applications should link with +# libproxy which will provide symbol-compatible access to OS functions +# via a call gate. + +ifeq ($(CONFIG_BUILD_FLAT),y) +CSVFILES += $(TOPDIR)$(DELIM)syscall$(DELIM)syscall.csv +endif DEPPATH = --dep-path .