cd7e5e2be6b60f346252c26ed32c34335f413e8a
[feed/packages.git] / libs / libqmi / 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:=libqmi
11 PKG_SOURCE_VERSION:=1.34.0
12 PKG_RELEASE:=1
13
14 PKG_SOURCE_PROTO:=git
15 PKG_SOURCE_URL:=https://gitlab.freedesktop.org/mobile-broadband/libqmi.git
16 PKG_MIRROR_HASH:=05211a43de53b7bf967fe29ca62dbe8332f42748dbfc8d32880cda765d00020c
17
18 PKG_BUILD_FLAGS:=gc-sections
19
20 PKG_MAINTAINER:=Nicholas Smith <nicholas@nbembedded.com>
21 PKG_CPE_ID:=cpe:/a:libqmi_project:libqmi
22
23 include $(INCLUDE_DIR)/package.mk
24 include $(INCLUDE_DIR)/nls.mk
25 include $(INCLUDE_DIR)/meson.mk
26
27 TARGET_CFLAGS += -fno-merge-all-constants -fmerge-constants
28
29 define Package/libqmi/config
30 source "$(SOURCE)/Config.in"
31 endef
32
33 define Package/libqmi
34 SECTION:=libs
35 CATEGORY:=Libraries
36 DEPENDS:= \
37 +glib2 \
38 +LIBQMI_WITH_MBIM_QMUX:libmbim \
39 +LIBQMI_WITH_QRTR_GLIB:libqrtr-glib
40 TITLE:=Helper library to talk to QMI enabled modems
41 URL:=https://www.freedesktop.org/wiki/Software/libqmi
42 LICENSE:=LGPL-2.0-or-later
43 LICENSE_FILES:=COPYING.LIB
44 endef
45
46 define Package/libqmi/description
47 Helper library talk to QMI enabled modems.
48 Add qmi-utils for extra utilities.
49 endef
50
51 define Package/qmi-utils
52 SECTION:=utils
53 CATEGORY:=Utilities
54 DEPENDS:=+libqmi
55 TITLE:=Utilities to talk to QMI enabled modems
56 URL:=https://www.freedesktop.org/wiki/Software/libqmi
57 LICENSE:=GPL-2.0-or-later
58 LICENSE_FILES:=COPYING
59 endef
60
61 define Package/libqmi-utils/description
62 Utils to talk to QMI enabled modems
63 endef
64
65 MESON_ARGS += \
66 -Dudev=false \
67 -Dintrospection=false \
68 -Dman=false \
69 -Dbash_completion=false \
70 -Db_lto=true \
71 -Dmbim_qmux=$(if $(CONFIG_LIBQMI_WITH_MBIM_QMUX),true,false) \
72 -Dqrtr=$(if $(CONFIG_LIBQMI_WITH_QRTR_GLIB),true,false) \
73 -Dcollection=$(if $(CONFIG_LIBQMI_COLLECTION_MINIMAL),minimal\
74 ,$(if $(CONFIG_LIBQMI_COLLECTION_BASIC),basic,full))
75
76 define Build/InstallDev
77 $(INSTALL_DIR) $(1)/usr/include
78 $(CP) \
79 $(PKG_INSTALL_DIR)/usr/include/libqmi-glib \
80 $(1)/usr/include/
81
82 $(INSTALL_DIR) $(1)/usr/lib
83 $(CP) \
84 $(PKG_INSTALL_DIR)/usr/lib/libqmi*.so* \
85 $(1)/usr/lib/
86
87 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
88 $(CP) \
89 $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/qmi-glib.pc \
90 $(1)/usr/lib/pkgconfig
91 endef
92
93 define Package/libqmi/install
94 $(INSTALL_DIR) \
95 $(1)/usr/lib \
96 $(1)/usr/libexec
97
98 $(CP) \
99 $(PKG_INSTALL_DIR)/usr/lib/libqmi*.so.* \
100 $(1)/usr/lib/
101
102 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/libexec/qmi-proxy $(1)/usr/libexec/
103 endef
104
105 define Package/qmi-utils/install
106 $(INSTALL_DIR) $(1)/usr/bin
107 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/qmicli $(1)/usr/bin/
108 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/qmi-network $(1)/usr/bin/
109 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/qmi-firmware-update $(1)/usr/bin/
110 endef
111
112 $(eval $(call BuildPackage,libqmi))
113 $(eval $(call BuildPackage,qmi-utils))