1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-05-01 00:43:40 +02:00
flashrom/Makefile.include
Thomas Heijligen 274e146621 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>
2022-02-15 00:02:01 +00:00

58 lines
1.8 KiB
Makefile

#
# This file is part of the flashrom project.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# Here are functions and macros defined for the Makefile
define mark_unsupported
$(foreach p,$1, \
$(if $(filter $($(p)),yes), \
$(eval UNSUPPORTED_FEATURES += $(p)=yes), \
$(eval override $(p) := no)))
endef
define filter_deps
$(strip $(foreach p,$1, \
$(if $(filter $($(p)),yes), \
$(p))))
endef
define disable_all
$(foreach p,$1, \
$(eval override $(p) := no))
endef
# Run the C Preprocessor with file $1 and return the last line, removing quotes.
define c_macro_test
$(strip $(call debug_shell, $(CC) -E $1 | tail -1 | tr -d '"'))
endef
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
define dependency_cflags
$(call debug_shell, $(if $(PKG_CONFIG_LIBDIR),PKG_CONFIG_LIBDIR=$(PKG_CONFIG_LIBDIR),) $(PKG_CONFIG) --cflags $1 2>/dev/null)
endef
define dependency_ldflags
$(call debug_shell, $(if $(PKG_CONFIG_LIBDIR),PKG_CONFIG_LIBDIR=$(PKG_CONFIG_LIBDIR),) $(PKG_CONFIG) --libs $1 2>/dev/null)
endef