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.

139 lines
4.3 KiB

  1. #
  2. # Copyright (C) 2016 Velocloud Inc.
  3. # Copyright (C) 2016 Aleksander Morgado <aleksander@aleksander.es>
  4. #
  5. # This is free software, licensed under the GNU General Public License v2.
  6. #
  7. include $(TOPDIR)/rules.mk
  8. PKG_NAME:=modemmanager
  9. PKG_VERSION:=1.12.0
  10. PKG_RELEASE:=3
  11. PKG_SOURCE:=ModemManager-$(PKG_VERSION).tar.xz
  12. PKG_SOURCE_URL:=https://www.freedesktop.org/software/ModemManager
  13. PKG_HASH:=3daca86164145fffb589939433f596c13fa077c9a187c0d5820fdd5b4e4a6424
  14. PKG_BUILD_DIR:=$(BUILD_DIR)/ModemManager-$(PKG_VERSION)
  15. PKG_MAINTAINER:=Nicholas Smith <nicholas.smith@telcoantennas.com.au>
  16. LICENSE:=GPL-2.0-or-later
  17. LICENSE_FILES:=COPYING
  18. PKG_INSTALL:=1
  19. PKG_BUILD_PARALLEL:=1
  20. PKG_BUILD_DEPENDS:=glib2/host libxslt/host
  21. PKG_FIXUP:=autoreconf
  22. include $(INCLUDE_DIR)/package.mk
  23. define Package/modemmanager/config
  24. source "$(SOURCE)/Config.in"
  25. endef
  26. define Package/modemmanager
  27. SECTION:=net
  28. CATEGORY:=Network
  29. TITLE:=Control utility for any kind of mobile broadband modem
  30. URL:=https://www.freedesktop.org/wiki/Software/ModemManager
  31. DEPENDS:= \
  32. $(INTL_DEPENDS) \
  33. +glib2 \
  34. +dbus \
  35. +MODEMMANAGER_WITH_MBIM:libmbim \
  36. +MODEMMANAGER_WITH_QMI:libqmi
  37. endef
  38. define Package/modemmanager/description
  39. ModemManager is a D-Bus-activated service which allows controlling mobile
  40. broadband modems. Add kernel modules for your modems as needed.
  41. Select Utilities/usb-modeswitch if needed.
  42. endef
  43. CONFIGURE_ARGS += \
  44. --without-polkit \
  45. --without-udev \
  46. --without-suspend-resume \
  47. --with-systemdsystemunitdir=no \
  48. --disable-rpath \
  49. --disable-gtk-doc
  50. ifdef CONFIG_MODEMMANAGER_WITH_MBIM
  51. CONFIGURE_ARGS += --with-mbim
  52. else
  53. CONFIGURE_ARGS += --without-mbim
  54. endif
  55. ifdef CONFIG_MODEMMANAGER_WITH_QMI
  56. CONFIGURE_ARGS += --with-qmi
  57. else
  58. CONFIGURE_ARGS += --without-qmi
  59. endif
  60. define Build/Prepare
  61. $(call Build/Prepare/Default)
  62. ( cd "$(PKG_BUILD_DIR)"; \
  63. printf "all:\ninstall:\n" >po/Makefile.in.in; \
  64. )
  65. $(SED) 's|^\(GLIB_MKENUMS\)=.*|\1=$(STAGING_DIR_HOSTPKG)/bin/glib-mkenums|' \
  66. $(PKG_BUILD_DIR)/configure.ac
  67. $(SED) 's|^\(GDBUS_CODEGEN\)=.*|\1=$(STAGING_DIR_HOSTPKG)/bin/gdbus-codegen|' \
  68. $(PKG_BUILD_DIR)/configure.ac
  69. endef
  70. define Build/InstallDev
  71. $(INSTALL_DIR) $(1)/usr/include/ModemManager
  72. $(CP) $(PKG_INSTALL_DIR)/usr/include/ModemManager/*.h $(1)/usr/include/ModemManager
  73. $(INSTALL_DIR) $(1)/usr/include/libmm-glib
  74. $(CP) $(PKG_INSTALL_DIR)/usr/include/libmm-glib/*.h $(1)/usr/include/libmm-glib
  75. $(INSTALL_DIR) $(1)/usr/lib
  76. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libmm-glib.so* $(1)/usr/lib
  77. $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
  78. $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/ModemManager.pc $(1)/usr/lib/pkgconfig
  79. $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/mm-glib.pc $(1)/usr/lib/pkgconfig
  80. endef
  81. define Package/modemmanager/install
  82. $(INSTALL_DIR) $(1)/lib/udev/rules.d
  83. $(INSTALL_DATA) $(PKG_INSTALL_DIR)/lib/udev/rules.d/*.rules $(1)/lib/udev/rules.d
  84. $(INSTALL_DIR) $(1)/usr/sbin
  85. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/ModemManager $(1)/usr/sbin
  86. $(INSTALL_DIR) $(1)/usr/bin
  87. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/mmcli $(1)/usr/bin
  88. $(INSTALL_DIR) $(1)/usr/lib
  89. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libmm-glib.so.* $(1)/usr/lib
  90. $(INSTALL_DIR) $(1)/usr/lib/ModemManager
  91. $(CP) $(PKG_INSTALL_DIR)/usr/lib/ModemManager/libmm-plugin-*.so* $(1)/usr/lib/ModemManager
  92. $(INSTALL_DIR) $(1)/etc/dbus-1/system.d
  93. $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/dbus-1/system.d/org.freedesktop.ModemManager1.conf $(1)/etc/dbus-1/system.d
  94. $(INSTALL_DIR) $(1)/usr/share/dbus-1/system-services
  95. $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/dbus-1/system-services/org.freedesktop.ModemManager1.service $(1)/usr/share/dbus-1/system-services
  96. $(INSTALL_DIR) $(1)/usr/share/ModemManager
  97. $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/ModemManager/*.conf $(1)/usr/share/ModemManager
  98. $(INSTALL_DIR) $(1)/etc/init.d
  99. $(INSTALL_BIN) ./files/modemmanager.init $(1)/etc/init.d/modemmanager
  100. $(INSTALL_DIR) $(1)/etc/hotplug.d/net
  101. $(INSTALL_DATA) ./files/25-modemmanager-net $(1)/etc/hotplug.d/net
  102. $(INSTALL_DIR) $(1)/etc/hotplug.d/tty
  103. $(INSTALL_DATA) ./files/25-modemmanager-tty $(1)/etc/hotplug.d/tty
  104. $(INSTALL_DIR) $(1)/etc/modemmanager
  105. $(INSTALL_DATA) ./files/modemmanager.common $(1)/etc/modemmanager/modemmanager.common
  106. $(INSTALL_DIR) $(1)/lib/netifd/proto
  107. $(INSTALL_BIN) ./files/modemmanager.proto $(1)/lib/netifd/proto/modemmanager.sh
  108. endef
  109. $(eval $(call BuildPackage,modemmanager))