Changeset 1314e3b in mainline


Ignore:
Timestamp:
2007-11-12T13:24:46Z (17 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
bcfd586
Parents:
7c5bcc0
Message:

Work around the way symtab.data section is constructed.
This fixes building of ia64.

Files:
4 edited

Legend:

Unmodified
Added
Removed
  • kernel/Makefile

    r7c5bcc0 r1314e3b  
    6767endif
    6868
    69 ## Setup kernel configuration
    70 #
    71 
    7269-include arch/$(ARCH)/Makefile.inc
    7370-include genarch/Makefile.inc
    7471
     72## The at-sign
     73#
     74# THE $(ATSIGN) variable holds the ASCII character representing the at-sign
     75# ('@') used in various $(AS) constructs (e.g. @progbits). On architectures that
     76# don't use '@' for starting a comment, $(ATSIGN) is merely '@'. However, on
     77# those that do use it for starting a comment (e.g. arm32), $(ATSIGN) must be
     78# defined as the percentile-sign ('%') in the architecture-dependent
     79# Makefile.inc.
     80#
     81ATSIGN ?= @
     82
     83## Cross-platform assembly to start a symtab.data section
     84#
     85SYMTAB_SECTION=".section symtab.data, \"a\", $(ATSIGN)progbits;"
     86
     87## Setup kernel configuration
     88#
    7589ifeq ($(CONFIG_DEBUG),y)
    7690        DEFS += -DCONFIG_DEBUG
     
    347361
    348362generic/src/debug/real_map.bin: depend arch/$(ARCH)/_link.ld $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS)
    349         $(OBJCOPY) -I binary -O $(BFD_NAME) -B $(BFD_ARCH) --prefix-sections=symtab Makefile generic/src/debug/empty_map.o
     363        echo $(SYMTAB_SECTION) | $(AS) $(AFLAGS) -o generic/src/debug/empty_map.o
    350364        $(LD) -T arch/$(ARCH)/_link.ld $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) generic/src/debug/empty_map.o  -o $@ -Map kernel.map.pre
    351365        $(OBJDUMP) -t $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) > kernel.objdump
     
    353367        # Do it once again, this time to get correct even the symbols
    354368        # on architectures, that have bss after symtab
    355         $(OBJCOPY) -I binary -O $(BFD_NAME) -B $(BFD_ARCH) --prefix-sections=symtab generic/src/debug/real_map.bin generic/src/debug/sizeok_map.o
     369        echo $(SYMTAB_SECTION)" .incbin \"$@\"" | $(AS) $(AFLAGS) -o generic/src/debug/sizeok_map.o
    356370        $(LD) -T arch/$(ARCH)/_link.ld $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) generic/src/debug/sizeok_map.o -o $@ -Map kernel.map.pre
    357371        $(OBJDUMP) -t $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) > kernel.objdump
     
    359373
    360374generic/src/debug/real_map.o: generic/src/debug/real_map.bin
    361         $(OBJCOPY) -I binary -O $(BFD_NAME) -B $(BFD_ARCH) --prefix-sections=symtab $< $@
     375        echo $(SYMTAB_SECTION)" .incbin \"$<\"" | $(AS) $(AFLAGS) -o $@
    362376
    363377kernel.raw: depend arch/$(ARCH)/_link.ld $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) generic/src/debug/real_map.o
  • kernel/arch/arm32/Makefile.inc

    r7c5bcc0 r1314e3b  
    4141        DMACHINE = MACHINE_GXEMUL_TESTARM
    4242endif
     43
     44ATSIGN = %
    4345
    4446GCC_CFLAGS += -fno-zero-initialized-in-bss
  • kernel/arch/ia64/Makefile.inc

    r7c5bcc0 r1314e3b  
    3030#
    3131
    32 BFD_NAME = elf64-ia64-little
     32BFD_NAME = elf64-little
    3333BFD_ARCH = ia64-elf64
    3434TARGET = ia64-pc-linux-gnu
  • uspace/lib/libc/arch/ia64/Makefile.inc

    r7c5bcc0 r1314e3b  
    4040                arch/$(ARCH)/src/tls.c
    4141
    42 BFD_NAME = elf64-little
     42BFD_NAME = elf64-ia64-little
    4343BFD_ARCH = ia64-elf64
Note: See TracChangeset for help on using the changeset viewer.