IMAGE = $(IMAGEDIR)/$(USER)_uImage

CUR_DIR = $(shell pwd)
SPF_DIR = $(ROOTDIR)/$(SPF_FOLDER_NAME)
SPF_QSDK_DIR = $(SPF_DIR)/qsdk
INCLUDE_DIR = $(SPF_QSDK_DIR)/include
TARGET_DIR = $(ROMFSDIR)
#TARGET_DIR = $(ROOTDIR)/root-ipq
SPF_QSDK_ROOT_FS_DIR=$(SPF_QSDK_DIR)/qca/root-ipq
CONFIG_PKG_BUILD_JOBS=$(BUILD_SDK_NCPU)

CP = cp -fpR
FIND = find
XARGS = xargs -r
INSTALL_DIR = install -d -m0755

BOARD=ipq
SUBTARGET=ipq807x

## .config is from qca-networking-2019-spf-10-0_qca_oem.git/qsdk/.config
-include $(SPF_QSDK_DIR)/.config

## ca-networking-2019-spf-10-0_qca_oem.git/qsdk/include/target.mk
GENERIC_PLATFORM_DIR := $(SPF_QSDK_DIR)/target/linux/generic

## qca-networking-2019-spf-10-0_qca_oem.git/qsdk/include/kernel.mk
KERNEL_CROSS = $(CROSS_COMPILE)
KERNEL_BUILD_DIR = $(SPF_QSDK_DIR)/build_dir/target-arm_cortex-a7_musl-1.1.16_eabi/linux-ipq_ipq807x
ifeq ("$(CONFIG_DEFAULTS_DRAYTEK_AP1060C)", "y")
MODEL = ap1060c
LINUX_VERSION = 4.4.6
else
MODEL = ipq8074
LINUX_VERSION = 4.4.60

endif
LINUX_DIR = $(ROOTDIR)/linux-$(LINUX_VERSION)
LINUX_KARCH = arm
KERNELNAME = zImage Image dtbs
LINUX_KERNEL = $(KERNEL_BUILD_DIR)/vmlinux
LINUX_CONF_CMD = $(SPF_QSDK_DIR)/scripts/kconfig.pl  + + $(SPF_QSDK_DIR)/target/linux/generic/config-4.4 $(SPF_QSDK_DIR)/target/linux/ipq/config-4.4 $(SPF_QSDK_DIR)/target/linux/ipq/ipq807x/config-default 
SCRIPT_DIR = $(SPF_QSDK_DIR)/scripts
SH_FUNC = $(SPF_QSDK_DIR)/include/shell.sh
TOPDIR = $(SPF_QSDK_DIR)
TMP_DIR = .
KERNEL_PATCHVER = 4.4
IMAGES_DIR = 
BIN_DIR = $(SPF_QSDK_DIR)/bin/ipq
STAGING_DIR_HOST = $(SPF_QSDK_DIR)/staging_dir/host

## qca-networking-2019-spf-10-0_qca_oem.git/qsdk/include/kernel-defaults.mk
KERNEL_MAKEOPTS := -j $(BUILD_SDK_NCPU) -C $(LINUX_DIR) \
	HOSTCFLAGS="$(HOST_CFLAGS) -Wall -Wmissing-prototypes -Wstrict-prototypes" \
	CROSS_COMPILE="$(KERNEL_CROSS)" \
	ARCH="$(LINUX_KARCH)" \
	KBUILD_HAVE_NLS=no \
	$(if $(findstring c,$(OPENWRT_VERBOSE)),V=1,V='')

INITRAMFS_EXTRA_FILES ?= $(GENERIC_PLATFORM_DIR)/image/initramfs-base-files.txt

