mirror of
https://review.coreboot.org/flashrom.git
synced 2025-04-30 08:23:42 +02:00
Makefile: check if librt is an external library
Some systems, e.g. OpenBSD, have clock_gettime / librt build into the libc and therefore fail to link against it with -lrt. Thus, detect this and link only if needed. Change-Id: I2c1668a350aa0806fccfb4e9cd8b04861f085ee9 Signed-off-by: Thomas Heijligen <thomas.heijligen@secunet.com> Reviewed-on: https://review.coreboot.org/c/flashrom/+/61523 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Angel Pons <th3fanbus@gmail.com>
This commit is contained in:
parent
9fb5812896
commit
274e146621
4
Makefile
4
Makefile
@ -239,6 +239,7 @@ HAS_PCI_OLD_GET_DEV := $(call c_compile_test, Makefile.d/pci_old_get_dev_test.c,
|
||||
HAS_FT232H := $(call c_compile_test, Makefile.d/ft232h_test.c, $(CONFIG_LIBFTDI1_CFLAGS))
|
||||
HAS_UTSNAME := $(call c_compile_test, Makefile.d/utsname_test.c)
|
||||
HAS_CLOCK_GETTIME := $(call c_compile_test, Makefile.d/clock_gettime_test.c)
|
||||
HAS_EXTERN_LIBRT := $(call c_link_test, Makefile.d/clock_gettime_test.c, , -lrt)
|
||||
HAS_LINUX_MTD := $(call c_compile_test, Makefile.d/linux_mtd_test.c)
|
||||
HAS_LINUX_SPI := $(call c_compile_test, Makefile.d/linux_spi_test.c)
|
||||
HAS_LINUX_I2C := $(call c_compile_test, Makefile.d/linux_i2c_test.c)
|
||||
@ -901,8 +902,10 @@ endif
|
||||
|
||||
ifeq ($(HAS_CLOCK_GETTIME), yes)
|
||||
FEATURE_FLAGS += -D'HAVE_CLOCK_GETTIME=1'
|
||||
ifeq ($(HAS_EXTERN_LIBRT), yes)
|
||||
override LDFLAGS += -lrt
|
||||
endif
|
||||
endif
|
||||
|
||||
LIBFLASHROM_OBJS = $(CHIP_OBJS) $(PROGRAMMER_OBJS) $(LIB_OBJS)
|
||||
OBJS = $(CLI_OBJS) $(LIBFLASHROM_OBJS)
|
||||
@ -959,6 +962,7 @@ config:
|
||||
@echo "Checking for header \"linux/i2c.h\": $(HAS_LINUX_I2C)"
|
||||
@echo "Checking for header \"sys/utsname.h\": $(HAS_UTSNAME)"
|
||||
@echo "Checking for function \"clock_gettime\": $(HAS_CLOCK_GETTIME)"
|
||||
@echo "Checking for external \"librt\": $(HAS_EXTERN_LIBRT)"
|
||||
@if ! [ "$(PROGRAMMER_OBJS)" ]; then \
|
||||
echo "You have to enable at least one programmer driver!"; \
|
||||
exit 1; \
|
||||
|
@ -40,6 +40,10 @@ define c_compile_test # $1: files to compile, $2: cflags
|
||||
$(call debug_shell, $(CC) -c -Wall -Werror $2 $1 -o /dev/null && echo yes || echo no)
|
||||
endef
|
||||
|
||||
define c_link_test # $1: file to compile and link, $2: cflags, $3: ldflags
|
||||
$(call debug_shell, $(CC) -Wall -Werror $2 $1 $3 -o /dev/null && echo yes || echo no)
|
||||
endef
|
||||
|
||||
define find_dependency
|
||||
$(call debug_shell, $(if $(PKG_CONFIG_LIBDIR),PKG_CONFIG_LIBDIR=$(PKG_CONFIG_LIBDIR),) $(PKG_CONFIG) --exists $1 && echo yes || echo no)
|
||||
endef
|
||||
|
Loading…
x
Reference in New Issue
Block a user