Merge pull request #13926 from ja-pa/tor-0.4.4.6
[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.66.3
12 PKG_RELEASE:=1
13
14 PKG_SOURCE:=glib-$(PKG_VERSION).tar.xz
15 PKG_SOURCE_URL:=@GNOME/glib/2.66
16 PKG_HASH:=79f31365a99cb1cc9db028625635d1438890702acde9e2802eae0acebcf7b5b1
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:=meson/host gettext-full libiconv/host
26 HOST_BUILD_DEPENDS:=meson/host gettext-full/host libiconv/host libffi/host
27 PKG_CONFIG_DEPENDS:=CONFIG_BUILD_NLS
28 PKG_INSTALL:=1
29
30 include $(INCLUDE_DIR)/host-build.mk
31 include $(INCLUDE_DIR)/package.mk
32 include $(INCLUDE_DIR)/nls.mk
33 include ../../devel/meson/meson.mk
34
35 define Package/glib2
36 SECTION:=libs
37 CATEGORY:=Libraries
38 DEPENDS:=$(ICONV_DEPENDS) $(INTL_DEPENDS) +zlib +libpthread +libffi +libattr
39 TITLE:=glib 2.0
40 URL:=http://www.gtk.org/
41 endef
42
43 define Package/glib2/description
44 The GLib library of C routines
45 endef
46
47 HOST_LDFLAGS += -liconv -Wl,-rpath,$(STAGING_DIR_HOSTPKG)/lib
48 TARGET_CFLAGS += -ffunction-sections -fdata-sections
49 TARGET_LDFLAGS += -Wl,--gc-sections -liconv $(if $(INTL_FULL),-lintl)
50
51 COMP_ARGS= \
52 -Ddefault_library=both \
53 -Diconv=external \
54 -Dselinux=disabled \
55 -Dlibmount=disabled \
56 -Dinternal_pcre=true \
57 -Dman=false \
58 -Ddtrace=false \
59 -Dsystemtap=false \
60 -Dgtk_doc=false \
61 -Dbsymbolic_functions=true \
62 -Dforce_posix_threads=true \
63 -Dfam=false \
64 -Dinstalled_tests=false \
65 -Dnls=$(if $(CONFIG_BUILD_NLS),en,dis)abled \
66 -Doss_fuzz=disabled \
67 -Dglib_assert=false \
68 -Dglib_checks=false
69
70 MESON_HOST_ARGS += $(COMP_ARGS) -Dxattr=false
71 MESON_ARGS += $(COMP_ARGS) -Dxattr=true -Db_lto=true
72
73 define Build/InstallDev
74 $(INSTALL_DIR) $(1)/usr/bin
75 $(CP) \
76 $(PKG_INSTALL_DIR)/usr/bin/* \
77 $(1)/usr/bin/
78
79 $(INSTALL_DIR) $(1)/usr/include
80 $(CP) \
81 $(PKG_INSTALL_DIR)/usr/include/glib-2.0 \
82 $(1)/usr/include/
83 $(CP) \
84 $(PKG_INSTALL_DIR)/usr/lib/glib-2.0/include/*.h \
85 $(1)/usr/include/glib-2.0/
86 $(CP) \
87 $(PKG_INSTALL_DIR)/usr/include/gio-unix-2.0 \
88 $(1)/usr/include/
89
90 $(INSTALL_DIR) $(1)/usr/lib
91 $(CP) \
92 $(PKG_INSTALL_DIR)/usr/lib/glib-2.0 \
93 $(1)/usr/lib/
94
95 $(CP) \
96 $(PKG_INSTALL_DIR)/usr/lib/*.{so*,a} \
97 $(1)/usr/lib/
98
99 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
100 ifneq ($(INTL_FULL),)
101 $(SED) '/^Libs:/s/$$$$/ -lintl/' \
102 $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/glib-2.0.pc
103 endif
104 $(INSTALL_DATA) \
105 $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/*.pc \
106 $(1)/usr/lib/pkgconfig
107
108 $(INSTALL_DIR) $(2)/share/aclocal/
109 $(INSTALL_DATA) \
110 $(PKG_INSTALL_DIR)/usr/share/aclocal/*.m4 \
111 $(2)/share/aclocal/
112
113 $(INSTALL_DIR) $(1)/usr/share/glib-2.0
114 $(CP) \
115 $(PKG_INSTALL_DIR)/usr/share/glib-2.0/codegen \
116 $(1)/usr/share/glib-2.0/
117 endef
118
119 define Package/glib2/install
120 $(INSTALL_DIR) $(1)/usr/lib
121 $(CP) \
122 $(PKG_INSTALL_DIR)/usr/lib/*.so* \
123 $(1)/usr/lib/
124 endef
125
126 $(eval $(call HostBuild))
127 $(eval $(call BuildPackage,glib2))