ifeq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
  ifeq ($(strip $(CONFIG_EXTERNAL_CPIO)),"")
    define Kernel/SetInitramfs/PreConfigure
	grep -v -e INITRAMFS -e CONFIG_RD_ -e CONFIG_BLK_DEV_INITRD $(LINUX_DIR)/.config.old > $(LINUX_DIR)/.config
	echo 'CONFIG_BLK_DEV_INITRD=y' >> $(LINUX_DIR)/.config
	echo 'CONFIG_INITRAMFS_SOURCE="$(strip $(TARGET_DIR) $(INITRAMFS_EXTRA_FILES))"' >> $(LINUX_DIR)/.config
    endef
  else
    define Kernel/SetInitramfs/PreConfigure
	grep -v INITRAMFS $(LINUX_DIR)/.config.old > $(LINUX_DIR)/.config
	echo 'CONFIG_INITRAMFS_SOURCE="$(call qstrip,$(CONFIG_EXTERNAL_CPIO))"' >> $(LINUX_DIR)/.config
    endef
  endif

  define Kernel/SetInitramfs
	mv $(LINUX_DIR)/.config $(LINUX_DIR)/.config.old
	$(call Kernel/SetInitramfs/PreConfigure)
	echo 'CONFIG_INITRAMFS_ROOT_UID=$(shell id -u)' >> $(LINUX_DIR)/.config
	echo 'CONFIG_INITRAMFS_ROOT_GID=$(shell id -g)' >> $(LINUX_DIR)/.config
	echo "$(if $(CONFIG_TARGET_INITRAMFS_COMPRESSION_NONE),CONFIG_INITRAMFS_COMPRESSION_NONE=y,# CONFIG_INITRAMFS_COMPRESSION_NONE is not set)" >> $(LINUX_DIR)/.config
	echo -e "$(if $(CONFIG_TARGET_INITRAMFS_COMPRESSION_GZIP),CONFIG_INITRAMFS_COMPRESSION_GZIP=y\nCONFIG_RD_GZIP=y,# CONFIG_INITRAMFS_COMPRESSION_GZIP is not set\n# CONFIG_RD_GZIP is not set)" >> $(LINUX_DIR)/.config
	echo -e "$(if $(CONFIG_TARGET_INITRAMFS_COMPRESSION_BZIP2),CONFIG_INITRAMFS_COMPRESSION_BZIP2=y\nCONFIG_RD_BZIP2=y,# CONFIG_INITRAMFS_COMPRESSION_BZIP2 is not set\n# CONFIG_RD_BZIP2 is not set)" >> $(LINUX_DIR)/.config
	echo -e "$(if $(CONFIG_TARGET_INITRAMFS_COMPRESSION_LZMA),CONFIG_INITRAMFS_COMPRESSION_LZMA=y\nCONFIG_RD_LZMA=y,# CONFIG_INITRAMFS_COMPRESSION_LZMA is not set\n# CONFIG_RD_LZMA is not set)" >> $(LINUX_DIR)/.config
	echo -e "$(if $(CONFIG_TARGET_INITRAMFS_COMPRESSION_LZO),CONFIG_INITRAMFS_COMPRESSION_LZO=y\nCONFIG_RD_LZO=y,# CONFIG_INITRAMFS_COMPRESSION_LZO is not set\n# CONFIG_RD_LZO is not set)" >> $(LINUX_DIR)/.config
	echo -e "$(if $(CONFIG_TARGET_INITRAMFS_COMPRESSION_XZ),CONFIG_INITRAMFS_COMPRESSION_XZ=y\nCONFIG_RD_XZ=y,# CONFIG_INITRAMFS_COMPRESSION_XZ is not set\n# CONFIG_RD_XZ is not set)" >> $(LINUX_DIR)/.config
	echo -e "$(if $(CONFIG_TARGET_INITRAMFS_COMPRESSION_LZ4),CONFIG_INITRAMFS_COMPRESSION_LZ4=y\nCONFIG_RD_LZ4=y,# CONFIG_INITRAMFS_COMPRESSION_LZ4 is not set\n# CONFIG_RD_LZ4 is not set)" >> $(LINUX_DIR)/.config
  endef
else
endif

define Kernel/SetNoInitramfs
	mv $(LINUX_DIR)/.config $(LINUX_DIR)/.config.old
	grep -v INITRAMFS $(LINUX_DIR)/.config.old > $(LINUX_DIR)/.config
	echo 'CONFIG_INITRAMFS_SOURCE=""' >> $(LINUX_DIR)/.config
endef

define Kernel/Configure/Default
	$(LINUX_CONF_CMD) > $(LINUX_DIR)/.config.target
