1################################################################################ 2# 3# Rockchip Camera Engine RKisp For Linux 4# 5################################################################################ 6 7CAMERA_ENGINE_RKISP_VERSION = 1.0 8CAMERA_ENGINE_RKISP_SITE = $(TOPDIR)/../external/camera_engine_rkisp 9CAMERA_ENGINE_RKISP_SITE_METHOD = local 10 11CAMERA_ENGINE_RKISP_LICENSE = Apache V2.0 12CAMERA_ENGINE_RKISP_LICENSE_FILES = NOTICE 13 14CAMERA_ENGINE_RKISP_INSTALL_STAGING = YES 15 16CAMERA_ENGINE_RKISP_MAKE_OPTS = \ 17 TARGET_GCC="$(TARGET_CC)" \ 18 TARGET_GPP="$(TARGET_CXX)" \ 19 TARGET_AR="$(TARGET_AR)" \ 20 TARGET_LD="$(TARGET_LD)" \ 21 22ifeq ($(BR2_PACKAGE_RK3326),y) 23CAMERA_ENGINE_RKISP_CONF_OPTS = \ 24 IS_RKISP_v12=true 25endif 26 27ifeq ($(BR2_PACKAGE_PX30),y) 28CAMERA_ENGINE_RKISP_CONF_OPTS = \ 29 IS_RKISP_v12=true 30endif 31 32ifneq ($(call qstrip,$(BR2_PACKAGE_CAMERA_ENGINE_RKISP_IQFILE)),) 33CAMERA_ENGINE_RKISP_IQFILE = $(call qstrip,$(BR2_PACKAGE_CAMERA_ENGINE_RKISP_IQFILE)) 34else 35CAMERA_ENGINE_RKISP_IQFILE = *.xml 36endif 37 38ifeq ($(call qstrip,$(BR2_ARCH)),arm) 39CAMERA_ENGINE_RKISP_LIB = lib32 40CAMERA_ENGINE_RKISP_GLIB_H = glib-2.0-32 41CAMERA_ENGINE_RKISP_MAKE_OPTS += ARCH=arm 42else 43CAMERA_ENGINE_RKISP_LIB = lib64 44CAMERA_ENGINE_RKISP_GLIB_H = glib-2.0-64 45CAMERA_ENGINE_RKISP_MAKE_OPTS += ARCH=aarch64 46endif 47 48ifeq ($(BR2_PACKAGE_TINYXML2),y) 49CAMERA_ENGINE_RKISP_CONF_OPTS = \ 50 IS_NEED_COMPILE_TINYXML2=false 51CAMERA_ENGINE_RKISP_DEPENDENCIES = tinyxml2 52endif 53 54ifeq ($(BR2_PACKAGE_CAMERA_ENGINE_RKISP_3A_SERVICE), y) 55CAMERA_ENGINE_RKISP_INSTALL_3A_SCRIPT=y 56endif 57 58ifeq ($(BR2_PACKAGE_CAMERA_ENGINE_RKISP_3A_SPEEDUP_DIR_ETC), y) 59CAMERA_ENGINE_RKISP_IQ_DB_DIR = "/etc/iqfiles-db" 60CAMERA_ENGINE_RKISP_3A_SCRIPT_FILENAME = S04rkisp_3A 61else ifeq ($(BR2_PACKAGE_CAMERA_ENGINE_RKISP_3A_SPEEDUP_DIR_USERDATA), y) 62CAMERA_ENGINE_RKISP_IQ_DB_DIR = "/userdata/iqfiles-db" 63CAMERA_ENGINE_RKISP_3A_SCRIPT_FILENAME = S40rkisp_3A 64else 65CAMERA_ENGINE_RKISP_IQ_DB_DIR = "" 66CAMERA_ENGINE_RKISP_3A_SCRIPT_FILENAME = S40rkisp_3A 67endif 68 69export BUILD_OUPUT_GSTREAMER_LIBS:=$(@D)/ext/rkisp/usr/$(CAMERA_ENGINE_RKISP_LIB)/gstreamer-1.0 70export BUILD_OUPUT_EXTERNAL_LIBS:=$(@D)/ext/rkisp/usr/$(CAMERA_ENGINE_RKISP_LIB) 71 72define CAMERA_ENGINE_RKISP_CONFIGURE_CMDS 73 rm -rf $(@D)/ext/rkisp/usr/lib 74 rm -rf $(@D)/ext/rkisp/usr/include/glib-2.0 75 cp -rf $(@D)/ext/rkisp/usr/include/$(CAMERA_ENGINE_RKISP_GLIB_H) $(@D)/ext/rkisp/usr/include/glib-2.0 76 cp -rf $(@D)/ext/rkisp/usr/$(CAMERA_ENGINE_RKISP_LIB) $(@D)/ext/rkisp/usr/lib 77endef 78 79define CAMERA_ENGINE_RKISP_BUILD_CMDS 80 $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ 81 $(CAMERA_ENGINE_RKISP_MAKE_OPTS) \ 82 $(CAMERA_ENGINE_RKISP_CONF_OPTS) 83endef 84 85RKgstDir = $(TARGET_DIR)/usr/lib/gstreamer-1.0 86RKafDir = $(TARGET_DIR)/usr/lib/rkisp/af 87RKaeDir = $(TARGET_DIR)/usr/lib/rkisp/ae 88RKawbDir = $(TARGET_DIR)/usr/lib/rkisp/awb 89 90define CAMERA_ENGINE_RKISP_INSTALL_STAGING_CMDS 91 $(INSTALL) -D -m 644 $(@D)/build/lib/librkisp.so $(STAGING_DIR)/usr/lib/ 92 $(INSTALL) -D -m 644 $(@D)/build/lib/librkisp_api.so $(STAGING_DIR)/usr/lib/ 93 mkdir -p $(STAGING_DIR)/usr/include/camera-engine-rkisp/interface 94 $(foreach header,$(wildcard $($(PKG)_BUILDDIR)/interface/*.h),$(INSTALL) -D -m 644 $(header) $(STAGING_DIR)/usr/include/camera-engine-rkisp/interface;) 95 $(INSTALL) -D -m 644 $(@D)/apps/rkisp_api/rkisp_api.h $(STAGING_DIR)/usr/include/camera-engine-rkisp/interface 96endef 97 98define CAMERA_ENGINE_RKISP_INSTALL_TARGET_CMDS 99 mkdir -p $(RKgstDir) 100 mkdir -p $(RKafDir) 101 mkdir -p $(RKaeDir) 102 mkdir -p $(RKawbDir) 103 mkdir -p $(TARGET_DIR)/etc/iqfiles 104 105 if [ x${CAMERA_ENGINE_RKISP_INSTALL_3A_SCRIPT} != x ]; then \ 106 $(INSTALL) -D -m 755 $(TOPDIR)/package/rockchip/camera-engine-rkisp/SXXrkisp_3A \ 107 $(TARGET_DIR)/etc/init.d/$(CAMERA_ENGINE_RKISP_3A_SCRIPT_FILENAME); \ 108 mkdir -p $(TARGET_DIR)/${CAMERA_ENGINE_RKISP_IQ_DB_DIR}; \ 109 sed -i "s:CAMERA_ENGINE_RKISP_XML_DB=.*:CAMERA_ENGINE_RKISP_XML_DB=${CAMERA_ENGINE_RKISP_IQ_DB_DIR}:g" \ 110 $(TARGET_DIR)/etc/init.d/$(CAMERA_ENGINE_RKISP_3A_SCRIPT_FILENAME); \ 111 fi 112 113 $(INSTALL) -D -m 755 $(@D)/build/bin/rkisp_demo $(TARGET_DIR)/usr/bin/ 114 $(INSTALL) -D -m 755 $(@D)/build/bin/rkisp_3A_server $(TARGET_DIR)/usr/bin/ 115 $(INSTALL) -D -m 644 $(@D)/iqfiles/$(CAMERA_ENGINE_RKISP_IQFILE) $(TARGET_DIR)/etc/iqfiles/ 116 $(INSTALL) -D -m 644 $(@D)/build/lib/librkisp.so $(TARGET_DIR)/usr/lib/ 117 $(INSTALL) -D -m 644 $(@D)/build/lib/librkisp_api.so $(TARGET_DIR)/usr/lib/ 118 $(INSTALL) -D -m 644 $(@D)/plugins/3a/rkiq/af/$(CAMERA_ENGINE_RKISP_LIB)/librkisp_af.so $(RKafDir)/ 119 $(INSTALL) -D -m 644 $(@D)/plugins/3a/rkiq/aec/$(CAMERA_ENGINE_RKISP_LIB)/librkisp_aec.so $(RKaeDir)/ 120 $(INSTALL) -D -m 644 $(@D)/plugins/3a/rkiq/awb/$(CAMERA_ENGINE_RKISP_LIB)/librkisp_awb.so $(RKawbDir)/ 121endef 122 123$(eval $(autotools-package)) 124