buildroot/package/open-plc-utils/open-plc-utils.mk
Fabrice Fontaine d8738d3b97 open-plc-utils: fix build with static musl
Pass TARGET_LDFLAGS to EXTRA_LDFLAGS to fix following issue:
/home/buildroot/autobuild/run/instance-3/output/build/host-gcc-final-7.3.0/build/arm-buildroot-linux-musleabihf/libgcc/../../../libgcc/config/arm/lib1funcs.S:1545: undefined reference to `raise'

Also pass TARGET_CFLAGS to EXTRA_CFLAGS and TARGET_CXXFLAGS to
EXTRA_CXXFLAGS and move all these variables to
OPEN_PLC_UTILS_MAKE_OPTS for readability

Fixes:
 - http://autobuild.buildroot.org/results/67bc5e7ac8ae1c49c035b022a394d2f746705cf2

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-10-11 20:56:22 +02:00

33 lines
1.1 KiB
Makefile

################################################################################
#
# open-plc-utils
#
################################################################################
OPEN_PLC_UTILS_VERSION = 1be781d1ea81827e5f6c1a35961c65dd4d15472c
OPEN_PLC_UTILS_SITE = $(call github,qca,open-plc-utils,$(OPEN_PLC_UTILS_VERSION))
OPEN_PLC_UTILS_LICENSE = BSD-3-Clause
OPEN_PLC_UTILS_LICENSE_FILES = LICENSE
# We unfortunately can't use TARGET_CONFIGURE_OPTS, as it would
# override the package CFLAGS, LDFLAGS and CXXFLAGS definitions.
#
# Yes, we're passing __UCLIBC__ in EXTRA_CFLAGS, as it fixes a build
# issue for non-uClibc toolchains. It is the very crappy solution
# suggested at https://github.com/qca/open-plc-utils/issues/36.
OPEN_PLC_UTILS_MAKE_OPTS = \
EXTRA_CFLAGS="$(TARGET_CFLAGS) -D__UCLIBC__" \
EXTRA_CXXFLAGS="$(TARGET_CXXFLAGS)" \
EXTRA_LDFLAGS="$(TARGET_LDFLAGS)"
define OPEN_PLC_UTILS_BUILD_CMDS
$(TARGET_MAKE_ENV) $(MAKE) CROSS=$(TARGET_CROSS) \
$(OPEN_PLC_UTILS_MAKE_OPTS) -C $(@D)
endef
define OPEN_PLC_UTILS_INSTALL_TARGET_CMDS
$(TARGET_MAKE_ENV) $(MAKE) ROOTFS=$(TARGET_DIR) -C $(@D) install
endef
$(eval $(generic-package))