Makefile 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. # SPDX-License-Identifier: GPL-3.0-only
  2. #
  3. # Copyright (C) 2023 ImmortalWrt.org
  4. include $(TOPDIR)/rules.mk
  5. PKG_NAME:=chinadns-ng
  6. PKG_VERSION:=2025.08.09
  7. PKG_RELEASE:=1
  8. ifeq ($(ARCH),aarch64)
  9. ifneq (,$(filter $(BOARD),rockchip qualcommax))
  10. PKG_ARCH:=$(PKG_NAME)+wolfssl@aarch64-linux-musl@generic+v8a@fast+lto
  11. PKG_HASH:=3fe0217615dd7060b7287d2b6b31d2a0b364137398bfb335a03bead322eac716
  12. else
  13. PKG_ARCH:=$(PKG_NAME)+wolfssl_noasm@aarch64-linux-musl@generic+v8a@fast+lto
  14. PKG_HASH:=42ddd494200ec6d88b35902927688d316bc23e06e6c08d9e01eb2412196ab845
  15. endif
  16. else ifeq ($(ARCH),arm)
  17. # Referred to golang/golang-values.mk
  18. ARM_CPU_FEATURES:=$(word 2,$(subst +,$(space),$(call qstrip,$(CONFIG_CPU_TYPE))))
  19. ifeq ($(ARM_CPU_FEATURES),)
  20. PKG_ARCH:=$(PKG_NAME)+wolfssl@arm-linux-musleabi@generic+v5t+soft_float@fast+lto
  21. PKG_HASH:=46ce65b0e2342d4f8dac63f281a38a239d8de29d6c75f863c797b164ab8e72cc
  22. else ifneq ($(filter $(ARM_CPU_FEATURES),vfp vfpv2),)
  23. PKG_ARCH:=$(PKG_NAME)+wolfssl@arm-linux-musleabi@generic+v6+soft_float@fast+lto
  24. PKG_HASH:=0a401d1dc11129481b2baf86f847d55d66bd7e725cba4bf57875fdad27ef0052
  25. else
  26. PKG_ARCH:=$(PKG_NAME)+wolfssl@arm-linux-musleabihf@generic+v7a@fast+lto
  27. PKG_HASH:=dfa1f6ba80fb0925613822f4c4e00df8da68e7b8b772048d26a0d1a9d07d346b
  28. endif
  29. else ifeq ($(ARCH),mips)
  30. PKG_ARCH:=$(PKG_NAME)+wolfssl@mips-linux-musl@mips32+soft_float@fast+lto
  31. PKG_HASH:=b610821a8f61b0ed3c8c7e82e10d401348a9de17f900988589024a37c4099c8e
  32. else ifeq ($(ARCH),mipsel)
  33. ifeq ($(CONFIG_HAS_FPU),)
  34. PKG_ARCH:=$(PKG_NAME)+wolfssl@mipsel-linux-musl@mips32+soft_float@fast+lto
  35. PKG_HASH:=760544a88724e3b1b9eac79c9400231e81aa8786f8f00a979229e175811ffe6d
  36. else
  37. PKG_ARCH:=$(PKG_NAME)+wolfssl@mipsel-linux-musl@mips32@fast+lto
  38. PKG_HASH:=ec547c31a884e0967437ceb90a5c270864efe81b0e40939e0ec2810c7bfd6653
  39. endif
  40. else ifeq ($(ARCH),mips64)
  41. PKG_ARCH:=$(PKG_NAME)+wolfssl@mips64-linux-musl@mips64+soft_float@fast+lto
  42. PKG_HASH:=2d0fce18a7ef1d74fdc12738767e66998a52c2b30d8790da760933853fe8726e
  43. else ifeq ($(ARCH),mips64el)
  44. PKG_ARCH:=$(PKG_NAME)+wolfssl@mips64el-linux-musl@mips64+soft_float@fast+lto
  45. PKG_HASH:=a301d8d200d06582c60bbe0e487a28f5b41e6f0997a548cf882a7b078dab089c
  46. else ifeq ($(ARCH),i386)
  47. ifneq ($(CONFIG_TARGET_x86_geode)$(CONFIG_TARGET_x86_legacy),)
  48. PKG_ARCH:=$(PKG_NAME)+wolfssl@i386-linux-musl@i686@fast+lto
  49. PKG_HASH:=85e057dd0a0e8913b30471737436ab8b71834c494ed9f9e53544261b1ffdc8d6
  50. else
  51. PKG_ARCH:=$(PKG_NAME)+wolfssl@i386-linux-musl@pentium4@fast+lto
  52. PKG_HASH:=2d0f1a05c82f2e21e71a6618c7f1d2e7f46aa6a21535d774d517e87ec00c989b
  53. endif
  54. else ifeq ($(ARCH),x86_64)
  55. PKG_ARCH:=$(PKG_NAME)+wolfssl@x86_64-linux-musl@x86_64@fast+lto
  56. PKG_HASH:=842ea4e9816efd91d39bc76ead5c4a42e79011757e37c521b4270b675cfcb30c
  57. else ifeq ($(ARCH),riscv64)
  58. PKG_ARCH:=chinadns-ng+wolfssl@riscv64-linux-musl@baseline_rv64@fast+lto
  59. PKG_HASH:=7056f47f4d6b20109e007792694dc83e5eac44c9265d7be20f6dc10375b35a9b
  60. else
  61. PKG_ARCH:=dummy
  62. PKG_HASH:=dummy
  63. endif
  64. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(ARCH_PACKAGES)
  65. PKG_SOURCE_URL:=https://github.com/zfl9/chinadns-ng/releases/download/$(PKG_VERSION)/$(PKG_ARCH)?
  66. UNPACK_CMD=$(CP) $(DL_DIR)/$(PKG_SOURCE) $(PKG_BUILD_DIR)/$(PKG_NAME)
  67. PKG_LICENSE:=AGPL-3.0-only
  68. PKG_LICENSE_FILES:=LICENSE
  69. PKG_MAINTAINER:=Tianling Shen <[email protected]>
  70. include $(INCLUDE_DIR)/package.mk
  71. define Package/chinadns-ng
  72. SECTION:=net
  73. CATEGORY:=Network
  74. SUBMENU:=IP Addresses and Names
  75. TITLE:=ChinaDNS next generation, refactoring with epoll and ipset.
  76. URL:=https://github.com/zfl9/chinadns-ng
  77. DEPENDS:=@(aarch64||arm||i386||mips||mipsel||mips64||mips64el||riscv64||x86_64)
  78. endef
  79. define Package/chinadns-ng/description
  80. ChinaDNS Next Generation, refactoring with epoll and ipset.
  81. endef
  82. define Build/Compile
  83. endef
  84. define Package/chinadns-ng/install
  85. $(INSTALL_DIR) $(1)/usr/bin
  86. $(INSTALL_BIN) $(PKG_BUILD_DIR)/chinadns-ng $(1)/usr/bin
  87. endef
  88. $(eval $(call BuildPackage,chinadns-ng))