Makefile 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. GLUONDIR:=${CURDIR}
  2. LN_S:=ln -sf
  3. all:
  4. $(MAKE) prepare
  5. $(MAKE) images
  6. include $(GLUONDIR)/builder/gluon.mk
  7. BOARD := ar71xx
  8. PROFILES :=
  9. PROFILE_PACKAGES :=
  10. null :=
  11. space := ${null} ${null}
  12. ${space} := ${space}
  13. prepared_stamp := $(GLUON_BUILDDIR)/prepared
  14. define GluonProfile
  15. image/$(1): $(prepared_stamp)
  16. $(MAKE) -C $(GLUON_BUILDERDIR) image \
  17. PROFILE="$(1)" \
  18. PACKAGE_DIR="$(GLUON_OPENWRTDIR)/bin/$(BOARD)/packages" \
  19. $(if $(2),PACKAGES="$(2)")
  20. PROFILES += $(1)
  21. PROFILE_PACKAGES += $(filter-out -%,$(2))
  22. endef
  23. include profiles.mk
  24. prepare:
  25. mkdir -p $(GLUON_IMAGEDIR) $(GLUON_BUILDDIR)
  26. echo 'src packages file:../openwrt/bin/$(BOARD)/packages' > $(GLUON_BUILDDIR)/opkg-$(BOARD).conf
  27. $(LN_S) $(GLUON_BUILDERDIR)/feeds.conf $(GLUON_OPENWRTDIR)/feeds.conf
  28. $(GLUON_OPENWRTDIR)/scripts/feeds uninstall -a
  29. $(GLUON_OPENWRTDIR)/scripts/feeds update -a
  30. $(GLUON_OPENWRTDIR)/scripts/feeds install -a
  31. echo -e "CONFIG_TARGET_$(BOARD)=y\nCONFIG_TARGET_ROOTFS_JFFS2=n\n$(subst ${ },\n,$(patsubst %,CONFIG_PACKAGE_%=m,$(GLUON_PACKAGES) $(PROFILE_PACKAGES)))" > $(GLUON_OPENWRTDIR)/.config
  32. $(MAKE) -C $(GLUON_OPENWRTDIR) defconfig prepare
  33. $(MAKE) -C $(GLUON_BUILDERDIR) kernel
  34. $(MAKE) -C $(GLUON_OPENWRTDIR) package/compile
  35. touch $(prepared_stamp)
  36. $(prepared_stamp):
  37. $(MAKE) prepare
  38. images: $(patsubst %,image/%,$(PROFILES))
  39. clean:
  40. rm -rf $(GLUON_BUILDDIR)
  41. cleanall: clean
  42. $(MAKE) -C $(GLUON_OPENWRTDIR) clean
  43. .PHONY: all images prepare clean cleanall