xref: /OK3568_Linux_fs/buildroot/package/rockchip/rknn_demo/rknn_demo.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun################################################################################
2*4882a593Smuzhiyun#
3*4882a593Smuzhiyun# rknn demo
4*4882a593Smuzhiyun#
5*4882a593Smuzhiyun################################################################################
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunRKNN_DEMO_VERSION = 1.0.0
8*4882a593SmuzhiyunRKNN_DEMO_SITE = $(TOPDIR)/../external/rknn_demo
9*4882a593SmuzhiyunRKNN_DEMO_SITE_METHOD = local
10*4882a593SmuzhiyunRKNN_DEMO_DEPENDENCIES = jpeg libpng libv4l rockchip-rga minigui camera_engine_rkisp libdrm rockchip-mpp uvc_app
11*4882a593Smuzhiyun
12*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_RK1808),y)
13*4882a593Smuzhiyun	RKNN_DEMO_CONF_OPTS += -DNEED_RKNNAPI=0
14*4882a593Smuzhiyun	RKNN_DEMO_DEPENDENCIES += rknpu
15*4882a593Smuzhiyunendif
16*4882a593Smuzhiyun
17*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_RK3399PRO),y)
18*4882a593Smuzhiyun	RKNN_DEMO_CONF_OPTS += -DNEED_RKNNAPI=1
19*4882a593Smuzhiyundefine RKNN_DEMO_BUILD_CMDS
20*4882a593Smuzhiyun		$(INSTALL) -D -m 0644 $(@D)/rknn/rknn_api/librknn_api.so $(TARGET_DIR)/usr/lib
21*4882a593Smuzhiyun		$(INSTALL) -D -m 0644 $(@D)/rknn/rknn_api/librknn_api.so $(STAGING_DIR)/usr/lib
22*4882a593Smuzhiyun		$(TARGET_MAKE_ENV) $($(PKG)_MAKE_ENV) $($(PKG)_MAKE) $($(PKG)_MAKE_OPTS) -C $($(PKG)_BUILDDIR)
23*4882a593Smuzhiyunendef
24*4882a593Smuzhiyunendif
25*4882a593Smuzhiyun
26*4882a593SmuzhiyunRKNN_DEMO_USER_CONF_OPTS =
27*4882a593Smuzhiyun
28*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_RKNN_DEMO_ENABLE_JOINT),y)
29*4882a593Smuzhiyun	RKNN_DEMO_USER_CONF_OPTS += -DENABLE_JOINT=1
30*4882a593Smuzhiyunendif
31*4882a593Smuzhiyun
32*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_RKNN_DEMO_ENABLE_FRG),y)
33*4882a593Smuzhiyun	RKNN_DEMO_USER_CONF_OPTS += -DENABLE_FRG=1
34*4882a593Smuzhiyunendif
35*4882a593Smuzhiyun
36*4882a593Smuzhiyunifeq ($(RKNN_DEMO_USER_CONF_OPTS),)
37*4882a593Smuzhiyun	BR2_PACKAGE_RKNN_DEMO_ENABLE_SSD=y
38*4882a593Smuzhiyun	RKNN_DEMO_CONF_OPTS += -DENABLE_SSD=1
39*4882a593Smuzhiyunelse
40*4882a593Smuzhiyun	RKNN_DEMO_CONF_OPTS += $(RKNN_DEMO_USER_CONF_OPTS)
41*4882a593Smuzhiyunendif
42*4882a593Smuzhiyun
43*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_RK1808),y)
44*4882a593SmuzhiyunRKNN_DEMO_MINIGUI_CFG=minigui/MiniGUI-1280x720.cfg
45*4882a593Smuzhiyunendif
46*4882a593Smuzhiyun
47*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_RK3399PRO),y)
48*4882a593SmuzhiyunRKNN_DEMO_MINIGUI_CFG=minigui/MiniGUI-2048x1536.cfg
49*4882a593Smuzhiyunendif
50*4882a593Smuzhiyun
51*4882a593SmuzhiyunRKNN_DEMO_CONF_OPTS += -DMINIGUI_CFG=$(RKNN_DEMO_MINIGUI_CFG)
52*4882a593Smuzhiyun
53*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_RKNN_DEMO_ENABLE_JOINT),y)
54*4882a593SmuzhiyunRKNN_MODEL_RESOURCE_FILES = rknn/joint/cpm.rknn
55*4882a593Smuzhiyunendif
56*4882a593Smuzhiyun
57*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_RKNN_DEMO_ENABLE_FRG),y)
58*4882a593SmuzhiyunRKNN_MODEL_RESOURCE_FILES = rknn/frg/frgsdk_rk1808/model/align.rknn \
59*4882a593Smuzhiyun							rknn/frg/frgsdk_rk1808/model/detect.rknn \
60*4882a593Smuzhiyun							rknn/frg/frgsdk_rk1808/model/recognize.rknn
61*4882a593Smuzhiyunendif
62*4882a593Smuzhiyun
63*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_RKNN_DEMO_ENABLE_SSD),y)
64*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_RK1808),y)
65*4882a593SmuzhiyunRKNN_MODEL_RESOURCE_FILES = rknn/ssd/ssd_1808/ssd_inception_v2.rknn \
66*4882a593Smuzhiyun							rknn/ssd/ssd_1808/coco_labels_list.txt \
67*4882a593Smuzhiyun							rknn/ssd/ssd_1808/box_priors.txt
68*4882a593Smuzhiyunelse
69*4882a593SmuzhiyunRKNN_MODEL_RESOURCE_FILES = rknn/ssd/ssd_3399pro/mobilenet_ssd.rknn \
70*4882a593Smuzhiyun							rknn/ssd/ssd_3399pro/coco_labels_list.txt \
71*4882a593Smuzhiyun							rknn/ssd/ssd_3399pro/box_priors.txt
72*4882a593Smuzhiyunendif
73*4882a593Smuzhiyunendif
74*4882a593Smuzhiyun
75*4882a593SmuzhiyunRKNN_DEMO_CONF_OPTS += -DMODEL_RESOURCE_FILES="$(RKNN_MODEL_RESOURCE_FILES)"
76*4882a593Smuzhiyun
77*4882a593Smuzhiyun$(eval $(cmake-package))
78