History log of /haiku/build/jam/LocaleRules
Revision Date Author Comments
# 8764a298 09-Oct-2023 Augustin Cavalier <waddlesplash@gmail.com>

build/jam: Only add C++ header directories to include path for C++ code.

There are now some system headers (e.g. <stdatomic.h>) that have outright
different versions for C and C++ which are not compatible with each other.

Change-Id: Ibf797e0817f0fe4d5241424d7d06023b19888c02
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6991
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>


# 1ea3818f 06-Sep-2021 Augustin Cavalier <waddlesplash@gmail.com>

LocaleRules: Ignore errors in ExtractCatalogEntries.

It seems GCC has the same behavior as Clang now, so we can ignore
errors generated while preprocessing. (Previously we did anyway,
before the recent commit adding -e to JAMSHELL flags, so this
just continues previous behavior.)


# 128781e7 30-Aug-2019 Augustin Cavalier <waddlesplash@gmail.com>

build/jam: Inline HOST_ADD_BUILD_COMPATIBILITY_LIB_DIR where possible.

The "exec" tool can only handle one command with environs set at
the beginning of the line, so now we set the ADD_BUILD_COMPAT...
in this format. This also seems to be a general performance
improvement to builds using real shells, too.

Change-Id: If4b3117651b5475039d5e8116cd3de398582290a


# d37ae865 21-Aug-2018 Augustin Cavalier <waddlesplash@gmail.com>

LocaleRules: Add a second version of the catalog extraction actions.

Clang behaves slightly differently than GCC and allows us to steamroll
some errors we don't care about that GCC does not.


# 5174b9e8 21-Aug-2018 noreply@haiku-os.org <noreply@haiku-os.org>

Revert "Update translations from Pootle"

This reverts commit 6b7f260899853d1e5301def3331b1831447388d6.


# 6b7f2608 21-Aug-2018 Autocomitter <noreply@haiku-os.org>

Update translations from Pootle


# 4c13d20c 13-Aug-2018 Augustin Cavalier <waddlesplash@gmail.com>

LocaleRules: Pass the files to the preprocessor instead of piping it in.

This rule process the entire target's source files at once, and so
whoever wrote this rule in the first place (PulkoMandy?) probably
assumed without even testing that "cc -E" would create multiple
outputs for multiple inputs.

It doesn't, though: it just outputs them in sequence on the command line
the same way it does when the files are piped in through "cat". This
also has other advantages (e.g. preprocess errors caused by the compiler
assuming it was C not C++ code and so not defining __cplusplus, local
includes are now resolved properly, etc.)

