Merge pull request #16220 from paulfertser/socat_add_user
[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.68.4
12 PKG_RELEASE:=$(AUTORELEASE)
13
14 PKG_SOURCE:=glib-$(PKG_VERSION).tar.xz
15 PKG_SOURCE_URL:=@GNOME/glib/2.68
16 PKG_HASH:=62fd061d08a75492617e625a73e2c05e259f831acbb8e1f8b9c81f23f7993a3b
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 $(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 -Dsysprof=disabled \
61 -Dgtk_doc=false \
62 -Dbsymbolic_functions=true \
63 -Dforce_posix_threads=true \
64 -Dfam=false \
65 -Dtests=false \
66 -Dinstalled_tests=false \
67 -Dnls=$(if $(CONFIG_BUILD_NLS),en,dis)abled \
68 -Doss_fuzz=disabled \
69 -Dglib_debug=disabled \
70 -Dglib_assert=false \
71 -Dglib_checks=false \
72 -Dlibelf=disabled
73
74 MESON_HOST_ARGS += $(COMP_ARGS) -Dxattr=false
75 MESON_ARGS += $(COMP_ARGS) -Dxattr=true -Db_lto=true
76
77 define Build/InstallDev
78 $(INSTALL_DIR) $(1)/usr/bin
79 $(CP) \
80 $(PKG_INSTALL_DIR)/usr/bin/* \
81 $(1)/usr/bin/
82
83 $(INSTALL_DIR) $(1)/usr/include
84 $(CP) \
85 $(PKG_INSTALL_DIR)/usr/include/glib-2.0 \
86 $(1)/usr/include/
87 $(CP) \
88 $(PKG_INSTALL_DIR)/usr/lib/glib-2.0/include/*.h \
89 $(1)/usr/include/glib-2.0/
90 $(CP) \
91 $(PKG_INSTALL_DIR)/usr/include/gio-unix-2.0 \
92 $(1)/usr/include/
93
94 $(INSTALL_DIR) $(1)/usr/lib
95 $(CP) \
96 $(PKG_INSTALL_DIR)/usr/lib/glib-2.0 \
97 $(1)/usr/lib/
98
99 $(CP) \
100 $(PKG_INSTALL_DIR)/usr/lib/*.{so*,a} \
101 $(1)/usr/lib/
102
103 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
104 ifneq ($(INTL_FULL),)
105 $(SED) '/^Libs:/s/$$$$/ -lintl/' \
106 $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/glib-2.0.pc
107 endif
108 $(INSTALL_DATA) \
109 $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/*.pc \
110 $(1)/usr/lib/pkgconfig
111
112 $(INSTALL_DIR) $(2)/share/aclocal/
113 $(INSTALL_DATA) \
114 $(PKG_INSTALL_DIR)/usr/share/aclocal/*.m4 \
115 $(2)/share/aclocal/
116
117 $(INSTALL_DIR) $(1)/usr/share/glib-2.0
118 $(CP) \
119 $(PKG_INSTALL_DIR)/usr/share/glib-2.0/codegen \
120 $(1)/usr/share/glib-2.0/
121 endef
122
123 define Package/glib2/install
124 $(INSTALL_DIR) $(1)/usr/lib
125 $(CP) \
126 $(PKG_INSTALL_DIR)/usr/lib/*.so* \
127 $(1)/usr/lib/
128 endef
129
130 $(eval $(call HostBuild))
131 $(eval $(call BuildPackage,glib2))