Merge pull request #18095 from TDT-AG/pr/20220318-glib2
[feed/packages.git] / libs / glib2 / Makefile
1 #
2 # Copyright (C) 2007-2019 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=glib2
11 PKG_VERSION:=2.70.4
12 PKG_RELEASE:=$(AUTORELEASE)
13
14 PKG_SOURCE:=glib-$(PKG_VERSION).tar.xz
15 PKG_SOURCE_URL:=@GNOME/glib/2.70
16 PKG_HASH:=ab3d176f3115dcc4e5d02db795984e04e4f4b48d836252e23e8c468e9d423c33
17
18 PKG_MAINTAINER:=Peter Wagner <tripolar@gmx.at>
19 PKG_LICENSE:=LGPL-2.1-or-later
20 PKG_LICENSE_FILES:=COPYING
21 PKG_CPE_ID:=cpe:/a:gnome:glib
22
23 PKG_BUILD_DIR:=$(BUILD_DIR)/glib-$(PKG_VERSION)
24 HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/glib-$(PKG_VERSION)
25 PKG_BUILD_DEPENDS:=libiconv/host
26 HOST_BUILD_DEPENDS:=libiconv/host libffi/host pcre/host
27 PKG_CONFIG_DEPENDS:=CONFIG_BUILD_NLS
28 PKG_INSTALL:=1
29
30 HOST_PATCH_DIR:=./patches-host
31
32 include $(INCLUDE_DIR)/host-build.mk
33 include $(INCLUDE_DIR)/package.mk
34 include $(INCLUDE_DIR)/nls.mk
35 include $(INCLUDE_DIR)/meson.mk
36
37 define Package/glib2
38 SECTION:=libs
39 CATEGORY:=Libraries
40 DEPENDS:=$(ICONV_DEPENDS) $(INTL_DEPENDS) +zlib +libpthread +libffi +libattr +libpcre
41 TITLE:=glib 2.0
42 URL:=http://www.gtk.org/
43 endef
44
45 define Package/glib2/description
46 The GLib library of C routines
47 endef
48
49 TARGET_CFLAGS += -ffunction-sections -fdata-sections
50 TARGET_LDFLAGS += -Wl,--gc-sections $(if $(INTL_FULL),-lintl)
51
52 COMP_ARGS= \
53 -Diconv=external \
54 -Dselinux=disabled \
55 -Dlibmount=disabled \
56 -Dman=false \
57 -Ddtrace=false \
58 -Dsystemtap=false \
59 -Dsysprof=disabled \
60 -Dgtk_doc=false \
61 -Dbsymbolic_functions=true \
62 -Dforce_posix_threads=true \
63 -Dfam=false \
64 -Dtests=false \
65 -Dinstalled_tests=false \
66 -Doss_fuzz=disabled \
67 -Dglib_debug=disabled \
68 -Dglib_assert=false \
69 -Dglib_checks=false \
70 -Dlibelf=disabled
71
72 MESON_HOST_ARGS += $(COMP_ARGS) -Dxattr=false -Ddefault_library=static -Dnls=disabled
73 MESON_ARGS += $(COMP_ARGS) -Dxattr=true -Db_lto=true -Ddefault_library=both -Dnls=$(if $(CONFIG_BUILD_NLS),en,dis)abled
74
75 define Build/InstallDev
76 $(INSTALL_DIR) $(1)/usr/bin
77 $(CP) \
78 $(PKG_INSTALL_DIR)/usr/bin/* \
79 $(1)/usr/bin/
80
81 $(INSTALL_DIR) $(1)/usr/include
82 $(CP) \
83 $(PKG_INSTALL_DIR)/usr/include/glib-2.0 \
84 $(1)/usr/include/
85 $(CP) \
86 $(PKG_INSTALL_DIR)/usr/lib/glib-2.0/include/*.h \
87 $(1)/usr/include/glib-2.0/
88 $(CP) \
89 $(PKG_INSTALL_DIR)/usr/include/gio-unix-2.0 \
90 $(1)/usr/include/
91
92 $(INSTALL_DIR) $(1)/usr/lib
93 $(CP) \
94 $(PKG_INSTALL_DIR)/usr/lib/glib-2.0 \
95 $(1)/usr/lib/
96
97 $(CP) \
98 $(PKG_INSTALL_DIR)/usr/lib/*.{so*,a} \
99 $(1)/usr/lib/
100
101 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
102 ifneq ($(INTL_FULL),)
103 $(SED) '/^Libs:/s/$$$$/ -lintl/' \
104 $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/glib-2.0.pc
105 endif
106 $(INSTALL_DATA) \
107 $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/*.pc \
108 $(1)/usr/lib/pkgconfig
109
110 $(INSTALL_DIR) $(2)/share/aclocal/
111 $(INSTALL_DATA) \
112 $(PKG_INSTALL_DIR)/usr/share/aclocal/*.m4 \
113 $(2)/share/aclocal/
114
115 $(INSTALL_DIR) $(1)/usr/share/glib-2.0
116 $(CP) \
117 $(PKG_INSTALL_DIR)/usr/share/glib-2.0/codegen \
118 $(1)/usr/share/glib-2.0/
119 endef
120
121 define Package/glib2/install
122 $(INSTALL_DIR) $(1)/usr/lib
123 $(CP) \
124 $(PKG_INSTALL_DIR)/usr/lib/*.so* \
125 $(1)/usr/lib/
126 endef
127
128 $(eval $(call HostBuild))
129 $(eval $(call BuildPackage,glib2))