Doing it this way does exposes other problems like the one fixed in the
previous commit (headers with no context defined, which worked previously
only because they used the context of the preceding `cat`'ed file.)

We now also remove the .pre file after collecting the catkeys.


# 20c61bb7 13-Aug-2018 Augustin Cavalier <waddlesplash@gmail.com>

Revert unrelated changes from previous commit.

I should have read the update script more closely as to
how it added changes for committing...


# ef9994ee 13-Aug-2018 Autocomitter <noreply@haiku-os.org>

Update translations from Pootle


# afde4473 31-Jul-2014 Oliver Tappe <zooey@hirschkaefer.de>

* When using the non-legacy compiler, use the c++ and gcc headers
provided in the gcc_syslibs_devel build feature for building Haiku.
* Simplify declaration of c++ and gcc headers for the legacy compiler -
in the end we always use the ones living by our source tree anyway.
* Fix a couple of missing local declarations for jam variables, which
were necessary to avoid a build problem with strace. There are
probably more bugs like these hiding in our build system files, but
I'm saving the fix for those to the next commit.
* Add new gcc packages to the HaikuPorts (x86*-)repositories.


# 8c54af56 30-Apr-2014 Oliver Tappe <zooey@hirschkaefer.de>

Whitespace cleanup in root and 'build' folder.

* Removed trailing whitespace and empty lines at top of files.


# b0944c78 01-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

More work towards hybrid support

* All packaging architecture dependent variables do now have a
respective suffix and are set up for each configured packaging
architecture, save for the kernel and boot loader variables, which
are still only set up for the primary architecture.
For convenience TARGET_PACKAGING_ARCH, TARGET_ARCH, TARGET_LIBSUPC++,
and TARGET_LIBSTDC++ are set to the respective values for the primary
packaging architecture by default.
* Introduce a set of MultiArch* rules to help with building targets for
multiple packaging architectures. Generally the respective targets are
(additionally) gristed with the packaging architecture. For libraries
the additional grist is usually omitted for the primary architecture
(e.g. libroot.so and <x86>libroot.so for x86_gcc2/x86 hybrid), so that
Jamfiles for targets built only for the primary architecture don't
need to be changed.
* Add multi-arch build support for all targets needed for the stage 1
cross devel package as well as for libbe (untested).


# 1183fb71 13-May-2013 Jerome Duval <jerome.duval@gmail.com>

LocaleRules: define includesSeparator


# e19d7089 16-Aug-2012 Oliver Tappe <zooey@hirschkaefer.de>

Fix #8841 (broken localization support for 3rd-party apps).

* made private Catalog.h header public by moving it to
os/locale/tools/CollectingCatalog.h
* reintroduce B_COLLECTING_CATKEYS define (which is expected to be set
during a collectcatkeys session) in order to decide whether or not
to automatically include the CollecingCatalog.h header from Catalog.h
* adjust jam rule for collecting catalog keys accordingly


# 248f2283 15-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

Final part of cleanup in Catalog.h.

* move versions of the B_TRANSLATE_...-macros used during collecting
of catalog keys to a specific header file, which will only be picked
up when running collectcatkeys
* fix a couple of build problems during the preprocessing of the libbe-
sources when extracting catalog keys, all due to private headers not
being found
* move ZombieReplicantView.h from kits/interface to
headers/private/interface, as this way it can be picked up when
building the libbe catalog


# 560ff447 25-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Use resource definition files instead of DoCatalogs rule. Rename B_TRANSLATE_APP_NAME and related macros to the more generic B_TRANSLATE_SYSTEM_NAME, to also fits add-ons, folders, etc, and make 'System name' its standard context. Change CodyCam and PoorMan's app signatures to match the overall x-vnd.Haiku-App pattern. Some clean-up. Make SlideShowSaver build again.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41103 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2e7a9f27 13-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Piggy-back catalog attribute creation on the DoCatalogs rule. I tried to also add the corresponding resource from DoCatalogs, but so far I have not been able to make it work.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40944 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2cfa3e7a 03-Mar-2011 Rene Gollent <anevilyak@gmail.com>

The build compatibility libs are needed for this rule when invoked on non-Haiku hosts. Fixes the build on non-Haiku host platforms.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40799 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a6f7da97 02-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Jam rule to add an attribute for catalog lookup of localized entry name.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40790 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9de5b022 24-Oct-2010 Matt Madia <mattmadia@gmail.com>

Renamed the variables for the catalogs and re-introduced the target 'catkeys',
which builds just the en.catkeys inside HAIKU_OUTPUT_DIR/objects/catalogs


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39130 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a8fcb885 23-Oct-2010 Matt Madia <mattmadia@gmail.com>

Improved upon r39090.
* removed the catkeys pseudo-target
* created catalogs pseudo-target, which builds all catalogs & en.catkeys(.pre)
* created LocalizedTargets pseudo-target, which builds all targets that have
been localized.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39114 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1974e338 23-Oct-2010 Matt Madia <mattmadia@gmail.com>

* More work relating to supporting multiple localized targets in the same
directory. Introduced a new variable HAIKU_MULTIPLE_LOCALIZED_TARGETS, which
gets set in any Jamfiles that contain multiple DoCatalogs invocations. This
removes the need to supply folder parameter to DoCatalogs.
* Add the DoCatalogs invocation for filepanel.
* Relocated the catkeys for Screenshot and screenshot into their respective
directories.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39112 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 85cf9e37 23-Oct-2010 Matt Madia <mattmadia@gmail.com>

Updated DoCatalogs rule, to apply a grist based on the target's signature and
not based on the automatic path-based grist. This (in conjunction with passing
a value for the 'folder' parameter) allows multiple targets within the same
source directory to have their own catalog files.
Fixes #6741.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39109 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 80ad173e 23-Oct-2010 Matt Madia <mattmadia@gmail.com>

Introduced a pseudo-target "catkeys", for building all of the localized
applications. The eventual goal is to have jam package a catkeys.zip,
which can be provided to the application translation websites.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39090 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e0f9a0ea 06-Oct-2010 Matt Madia <mattmadia@gmail.com>

Fixed a stray typo from r38873, which prevented catkey & catalog
generation/collection. Thanks RISC for pointing this out!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38894 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 53fb9062 03-Oct-2010 Matt Madia <mattmadia@gmail.com>

Fixed a typo from last minute changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38874 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ab17e86a 03-Oct-2010 Matt Madia <mattmadia@gmail.com>

Reworked LocaleRules (again). The generated catkeys and catalogs are stored in
a directory structure that reflects the catalogs in the repository. DoCatalogs
accepts an optional folder parameter, which allows one to specify an additional
subfolder to glob *.catkeys from. For example dstcheck in src/bin.
Improves upon r38819 and should address the concerns in
http://www.freelists.org/post/haiku/BOM-providing-catkeyszip-and-catkeyszipmd5-again,1


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38873 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0a53d94b 26-Sep-2010 Matt Madia <mattmadia@gmail.com>

Introduced a new variable HAIKU_CATALOGS_OBJECT_DIR. The catkeys and catalogs
are stored in signature-based subdirectories. This improves upon r37871 and
should allow BOM to properly harvest catkeys for online translation tools.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38819 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a7faa058 03-Aug-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

* Allow to put the different catalogs for the bin/ directory in spearate places in the generated folder.
* I didn't manage to make it work for the translations, however. If someone with better jam knowledge could look at it...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37871 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ad516863 25-Jul-2010 Oliver Tappe <zooey@hirschkaefer.de>

* improved the locale kit build rules and headers to use a different set of
B_TRANSLATE-macros when running collectcatkeys, simplifying the regex a lot
* added B_TRANSLATE_NOCOLLECT...-macros for the case where a non-literal
string shall be translated, but not picked up by collectcatkeys


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37746 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b891b0ac 23-Jul-2010 Oliver Tappe <zooey@hirschkaefer.de>

* broke out locale-related jam rules into their own file, LocaleRules
* made locale build tools shut up about anything except warnings or errors


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37723 a95241bf-73f2-0310-859d-f6bbb57e9c96


# afde44733fdff43256384ea0441585a082e73c95 31-Jul-2014 Oliver Tappe <zooey@hirschkaefer.de>

* When using the non-legacy compiler, use the c++ and gcc headers
provided in the gcc_syslibs_devel build feature for building Haiku.
* Simplify declaration of c++ and gcc headers for the legacy compiler -
in the end we always use the ones living by our source tree anyway.
* Fix a couple of missing local declarations for jam variables, which
were necessary to avoid a build problem with strace. There are
probably more bugs like these hiding in our build system files, but
I'm saving the fix for those to the next commit.
* Add new gcc packages to the HaikuPorts (x86*-)repositories.


# 8c54af563ce823c0e5b029716b2a020896c90ff4 30-Apr-2014 Oliver Tappe <zooey@hirschkaefer.de>

Whitespace cleanup in root and 'build' folder.

* Removed trailing whitespace and empty lines at top of files.


# b0944c78b074a8110bd98e060415d0e8f38a7f65 01-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

More work towards hybrid support

* All packaging architecture dependent variables do now have a
respective suffix and are set up for each configured packaging
architecture, save for the kernel and boot loader variables, which
are still only set up for the primary architecture.
For convenience TARGET_PACKAGING_ARCH, TARGET_ARCH, TARGET_LIBSUPC++,
and TARGET_LIBSTDC++ are set to the respective values for the primary
packaging architecture by default.
* Introduce a set of MultiArch* rules to help with building targets for
multiple packaging architectures. Generally the respective targets are
(additionally) gristed with the packaging architecture. For libraries
the additional grist is usually omitted for the primary architecture
(e.g. libroot.so and <x86>libroot.so for x86_gcc2/x86 hybrid), so that
Jamfiles for targets built only for the primary architecture don't
need to be changed.
* Add multi-arch build support for all targets needed for the stage 1
cross devel package as well as for libbe (untested).


# 1183fb71ae9dbfc03aba553036c59fb9fdf78f87 13-May-2013 Jerome Duval <jerome.duval@gmail.com>

LocaleRules: define includesSeparator


# e19d7089a71bf8a977e7751cdfc2340af22ff2a3 16-Aug-2012 Oliver Tappe <zooey@hirschkaefer.de>

Fix #8841 (broken localization support for 3rd-party apps).

* made private Catalog.h header public by moving it to
os/locale/tools/CollectingCatalog.h
* reintroduce B_COLLECTING_CATKEYS define (which is expected to be set
during a collectcatkeys session) in order to decide whether or not
to automatically include the CollecingCatalog.h header from Catalog.h
* adjust jam rule for collecting catalog keys accordingly


# 248f2283dd5fcfc0bc79f26b84c8fdec9da7e60c 15-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

Final part of cleanup in Catalog.h.

* move versions of the B_TRANSLATE_...-macros used during collecting
of catalog keys to a specific header file, which will only be picked
up when running collectcatkeys
* fix a couple of build problems during the preprocessing of the libbe-
sources when extracting catalog keys, all due to private headers not
being found
* move ZombieReplicantView.h from kits/interface to
headers/private/interface, as this way it can be picked up when
building the libbe catalog


# 560ff4478d5c85455ea3e5ed5e392ef93132d545 25-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Use resource definition files instead of DoCatalogs rule. Rename B_TRANSLATE_APP_NAME and related macros to the more generic B_TRANSLATE_SYSTEM_NAME, to also fits add-ons, folders, etc, and make 'System name' its standard context. Change CodyCam and PoorMan's app signatures to match the overall x-vnd.Haiku-App pattern. Some clean-up. Make SlideShowSaver build again.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41103 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2e7a9f278338d648b56f196710212fce74571fff 13-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Piggy-back catalog attribute creation on the DoCatalogs rule. I tried to also add the corresponding resource from DoCatalogs, but so far I have not been able to make it work.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40944 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2cfa3e7a046ede5964005f275862c1dbc3060ea1 03-Mar-2011 Rene Gollent <anevilyak@gmail.com>

The build compatibility libs are needed for this rule when invoked on non-Haiku hosts. Fixes the build on non-Haiku host platforms.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40799 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a6f7da97243cd315b19f49a431f6edd9cf27c48e 02-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Jam rule to add an attribute for catalog lookup of localized entry name.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40790 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9de5b022528d89a7b67ee0dfcda2c4f3b8df707e 24-Oct-2010 Matt Madia <mattmadia@gmail.com>

Renamed the variables for the catalogs and re-introduced the target 'catkeys',
which builds just the en.catkeys inside HAIKU_OUTPUT_DIR/objects/catalogs


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39130 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a8fcb885b086ab456cb5ce297939c5d912c6726d 23-Oct-2010 Matt Madia <mattmadia@gmail.com>

Improved upon r39090.
* removed the catkeys pseudo-target
* created catalogs pseudo-target, which builds all catalogs & en.catkeys(.pre)
* created LocalizedTargets pseudo-target, which builds all targets that have
been localized.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39114 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1974e3382646e618bdc5e8f54e57e0bc3f46cc64 23-Oct-2010 Matt Madia <mattmadia@gmail.com>

* More work relating to supporting multiple localized targets in the same
directory. Introduced a new variable HAIKU_MULTIPLE_LOCALIZED_TARGETS, which
gets set in any Jamfiles that contain multiple DoCatalogs invocations. This
removes the need to supply folder parameter to DoCatalogs.
* Add the DoCatalogs invocation for filepanel.
* Relocated the catkeys for Screenshot and screenshot into their respective
directories.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39112 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 85cf9e37d65dff373ffd7000c3eb043d0b1df665 23-Oct-2010 Matt Madia <mattmadia@gmail.com>

Updated DoCatalogs rule, to apply a grist based on the target's signature and
not based on the automatic path-based grist. This (in conjunction with passing
a value for the 'folder' parameter) allows multiple targets within the same
source directory to have their own catalog files.
Fixes #6741.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39109 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 80ad173e8928f1f6659bb5065334567703065896 23-Oct-2010 Matt Madia <mattmadia@gmail.com>

Introduced a pseudo-target "catkeys", for building all of the localized
applications. The eventual goal is to have jam package a catkeys.zip,
which can be provided to the application translation websites.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39090 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e0f9a0eac6ffd56453eb0c5e956cdbb2528b87ee 06-Oct-2010 Matt Madia <mattmadia@gmail.com>

Fixed a stray typo from r38873, which prevented catkey & catalog
generation/collection. Thanks RISC for pointing this out!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38894 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 53fb9062d289df52da5bb81ccaf713bc95087274 03-Oct-2010 Matt Madia <mattmadia@gmail.com>

Fixed a typo from last minute changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38874 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ab17e86a66c29063952e40a14d56d52d15059700 03-Oct-2010 Matt Madia <mattmadia@gmail.com>

Reworked LocaleRules (again). The generated catkeys and catalogs are stored in
a directory structure that reflects the catalogs in the repository. DoCatalogs
accepts an optional folder parameter, which allows one to specify an additional
subfolder to glob *.catkeys from. For example dstcheck in src/bin.
Improves upon r38819 and should address the concerns in
http://www.freelists.org/post/haiku/BOM-providing-catkeyszip-and-catkeyszipmd5-again,1


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38873 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0a53d94bd50f2e68b629179120fdd9a1e5b2e2f5 26-Sep-2010 Matt Madia <mattmadia@gmail.com>

Introduced a new variable HAIKU_CATALOGS_OBJECT_DIR. The catkeys and catalogs
are stored in signature-based subdirectories. This improves upon r37871 and
should allow BOM to properly harvest catkeys for online translation tools.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38819 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a7faa0582237fe521f174266c6f6a0bd8b28316b 03-Aug-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

* Allow to put the different catalogs for the bin/ directory in spearate places in the generated folder.
* I didn't manage to make it work for the translations, however. If someone with better jam knowledge could look at it...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37871 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ad516863532f9b1ad947b88c329d498cfcd5971b 25-Jul-2010 Oliver Tappe <zooey@hirschkaefer.de>

* improved the locale kit build rules and headers to use a different set of
B_TRANSLATE-macros when running collectcatkeys, simplifying the regex a lot
* added B_TRANSLATE_NOCOLLECT...-macros for the case where a non-literal
string shall be translated, but not picked up by collectcatkeys


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37746 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b891b0acaeb1ff1980ebb6af6b6768ec9b9be8d0 23-Jul-2010 Oliver Tappe <zooey@hirschkaefer.de>

* broke out locale-related jam rules into their own file, LocaleRules
* made locale build tools shut up about anything except warnings or errors


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37723 a95241bf-73f2-0310-859d-f6bbb57e9c96