1# 2# "$Id: Makefile 11560 2014-02-06 20:10:19Z msweet $" 3# 4# Locale file makefile for CUPS. 5# 6# Copyright 2007-2014 by Apple Inc. 7# Copyright 1993-2007 by Easy Software Products. 8# 9# These coded instructions, statements, and computer programs are the 10# property of Apple Inc. and are protected by Federal copyright 11# law. Distribution and use rights are outlined in the file "LICENSE.txt" 12# which should have been included with this file. If this file is 13# file is missing or damaged, see the license at "http://www.cups.org/". 14# 15 16include ../Makedefs 17 18 19OBJS = checkpo.o po2strings.o strings2po.o 20TARGETS = checkpo po2strings strings2po 21 22 23# 24# Make everything... 25# 26 27all: $(TARGETS) 28 29 30# 31# Make library targets... 32# 33 34libs: 35 36 37# 38# Make unit tests... 39# 40 41unittests: 42 43 44# 45# Clean all config and object files... 46# 47 48clean: 49 $(RM) $(TARGETS) $(OBJS) 50 51 52# 53# Update dependencies (without system header dependencies...) 54# 55 56depend: 57 $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies 58 59 60# 61# Install all targets... 62# 63 64install: all install-data install-headers install-libs install-exec 65 66 67# 68# Install data files... 69# 70 71install-data: $(INSTALL_LANGUAGES) 72 73install-languages: 74 $(INSTALL_DIR) -m 755 $(LOCALEDIR) 75 for loc in $(LANGUAGES) ; do \ 76 if test -f cups_$$loc.po; then \ 77 $(INSTALL_DIR) -m 755 $(LOCALEDIR)/$$loc ; \ 78 $(INSTALL_DATA) cups_$$loc.po $(LOCALEDIR)/$$loc/cups_$$loc.po ; \ 79 fi ; \ 80 done 81 82install-langbundle: po2strings 83 $(INSTALL_DIR) -m 755 "$(BUILDROOT)$(BUNDLEDIR)/Resources/English.lproj" 84 $(INSTALL_DATA) cups.strings "$(BUILDROOT)$(BUNDLEDIR)/Resources/English.lproj" 85 86 87# 88# Install programs... 89# 90 91install-exec: 92 93 94# 95# Install headers... 96# 97 98install-headers: 99 100 101# 102# Install libraries... 103# 104 105install-libs: 106 107 108# 109# Uninstall files... 110# 111 112uninstall: $(UNINSTALL_LANGUAGES) 113 114uninstall-languages: 115 -for loc in $(LANGUAGES) ; do \ 116 $(RM) $(LOCALEDIR)/$$loc/cups_$$loc.po ; \ 117 done 118 119uninstall-langbundle: 120 $(RM) "$(BUILDROOT)$(BUNDLEDIR)/Resources/English.lproj/cups.strings" 121 122 123# 124# pot - Creates/updates the cups.pot template file, merges changes into existing 125# message catalogs, and updates the cups.strings file. We don't use 126# xgettext to update the cups.strings file due to known xgettext bugs. 127# 128 129pot: checkpo po2strings 130 echo Updating cups.pot... 131 mv cups.pot cups.pot.bck 132 touch cups.pot 133 cd ..; xgettext -o locale/cups.pot -cTRANSLATORS -s \ 134 --keyword=_ --no-wrap \ 135 --copyright-holder="Apple Inc." \ 136 --package-name="CUPS" --package-version="1.6" \ 137 --msgid-bugs-address="http://www.cups.org/str.php" \ 138 */*.c */*.cxx 139 (cat cups.header; tail +6 cups.pot; cat cups.footer) > cups.pot.N 140 mv cups.pot.N cups.pot 141 echo Checking cups.pot... 142 ./checkpo cups.pot 143 for loc in *.po ; do \ 144 if test $$loc = '*.po'; then \ 145 break; \ 146 fi; \ 147 echo Merging changes into $$loc... ; \ 148 msgmerge -o $$loc -s -N --no-location $$loc cups.pot ; \ 149 done 150 echo Updating cups.strings... 151 ./po2strings cups.pot cups.strings 152 153 154# 155# checkpo - A simple utility to check PO files for correct translation 156# strings. Dependency on static library is deliberate. 157# 158# checkpo filename.po [... filenameN.po] 159# 160 161checkpo: checkpo.o ../cups/$(LIBCUPSSTATIC) 162 echo Linking $<... 163 $(CC) $(ARCHFLAGS) $(LDFLAGS) -o checkpo checkpo.o \ 164 ../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \ 165 $(COMMONLIBS) $(LIBZ) 166 167checkall: checkpo 168 for file in *.po; do \ 169 ./checkpo $$file; \ 170 done 171 172 173# 174# po2strings - A simple utility which uses iconv to convert GNU gettext 175# message catalogs to OS X .strings files. 176# 177# po2strings filename.po filename.strings 178# 179 180po2strings: po2strings.o ../cups/$(LIBCUPSSTATIC) 181 echo Linking $<... 182 $(CC) $(ARCHFLAGS) $(LDFLAGS) -o po2strings po2strings.o \ 183 ../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \ 184 $(COMMONLIBS) $(LIBZ) 185 186 187# 188# strings2po - A simple utility which uses iconv to convert OS X .strings files 189# to GNU gettext message catalogs. 190# 191# strings2po filename.strings filename.po 192# 193 194strings2po: strings2po.o 195 echo Linking $<... 196 $(CC) $(ARCHFLAGS) $(LDFLAGS) -o strings2po strings2po.o 197 198 199# 200# Dependencies... 201# 202 203include Dependencies 204 205 206# 207# End of "$Id: Makefile 11560 2014-02-06 20:10:19Z msweet $". 208# 209