c8700de550aa29869df5344a6c2aba943ac6ba50
[openwrt/staging/nbd.git] / package / libs / gettext-full / Makefile
1 #
2 # Copyright (C) 2006-2015 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:=gettext-full
11 PKG_VERSION:=0.21.1
12 PKG_RELEASE:=2
13
14 PKG_SOURCE:=gettext-$(PKG_VERSION).tar.xz
15 PKG_SOURCE_URL:=@GNU/gettext
16 PKG_HASH:=50dbc8f39797950aa2c98e939947c527e5ac9ebd2c1b99dd7b06ba33a6767ae6
17 PKG_BUILD_DIR:=$(BUILD_DIR)/gettext-$(PKG_VERSION)
18 HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/gettext-$(PKG_VERSION)
19
20 PKG_MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
21 PKG_LICENSE:=GPL-3.0-or-later
22 PKG_CPE_ID:=cpe:/a:gnu:gettext
23
24 PKG_INSTALL:=1
25 PKG_BUILD_DEPENDS:=gettext-full/host libxml2
26 PKG_BUILD_PARALLEL:=0
27
28 HOST_BUILD_DEPENDS:=gperf/host libxml2/host
29 HOST_BUILD_PARALLEL:=0
30
31 PKG_SUBDIRS:= \
32 $$$$(foreach dir, \
33 intl \
34 intl-csharp \
35 intl-java \
36 its \
37 gnulib-lib \
38 gnulib-local \
39 lib \
40 $$$$(SUBDIR_libasprintf) \
41 libgettextpo \
42 libgrep \
43 libtextstyle \
44 m4 \
45 misc \
46 po \
47 projects \
48 src \
49 styles \
50 gettext-runtime \
51 gettext-tools \
52 ,$$$$(wildcard $$$$(dir)) )
53
54 PKG_MAKEFILES_FAKE:= \
55 gnulib-local/m4/Makefile \
56 libtextstyle/gnulib-local/Makefile \
57 libtextstyle/m4/Makefile \
58 m4/Makefile
59
60 include $(INCLUDE_DIR)/package.mk
61 include $(INCLUDE_DIR)/host-build.mk
62
63 define Package/libintl-full
64 SECTION:=libs
65 CATEGORY:=Libraries
66 TITLE:=GNU Internationalization library
67 URL:=http://www.gnu.org/software/gettext/
68 ABI_VERSION:=8
69 endef
70
71 export GNULIB_SRCDIR:=$(HOST_GNULIB_SRCDIR)
72
73 TARGET_CFLAGS += $(FPIC)
74 ifneq ($(HOST_OS),Linux)
75 TARGET_CFLAGS += -I$(STAGING_DIR_HOSTPKG)/include
76 endif
77
78 CONFIGURE_ARGS += \
79 --enable-shared \
80 --enable-static \
81 --disable-libasprintf \
82 --disable-rpath \
83 --enable-nls \
84 --disable-java \
85 --disable-openmp \
86 --disable-curses \
87 --with-included-gettext \
88 --without-libintl-prefix \
89 --without-libexpat-prefix \
90 --with-libxml2-prefix=$(STAGING_DIR) \
91 --without-emacs
92
93 HOST_CONFIGURE_ARGS += \
94 --disable-shared \
95 --enable-static \
96 --disable-libasprintf \
97 --disable-rpath \
98 --disable-java \
99 --disable-openmp \
100 --without-emacs \
101 --with-libxml2-prefix=$(STAGING_DIR_HOSTPKG)
102
103 HOST_CONFIGURE_VARS += \
104 EMACS="no" \
105 am_cv_lib_iconv=no \
106 am_cv_func_iconv=no \
107 ac_cv_header_iconv_h=no \
108
109 HOST_CFLAGS += $(HOST_FPIC)
110
111 define Host/Bootstrap
112 ( \
113 cd $(HOST_BUILD_DIR); \
114 $(AM_TOOL_PATHS) \
115 ./autogen.sh \
116 )
117 endef
118
119 define Host/Prepare
120 $(call Host/Prepare/Default)
121 $(if $(QUILT),,$(call Host/Bootstrap))
122 endef
123
124 define Host/Configure
125 $(if $(QUILT),$(call Host/Bootstrap))
126 $(call Host/Configure/Default)
127 endef
128
129 define Host/Compile
130 $(foreach makefile,$(PKG_MAKEFILES_FAKE),printf '%s\n%s\n' 'all:' 'install:' > $(HOST_BUILD_DIR)/$(makefile); )
131 $(call Host/Compile/Default,SUBDIRS='$(PKG_SUBDIRS)')
132 endef
133
134 define Build/Bootstrap
135 ( \
136 cd $(PKG_BUILD_DIR); \
137 $(AM_TOOL_PATHS) \
138 ./autogen.sh \
139 )
140 endef
141
142 define Build/Prepare
143 $(call Build/Prepare/Default)
144 $(if $(QUILT),,$(call Build/Bootstrap))
145 endef
146
147 define Build/Configure
148 $(if $(QUILT),$(call Build/Bootstrap))
149 $(call Build/Configure/Default)
150 endef
151
152 define Build/Compile
153 $(foreach makefile,$(PKG_MAKEFILES_FAKE),printf '%s\n%s\n' 'all:' 'install:' > $(PKG_BUILD_DIR)/$(makefile); )
154 $(call Build/Compile/Default,SUBDIRS='$(PKG_SUBDIRS)')
155 endef
156
157 define Build/InstallDev
158 $(INSTALL_DIR) $(1)/usr/lib/libintl-full/include
159 $(CP) $(PKG_INSTALL_DIR)/usr/include/libintl.h $(1)/usr/lib/libintl-full/include/
160
161 $(INSTALL_DIR) $(1)/usr/lib/libintl-full/lib
162 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libintl.{a,so*} $(1)/usr/lib/libintl-full/lib/
163
164 $(INSTALL_DIR) $(1)/usr/share/aclocal
165 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/aclocal/* $(1)/usr/share/aclocal/
166
167 $(SED) '/read dummy/d' $(STAGING_DIR_HOSTPKG)/bin/gettextize
168 endef
169
170 define Host/Install
171 $(call Host/Compile/Default,install SUBDIRS='$(PKG_SUBDIRS)')
172 $(LN) msgfmt $(STAGING_DIR_HOSTPKG)/bin/gmsgfmt
173 endef
174
175 define Build/Install
176 $(call Build/Install/Default,install SUBDIRS='$(PKG_SUBDIRS)')
177 endef
178
179 define Package/libintl-full/install
180 $(INSTALL_DIR) $(1)/usr/lib
181 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libintl.so.* $(1)/usr/lib/
182 endef
183
184 $(eval $(call HostBuild))
185 $(eval $(call BuildPackage,libintl-full))