Changeset fc0b2a8 in mainline for uspace/lib


Ignore:
Timestamp:
2018-05-29T21:14:40Z (7 years ago)
Author:
Jiří Zárevúcky <jiri.zarevucky@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
fda19b8
Parents:
ed88c8e
Message:

Revert "Don't use custom ldscripts in uspace. (#38)"

This reverts commit a05ec6671002c451fceb01aa0ab3f71f004efb6d.

Needs more work.

Location:
uspace/lib
Files:
10 added
4 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/c/Makefile

    red88c8e rfc0b2a8  
    3333CONFIG_MAKEFILE = $(ROOT_PATH)/Makefile.config
    3434
     35LINKER_SCRIPTS = \
     36        $(LIBC_PREFIX)/arch/$(UARCH)/_link.ld \
     37        $(LIBC_PREFIX)/arch/$(UARCH)/_link-shlib.ld \
     38        $(LIBC_PREFIX)/arch/$(UARCH)/_link-dlexe.ld
     39
     40PRE_DEPEND =
     41EXTRA_OUTPUT = $(LINKER_SCRIPTS)
     42EXTRA_CLEAN = $(LINKER_SCRIPTS)
    3543LIBRARY = libc
    3644SOVERSION = 0.0
     
    182190include $(USPACE_PREFIX)/Makefile.common
    183191
     192$(LIBC_PREFIX)/arch/$(UARCH)/_link.ld: $(LIBC_PREFIX)/arch/$(UARCH)/_link.ld.in
     193        $(CC) $(DEFS) $(CFLAGS) -DLIBC_PATH=$(CURDIR) -E -x c $< | grep -v "^\#" > $@
     194
     195$(LIBC_PREFIX)/arch/$(UARCH)/_link-shlib.ld: $(LIBC_PREFIX)/arch/$(UARCH)/_link.ld.in
     196        $(CC) $(DEFS) $(CFLAGS) -DLIBC_PATH=$(CURDIR) -DSHLIB -E -x c $< | grep -v "^\#" > $@
     197
     198$(LIBC_PREFIX)/arch/$(UARCH)/_link-dlexe.ld: $(LIBC_PREFIX)/arch/$(UARCH)/_link.ld.in
     199        $(CC) $(DEFS) $(CFLAGS) -DLIBC_PATH=$(CURDIR) -DDLEXE -E -x c $< | grep -v "^\#" > $@
     200
    184201AUTOCHECK = $(realpath $(ROOT_PATH)/tools/autocheck.awk)
    185202
  • uspace/lib/pcut/Makefile

    red88c8e rfc0b2a8  
    3636
    3737test-libpcut-%: $(LIBRARY).a
    38         $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(STARTUP_OBJECT) $^ $(LIBRARY).a $(BASE_LIBS)
     38        $(CC) $(CFLAGS) $(LDFLAGS) -T $(LINKER_SCRIPT) -o $@ $(STARTUP) $^ $(LIBRARY).a $(BASE_LIBS)
    3939
  • uspace/lib/pcut/update-from-master.sh

    red88c8e rfc0b2a8  
    8080
    8181test-libpcut-%: $(LIBRARY).a
    82         $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(STARTUP_OBJECT) $^ $(LIBRARY).a $(BASE_LIBS)
     82        $(CC) $(CFLAGS) $(LDFLAGS) -T $(LINKER_SCRIPT) -o $@ $(STARTUP) $^ $(LIBRARY).a $(BASE_LIBS)
    8383
    8484EOF_MAKEFILE_TAIL
  • uspace/lib/posix/Makefile

    red88c8e rfc0b2a8  
    3636
    3737SPECS = gcc.specs
    38 LIBC_STARTUP_FILE = $(STARTUP_OBJECT)
     38LIBC_LINKER_SCRIPT = $(LIBC_PREFIX)/arch/$(UARCH)/_link.ld
     39LIBC_STARTUP_FILE = $(shell sed -n -e 's/^.*STARTUP(\(.*\)).*$$/\1/p' $(LIBC_LINKER_SCRIPT))
     40EXPORT_LINKER_SCRIPT = link.ld
    3941EXPORT_STARTUP_FILE = crt0.o
    4042
     
    4749        $(LIBRARY).a \
    4850        $(EXPORT_STARTUP_FILE) \
     51        $(EXPORT_LINKER_SCRIPT) \
    4952        $(SPECS)
    5053
     
    5255EXTRA_CLEAN = $(INCLUDE_LIBC)
    5356
    54 EXTRA_OUTPUT = $(SPECS) $(EXPORT_STARTUP_FILE)
     57EXTRA_OUTPUT = $(SPECS) $(EXPORT_LINKER_SCRIPT) $(EXPORT_STARTUP_FILE)
    5558
    5659SOURCES = \
     
    8790
    8891EXPORT_LDFLAGS = \
    89         -L$$(HELENOS_EXPORT_ROOT)/lib
     92        -L$$(HELENOS_EXPORT_ROOT)/lib \
     93        -T link.ld
    9094
    9195EXPORT_LDLIBS = \
     
    107111        echo '$(EXPORT_LDLIBS)' >> $@.new
    108112        mv $@.new $@
     113
     114$(EXPORT_LINKER_SCRIPT): $(LIBC_LINKER_SCRIPT)
     115        sed 's/STARTUP(.*)/STARTUP(crt0.o)/' $< > $@
    109116
    110117$(EXPORT_STARTUP_FILE): $(LIBC_STARTUP_FILE)
Note: See TracChangeset for help on using the changeset viewer.