diff --git a/jtag/.cvsignore b/jtag/.cvsignore index 306e9a86..5e773541 100644 --- a/jtag/.cvsignore +++ b/jtag/.cvsignore @@ -6,6 +6,8 @@ configure configure.lineno Makefile.in Makefile -.deps COPYING INSTALL +ABOUT-NLS +intl +m4 diff --git a/jtag/ChangeLog b/jtag/ChangeLog index 219e4bcf..e9aa13ca 100644 --- a/jtag/ChangeLog +++ b/jtag/ChangeLog @@ -1,3 +1,25 @@ +2003-02-18 Marcel Telka + + * autogen.sh: Added autopoint call. Added '-I m4' parameter for aclocal. + * Makefile.am (SUBDIRS): Added intl, include and po. + (DIST_SUBDIRS): Removed. + (ACLOCAL_AMFLAGS): Added '-I m4'. + * configure.ac (AC_INIT): Changed version number to 0.3. + (AC_CONFIG_FILES): Added intl/Makefile and po/Makefile.in. + (AM_GNU_GETTEXT): Added. + (AM_GNU_GETTEXT_VERSION): Added with version 0.11.5. + * include/gettext.h: Copied new file from gettext share. + * po/LINGUAS: Added new empty file. + * po/Makevars: Added new file. + * po/POTFILES.in: Added new empty file. + * src/Makefile.am (INCLUDES): Removed JTAG_DATA_DIR. + (localedir): Added path to locale directory. + (DEFS): Added JTAG_DATA_DIR and LOCALEDIR. + (LIBS): Added LIBINTL. + * src/help.c: Included gettext.h. + * src/jtag.c: Included gettext.h. + (main): Added l10n support. + 2003-02-18 Marcel Telka * src/flash.c (flashmsbin): Changed flash error message. diff --git a/jtag/Makefile.am b/jtag/Makefile.am index 30e1bd42..29c8e994 100644 --- a/jtag/Makefile.am +++ b/jtag/Makefile.am @@ -22,10 +22,10 @@ # SUBDIRS = \ - data \ - src - -DIST_SUBDIRS = \ + intl \ include \ data \ - src + src \ + po + +ACLOCAL_AMFLAGS = -I m4 diff --git a/jtag/NEWS b/jtag/NEWS index 0556fa64..bdaf984f 100644 --- a/jtag/NEWS +++ b/jtag/NEWS @@ -15,6 +15,7 @@ $Id$ * Added flash driver for AMD chips (August Hörandl). * Added support for rc and history files (Alessandro Zummo). * Added new 'script' command (Alessandro Zummo). + * Added support for localization. * Some bugs fixed. jtag-0.2.2 (2003-02-04): diff --git a/jtag/autogen.sh b/jtag/autogen.sh index 979937b0..186ab141 100755 --- a/jtag/autogen.sh +++ b/jtag/autogen.sh @@ -22,8 +22,11 @@ # Written by Marcel Telka , 2002. # +echo "Running autopoint ..." +autopoint + echo "Running aclocal ..." -aclocal +aclocal -I m4 echo "Running automake ..." automake --add-missing diff --git a/jtag/configure.ac b/jtag/configure.ac index aec74172..d1007f5a 100644 --- a/jtag/configure.ac +++ b/jtag/configure.ac @@ -21,7 +21,7 @@ # Written by Marcel Telka , 2002. # -AC_INIT(jtag,0.2.2) +AC_INIT(jtag,0.3) AC_PREREQ(2.54) AC_COPYRIGHT([Copyright (C) 2002, 2003 ETC s.r.o.]) @@ -40,12 +40,17 @@ AC_CONFIG_FILES( src/tap/Makefile src/part/Makefile src/bus/Makefile + intl/Makefile + po/Makefile.in ) AM_MAINTAINER_MODE AC_GNU_SOURCE +AM_GNU_GETTEXT +AM_GNU_GETTEXT_VERSION(0.11.5) + AC_PROG_CC AC_PROG_RANLIB diff --git a/jtag/include/gettext.h b/jtag/include/gettext.h new file mode 100644 index 00000000..8b262f4c --- /dev/null +++ b/jtag/include/gettext.h @@ -0,0 +1,69 @@ +/* Convenience header for conditional use of GNU . + Copyright (C) 1995-1998, 2000-2002 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify it + under the terms of the GNU Library General Public License as published + by the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + USA. */ + +#ifndef _LIBGETTEXT_H +#define _LIBGETTEXT_H 1 + +/* NLS can be disabled through the configure --disable-nls option. */ +#if ENABLE_NLS + +/* Get declarations of GNU message catalog functions. */ +# include + +#else + +/* Solaris /usr/include/locale.h includes /usr/include/libintl.h, which + chokes if dcgettext is defined as a macro. So include it now, to make + later inclusions of a NOP. We don't include + as well because people using "gettext.h" will not include , + and also including would fail on SunOS 4, whereas + is OK. */ +#if defined(__sun) +# include +#endif + +/* Disabled NLS. + The casts to 'const char *' serve the purpose of producing warnings + for invalid uses of the value returned from these functions. + On pre-ANSI systems without 'const', the config.h file is supposed to + contain "#define const". */ +# define gettext(Msgid) ((const char *) (Msgid)) +# define dgettext(Domainname, Msgid) ((const char *) (Msgid)) +# define dcgettext(Domainname, Msgid, Category) ((const char *) (Msgid)) +# define ngettext(Msgid1, Msgid2, N) \ + ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2)) +# define dngettext(Domainname, Msgid1, Msgid2, N) \ + ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2)) +# define dcngettext(Domainname, Msgid1, Msgid2, N, Category) \ + ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2)) +# define textdomain(Domainname) ((const char *) (Domainname)) +# define bindtextdomain(Domainname, Dirname) ((const char *) (Dirname)) +# define bind_textdomain_codeset(Domainname, Codeset) ((const char *) (Codeset)) + +#endif + +/* A pseudo function call that serves as a marker for the automated + extraction of messages, but does not call gettext(). The run-time + translation is done at a different place in the code. + The argument, String, should be a literal string. Concatenated strings + and other string expressions won't work. + The macro's expansion is not parenthesized, so that it is suitable as + initializer for static 'char[]' or 'const char[]' variables. */ +#define gettext_noop(String) String + +#endif /* _LIBGETTEXT_H */ diff --git a/jtag/po/.cvsignore b/jtag/po/.cvsignore new file mode 100644 index 00000000..dc2af364 --- /dev/null +++ b/jtag/po/.cvsignore @@ -0,0 +1,11 @@ +Makefile.in.in +Makefile.in +Makefile +POTFILES +Rules-quot +boldquot.sed +en@boldquot.header +en@quot.header +insert-header.sin +quot.sed +remove-potcdate.sin diff --git a/jtag/po/LINGUAS b/jtag/po/LINGUAS new file mode 100644 index 00000000..fbbab2d1 --- /dev/null +++ b/jtag/po/LINGUAS @@ -0,0 +1 @@ +# $Id$ diff --git a/jtag/po/Makevars b/jtag/po/Makevars new file mode 100644 index 00000000..13653309 --- /dev/null +++ b/jtag/po/Makevars @@ -0,0 +1,25 @@ +# Makefile variables for PO directory in any package using GNU gettext. + +# Usually the message domain is the same as the package name. +DOMAIN = $(PACKAGE) + +# These two variables depend on the location of this directory. +subdir = po +top_builddir = .. + +# These options get passed to xgettext. +XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ + +# This is the copyright holder that gets inserted into the header of the +# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding +# package. (Note that the msgstr strings, extracted from the package's +# sources, belong to the copyright holder of the package.) Translators are +# expected to transfer the copyright for their translations to this person +# or entity, or to disclaim their copyright. The empty string stands for +# the public domain; in this case the translators are expected to disclaim +# their copyright. +COPYRIGHT_HOLDER = ETC s.r.o. + +# This is the list of locale categories, beyond LC_MESSAGES, for which the +# message catalogs shall be used. It is usually empty. +EXTRA_LOCALE_CATEGORIES = diff --git a/jtag/po/POTFILES.in b/jtag/po/POTFILES.in new file mode 100644 index 00000000..fbbab2d1 --- /dev/null +++ b/jtag/po/POTFILES.in @@ -0,0 +1 @@ +# $Id$ diff --git a/jtag/src/Makefile.am b/jtag/src/Makefile.am index 91ba239c..d5a869d4 100644 --- a/jtag/src/Makefile.am +++ b/jtag/src/Makefile.am @@ -45,4 +45,7 @@ jtag_DEPENDENCIES = lib/libjtaglib.a tap/libtap.a part/libpart.a bus/libbus.a jtag_LDADD = -lreadline -lncurses -Ltap -ltap -Lpart -lpart -Llib -ljtaglib -Lbus -lbus -INCLUDES = -I$(top_srcdir)/include $(OPENWINCE_INC) -DJTAG_DATA_DIR=\"$(pkgdatadir)\" +localedir = $(datadir)/locale +DEFS += -DLOCALEDIR=\"$(localedir)\" -DJTAG_DATA_DIR=\"$(pkgdatadir)\" +LIBS += @LIBINTL@ +INCLUDES = -I$(top_srcdir)/include $(OPENWINCE_INC) diff --git a/jtag/src/help.c b/jtag/src/help.c index 715d033c..2eab8892 100644 --- a/jtag/src/help.c +++ b/jtag/src/help.c @@ -29,6 +29,8 @@ #include #include +#include "gettext.h" + #include "cable.h" #include "flash.h" diff --git a/jtag/src/jtag.c b/jtag/src/jtag.c index 637f7f14..d10ae245 100644 --- a/jtag/src/jtag.c +++ b/jtag/src/jtag.c @@ -33,6 +33,8 @@ #include #include +#include "gettext.h" + #include "part.h" #include "cable.h" #include "tap.h" @@ -804,6 +806,11 @@ jtag_parse_rc( void ) int main( void ) { + /* l10n support */ + setlocale( LC_MESSAGES, "" ); + bindtextdomain( PACKAGE, LOCALEDIR ); + textdomain( PACKAGE ); + printf( "%s\n" "Copyright (C) 2002, 2003 ETC s.r.o.\n" diff --git a/jtag/tools/.cvsignore b/jtag/tools/.cvsignore index e69de29b..61b84ea0 100644 --- a/jtag/tools/.cvsignore +++ b/jtag/tools/.cvsignore @@ -0,0 +1,2 @@ +config.rpath +mkinstalldirs