Merge liblocale.so into libbe.so.

* Make the locale kit a part of libbe.
* Drop the LocaleBackend kludge used from within libbe (and from
  other places, too) in order to access system catalog strings. 
  This is now done via gSystemCatalog, which is provided and initialized
  by libbe.
* Drop all references to liblocale.so from all Jamfiles.
* Add legacy symlink liblocale.so in order to keep optional packages
  that rely on it in a working state.

TODO: the documentation hasn't been updated.
This commit is contained in:
Oliver Tappe
2012-04-04 22:44:42 +02:00
parent 06114afc50
commit 60f75e901c
36 changed files with 158 additions and 363 deletions
-34
View File
@@ -1,34 +0,0 @@
/*
* Copyright 2010, Oliver Tappe, [email protected].
* Distributed under the terms of the MIT License.
*/
#ifndef _LOCALE_BACKEND_H
#define _LOCALE_BACKEND_H
#include <SupportDefs.h>
namespace BPrivate {
class LocaleBackend {
public:
LocaleBackend();
virtual ~LocaleBackend();
virtual const char* GetString(const char* string,
const char* context = NULL,
const char* comment = NULL) = 0;
static status_t LoadBackend();
};
extern LocaleBackend* gLocaleBackend;
} // namespace BPrivate
#endif // _LOCALE_BACKEND_H
@@ -1,32 +0,0 @@
/*
* Copyright 2010, Oliver Tappe, [email protected].
* Distributed under the terms of the MIT License.
*/
#ifndef _LIBBE_LOCALE_BACKEND_H
#define _LIBBE_LOCALE_BACKEND_H
#include <LocaleBackend.h>
class BCatalogAddOn;
namespace BPrivate {
class LibbeLocaleBackend : public LocaleBackend {
public:
LibbeLocaleBackend();
virtual ~LibbeLocaleBackend();
virtual const char* GetString(const char* string,
const char* context = NULL,
const char* comment = NULL);
private:
BCatalogAddOn* systemCatalog;
};
} // namespace BPrivate
#endif // _LIBBE_LOCALE_BACKEND_H
+18
View File
@@ -0,0 +1,18 @@
/*
* Copyright 2010, Oliver Tappe, [email protected].
* Distributed under the terms of the MIT License.
*/
#ifndef _SYSTEM_CATALOG_H_
#define _SYSTEM_CATALOG_H_
#include <Catalog.h>
namespace BPrivate {
extern BCatalogAddOn* gSystemCatalog;
} // namespace BPrivate
#endif // _SYSTEM_CATALOG_H_