include $(TOPDIR)/rules.mk
#Based on adb package from AUR https://aur.archlinux.org/packages/adb/ , reused Makefile

PKG_NAME:=adbd
PKG_VERSION:=android.5.0.2_r1
PKG_RELEASE:=1

USE_SOURCE_DIR:=$(CURDIR)/src
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)

include $(INCLUDE_DIR)/package.mk

ifeq ($(CONFIG_BIG_ENDIAN),y)
TARGET_CFLAGS+= -DHAVE_BIG_ENDIAN=1
endif
TARGET_CFLAGS+= -D_GNU_SOURCE

ifeq ($(CONFIG_MBTK_ADB_SEC_SUPPORT),y)
TARGET_CFLAGS+= -DMBTK_ADB_SEC_SUPPORT
endif

ifeq ($(CONFIG_TARGET_mmp_asr1901_KSTR901),y)
TARGET_CFLAGS+= -DANDROID_SMP
endif

ifeq ($(CONFIG_TARGET_mmp_asr1901_KSTR906),y)
TARGET_CFLAGS+= -DANDROID_SMP
endif

define Package/adbd
  SECTION:=utils
  CATEGORY:=Utilities
  TITLE:=Android Debug Bridge CLI tool
  URL:=http://tools.android.com/
  DEPENDS:=+zlib +libpthread +liblog +libmbedtls
endef

define Package/bridge/description
 Android Debug Bridge (adb) is a versatile command line tool that lets you communicate with an emulator instance or connected Android-powered device.
endef

define Build/Clean
if [ -d $(PKG_BUILD_DIR) ]; then \
	cd $(PKG_BUILD_DIR); \
	rm -rf .built .configured_ .prepared .quilt_checked .source_dir ipkg-*; \
	rm -f src/adbd/adbd; \
	$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR)/adb \
		CROSS_COMPILE="$(TARGET_CROSS)" \
		clean; \
fi
endef

define Build/Compile
	rm -rf $(PKG_BUILD_DIR)/adb/adbd
	$(MAKE) -C $(PKG_BUILD_DIR)/adb/ \
		$(TARGET_CONFIGURE_OPTS) \
		TARGET=Linux \
		CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS)" \
		LDFLAGS="$(TARGET_LDFLAGS)" \
		all
endef

define Package/adbd/install
	$(INSTALL_DIR) $(1)/usr/bin
	$(INSTALL_DIR) $(1)/etc/init.d/
	$(INSTALL_BIN) $(PKG_BUILD_DIR)/adb/adbd $(1)/usr/bin/
	$(INSTALL_BIN) ./adbd.init $(1)/etc/init.d/adbd
endef

$(eval $(call BuildPackage,adbd))
