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.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.1.0
  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.1
  11. PKG_HASH:=19429752f772cf68321196970ffb10dafd7e02ab38d2b3382b157c78efd10862
  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. 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. DEPENDS+=+libpciaccess
  49. endef
  50. define Package/libhwloc/description
  51. $(call Package/hwloc/Default/description)
  52. This package contains the hwloc libraries.
  53. endef
  54. CONFIGURE_ARGS += \
  55. --disable-libxml2 \
  56. --disable-libudev
  57. define Build/InstallDev
  58. $(INSTALL_DIR) $(STAGING_DIR)/usr/include
  59. $(CP) $(PKG_INSTALL_DIR)/usr/include/hwloc.h $(STAGING_DIR)/usr/include/
  60. $(INSTALL_DIR) $(STAGING_DIR)/usr/include/hwloc
  61. $(CP) $(PKG_INSTALL_DIR)/usr/include/hwloc/*.h $(STAGING_DIR)/usr/include/hwloc/
  62. $(INSTALL_DIR) $(STAGING_DIR)/usr/include/hwloc/autogen
  63. $(CP) $(PKG_INSTALL_DIR)/usr/include/hwloc/autogen/*.h $(STAGING_DIR)/usr/include/hwloc/autogen/
  64. $(INSTALL_DIR) $(STAGING_DIR)/usr/lib
  65. $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib* $(STAGING_DIR)/usr/lib/
  66. $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
  67. $(INSTALL_DATA) \
  68. $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/*.pc \
  69. $(1)/usr/lib/pkgconfig
  70. endef
  71. define Package/hwloc-utils/install
  72. $(INSTALL_DIR) $(1)/usr/bin
  73. $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/
  74. endef
  75. define Package/libhwloc/install
  76. $(INSTALL_DIR) $(1)/usr/lib
  77. $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/
  78. endef
  79. $(eval $(call BuildPackage,hwloc-utils))
  80. $(eval $(call BuildPackage,libhwloc))