Changes in kernel/Makefile [3ec2acc:d75dc05] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/Makefile
r3ec2acc rd75dc05 82 82 INCLUDES_FLAGS = $(addprefix -I,$(INCLUDES)) 83 83 84 ifeq ($(CONFIG_OPTIMIZE_FOR_SIZE),y)85 OPTIMIZATION = s86 else87 OPTIMIZATION = 388 endif89 90 84 DEFS = -DKERNEL -DRELEASE=$(RELEASE) "-DCOPYRIGHT=$(COPYRIGHT)" "-DNAME=$(NAME)" -D__$(BITS)_BITS__ -D__$(ENDIANESS)__ 91 85 92 GCC_CFLAGS = $(INCLUDES_FLAGS) -O$(OPTIMIZATION) -imacros $(CONFIG_HEADER) \ 93 -fexec-charset=UTF-8 -fwide-exec-charset=UTF-32$(ENDIANESS) \ 94 -finput-charset=UTF-8 -ffreestanding -fno-builtin -nostdlib -nostdinc \ 95 -std=gnu99 -Wall -Wextra -Wno-unused-parameter -Wmissing-prototypes \ 96 -Werror-implicit-function-declaration -Wwrite-strings \ 97 -pipe 98 99 ICC_CFLAGS = $(INCLUDES_FLAGS) -O$(OPTIMIZATION) -imacros $(CONFIG_HEADER) \ 100 -ffreestanding -fno-builtin -nostdlib -nostdinc -Wall -Wmissing-prototypes \ 101 -Werror-implicit-function-declaration -wd170 102 103 # clang does not support following options but I am not sure whether 104 # something won't break because of that: 105 # -fexec-charset=UTF-8 -fwide-exec-charset=UTF-32$(ENDIANESS) -finput-charset=UTF-8 106 CLANG_CFLAGS = $(INCLUDES_FLAGS) -O$(OPTIMIZATION) -imacros $(CONFIG_HEADER) \ 86 COMMON_CFLAGS = $(INCLUDES_FLAGS) -O$(OPTIMIZATION) -imacros $(CONFIG_HEADER) \ 107 87 -ffreestanding -fno-builtin -nostdlib -nostdinc \ 108 -std=gnu99 -Wall -Werror -Wextra -Wno-unused-parameter -Wmissing-prototypes \ 109 -Werror-implicit-function-declaration -Wwrite-strings \ 110 -integrated-as -pipe -target $(CLANG_TARGET) 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 CLANG_CFLAGS = -std=gnu99 -Wall -Wextra -Wno-unused-parameter \ 95 -Wno-missing-field-initializers -Wno-unused-command-line-argument \ 96 -Wmissing-prototypes -Werror-implicit-function-declaration \ 97 -Wwrite-strings -pipe -fno-stack-protector -fno-PIC 111 98 112 99 ifeq ($(CONFIG_DEBUG),y) 113 GCC_CFLAGS += -Werror 114 ICC_CFLAGS += -Werror 100 COMMON_CFLAGS += -Werror 115 101 endif 116 102 117 103 ifeq ($(CONFIG_LTO),y) 118 GCC_CFLAGS += -flto104 COMMON_CFLAGS += -flto 119 105 endif 120 106 121 107 ifeq ($(CONFIG_LINE_DEBUG),y) 122 GCC_CFLAGS += -g 123 ICC_CFLAGS += -g 124 CLANG_CFLAGS += -g 108 COMMON_CFLAGS += -g 125 109 endif 126 110 … … 129 113 # AFLAGS and LFLAGS must be initialized before the inclusion. 130 114 # 131 AFLAGS = --fatal-warnings115 AFLAGS = 132 116 LFLAGS = -n -T $(LINK) -M --fatal-warnings 117 118 # FIXME: This condition is a workaround for issues #693 and #694. 119 ifneq ($(KARCH),sparc64) 120 ifneq ($(KARCH),mips32) 121 AFLAGS += --fatal-warnings 122 endif 123 endif 133 124 134 125 # … … 162 153 163 154 ifeq ($(COMPILER),gcc_native) 164 CFLAGS = $( GCC_CFLAGS)155 CFLAGS = $(COMMON_CFLAGS) $(GCC_CFLAGS) 165 156 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) 166 157 INSTRUMENTATION = -finstrument-functions … … 168 159 169 160 ifeq ($(COMPILER),gcc_cross) 170 CFLAGS = $( GCC_CFLAGS)161 CFLAGS = $(COMMON_CFLAGS) $(GCC_CFLAGS) 171 162 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) 172 163 INSTRUMENTATION = -finstrument-functions … … 174 165 175 166 ifeq ($(COMPILER),gcc_helenos) 176 CFLAGS = $( GCC_CFLAGS)167 CFLAGS = $(COMMON_CFLAGS) $(GCC_CFLAGS) 177 168 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) 178 169 INSTRUMENTATION = -finstrument-functions 179 170 endif 180 171 181 ifeq ($(COMPILER), icc)182 CFLAGS = $( ICC_CFLAGS)172 ifeq ($(COMPILER),clang) 173 CFLAGS = $(COMMON_CFLAGS) $(CLANG_CFLAGS) 183 174 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) 184 INSTRUMENTATION = 185 endif 186 187 ifeq ($(COMPILER),clang) 188 CFLAGS = $(CLANG_CFLAGS) 189 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) 190 INSTRUMENTATION = 175 INSTRUMENTATION = -finstrument-functions 191 176 endif 192 177 … … 209 194 generic/src/ddi/ddi.c \ 210 195 generic/src/ddi/irq.c \ 211 generic/src/ddi/device.c \212 196 generic/src/debug/symtab.c \ 213 197 generic/src/debug/stacktrace.c \ … … 240 224 generic/src/mm/slab.c \ 241 225 generic/src/lib/func.c \ 242 generic/src/lib/mem str.c \226 generic/src/lib/mem.c \ 243 227 generic/src/lib/memfnc.c \ 244 generic/src/lib/ sort.c \228 generic/src/lib/gsort.c \ 245 229 generic/src/lib/str.c \ 246 230 generic/src/lib/elf.c \ … … 272 256 generic/src/ipc/sysipc.c \ 273 257 generic/src/ipc/sysipc_ops.c \ 274 generic/src/ipc/ops/clnestab.c \275 258 generic/src/ipc/ops/conctmeto.c \ 276 259 generic/src/ipc/ops/concttome.c \ 277 generic/src/ipc/ops/connclone.c \278 260 generic/src/ipc/ops/dataread.c \ 279 261 generic/src/ipc/ops/datawrite.c \ … … 286 268 generic/src/ipc/irq.c \ 287 269 generic/src/ipc/event.c \ 288 generic/src/security/cap.c \ 270 generic/src/cap/cap.c \ 271 generic/src/security/perm.c \ 289 272 generic/src/sysinfo/sysinfo.c \ 290 273 generic/src/sysinfo/stats.c … … 392 375 AUTOGENS_AG := $(ARCH_AUTOGENS_AG) $(GENARCH_AUTOGENS_AG) 393 376 394 LFLAGS_LTO := $(addprefix -Xlinker ,$(LFLAGS)) 377 AS_CFLAGS := $(addprefix -Xassembler ,$(AFLAGS)) 378 LD_CFLAGS := $(addprefix -Xlinker ,$(LFLAGS)) 379 380 ifeq ($(COMPILER),clang) 381 AS_CFLAGS += -mllvm -asm-macro-max-nesting-depth=1000 382 endif 395 383 396 384 ifeq ($(CONFIG_SYMTAB),y) … … 412 400 $(RAW): $(LINK) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(SYMTAB_OBJECTS) 413 401 ifeq ($(CONFIG_LTO),y) 414 $( GCC) $(LFLAGS_LTO) -Xlinker -Map -Xlinker $(MAP) $(DEFS) $(GCC_CFLAGS) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SYMTAB_OBJECTS)402 $(CC) $(DEFS) $(CFLAGS) $(LD_CFLAGS) -Xlinker -Map -Xlinker $(MAP) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SYMTAB_OBJECTS) 415 403 else 416 404 $(LD) $(LFLAGS) -Map $(MAP) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SYMTAB_OBJECTS) … … 425 413 %.h: %.ag 426 414 $(AUTOGEN) probe $< >$<.probe.c 427 $(CC ) $(DEFS) $(CFLAGS) -S -o $<.probe.s $<.probe.c415 $(CC_AUTOGEN) $(DEFS) $(CFLAGS) -S -o $<.probe.s $<.probe.c 428 416 $(AUTOGEN) generate $< <$<.probe.s >$@ 429 417 430 418 %.o: %.S $(DEPEND) 431 $( GCC) $(DEFS) $(GCC_CFLAGS) -D__ASM__ -c -o $@ $<419 $(CC) $(DEFS) $(CFLAGS) $(AS_CFLAGS) -D__ASM__ -c -o $@ $< 432 420 ifeq ($(PRECHECK),y) 433 $(JOBFILE) $(JOB) $< $@ as asm/preproc $(DEFS) $( GCC_CFLAGS) -D__ASM__421 $(JOBFILE) $(JOB) $< $@ as asm/preproc $(DEFS) $(CFLAGS) -D__ASM__ 434 422 endif 435 423 436 424 %.o: %.s $(DEPEND) 437 $( AS) $(AFLAGS)-o $@ $<425 $(CC) $(DEFS) $(CFLAGS) $(AS_CFLAGS) -D__ASM__ -c -o $@ $< 438 426 ifeq ($(PRECHECK),y) 439 427 $(JOBFILE) $(JOB) $< $@ as asm $(DEFS) $(CFLAGS) $(EXTRA_FLAGS) … … 447 435 448 436 $(REAL_MAP).o: $(REAL_MAP).bin 449 echo "$(AS_PROLOG)""$(SYMTAB_SECTION)"" .incbin \"$<\"" | $( AS) $(AFLAGS) -o $@437 echo "$(AS_PROLOG)""$(SYMTAB_SECTION)"" .incbin \"$<\"" | $(CC) $(CFLAGS) $(AS_CFLAGS) -x assembler -c -o $@ - 450 438 451 439 $(REAL_MAP).bin: $(LINK) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) 452 echo "$(AS_PROLOG)""$(SYMTAB_SECTION)" | $( AS) $(AFLAGS) -o $(EMPTY_MAP)440 echo "$(AS_PROLOG)""$(SYMTAB_SECTION)" | $(CC) $(CFLAGS) $(AS_CFLAGS) -x assembler -c -o $(EMPTY_MAP) - 453 441 ifeq ($(CONFIG_LTO),y) 454 $( GCC) $(LFLAGS_LTO) -Xlinker -Map -Xlinker $(MAP_PREV) $(DEFS) $(GCC_CFLAGS) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(EMPTY_MAP)442 $(CC) $(DEFS) $(CFLAGS) $(LD_CFLAGS) -Xlinker -Map -Xlinker $(MAP_PREV) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(EMPTY_MAP) 455 443 else 456 444 $(LD) $(LFLAGS) -Map $(MAP_PREV) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(EMPTY_MAP) … … 462 450 # on architectures that have bss after symtab 463 451 464 echo "$(AS_PROLOG)""$(SYMTAB_SECTION)"" .incbin \"$@\"" | $( AS) $(AFLAGS) -o $(SIZEOK_MAP)452 echo "$(AS_PROLOG)""$(SYMTAB_SECTION)"" .incbin \"$@\"" | $(CC) $(CFLAGS) $(AS_CFLAGS) -x assembler -c -o $(SIZEOK_MAP) - 465 453 ifeq ($(CONFIG_LTO),y) 466 $( GCC) $(LFLAGS_LTO) -Xlinker -Map -Xlinker $(MAP_PREV) $(DEFS) $(GCC_CFLAGS) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SIZEOK_MAP)454 $(CC) $(DEFS) $(CFLAGS) $(LD_CFLAGS) -Xlinker -Map -Xlinker $(MAP_PREV) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SIZEOK_MAP) 467 455 else 468 456 $(LD) $(LFLAGS) -Map $(MAP_PREV) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SIZEOK_MAP)
Note:
See TracChangeset
for help on using the changeset viewer.