Changes in kernel/Makefile [1cb092d:9ded977] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/Makefile
r1cb092d r9ded977 84 84 85 85 ifeq ($(CONFIG_OPTIMIZE_FOR_SIZE),y) 86 OPTIMIZATION = s87 else 88 OPTIMIZATION = 386 OPTIMIZATION = s 87 else 88 OPTIMIZATION = 3 89 89 endif 90 90 … … 96 96 -Wall -Wextra -Wno-unused-parameter -Wmissing-prototypes \ 97 97 -Werror-implicit-function-declaration -Wwrite-strings \ 98 - Werror -pipe98 -pipe 99 99 100 100 ICC_CFLAGS = -I$(INCLUDES) -O$(OPTIMIZATION) -imacros $(CONFIG_HEADER) \ 101 101 -ffreestanding -fno-builtin -nostdlib -nostdinc -Wall -Wmissing-prototypes \ 102 -Werror-implicit-function-declaration - Werror -wd170102 -Werror-implicit-function-declaration -wd170 103 103 104 104 SUNCC_CFLAGS = -I$(INCLUDES) -xO$(OPTIMIZATION) \ … … 113 113 -pipe -arch $(CLANG_ARCH) 114 114 115 ifeq ($(CONFIG_DEBUG),y) 116 GCC_CFLAGS += -Werror 117 ICC_CFLAGS += -Werror 118 endif 119 120 ifeq ($(CONFIG_LTO),y) 121 GCC_CFLAGS += -flto 122 endif 123 124 ifeq ($(CONFIG_LINE_DEBUG),y) 125 GCC_CFLAGS += -g 126 ICC_CFLAGS += -g 127 SUNCC_CFLAGS += -g 128 CLANG_CFLAGS += -g 129 endif 130 131 # 132 # Mind the mutual ordering with the inclusion of the arch Makefile.inc. 133 # AFLAGS and LFLAGS must be initialized before the inclusion. 134 # 135 AFLAGS = 136 LFLAGS = -N -T $(LINK) -M 137 138 # 139 # Mind the mutual ordering with the initialization of AFLAGS and LFLAGS. 140 # The arch Makefile.inc must be included after the initialization. 141 # 115 142 -include arch/$(KARCH)/Makefile.inc 116 143 -include genarch/Makefile.inc … … 140 167 CFLAGS = $(GCC_CFLAGS) 141 168 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) 169 INSTRUMENTATION = -finstrument-functions 142 170 endif 143 171 … … 145 173 CFLAGS = $(GCC_CFLAGS) 146 174 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) 175 INSTRUMENTATION = -finstrument-functions 147 176 endif 148 177 … … 150 179 CFLAGS = $(ICC_CFLAGS) 151 180 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) 181 INSTRUMENTATION = 152 182 endif 153 183 … … 156 186 DEFS += $(CONFIG_DEFS) 157 187 DEPEND_DEFS = $(DEFS) 188 INSTRUMENTATION = 158 189 endif 159 190 … … 161 192 CFLAGS = $(CLANG_CFLAGS) 162 193 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) 163 endif 194 INSTRUMENTATION = 195 endif 196 164 197 165 198 ## Generic kernel sources … … 180 213 generic/src/debug/symtab.c \ 181 214 generic/src/debug/stacktrace.c \ 215 generic/src/debug/panic.c \ 216 generic/src/debug/debug.c \ 182 217 generic/src/interrupt/interrupt.c \ 183 218 generic/src/main/main.c \ … … 220 255 generic/src/synch/spinlock.c \ 221 256 generic/src/synch/condvar.c \ 222 generic/src/synch/rwlock.c \223 257 generic/src/synch/mutex.c \ 224 258 generic/src/synch/semaphore.c \ … … 273 307 test/mm/slab1.c \ 274 308 test/mm/slab2.c \ 275 test/synch/rwlock1.c \276 test/synch/rwlock2.c \277 test/synch/rwlock3.c \278 test/synch/rwlock4.c \279 test/synch/rwlock5.c \280 309 test/synch/semaphore1.c \ 281 310 test/synch/semaphore2.c \ … … 339 368 endif 340 369 370 ## Sources where instrumentation is enabled 371 # 372 373 ifeq ($(CONFIG_TRACE),y) 374 INSTRUMENTED_SOURCES = \ 375 generic/src/adt/btree.c \ 376 generic/src/cpu/cpu.c \ 377 generic/src/ddi/ddi.c \ 378 generic/src/interrupt/interrupt.c \ 379 generic/src/main/main.c \ 380 generic/src/main/kinit.c \ 381 generic/src/proc/the.c \ 382 generic/src/proc/tasklet.c \ 383 generic/src/mm/frame.c \ 384 generic/src/mm/page.c \ 385 generic/src/mm/tlb.c \ 386 generic/src/mm/as.c \ 387 generic/src/mm/slab.c \ 388 generic/src/sysinfo/sysinfo.c \ 389 generic/src/console/kconsole.c 390 else 391 INSTRUMENTED_SOURCES = 392 endif 393 341 394 GENERIC_OBJECTS := $(addsuffix .o,$(basename $(GENERIC_SOURCES))) 342 395 ARCH_OBJECTS := $(addsuffix .o,$(basename $(ARCH_SOURCES))) 343 396 GENARCH_OBJECTS := $(addsuffix .o,$(basename $(GENARCH_SOURCES))) 344 397 398 LFLAGS_LTO := $(addprefix -Xlinker ,$(LFLAGS)) 399 345 400 ifeq ($(CONFIG_SYMTAB),y) 346 401 SYMTAB_OBJECTS := generic/src/debug/real_map.o … … 353 408 354 409 $(DISASM): $(RAW) 410 ifeq ($(CONFIG_LINE_DEBUG),y) 411 $(OBJDUMP) -d -S $< > $@ 412 else 355 413 $(OBJDUMP) -d $< > $@ 414 endif 356 415 357 416 $(RAW): $(LINK) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(SYMTAB_OBJECTS) 358 $(LD) -N $(LFLAGS) -T $(LINK) -M -Map $(MAP) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SYMTAB_OBJECTS) 417 ifeq ($(CONFIG_LTO),y) 418 $(GCC) $(LFLAGS_LTO) -Xlinker -Map -Xlinker $(MAP) $(DEFS) $(GCC_CFLAGS) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SYMTAB_OBJECTS) 419 else 420 $(LD) $(LFLAGS) -Map $(MAP) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SYMTAB_OBJECTS) 421 endif 359 422 ifeq ($(CONFIG_STRIP_BINARIES),y) 360 $(STRIP) $(RAW) 423 $(STRIP) $(RAW) 361 424 endif 362 425 … … 365 428 366 429 %.o: %.S $(DEPEND) 367 $(GCC) $(DEFS) $(GCC_CFLAGS) -D__ASM__ -c $< -o $@430 $(GCC) $(DEFS) $(GCC_CFLAGS) -D__ASM__ -c -o $@ $< 368 431 ifeq ($(PRECHECK),y) 369 432 $(JOBFILE) $(JOB) $< $@ as asm/preproc $(DEFS) $(GCC_CFLAGS) -D__ASM__ … … 382 445 383 446 test/fpu/%.o: test/fpu/%.c $(DEPEND) 384 $(CC) $(DEFS) $(CFLAGS) $(EXTRA_FLAGS) -c $< -o $@447 $(CC) $(DEFS) $(CFLAGS) $(EXTRA_FLAGS) -c -o $@ $< 385 448 ifeq ($(PRECHECK),y) 386 449 $(JOBFILE) $(JOB) $< $@ cc test $(DEFS) $(CFLAGS) $(EXTRA_FLAGS) … … 392 455 393 456 %.o: %.c $(DEPEND) 394 $(CC) $(DEFS) $(CFLAGS) $(EXTRA_FLAGS) $(FPU_NO_CFLAGS) -c $< -o $@457 $(CC) $(DEFS) $(CFLAGS) $(EXTRA_FLAGS) $(FPU_NO_CFLAGS) $(if $(findstring $<,$(INSTRUMENTED_SOURCES)),$(INSTRUMENTATION)) -c -o $@ $< 395 458 ifeq ($(PRECHECK),y) 396 459 $(JOBFILE) $(JOB) $< $@ cc core $(DEFS) $(CFLAGS) $(EXTRA_FLAGS) $(FPU_NO_CFLAGS) … … 402 465 $(REAL_MAP).bin: $(LINK) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) 403 466 echo $(SYMTAB_SECTION) | $(AS) $(AFLAGS) -o $(EMPTY_MAP) 404 $(LD) -N $(LFLAGS) -T $(LINK) -M -Map $(MAP_PREV) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(EMPTY_MAP) 467 ifeq ($(CONFIG_LTO),y) 468 $(GCC) $(LFLAGS_LTO) -Xlinker -Map -Xlinker $(MAP_PREV) $(DEFS) $(GCC_CFLAGS) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(EMPTY_MAP) 469 else 470 $(LD) $(LFLAGS) -Map $(MAP_PREV) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(EMPTY_MAP) 471 endif 405 472 $(OBJDUMP) -t $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) > $(DUMP) 406 473 $(GENMAP) $(MAP_PREV) $(DUMP) $@ … … 410 477 411 478 echo $(SYMTAB_SECTION)" .incbin \"$@\"" | $(AS) $(AFLAGS) -o $(SIZEOK_MAP) 412 $(LD) -N $(LFLAGS) -T $(LINK) -M -Map $(MAP_PREV) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SIZEOK_MAP) 479 ifeq ($(CONFIG_LTO),y) 480 $(GCC) $(LFLAGS_LTO) -Xlinker -Map -Xlinker $(MAP_PREV) $(DEFS) $(GCC_CFLAGS) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SIZEOK_MAP) 481 else 482 $(LD) $(LFLAGS) -Map $(MAP_PREV) -o $@ $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SIZEOK_MAP) 483 endif 413 484 $(OBJDUMP) -t $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) > $(DUMP) 414 485 $(GENMAP) $(MAP_PREV) $(DUMP) $@
Note:
See TracChangeset
for help on using the changeset viewer.