#Copyright 2018 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

$(eval $(call make-pbuilder-bsp-package-target,linux-mtk,linux,u-boot))
$(eval $(call make-pbuilder-bsp-package-target,lk-bootloader,bootloader/mtk-lk,,,binary))
$(eval $(call make-pbuilder-bsp-package-target,excelsior-wlan,connectivity/mt7668-wifi-mod,linux-mtk))
$(eval $(call make-pbuilder-bsp-package-target,excelsior-bluetooth,connectivity/mt7668-bluetooth-mod,linux-mtk))
$(eval $(call make-pbuilder-bsp-package-target,excelsior-connectivity-fw,connectivity/mt7668-fw,,,binary))
$(eval $(call make-pbuilder-bsp-package-target,mtk-board-audio,packages/mtk-board-audio))
$(eval $(call make-pbuilder-bsp-package-target,meta-excelsior,packages/meta-excelsior))
$(eval $(call make-pbuilder-bsp-package-target,excelsior-img-fw,graphics/img-fw,,,binary))
$(eval $(call make-pbuilder-bsp-package-target,weston-mtk,graphics/wayland/weston))
$(eval $(call make-pbuilder-bsp-package-target,excelsior-vpu-prebuilts,multimedia/vpu,mtk-gst-plugins-good mdpd,,binary))
$(eval $(call make-pbuilder-bsp-package-target,libmdp-prot,multimedia/libmdp_prot,,,binary))
$(eval $(call make-pbuilder-bsp-package-target,mdpd,multimedia/mdpd, libmdp-prot,,binary))
$(eval $(call make-pbuilder-bsp-package-target,mtk-gstreamer,multimedia/mtk-gstreamer))
$(eval $(call make-pbuilder-bsp-package-target,mtk-gst-plugins-base,multimedia/mtk-gst-plugins-base,mtk-gstreamer,,,$(USERSPACE_ARCH)))
$(eval $(call make-pbuilder-bsp-package-target,mtk-gst-plugins-good,multimedia/mtk-gst-plugins-good,mtk-gst-plugins-base))
$(eval $(call make-pbuilder-bsp-package-target,mtk-gst-plugins-bad,multimedia/mtk-gst-plugins-bad,mtk-gst-plugins-base))
$(eval $(call make-pbuilder-bsp-package-target,u-boot,bootloader/u-boot))
$(eval $(call make-pbuilder-bsp-package-target,optee-os,bootloader/optee-os))
$(eval $(call make-pbuilder-bsp-package-target,tf-a,bootloader/tf-a))
$(eval $(call make-pbuilder-bsp-package-target,excelsior-bootloader,packages/excelsior-bootloader,u-boot optee-os tf-a))
$(eval $(call make-pbuilder-bsp-package-target,a71ch-crypto-support,a71ch-crypto-support,,,,$(USERSPACE_ARCH)))
$(eval $(call make-pbuilder-bsp-package-target,excelsior-tools,packages/excelsior-tools))
