- Timestamp:
- 2017-10-03T18:12:17Z (8 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- a41cda7
- Parents:
- 0f28387
- Location:
- kernel
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/Makefile
r0f28387 ra0a273e 84 84 DEFS = -DKERNEL -DRELEASE=$(RELEASE) "-DCOPYRIGHT=$(COPYRIGHT)" "-DNAME=$(NAME)" -D__$(BITS)_BITS__ -D__$(ENDIANESS)__ 85 85 86 GCC_CFLAGS = $(INCLUDES_FLAGS) -O$(OPTIMIZATION) -imacros $(CONFIG_HEADER) \87 -f exec-charset=UTF-8 -fwide-exec-charset=UTF-32$(ENDIANESS)\88 -f input-charset=UTF-8 -ffreestanding -fno-builtin -nostdlib -nostdinc \89 -std=gnu99 -Wall -Wextra -Wno-unused-parameter -Wmissing-prototypes \ 90 -Werror-implicit-function-declaration -Wwrite-strings\91 - pipe92 93 ICC_CFLAGS = $(INCLUDES_FLAGS) -O$(OPTIMIZATION) -imacros $(CONFIG_HEADER) \ 94 -ffreestanding -fno-builtin -nostdlib -nostdinc-Wall -Wmissing-prototypes \86 COMMON_CFLAGS = $(INCLUDES_FLAGS) -O$(OPTIMIZATION) -imacros $(CONFIG_HEADER) \ 87 -ffreestanding -fno-builtin -nostdlib -nostdinc \ 88 -fexec-charset=UTF-8 -finput-charset=UTF-8 89 90 GCC_CFLAGS = -std=gnu99 -Wall -Wextra -Wno-unused-parameter \ 91 -Wmissing-prototypes -Werror-implicit-function-declaration \ 92 -Wwrite-strings -pipe 93 94 ICC_CFLAGS = -Wall -Wmissing-prototypes \ 95 95 -Werror-implicit-function-declaration -wd170 96 96 97 # clang does not support following options but I am not sure whether 98 # something won't break because of that: 99 # -fexec-charset=UTF-8 -fwide-exec-charset=UTF-32$(ENDIANESS) -finput-charset=UTF-8 100 CLANG_CFLAGS = $(INCLUDES_FLAGS) -O$(OPTIMIZATION) -imacros $(CONFIG_HEADER) \ 101 -ffreestanding -fno-builtin -nostdlib -nostdinc \ 102 -std=gnu99 -Wall -Werror -Wextra -Wno-unused-parameter -Wmissing-prototypes \ 103 -Werror-implicit-function-declaration -Wwrite-strings \ 104 -integrated-as -pipe -target $(CLANG_TARGET) 97 CLANG_CFLAGS = -std=gnu99 -Wall -Wextra -Wno-unused-parameter \ 98 -Wmissing-prototypes -Werror-implicit-function-declaration \ 99 -Wwrite-strings -pipe -fno-stack-protector -fno-PIC 105 100 106 101 ifeq ($(CONFIG_DEBUG),y) 107 GCC_CFLAGS += -Werror 108 ICC_CFLAGS += -Werror 102 COMMON_CFLAGS += -Werror 109 103 endif 110 104 111 105 ifeq ($(CONFIG_LTO),y) 112 GCC_CFLAGS += -flto106 COMMON_CFLAGS += -flto 113 107 endif 114 108 115 109 ifeq ($(CONFIG_LINE_DEBUG),y) 116 GCC_CFLAGS += -g 117 ICC_CFLAGS += -g 118 CLANG_CFLAGS += -g 110 COMMON_CFLAGS += -g 119 111 endif 120 112 … … 123 115 # AFLAGS and LFLAGS must be initialized before the inclusion. 124 116 # 125 AFLAGS = --fatal-warnings117 AFLAGS = 126 118 LFLAGS = -n -T $(LINK) -M --fatal-warnings 119 120 # FIXME: This condition is a workaround for issues #693 and #694. 121 ifneq ($(KARCH),sparc64) 122 ifneq ($(KARCH),mips32) 123 AFLAGS += --fatal-warnings 124 endif 125 endif 127 126 128 127 # … … 156 155 157 156 ifeq ($(COMPILER),gcc_native) 158 CFLAGS = $( GCC_CFLAGS)157 CFLAGS = $(COMMON_CFLAGS) $(GCC_CFLAGS) 159 158 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) 160 159 INSTRUMENTATION = -finstrument-functions … … 162 161 163 162 ifeq ($(COMPILER),gcc_cross) 164 CFLAGS = $( GCC_CFLAGS)163 CFLAGS = $(COMMON_CFLAGS) $(GCC_CFLAGS) 165 164 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) 166 165 INSTRUMENTATION = -finstrument-functions … … 168 167 169 168 ifeq ($(COMPILER),gcc_helenos) 170 CFLAGS = $( GCC_CFLAGS)169 CFLAGS = $(COMMON_CFLAGS) $(GCC_CFLAGS) 171 170 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) 172 171 INSTRUMENTATION = -finstrument-functions … … 174 173 175 174 ifeq ($(COMPILER),icc) 176 CFLAGS = $( ICC_CFLAGS)175 CFLAGS = $(COMMON_CFLAGS) $(ICC_CFLAGS) 177 176 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) 178 177 INSTRUMENTATION = … … 180 179 181 180 ifeq ($(COMPILER),clang) 182 CFLAGS = $(C LANG_CFLAGS)181 CFLAGS = $(COMMON_CFLAGS) $(CLANG_CFLAGS) 183 182 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) 184 INSTRUMENTATION = 183 INSTRUMENTATION = -finstrument-functions 185 184 endif 186 185 … … 384 383 AUTOGENS_AG := $(ARCH_AUTOGENS_AG) $(GENARCH_AUTOGENS_AG) 385 384 386 LFLAGS_LTO := $(addprefix -Xlinker ,$(LFLAGS)) 385 AS_CFLAGS := $(addprefix -Xassembler ,$(AFLAGS)) 386 LD_CFLAGS := $(addprefix -Xlinker ,$(LFLAGS)) 387 388 ifeq ($(COMPILER),clang) 389 AS_CFLAGS += -mllvm -asm-macro-max-nesting-depth=1000 390 endif 387 391 388 392 ifeq ($(CONFIG_SYMTAB),y) … … 404 408 $(RAW): $(LINK) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(SYMTAB_OBJECTS) 405 409 ifeq ($(CONFIG_LTO),y) 406 $( GCC) $(LFLAGS_LTO) -Xlinker -Map -Xlinker $(MAP) $(DEFS) $(GCC_CFLAGS) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SYMTAB_OBJECTS)410 $(CC) $(DEFS) $(CFLAGS) $(LD_CFLAGS) -Xlinker -Map -Xlinker $(MAP) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SYMTAB_OBJECTS) 407 411 else 408 412 $(LD) $(LFLAGS) -Map $(MAP) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SYMTAB_OBJECTS) … … 417 421 %.h: %.ag 418 422 $(AUTOGEN) probe $< >$<.probe.c 419 $(CC ) $(DEFS) $(CFLAGS) -S -o $<.probe.s $<.probe.c423 $(CC_AUTOGEN) $(DEFS) $(CFLAGS) -S -o $<.probe.s $<.probe.c 420 424 $(AUTOGEN) generate $< <$<.probe.s >$@ 421 425 422 426 %.o: %.S $(DEPEND) 423 $( GCC) $(DEFS) $(GCC_CFLAGS) -D__ASM__ -c -o $@ $<427 $(CC) $(DEFS) $(CFLAGS) $(AS_CFLAGS) -D__ASM__ -c -o $@ $< 424 428 ifeq ($(PRECHECK),y) 425 $(JOBFILE) $(JOB) $< $@ as asm/preproc $(DEFS) $( GCC_CFLAGS) -D__ASM__429 $(JOBFILE) $(JOB) $< $@ as asm/preproc $(DEFS) $(CFLAGS) -D__ASM__ 426 430 endif 427 431 428 432 %.o: %.s $(DEPEND) 429 $( AS) $(AFLAGS)-o $@ $<433 $(CC) $(DEFS) $(CFLAGS) $(AS_CFLAGS) -D__ASM__ -c -o $@ $< 430 434 ifeq ($(PRECHECK),y) 431 435 $(JOBFILE) $(JOB) $< $@ as asm $(DEFS) $(CFLAGS) $(EXTRA_FLAGS) … … 439 443 440 444 $(REAL_MAP).o: $(REAL_MAP).bin 441 echo "$(AS_PROLOG)""$(SYMTAB_SECTION)"" .incbin \"$<\"" | $( AS) $(AFLAGS) -o $@445 echo "$(AS_PROLOG)""$(SYMTAB_SECTION)"" .incbin \"$<\"" | $(CC) $(CFLAGS) $(AS_CFLAGS) -x assembler -c -o $@ - 442 446 443 447 $(REAL_MAP).bin: $(LINK) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) 444 echo "$(AS_PROLOG)""$(SYMTAB_SECTION)" | $( AS) $(AFLAGS) -o $(EMPTY_MAP)448 echo "$(AS_PROLOG)""$(SYMTAB_SECTION)" | $(CC) $(CFLAGS) $(AS_CFLAGS) -x assembler -c -o $(EMPTY_MAP) - 445 449 ifeq ($(CONFIG_LTO),y) 446 $( GCC) $(LFLAGS_LTO) -Xlinker -Map -Xlinker $(MAP_PREV) $(DEFS) $(GCC_CFLAGS) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(EMPTY_MAP)450 $(CC) $(DEFS) $(CFLAGS) $(LD_CFLAGS) -Xlinker -Map -Xlinker $(MAP_PREV) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(EMPTY_MAP) 447 451 else 448 452 $(LD) $(LFLAGS) -Map $(MAP_PREV) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(EMPTY_MAP) … … 454 458 # on architectures that have bss after symtab 455 459 456 echo "$(AS_PROLOG)""$(SYMTAB_SECTION)"" .incbin \"$@\"" | $( AS) $(AFLAGS) -o $(SIZEOK_MAP)460 echo "$(AS_PROLOG)""$(SYMTAB_SECTION)"" .incbin \"$@\"" | $(CC) $(CFLAGS) $(AS_CFLAGS) -x assembler -c -o $(SIZEOK_MAP) - 457 461 ifeq ($(CONFIG_LTO),y) 458 $( GCC) $(LFLAGS_LTO) -Xlinker -Map -Xlinker $(MAP_PREV) $(DEFS) $(GCC_CFLAGS) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SIZEOK_MAP)462 $(CC) $(DEFS) $(CFLAGS) $(LD_CFLAGS) -Xlinker -Map -Xlinker $(MAP_PREV) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SIZEOK_MAP) 459 463 else 460 464 $(LD) $(LFLAGS) -Map $(MAP_PREV) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SIZEOK_MAP) -
kernel/arch/abs32le/Makefile.inc
r0f28387 ra0a273e 35 35 36 36 ifeq ($(CROSS_TARGET),mips32) 37 GCC_CFLAGS += -mno-abicalls37 COMMON_CFLAGS += -mno-abicalls 38 38 endif 39 39 endif -
kernel/arch/amd64/Makefile.inc
r0f28387 ra0a273e 32 32 33 33 FPU_NO_CFLAGS = -mno-sse -mno-sse2 34 CMN1 = -m64 -mcmodel=$(MEMORY_MODEL) -mno-red-zone -fno-unwind-tables -fno-omit-frame-pointer 35 GCC_CFLAGS += $(CMN1) 36 ICC_CFLAGS += $(CMN1) 37 CLANG_CFLAGS += $(CMN1) 34 COMMON_CFLAGS += -m64 -mcmodel=$(MEMORY_MODEL) -mno-red-zone -fno-unwind-tables -fno-omit-frame-pointer 38 35 39 36 BITS = 64 … … 44 41 45 42 ifeq ($(PROCESSOR),opteron) 46 CMN2 := -march=opteron 47 GCC_CFLAGS += $(CMN2) 48 ICC_CFLAGS += $(CMN2) 43 COMMON_CFLAGS += -march=opteron 49 44 endif 50 45 -
kernel/arch/arm32/Makefile.inc
r0f28387 ra0a273e 33 33 ATSIGN = % 34 34 35 GCC_CFLAGS += -fno-omit-frame-pointer -mapcs-frame -march=$(subst _,-,$(PROCESSOR_ARCH)) -mno-unaligned-access -mfpu=vfpv335 COMMON_CFLAGS += -fno-omit-frame-pointer -mapcs-frame -march=$(subst _,-,$(PROCESSOR_ARCH)) -mno-unaligned-access -mfpu=vfpv3 36 36 37 37 ifeq ($(CONFIG_FPU),y) -
kernel/arch/ia32/Makefile.inc
r0f28387 ra0a273e 34 34 ENDIANESS = LE 35 35 36 CMN1 = -m32 -fno-omit-frame-pointer 37 GCC_CFLAGS += $(CMN1) 38 ICC_CFLAGS += $(CMN1) 39 CLANG_CFLAGS += $(CMN1) 36 COMMON_CFLAGS += -m32 -fno-omit-frame-pointer 40 37 41 38 ## Accepted CPUs … … 43 40 44 41 ifeq ($(PROCESSOR),i486) 45 C MN2= -march=i48642 COMMON_CFLAGS += -march=i486 46 43 endif 47 44 48 45 ifeq ($(PROCESSOR),athlon_xp) 49 C MN2= -march=athlon-xp46 COMMON_CFLAGS += -march=athlon-xp 50 47 endif 51 48 52 49 ifeq ($(PROCESSOR),athlon_mp) 53 C MN2= -march=athlon-mp50 COMMON_CFLAGS += -march=athlon-mp 54 51 endif 55 52 56 53 ifeq ($(PROCESSOR),pentium3) 57 C MN2= -march=pentium354 COMMON_CFLAGS += -march=pentium3 58 55 endif 59 56 60 57 ifeq ($(PROCESSOR),pentium4) 61 C MN2= -march=pentium458 COMMON_CFLAGS += -march=pentium4 62 59 endif 63 60 64 61 ifeq ($(PROCESSOR),core) 65 C MN2= -march=prescott62 COMMON_CFLAGS += -march=prescott 66 63 endif 67 64 68 65 FPU_NO_CFLAGS = -mno-mmx -mno-sse -mno-sse2 -mno-sse3 -mno-3dnow 69 GCC_CFLAGS += $(CMN2)70 ICC_CFLAGS += $(CMN2)71 CLANG_CFLAGS += $(CMN2)72 66 73 67 ARCH_SOURCES = \ -
kernel/arch/ia64/Makefile.inc
r0f28387 ra0a273e 30 30 BFD_ARCH = ia64-elf64 31 31 32 CMN1 = -mconstant-gp -fno-unwind-tables -mfixed-range=f32-f127 33 GCC_CFLAGS += $(CMN1) 34 ICC_CFLAGS += $(CMN1) 32 COMMON_CFLAGS += -mconstant-gp -fno-unwind-tables -mfixed-range=f32-f127 35 33 36 34 AFLAGS += -mconstant-gp -
kernel/arch/mips32/Makefile.inc
r0f28387 ra0a273e 29 29 BFD_ARCH = mips 30 30 BFD = binary 31 GCC_CFLAGS += -msoft-float -mno-abicalls -G 0 -fno-zero-initialized-in-bss -mabi=3231 COMMON_CFLAGS += -msoft-float -mno-abicalls -G 0 -fno-zero-initialized-in-bss -mabi=32 32 32 AS_PROLOG = .module softfloat; 33 33 … … 40 40 BFD_NAME = elf32-tradlittlemips 41 41 ENDIANESS = LE 42 GCC_CFLAGS += -march=r400042 COMMON_CFLAGS += -march=r4000 43 43 endif 44 44 ifeq ($(MACHINE),bmalta) 45 45 BFD_NAME = elf32-tradbigmips 46 46 ENDIANESS = BE 47 GCC_CFLAGS += -D__BE__ -march=4kc47 COMMON_CFLAGS += -D__BE__ -march=4kc 48 48 endif 49 49 ifeq ($(MACHINE),lmalta) 50 50 BFD_NAME = elf32-tradlittlemips 51 51 ENDIANESS = LE 52 GCC_CFLAGS += -march=4kc52 COMMON_CFLAGS += -march=4kc 53 53 endif 54 54 -
kernel/arch/ppc32/Makefile.inc
r0f28387 ra0a273e 31 31 BFD = binary 32 32 33 GCC_CFLAGS += -mcpu=powerpc -msoft-float -m3233 COMMON_CFLAGS += -mcpu=powerpc -msoft-float -m32 34 34 AFLAGS += -a32 35 35 LFLAGS += -no-check-sections -
kernel/arch/riscv64/Makefile.inc
r0f28387 ra0a273e 31 31 BFD = binary 32 32 33 GCC_CFLAGS += -mcmodel=medany33 COMMON_CFLAGS += -mcmodel=medany 34 34 35 35 BITS = 64 -
kernel/arch/sparc64/Makefile.inc
r0f28387 ra0a273e 31 31 BFD = binary 32 32 33 GCC_CFLAGS += -m64 -mcpu=ultrasparc -mcmodel=medlow -mno-fpu33 COMMON_CFLAGS += -m64 -mcpu=ultrasparc -mcmodel=medlow -mno-fpu 34 34 35 35 LFLAGS += -no-check-sections
Note:
See TracChangeset
for help on using the changeset viewer.