Makefile 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. #
  2. # Copyright (C) 2020-2023 Tony Ambardar <[email protected]>
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. include $(TOPDIR)/rules.mk
  8. PKG_NAME:=libbpf
  9. PKG_VERSION:=1.2.2
  10. PKG_RELEASE:=1
  11. PKG_SOURCE_URL:=https://github.com/libbpf/libbpf
  12. PKG_MIRROR_HASH:=d20f5a226e5729c87c367f3fba61c44d5e13176ef12637d0e0b30629fa3ab0d6
  13. PKG_SOURCE_PROTO:=git
  14. PKG_SOURCE_VERSION:=1728e3e4bef0e138ea95ffe62163eb9a6ac6fa32
  15. PKG_ABI_VERSION:=$(firstword $(subst .,$(space),$(PKG_VERSION)))
  16. PKG_MAINTAINER:=Tony Ambardar <[email protected]>
  17. PKG_BUILD_FLAGS:=no-mips16
  18. PKG_BUILD_PARALLEL:=1
  19. PKG_INSTALL:=1
  20. include $(INCLUDE_DIR)/package.mk
  21. include $(INCLUDE_DIR)/nls.mk
  22. define Package/libbpf
  23. SECTION:=libs
  24. CATEGORY:=Libraries
  25. TITLE:=libbpf - eBPF helper library
  26. LICENSE:=LGPL-2.1 OR BSD-2-Clause
  27. ABI_VERSION:=$(PKG_ABI_VERSION)
  28. URL:=http://www.kernel.org
  29. DEPENDS:=+libelf
  30. endef
  31. define Package/libbpf/description
  32. libbpf is a library for loading eBPF programs and reading and manipulating eBPF objects from user-space.
  33. endef
  34. MAKE_VARS = \
  35. EXTRA_CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS)" \
  36. LDFLAGS="$(TARGET_LDFLAGS)"
  37. MAKE_FLAGS += \
  38. $(if $(findstring c,$(OPENWRT_VERBOSE)),V=1,V='') \
  39. LIBSUBDIR=lib
  40. MAKE_PATH = src
  41. define Build/InstallDev/libbpf
  42. $(INSTALL_DIR) $(1)/usr/include/bpf
  43. $(CP) $(PKG_INSTALL_DIR)/usr/include/bpf/*.h $(1)/usr/include/bpf/
  44. $(INSTALL_DIR) $(1)/usr/lib
  45. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libbpf.{a,so*} \
  46. $(1)/usr/lib/
  47. $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
  48. $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libbpf.pc \
  49. $(1)/usr/lib/pkgconfig/
  50. $(SED) 's,/usr/include,$$$${prefix}/include,g' \
  51. $(1)/usr/lib/pkgconfig/libbpf.pc
  52. $(SED) 's,/usr/lib,$$$${exec_prefix}/lib,g' \
  53. $(1)/usr/lib/pkgconfig/libbpf.pc
  54. endef
  55. Build/InstallDev=$(Build/InstallDev/libbpf)
  56. define Package/libbpf/install
  57. $(INSTALL_DIR) $(1)/usr/lib
  58. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libbpf.so.* $(1)/usr/lib/
  59. endef
  60. $(eval $(call BuildPackage,libbpf))