mirror of https://github.com/ipxe/ipxe.git
[linux] Add a prefix to all symbols to avoid future name collisions
Allow for the possibility of linking to platform libraries for the Linux userspace build by adding an iPXE-specific symbol prefix. Signed-off-by: Michael Brown <mcb30@ipxe.org>pull/310/head
parent
16d95227a4
commit
040cdd0c65
|
@ -10,6 +10,7 @@ LDFLAGS :=
|
||||||
HOST_CFLAGS :=
|
HOST_CFLAGS :=
|
||||||
MAKEDEPS := Makefile
|
MAKEDEPS := Makefile
|
||||||
CROSS_COMPILE ?= $(CROSS)
|
CROSS_COMPILE ?= $(CROSS)
|
||||||
|
SYMBOL_PREFIX :=
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#
|
#
|
||||||
|
|
|
@ -1102,9 +1102,10 @@ TGT_LD_ENTRY = _$(TGT_PREFIX)_start
|
||||||
#
|
#
|
||||||
TGT_LD_FLAGS = $(foreach SYM,$(TGT_LD_ENTRY) $(TGT_LD_DRIVERS) \
|
TGT_LD_FLAGS = $(foreach SYM,$(TGT_LD_ENTRY) $(TGT_LD_DRIVERS) \
|
||||||
$(TGT_LD_DEVLIST) obj_config obj_config_$(PLATFORM),\
|
$(TGT_LD_DEVLIST) obj_config obj_config_$(PLATFORM),\
|
||||||
-u $(SYM) --defsym check_$(SYM)=$(SYM) ) \
|
-u $(SYMBOL_PREFIX)$(SYM) \
|
||||||
|
--defsym check_$(SYM)=$(SYMBOL_PREFIX)$(SYM) ) \
|
||||||
$(patsubst %,--defsym %,$(TGT_LD_IDS)) \
|
$(patsubst %,--defsym %,$(TGT_LD_IDS)) \
|
||||||
-e $(TGT_LD_ENTRY)
|
-e $(SYMBOL_PREFIX)$(TGT_LD_ENTRY)
|
||||||
|
|
||||||
# Calculate list of debugging versions of objects to be included in
|
# Calculate list of debugging versions of objects to be included in
|
||||||
# the target.
|
# the target.
|
||||||
|
@ -1166,6 +1167,7 @@ $(BLIB) : $(BLIB_OBJS) $(BLIB_LIST) $(MAKEDEPS)
|
||||||
$(Q)$(RM) $(BLIB)
|
$(Q)$(RM) $(BLIB)
|
||||||
$(QM)$(ECHO) " [AR] $@"
|
$(QM)$(ECHO) " [AR] $@"
|
||||||
$(Q)$(AR) rD $@ $(sort $(BLIB_OBJS))
|
$(Q)$(AR) rD $@ $(sort $(BLIB_OBJS))
|
||||||
|
$(Q)$(OBJCOPY) --prefix-symbols=$(SYMBOL_PREFIX) $@
|
||||||
$(Q)$(RANLIB) -D $@
|
$(Q)$(RANLIB) -D $@
|
||||||
blib : $(BLIB)
|
blib : $(BLIB)
|
||||||
|
|
||||||
|
@ -1207,6 +1209,7 @@ $(BIN)/version.%.o : core/version.c $(MAKEDEPS) $(GIT_INDEX)
|
||||||
-DVERSION_PATCH=$(VERSION_PATCH) \
|
-DVERSION_PATCH=$(VERSION_PATCH) \
|
||||||
-DVERSION="\"$(VERSION)\"" \
|
-DVERSION="\"$(VERSION)\"" \
|
||||||
-c $< -o $@
|
-c $< -o $@
|
||||||
|
$(Q)$(OBJCOPY) --prefix-symbols=$(SYMBOL_PREFIX) $@
|
||||||
|
|
||||||
# Build an intermediate object file from the objects required for the
|
# Build an intermediate object file from the objects required for the
|
||||||
# specified target.
|
# specified target.
|
||||||
|
|
|
@ -3,6 +3,8 @@ MEDIA = linux
|
||||||
# enable valgrind
|
# enable valgrind
|
||||||
CFLAGS += -UNVALGRIND
|
CFLAGS += -UNVALGRIND
|
||||||
|
|
||||||
|
SYMBOL_PREFIX = _ipxe__
|
||||||
|
|
||||||
INCDIRS += arch/x86/include/linux
|
INCDIRS += arch/x86/include/linux
|
||||||
SRCDIRS += interface/linux
|
SRCDIRS += interface/linux
|
||||||
SRCDIRS += drivers/linux
|
SRCDIRS += drivers/linux
|
||||||
|
|
Loading…
Reference in New Issue