mirror of
https://https.git.savannah.gnu.org/git/gettext.git
synced 2026-01-30 19:34:40 +00:00
* gettext-tools/examples/hello-ocaml/INSTALL: New file. * gettext-tools/examples/hello-ocaml/autogen.sh: New file. * gettext-tools/examples/hello-ocaml/autoclean.sh: New file. * gettext-tools/examples/hello-ocaml/dune.in: New file. * gettext-tools/examples/hello-ocaml/dune-project.in: New file. * gettext-tools/examples/hello-ocaml/hello.ml.in: New file. * gettext-tools/examples/hello-ocaml/Makefile.am: New file. * gettext-tools/examples/hello-ocaml/configure.ac: New file. * gettext-tools/examples/hello-ocaml/m4/Makefile.am: New file. * gettext-tools/examples/hello-ocaml/po/LINGUAS: New file. * gettext-tools/examples/hello-ocaml/po/Makefile.am: New file. * gettext-tools/examples/Makefile.am (EXAMPLESFILES, EXAMPLESDIRS): Add hello-ocaml. * gettext-tools/examples/po/Makefile.am (POTFILES, SMALLPOTS): Update for hello-ocaml. (hello-ocaml.pot): New target. (SMALLPOFILES_FOR_lang): Update for hello-ocaml. ($(srcdir)/../hello-ocaml/po/$(LL).po): New rule. * gettext-tools/examples/check-examples (func_check__hello_ocaml): New function. * gettext-tools/examples/README: Mention hello-ocaml. * gettext-tools/doc/lang-ocaml.texi: Likewise. * NEWS: Likewise.
118 lines
5.9 KiB
Plaintext
118 lines
5.9 KiB
Plaintext
This directory contains simple examples of the use of GNU gettext.
|
|
Each example is a simple "hello world" program with a very small message
|
|
catalog, written in a particular programming language for a particular
|
|
environment.
|
|
|
|
Example Language GUI Environment
|
|
|
|
hello-c C
|
|
hello-c-gnome2 C GNOME 2 (obsolete)
|
|
hello-c-gnome3 C GNOME 3.10 or later
|
|
hello-c-http C web browser
|
|
hello-c++ C++
|
|
hello-c++20 C++ 20
|
|
hello-c++-qt C++ Qt
|
|
hello-c++-kde C++ KDE
|
|
hello-c++-gnome2 C++ GNOME 2 (obsolete)
|
|
hello-c++-gnome3 C++ GNOME 3.10 or later
|
|
hello-c++-wxwidgets C++ wxWidgets
|
|
hello-objc ObjectiveC
|
|
hello-objc-gnustep ObjectiveC GNUstep
|
|
hello-objc-gnome2 ObjectiveC GNOME 2 (obsolete)
|
|
hello-python Python
|
|
hello-java Java
|
|
hello-java-awt Java AWT
|
|
hello-java-swing Java Swing
|
|
hello-java-qtjambi Java Qt
|
|
hello-csharp C#
|
|
hello-csharp-forms C# Forms
|
|
hello-guile Scheme
|
|
hello-clisp Lisp
|
|
hello-librep librep
|
|
hello-rust Rust
|
|
hello-go Go
|
|
hello-go-http Go web browser
|
|
hello-ruby Ruby
|
|
hello-sh Shell
|
|
hello-gawk awk
|
|
hello-pascal Pascal
|
|
hello-modula2 Modula-2
|
|
hello-d D
|
|
hello-ocaml OCaml
|
|
hello-smalltalk Smalltalk
|
|
hello-tcl Tcl
|
|
hello-tcl-tk Tcl Tk
|
|
hello-perl Perl
|
|
hello-php PHP
|
|
hello-ycp YCP libyui
|
|
|
|
Before building an example, you need to
|
|
1. Build and install the GNU gettext package, as described in the INSTALL
|
|
file.
|
|
2. cd to the example and do
|
|
./autogen.sh
|
|
3. Then you can build the example as usual:
|
|
./configure --prefix=/some/prefix
|
|
make
|
|
make install
|
|
and see it work by executing
|
|
/some/prefix/bin/hello
|
|
|
|
The po/ directories of the examples use different binary catalog formats and
|
|
Makefile types:
|
|
|
|
Example Binary catalog format Makefile type
|
|
|
|
hello-c .gmo Makefile.in.in
|
|
hello-c-gnome2 .gmo Makefile.in.in
|
|
hello-c-gnome3 .gmo Makefile.in.in
|
|
hello-c-http .gmo Makefile.in.in
|
|
hello-c++ .gmo Makefile.in.in
|
|
hello-c++20 .gmo Makefile.in.in
|
|
hello-c++-kde .gmo Makefile.in.in
|
|
hello-c++-gnome2 .gmo Makefile.in.in
|
|
hello-c++-gnome3 .gmo Makefile.in.in
|
|
hello-objc .gmo Makefile.in.in
|
|
hello-objc-gnome2 .gmo Makefile.in.in
|
|
hello-c++-wxwidgets .gmo Makefile.am
|
|
hello-python .gmo Makefile.am
|
|
hello-guile .gmo Makefile.am
|
|
hello-clisp .gmo Makefile.am
|
|
hello-librep .gmo Makefile.am
|
|
hello-rust .gmo Makefile.am
|
|
hello-go .gmo Makefile.am
|
|
hello-go-http .gmo Makefile.am
|
|
hello-ruby .gmo Makefile.am
|
|
hello-sh .gmo Makefile.am
|
|
hello-gawk .gmo Makefile.am
|
|
hello-pascal .gmo Makefile.am
|
|
hello-modula2 .gmo Makefile.am
|
|
hello-d .gmo Makefile.am
|
|
hello-ocaml .gmo Makefile.am
|
|
hello-smalltalk .gmo Makefile.am
|
|
hello-perl .gmo Makefile.am
|
|
hello-php .gmo Makefile.am
|
|
hello-ycp .gmo Makefile.am
|
|
hello-java .properties Makefile.am
|
|
hello-java-awt .properties Makefile.am
|
|
hello-java-swing .properties Makefile.am
|
|
hello-java-qtjambi .properties Makefile.am
|
|
hello-csharp .resources.dll Makefile.am
|
|
hello-csharp-forms .resources.dll Makefile.am
|
|
hello-tcl .msg Makefile.am
|
|
hello-tcl-tk .msg Makefile.am
|
|
hello-c++-qt .qm Makefile.am
|
|
hello-objc-gnustep .strings GNUmakefile
|
|
|
|
The Makefiles in the po/ directories make use of the variable assignment
|
|
operator != standardized by POSIX:2024
|
|
<https://pubs.opengroup.org/onlinepubs/9799919799/utilities/make.html>.
|
|
They thus require a 'make' implementation that supports this operator !=.
|
|
As of 2024, these are: GNU make >= 4.0, FreeBSD make, NetBSD make,
|
|
OpenBSD make. This means that building on specific platforms requires
|
|
use of GNU make:
|
|
- On macOS, use /opt/homebrew/bin/gmake.
|
|
- On Solaris 11 OpenIndiana, use /usr/bin/gmake = /usr/gnu/bin/make.
|
|
- On Solaris 11.4, install GNU make yourself.
|
|
- On AIX, use /opt/freeware/bin/make.
|