Commit Graph

30 Commits

Author SHA1 Message Date
Augustin Cavalier
1ea3818ff5 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.)
2021-09-06 16:45:13 -04:00
Augustin Cavalier
128781e740 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
2019-08-30 17:11:50 -04:00
Augustin Cavalier
d37ae86568 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.
2018-08-21 20:52:41 -04:00
noreply@haiku-os.org
5174b9e8d1 Revert "Update translations from Pootle"
This reverts commit 6b7f260899.
2018-08-21 17:58:13 +00:00
Autocomitter
6b7f260899 Update translations from Pootle 2018-08-21 14:12:05 +00:00
Augustin Cavalier
4c13d20c24 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.
2018-08-13 17:00:16 -04:00
Augustin Cavalier
20c61bb7a4 Revert unrelated changes from previous commit.
I should have read the update script more closely as to
how it added changes for committing...
2018-08-13 15:58:01 -04:00
Autocomitter
ef9994ee77 Update translations from Pootle 2018-08-13 19:45:39 +00:00
Oliver Tappe
afde44733f * 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.
2014-08-13 13:32:34 +02:00
Oliver Tappe
8c54af563c Whitespace cleanup in root and 'build' folder.
* Removed trailing whitespace and empty lines at top of files.
2014-05-01 12:55:41 +02:00
Ingo Weinhold
b0944c78b0 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).
2013-08-01 08:54:06 +02:00
Jerome Duval
1183fb71ae LocaleRules: define includesSeparator 2013-05-13 23:07:28 +02:00
Oliver Tappe
e19d7089a7 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
2012-08-16 21:12:55 +02:00
Oliver Tappe
248f2283dd 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
2012-04-16 00:04:41 +02:00
Jonas Sundström
560ff4478d 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
2011-03-25 22:13:48 +00:00
Jonas Sundström
2e7a9f2783 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
2011-03-14 02:07:50 +00:00
Rene Gollent
2cfa3e7a04 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
2011-03-03 21:56:56 +00:00
Jonas Sundström
a6f7da9724 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
2011-03-03 12:58:02 +00:00
Matt Madia
9de5b02252 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
2010-10-24 16:55:33 +00:00
Matt Madia
a8fcb885b0 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
2010-10-24 03:31:34 +00:00
Matt Madia
1974e33826 * 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
2010-10-24 02:49:44 +00:00
Matt Madia
85cf9e37d6 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
2010-10-24 01:21:07 +00:00
Matt Madia
80ad173e89 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
2010-10-23 20:26:08 +00:00
Matt Madia
e0f9a0eac6 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
2010-10-07 00:34:12 +00:00
Matt Madia
53fb9062d2 Fixed a typo from last minute changes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38874 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-03 15:24:50 +00:00
Matt Madia
ab17e86a66 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
2010-10-03 15:21:59 +00:00
Matt Madia
0a53d94bd5 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
2010-09-26 16:55:06 +00:00
Adrien Destugues
a7faa05822 * 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
2010-08-03 14:10:15 +00:00
Oliver Tappe
ad51686353 * 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
2010-07-25 22:47:39 +00:00
Oliver Tappe
b891b0acae * 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
2010-07-23 19:56:24 +00:00