summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWaldemar Brodkorb <mail@waldemar-brodkorb.de>2013-10-05 09:56:58 +0200
committerWaldemar Brodkorb <mail@waldemar-brodkorb.de>2013-10-05 09:56:58 +0200
commit4f1b2424a78c15e6954bbcf923ad201321672665 (patch)
tree452ab1794edd1cb1cb0ae49815ec9370752899a4
parentac8c5646edab042496ff11852505d2d1bca9b116 (diff)
parentcd459cb9dc51e6f2cace0b4b994b563f640a25f6 (diff)
Merge branch 'master' of git+ssh://openadk.org/git/openadk
-rw-r--r--package/SDL_ttf/Makefile4
-rw-r--r--package/avahi/Makefile3
-rw-r--r--package/busybox/config/networking/Config.in2
-rw-r--r--package/cifs-utils/Makefile10
-rw-r--r--package/gettext-tiny/Makefile7
-rw-r--r--package/gettext-tiny/patches/patch-Makefile37
-rw-r--r--package/gettext-tiny/src/LICENSE21
-rw-r--r--package/gettext-tiny/src/Makefile73
-rwxr-xr-xpackage/gettext-tiny/src/create-dist.sh21
-rw-r--r--package/gettext-tiny/src/docs/gettext.html18036
-rw-r--r--package/gettext-tiny/src/docs/msgfmt.txt74
-rw-r--r--package/gettext-tiny/src/docs/msgmerge.txt81
-rw-r--r--package/gettext-tiny/src/docs/xgettext.txt101
-rw-r--r--package/gettext-tiny/src/include/libintl.h61
-rw-r--r--package/gettext-tiny/src/libintl/libintl.c82
-rw-r--r--package/gettext-tiny/src/src/StringEscape.c111
-rw-r--r--package/gettext-tiny/src/src/StringEscape.h7
-rw-r--r--package/gettext-tiny/src/src/msgfmt.c278
-rw-r--r--package/gettext-tiny/src/src/msgmerge.c222
-rw-r--r--package/gettext-tiny/src/src/poparser.c144
-rw-r--r--package/gettext-tiny/src/src/poparser.h36
-rwxr-xr-xpackage/gettext-tiny/src/src/xgettext.sh112
-rw-r--r--package/git/Makefile2
-rw-r--r--package/git/patches/git-uclibc.patch108
-rw-r--r--package/glib/Makefile4
-rw-r--r--package/krb5/Makefile3
-rw-r--r--package/libdaemon/Makefile3
-rw-r--r--package/libvpx/Makefile7
-rw-r--r--package/mplayer/Makefile9
-rw-r--r--package/pcre/Makefile3
-rw-r--r--package/xfsprogs/Makefile2
-rw-r--r--scripts/scan-pkgs.sh14
32 files changed, 189 insertions, 19489 deletions
diff --git a/package/SDL_ttf/Makefile b/package/SDL_ttf/Makefile
index 9d7cdf971..68e60aaf9 100644
--- a/package/SDL_ttf/Makefile
+++ b/package/SDL_ttf/Makefile
@@ -10,7 +10,7 @@ PKG_MD5SUM:= 814e6e17e8879254208d23b3b7e0354b
PKG_DESCR:= TrueType fonts in your SDL applications
PKG_SECTION:= libs
PKG_DEPENDS:= libsdl libfreetype
-PKG_BUILDDEP:= sdl freetype
+PKG_BUILDDEP:= sdl freetype gettext-tiny
PKG_URL:= http://www.libsdl.org/projects/SDL_ttf/
PKG_SITES:= http://www.libsdl.org/projects/SDL_ttf/release/
@@ -23,8 +23,6 @@ include $(TOPDIR)/mk/package.mk
$(eval $(call PKG_template,LIBSDL_TTF,libsdl-ttf,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
$(eval $(call PKG_template,LIBSDL_TTF_DEV,libsdl-ttf-dev,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_LIBSDL_TTF_DEV},${PKGSC_LIBSDL_TTF_DEV}))
-TARGET_LDFLAGS+= -lintl
-
libsdl-ttf-install:
$(INSTALL_DIR) $(IDIR_LIBSDL_TTF)/usr/lib
$(CP) $(WRKINST)/usr/lib/libSDL_ttf*so* $(IDIR_LIBSDL_TTF)/usr/lib
diff --git a/package/avahi/Makefile b/package/avahi/Makefile
index 6dae612ba..6e5330aac 100644
--- a/package/avahi/Makefile
+++ b/package/avahi/Makefile
@@ -9,7 +9,7 @@ PKG_RELEASE:= 1
PKG_MD5SUM:= e4db89a2a403ff4c47d66ac66fad1f43
PKG_DESCR:= mDNS daemon
PKG_SECTION:= dhcp
-PKG_BUILDDEP:= libdaemon expat gdbm glib gettext gtk+ dbus
+PKG_BUILDDEP:= libdaemon expat gdbm glib gettext-tiny gtk+ dbus
PKG_URL:= http://avahi.org/
PKG_SITES:= http://avahi.org/download/
PKG_NEED_CXX:= 1
@@ -27,7 +27,6 @@ $(eval $(call PKG_template,AVAHI_DAEMON,avahi-daemon,${PKG_VERSION}-${PKG_RELEAS
$(eval $(call PKG_template,AVAHI_DNSCONFD,avahi-dnsconfd,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_AVAHI_DNSCONFD},${PKGSD_AVAHI_DNSCONFD},${PKG_SECTION}))
$(eval $(call PKG_template,LIBAVAHI,libavahi,${PKG_VERSION}-${PKG_RELEASE},,${PKGSD_LIBAVAHI},${PKGSC_LIBAVAHI}))
-TARGET_LDFLAGS+= -lintl
CONFIGURE_ARGS+= --enable-glib \
--enable-gtk2 \
--enable-libdaemon \
diff --git a/package/busybox/config/networking/Config.in b/package/busybox/config/networking/Config.in
index 0ca0c3525..fcd6c33ea 100644
--- a/package/busybox/config/networking/Config.in
+++ b/package/busybox/config/networking/Config.in
@@ -748,7 +748,7 @@ config BUSYBOX_NSLOOKUP
config BUSYBOX_NTPD
bool "ntpd"
depends on !ADK_PACKAGE_OPENNTPD
- default n
+ default y
select BUSYBOX_PLATFORM_LINUX
help
The NTP client/server daemon.
diff --git a/package/cifs-utils/Makefile b/package/cifs-utils/Makefile
index 83931e810..4798a03a8 100644
--- a/package/cifs-utils/Makefile
+++ b/package/cifs-utils/Makefile
@@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:= cifs-utils
PKG_VERSION:= 6.1
-PKG_RELEASE:= 1
+PKG_RELEASE:= 2
PKG_MD5SUM:= f83ef48ab1154aa74dd4cf1c1202bf04
PKG_DESCR:= CIFS utilities
PKG_SECTION:= net/fs
@@ -19,9 +19,15 @@ include $(TOPDIR)/mk/package.mk
$(eval $(call PKG_template,CIFS_UTILS,cifs-utils,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+ifeq ($(ADK_STATIC),y)
+TARGET_LDFLAGS+= -static
+endif
+
CONFIGURE_ARGS+= --disable-cifsupcall \
--disable-cifsidmap \
- --disable-cifsacl
+ --disable-cifsacl \
+ --disable-pie \
+ --disable-systemd
cifs-utils-install:
$(INSTALL_DIR) $(IDIR_CIFS_UTILS)/usr/sbin
diff --git a/package/gettext-tiny/Makefile b/package/gettext-tiny/Makefile
index a61061cd6..181e5f974 100644
--- a/package/gettext-tiny/Makefile
+++ b/package/gettext-tiny/Makefile
@@ -4,14 +4,15 @@
include $(TOPDIR)/rules.mk
PKG_NAME:= gettext-tiny
-PKG_VERSION:= 0.1
+PKG_VERSION:= 0.0.3
PKG_RELEASE:= 1
+PKG_MD5SUM:= 3af6fd8a9042603b61f634b1c6f49e7e
PKG_DESCR:= Gettext stub and replacement
PKG_SECTION:= libs
PKG_URL:= https://github.com/rofl0r/gettext-tiny
+PKG_SITES:= http://ftp.barfooze.de/pub/sabotage/tarballs/
-WRKDIST= ${WRKDIR}/${PKG_NAME}-${PKG_VERSION}
-NO_DISTFILES:= 1
+DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.bz2
include $(TOPDIR)/mk/package.mk
diff --git a/package/gettext-tiny/patches/patch-Makefile b/package/gettext-tiny/patches/patch-Makefile
new file mode 100644
index 000000000..45cbae4dc
--- /dev/null
+++ b/package/gettext-tiny/patches/patch-Makefile
@@ -0,0 +1,37 @@
+--- gettext-tiny-0.0.3.orig/Makefile 2013-06-30 06:48:42.000000000 +0200
++++ gettext-tiny-0.0.3/Makefile 2013-10-04 11:58:03.000000000 +0200
+@@ -1,4 +1,4 @@
+-prefix=/usr/local
++prefix=/usr
+ bindir=$(prefix)/bin
+ includedir=$(prefix)/include
+ libdir=$(prefix)/lib
+@@ -19,7 +19,7 @@ ALL_INCLUDES = $(HEADERS)
+ ALL_LIBS=libintl.a
+ ALL_TOOLS=msgfmt msgmerge xgettext
+
+-CFLAGS=-O0 -fPIC
++CFLAGS?=-O0 -fPIC
+
+ AR ?= $(CROSS_COMPILE)ar
+ RANLIB ?= $(CROSS_COMPILE)ranlib
+@@ -56,13 +56,16 @@ xgettext:
+ cp src/xgettext.sh ./xgettext
+
+ $(DESTDIR)$(libdir)/%.a: %.a
+- install -D -m 755 $< $@
++ mkdir -p $(DESTDIR)$(libdir)
++ install -m 755 $< $@
+
+ $(DESTDIR)$(includedir)/%.h: include/%.h
+- install -D -m 644 $< $@
++ mkdir -p $(DESTDIR)$(includedir)
++ install -m 644 $< $@
+
+ $(DESTDIR)$(bindir)/%: %
+- install -D -m 755 $< $@
++ mkdir -p $(DESTDIR)$(bindir)
++ install -m 755 $< $@
+
+ .PHONY: all clean install
+
diff --git a/package/gettext-tiny/src/LICENSE b/package/gettext-tiny/src/LICENSE
deleted file mode 100644
index 465ec8a88..000000000
--- a/package/gettext-tiny/src/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-Copyright (C) 2012 rofl0r
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
diff --git a/package/gettext-tiny/src/Makefile b/package/gettext-tiny/src/Makefile
deleted file mode 100644
index 6709ad1e8..000000000
--- a/package/gettext-tiny/src/Makefile
+++ /dev/null
@@ -1,73 +0,0 @@
-prefix=/usr
-bindir=$(prefix)/bin
-includedir=$(prefix)/include
-libdir=$(prefix)/lib
-sysconfdir=$(prefix)/etc
-
-LIBSRC = $(sort $(wildcard libintl/*.c))
-PROGSRC = $(sort $(wildcard src/*.c))
-
-PARSEROBJS = src/poparser.o src/StringEscape.o
-PROGOBJS = $(PROGSRC:.c=.o)
-LIBOBJS = $(LIBSRC:.c=.o)
-OBJS = $(PROGOBJS) $(LIBOBJS)
-
-
-HEADERS = libintl.h
-ALL_INCLUDES = $(HEADERS)
-
-ALL_LIBS=libintl.a
-ALL_TOOLS=msgfmt msgmerge xgettext
-
-CFLAGS?=-O0 -fPIC
-
-AR ?= $(CROSS_COMPILE)ar
-RANLIB ?= $(CROSS_COMPILE)ranlib
-CC ?= $(CROSS_COMPILE)cc
-
--include config.mak
-
-BUILDCFLAGS=$(CFLAGS)
-
-all: $(ALL_LIBS) $(ALL_TOOLS)
-
-install: $(ALL_LIBS:lib%=$(DESTDIR)$(libdir)/lib%) $(ALL_INCLUDES:%=$(DESTDIR)$(includedir)/%) $(ALL_TOOLS:%=$(DESTDIR)$(bindir)/%)
-
-clean:
- rm -f $(ALL_LIBS)
- rm -f $(OBJS)
- rm -f $(ALL_TOOLS)
-
-%.o: %.c
- $(CC) $(BUILDCFLAGS) -c -o $@ $<
-
-libintl.a: $(LIBOBJS)
- rm -f $@
- $(AR) rc $@ $(LIBOBJS)
- $(RANLIB) $@
-
-msgmerge: $(OBJS)
- $(CC) $(LDFLAGS) -static -o $@ src/msgmerge.o $(PARSEROBJS)
-
-msgfmt: $(OBJS)
- $(CC) $(LDFLAGS) -static -o $@ src/msgfmt.o $(PARSEROBJS)
-
-xgettext:
- cp src/xgettext.sh ./xgettext
-
-$(DESTDIR)$(libdir)/%.a: %.a
- mkdir -p $(DESTDIR)$(libdir)
- install -m 755 $< $@
-
-$(DESTDIR)$(includedir)/%.h: include/%.h
- mkdir -p $(DESTDIR)$(includedir)
- install -m 644 $< $@
-
-$(DESTDIR)$(bindir)/%: %
- mkdir -p $(DESTDIR)$(bindir)
- install -m 755 $< $@
-
-.PHONY: all clean install
-
-
-
diff --git a/package/gettext-tiny/src/create-dist.sh b/package/gettext-tiny/src/create-dist.sh
deleted file mode 100755
index b1d1b7a89..000000000
--- a/package/gettext-tiny/src/create-dist.sh
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/bin/sh
-if [[ -z "$VER" ]] ; then
- echo set VER!
- exit
-fi
-me=`pwd`
-
-proj=gettext-tiny
-projver=${proj}-${VER}
-
-tempdir=/tmp/${proj}-0000
-rm -rf $tempdir
-mkdir -p $tempdir
-
-cd $tempdir
-git clone http://github.com/rofl0r/$proj $projver
-rm -rf $projver/.git
-rm -rf $projver/docs
-
-tar cjf $proj.tar.bz2 $projver/
-mv $proj.tar.bz2 $me/$projver.tar.bz2
diff --git a/package/gettext-tiny/src/docs/gettext.html b/package/gettext-tiny/src/docs/gettext.html
deleted file mode 100644
index 05d4c9c43..000000000
--- a/package/gettext-tiny/src/docs/gettext.html
+++ /dev/null
@@ -1,18036 +0,0 @@
-<html lang="en">
-<head>
-<title>GNU `gettext' utilities</title>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
-<meta name="description" content="GNU `gettext' utilities">
-<meta name="generator" content="makeinfo 4.13">
-<link title="Top" rel="top" href="#Top">
-<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
-<meta http-equiv="Content-Style-Type" content="text/css">
-<style type="text/css"><!--
- pre.display { font-family:inherit }
- pre.format { font-family:inherit }
- pre.smalldisplay { font-family:inherit; font-size:smaller }
- pre.smallformat { font-family:inherit; font-size:smaller }
- pre.smallexample { font-size:smaller }
- pre.smalllisp { font-size:smaller }
- span.sc { font-variant:small-caps }
- span.roman { font-family:serif; font-weight:normal; }
- span.sansserif { font-family:sans-serif; font-weight:normal; }
---></style>
-</head>
-<body>
-<h1 class="settitle">GNU `gettext' utilities</h1>
- <div class="contents">
-<h2>Table of Contents</h2>
-<ul>
-<li><a name="toc_Top" href="#Top">GNU <code>gettext</code> utilities</a>
-<li><a name="toc_Introduction" href="#Introduction">1 Introduction</a>
-<ul>
-<li><a href="#Why">1.1 The Purpose of GNU <code>gettext</code></a>
-<li><a href="#Concepts">1.2 I18n, L10n, and Such</a>
-<li><a href="#Aspects">1.3 Aspects in Native Language Support</a>
-<li><a href="#Files">1.4 Files Conveying Translations</a>
-<li><a href="#Overview">1.5 Overview of GNU <code>gettext</code></a>
-</li></ul>
-<li><a name="toc_Users" href="#Users">2 The User's View</a>
-<ul>
-<li><a href="#System-Installation">2.1 Operating System Installation</a>
-<li><a href="#Setting-the-GUI-Locale">2.2 Setting the Locale Used by GUI Programs</a>
-<li><a href="#Setting-the-POSIX-Locale">2.3 Setting the Locale through Environment Variables</a>
-<ul>
-<li><a href="#Locale-Names">2.3.1 Locale Names</a>
-<li><a href="#Locale-Environment-Variables">2.3.2 Locale Environment Variables</a>
-<li><a href="#The-LANGUAGE-variable">2.3.3 Specifying a Priority List of Languages</a>
-</li></ul>
-<li><a href="#Installing-Localizations">2.4 Installing Translations for Particular Programs</a>
-</li></ul>
-<li><a name="toc_PO-Files" href="#PO-Files">3 The Format of PO Files</a>
-<li><a name="toc_Sources" href="#Sources">4 Preparing Program Sources</a>
-<ul>
-<li><a href="#Importing">4.1 Importing the <code>gettext</code> declaration</a>
-<li><a href="#Triggering">4.2 Triggering <code>gettext</code> Operations</a>
-<li><a href="#Preparing-Strings">4.3 Preparing Translatable Strings</a>
-<li><a href="#Mark-Keywords">4.4 How Marks Appear in Sources</a>
-<li><a href="#Marking">4.5 Marking Translatable Strings</a>
-<li><a href="#c_002dformat-Flag">4.6 Special Comments preceding Keywords</a>
-<li><a href="#Special-cases">4.7 Special Cases of Translatable Strings</a>
-<li><a href="#Bug-Report-Address">4.8 Letting Users Report Translation Bugs</a>
-<li><a href="#Names">4.9 Marking Proper Names for Translation</a>
-<li><a href="#Libraries">4.10 Preparing Library Sources</a>
-</li></ul>
-<li><a name="toc_Template" href="#Template">5 Making the PO Template File</a>
-<ul>
-<li><a href="#xgettext-Invocation">5.1 Invoking the <code>xgettext</code> Program</a>
-<ul>
-<li><a href="#xgettext-Invocation">5.1.1 Input file location</a>
-<li><a href="#xgettext-Invocation">5.1.2 Output file location</a>
-<li><a href="#xgettext-Invocation">5.1.3 Choice of input file language</a>
-<li><a href="#xgettext-Invocation">5.1.4 Input file interpretation</a>
-<li><a href="#xgettext-Invocation">5.1.5 Operation mode</a>
-<li><a href="#xgettext-Invocation">5.1.6 Language specific options</a>
-<li><a href="#xgettext-Invocation">5.1.7 Output details</a>
-<li><a href="#xgettext-Invocation">5.1.8 Informative output</a>
-</li></ul>
-</li></ul>
-<li><a name="toc_Creating" href="#Creating">6 Creating a New PO File</a>
-<ul>
-<li><a href="#msginit-Invocation">6.1 Invoking the <code>msginit</code> Program</a>
-<ul>
-<li><a href="#msginit-Invocation">6.1.1 Input file location</a>
-<li><a href="#msginit-Invocation">6.1.2 Output file location</a>
-<li><a href="#msginit-Invocation">6.1.3 Input file syntax</a>
-<li><a href="#msginit-Invocation">6.1.4 Output details</a>
-<li><a href="#msginit-Invocation">6.1.5 Informative output</a>
-</li></ul>
-<li><a href="#Header-Entry">6.2 Filling in the Header Entry</a>
-</li></ul>
-<li><a name="toc_Updating" href="#Updating">7 Updating Existing PO Files</a>
-<ul>
-<li><a href="#msgmerge-Invocation">7.1 Invoking the <code>msgmerge</code> Program</a>
-<ul>
-<li><a href="#msgmerge-Invocation">7.1.1 Input file location</a>
-<li><a href="#msgmerge-Invocation">7.1.2 Operation mode</a>
-<li><a href="#msgmerge-Invocation">7.1.3 Output file location</a>
-<li><a href="#msgmerge-Invocation">7.1.4 Output file location in update mode</a>
-<li><a href="#msgmerge-Invocation">7.1.5 Operation modifiers</a>
-<li><a href="#msgmerge-Invocation">7.1.6 Input file syntax</a>
-<li><a href="#msgmerge-Invocation">7.1.7 Output details</a>
-<li><a href="#msgmerge-Invocation">7.1.8 Informative output</a>
-</li></ul>
-</li></ul>
-<li><a name="toc_Editing" href="#Editing">8 Editing PO Files</a>
-<ul>
-<li><a href="#KBabel">8.1 KDE's PO File Editor</a>
-<li><a href="#Gtranslator">8.2 GNOME's PO File Editor</a>
-<li><a href="#PO-Mode">8.3 Emacs's PO File Editor</a>
-<ul>
-<li><a href="#Installation">8.3.1 Completing GNU <code>gettext</code> Installation</a>
-<li><a href="#Main-PO-Commands">8.3.2 Main PO mode Commands</a>
-<li><a href="#Entry-Positioning">8.3.3 Entry Positioning</a>
-<li><a href="#Normalizing">8.3.4 Normalizing Strings in Entries</a>
-<li><a href="#Translated-Entries">8.3.5 Translated Entries</a>
-<li><a href="#Fuzzy-Entries">8.3.6 Fuzzy Entries</a>
-<li><a href="#Untranslated-Entries">8.3.7 Untranslated Entries</a>
-<li><a href="#Obsolete-Entries">8.3.8 Obsolete Entries</a>
-<li><a href="#Modifying-Translations">8.3.9 Modifying Translations</a>
-<li><a href="#Modifying-Comments">8.3.10 Modifying Comments</a>
-<li><a href="#Subedit">8.3.11 Details of Sub Edition</a>
-<li><a href="#C-Sources-Context">8.3.12 C Sources Context</a>
-<li><a href="#Auxiliary">8.3.13 Consulting Auxiliary PO Files</a>
-</li></ul>
-<li><a href="#Compendium">8.4 Using Translation Compendia</a>
-<ul>
-<li><a href="#Creating-Compendia">8.4.1 Creating Compendia</a>
-<ul>
-<li><a href="#Creating-Compendia">8.4.1.1 Concatenate PO Files</a>
-<li><a href="#Creating-Compendia">8.4.1.2 Extract a Message Subset from a PO File</a>
-</li></ul>
-<li><a href="#Using-Compendia">8.4.2 Using Compendia</a>
-<ul>
-<li><a href="#Using-Compendia">8.4.2.1 Initialize a New Translation File</a>
-<li><a href="#Using-Compendia">8.4.2.2 Update an Existing Translation File</a>
-</li></ul>
-</li></ul>
-</li></ul>
-<li><a name="toc_Manipulating" href="#Manipulating">9 Manipulating PO Files</a>
-<ul>
-<li><a href="#msgcat-Invocation">9.1 Invoking the <code>msgcat</code> Program</a>
-<ul>
-<li><a href="#msgcat-Invocation">9.1.1 Input file location</a>
-<li><a href="#msgcat-Invocation">9.1.2 Output file location</a>
-<li><a href="#msgcat-Invocation">9.1.3 Message selection</a>
-<li><a href="#msgcat-Invocation">9.1.4 Input file syntax</a>
-<li><a href="#msgcat-Invocation">9.1.5 Output details</a>
-<li><a href="#msgcat-Invocation">9.1.6 Informative output</a>
-</li></ul>
-<li><a href="#msgconv-Invocation">9.2 Invoking the <code>msgconv</code> Program</a>
-<ul>
-<li><a href="#msgconv-Invocation">9.2.1 Input file location</a>
-<li><a href="#msgconv-Invocation">9.2.2 Output file location</a>
-<li><a href="#msgconv-Invocation">9.2.3 Conversion target</a>
-<li><a href="#msgconv-Invocation">9.2.4 Input file syntax</a>
-<li><a href="#msgconv-Invocation">9.2.5 Output details</a>
-<li><a href="#msgconv-Invocation">9.2.6 Informative output</a>
-</li></ul>
-<li><a href="#msggrep-Invocation">9.3 Invoking the <code>msggrep</code> Program</a>
-<ul>
-<li><a href="#msggrep-Invocation">9.3.1 Input file location</a>
-<li><a href="#msggrep-Invocation">9.3.2 Output file location</a>
-<li><a href="#msggrep-Invocation">9.3.3 Message selection</a>
-<li><a href="#msggrep-Invocation">9.3.4 Input file syntax</a>
-<li><a href="#msggrep-Invocation">9.3.5 Output details</a>
-<li><a href="#msggrep-Invocation">9.3.6 Informative output</a>
-<li><a href="#msggrep-Invocation">9.3.7 Examples</a>
-</li></ul>
-<li><a href="#msgfilter-Invocation">9.4 Invoking the <code>msgfilter</code> Program</a>
-<ul>
-<li><a href="#msgfilter-Invocation">9.4.1 Input file location</a>
-<li><a href="#msgfilter-Invocation">9.4.2 Output file location</a>
-<li><a href="#msgfilter-Invocation">9.4.3 The filter</a>
-<li><a href="#msgfilter-Invocation">9.4.4 Useful <var>filter-option</var>s when the <var>filter</var> is &lsquo;<samp><span class="samp">sed</span></samp>&rsquo;</a>
-<li><a href="#msgfilter-Invocation">9.4.5 Built-in <var>filter</var>s</a>
-<li><a href="#msgfilter-Invocation">9.4.6 Input file syntax</a>
-<li><a href="#msgfilter-Invocation">9.4.7 Output details</a>
-<li><a href="#msgfilter-Invocation">9.4.8 Informative output</a>
-<li><a href="#msgfilter-Invocation">9.4.9 Examples</a>
-</li></ul>
-<li><a href="#msguniq-Invocation">9.5 Invoking the <code>msguniq</code> Program</a>
-<ul>
-<li><a href="#msguniq-Invocation">9.5.1 Input file location</a>
-<li><a href="#msguniq-Invocation">9.5.2 Output file location</a>
-<li><a href="#msguniq-Invocation">9.5.3 Message selection</a>
-<li><a href="#msguniq-Invocation">9.5.4 Input file syntax</a>
-<li><a href="#msguniq-Invocation">9.5.5 Output details</a>
-<li><a href="#msguniq-Invocation">9.5.6 Informative output</a>
-</li></ul>
-<li><a href="#msgcomm-Invocation">9.6 Invoking the <code>msgcomm</code> Program</a>
-<ul>
-<li><a href="#msgcomm-Invocation">9.6.1 Input file location</a>
-<li><a href="#msgcomm-Invocation">9.6.2 Output file location</a>
-<li><a href="#msgcomm-Invocation">9.6.3 Message selection</a>
-<li><a href="#msgcomm-Invocation">9.6.4 Input file syntax</a>
-<li><a href="#msgcomm-Invocation">9.6.5 Output details</a>
-<li><a href="#msgcomm-Invocation">9.6.6 Informative output</a>
-</li></ul>
-<li><a href="#msgcmp-Invocation">9.7 Invoking the <code>msgcmp</code> Program</a>
-<ul>
-<li><a href="#msgcmp-Invocation">9.7.1 Input file location</a>
-<li><a href="#msgcmp-Invocation">9.7.2 Operation modifiers</a>
-<li><a href="#msgcmp-Invocation">9.7.3 Input file syntax</a>
-<li><a href="#msgcmp-Invocation">9.7.4 Informative output</a>
-</li></ul>
-<li><a href="#msgattrib-Invocation">9.8 Invoking the <code>msgattrib</code> Program</a>
-<ul>
-<li><a href="#msgattrib-Invocation">9.8.1 Input file location</a>
-<li><a href="#msgattrib-Invocation">9.8.2 Output file location</a>
-<li><a href="#msgattrib-Invocation">9.8.3 Message selection</a>
-<li><a href="#msgattrib-Invocation">9.8.4 Attribute manipulation</a>
-<li><a href="#msgattrib-Invocation">9.8.5 Input file syntax</a>
-<li><a href="#msgattrib-Invocation">9.8.6 Output details</a>
-<li><a href="#msgattrib-Invocation">9.8.7 Informative output</a>
-</li></ul>
-<li><a href="#msgen-Invocation">9.9 Invoking the <code>msgen</code> Program</a>
-<ul>
-<li><a href="#msgen-Invocation">9.9.1 Input file location</a>
-<li><a href="#msgen-Invocation">9.9.2 Output file location</a>
-<li><a href="#msgen-Invocation">9.9.3 Input file syntax</a>
-<li><a href="#msgen-Invocation">9.9.4 Output details</a>
-<li><a href="#msgen-Invocation">9.9.5 Informative output</a>
-</li></ul>
-<li><a href="#msgexec-Invocation">9.10 Invoking the <code>msgexec</code> Program</a>
-<ul>
-<li><a href="#msgexec-Invocation">9.10.1 Input file location</a>
-<li><a href="#msgexec-Invocation">9.10.2 Input file syntax</a>
-<li><a href="#msgexec-Invocation">9.10.3 Informative output</a>
-</li></ul>
-<li><a href="#Colorizing">9.11 Highlighting parts of PO files</a>
-<ul>
-<li><a href="#The-_002d_002dcolor-option">9.11.1 The <code>--color</code> option</a>
-<li><a href="#The-TERM-variable">9.11.2 The environment variable <code>TERM</code></a>
-<li><a href="#The-_002d_002dstyle-option">9.11.3 The <code>--style</code> option</a>
-<li><a href="#Style-rules">9.11.4 Style rules for PO files</a>
-<li><a href="#Customizing-less">9.11.5 Customizing <code>less</code> for viewing PO files</a>
-</li></ul>
-<li><a href="#libgettextpo">9.12 Writing your own programs that process PO files</a>
-</li></ul>
-<li><a name="toc_Binaries" href="#Binaries">10 Producing Binary MO Files</a>
-<ul>
-<li><a href="#msgfmt-Invocation">10.1 Invoking the <code>msgfmt</code> Program</a>
-<ul>
-<li><a href="#msgfmt-Invocation">10.1.1 Input file location</a>
-<li><a href="#msgfmt-Invocation">10.1.2 Operation mode</a>
-<li><a href="#msgfmt-Invocation">10.1.3 Output file location</a>
-<li><a href="#msgfmt-Invocation">10.1.4 Output file location in Java mode</a>
-<li><a href="#msgfmt-Invocation">10.1.5 Output file location in C# mode</a>
-<li><a href="#msgfmt-Invocation">10.1.6 Output file location in Tcl mode</a>
-<li><a href="#msgfmt-Invocation">10.1.7 Input file syntax</a>
-<li><a href="#msgfmt-Invocation">10.1.8 Input file interpretation</a>
-<li><a href="#msgfmt-Invocation">10.1.9 Output details</a>
-<li><a href="#msgfmt-Invocation">10.1.10 Informative output</a>
-</li></ul>
-<li><a href="#msgunfmt-Invocation">10.2 Invoking the <code>msgunfmt</code> Program</a>
-<ul>
-<li><a href="#msgunfmt-Invocation">10.2.1 Operation mode</a>
-<li><a href="#msgunfmt-Invocation">10.2.2 Input file location</a>
-<li><a href="#msgunfmt-Invocation">10.2.3 Input file location in Java mode</a>
-<li><a href="#msgunfmt-Invocation">10.2.4 Input file location in C# mode</a>
-<li><a href="#msgunfmt-Invocation">10.2.5 Input file location in Tcl mode</a>
-<li><a href="#msgunfmt-Invocation">10.2.6 Output file location</a>
-<li><a href="#msgunfmt-Invocation">10.2.7 Output details</a>
-<li><a href="#msgunfmt-Invocation">10.2.8 Informative output</a>
-</li></ul>
-<li><a href="#MO-Files">10.3 The Format of GNU MO Files</a>
-</li></ul>
-<li><a name="toc_Programmers" href="#Programmers">11 The Programmer's View</a>
-<ul>
-<li><a href="#catgets">11.1 About <code>catgets</code></a>
-<ul>
-<li><a href="#Interface-to-catgets">11.1.1 The Interface</a>
-<li><a href="#Problems-with-catgets">11.1.2 Problems with the <code>catgets</code> Interface?!</a>
-</li></ul>
-<li><a href="#gettext">11.2 About <code>gettext</code></a>
-<ul>
-<li><a href="#Interface-to-gettext">11.2.1 The Interface</a>
-<li><a href="#Ambiguities">11.2.2 Solving Ambiguities</a>
-<li><a href="#Locating-Catalogs">11.2.3 Locating Message Catalog Files</a>
-<li><a href="#Charset-conversion">11.2.4 How to specify the output character set <code>gettext</code> uses</a>
-<li><a href="#Contexts">11.2.5 Using contexts for solving ambiguities</a>
-<li><a href="#Plural-forms">11.2.6 Additional functions for plural forms</a>
-<li><a href="#Optimized-gettext">11.2.7 Optimization of the *gettext functions</a>
-</li></ul>
-<li><a href="#Comparison">11.3 Comparing the Two Interfaces</a>
-<li><a href="#Using-libintl_002ea">11.4 Using libintl.a in own programs</a>
-<li><a href="#gettext-grok">11.5 Being a <code>gettext</code> grok</a>
-<li><a href="#Temp-Programmers">11.6 Temporary Notes for the Programmers Chapter</a>
-<ul>
-<li><a href="#Temp-Implementations">11.6.1 Temporary - Two Possible Implementations</a>
-<li><a href="#Temp-catgets">11.6.2 Temporary - About <code>catgets</code></a>
-<li><a href="#Temp-WSI">11.6.3 Temporary - Why a single implementation</a>
-<li><a href="#Temp-Notes">11.6.4 Temporary - Notes</a>
-</li></ul>
-</li></ul>
-<li><a name="toc_Translators" href="#Translators">12 The Translator's View</a>
-<ul>
-<li><a href="#Trans-Intro-0">12.1 Introduction 0</a>
-<li><a href="#Trans-Intro-1">12.2 Introduction 1</a>
-<li><a href="#Discussions">12.3 Discussions</a>
-<li><a href="#Organization">12.4 Organization</a>
-<ul>
-<li><a href="#Central-Coordination">12.4.1 Central Coordination</a>
-<li><a href="#National-Teams">12.4.2 National Teams</a>
-<ul>
-<li><a href="#Sub_002dCultures">12.4.2.1 Sub-Cultures</a>
-<li><a href="#Organizational-Ideas">12.4.2.2 Organizational Ideas</a>
-</li></ul>
-<li><a href="#Mailing-Lists">12.4.3 Mailing Lists</a>
-</li></ul>
-<li><a href="#Information-Flow">12.5 Information Flow</a>
-<li><a href="#Translating-plural-forms">12.6 Translating plural forms</a>
-<li><a href="#Prioritizing-messages">12.7 Prioritizing messages: How to determine which messages to translate first</a>
-</li></ul>
-<li><a name="toc_Maintainers" href="#Maintainers">13 The Maintainer's View</a>
-<ul>
-<li><a href="#Flat-and-Non_002dFlat">13.1 Flat or Non-Flat Directory Structures</a>
-<li><a href="#Prerequisites">13.2 Prerequisite Works</a>
-<li><a href="#gettextize-Invocation">13.3 Invoking the <code>gettextize</code> Program</a>
-<li><a href="#Adjusting-Files">13.4 Files You Must Create or Alter</a>
-<ul>
-<li><a href="#po_002fPOTFILES_002ein">13.4.1 <samp><span class="file">POTFILES.in</span></samp> in <samp><span class="file">po/</span><