summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorphantom <phantom@FreeBSD.org>2001-12-21 13:14:02 +0000
committerphantom <phantom@FreeBSD.org>2001-12-21 13:14:02 +0000
commitba5bb8717a32d37a6763a4dfaed093b85f42dd22 (patch)
tree7a8417702fddd151b8a6759adef054750e937497
parent2fae03920fe96a65d63f45eee4e8ceef4aa6a078 (diff)
downloadFreeBSD-src-ba5bb8717a32d37a6763a4dfaed093b85f42dd22.zip
FreeBSD-src-ba5bb8717a32d37a6763a4dfaed093b85f42dd22.tar.gz
Slightly re-work locale messages storage scheme. Before this commit
LC_MESSAGES related data was installed to <locale>/LC_MESSAGES file. Now it go to <locale>/LC_MESSAGES/SYS_LC_MESSAGES file. LC_MESSAGES directory is supposed to be storage of message catalogs of userland tools. This should allow us to avoid many potential problems with future libintl related functionality introduction. Thanks for useful suggestions about correct way how to replace plain files with directories at installworld stage to: Ruslan Ermilov <ru>
-rw-r--r--etc/Makefile1
-rw-r--r--etc/mtree/BSD.usr.dist158
-rw-r--r--lib/libc/locale/lmessages.c2
-rw-r--r--share/msgdef/Makefile42
4 files changed, 181 insertions, 22 deletions
diff --git a/etc/Makefile b/etc/Makefile
index 6787fd9..7a38bd8 100644
--- a/etc/Makefile
+++ b/etc/Makefile
@@ -168,6 +168,7 @@ distribution:
distrib-dirs:
mtree -deU ${MTREE_FOLLOWS_SYMLINKS} -f ${.CURDIR}/mtree/BSD.root.dist -p ${DESTDIR}/
mtree -deU ${MTREE_FOLLOWS_SYMLINKS} -f ${.CURDIR}/mtree/BSD.var.dist -p ${DESTDIR}/var
+ -rm -f ${DESTDIR}/usr/share/locale/*/LC_MESSAGES
mtree -deU ${MTREE_FOLLOWS_SYMLINKS} -f ${.CURDIR}/mtree/BSD.usr.dist -p ${DESTDIR}/usr
mtree -deU ${MTREE_FOLLOWS_SYMLINKS} -f ${.CURDIR}/mtree/BSD.include.dist \
-p ${DESTDIR}/usr/include
diff --git a/etc/mtree/BSD.usr.dist b/etc/mtree/BSD.usr.dist
index b6b1ee9..ba33e0f 100644
--- a/etc/mtree/BSD.usr.dist
+++ b/etc/mtree/BSD.usr.dist
@@ -482,164 +482,322 @@
..
locale
af_ZA.ISO8859-1
+ LC_MESSAGES
+ ..
..
af_ZA.ISO8859-15
+ LC_MESSAGES
+ ..
..
bg_BG.CP1251
+ LC_MESSAGES
+ ..
..
cs_CZ.ISO8859-2
+ LC_MESSAGES
+ ..
..
da_DK.ISO8859-1
+ LC_MESSAGES
+ ..
..
da_DK.ISO8859-15
+ LC_MESSAGES
+ ..
..
de_AT.ISO8859-1
+ LC_MESSAGES
+ ..
..
de_AT.ISO8859-15
+ LC_MESSAGES
+ ..
..
de_CH.ISO8859-1
+ LC_MESSAGES
+ ..
..
de_CH.ISO8859-15
+ LC_MESSAGES
+ ..
..
de_DE.ISO8859-1
+ LC_MESSAGES
+ ..
..
de_DE.ISO8859-15
+ LC_MESSAGES
+ ..
..
el_GR.ISO8859-7
+ LC_MESSAGES
+ ..
..
en_AU.ISO8859-1
+ LC_MESSAGES
+ ..
..
en_AU.ISO8859-15
+ LC_MESSAGES
+ ..
..
en_AU.US-ASCII
+ LC_MESSAGES
+ ..
..
en_CA.ISO8859-1
+ LC_MESSAGES
+ ..
..
en_CA.ISO8859-15
+ LC_MESSAGES
+ ..
..
en_CA.US-ASCII
+ LC_MESSAGES
+ ..
..
en_GB.ISO8859-1
+ LC_MESSAGES
+ ..
..
en_GB.ISO8859-15
+ LC_MESSAGES
+ ..
..
en_GB.US-ASCII
+ LC_MESSAGES
+ ..
..
en_NZ.ISO8859-1
+ LC_MESSAGES
+ ..
..
en_NZ.ISO8859-15
+ LC_MESSAGES
+ ..
..
en_NZ.US-ASCII
+ LC_MESSAGES
+ ..
..
en_US.ISO8859-1
+ LC_MESSAGES
+ ..
..
en_US.ISO8859-15
+ LC_MESSAGES
+ ..
..
en_US.US-ASCII
+ LC_MESSAGES
+ ..
..
es_ES.ISO8859-1
+ LC_MESSAGES
+ ..
..
es_ES.ISO8859-15
+ LC_MESSAGES
+ ..
..
et_EE.ISO8859-15
+ LC_MESSAGES
+ ..
..
fi_FI.ISO8859-1
+ LC_MESSAGES
+ ..
..
fi_FI.ISO8859-15
+ LC_MESSAGES
+ ..
..
fr_BE.ISO8859-1
+ LC_MESSAGES
+ ..
..
fr_BE.ISO8859-15
+ LC_MESSAGES
+ ..
..
fr_CA.ISO8859-1
+ LC_MESSAGES
+ ..
..
fr_CA.ISO8859-15
+ LC_MESSAGES
+ ..
..
fr_CH.ISO8859-1
+ LC_MESSAGES
+ ..
..
fr_CH.ISO8859-15
+ LC_MESSAGES
+ ..
..
fr_FR.ISO8859-1
+ LC_MESSAGES
+ ..
..
fr_FR.ISO8859-15
+ LC_MESSAGES
+ ..
..
hi_IN.ISCII-DEV
+ LC_MESSAGES
+ ..
..
hr_HR.ISO8859-2
+ LC_MESSAGES
+ ..
..
hu_HU.ISO8859-2
+ LC_MESSAGES
+ ..
..
is_IS.ISO8859-1
+ LC_MESSAGES
+ ..
..
is_IS.ISO8859-15
+ LC_MESSAGES
+ ..
..
it_CH.ISO8859-1
+ LC_MESSAGES
+ ..
..
it_CH.ISO8859-15
+ LC_MESSAGES
+ ..
..
it_IT.ISO8859-1
+ LC_MESSAGES
+ ..
..
it_IT.ISO8859-15
+ LC_MESSAGES
+ ..
..
ja_JP.SJIS
+ LC_MESSAGES
+ ..
..
ja_JP.eucJP
+ LC_MESSAGES
+ ..
..
ko_KR.eucKR
+ LC_MESSAGES
+ ..
..
la_LN.ISO8859-1
+ LC_MESSAGES
+ ..
..
la_LN.ISO8859-15
+ LC_MESSAGES
+ ..
..
la_LN.ISO8859-2
+ LC_MESSAGES
+ ..
..
la_LN.ISO8859-4
+ LC_MESSAGES
+ ..
..
la_LN.US-ASCII
+ LC_MESSAGES
+ ..
..
lt_LT.ISO8859-4
+ LC_MESSAGES
+ ..
..
nl_BE.ISO8859-1
+ LC_MESSAGES
+ ..
..
nl_BE.ISO8859-15
+ LC_MESSAGES
+ ..
..
nl_NL.ISO8859-1
+ LC_MESSAGES
+ ..
..
nl_NL.ISO8859-15
+ LC_MESSAGES
+ ..
..
no_NO.ISO8859-1
+ LC_MESSAGES
+ ..
..
no_NO.ISO8859-15
+ LC_MESSAGES
+ ..
..
pl_PL.ISO8859-2
+ LC_MESSAGES
+ ..
..
pt_PT.ISO8859-1
+ LC_MESSAGES
+ ..
..
pt_PT.ISO8859-15
+ LC_MESSAGES
+ ..
..
ru_RU.CP866
+ LC_MESSAGES
+ ..
..
ru_RU.ISO8859-5
+ LC_MESSAGES
+ ..
..
ru_RU.KOI8-R
+ LC_MESSAGES
+ ..
..
sk_SK.ISO8859-2
+ LC_MESSAGES
+ ..
..
sl_SI.ISO8859-2
+ LC_MESSAGES
+ ..
..
sv_SE.ISO8859-1
+ LC_MESSAGES
+ ..
..
sv_SE.ISO8859-15
+ LC_MESSAGES
+ ..
..
tr_TR.ISO8859-9
+ LC_MESSAGES
+ ..
..
uk_UA.ISO8859-5
..
uk_UA.KOI8-U
+ LC_MESSAGES
+ ..
..
zh_CN.eucCN
+ LC_MESSAGES
+ ..
..
zh_TW.Big5
+ LC_MESSAGES
+ ..
..
..
man
diff --git a/lib/libc/locale/lmessages.c b/lib/libc/locale/lmessages.c
index 4dcd719..3349700 100644
--- a/lib/libc/locale/lmessages.c
+++ b/lib/libc/locale/lmessages.c
@@ -60,7 +60,7 @@ __messages_load_locale(const char *name) {
_messages_locale.nostr = empty;
return __part_load_locale(name, &_messages_using_locale,
- _messages_locale_buf, "LC_MESSAGES",
+ _messages_locale_buf, "LC_MESSAGES/SYS_LC_MESSAGES",
LCMESSAGES_SIZE_FULL, LCMESSAGES_SIZE_MIN,
(const char **)&_messages_locale);
}
diff --git a/share/msgdef/Makefile b/share/msgdef/Makefile
index 54a72bd..5fae006 100644
--- a/share/msgdef/Makefile
+++ b/share/msgdef/Makefile
@@ -64,39 +64,39 @@ all: ${LOCALES:S/$/.out/g}
afterinstall:
.for lang in ${LOCALES}
${INSTALL} ${COPY} -m 644 -o ${BINOWN} -g ${BINGRP} ${lang}.out \
- ${LOCALEDIR}/${lang}/LC_MESSAGES
+ ${LOCALEDIR}/${lang}/LC_MESSAGES/SYS_LC_MESSAGES
.endfor
.for link in ${8859_15_LINKS}
- ln -sf ../${link}.ISO8859-1/LC_MESSAGES \
- ${LOCALEDIR}/${link}.ISO8859-15/LC_MESSAGES
+ ln -sf ../../${link}.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES \
+ ${LOCALEDIR}/${link}.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES
.endfor
.for link in ${ENGLISHLINKS}
- ln -sf ../${ENGLISH}.ISO8859-1/LC_MESSAGES \
- ${LOCALEDIR}/${link}.ISO8859-1/LC_MESSAGES
- ln -sf ../${ENGLISH}.ISO8859-1/LC_MESSAGES \
- ${LOCALEDIR}/${link}.ISO8859-15/LC_MESSAGES
- ln -sf ../${ENGLISH}.ISO8859-1/LC_MESSAGES \
- ${LOCALEDIR}/${link}.US-ASCII/LC_MESSAGES
+ ln -sf ../../${ENGLISH}.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES \
+ ${LOCALEDIR}/${link}.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES
+ ln -sf ../../${ENGLISH}.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES \
+ ${LOCALEDIR}/${link}.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES
+ ln -sf ../../${ENGLISH}.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES \
+ ${LOCALEDIR}/${link}.US-ASCII/LC_MESSAGES/SYS_LC_MESSAGES
.endfor
.for link in ${FRENCHLINKS}
- ln -sf ../${FRENCH}.ISO8859-1/LC_MESSAGES \
- ${LOCALEDIR}/${link}.ISO8859-1/LC_MESSAGES
- ln -sf ../${FRENCH}.ISO8859-1/LC_MESSAGES \
- ${LOCALEDIR}/${link}.ISO8859-15/LC_MESSAGES
+ ln -sf ../../${FRENCH}.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES \
+ ${LOCALEDIR}/${link}.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES
+ ln -sf ../../${FRENCH}.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES \
+ ${LOCALEDIR}/${link}.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES
.endfor
.for link in ${GERMANLINKS}
- ln -sf ../${GERMAN}.ISO8859-1/LC_MESSAGES \
- ${LOCALEDIR}/${link}.ISO8859-1/LC_MESSAGES
- ln -sf ../${GERMAN}.ISO8859-1/LC_MESSAGES \
- ${LOCALEDIR}/${link}.ISO8859-15/LC_MESSAGES
+ ln -sf ../../${GERMAN}.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES \
+ ${LOCALEDIR}/${link}.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES
+ ln -sf ../../${GERMAN}.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES \
+ ${LOCALEDIR}/${link}.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES
.endfor
.for link in ${CZECHLINKS}
- ln -sf ../${CZECH}.ISO8859-2/LC_MESSAGES \
- ${LOCALEDIR}/${link}.ISO8859-2/LC_MESSAGES
+ ln -sf ../../${CZECH}.ISO8859-2/LC_MESSAGES/SYS_LC_MESSAGES \
+ ${LOCALEDIR}/${link}.ISO8859-2/LC_MESSAGES/SYS_LC_MESSAGES
.endfor
.for link in ${ASCIILINKS}
- ln -sf ../${link}.ISO8859-1/LC_MESSAGES \
- ${LOCALEDIR}/${link}.US-ASCII/LC_MESSAGES
+ ln -sf ../../${link}.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES \
+ ${LOCALEDIR}/${link}.US-ASCII/LC_MESSAGES/SYS_LC_MESSAGES
.endfor
.include <bsd.prog.mk>
OpenPOWER on IntegriCloud