You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

98 lines
2.8 KiB

  1. #
  2. # This is free software, licensed under the GNU General Public License v2.
  3. # See /LICENSE for more information.
  4. #
  5. include $(TOPDIR)/rules.mk
  6. PKG_NAME:=hwloc
  7. PKG_VERSION:=2.6.0
  8. PKG_RELEASE:=$(AUTORELEASE)
  9. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
  10. PKG_SOURCE_URL:=https://download.open-mpi.org/release/$(PKG_NAME)/v2.6
  11. PKG_HASH:=e1f073e44e28c296ff848dead5e9bd6e2426b77f95ead1792358958e859fa83a
  12. PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org>
  13. PKG_LICENSE:=BSD-3-Clause
  14. PKG_LICENSE_FILES:=COPYING
  15. PKG_INSTALL:=1
  16. PKG_BUILD_PARALLEL:=1
  17. include $(INCLUDE_DIR)/package.mk
  18. define Package/hwloc/Default
  19. SECTION:=libs
  20. CATEGORY:=Libraries
  21. TITLE:=Portable Hardware Locality
  22. URL:=https://www.open-mpi.org/projects/hwloc/
  23. endef
  24. define Package/hwloc/Default/description
  25. The Portable Hardware Locality (hwloc) software package provides a
  26. portable abstraction (across OS, versions, architectures, ...) of the
  27. hierarchical topology of modern architectures, including NUMA memory
  28. nodes, sockets, shared caches, cores and simultaneous multithreading. It
  29. also gathers various system attributes such as cache and memory
  30. information as well as the locality of I/O devices such as network
  31. interfaces, InfiniBand HCAs or GPUs.
  32. endef
  33. define Package/hwloc-utils
  34. $(call Package/hwloc/Default)
  35. SECTION:=utils
  36. CATEGORY:=Utilities
  37. TITLE+= utilities
  38. DEPENDS+= +libhwloc +libncurses
  39. endef
  40. define Package/hwloc-utils/description
  41. $(call Package/hwloc/Default/description)
  42. This package contains the hwloc utilities.
  43. endef
  44. define Package/libhwloc
  45. $(call Package/hwloc/Default)
  46. SECTION:=libs
  47. CATEGORY:=Libraries
  48. TITLE+= libraries
  49. DEPENDS+=+libpciaccess
  50. endef
  51. define Package/libhwloc/description
  52. $(call Package/hwloc/Default/description)
  53. This package contains the hwloc libraries.
  54. endef
  55. CONFIGURE_ARGS += \
  56. --disable-libxml2 \
  57. --disable-libudev
  58. define Build/InstallDev
  59. $(INSTALL_DIR) $(STAGING_DIR)/usr/include
  60. $(CP) $(PKG_INSTALL_DIR)/usr/include/hwloc.h $(STAGING_DIR)/usr/include/
  61. $(INSTALL_DIR) $(STAGING_DIR)/usr/include/hwloc
  62. $(CP) $(PKG_INSTALL_DIR)/usr/include/hwloc/*.h $(STAGING_DIR)/usr/include/hwloc/
  63. $(INSTALL_DIR) $(STAGING_DIR)/usr/include/hwloc/autogen
  64. $(CP) $(PKG_INSTALL_DIR)/usr/include/hwloc/autogen/*.h $(STAGING_DIR)/usr/include/hwloc/autogen/
  65. $(INSTALL_DIR) $(STAGING_DIR)/usr/lib
  66. $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib* $(STAGING_DIR)/usr/lib/
  67. $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
  68. $(INSTALL_DATA) \
  69. $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/*.pc \
  70. $(1)/usr/lib/pkgconfig
  71. endef
  72. define Package/hwloc-utils/install
  73. $(INSTALL_DIR) $(1)/usr/bin
  74. $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/
  75. endef
  76. define Package/libhwloc/install
  77. $(INSTALL_DIR) $(1)/usr/lib
  78. $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/
  79. endef
  80. $(eval $(call BuildPackage,hwloc-utils))
  81. $(eval $(call BuildPackage,libhwloc))