frr: fix compilation with GCC14
[feed/packages.git] / net / modemmanager / Makefile
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
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=modemmanager
11 PKG_VERSION:=1.22.0
12 PKG_RELEASE:=13
13
14 PKG_SOURCE_PROTO:=git
15 PKG_SOURCE_URL:=https://gitlab.freedesktop.org/mobile-broadband/ModemManager.git
16 PKG_SOURCE_VERSION:=$(PKG_VERSION)
17 PKG_MIRROR_HASH:=72d129a00d51f0acf4c421f02dd342728ca42980bd9644e3c9a69ca0792fd60b
18
19 PKG_MAINTAINER:=Nicholas Smith <nicholas@nbembedded.com>
20 PKG_LICENSE:=GPL-2.0-or-later
21 PKG_LICENSE_FILES:=COPYING
22
23 PKG_BUILD_DEPENDS:=glib2/host libxslt/host
24 PKG_BUILD_FLAGS:=gc-sections
25
26 include $(INCLUDE_DIR)/package.mk
27 include $(INCLUDE_DIR)/nls.mk
28 include $(INCLUDE_DIR)/meson.mk
29
30 TARGET_CFLAGS += -fno-merge-all-constants -fmerge-constants
31
32 define Package/modemmanager/config
33 source "$(SOURCE)/Config.in"
34 endef
35
36 define Package/modemmanager
37 SECTION:=net
38 CATEGORY:=Network
39 TITLE:=Control utility for any kind of mobile broadband modem
40 URL:=https://www.freedesktop.org/wiki/Software/ModemManager
41 DEPENDS:= \
42 $(INTL_DEPENDS) \
43 +glib2 \
44 +dbus \
45 +ppp \
46 +MODEMMANAGER_WITH_MBIM:libmbim \
47 +MODEMMANAGER_WITH_QMI:libqmi \
48 +MODEMMANAGER_WITH_QRTR:libqrtr-glib
49 endef
50
51 define Package/modemmanager/description
52 ModemManager is a D-Bus-activated service which allows controlling mobile
53 broadband modems. Add kernel modules for your modems as needed.
54 Select Utilities/usb-modeswitch if needed.
55 endef
56
57 MESON_ARGS += \
58 -Dudev=false \
59 -Dudevdir=/lib/udev \
60 -Dtests=false \
61 -Dsystemdsystemunitdir=no \
62 -Dsystemd_suspend_resume=false \
63 -Dsystemd_journal=false \
64 -Dpolkit=no \
65 -Dintrospection=false \
66 -Dman=false \
67 -Dbash_completion=false \
68 -Dbuiltin_plugins=true \
69 -Db_lto=true \
70 -Dmbim=$(if $(CONFIG_MODEMMANAGER_WITH_MBIM),true,false) \
71 -Dqmi=$(if $(CONFIG_MODEMMANAGER_WITH_QMI),true,false) \
72 -Dqrtr=$(if $(CONFIG_MODEMMANAGER_WITH_QRTR),true,false) \
73 -Dat_command_via_dbus=$(if $(CONFIG_MODEMMANAGER_WITH_AT_COMMAND_VIA_DBUS),true,false)
74
75 define Build/InstallDev
76 $(INSTALL_DIR) $(1)/usr/include/ModemManager
77 $(CP) $(PKG_INSTALL_DIR)/usr/include/ModemManager/*.h $(1)/usr/include/ModemManager
78 $(INSTALL_DIR) $(1)/usr/include/libmm-glib
79 $(CP) $(PKG_INSTALL_DIR)/usr/include/libmm-glib/*.h $(1)/usr/include/libmm-glib
80 $(INSTALL_DIR) $(1)/usr/lib
81 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libmm-glib.so* $(1)/usr/lib
82 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
83 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/ModemManager.pc $(1)/usr/lib/pkgconfig
84 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/mm-glib.pc $(1)/usr/lib/pkgconfig
85 $(INSTALL_DIR) $(1)/usr/share/dbus-1/interfaces
86 $(CP) $(PKG_BUILD_DIR)/introspection/org.freedesktop.ModemManager1.* $(1)/usr/share/dbus-1/interfaces
87 endef
88
89 define Package/modemmanager/install
90 $(INSTALL_DIR) $(1)/lib/udev/rules.d
91 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/lib/udev/rules.d/*.rules $(1)/lib/udev/rules.d
92
93 $(INSTALL_DIR) $(1)/usr/sbin
94 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/ModemManager $(1)/usr/sbin
95 $(INSTALL_BIN) ./files/usr/sbin/ModemManager-wrapper $(1)/usr/sbin
96 $(INSTALL_BIN) ./files/usr/sbin/ModemManager-monitor $(1)/usr/sbin
97
98 $(INSTALL_DIR) $(1)/usr/bin
99 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/mmcli $(1)/usr/bin
100
101 $(INSTALL_DIR) $(1)/usr/lib
102 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libmm-glib.so.* $(1)/usr/lib
103
104 $(INSTALL_DIR) $(1)/usr/lib/ModemManager/connection.d
105 $(INSTALL_BIN) ./files/usr/lib/ModemManager/connection.d/10-report-down \
106 $(1)/usr/lib/ModemManager/connection.d
107
108 $(INSTALL_DIR) $(1)/etc/dbus-1/system.d
109 $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/dbus-1/system.d/org.freedesktop.ModemManager1.conf $(1)/etc/dbus-1/system.d
110
111 $(INSTALL_DIR) $(1)/usr/share/dbus-1/system-services
112 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/dbus-1/system-services/org.freedesktop.ModemManager1.service $(1)/usr/share/dbus-1/system-services
113
114 $(INSTALL_DIR) $(1)/usr/share/ModemManager
115 $$(if $$(wildcard $(PKG_INSTALL_DIR)/usr/share/ModemManager/*.conf),$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/ModemManager/*.conf $(1)/usr/share/ModemManager,)
116 $(INSTALL_DATA) ./files/usr/share/ModemManager/modemmanager.common \
117 $(1)/usr/share/ModemManager
118
119 $(INSTALL_DIR) $(1)/usr/share/ModemManager/fcc-unlock.available.d
120 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/ModemManager/fcc-unlock.available.d/* $(1)/usr/share/ModemManager/fcc-unlock.available.d
121
122 $(INSTALL_DIR) $(1)/etc/init.d
123 $(INSTALL_BIN) ./files/etc/init.d/modemmanager \
124 $(1)/etc/init.d/modemmanager
125
126 $(INSTALL_DIR) $(1)/etc/hotplug.d/net
127 $(INSTALL_DATA) ./files/etc/hotplug.d/net/25-modemmanager-net \
128 $(1)/etc/hotplug.d/net
129
130 $(INSTALL_DIR) $(1)/etc/hotplug.d/tty
131 $(INSTALL_DATA) ./files/etc/hotplug.d/tty/25-modemmanager-tty \
132 $(1)/etc/hotplug.d/tty
133
134 $(INSTALL_DIR) $(1)/etc/hotplug.d/wwan
135 $(INSTALL_DATA) ./files/etc/hotplug.d/wwan/25-modemmanager-wwan \
136 $(1)/etc/hotplug.d/wwan
137
138 $(INSTALL_DIR) $(1)/lib/netifd/proto
139 $(INSTALL_BIN) ./files/lib/netifd/proto/modemmanager.sh \
140 $(1)/lib/netifd/proto
141 endef
142
143 $(eval $(call BuildPackage,modemmanager))