1################################################################################ 2# 3# benejson 4# 5################################################################################ 6 7BENEJSON_VERSION = 0.9.7 8BENEJSON_SITE = $(call github,codehero,benejson,$(BENEJSON_VERSION)) 9BENEJSON_LICENSE = MIT 10BENEJSON_LICENSE_FILES = LICENSE 11BENEJSON_INSTALL_STAGING = YES 12BENEJSON_DEPENDENCIES = host-python3 host-scons 13 14# wchar support needs to be manually disabled 15ifeq ($(BR2_USE_WCHAR),) 16define BENEJSON_DISABLE_WCHAR 17 $(SED) 's,^#define BNJ_WCHAR_SUPPORT,#undef BNJ_WCHAR_SUPPORT,' \ 18 $(@D)/benejson/benejson.h 19endef 20BENEJSON_POST_PATCH_HOOKS += BENEJSON_DISABLE_WCHAR 21endif 22 23BENEJSON_SCONS_TARGETS = include 24 25ifeq ($(BR2_STATIC_LIBS)$(BR2_SHARED_STATIC_LIBS),y) 26BENEJSON_SCONS_TARGETS += lib/libbenejson.a 27define BENEJSON_INSTALL_STATIC_LIB 28 $(INSTALL) -D -m 0644 $(@D)/lib/libbenejson.a \ 29 $(1)/usr/lib/libbenejson.a 30endef 31endif # Static enabled 32 33ifeq ($(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS),y) 34BENEJSON_SCONS_TARGETS += lib/libbenejson.so 35define BENEJSON_INSTALL_SHARED_LIB 36 $(INSTALL) -D -m 0644 $(@D)/lib/libbenejson.so \ 37 $(1)/usr/lib/libbenejson.so 38endef 39endif # Shared enabled 40 41define BENEJSON_BUILD_CMDS 42 (cd $(@D); \ 43 $(TARGET_CONFIGURE_OPTS) CROSS=$(TARGET_CROSS) \ 44 $(HOST_DIR)/bin/python3 $(SCONS) $(BENEJSON_SCONS_TARGETS)) 45endef 46 47define BENEJSON_INSTALL_STAGING_CMDS 48 $(INSTALL) -D -m 0644 $(@D)/include/benejson/benejson.h \ 49 $(STAGING_DIR)/usr/include/benejson/benejson.h; \ 50 $(INSTALL) -D -m 0644 $(@D)/include/benejson/pull.hh \ 51 $(STAGING_DIR)/usr/include/benejson/pull.hh 52 $(call BENEJSON_INSTALL_STATIC_LIB,$(STAGING_DIR)) 53 $(call BENEJSON_INSTALL_SHARED_LIB,$(STAGING_DIR)) 54endef 55 56define BENEJSON_INSTALL_TARGET_CMDS 57 $(call BENEJSON_INSTALL_SHARED_LIB,$(TARGET_DIR)) 58endef 59 60$(eval $(generic-package)) 61