# copy CONFIG_KERNEL_* settings over to .config.target
	awk '/^(#[[:space:]]+)?CONFIG_KERNEL/{sub("CONFIG_KERNEL_","CONFIG_");print}' $(TOPDIR)/.config >> $(LINUX_DIR)/.config.target
	echo "# CONFIG_KALLSYMS_EXTRA_PASS is not set" >> $(LINUX_DIR)/.config.target
	echo "# CONFIG_KALLSYMS_ALL is not set" >> $(LINUX_DIR)/.config.target
	echo "# CONFIG_KALLSYMS_UNCOMPRESSED is not set" >> $(LINUX_DIR)/.config.target
	#$(SCRIPT_DIR)/metadata.pl kconfig $(TMP_DIR)/.packageinfo $(TOPDIR)/.config $(KERNEL_PATCHVER) > $(LINUX_DIR)/.config.override
	$(SCRIPT_DIR)/metadata.pl kconfig $(TOPDIR)/.packageinfo $(TOPDIR)/.config $(KERNEL_PATCHVER) > $(LINUX_DIR)/.config.override
	$(SCRIPT_DIR)/kconfig.pl 'm+' '+' $(LINUX_DIR)/.config.target /dev/null $(LINUX_DIR)/.config.override > $(LINUX_DIR)/.config
	$(call Kernel/SetNoInitramfs)
	rm -rf $(KERNEL_BUILD_DIR)/modules
	$(_SINGLE) [ -d $(LINUX_DIR)/user_headers ] || $(MAKE) $(KERNEL_MAKEOPTS) INSTALL_HDR_PATH=$(LINUX_DIR)/user_headers headers_install
	$(SH_FUNC) grep '=[ym]' $(LINUX_DIR)/.config | LC_ALL=C sort | md5sum > $(LINUX_DIR)/.vermagic
endef

define Kernel/Configure/Initramfs
	$(call Kernel/SetInitramfs)
endef

OBJCOPY_STRIP = -R .reginfo -R .notes -R .note -R .comment -R .mdebug -R .note.gnu.build-id

define Kernel/CopyImage
	$(KERNEL_CROSS)objcopy -O binary $(OBJCOPY_STRIP) -S $(LINUX_DIR)/vmlinux $(LINUX_KERNEL)$(1)
	$(KERNEL_CROSS)objcopy $(OBJCOPY_STRIP) -S $(LINUX_DIR)/vmlinux $(KERNEL_BUILD_DIR)/vmlinux$(1).elf
	$(CP) $(LINUX_DIR)/vmlinux $(KERNEL_BUILD_DIR)/vmlinux$(1).debug
	$(foreach k, \
		$(if $(KERNEL_IMAGES),$(KERNEL_IMAGES),$(filter-out dtbs,$(KERNELNAME))), \
		$(CP) $(LINUX_DIR)/arch/$(LINUX_KARCH)/boot/$(IMAGES_DIR)/$(k) $(KERNEL_BUILD_DIR)/$(k)$(1); \
	)
endef

