]> git.ipfire.org Git - ipfire-3.x.git/blob - gettext/gettext.nm
json-c: Update to version 0.17-20230812
[ipfire-3.x.git] / gettext / gettext.nm
1 ###############################################################################
2 # IPFire.org - An Open Source Firewall Solution #
3 # Copyright (C) - IPFire Development Team <info@ipfire.org> #
4 ###############################################################################
5
6 name = gettext
7 version = 0.21.1
8 release = 5.1
9
10 groups = System/Base
11 url = https://www.gnu.org/software/gettext/
12 license = GPLv3 LGPL2+
13 summary = GNU libraries and utilities for producing multi-lingual messages.
14
15 description
16 The GNU gettext package provides a set of tools and documentation for
17 producing multi-lingual messages in programs. Tools include a set of
18 conventions about how programs should be written to support message
19 catalogs, a directory and file naming organization for the message
20 catalogs, a runtime library which supports the retrieval of translated
21 messages, and stand-alone programs for handling the translatable and
22 the already translated strings. Gettext provides an easy to use
23 library and tools for creating, using, and modifying natural language
24 catalogs and is a powerful and simple method for internationalizing
25 programs.
26 end
27
28 source_dl = https://ftp.gnu.org/pub/gnu/gettext/
29 sources = %{thisapp}.tar.xz
30
31 build
32 requires
33 bison
34 expat-devel
35 glib2-devel
36 libunistring-devel
37 libxml2-devel
38 ncurses-devel
39 patchelf
40 end
41
42 configure_options += \
43 --disable-static \
44 --enable-shared \
45 --disable-rpath
46
47 configure_cmds
48 # Add additional compiler flages to build gettext-tools binaries with
49 # proper hardening.
50 sed -i '/^CFLAGS =/ s/$/ -fno-builtin-exit -D__noreturn__=/' \
51 %{DIR_APP}/gettext-tools/src/Makefile
52 end
53
54 test
55 make check || :
56 end
57
58 install_cmds
59 # cleanup rpaths
60 for i in $(find %{BUILDROOT}%{bindir} %{BUILDROOT}%{libdir} -type f); do
61 if file ${i} | grep "ELF 64-bit" >/dev/null; then
62 patchelf --remove-rpath ${i}
63 fi
64 done
65
66 # Fix library permissions.
67 chmod 755 %{BUILDROOT}%{libdir}/preloadable_libintl.so
68
69 # Remove examples.
70 rm -rvf %{BUILDROOT}%{docdir}/%{name}/examples
71
72 # Gettext provides only a HTML documentation, so we
73 # safely can drop the remaining doc directory.
74 rm -rvf %{BUILDROOT}%{docdir}
75
76 # Drop trigger and team-address files for GNOME, KDE and TP projects
77 rm -rvf %{BUILDROOT}%{datadir}/%{name}/projects
78 end
79 end
80
81 packages
82 package %{name}
83 provides
84 bundled(gnulib)
85 bundled(libcroco) = 0.6.12
86 end
87
88 filter_requires = (Shell)
89 end
90
91 package %{name}-common-devel
92 summary = Common development files for gettext.
93 description = %{summary}
94 arch = noarch
95
96 files
97 /usr/share/gettext/
98 end
99
100 filter_requires = (Shell)
101 end
102
103 package %{name}-devel
104 template DEVEL
105
106 requires
107 gettext-common-devel=%{thisver}
108 gettext-libs=%{thisver}
109 git
110 end
111
112 filter_requires = (Shell)
113
114 files += \
115 /usr/bin/autopoint \
116 /usr/share/man/man1/autopoint.1
117 end
118
119 package %{name}-libs
120 template LIBS
121
122 filter_requires = (Shell)
123
124 files
125 %{libdir}/libgettextlib-*.so
126 %{libdir}/libgettextpo.so.*
127 %{libdir}/libgettextsrc-*.so
128 %{libdir}/preloadable_libintl.so
129 end
130 end
131
132 package %{name}-debuginfo
133 template DEBUGINFO
134 end
135 end