Skip to content

Commit 8c41176

Browse files
author
BVK Chaitanya
committed
automake commit without merge history
1 parent 265d68c commit 8c41176

File tree

810 files changed

+4955
-2483
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

810 files changed

+4955
-2483
lines changed

.bzrignore

+6
Original file line numberDiff line numberDiff line change
@@ -71,3 +71,9 @@ stamp-h.in
7171
symlist.c
7272
trigtables.c
7373
update-grub_lib
74+
Makefile.in
75+
modules.am
76+
GPATH
77+
GRTAGS
78+
GSYMS
79+
GTAGS

ABOUT-NLS

+223
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,223 @@
1+
1 Notes on the Free Translation Project
2+
***************************************
3+
4+
Free software is going international! The Free Translation Project is
5+
a way to get maintainers of free software, translators, and users all
6+
together, so that free software will gradually become able to speak many
7+
languages. A few packages already provide translations for their
8+
messages.
9+
10+
If you found this `ABOUT-NLS' file inside a distribution, you may
11+
assume that the distributed package does use GNU `gettext' internally,
12+
itself available at your nearest GNU archive site. But you do _not_
13+
need to install GNU `gettext' prior to configuring, installing or using
14+
this package with messages translated.
15+
16+
Installers will find here some useful hints. These notes also
17+
explain how users should proceed for getting the programs to use the
18+
available translations. They tell how people wanting to contribute and
19+
work on translations can contact the appropriate team.
20+
21+
When reporting bugs in the `intl/' directory or bugs which may be
22+
related to internationalization, you should tell about the version of
23+
`gettext' which is used. The information can be found in the
24+
`intl/VERSION' file, in internationalized packages.
25+
26+
1.1 Quick configuration advice
27+
==============================
28+
29+
If you want to exploit the full power of internationalization, you
30+
should configure it using
31+
32+
./configure --with-included-gettext
33+
34+
to force usage of internationalizing routines provided within this
35+
package, despite the existence of internationalizing capabilities in the
36+
operating system where this package is being installed. So far, only
37+
the `gettext' implementation in the GNU C library version 2 provides as
38+
many features (such as locale alias, message inheritance, automatic
39+
charset conversion or plural form handling) as the implementation here.
40+
It is also not possible to offer this additional functionality on top
41+
of a `catgets' implementation. Future versions of GNU `gettext' will
42+
very likely convey even more functionality. So it might be a good idea
43+
to change to GNU `gettext' as soon as possible.
44+
45+
So you need _not_ provide this option if you are using GNU libc 2 or
46+
you have installed a recent copy of the GNU gettext package with the
47+
included `libintl'.
48+
49+
1.2 INSTALL Matters
50+
===================
51+
52+
Some packages are "localizable" when properly installed; the programs
53+
they contain can be made to speak your own native language. Most such
54+
packages use GNU `gettext'. Other packages have their own ways to
55+
internationalization, predating GNU `gettext'.
56+
57+
By default, this package will be installed to allow translation of
58+
messages. It will automatically detect whether the system already
59+
provides the GNU `gettext' functions. If not, the included GNU
60+
`gettext' library will be used. This library is wholly contained
61+
within this package, usually in the `intl/' subdirectory, so prior
62+
installation of the GNU `gettext' package is _not_ required.
63+
Installers may use special options at configuration time for changing
64+
the default behaviour. The commands:
65+
66+
./configure --with-included-gettext
67+
./configure --disable-nls
68+
69+
will, respectively, bypass any pre-existing `gettext' to use the
70+
internationalizing routines provided within this package, or else,
71+
_totally_ disable translation of messages.
72+
73+
When you already have GNU `gettext' installed on your system and run
74+
configure without an option for your new package, `configure' will
75+
probably detect the previously built and installed `libintl.a' file and
76+
will decide to use this. This might not be desirable. You should use
77+
the more recent version of the GNU `gettext' library. I.e. if the file
78+
`intl/VERSION' shows that the library which comes with this package is
79+
more recent, you should use
80+
81+
./configure --with-included-gettext
82+
83+
to prevent auto-detection.
84+
85+
The configuration process will not test for the `catgets' function
86+
and therefore it will not be used. The reason is that even an
87+
emulation of `gettext' on top of `catgets' could not provide all the
88+
extensions of the GNU `gettext' library.
89+
90+
Internationalized packages usually have many `po/LL.po' files, where
91+
LL gives an ISO 639 two-letter code identifying the language. Unless
92+
translations have been forbidden at `configure' time by using the
93+
`--disable-nls' switch, all available translations are installed
94+
together with the package. However, the environment variable `LINGUAS'
95+
may be set, prior to configuration, to limit the installed set.
96+
`LINGUAS' should then contain a space separated list of two-letter
97+
codes, stating which languages are allowed.
98+
99+
1.3 Using This Package
100+
======================
101+
102+
As a user, if your language has been installed for this package, you
103+
only have to set the `LANG' environment variable to the appropriate
104+
`LL_CC' combination. Here `LL' is an ISO 639 two-letter language code,
105+
and `CC' is an ISO 3166 two-letter country code. For example, let's
106+
suppose that you speak German and live in Germany. At the shell
107+
prompt, merely execute `setenv LANG de_DE' (in `csh'),
108+
`export LANG; LANG=de_DE' (in `sh') or `export LANG=de_DE' (in `bash').
109+
This can be done from your `.login' or `.profile' file, once and for
110+
all.
111+
112+
You might think that the country code specification is redundant.
113+
But in fact, some languages have dialects in different countries. For
114+
example, `de_AT' is used for Austria, and `pt_BR' for Brazil. The
115+
country code serves to distinguish the dialects.
116+
117+
The locale naming convention of `LL_CC', with `LL' denoting the
118+
language and `CC' denoting the country, is the one use on systems based
119+
on GNU libc. On other systems, some variations of this scheme are
120+
used, such as `LL' or `LL_CC.ENCODING'. You can get the list of
121+
locales supported by your system for your language by running the
122+
command `locale -a | grep '^LL''.
123+
124+
Not all programs have translations for all languages. By default, an
125+
English message is shown in place of a nonexistent translation. If you
126+
understand other languages, you can set up a priority list of languages.
127+
This is done through a different environment variable, called
128+
`LANGUAGE'. GNU `gettext' gives preference to `LANGUAGE' over `LANG'
129+
for the purpose of message handling, but you still need to have `LANG'
130+
set to the primary language; this is required by other parts of the
131+
system libraries. For example, some Swedish users who would rather
132+
read translations in German than English for when Swedish is not
133+
available, set `LANGUAGE' to `sv:de' while leaving `LANG' to `sv_SE'.
134+
135+
Special advice for Norwegian users: The language code for Norwegian
136+
bokma*l changed from `no' to `nb' recently (in 2003). During the
137+
transition period, while some message catalogs for this language are
138+
installed under `nb' and some older ones under `no', it's recommended
139+
for Norwegian users to set `LANGUAGE' to `nb:no' so that both newer and
140+
older translations are used.
141+
142+
In the `LANGUAGE' environment variable, but not in the `LANG'
143+
environment variable, `LL_CC' combinations can be abbreviated as `LL'
144+
to denote the language's main dialect. For example, `de' is equivalent
145+
to `de_DE' (German as spoken in Germany), and `pt' to `pt_PT'
146+
(Portuguese as spoken in Portugal) in this context.
147+
148+
1.4 Translating Teams
149+
=====================
150+
151+
For the Free Translation Project to be a success, we need interested
152+
people who like their own language and write it well, and who are also
153+
able to synergize with other translators speaking the same language.
154+
Each translation team has its own mailing list. The up-to-date list of
155+
teams can be found at the Free Translation Project's homepage,
156+
`http://www.iro.umontreal.ca/contrib/po/HTML/', in the "National teams"
157+
area.
158+
159+
If you'd like to volunteer to _work_ at translating messages, you
160+
should become a member of the translating team for your own language.
161+
The subscribing address is _not_ the same as the list itself, it has
162+
`-request' appended. For example, speakers of Swedish can send a
163+
message to `sv-request@li.org', having this message body:
164+
165+
subscribe
166+
167+
Keep in mind that team members are expected to participate
168+
_actively_ in translations, or at solving translational difficulties,
169+
rather than merely lurking around. If your team does not exist yet and
170+
you want to start one, or if you are unsure about what to do or how to
171+
get started, please write to `translation@iro.umontreal.ca' to reach the
172+
coordinator for all translator teams.
173+
174+
The English team is special. It works at improving and uniformizing
175+
the terminology in use. Proven linguistic skills are praised more than
176+
programming skills, here.
177+
178+
1.5 Available Packages
179+
======================
180+
181+
Languages are not equally supported in all packages. The following
182+
matrix shows the current state of internationalization, as of October
183+
2006. The matrix shows, in regard of each package, for which languages
184+
PO files have been submitted to translation coordination, with a
185+
translation percentage of at least 50%.
186+
187+
# Matrix here is removed!
188+
189+
Some counters in the preceding matrix are higher than the number of
190+
visible blocks let us expect. This is because a few extra PO files are
191+
used for implementing regional variants of languages, or language
192+
dialects.
193+
194+
For a PO file in the matrix above to be effective, the package to
195+
which it applies should also have been internationalized and
196+
distributed as such by its maintainer. There might be an observable
197+
lag between the mere existence a PO file and its wide availability in a
198+
distribution.
199+
200+
If October 2006 seems to be old, you may fetch a more recent copy of
201+
this `ABOUT-NLS' file on most GNU archive sites. The most up-to-date
202+
matrix with full percentage details can be found at
203+
`http://www.iro.umontreal.ca/contrib/po/HTML/matrix.html'.
204+
205+
1.6 Using `gettext' in new packages
206+
===================================
207+
208+
If you are writing a freely available program and want to
209+
internationalize it you are welcome to use GNU `gettext' in your
210+
package. Of course you have to respect the GNU Library General Public
211+
License which covers the use of the GNU `gettext' library. This means
212+
in particular that even non-free programs can use `libintl' as a shared
213+
library, whereas only free software can use `libintl' as a static
214+
library or use modified versions of `libintl'.
215+
216+
Once the sources are changed appropriately and the setup can handle
217+
the use of `gettext' the only thing missing are the translations. The
218+
Free Translation Project is also available for packages which are not
219+
developed inside the GNU project. Therefore the information given above
220+
applies also for every other Free Software Project. Contact
221+
`translation@iro.umontreal.ca' to make the `.pot' files available to
222+
the translation teams.
223+

Makefile.am

+87
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
AUTOMAKE_OPTIONS = subdir-objects
2+
DEPDIR = .deps-util
3+
4+
EXTRA_DIST = autogen.sh gentpl.py Makefile.tpl modules.def \
5+
\
6+
geninit.sh \
7+
\
8+
gnulib/progname.h gnulib/fnmatch_loop.c gnulib/alloca.h \
9+
gnulib/error.h gnulib/fnmatch.h gnulib/getopt.h \
10+
gnulib/getopt_int.h gnulib/gettext.h gnulib/progname.h \
11+
\
12+
util/mkisofs/mkisofs.h util/mkisofs/iso9660.h \
13+
util/mkisofs/include/prototyp.h util/mkisofs/defaults.h \
14+
util/mkisofs/match.h util/mkisofs/exclude.h \
15+
util/mkisofs/msdos_partition.h util/mkisofs/include/fctldefs.h \
16+
util/mkisofs/include/mconfig.h util/mkisofs/include/statdefs.h
17+
18+
SUBDIRS = . grub-core po docs
19+
20+
include $(top_srcdir)/grub-core/Makefile.vars
21+
22+
CFLAGS_PROGRAM = $(HOST_CFLAGS) $(CFLAGS_GNULIB)
23+
LDFLAGS_PROGRAM = $(HOST_LDFLAGS) $(LDFLAGS_GNULIB) $(LIBINTL)
24+
CPPFLAGS_PROGRAM = $(HOST_CPPFLAGS) $(CPPFLAGS_GNULIB)
25+
CCASFLAGS_PROGRAM = $(HOST_CCASFLAGS) $(CCASFLAGS_GNULIB)
26+
27+
CFLAGS_LIBRARY = $(CFLAGS_PROGRAM)
28+
CPPFLAGS_LIBRARY = $(CPPFLAGS_PROGRAM)
29+
CCASFLAGS_LIBRARY = $(CCASFLAGS_PROGRAM)
30+
31+
AM_CFLAGS =
32+
AM_LDFLAGS =
33+
AM_CPPFLAGS = $(CPPFLAGS_GRUB) -DGRUB_FILE=\"$(subst $(top_srcdir)/,,$<)\"
34+
AM_CCASFLAGS = -DASM_FILE=1
35+
36+
# XXX Use Automake's LEX & YACC support
37+
grub_script.tab.c grub_script.tab.h: $(top_srcdir)/grub-core/script/parser.y
38+
$(YACC) -d -p grub_script_yy -b grub_script $(top_srcdir)/grub-core/script/parser.y
39+
CLEANFILES += grub_script.tab.c grub_script.tab.h
40+
41+
# For the lexer.
42+
grub_script.yy.c grub_script.yy.h: $(top_srcdir)/grub-core/script/yylex.l
43+
$(LEX) -o grub_script.yy.c --header-file=grub_script.yy.h $(top_srcdir)/grub-core/script/yylex.l
44+
CLEANFILES += grub_script.yy.c grub_script.yy.h
45+
46+
# For libutil.a
47+
libutil_a_init.lst: grub_script.tab.h grub_script.yy.h $(libutil_a_SOURCES)
48+
rm -f $@
49+
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libutil_a_CPPFLAGS) $(CPPFLAGS) \
50+
-D'GRUB_MOD_INIT(x)=@MARKER@x@' $^ \
51+
| grep '@MARKER@' | sed 's/@MARKER@\(.*\)@/\1/g' | sort -u > $@ || (rm -f $@; exit 1)
52+
CLEANFILES += libutil_a_init.lst
53+
54+
libutil_a_init.c: libutil_a_init.lst $(top_srcdir)/geninit.sh
55+
rm -f $@; sh $(top_srcdir)/geninit.sh `cat $<` > $@ || (rm -f $@; exit 1)
56+
CLEANFILES += libutil_a_init.c
57+
58+
if COND_GRUB_MKFONT
59+
if COND_HAVE_FONT_SOURCE
60+
pkgdata_DATA = unicode.pf2 ascii.pf2 ascii.h
61+
endif
62+
endif
63+
64+
unicode.pf2: $(FONT_SOURCE) grub-mkfont
65+
$(builddir)/grub-mkfont -o $@ $(FONT_SOURCE)
66+
CLEANFILES += unicode.pf2
67+
68+
# Arrows and lines are needed to draw the menu, so always include them
69+
UNICODE_ARROWS=0x2190-0x2193
70+
UNICODE_LINES=0x2501-0x251B
71+
72+
ascii.pf2: $(FONT_SOURCE) grub-mkfont
73+
$(builddir)/grub-mkfont -o $@ $(FONT_SOURCE) -r 0x0-0x7f,$(UNICODE_ARROWS),$(UNICODE_LINES)
74+
CLEANFILES += ascii.pf2
75+
76+
ascii.bitmaps: $(FONT_SOURCE) grub-mkfont
77+
$(builddir)/grub-mkfont --ascii-bitmaps -o $@ $(FONT_SOURCE)
78+
CLEANFILES += ascii.bitmaps
79+
80+
ascii.h: ascii.bitmaps grub-bin2h
81+
$(builddir)/grub-bin2h ascii_bitmaps < $< > $@
82+
cp $@ $(top_builddir)/grub-core/include
83+
CLEANFILES += ascii.h $(top_builddir)/grub-core/include/ascii.h
84+
85+
platform_HEADERS = config.h
86+
87+
include $(srcdir)/modules.am

0 commit comments

Comments
 (0)