blob: 726ae07eb792637cca868264d1d8a1d328c55491 [file] [log] [blame]
ifeq ($(ROOTDIR),)
$(error $$ROOTDIR IS NOT DEFINED -- don\'t forget to source setup.sh)
endif
include $(ROOTDIR)/build/preamble.mk
WAYLAND_PROTO_DIR := $(PRODUCT_OUT)/obj/WAYLAND_PROTO
WESTON_DIR := $(PRODUCT_OUT)/obj/WESTON
LIBDRM_DIR := $(PRODUCT_OUT)/obj/LIBDRM
LIBDRM_DEBS := libdrm2_2.4.84+imx-0_arm64.deb libdrm-vivante_2.4.84+imx-0_arm64.deb
LIBDRM_DEBS_DEV := libdrm-dev_2.4.84+imx-0_arm64.deb
LIBDRM_TARGETS := $(addprefix $(PRODUCT_OUT)/, $(LIBDRM_DEBS)) $(addprefix $(PRODUCT_OUT)/dev/, $(LIBDRM_DEBS_DEV))
wayland-protocols: $(PRODUCT_OUT)/wayland-protocols-imx_1.13-0_all.deb
weston: $(PRODUCT_OUT)/weston-imx_3.0.0-0_arm64.deb
libdrm-imx: $(LIBDRM_TARGETS)
gpu-packages: weston wayland-protocols imx-gpu-viv libdrm-imx
$(PRODUCT_OUT)/weston-imx_3.0.0-0_arm64.deb: $(ROOTDIR)/cache/arm64-builder.tar $(PRODUCT_OUT)/wayland-protocols-imx_1.13-0_all.deb
mkdir -p $(WESTON_DIR)/weston-imx-3.0.0
cp -r $(ROOTDIR)/weston-imx/* $(WESTON_DIR)/weston-imx-3.0.0
mkdir -p $(WESTON_DIR)/weston-imx-3.0.0/lib/systemd/system
cp $(ROOTDIR)/build/weston.service $(WESTON_DIR)/weston-imx-3.0.0/lib/systemd/system
tar -C $(WESTON_DIR) -cJf $(WESTON_DIR)/weston-imx_3.0.0.orig.tar.xz weston-imx-3.0.0
cp -r $(ROOTDIR)/build/weston-imx-debian $(WESTON_DIR)/weston-imx-3.0.0/debian
docker load -i $(ROOTDIR)/cache/arm64-builder.tar
docker run --rm --privileged --tty \
-v $(PRODUCT_OUT):/out \
-v $(WESTON_DIR):/weston arm64-builder \
/bin/bash -c 'dpkg -i /out/wayland-protocols-imx_1.13-0_all.deb; \
cd /weston/weston-imx-3.0.0; dpkg-buildpackage -uc -us -tc'
mv $(WESTON_DIR)/weston-imx_3.0.0-0_arm64.deb $(PRODUCT_OUT)
$(PRODUCT_OUT)/wayland-protocols-imx_1.13-0_all.deb:
mkdir -p $(WAYLAND_PROTO_DIR)/wayland-protocols-imx-1.13
cp -r $(ROOTDIR)/wayland-protocols-imx/* $(WAYLAND_PROTO_DIR)/wayland-protocols-imx-1.13
tar -C $(WAYLAND_PROTO_DIR) -cJf $(WAYLAND_PROTO_DIR)/wayland-protocols-imx_1.13.orig.tar.xz wayland-protocols-imx-1.13
cp -r $(ROOTDIR)/build/wayland-protocols-imx-debian $(WAYLAND_PROTO_DIR)/wayland-protocols-imx-1.13/debian
cd $(WAYLAND_PROTO_DIR)/wayland-protocols-imx-1.13; dpkg-buildpackage -uc -us -tc
mv $(WAYLAND_PROTO_DIR)/wayland-protocols-imx_1.13-0_all.deb $(PRODUCT_OUT)
$(LIBDRM_TARGETS): $(ROOTDIR)/cache/arm64-builder.tar
mkdir -p $(PRODUCT_OUT)/dev
mkdir -p $(LIBDRM_DIR)/libdrm-2.4.84+imx
rsync -r $(ROOTDIR)/libdrm-imx/ $(LIBDRM_DIR)/libdrm-2.4.84+imx
tar -C $(LIBDRM_DIR) -cJf $(LIBDRM_DIR)/libdrm_2.4.84+imx.orig.tar.xz libdrm-2.4.84+imx
rsync -r $(ROOTDIR)/packages/libdrm-imx/debian/ $(LIBDRM_DIR)/libdrm-2.4.84+imx/debian/
docker load -i $(ROOTDIR)/cache/arm64-builder.tar
docker run --rm --privileged --tty \
-v $(PRODUCT_OUT):/out \
-v $(LIBDRM_DIR):/libdrm arm64-builder \
/bin/bash -c 'cd /libdrm/libdrm-2.4.84+imx; \
dpkg-buildpackage -uc -us -tc;'
cp $(LIBDRM_DIR)/libdrm2_2.4.84+imx-0_arm64.deb $(PRODUCT_OUT)
cp $(LIBDRM_DIR)/libdrm-vivante_2.4.84+imx-0_arm64.deb $(PRODUCT_OUT)
cp $(LIBDRM_DIR)/libdrm-dev_2.4.84+imx-0_arm64.deb $(PRODUCT_OUT)/dev
.PHONY:: wayland-protocols-imx weston-imx gpu-packages