openwrtv3/package/firmware/layerscape/ppa/Makefile
Yangbo Lu 5b8639f02e layerscape: add ppa firmware package
This patch is to add PPA (The Primary Protected Application)
package and also enable it for all layerscape devices.
LSDK github provides ppa source code git tree, but it
only could be compiled with 64-bit toolchain. For 32-bit
devices, there was no method to use it.
https://github.com/qoriq-open-source/ppa-generic

This patch is to directly use a private ppa binary tree for
both 32-bit and 64-bit devices.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:49 +01:00

105 lines
2.3 KiB
Makefile

#
# Copyright 2017 NXP
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/image.mk
PKG_NAME:=ppa
PKG_VERSION:=2017.09
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/yangbolu1991/ppa-binary.git
PKG_SOURCE_VERSION:=76a80ca988affbee67bb17096aefb82ba6d91be7
PKG_MIRROR_HASH:=76be14a8be9e01036a0e103c8e86d40a6ce4c1a7504930d0d9da54a570744be3
PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
PKG_FLAGS:=nonshared
include $(INCLUDE_DIR)/package.mk
define ppa/Default
TITLE:=
CONFIG:=
endef
define ppa/ls1043ardb
TITLE=PPA firmware $(PKG_NAME)-$(PKG_VERSION) for NXP ls1043ardb 64b/32b Dev Board
CONFIG=ppa-ls1043a.itb
endef
define ppa/ls1046ardb
TITLE=PPA firmware $(PKG_NAME)-$(PKG_VERSION) for NXP ls1046ardb 64b/32b Dev Board
CONFIG=ppa-ls1046a.itb
endef
define ppa/ls1012ardb
TITLE=PPA firmware $(PKG_NAME)-$(PKG_VERSION) for NXP ls1012ardb 64b/32b Dev Board
CONFIG=ppa-ls1012a.itb
endef
define ppa/ls1088ardb
TITLE=PPA firmware $(PKG_NAME)-$(PKG_VERSION) for NXP ls1088ardb 64b/32b Dev Board
CONFIG=ppa-ls1088a.itb
endef
define ppa/ls2088ardb
TITLE=PPA firmware $(PKG_NAME)-$(PKG_VERSION) for NXP ls2088ardb 64b/32b Dev Board
CONFIG=ppa-ls2088a.itb
endef
PPAS := \
ls1043ardb \
ls1046ardb \
ls1012ardb \
ls1088ardb \
ls2088ardb
define Package/ppa/template
define Package/layerscape-ppa-$(1)
SECTION:=firmware
CATEGORY:=Firmware
DEPENDS:= @TARGET_layerscape
TITLE:=$(2)
VARIANT:=$(1)
endef
endef
define BuildPPAPackage
$(eval $(ppa/Default))
$(eval $(ppa/$(1)))
$(call Package/ppa/template,$(1),$(TITLE))
endef
ifdef BUILD_VARIANT
$(eval $(call ppa/$(BUILD_VARIANT)))
PPA_CONFIG:=$(if $(CONFIG),$(CONFIG),$(BUILD_VARIANT))
endif
define Build/Compile
endef
define Package/ppa/install/default
$(INSTALL_DIR) $(STAGING_DIR_IMAGE)
$(CP) $(PKG_BUILD_DIR)/$(PPA_CONFIG) $(STAGING_DIR_IMAGE)/$(1)-ppa.itb
endef
define Package/ppa/install/template
define Package/layerscape-ppa-$(1)/install
$(call Package/ppa/install/default,$(2))
endef
endef
$(foreach r,$(PPAS), \
$(eval $(call Package/ppa/install/template,$(r),$(r))) \
)
$(foreach r,$(PPAS), \
$(eval $(call BuildPPAPackage,$(r))) \
$(eval $(call BuildPackage,layerscape-ppa-$(r))) \
)