837e312868
host-pkgconf is a mandatory dependency since the addition of the package
in commit 7f1f3f8786
resulting in the
following ulog build failure:
/home/buildroot/autobuild/run/instance-0/output-1/per-package/ulog/host/opt/alchemy/check.mk:36: *** 'pkg-config' is required. Stop.
An other option would be to set TARGET_OS to baremetal but it could have
unexpected side-effects such as removing -fPIC for arm targets
Fixes:
- http://autobuild.buildroot.org/results/c731fe0e9bdbfce0823f9c48641f1ed710fa6125
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Reviewed-by: Herve Codina <herve.codina@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
72 lines
2.4 KiB
Makefile
72 lines
2.4 KiB
Makefile
################################################################################
|
|
#
|
|
# alchemy
|
|
#
|
|
################################################################################
|
|
|
|
ALCHEMY_VERSION = d95b3c38cd37814a1b98d0bbf813de7adaaecfbc
|
|
ALCHEMY_SITE = $(call github,Parrot-Developers,alchemy,$(ALCHEMY_VERSION))
|
|
ALCHEMY_LICENSE = BSD-3-Clause (Alchemy), GPL-2.0 (kconfig)
|
|
ALCHEMY_LICENSE_FILES = COPYING README
|
|
HOST_ALCHEMY_DEPENDENCIES = host-pkgconf host-python3
|
|
|
|
ALCHEMY_HOME = $(HOST_DIR)/opt/alchemy
|
|
ALCHEMY_SDK_BASEDIR = $(STAGING_DIR)/usr/lib/alchemy/sdk
|
|
|
|
define HOST_ALCHEMY_INSTALL_CMDS
|
|
mkdir -p $(ALCHEMY_HOME)
|
|
cp -rf $(@D)/* $(ALCHEMY_HOME)
|
|
cp $(HOST_ALCHEMY_PKGDIR)/atom.mk.in $(ALCHEMY_HOME)/atom.mk.in
|
|
endef
|
|
|
|
$(eval $(host-generic-package))
|
|
|
|
# Variables used by other packages
|
|
|
|
ALCHEMY_MAKE = $(ALCHEMY_HOME)/scripts/alchemake
|
|
|
|
# TARGET_ARCH is set to 'xxx' to avoid Alchemy managing the architecture.
|
|
# When Alchemy manages the architecture, it can add some flags to CFGLAGS and
|
|
# can lead to incorrect result with the toolchain provided in TARGET_CROSS.
|
|
# 'xxx' is an unknown architecture for Alchemy. Using this value is a simple
|
|
# way to disable the Alchemy architecture management.
|
|
ALCHEMY_TARGET_ENV = \
|
|
$(TARGET_MAKE_ENV) \
|
|
ALCHEMY_HOME=$(ALCHEMY_HOME) \
|
|
ALCHEMY_WORKSPACE_DIR="$(@D)" \
|
|
ALCHEMY_TARGET_OUT=alchemy-out \
|
|
PKGCONFIG_BIN=$(PKG_CONFIG_HOST_BINARY) \
|
|
TARGET_OS=linux \
|
|
TARGET_OS_FLAVOUR=buildroot \
|
|
TARGET_CROSS="$(TARGET_CROSS)" \
|
|
TARGET_ARCH=xxx \
|
|
TARGET_GLOBAL_CXXFLAGS="$(TARGET_CXXFLAGS)" \
|
|
TARGET_GLOBAL_LDFLAGS="$(TARGET_LDFLAGS)" \
|
|
TARGET_GLOBAL_FFLAGS="$(TARGET_FCFLAGS)" \
|
|
TARGET_GLOBAL_FCFLAGS="$(TARGET_FCFLAGS)"
|
|
|
|
ifeq ($(BR2_STATIC_LIBS),y)
|
|
ALCHEMY_TARGET_ENV += \
|
|
TARGET_FORCE_STATIC=1 \
|
|
TARGET_GLOBAL_CFLAGS="$(TARGET_CFLAGS)"
|
|
else
|
|
ALCHEMY_TARGET_ENV += \
|
|
TARGET_GLOBAL_CFLAGS="$(TARGET_CFLAGS) -fPIC"
|
|
endif
|
|
|
|
# Install an Alchemy SDK file.
|
|
# This macro can be used by Alchemy packages
|
|
# $1: Alchemy module name
|
|
# $2: Alchemy module file name
|
|
# $3: Alchemy module libraries this module depends on
|
|
define ALCHEMY_INSTALL_LIB_SDK_FILE
|
|
$(INSTALL) -m 0644 -D \
|
|
$(ALCHEMY_HOME)/atom.mk.in \
|
|
$(ALCHEMY_SDK_BASEDIR)/$($(PKG)_NAME)/atom.mk
|
|
$(SED) 's#@STAGING_DIR@#$(STAGING_DIR)#' \
|
|
-e 's#@MODULE@#$(strip $(1))#' \
|
|
-e 's#@MODULE_FILENAME@#$(strip $(2))#' \
|
|
-e 's#@LIBRARIES@#$(strip $(3))#' \
|
|
$(ALCHEMY_SDK_BASEDIR)/$($(PKG)_NAME)/atom.mk
|
|
endef
|