define Kernel/remove_unused_modules
	if [ "$(SKIP_MODULE_INSTALL)" = "y" ]; then \
		rm -rf $(ROMFSDIR)/lib/modules/*/xt_*; \
		rm -rf $(ROMFSDIR)/lib/modules/*/xfrm*; \
		rm -rf $(ROMFSDIR)/lib/modules/*/ntfs.ko;\
		rm -rf $(ROMFSDIR)/lib/modules/*/usb-common.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/usbcore.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/ehci-hcd.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/ehci-platform.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/ehci-orion.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/ehci-atmel.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/udc-core.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/phy-msm-qusb.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/phy-msm-ssusb-qmp.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/phy-qcom-dwc3.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/libcomposite.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/usb_f_qdss.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/dwc3-of-simple.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/dbm.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/xhci-hcd.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/xhci-pci.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/xhci-plat-hcd.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/dwc3.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/usb-storage.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/uas.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/scsi_mod.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/sd_mod.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/libahci.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/ahci.ko;\
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_conntrack_amanda.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_conntrack_broadcast.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_conntrack_ftp.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_conntrack_h323.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_conntrack_irc.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_conntrack_pptp.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_conntrack_proto_gre.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_conntrack_proto_sct.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_conntrack_rtcache.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_conntrack_sip.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_conntrack_snmp.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_conntrack_tftp.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_conntrack_proto_sctp.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_conntrack_tftp.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_log_common.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_log_ipv4.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_log_ipv6.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_nat.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_nat_amanda.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_nat_ftp.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_nat_h323.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_nat_ipv4.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_nat_irc.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_nat_masquerade_ipv4.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_nat_pptp.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_nat_proto_gre.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_nat_proto_sctp.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_nat_redirect.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_nat_sip.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_nat_snmp_basic.ko; \
		rm -rf $(ROMFSDIR)/lib/modules/*/nf_nat_tftp.ko; \
	fi
endef

define Kernel/modules_install
	. $(ROOTDIR)/$(LINUXDIR)/.config; if [ "$$CONFIG_MODULES" = "y" -a "$$SKIP_MODULE_INSTALL" = "y" ]; then \
		[ -d $(ROMFSDIR)/lib/modules ] || mkdir -p $(ROMFSDIR)/lib/modules; \
		$(MAKE) $(KERNEL_MAKEOPTS) $(KERNEL_STRIP_MOD_INSTALL) -C $(ROOTDIR)/$(LINUXDIR) INSTALL_MOD_PATH=$(ROMFSDIR) DEPMOD="$(ROOTDIR)/user/busybox/examples/depmod.pl" modules_install; \
		rm -f $(ROMFSDIR)/lib/modules/*/build; \
		rm -f $(ROMFSDIR)/lib/modules/*/source; \
		find $(ROMFSDIR)/lib/modules -type f -name "*o" | xargs -r $(STRIP) -R .comment -R .note -g --strip-unneeded; \
	fi
endef

define Kernel/CompileImage/Default
	rm -f $(TARGET_DIR)/init
	+$(MAKE) $(KERNEL_MAKEOPTS) $(if $(KERNELNAME),$(KERNELNAME),all) modules
	$(call Kernel/modules_install)
	$(call Kernel/remove_unused_modules)
	$(call Kernel/CopyImage)
endef

ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
define Kernel/CompileImage/Initramfs
	$(call Kernel/Configure/Initramfs)
	$(CP) $(GENERIC_PLATFORM_DIR)/base-files/init $(TARGET_DIR)/init
#	rm -rf $(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION)/usr/initramfs_data.cpio*
	rm -rf $(LINUX_DIR)/usr/initramfs_data.cpio*
	+$(MAKE) $(KERNEL_MAKEOPTS) $(if $(KERNELNAME),$(KERNELNAME),all) modules
	$(call Kernel/CopyImage,-initramfs)
endef
else
define Kernel/CompileImage/Initramfs
endef
endif

## qca-networking-2019-spf-10-0_qca_oem.git/qsdk/include/kernel-build.mk
define Kernel/Configure
	$(call Kernel/Configure/Default)
endef

define Kernel/CompileImage
	$(call Kernel/CompileImage/Default)
	$(call Kernel/CompileImage/Initramfs)
endef

ifdef CONFIG_COLLECT_KERNEL_DEBUG
  define Kernel/CollectDebug
	rm -rf $(KERNEL_BUILD_DIR)/debug
	mkdir -p $(KERNEL_BUILD_DIR)/debug/modules
	$(CP) $(LINUX_DIR)/vmlinux $(KERNEL_BUILD_DIR)/debug/
	#-$(CP) \
	#	$(STAGING_DIR_ROOT)/lib/modules/$(LINUX_VERSION)/* \
	#	$(KERNEL_BUILD_DIR)/debug/modules/
	$(CP) $(KERNEL_BUILD_DIR)/debug $(BIN_DIR)/
  endef
endif

define BuildKernel
	$(call Kernel/Configure)
	$(call Kernel/CompileImage)
	$(call Kernel/CollectDebug)
	touch $(LINUX_DIR)/.image
endef

## qca-networking-2019-spf-10-0_qca_oem.git/qsdk/target/linux/ipq/image/Makefile
include $(SPF_QSDK_DIR)/target/linux/ipq/image/Makefile

ROMFS_DIRS = \
	bin \
	dev \
	home \
	etc etc/modules.d etc/hotplug.d \
	etc_ro etc_ro/web \
	etc_ro/wlan etc_ro/Wireless etc_ro/xml \
	etc_ro/lighttpd \
	etc_ro/linuxigd etc_ro/Wireless/RT2860AP \
	lib lib/modules lib/ipsec lib/firmware \
	mnt \
	proc \
	rom \
	root \
	sbin \
	sys \
	tmp \
	usr usr/bin usr/sbin usr/codepages usr/share usr/lib
	
clean:
	rm -rf $(KERNEL_BUILD_DIR)/*
	rm -rf $(BIN_DIR)/*
	rm -rf $(SPF_DIR)/common/build/ipq/*.itb
	rm -rf $(SPF_DIR)/common/build/ipq/*.dtb
	rm -rf $(SPF_DIR)/common/build/ipq/openwrt-$(BOARD)-$(SUBTARGET)-vmlinux*
	rm -rf $(SPF_DIR)/common/build/ipq/openwrt-$(BOARD)-$(SUBTARGET)-root*
	rm -rf $(SPF_DIR)/common/build/ipq/openwrt-$(BOARD)-$(SUBTARGET)-ubifs-root.img
	rm -rf $(SPF_DIR)/common/build/ipq/openwrt-$(BOARD)-$(SUBTARGET)-squashfs-root.img
	rm -rf $(SPF_DIR)/common/build/update_common.log
	rm -rf $(SPF_DIR)/common/build/bin/*
	rm -rf $(SPF_DIR)/common/build/ipq_x64

romfs:
	[ -d $(ROMFSDIR)/$$i ] || mkdir -p $(ROMFSDIR)
	for i in $(ROMFS_DIRS); do \
		[ -d $(ROMFSDIR)/$$i ] || mkdir -p $(ROMFSDIR)/$$i; \
	done
	-ln -sf tmp $(ROMFSDIR)/var
	
	$(CP) $(SPF_QSDK_ROOT_FS_DIR)/* $(ROMFSDIR)
ifeq ("$(APPLY_SPF10_P5)","y")
	rm -rf $(ROMFSDIR)/lib/modules/4.4.60 
	mv $(ROMFSDIR)/lib/modules/4.4.60_p5 $(ROMFSDIR)/lib/modules/4.4.60
else
	rm -rf $(ROMFSDIR)/lib/modules/4.4.60_p5
endif
	
	$(ROMFSINST) /etc_ro/Wireless/RT2860AP/RT2860_default_vlan_$(MODEL)
	mv $(ROMFSDIR)/etc_ro/Wireless/RT2860AP/RT2860_default_vlan_$(MODEL) $(ROMFSDIR)/etc_ro/Wireless/RT2860AP/RT2860_default_vlan

	if [ ! -d $(SPF_QSDK_DIR)/build_dir ]; then \
		mkdir -p $(SPF_QSDK_DIR)/build_dir/target-arm_cortex-a7_musl-1.1.16_eabi/linux-ipq_ipq807x; \
	fi
	if [ ! -d $(SPF_QSDK_DIR)/bin ]; then \
		mkdir -p $(SPF_QSDK_DIR)/bin/ipq; \
	fi

romfs.post::
	[ -d $(IMAGEDIR) ] || mkdir -p $(IMAGEDIR)
	
image:
	#rm -rf $(KERNEL_BUILD_DIR)/*
	#rm -rf $(BIN_DIR)/*
	
	#mkdir -p $(KERNEL_BUILD_DIR)
	#mkdir -p $(BIN_DIR)

ifeq ("$(GPL_RELEASE)", "y")
	$(call BuildKernel)
endif

	$(call BuildImageAlt)
	
	#rm -rf $(SPF_DIR)/common/build/ipq/*.itb
	#rm -rf $(SPF_DIR)/common/build/ipq/*.dtb
	#rm -rf $(SPF_DIR)/common/build/ipq/openwrt-$(BOARD)-$(SUBTARGET)-vmlinux*
	#rm -rf $(SPF_DIR)/common/build/ipq/openwrt-$(BOARD)-$(SUBTARGET)-root*
	#rm -rf $(SPF_DIR)/common/build/ipq/openwrt-$(BOARD)-$(SUBTARGET)-ubifs-root.img
	#rm -rf $(SPF_DIR)/common/build/ipq/openwrt-$(BOARD)-$(SUBTARGET)-squashfs-root.img
	
	cp $(SPF_QSDK_DIR)/bin/ipq/openwrt-ipq-ipq807x-ubi-root.img $(IMAGEDIR)
	cp $(IMAGEDIR)/openwrt-ipq-ipq807x-ubi-root.img $(IMAGE)

	#cp $(SPF_QSDK_DIR)/bin/ipq/openwrt* $(SPF_DIR)/common/build/ipq
	#cp -rf $(SPF_QSDK_DIR)/bin/ipq/dtbs/* $(SPF_DIR)/common/build/ipq
	
	#chmod 755 ./update_common_info.sh
	#./update_common_info.sh $(SPF_DIR)

vendor_kernel:
	if [ ! -d $(SPF_QSDK_DIR)/build_dir ]; then \
		mkdir -p $(SPF_QSDK_DIR)/build_dir/target-arm_cortex-a7_musl-1.1.16_eabi/linux-ipq_ipq807x; \
	fi
	if [ ! -d $(SPF_QSDK_DIR)/bin ]; then \
		mkdir -p $(SPF_QSDK_DIR)/bin/ipq; \
	fi

	$(call BuildKernel)

vendor_kernel_config:
	$(call Kernel/Configure)
