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.

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