cups/locale/Makefile

190 lines
3.5 KiB
Makefile
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#
# Locale file makefile for CUPS.
#
# Copyright © 2021-2023 by OpenPrinting.
# Copyright © 2007-2019 by Apple Inc.
# Copyright © 1993-2007 by Easy Software Products.
#
# Licensed under Apache License v2.0. See the file "LICENSE" for more
# information.
#
include ../Makedefs
OBJS = checkpo.o po2strings.o
TARGETS = checkpo po2strings
#
# Make everything...
#
all: $(TARGETS)
#
# Make library targets...
#
libs:
#
# Make unit tests...
#
unittests:
#
# Clean all config and object files...
#
clean:
$(RM) $(TARGETS) $(OBJS)
#
# Update dependencies (without system header dependencies...)
#
depend:
$(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
#
# Install all targets...
#
install: all install-data install-headers install-libs install-exec
#
# Install data files...
#
install-data: $(INSTALL_LANGUAGES)
install-languages:
$(INSTALL_DIR) -m 755 $(LOCALEDIR)
for loc in en $(LANGUAGES) ; do \
if test -f cups_$$loc.po; then \
$(INSTALL_DIR) -m 755 $(LOCALEDIR)/$$loc ; \
$(INSTALL_DATA) cups_$$loc.po $(LOCALEDIR)/$$loc/cups_$$loc.po ; \
fi ; \
done
install-langbundle:
$(INSTALL_DIR) -m 755 "$(BUILDROOT)$(RESOURCEDIR)"
$(INSTALL_DATA) cups.strings "$(BUILDROOT)$(RESOURCEDIR)"
#
# Install programs...
#
install-exec:
#
# Install headers...
#
install-headers:
#
# Install libraries...
#
install-libs:
#
# Uninstall files...
#
uninstall: $(UNINSTALL_LANGUAGES)
uninstall-languages:
-for loc in en $(LANGUAGES) ; do \
$(RM) $(LOCALEDIR)/$$loc/cups_$$loc.po ; \
done
uninstall-langbundle:
$(RM) "$(BUILDROOT)$(RESOURCEDIR)/cups.strings"
#
# pot - Creates/updates the cups.pot template file, merges changes into existing
# message catalogs, and updates the cups.strings file. We don't use
# xgettext to update the cups.strings file due to known xgettext bugs.
#
pot: checkpo po2strings
echo Updating cups.pot...
mv cups.pot cups.pot.bck
touch cups.pot
cd ..; xgettext -o locale/cups.pot -cTRANSLATORS -s \
--keyword=_ --no-wrap --from-code utf-8 \
--copyright-holder="OpenPrinting" \
--package-name="CUPS" --package-version="$(CUPS_VERSION)" \
--msgid-bugs-address="https://github.com/openprinting/cups/issues" \
*/*.c */*.cxx
(cat cups.header; tail +6 cups.pot) > cups.pot.N
mv cups.pot.N cups.pot
echo Checking cups.pot...
./checkpo cups.pot
for loc in *.po ; do \
if test $$loc = '*.po'; then \
break; \
fi; \
echo Merging changes into $$loc... ; \
msgmerge -o $$loc -s -N --no-location $$loc cups.pot ; \
done
echo Updating cups.strings...
./po2strings cups_en.po cups.strings
cups.strings: cups_en.po po2strings
echo Updating cups.strings...
./po2strings cups_en.po cups.strings
#
# checkpo - A simple utility to check PO files for correct translation
# strings. Dependency on static library is deliberate.
#
# checkpo filename.po [... filenameN.po]
#
checkpo: checkpo.o ../cups/$(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o checkpo checkpo.o \
$(LINKCUPSSTATIC)
$(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
checkall: checkpo
./checkpo *.po *.strings
#
# po2strings - A simple utility which uses iconv to convert GNU gettext
# message catalogs to macOS .strings files.
#
# po2strings filename.po filename.strings
#
po2strings: po2strings.o ../cups/$(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o po2strings po2strings.o \
$(LINKCUPSSTATIC)
$(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
# Dependencies...
#
include Dependencies