Makefile 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. #
  3. # Copyright (C) 2022 OpenWrt.org
  4. #
  5. include $(TOPDIR)/rules.mk
  6. PKG_NAME:=opensbi
  7. PKG_RELEASE:=1.4
  8. PKG_SOURCE_PROTO:=git
  9. PKG_SOURCE_URL=https://github.com/riscv/opensbi
  10. PKG_SOURCE_DATE:=2023-12-24
  11. PKG_SOURCE_VERSION:=a2b255b88918715173942f2c5e1f97ac9e90c877
  12. PKG_MIRROR_HASH:=a81d7b3622feba80b2a45fe0d38600be73cfbee64a0426be82a71545c10c54d3
  13. PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
  14. PKG_TARGETS:=bin
  15. PKG_FLAGS:=nonshared
  16. PKG_LICENSE:=BSD-2-Clause
  17. PKG_LICENSE_FILES:=COPYING.BSD
  18. PKG_BUILD_PARALLEL:=1
  19. PKG_MAINTAINER:=Zoltan HERPAI <[email protected]>
  20. include $(INCLUDE_DIR)/package.mk
  21. define Package/opensbi
  22. SECTION:=boot
  23. CATEGORY:=Boot Loaders
  24. DEPENDS:=@(TARGET_sifiveu||TARGET_d1)
  25. URL:=https://github.com/riscv/opensbi/blob/master/README.md
  26. VARIANT:=$(subst _,/,$(subst opensbi_,,$(1)))
  27. TITLE:=OpenSBI generic
  28. OPENSBI_IMAGE:=
  29. PLAT:=
  30. endef
  31. define Package/opensbi_generic
  32. $(Package/opensbi)
  33. TITLE:=OpenSBI generic
  34. OPENSBI_IMAGE:=fw_dynamic.bin
  35. PLAT:=generic
  36. endef
  37. export GCC_HONOUR_COPTS=s
  38. MAKE_VARS = \
  39. CROSS_COMPILE="$(TARGET_CROSS)"
  40. define Build/Compile
  41. $(eval $(Package/opensbi_$(BUILD_VARIANT))) \
  42. +$(MAKE_VARS) $(MAKE) -C $(PKG_BUILD_DIR) \
  43. PLATFORM=$(PLAT)
  44. endef
  45. define Build/InstallDev
  46. $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
  47. $(CP) $(PKG_BUILD_DIR)/build/platform/$(PLAT)/firmware/fw_dynamic.bin $(STAGING_DIR_IMAGE)/fw_dynamic-${BUILD_VARIANT}.bin
  48. endef
  49. $(eval $(call BuildPackage,opensbi_generic))