]> git.ipfire.org Git - thirdparty/cups.git/blob - locale/Makefile
Update more IPP strings.
[thirdparty/cups.git] / locale / Makefile
1 #
2 # Locale file makefile for CUPS.
3 #
4 # Copyright © 2007-2019 by Apple Inc.
5 # Copyright © 1993-2007 by Easy Software Products.
6 #
7 # Licensed under Apache License v2.0. See the file "LICENSE" for more
8 # information.
9 #
10
11 include ../Makedefs
12
13
14 OBJS = checkpo.o po2strings.o strings2po.o
15 TARGETS = checkpo po2strings strings2po
16
17
18 #
19 # Make everything...
20 #
21
22 all: $(TARGETS)
23
24
25 #
26 # Make library targets...
27 #
28
29 libs:
30
31
32 #
33 # Make unit tests...
34 #
35
36 unittests:
37
38
39 #
40 # Clean all config and object files...
41 #
42
43 clean:
44 $(RM) $(TARGETS) $(OBJS)
45
46
47 #
48 # Update dependencies (without system header dependencies...)
49 #
50
51 depend:
52 $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
53
54
55 #
56 # Install all targets...
57 #
58
59 install: all install-data install-headers install-libs install-exec
60
61
62 #
63 # Install data files...
64 #
65
66 install-data: $(INSTALL_LANGUAGES)
67
68 install-languages:
69 $(INSTALL_DIR) -m 755 $(LOCALEDIR)
70 for loc in en $(LANGUAGES) ; do \
71 if test -f cups_$$loc.po; then \
72 $(INSTALL_DIR) -m 755 $(LOCALEDIR)/$$loc ; \
73 $(INSTALL_DATA) cups_$$loc.po $(LOCALEDIR)/$$loc/cups_$$loc.po ; \
74 fi ; \
75 done
76
77 install-langbundle:
78 $(INSTALL_DIR) -m 755 "$(BUILDROOT)$(RESOURCEDIR)"
79 $(INSTALL_DATA) cups.strings "$(BUILDROOT)$(RESOURCEDIR)"
80
81
82 #
83 # Install programs...
84 #
85
86 install-exec:
87
88
89 #
90 # Install headers...
91 #
92
93 install-headers:
94
95
96 #
97 # Install libraries...
98 #
99
100 install-libs:
101
102
103 #
104 # Uninstall files...
105 #
106
107 uninstall: $(UNINSTALL_LANGUAGES)
108
109 uninstall-languages:
110 -for loc in en $(LANGUAGES) ; do \
111 $(RM) $(LOCALEDIR)/$$loc/cups_$$loc.po ; \
112 done
113
114 uninstall-langbundle:
115 $(RM) "$(BUILDROOT)$(RESOURCEDIR)/cups.strings"
116
117
118 #
119 # pot - Creates/updates the cups.pot template file, merges changes into existing
120 # message catalogs, and updates the cups.strings file. We don't use
121 # xgettext to update the cups.strings file due to known xgettext bugs.
122 #
123
124 pot: checkpo po2strings
125 echo Updating cups.pot...
126 mv cups.pot cups.pot.bck
127 touch cups.pot
128 cd ..; xgettext -o locale/cups.pot -cTRANSLATORS -s \
129 --keyword=_ --no-wrap --from-code utf-8 \
130 --copyright-holder="Apple Inc." \
131 --package-name="CUPS" --package-version="$(CUPS_VERSION)" \
132 --msgid-bugs-address="https://github.com/apple/cups/issues" \
133 */*.c */*.cxx
134 (cat cups.header; tail +6 cups.pot) > cups.pot.N
135 mv cups.pot.N cups.pot
136 echo Checking cups.pot...
137 ./checkpo cups.pot
138 for loc in *.po ; do \
139 if test $$loc = '*.po'; then \
140 break; \
141 fi; \
142 echo Merging changes into $$loc... ; \
143 msgmerge -o $$loc -s -N --no-location $$loc cups.pot ; \
144 done
145 echo Updating cups.strings...
146 ./po2strings cups_en.po cups.strings
147
148 cups.strings: cups_en.po po2strings
149 echo Updating cups.strings...
150 ./po2strings cups_en.po cups.strings
151
152
153 #
154 # checkpo - A simple utility to check PO files for correct translation
155 # strings. Dependency on static library is deliberate.
156 #
157 # checkpo filename.po [... filenameN.po]
158 #
159
160 checkpo: checkpo.o ../cups/$(LIBCUPSSTATIC)
161 echo Linking $@...
162 $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o checkpo checkpo.o \
163 $(LINKCUPSSTATIC)
164 $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
165
166 checkall: checkpo
167 ./checkpo *.po *.strings
168
169
170 #
171 # po2strings - A simple utility which uses iconv to convert GNU gettext
172 # message catalogs to macOS .strings files.
173 #
174 # po2strings filename.po filename.strings
175 #
176
177 po2strings: po2strings.o ../cups/$(LIBCUPSSTATIC)
178 echo Linking $@...
179 $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o po2strings po2strings.o \
180 $(LINKCUPSSTATIC)
181 $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
182
183
184 #
185 # strings2po - A simple utility which uses iconv to convert macOS .strings files
186 # to GNU gettext message catalogs.
187 #
188 # strings2po filename.strings filename.po
189 #
190
191 strings2po: strings2po.o
192 echo Linking $@...
193 $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o strings2po strings2po.o
194 $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
195
196
197 #
198 # Dependencies...
199 #
200
201 include Dependencies