############################################################################### # # acs # ################################################################################ ACS_VERSION = 1.16.0 ACS_SITE = $(TOPDIR)/../external/acs ACS_SITE_METHOD = local ACS_LICENSE = BSD-3-Clause ACS_LICENSE_FILE = BSD-3-Clause ACS_DEPENDENCIES = sysklogd sbc libcurl nghttp2 libgcrypt libsoup portaudio host-doxygen AVS_DEVICE_SDK_INSTALL_STAGING = YES define ACS_CONFIGURE_CMDS (mkdir -p $(@D)/ace/sdk/avs_device_sdk_build && cd $(@D)/ace/sdk/avs_device_sdk_build && rm -f CMakeCache.txt && \ PATH=$(BR_PATH) \ $($(PKG)_CONF_ENV) $(BR2_CMAKE) $($(PKG)_SRCDIR)/ace/sdk/sdk/avs_device_sdk/repo \ -DCMAKE_TOOLCHAIN_FILE="$(HOST_DIR)/share/buildroot/toolchainfile.cmake" \ -DCMAKE_INSTALL_PREFIX="/usr" \ -DCMAKE_COLOR_MAKEFILE=OFF \ -DCMAKE_VERBOSE_MAKEFILE=ON \ -DBUILD_TESTING=OFF \ -DBUILD_SHARED_LIBS=$(if $(BR2_STATIC_LIBS),OFF,ON) \ -DGSTREAMER_MEDIA_PLAYER=ON \ -DPORTAUDIO=ON \ -DPORTAUDIO_LIB_PATH=$(TARGET_DIR)/usr/lib/libportaudio.so \ -DPORTAUDIO_INCLUDE_DIR=$(STAGING_DIR)/usr/include \ -DCMAKE_BUILD_TYPE=DEBUG \ -DACS_SDK_PATH="$($(PKG)_SRCDIR)/ace/sdk" \ -DACS_UTILS=ON \ -DEXTENSION_PATH="$($(PKG)_SRCDIR)/ace/sdk/sdk/avs_device_sdk/ACSUtilities" \ -DRAPIDJSON_MEM_OPTIMIZATION=OFF \ -DACS_SDK_V123_AND_BELOW=ON \ -DBLUETOOTH_ENABLED=ON \ -DACS_SDK_BLUETOOTH=ON \ -DBUILD_TESTING=ON \ $(CMAKE_QUIET) \ $($(PKG)_CONF_OPTS) \ ) endef define ACS_BUILD_CMDS ln -fs $(STAGING_DIR) $(@D)/sysroot $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/dpk_impl/raspi/ace_hal/log CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include -I$(TARGET_DIR)/usr/include -I$(@D)/ace/sdk/include" $(TARGET_MAKE_ENV) $(MAKE) ../../../../ace/sdk/lib/libacehal_kv_storage.so -C $(@D)/dpk_impl/raspi/ace_hal/kv_storage CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include -I$(TARGET_DIR)/usr/include -I$(@D)/ace/sdk/include -I$(@D)/dpk_impl/raspi/ace_hal/kv_storage/include" $(TARGET_MAKE_ENV) $(MAKE) ../../../../ace/sdk/bin/kvs_util -C $(@D)/dpk_impl/raspi/ace_hal/kv_storage CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include -I$(TARGET_DIR)/usr/include -I$(@D)/ace/sdk/include -I$(@D)/dpk_impl/raspi/ace_hal/kv_storage/include" $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/dpk_impl/raspi/ace_hal/device_info CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include -I$(TARGET_DIR)/usr/include -I$(@D)/ace/sdk/include -I$(@D)/dpk_impl/raspi/ace_hal/device_info/include -I$(@D)/dpk_impl/raspi/ace_hal/log" $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/dpk_impl/raspi/ace_hal/wifi CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS) -g -O2 -fPIC -I$(STAGING_DIR)/usr/include -I$(TARGET_DIR)/usr/include -I$(@D)/ace/sdk/include -I$(@D)/ace/sdk/include/ace -I$(@D)/dpk_impl/raspi/ace_hal/log -I$(@D)/dpk_impl/raspi/ace_hal/wifi/include -I$(@D)/dpk_impl/raspi/ace_hal/wifi/include/nm -I$(STAGING_DIR)/usr/include/libnm -I$(STAGING_DIR)/usr/include/glib-2.0 -I$(STAGING_DIR)/usr/lib/glib-2.0/include" $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/dpk_impl/raspi/ace_hal/factory_reset CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS) -fPIC -Wall --std=gnu11 -Wextra -Wno-unused -Wno-unused-parameter -I$(STAGING_DIR)/usr/include -I$(TARGET_DIR)/usr/include -I$(@D)/ace/sdk/include -I$(@D)/dpk_impl/raspi/ace_hal/kv_storage/include -I$(@D)/dpk_impl/raspi/ace_hal/log -I$(@D)/dpk_impl/raspi/ace_hal/factory_reset/include" $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/dpk_impl/raspi/ace_hal/dha CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS) -fPIC -Wall --std=gnu11 -Wextra -Werror -Wno-unused -Wno-unused-parameter -I$(STAGING_DIR)/usr/include -I$(TARGET_DIR)/usr/include -I$(@D)/ace/sdk/include -I$(@D)/dpk_impl/raspi/ace_hal/dha/common -I$(@D)/dpk_impl/raspi/ace_hal/log -I$(@D)/dpk_impl/raspi/ace_hal/dha/crypto_utils -I$(@D)/dpk_impl/raspi/ace_hal/dha/port -I$(@D)/dpk_impl/raspi/ace_hal/dha/rpi_hw" $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/dpk_impl/raspi/ace_hal/bluez_ble/bluez_ble_daemon CC="$(TARGET_CC)" ACS_DPK_ROOT_DIR="$(@D)" CFLAGS="$(TARGET_CFLAGS) -fPIC -Wno-return-type -Wno-unused -Wno-unused-parameter -pthread -DHAVE_CONFIG_H -I$(STAGING_DIR)/usr/include -I$(TARGET_DIR)/usr/include -I$(@D)/ace/sdk/include -I$(@D)/dpk_impl/raspi/ace_hal/bluez_ble/bluez_ble_daemon -I$(@D)/dpk_impl/raspi/ace_hal/bluez_ble/bluez_ble_daemon/include -I$(@D)/dpk_impl/raspi/ace_hal/bluez_ble/bluez_ble_daemon/src -I$(@D)/dpk_impl/raspi/ace_hal/bluez_ble/bluez_ble_daemon/shared -I$(@D)/dpk_impl/raspi/ace_hal/bluez_ble/bluez_ble_daemon/lib -I$(@D)/dpk_impl/raspi/ace_hal/bluez_ble/bluez_ble_daemon/attrib -I$(@D)/dpk_impl/raspi/ace_hal/bluez_ble/bluez_ble_daemon/btio -I$(STAGING_DIR)/usr/include/glib-2.0 -I$(STAGING_DIR)/usr/lib/glib-2.0/include -I$(STAGING_DIR)/usr/include/dbus-1.0 -I$(STAGING_DIR)/usr/lib/dbus-1.0/include" $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/dpk_impl/raspi/ace_hal/bluez_ble/bluez_ble_hal CC="$(TARGET_CC)" ACS_DPK_ROOT_DIR="$(@D)" BLE_DAEMON_NAME="bluezbled" CFLAGS="$(TARGET_CFLAGS) -fPIC -Wall -g --std=gnu11 -Wno-return-type -Wno-error -Wno-unused -Wno-unused-parameter -pedantic -pthread -Wno-deprecated-declarations -Wno-pointer-arith -DBLE_DAEMON_NAME="\\\"bluezbled\\\"" -I$(STAGING_DIR)/usr/include -I$(TARGET_DIR)/usr/include -I$(@D)/ace/sdk/include -I$(@D)/dpk_impl/raspi/ace_hal/bluez_ble/bluez_ble_hal/include" $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/dpk_impl/raspi/ace_hal/bt CC="$(TARGET_CC)" ACS_DPK_ROOT_DIR="$(@D)" CFLAGS="$(TARGET_CFLAGS) -Wall -std=gnu99 -fPIC -pthread -I$(STAGING_DIR)/usr/include -I$(TARGET_DIR)/usr/include -I$(@D)/ace/sdk/include -I$(@D)/ace/sdk/include/ace -I$(@D)/dpk_impl/raspi/ace_hal/bt/include -I$(@D)/dpk_impl/raspi/ace_hal/bt/include/co -I$(@D)/dpk_impl/raspi/ace_hal/bt/include/bluez -I$(@D)/dpk_impl/raspi/ace_hal/bt/include/bluez/profile/a2dp -I$(@D)/dpk_impl/raspi/ace_hal/bt/include/bluealsa -I$(@D)/dpk_impl/raspi/ace_hal/bt/include/bluez/gatt -I$(@D)/dpk_impl/raspi/ace_hal/log -I$(STAGING_DIR)/usr/include/glib-2.0 -I$(STAGING_DIR)/usr/lib/glib-2.0/include -I$(STAGING_DIR)/usr/include/dbus-1.0 -I$(STAGING_DIR)/usr/lib/dbus-1.0/include -I$(STAGING_DIR)/usr/include/alsa" $(TARGET_MAKE_ENV) $(MAKE) -j1 -C $(@D)/ace/sdk PLATFORM_CROSS_PATH="$(HOST_DIR)/bin" PLATFORM_TOOLCHAIN_PREFIX="$(GNU_TARGET_NAME)" LIBRARY_PATH="$(@D)/ace/sdk" PLATFORM_CROSS_SYSROOT="$(STAGING_DIR)" PLATFORM_CFLAGS="$(TARGET_CFLAGS) -DAIPC_SKIP_ROOT_CHK" PLATFORM_CXXFALGS="$(TARGET_CFLAGS)" CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" PLATFORM_INCLUDES="-I$(STAGING_DIR)/usr/include -I$(TARGET_DIR)/usr/include" WERROR_ENABLED="n" $(TARGET_MAKE_ENV) $($(PKG)_MAKE_ENV) $($(PKG)_MAKE) $($(PKG)_MAKE_OPTS) -C $(@D)/ace/sdk/avs_device_sdk_build #$(TARGET_CC) -o $(TARGET_DIR)/usr/bin/device_info $(@D)/ace/sdk/objs/libace_device_info/dpk/hal/cli/device_info/device_info_cli.o -fPIC -Wall --std=gnu11 -Wextra -Werror -Wno-unused -Wno-unused-parameter -I$(@D)/ace/sdk/include -L$(@D)/ace/sdk/lib/ -lacehal_device_info -lacehal_kv_storage -lace_log -lacehal_log endef define ACS_INSTALL_STAGING_CMDS $(TARGET_MAKE_ENV) $($(PKG)_MAKE_ENV) $($(PKG)_MAKE) $($(PKG)_MAKE_OPTS) $($(PKG)_INSTALL_STAGING_OPTS) -C $(@D)/ace/sdk/avs_device_sdk_build endef define ACS_INSTALL_TARGET_CMDS mkdir -p $(TARGET_DIR)/var/lib/data/ace $(TARGET_DIR)/var/lib/data/ace/models $(TARGET_DIR)/var/lib/data/ace/kvstorage $(TARGET_DIR)/databases $(TARGET_DIR)/etc/alsa/conf.d chmod -R 777 $(TARGET_DIR)/var/lib/data $(TARGET_DIR)/databases $(SED) 's/messages/syslog/' $(TARGET_DIR)/etc/syslog.conf $(TARGET_MAKE_ENV) $($(PKG)_MAKE_ENV) $($(PKG)_MAKE) $($(PKG)_MAKE_OPTS) $($(PKG)_INSTALL_TARGET_OPTS) -C $(@D)/ace/sdk/avs_device_sdk_build $(INSTALL) -D -m 755 $(TOPDIR)/package/rockchip/acs/S01login $(TARGET_DIR)/etc/init.d/ $(INSTALL) -D -m 755 $(TOPDIR)/package/rockchip/acs/S99acs $(TARGET_DIR)/etc/init.d/ $(INSTALL) -D -m 755 $(@D)/ace/sdk/bin/* $(TARGET_DIR)/usr/bin/ $(INSTALL) -D -m 755 $(@D)/ace/sdk/lib/* $(TARGET_DIR)/usr/lib/ $(INSTALL) -D -m 755 $(@D)/ace/sdk/avs_device_sdk_build/SampleApp/src/SampleApp $(TARGET_DIR)/usr/bin/ $(INSTALL) -D -m 755 $(@D)/ace/sdk/avs_device_sdk_build/Integration/test/AlertsIntegrationTest $(TARGET_DIR)/usr/bin/ $(INSTALL) -D -m 755 $(@D)/ace/sdk/avs_device_sdk_build/Integration/test/AlexaDirectiveSequencerLibraryTest $(TARGET_DIR)/usr/bin/ $(INSTALL) -D -m 755 $(@D)/ace/sdk/avs_device_sdk_build/Integration/test/SpeechSynthesizerIntegrationTest $(TARGET_DIR)/usr/bin/ $(INSTALL) -D -m 755 $(@D)/ace/sdk/avs_device_sdk_build/Integration/test/ServerDisconnectIntegrationTest $(TARGET_DIR)/usr/bin/ $(INSTALL) -D -m 755 $(@D)/ace/sdk/avs_device_sdk_build/Integration/test/AudioPlayerIntegrationTest $(TARGET_DIR)/usr/bin/ $(INSTALL) -D -m 755 $(@D)/ace/sdk/avs_device_sdk_build/Integration/test/AudioInputProcessorIntegrationTest $(TARGET_DIR)/usr/bin/ $(INSTALL) -D -m 755 $(@D)/ace/sdk/avs_device_sdk_build/Integration/test/AlexaCommunicationsLibraryTest $(TARGET_DIR)/usr/bin/ $(INSTALL) -D -m 755 $(@D)/ace/sdk/avs_device_sdk_build/Integration/test/AlexaAuthorizationDelegateTest $(TARGET_DIR)/usr/bin/ # $(INSTALL) -D -m 755 $(@D)/ace/sdk/sdk/avs_device_sdk/testapp/TestApp $(TARGET_DIR)/usr/bin/ # $(INSTALL) -D -m 755 $(@D)/ace/sdk/sdk/avs_device_sdk/testapp/DirectiveInjectorTest $(TARGET_DIR)/usr/bin/ # $(INSTALL) -D -m 755 $(@D)/ace/sdk/sdk/avs_device_sdk/testapp/lib/* $(TARGET_DIR)/usr/lib/ # $(INSTALL) -D -m 755 $(@D)/ace/sdk/sdk/avs_device_sdk/testapp/models/* $(TARGET_DIR)/var/lib/data/ace/models/ $(INSTALL) -D -m 755 $(@D)/scripts/rpi/aipc-configuration.sh $(TARGET_DIR)/usr/bin/ $(INSTALL) -D -m 755 $(@D)/AlexaClientSDKConfig.json $(TARGET_DIR)/var/lib/data/ace/ $(INSTALL) -D -m 755 $(@D)/scripts/rpi/config_files/NetworkManager.conf $(TARGET_DIR)/etc/NetworkManager echo -e 'denyinterfaces wlan0' >> $(TARGET_DIR)/etc/dhcpcd.conf $(INSTALL) -D -m 755 $(@D)/scripts/rpi/config_files/20-bluealsa.conf $(TARGET_DIR)/etc/alsa/conf.d/ $(INSTALL) -D -m 755 $(@D)/scripts/rpi/config_files/bluealsa.conf $(TARGET_DIR)/etc/dbus-1/system.d/ $(INSTALL) -D -m 755 $(@D)/scripts/rpi/device-provisioning/cert.pem $(TARGET_DIR)/var/lib/data/ace/ $(INSTALL) -D -m 755 $(@D)/scripts/rpi/device-provisioning/device_info.json $(TARGET_DIR)/var/lib/data/ace/ rm -rf $(TARGET_DIR)/etc/resolv.conf endef $(eval $(cmake-package))