Process sgml and man files in doc directory for FreeBSD.
authorUlrich Wilkens <mail@uwilkens.de>
Wed, 15 Aug 2012 20:43:43 +0000 (22:43 +0200)
committerJon Trulson <jon@radscan.com>
Wed, 15 Aug 2012 21:56:03 +0000 (15:56 -0600)
12 files changed:
cde/config/cf/FreeBSD.cf
cde/config/cf/cde.tmpl
cde/doc/C/man/Imakefile
cde/doc/de_DE.ISO8859-1/Imakefile
cde/doc/es_ES.ISO8859-1/Imakefile
cde/doc/fr_FR.ISO8859-1/Imakefile
cde/doc/it_IT.ISO8859-1/Imakefile
cde/doc/ja_JP.dt-eucJP/Imakefile
cde/lib/DtHelp/FreeBSD.lcx [new file with mode: 0644]
cde/lib/DtHelp/OpenBSD.lcx [new file with mode: 0644]
cde/programs/dtdocbook/tcl/Imakefile
cde/programs/nsgmls/Imakefile

index 4f81bef80a3a76d2757d337d18164fd68b095965..bdf757aa434de5d0b8050793c2effef5810e6024 100644 (file)
@@ -138,6 +138,8 @@ XCOMM operating system:  OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVe
 #define ServerExtraDefines     GccGasOption XFree86ServerDefines
 
 #define StandardDefines                -DCSRG_BASED
+#define StandardIncludes       -I/usr/local/include
+#define BuildLibPathVar                LD_LIBRARY_PATH
 
 #define TroffCmd               groff -Tps
 #define SetTtyGroup            YES
index a627226e40e471242d29f1532a9da2b7c3b73262..689f485369627acab89b847e9c974633392a61e3 100644 (file)
@@ -263,7 +263,7 @@ XCOMM $XConsortium: cde.tmpl /main/2 1996/12/04 10:13:09 swick $
 # if UseInstalledCDE
 #  define DtDocBook dtdocbook
 # else
-#  define DtDocBook $(CLIENTENVSETUP) $(DTLCXENVSETUP) $(CDESRC)/dtdocbook/doc2sdl/dtdocbook
+#  define DtDocBook $(CLIENTENVSETUP) $(DTLCXENVSETUP) $(KORNSHELL) $(CDESRC)/dtdocbook/doc2sdl/dtdocbook
 # endif
 #endif
 #ifndef DtDocBookOptions
index b13b1d01b40a096d426dca91dfe2b47cb784eeb0..67a1ef6632ecef7cf122fb22b74f8aa4b9071f18 100644 (file)
@@ -10,13 +10,13 @@ DBENVSETUP = CDETOP=$(CDETOP)
 Concat(cde,step):: dst                                                 @@\
 dst: src cdedecl.sgm ../guides/man/SEntity.sgm ../guides/common/ManLinks.sgm ../m-guides/common/ManLinks.sgm @@\
        $(RM) $@                                                        @@\
-       $(DBENVSETUP) $(DBTOMAN) $(DBOPTS) cdedecl.sgm src $@
+       $(DBENVSETUP) $(KORNSHELL) $(DBTOMAN) $(DBOPTS) cdedecl.sgm src $@
 
 #define MotifMan(step,src,dst)                                         @@\
 Concat(mot,step):: dst                                                 @@\
 dst: src motifdecl.sgm ../m-guides/common/BOOKDEFS.sgm ../m-guides/common/ManLinks.sgm @@\
        $(RM) $@                                                        @@\
-       $(DBENVSETUP) $(DBTOMAN) $(DBOPTS) motifdecl.sgm src $@
+       $(DBENVSETUP) $(KORNSHELL) $(DBTOMAN) $(DBOPTS) motifdecl.sgm src $@
 
 #define ManAlias(step,src,dst)                                         @@\
 step:: dst                                                             @@\
index ae55087a778b5ee3b4d39ec135f38d3a5df5f86f..e8090a8d4acbbf836d26c5538f3b956a2419be87 100644 (file)
@@ -2,7 +2,7 @@ XCOMM $XConsortium: Imakefile /main/3 1996/06/19 16:19:59 drk $
 #define IHaveSubdirs
 #define PassCDebugFlags
 
-#if defined(LinuxArchitecture)
+#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture) || defined(FreeBSDArchitecture)
 XCOMM we cannot build guides on linux yet
 SUBDIRS = help 
 #else
index 0e8214c3ed9792a251fe3906c2c897f8cde83825..994d034a3f0395e8c0edd27471e193532ec39d22 100644 (file)
@@ -2,7 +2,7 @@ XCOMM $XConsortium: Imakefile /main/3 1996/06/19 16:32:32 drk $
 #define IHaveSubdirs
 #define PassCDebugFlags
 
-#if defined(LinuxArchitecture)
+#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture) || defined(FreeBSDArchitecture)
 XCOMM we cannot build guides on linux yet
 SUBDIRS = help 
 #else
index 4f47a4bfe3f70bfa0eb0c4ac4e1833df81aeefc7..b6dfe70367af53df5891a7b2c7c9c48c5a22467c 100644 (file)
@@ -2,7 +2,7 @@ XCOMM $XConsortium: Imakefile /main/3 1996/06/19 16:43:05 drk $
 #define IHaveSubdirs
 #define PassCDebugFlags
 
-#if defined(LinuxArchitecture)
+#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture) || defined(FreeBSDArchitecture)
 XCOMM we cannot build guides on linux yet
 SUBDIRS = help 
 #else
index dbec9bb1d5dcbe1bdfd31876fd6a614266912687..c62ff2e0dee313ce953b0cab34e8f03ff7ab28c2 100644 (file)
@@ -2,7 +2,7 @@ XCOMM $XConsortium: Imakefile /main/3 1996/06/19 16:53:57 drk $
 #define IHaveSubdirs
 #define PassCDebugFlags
 
-#if defined(LinuxArchitecture)
+#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture) || defined(FreeBSDArchitecture)
 XCOMM we cannot build guides on linux yet
 SUBDIRS = help 
 #else
index c775b2cfa223ee57295a88c27658b5fb9fa67530..b45fe15b31cb64afb44d21aded2d319277f11ab7 100644 (file)
@@ -3,7 +3,7 @@ XCOMM $TOG: Imakefile /main/5 1997/03/05 11:10:37 damon $
 #define PassCDebugFlags
 
 /* due to split-VOB setup, force help to come last in make Makefiles */
-#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture)
+#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture) || defined(FreeBSDArchitecture)
 XCOMM we cannot build guides on linux yet
 SUBDIRS = help
 BSUBDIRS = help 
diff --git a/cde/lib/DtHelp/FreeBSD.lcx b/cde/lib/DtHelp/FreeBSD.lcx
new file mode 100644 (file)
index 0000000..46091fe
--- /dev/null
@@ -0,0 +1,571 @@
+!!!!!!!!!!!!!! FreeBSD Locale-Related Translations !!!!!!!!!!!!!!
+! File:                        FreeBSD.lcx
+! Default location:    /usr/dt/config/svc/FreeBSD.lcx
+! Purpose:
+!    Define the FreeBSD-specific set of locale-related translations.
+! Description:
+!    This file contains the set of all locale-related translations
+!    that  can occur during _DtLcxXlateOpToStd() and _DtLcxStdToOp()
+!    calls on FreeBSD platforms. Note that platform-specific tables may
+!    include more than one translation to and from CDE standard
+!    strings if they can be distinguished by version, operation, or
+!    pattern matching.
+!
+!    It is important that additional CDE standard strings only
+!    be created by the CDE owner of the _DtLcx translation service
+!    and NOT be created by an individual vendor or user.  This be because
+!    the purpose of adopting a set of CDE standard strings is to
+!    support interoperability across platforms.  If individual vendors
+!    add their own "standard" strings and these strings are not
+!    known on other platforms, then the goal of interoperability
+!    will be defeated.
+!
+!    If you feel that a new CDE standard string is needed,
+!    contact your CDE representative/vendor with a specific
+!    proposal and justification and have them forward it to
+!    the owner of the CDE _DtLcx service.
+!
+!    Note that it is allowed for vendors and users to add new
+!    operations for which translations are specified and which
+!    utilize the standard strings.  If the operations are of
+!    general utility, please bring them to the attention of
+!    your CDE representative/vendor for forwarding to the
+!    _DtLcx owner.
+! Invoked by:
+!    This table is used by the _DtLcx translation service
+! Defects:
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+!!!!!!!!!!!!!!!! translation specification syntax !!!!!!!!!!!!!!!!!!!
+! Introductory fields:
+! ====================
+! The _DtLcx translation specifications have a fixed number of
+! introductory fields followed by a several standard value
+! fields and the operation-specific value.
+! The introductory fields are:
+!  <platform>.<version range>.<operation(s)>.<kind>
+!
+! Platform generally is the same string as uname(1) -s.
+! Version range utilizes normalized version numbers that
+!   are acquired using the 'version' translations.
+! Operations are one or more comma-separated strings that
+!   uniquely identify the operation associated with the
+!   operation-specific value.  This string is specified
+!   as part of the request for a translation.
+!
+! Kinds of translations allow the mechanism to support several modes
+!   of operation, each useful for different purposes.  When
+!   reading or writing a specification, pay particular attention
+!   to the kind of specification, as this guides the usage of it.
+!
+! Specification kinds:
+!  .=. means a valid bi-directional translation requiring the op-value
+!      in the translation specification to exactly match the op-value of
+!      the call to _DtLcxXlateOpToStd(), e.g. foo matches only foo
+!  .~. means a valid bi-directional translation requiring the op-value
+!      in the translation specification to match the beginning of the
+!      op-value of the call to _DtLcxXlateOpToStd(), e.g. foo matches
+!      foo@@bar.  This is often useful, e.g. for operation-specific
+!      locale strings that may also contain modifier suffixes.
+!  .>. means only from standard to op-specific (generally a
+!      compatibility translation, meaning on op-specific value
+!      that will work for the standard, although that is not
+!      the straight mapping)
+!  .<. means only from op-specific to standard (generally a
+!      regex in the op-value which is used to map a class of
+!      op values to a standard value)
+!  .0. means that translation is not supported and if a translation
+!      request matches the specification, the request will fail.
+!
+! Standard values:
+! ================
+! _DtLcx defines the order of the standard values in the
+! translations it utilizes.  All translation specifications
+! must adhere to this order.
+!    <std lang_terr>.<std codeset>.<std modifier>
+! In CDE 1.0, no modifiers are standard and that
+! portion of the table is unspecified.  This means
+! that no CDE standard modifiers are available across
+! platforms.  Operations that use only the <std codeset>
+! should specify the wildcard character ("?") for the
+! <std lang_terr> value.
+!
+! Operation-specific value:
+! =========================
+! The operation-specific value is a string that is used
+! according to the kind of translation.  The syntax is
+!      : <op-string>
+! or   :  "<op-string>", if it contains white space
+!
+! Filling in the table of translations:
+! =====================================
+! The person preparing the translation table should know
+! the minimum version of the target platform that is
+! be supported.  For example, assume that we must
+! complete the table for all versions 9.00 and higher.
+!
+! The objective is then to provide two sets of translations:
+! a full set of translations from CDE standard locales to
+! valid platform locales, and a full set of translations
+! from valid platform locales to some or all CDE standard
+! locales.
+!
+! Translations from CDE standard locales to valid platform
+! locales must use the .~. .=. or .>. mappings.  When there
+! is a 1:1 mapping between a CDE locale and a platform locale,
+! use the .~. or .=. mapping.  See the comment below to
+! decide which to use.  When there is no 1:1 mapping between
+! CDE locale and platform locale, use the .>. mapping.  This
+! provides a valid translation from the CDE locale to the
+! best-suitable platform locale, but never translates from
+! that platform locale to the CDE locale.
+!
+! Translations from every platform locale to the appropriate
+! CDE locale must use the .~. .=. or .<. mappings.
+! When there is a 1:1 mapping between a platform locale and
+! a CDE standard locale, use the .~. or .=. mapping.  See the
+! comment below to decide which to use.  If there is a 1:1
+! mapping, but the platform locale pattern uses a regular
+! expression, or if more than one platform locale can
+! be translated to one CDE standard locale, the .<. mapping must
+! be used.
+!
+! If no appropriate CDE standard locale can be found, you have
+! identified the need for a new CDE standard locale.  Refer to
+! the instructions at the head of this file for how to go about
+! registering a new CDE standard locale.  You should not create
+! a new "standard" locale (the left hand side of the translation
+! specification) without registering it with CDE, because this
+! will hinder the free exchange of information across locales
+! and platforms.
+!
+! The .=. and .~. mappings are similar.  The difference is
+! that the .=. mapping requires an exact string match between
+! the platform locale and the string provided to the
+! translation routine.  Generally speaking, this mapping
+! is risky unless exact matchings can be guaranteed in
+! all DtLcx clients for the particular operation in question.
+! The .~. mapping is to be preferred, but the .=. translation
+! is useful in limited situations, where similar strings may
+! occur.
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+! define this resource to dump debug/test info
+!*debugDtXlate:  True
+
+!!!!!!!!!!!!!!!! FreeBSD Version Identificaton !!!!!!!!!!!!!!!!!
+! These translations are used by the _DtXlateGetXlateEnv()
+! call to determine the version number to use.
+!
+! To understand the translation, realize that the
+! operation-specific regexp(5) pattern on the right
+! hand side is matched against the strings returned
+! by uname(2).  The best match determines the "normalized"
+! version number of the platform, which should range from
+! 001 and up.  By convention, major release numbers
+! map to centuries and minor release numbers to within
+! the century.
+!
+! To determine the string that the regular expression on the
+! right hand side is matching against, use uname(1) and run
+! 'uname -r' and 'uname -v' and note the strings.  During execution,
+! the strings returned by this command are retrieved and
+! concatenated "rv"--in that order, no extra spaces.
+! This is the string that the pattern must match.
+!
+! Sometimes this string may not be intuitive.  For example,
+! note that FreeBSD 3.2 returns 2 for 'uname -r' and 3 for 'uname -v'.
+! So the pattern string must be 23, not 32.  Do not go by
+! the order of 'uname -rv' or 'uname -vr', as that is not used.
+!!
+
+FreeBSD.?.version.<.100:  ".*"       !! any CDE value
+
+
+!!!!!!!!!!!!!!!! FreeBSD-specific setlocale translations !!!!!!!!!!!!!!!!!!!
+! These translations are for the string returned by the
+! getlocale() or setlocale(LC_xxx,NULL) operations, but not
+! setlocale(LC_ALL,NULL) operation.
+!
+! It provides translations from FreeBSD operation-specific
+! to CDE standard strings and back again.
+!
+! Some language,territory combinations have the following comments:
+!  (1) These ISO territory names may be subject to change
+!      However, their CDE names will continue to be supported
+!  (2) No ISO "territory" name exists for the Arabic-speaking regions of the
+!      world as a whole.  Vendors have sometimes supplied their own.
+!      Those names, when conformant to the ISO model, will be adopted for CDE.
+!
+!Platform Operation Lang_Terr           Op-Value               Language,Territory           Who has
+!---     ---------   -----             --------                ------------------           -------
+!   Version      Kind      Codeset
+!   ----           -       ---------
+
+
+! setlocales Compliance
+FreeBSD.100+.setlocale.~.C.IBM-850:       C                         ! setlocales compliance           ,IBM
+FreeBSD.100+.setlocale.~.POSIX.IBM-850:   POSIX                     ! setlocales compliance           ,IBM
+FreeBSD.100+.setlocale.~.C.ISO-8859-1:       C                      ! setlocales compliance           ,IBM, HP, Sun       , USL
+FreeBSD.100+.setlocale.~.POSIX.ISO-8859-1:   POSIX                  ! setlocales compliance           ,IBM, HP, Sun       , USL
+
+! W European/Americas, Latin 1 codeset
+FreeBSD.100+.setlocale.~.da_DK.ISO-8859-1:     da_DK !.ISO8859-1         ! Danish, Denmark            XoJIG,IBM, HP,           , USL ("da")
+FreeBSD.100+.setlocale.>.de_AT.ISO-8859-1:     de_DE !.ISO8859-1         ! German,Austria             XoJIG,   ,   ,           , USL
+FreeBSD.100+.setlocale.~.de_CH.ISO-8859-1:     de_CH !.ISO8859-1         ! German,Switzerland         XoJIG,IBM,   ,           , USL
+FreeBSD.100+.setlocale.~.de_DE.ISO-8859-1:     de_DE !.ISO8859-1         ! German, Germany            XoJIG,IBM, HP, Sun ("de"), USL ("de")
+FreeBSD.100+.setlocale.>.en_AU.ISO-8859-1:     en_GB !.ISO8859-1         ! English,Australia               ,   ,   ,           , USL
+FreeBSD.100+.setlocale.>.en_CA.ISO-8859-1:     en_US !.ISO8859-1         ! English,Canada             XoJIG,   ,   ,           , USL
+FreeBSD.100+.setlocale.>.en_DK.ISO-8859-1:     en_GB !.ISO8859-1         ! English, Denmark           XoJIG,   ,   ,           , USL
+FreeBSD.100+.setlocale.~.en_GB.ISO-8859-1:     en_GB !.ISO8859-1         ! English, U.K.              XoJIG,IBM, HP,           , USL ("en")
+FreeBSD.100+.setlocale.>.en_JP.ISO-8859-1:     en_JP !.ISO8859-1         ! English, Japan             XoJIG,IBM,   ,           ,
+FreeBSD.100+.setlocale.>.en_JP.ISO-8859-1:     en_US !.ISO8859-1         ! English, Japan             XoJIG,IBM,   ,           ,
+FreeBSD.100+.setlocale.>.en_IE.ISO-8859-1:     en_GB !.ISO8859-1         ! English, Ireland           XoJIG,   ,   ,           , USL
+FreeBSD.100+.setlocale.>.en_MY.ISO-8859-1:     en_US !.ISO8859-1         ! English,Malaysia                ,   ,   ,           , USL
+FreeBSD.100+.setlocale.>.en_NZ.ISO-8859-1:     en_GB !.ISO8859-1         ! English,New Zealand             ,   ,   ,           , USL
+FreeBSD.100+.setlocale.>.en_KR.ISO-8859-1:     en_KR !.ISO8859-1         ! English,Korea                   ,   ,   ,           , USL
+FreeBSD.100+.setlocale.>.en_KR.ISO-8859-1:     en_US !.ISO8859-1         ! English,Korea                   ,IBM,   ,           ,
+FreeBSD.100+.setlocale.>.en_TW.ISO-8859-1:     en_TW !.ISO8859-1         ! English,Taiwan                  ,   ,   ,           , USL
+FreeBSD.100+.setlocale.>.en_TW.ISO-8859-1:     en_US !.ISO8859-1         ! English,Taiwan                  ,IBM,   ,           ,
+FreeBSD.100+.setlocale.~.en_US.ISO-8859-1:     en_US !.ISO8859-1         ! English, USA               XoJIG,IBM, HP, Sun       , USL
+FreeBSD.100+.setlocale.>.es_AR.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Argentina              ,   ,   , Sun       , USL
+FreeBSD.100+.setlocale.>.es_BO.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Bolivia                ,   ,   , Sun
+FreeBSD.100+.setlocale.>.es_CL.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Chile                  ,   ,   , Sun       , USL
+FreeBSD.100+.setlocale.>.es_CO.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Columbia               ,   ,   , Sun
+FreeBSD.100+.setlocale.>.es_CR.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Costa Rica             ,   ,   , Sun
+FreeBSD.100+.setlocale.>.es_EC.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Ecuador                ,   ,   , Sun
+FreeBSD.100+.setlocale.~.es_ES.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Spain             XoJIG,IBM, HP, Sun       , USL
+FreeBSD.100+.setlocale.~.ca_ES.ISO-8859-1:     ca_ES !.ISO8859-1         ! Catalan, Spain             XoJIG,IBM, HP, Sun       , USL
+FreeBSD.100+.setlocale.>.es_GT.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Guatemala              ,   ,   , Sun
+FreeBSD.100+.setlocale.>.es_MX.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Mexico                 ,   ,   , Sun       , USL
+FreeBSD.100+.setlocale.>.es_PE.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Peru                   ,   ,   , Sun
+FreeBSD.100+.setlocale.>.es_UY.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Uruguay                ,   ,   , Sun
+FreeBSD.100+.setlocale.>.es_VE.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Venezuela              ,   ,   , Sun       , USL
+! FreeBSD.100+.setlocale.>.et_EE.ISO-8859-1:                  ! Estonian, Estonia          XoJIG,
+FreeBSD.100+.setlocale.~.fi_FI.ISO-8859-1:     fi_FI !.ISO8859-1              ! Finnish, Finland           XoJIG,IBM, HP,           , USL ("fi")
+! FreeBSD.100+.setlocale.>.fo_FO.ISO-8859-1:                  ! Faroese, Faeroe Island     XoJIG,
+FreeBSD.100+.setlocale.~.fr_BE.ISO-8859-1:     fr_BE !.ISO8859-1         ! French,Belgium             XoJIG,   ,   ,           , USL
+FreeBSD.100+.setlocale.~.fr_CA.ISO-8859-1:     fr_CA !.ISO8859-1         ! French, Canada             XoJIG,IBM, HP,           , USL
+FreeBSD.100+.setlocale.~.fr_CH.ISO-8859-1:     fr_CH !.ISO8859-1         ! French, Switzerland        XoJIG,IBM,   ,           , USL
+FreeBSD.100+.setlocale.~.fr_FR.ISO-8859-1:     fr_FR !.ISO8859-1         ! French, France             XoJIG,IBM, HP, Sun ("fr"), USL ("fr")
+FreeBSD.100+.setlocale.~.is_IS.ISO-8859-1:     is_IS !.ISO8859-1         ! Icelandic, Iceland         XoJIG,IBM, HP,           , USL ("is")
+FreeBSD.100+.setlocale.>.it_CH.ISO-8859-1:     it_IT !.ISO8859-1         ! Italian,Switzerland             ,   ,   ,           , USL
+FreeBSD.100+.setlocale.~.it_IT.ISO-8859-1:     it_IT !.ISO8859-1         ! Italian, Italy             XoJIG,IBM, HP, Sun ("it"), USL ("it")
+! FreeBSD.100+.setlocale.>.kl_GL.ISO-8859-1:                  ! Greenlandic, Greenland     XoJIG,
+! FreeBSD.100+.setlocale.>.lt_LT.ISO-8859-1:                  ! Lithuanian, Lithuania      XoJIG,
+! FreeBSD.100+.setlocale.>.lv_LV.ISO-8859-1:                  ! Latvian, Latvia            XoJIG,
+FreeBSD.100+.setlocale.~.nl_BE.ISO-8859-1:     nl_BE !.ISO8859-1         ! Dutch, Belgium             XoJIG,IBM,   ,           , USL
+FreeBSD.100+.setlocale.~.nl_NL.ISO-8859-1:     nl_NL !.ISO8859-1         ! Dutch, The Netherlands     XoJIG,IBM, HP,           , USL ("nl")
+FreeBSD.100+.setlocale.~.no_NO.ISO-8859-1:     no_NO !.ISO8859-1         ! Norwegian, Norway          XoJIG,IBM, HP,           , USL ("no")
+FreeBSD.100+.setlocale.~.pt_BR.ISO-8859-1:     pt_BR !.ISO8859-1         ! Portuguese,Brazil               ,   ,   ,           , USL
+FreeBSD.100+.setlocale.~.pt_PT.ISO-8859-1:     pt_PT !.ISO8859-1         ! Portuguese, Portugal       XoJIG,IBM, HP,           , USL
+FreeBSD.100+.setlocale.>.sv_FI.ISO-8859-1:     sv_SE !.ISO8859-1         ! Swedish, Finland           XoJIG,
+FreeBSD.100+.setlocale.~.sv_SE.ISO-8859-1:     sv_SE !.ISO8859-1         ! Swedish, Sweden            XoJIG,IBM, HP, Sun ("sv"), USL ("sv")
+
+
+! E European
+FreeBSD.100+.setlocale.~.cs_CS.ISO-8859-2:   cs_CZ !.ISO8859-2 ! Czech(1)                        ,IBM, HP
+FreeBSD.100+.setlocale.~.hr_HR.ISO-8859-2:     hr_HR !.ISO8859-2               ! Croatian, Croatia               ,IBM
+FreeBSD.100+.setlocale.~.hu_HU.ISO-8859-2:     hu_HU !.ISO8859-2               ! Hungarian, Hungry          XoJIG,IBM, HP
+FreeBSD.100+.setlocale.~.pl_PL.ISO-8859-2:     pl_PL !.ISO8859-2               ! Polish, Poland             XoJIG,IBM, HP
+FreeBSD.100+.setlocale.~.ro_RO.ISO-8859-2:     ro_RO !.ISO8859-2               ! Rumanian, Romania          XoJIG,IBM, HP
+FreeBSD.100+.setlocale.~.sh_YU.ISO-8859-2:     sh_SP !.ISO8859-2               ! Serbocroatian, Yugoslavia(1)    ,IBM, HP
+FreeBSD.100+.setlocale.>.sl_CS.ISO-8859-2:     sl_SI !.ISO8859-2               ! Slovenian                       ,   , HP
+FreeBSD.100+.setlocale.~.si_SI.ISO-8859-2:   sl_SI !.ISO8859-2 ! Slovenian                       ,IBM,
+FreeBSD.100+.setlocale.~.sk_SK.ISO-8859-2:   sk_SK !.ISO8859-2 ! Slovak                          ,IBM
+
+! Cyrillic
+FreeBSD.100+.setlocale.~.bg_BG.ISO-8859-5:     bg_BG !.ISO8859-5               ! Bulgarian, Bulgaria             ,IBM, HP
+FreeBSD.100+.setlocale.~.mk_MK.ISO-8859-5:   mk_MK !.ISO8859-5 ! Macedonian                      ,IBM
+FreeBSD.100+.setlocale.~.ru_RU.ISO-8859-5:     ru_RU !.ISO8859-5       ! Russian(1)                      ,IBM,
+FreeBSD.100+.setlocale.>.ru_SU.ISO-8859-5:     ru_RU !.ISO8859-5       ! Russian(1)                      ,   , HP
+FreeBSD.100+.setlocale.~.sp_YU.ISO-8859-5:   sr_SP !.ISO8859-5 ! Serbian,Yugoslavia(1)           ,IBM
+
+! Arabic
+FreeBSD.100+.setlocale.>.ar_DZ.ISO-8859-6:     ar_AA !.ISO8859-6       ! Arabic(2)                       ,   , HP
+FreeBSD.100+.setlocale.~.ar_SA.ISO-8859-6:     ar_AA !.ISO8859-6       ! Arabic(2)                       ,IBM, HP
+FreeBSD.100+.setlocale.~.ar_SA.IBM-1046:       Ar_AA !.IBM-1046        ! Arabic(2)                       ,IBM
+
+! Hebrew
+FreeBSD.100+.setlocale.~.iw_IL.ISO-8859-8:     iw_IL !.ISO8859-8               ! Hebrew, Israel                  ,IBM, HP
+FreeBSD.100+.setlocale.~.iw_IL.IBM-856:        Iw_IL !.IBM-856                 ! Hebrew, Israel                  ,IBM
+
+! Greek
+FreeBSD.100+.setlocale.~.el_GR.ISO-8859-7:     el_GR !.ISO8859-7               ! Greek, Greece                   ,IBM, HP
+
+! Turkish
+FreeBSD.100+.setlocale.~.tr_TR.ISO-8859-9:     tr_TR !.ISO8859-9               ! Turkish, Turkey                 ,IBM, HP
+
+! East Asia
+FreeBSD.100+.setlocale.~.ja_JP.EUC-JP: ja_JP !.IBM-eucJP         ! Japanese, Japan                 ,IBM, HP, Sun ("ja"), USL
+FreeBSD.100+.setlocale.~.ja_JP.IBM-932:        Ja_JP !.IBM-932           ! Japanese, Japan                 ,IBM
+FreeBSD.100+.setlocale.>.ja_JP.HP-SJIS:     Ja_JP !.IBM-932            ! Japanese, Japan aka japanese 15 ,   , HP,
+FreeBSD.100+.setlocale.~.ko_KR.EUC-KR: ko_KR !.IBM-eucKR         ! Korean, Korea                   ,IBM, HP, Sun ("ko"), USL
+FreeBSD.100+.setlocale.~.zh_CN.EUC-CN: zh_CN !.IBM-eucCN         ! Chinese, China                  ,IBM,   , Sun ("zh"), USL
+FreeBSD.100+.setlocale.>.zh_CN.HP-15CN:        zh_CN !.IBM-eucCN         ! Chinese, China                  ,   , HP
+FreeBSD.100+.setlocale.~.zh_CN.UTF-8:  ZH_CN !.UTF-8             ! Chinese, China                  ,IBM,
+FreeBSD.100+.setlocale.~.zh_TW.EUC-TW: zh_TW !.IBM-eucTW         ! Chinese, Taiwan                 ,IBM, HP, Sun       , USL
+FreeBSD.100+.setlocale.>.zh_TW.HP-BIG5:        Zh_TW !.big5            ! Chinese, Taiwan                 ,IBM, HP,           ,
+! FreeBSD.100+.setlocale.>.zh_TW.HP-CCDC:                              ! Chinese, Taiwan                 ,   , HP,           ,
+! FreeBSD.100+.setlocale.>.ja_JP.HP-KANA8:                             ! Japanese, Japan                 ,   , HP,           ,
+
+
+! Thai
+FreeBSD.100+.setlocale.~.th_TH.TIS-620:        th_TH !.TIS-620         ! Thai, Thailand                  ,IBM, HP
+
+
+! W European/Americas, IBM-850 codeset
+FreeBSD.100+.setlocale.~.da_DK.IBM-850:        Da_DK           ! Danish, Denmark                 ,IBM,
+FreeBSD.100+.setlocale.>.de_AT.IBM-850:        De_DE           ! German,Austria                  ,   ,
+FreeBSD.100+.setlocale.~.de_CH.IBM-850:        De_CH           ! German,Switzerland              ,IBM,
+FreeBSD.100+.setlocale.~.de_DE.IBM-850:        De_DE           ! German, Germany                 ,IBM,
+FreeBSD.100+.setlocale.>.en_AU.IBM-850:        En_GB           ! English,Australia               ,   ,
+FreeBSD.100+.setlocale.>.en_CA.IBM-850:        En_US           ! English,Canada                  ,   ,
+FreeBSD.100+.setlocale.>.en_DK.IBM-850:        En_GB           ! English, Denmark                ,   ,
+FreeBSD.100+.setlocale.~.en_GB.IBM-850:        En_GB           ! English, U.K.                   ,IBM,
+FreeBSD.100+.setlocale.~.en_JP.IBM-850:        En_JP           ! English, Japan                  ,IBM,
+FreeBSD.100+.setlocale.>.en_IE.IBM-850:        En_GB           ! English, Ireland                ,   ,
+FreeBSD.100+.setlocale.>.en_MY.IBM-850:        En_US           ! English,Malaysia                ,   ,
+FreeBSD.100+.setlocale.>.en_NZ.IBM-850:        En_GB           ! English,New Zealand             ,   ,
+FreeBSD.100+.setlocale.>.en_KR.IBM-850:        En_GB           ! English,Korea                   ,   ,
+FreeBSD.100+.setlocale.>.en_TW.IBM-850:        En_GB           ! English,Taiwan                  ,   ,
+FreeBSD.100+.setlocale.~.en_US.IBM-850:        En_US           ! English, USA                    ,IBM,
+FreeBSD.100+.setlocale.>.es_AR.IBM-850:        Es_ES           ! Spanish, Argentina              ,   ,
+FreeBSD.100+.setlocale.>.es_BO.IBM-850:        Es_ES           ! Spanish, Bolivia                ,   ,
+FreeBSD.100+.setlocale.>.es_CL.IBM-850:        Es_ES           ! Spanish, Chile                  ,   ,
+FreeBSD.100+.setlocale.>.es_CO.IBM-850:        Es_ES           ! Spanish, Columbia               ,   ,
+FreeBSD.100+.setlocale.>.es_CR.IBM-850:        Es_ES           ! Spanish, Costa Rica             ,   ,
+FreeBSD.100+.setlocale.>.es_EC.IBM-850:        Es_ES           ! Spanish, Ecuador                ,   ,
+FreeBSD.100+.setlocale.~.es_ES.IBM-850:        Es_ES           ! Spanish, Spain                  ,IBM,
+FreeBSD.100+.setlocale.~.ca_ES.IBM-850:        Ca_ES           ! Catalan, Spain                  ,IBM,
+FreeBSD.100+.setlocale.>.es_GT.IBM-850:        Es_ES           ! Spanish, Guatemala              ,   ,
+FreeBSD.100+.setlocale.>.es_MX.IBM-850:        Es_ES           ! Spanish, Mexico                 ,   ,
+FreeBSD.100+.setlocale.>.es_PE.IBM-850:        Es_ES           ! Spanish, Peru                   ,   ,
+FreeBSD.100+.setlocale.>.es_UY.IBM-850:        Es_ES           ! Spanish, Uruguay                ,   ,
+FreeBSD.100+.setlocale.>.es_VE.IBM-850:        Es_ES           ! Spanish, Venezuela              ,   ,
+! FreeBSD.100+.setlocale.>.et_EE.IBM-850:                      ! Estonian, Estonia               ,
+FreeBSD.100+.setlocale.~.fi_FI.IBM-850:        Fi_FI           ! Finnish, Finland                ,IBM,
+! FreeBSD.100+.setlocale.>.fo_FO.IBM-850:                      ! Faroese, Faeroe Island          ,
+FreeBSD.100+.setlocale.~.fr_BE.IBM-850:        Fr_BE           ! French,Belgium                  ,   ,
+FreeBSD.100+.setlocale.~.fr_CA.IBM-850:        Fr_CA           ! French, Canada                  ,IBM,
+FreeBSD.100+.setlocale.~.fr_CH.IBM-850:        Fr_CH           ! French, Switzerland             ,IBM,
+FreeBSD.100+.setlocale.~.fr_FR.IBM-850:        Fr_FR           ! French, France                  ,IBM,
+FreeBSD.100+.setlocale.~.is_IS.IBM-850:        Is_IS           ! Icelandic, Iceland              ,IBM,
+FreeBSD.100+.setlocale.>.it_CH.IBM-850:        It_IT           ! Italian,Switzerland             ,   ,
+FreeBSD.100+.setlocale.~.it_IT.IBM-850:        It_IT           ! Italian, Italy                  ,IBM,
+! FreeBSD.100+.setlocale.>.kl_GL.IBM-850:                      ! Greenlandic, Greenland          ,
+! FreeBSD.100+.setlocale.>.lt_LT.IBM-850:                      ! Lithuanian, Lithuania           ,
+! FreeBSD.100+.setlocale.>.lv_LV.IBM-850:                      ! Latvian, Latvia                 ,
+FreeBSD.100+.setlocale.~.nl_BE.IBM-850:        Nl_BE           ! Dutch, Belgium                  ,IBM,
+FreeBSD.100+.setlocale.~.nl_NL.IBM-850:        Nl_NL           ! Dutch, The Netherlands          ,IBM,
+FreeBSD.100+.setlocale.~.no_NO.IBM-850:        No_NO           ! Norwegian, Norway               ,IBM,
+FreeBSD.100+.setlocale.>.pt_BR.IBM-850:        Pt_PT           ! Portuguese,Brazil               ,   ,
+FreeBSD.100+.setlocale.~.pt_PT.IBM-850:        Pt_PT           ! Portuguese, Portugal            ,IBM,
+FreeBSD.100+.setlocale.>.sv_FI.IBM-850:        Sv_SE           ! Swedish, Finland                ,
+vvFreeBSD.100+.setlocale.~.sv_SE.IBM-850:      Sv_SE           ! Swedish, Sweden                 ,IBM,
+
+
+! codesets supported for iconv(1,3) & nl_langinfo and above
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-1:        ISO8859-1
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-2:        ISO8859-2
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-5:        ISO8859-5
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-6:        ISO8859-6
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-7:        ISO8859-7
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-8:        ISO8859-8
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-9:        ISO8859-9
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.EUC-KR:            IBM-eucKR
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.EUC-JP:            IBM-eucJP
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.EUC-TW:            IBM-eucTW
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.EUC-CN:            IBM-eucCN
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).>.?.HP-15CN:   IBM-eucCN
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-437:   IBM-437
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-850:   IBM-850
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-856:   IBM-856
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-932:   IBM-932
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).>.?.HP-SJIS:   IBM-932
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-1046:  IBM-1046
+FreeBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.UTF-8:          UTF-8
+FreeBSD.100+.iconv1,iconv3.>.?.ISO-2022-JP:                            fold7
+FreeBSD.100+.iconv1,iconv3.>.?.ISO-2022-KR:                         fold7
+FreeBSD.100+.iconv1,iconv3.>.?.ISO-2022-TW:                         fold7
+FreeBSD.100+.iconv1,iconv3.>.?.ISO-2022-CN:                         fold7
+FreeBSD.100+.iconv1,iconv3.>.?.HP-BIG5:                         big5
+FreeBSD.100+.iconv1,iconv3.>.?.TIS-620:                         TIS-620
+
+! codesets not supported by FreeBSD iconv(1,3)
+! FreeBSD.?.iconv1,iconv3.~.?.UCS-2:
+! FreeBSD.?.iconv1,iconv3.~.?.HP-ARABIC8:
+! FreeBSD.?.iconv1,iconv3.~.?.HP-GREEK8:
+! FreeBSD.?.iconv1,iconv3.~.?.HP-HEBREW8
+! FreeBSD.?.iconv1,iconv3.~.?.HP-ROMAN8:
+! FreeBSD.?.iconv1,iconv3.~.?.HP-TURKISH8:
+! FreeBSD.?.iconv1,iconv3.~.?.HP-KANA8:
+! FreeBSD.?.iconv1,iconv3.~.?.HP-CCDC:
+
+! multibyte codesets
+! This translation provides an alternative to a call to
+! using setlocale() and MB_CUR_MAX to determine this.
+FreeBSD.100+.multibyte.=.?.EUC-KR:             2
+FreeBSD.100+.multibyte.=.?.HP-SJIS:            2
+FreeBSD.100+.multibyte.=.?.IBM-932:            2
+FreeBSD.100+.multibyte.=.?.EUC-JP:             3
+! FreeBSD.?.multibyte.~.?.HP-CCDC:             2
+FreeBSD.100+.multibyte.>.?.HP-BIG5:            2
+FreeBSD.100+.multibyte.=.?.EUC-TW:             4
+FreeBSD.100+.multibyte.=.?.TIS-620:            2
+FreeBSD.100+.multibyte.=.?.EUC-CN:             2
+FreeBSD.100+.multibyte.=.?.HP-15CN:            2
+FreeBSD.100+.multibyte.=.?.EUC-KR:             2
+FreeBSD.100+.multibyte.=.?.UTF-8:              3
+
+
+! Translations from predefined CCDF-locales to CDE Standard Locales
+FreeBSD.100+.ccdf.=.?.ISO-8859-1:      ISO8859-1
+FreeBSD.100+.ccdf.=.?.ISO-8859-2:      ISO8859-2
+FreeBSD.100+.ccdf.=.?.ISO-8859-5:      ISO8859-5
+FreeBSD.100+.ccdf.=.?.ISO-8859-6:      ISO8859-6
+FreeBSD.100+.ccdf.=.?.ISO-8859-7:      ISO8859-7
+FreeBSD.100+.ccdf.=.?.ISO-8859-8:      ISO8859-8
+FreeBSD.100+.ccdf.=.?.ISO-8859-9:      ISO8859-9
+FreeBSD.100+.ccdf.=.?.EUC-JP:  IBM-eucJP
+FreeBSD.100+.ccdf.=.?.EUC-KR:  IBM-eucKR
+FreeBSD.100+.ccdf.=.?.EUC-TW:  IBM-eucTW
+FreeBSD.100+.ccdf.=.?.EUC-CN:  IBM-eucCN
+FreeBSD.100+.ccdf.>.?.IBM-932: IBM-932
+FreeBSD.100+.ccdf.>.?.HP-SJIS: IBM-932
+FreeBSD.100+.ccdf.=.?.IBM-1046:        IBM-1046
+FreeBSD.100+.ccdf.=.?.IBM-850: IBM-850
+FreeBSD.100+.ccdf.=.?.IBM-856: IBM-856
+FreeBSD.100+.ccdf.=.?.HP-BIG5: big5
+FreeBSD.100+.ccdf.=.?.TIS-620: TIS-620
+FreeBSD.100+.ccdf.=.?.UTF-8:   UTF-8
+FreeBSD.100+.ccdf.=.?.DT-SYMBOL-1:     symbol        !!! standard Dt symbol font
+
+! These CDE standard locales may have CCDF-locales, but they are defined by localizers
+FreeBSD.100+.ccdf.>.?.HP-ROMAN8:    ISO8859-1
+FreeBSD.100+.ccdf.>.?.HP-ARABIC8:      ISO8859-6
+FreeBSD.100+.ccdf.>.?.HP-GREEK8:       ISO8859-8
+FreeBSD.100+.ccdf.>.?.HP-HEBREW8:      ISO8859-7
+FreeBSD.100+.ccdf.>.?.HP-TURKISH8:     ISO8859-9
+FreeBSD.100+.ccdf.>.?.HP-KANA8:        IBM-932
+FreeBSD.100+.ccdf.>.?.HP-CCDC: IBM-eucCN
+
+
+
+! Codesets that require multibyte parsing to avoid confusion with shell special chars
+FreeBSD.?.dtkshSpecialParse.=.ja_JP.HP-JIS:            True
+FreeBSD.?.dtkshSpecialParse.=.ja_JP.HP-SJIS:   True
+FreeBSD.?.dtkshSpecialParse.=.ja_JP.IBM-932:   True
+FreeBSD.?.dtkshSpecialParse.=.zh_TW.HP-BIG5:   True
+FreeBSD.?.dtkshSpecialParse.=.zh_TW.HP-CCDC:   True
+
+
+!! When content is exchanged with other platforms, the interchange codeset
+!! may be different that the codeset used locally.  In CDE1, these translations
+!! are used by dtmail, but other clients may use the same translations
+!! in the future.  For example, to improve interoperability of 8-bit mail,
+!! the mail messages of users working in codesets such as HP-ROMAN8 or IBM-850
+!! are translated to the interchangeCodeset (in this case, ISO-8859-1) before
+!! they are sent.  Similarly, the mail of Japanese users is translated to JIS
+!! before it is sent.
+!!
+!! --------------------------------------------------------------------
+!! FreeBSD does provide the fold7 conversion which is an ISO 2022 encoding
+!! of every code set supported by a locale... so ... the name
+!!   ISO-2022-xx ( where xx is JP, CN, KR, TW)
+!! can be used for any of the following interchangeCodeset... but it has
+!! been left as is in case 8-bit mail is supported...
+!! --------------------------------------------------------------------
+!!
+FreeBSD.?.interchangeCodeset.~.?.ISO-8859-1:   ISO-8859-1      ! ISO Latin 1
+!FreeBSD.?.interchangeCodeset.>.?.HP-ROMAN8:   ISO-8859-1      ! HP Roman8
+FreeBSD.?.interchangeCodeset.>.?.IBM-850:              ISO-8859-1      ! PC (Multi-lingual)
+FreeBSD.?.interchangeCodeset.>.?.IBM-437:              ISO-8859-1      ! PC (US)
+FreeBSD.?.interchangeCodeset.~.?.ISO-8859-2:   ISO-8859-2      ! ISO Latin 2
+FreeBSD.?.interchangeCodeset.~.?.ISO-8859-5:   ISO-8859-5      ! ISO Latin/Cyrillic
+FreeBSD.?.interchangeCodeset.~.?.ISO-8859-6:   ISO-8859-6      ! ISO Latin/Arabic
+!FreeBSD.?.interchangeCodeset.>.?.HP-ARABIC8:  ISO-8859-6      ! HP Arabic8
+FreeBSD.?.interchangeCodeset.>.?.IBM-1046:             ISO-8859-6      ! PC Arabic Code Set
+FreeBSD.?.interchangeCodeset.~.?.ISO-8859-8:   ISO-8859-8      ! ISO Latin/Hebrew
+!FreeBSD.?.interchangeCodeset.>.?.HP-HEBREW8:  ISO-8859-8      ! HP Hebrew8
+FreeBSD.?.interchangeCodeset.>.?.IBM-856:              ISO-8859-8      ! PC Hebrew
+FreeBSD.?.interchangeCodeset.~.?.ISO-8859-7:   ISO-8859-7      ! ISO Latin/Greek
+!FreeBSD.?.interchangeCodeset.>.?.HP-GREEK8:   ISO-8859-7      ! HP Greek8
+FreeBSD.?.interchangeCodeset.~.?.ISO-8859-9:   ISO-8859-9      ! ISO Latin 5
+!FreeBSD.?.interchangeCodeset.>.?.HP-TURKISH8: ISO-8859-9      ! HP Turkish8
+FreeBSD.?.interchangeCodeset.~.?.EUC-JP:               ISO-2022-JP     ! Japanese EUC
+!FreeBSD.?.interchangeCodeset.>.?.HP-SJIS:             ISO-2022-JP     ! HP Japanese Shift JIS
+FreeBSD.?.interchangeCodeset.>.?.IBM-932:              ISO-2022-JP     ! PC Japanese Shift JIS
+!FreeBSD.?.interchangeCodeset.>.?.HP-KANA8:            ISO-2022-JP     ! HP Japanese Katakana8
+! uncomment when ISO-2022-KR is supported by iconv
+FreeBSD.?.interchangeCodeset.~.?.EUC-KR:               ISO-2022-KR     ! Korean EUC
+! uncomment when ISO-2022-CN is supported by iconv
+FreeBSD.?.interchangeCodeset.~.?.EUC-CN:               ISO-2022-CN     ! China Chinese EUC
+FreeBSD.?.interchangeCodeset.>.?.HP-15CN:              ISO-2022-CN     ! HP Chinese EUC
+! uncomment when ISO-2022-TW is supported by iconv
+FreeBSD.?.interchangeCodeset.~.?.EUC-TW:               ISO-2022-TW     ! Taiwan Chinese EUC
+FreeBSD.?.interchangeCodeset.>.?.HP-BIG5:              ISO-2022-TW     ! HP Big5 Chinese
+FreeBSD.?.interchangeCodeset.>.?.HP-CCDC:              ISO-2022-TW     ! HP CCDC Chinese
+FreeBSD.?.interchangeCodeset.~.?.TIS-620:              TIS-620         ! Thai
+FreeBSD.?.interchangeCodeset.>.?.UCS-2:                ISO-2022-JP     ! Unicode
+FreeBSD.?.interchangeCodeset.~.?.UTF-8:                ISO-2022-JP     ! multibyte Unicode
+!! Codeset identifiers for use with MIME messages.  The .~. translations
+!! are used by dtmail and adhere to the MIME standard, RFC 1521.
+!! Note that the MIME standard states that codeset identifiers are
+!! case-insensitive.  The operation-specific values on the right-hand-side
+!! of the translations below, however, ARE case sensitive.  Before
+!! doing a OpToStd translation, first convert the MIME codeset identifier
+!! to uppercase.  Alternatively, one could provide lower-case versions
+!! of the translations (right-hand-side only should be in lower-case).
+FreeBSD.?.mime.~.?.ISO-8859-1: ISO-8859-1      ! ISO Latin 1
+FreeBSD.?.mime.~.?.HP-ROMAN8:  X-HP-ROMAN8     ! HP Roman8
+FreeBSD.?.mime.~.?.IBM-437:            X-IBM-437       ! PC (US)
+FreeBSD.?.mime.~.?.IBM-850:            X-IBM-850       ! PC (Multi-lingual)
+FreeBSD.?.mime.~.?.ISO-8859-2: ISO-8859-2      ! ISO Latin 2
+FreeBSD.?.mime.~.?.ISO-8859-5: ISO-8859-5      ! ISO Latin/Cyrillic
+FreeBSD.?.mime.~.?.ISO-8859-6: ISO-8859-6      ! ISO Latin/Arabic
+FreeBSD.?.mime.~.?.HP-ARABIC8: X-HP-ARABIC8    ! HP Arabic8
+FreeBSD.?.mime.~.?.IBM-1046:   X-IBM-1046      ! PC Arabic Code Set
+FreeBSD.?.mime.~.?.ISO-8859-8: ISO-8859-8      ! ISO Latin/Hebrew
+FreeBSD.?.mime.~.?.HP-HEBREW8: X-HP-HEBREW8    ! HP Hebrew8
+FreeBSD.?.mime.~.?.IBM-856:            X-IBM-856       ! PC Hebrew
+FreeBSD.?.mime.~.?.ISO-8859-7: ISO-8859-7      ! ISO Latin/Greek
+FreeBSD.?.mime.~.?.HP-GREEK8:  X-HP-GREEK8     ! HP Greek8
+FreeBSD.?.mime.~.?.ISO-8859-9: ISO-8859-9      ! ISO Latin 5
+FreeBSD.?.mime.~.?.HP-TURKISH8:        X-HP-TURKISH8   ! HP Turkish8
+FreeBSD.?.mime.~.?.EUC-JP:             X-EUC-JP        ! Japanese EUC
+FreeBSD.?.mime.~.?.ISO-2022-JP:        ISO-2022-JP     ! Japanese JIS with 7-bit encoding per ISO-2022-JP
+FreeBSD.?.mime.~.?.HP-SJIS:            X-HP-SJIS       ! HP Japanese Shift JIS
+FreeBSD.?.mime.~.?.IBM-932:            X-IBM-932       ! PC Japanese Shift JIS
+FreeBSD.?.mime.~.?.HP-KANA8:   X-HP-KANA8      ! HP Japanese Katakana8
+FreeBSD.?.mime.~.?.EUC-KR:             X-EUC-KR        ! Korean EUC
+FreeBSD.?.mime.~.?.ISO-2022-KR:        ISO-2022-KR     ! Korean with 7-bit encoding per ISO-2022-KR
+FreeBSD.?.mime.~.?.EUC-CN:             X-EUC-CN        ! China Chinese EUC
+FreeBSD.?.mime.~.?.ISO-2022-CN:        ISO-2022-CN     ! China Chinese with 7-bit encoding per ISO-2022-CN
+FreeBSD.?.mime.~.?.HP-15CN:            X-HP-15CN       ! HP China Chinese EUC
+FreeBSD.?.mime.~.?.EUC-TW:             X-EUC-TW        ! Taiwan Chinese EUC
+FreeBSD.?.mime.~.?.ISO-2022-TW:        ISO-2022-TW     ! Taiwan Chinese with 7-bit encoding per ISO-2022-TW
+FreeBSD.?.mime.~.?.HP-BIG5:            X-HP-BIG5       ! HP Big5 Taiwan Chinese
+FreeBSD.?.mime.~.?.HP-CCDC:            X-HP-CCDC       ! HP CCDC Taiwan Chinese
+FreeBSD.?.mime.~.?.TIS-620:            X-TIS-620       ! Thai
+FreeBSD.?.mime.~.?.UCS-2:              X-UCS-2         ! Unicode; group 0, plane 0 of ISO-10646
+FreeBSD.?.mime.~.?.UCS-4:              X-UCS-4         ! ISO-10646
+FreeBSD.?.mime.~.?.UTF-7:              X-UTF-7         ! multibyte encoding of Unicode
+FreeBSD.?.mime.~.?.UTF-8:              X-UTF-8         ! multibyte encoding of Unicode
+FreeBSD.?.mime.~.?.UTF-16:             X-UTF-16        ! multibyte encoding of Unicode
+
+!! If other mailers are using other codeset identifiers in their MIME
+!! messages, dtmail will not be able to process them correctly.
+!! To correct this, additional .<. translations for these identifiers
+!! can be added to a <platform>.lcx file in the /etc/dt/config/svc
+!! or $HOME/.dt/config/svc directories.  Such translations should read:
+!! <platform>.100+.mime.<.?.<CDE std codeset>: <mailer identifier for the codeset>
+!!
+!! ***NEVER*** use a .~. translation, such as we use above, as this could
+!! cause dtmail to send unexpected identifier strings by overriding the
+!! above definition.  Further, never use .=. or .>. translations.
+!!
+!! These two identifiers are in common usage, as they derive from RFC1521.
+FreeBSD.?.mime.<.?.ISO-8859-1: us-ascii        ! ISO Latin 1
+FreeBSD.?.mime.<.?.ISO-8859-1: US-ASCII        ! ISO Latin 1
diff --git a/cde/lib/DtHelp/OpenBSD.lcx b/cde/lib/DtHelp/OpenBSD.lcx
new file mode 100644 (file)
index 0000000..7fe99cf
--- /dev/null
@@ -0,0 +1,571 @@
+!!!!!!!!!!!!!! OpenBSD Locale-Related Translations !!!!!!!!!!!!!!
+! File:                        OpenBSD.lcx
+! Default location:    /usr/dt/config/svc/OpenBSD.lcx
+! Purpose:
+!    Define the OpenBSD-specific set of locale-related translations.
+! Description:
+!    This file contains the set of all locale-related translations
+!    that  can occur during _DtLcxXlateOpToStd() and _DtLcxStdToOp()
+!    calls on OpenBSD platforms. Note that platform-specific tables may
+!    include more than one translation to and from CDE standard
+!    strings if they can be distinguished by version, operation, or
+!    pattern matching.
+!
+!    It is important that additional CDE standard strings only
+!    be created by the CDE owner of the _DtLcx translation service
+!    and NOT be created by an individual vendor or user.  This be because
+!    the purpose of adopting a set of CDE standard strings is to
+!    support interoperability across platforms.  If individual vendors
+!    add their own "standard" strings and these strings are not
+!    known on other platforms, then the goal of interoperability
+!    will be defeated.
+!
+!    If you feel that a new CDE standard string is needed,
+!    contact your CDE representative/vendor with a specific
+!    proposal and justification and have them forward it to
+!    the owner of the CDE _DtLcx service.
+!
+!    Note that it is allowed for vendors and users to add new
+!    operations for which translations are specified and which
+!    utilize the standard strings.  If the operations are of
+!    general utility, please bring them to the attention of
+!    your CDE representative/vendor for forwarding to the
+!    _DtLcx owner.
+! Invoked by:
+!    This table is used by the _DtLcx translation service
+! Defects:
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+!!!!!!!!!!!!!!!! translation specification syntax !!!!!!!!!!!!!!!!!!!
+! Introductory fields:
+! ====================
+! The _DtLcx translation specifications have a fixed number of
+! introductory fields followed by a several standard value
+! fields and the operation-specific value.
+! The introductory fields are:
+!  <platform>.<version range>.<operation(s)>.<kind>
+!
+! Platform generally is the same string as uname(1) -s.
+! Version range utilizes normalized version numbers that
+!   are acquired using the 'version' translations.
+! Operations are one or more comma-separated strings that
+!   uniquely identify the operation associated with the
+!   operation-specific value.  This string is specified
+!   as part of the request for a translation.
+!
+! Kinds of translations allow the mechanism to support several modes
+!   of operation, each useful for different purposes.  When
+!   reading or writing a specification, pay particular attention
+!   to the kind of specification, as this guides the usage of it.
+!
+! Specification kinds:
+!  .=. means a valid bi-directional translation requiring the op-value
+!      in the translation specification to exactly match the op-value of
+!      the call to _DtLcxXlateOpToStd(), e.g. foo matches only foo
+!  .~. means a valid bi-directional translation requiring the op-value
+!      in the translation specification to match the beginning of the
+!      op-value of the call to _DtLcxXlateOpToStd(), e.g. foo matches
+!      foo@@bar.  This is often useful, e.g. for operation-specific
+!      locale strings that may also contain modifier suffixes.
+!  .>. means only from standard to op-specific (generally a
+!      compatibility translation, meaning on op-specific value
+!      that will work for the standard, although that is not
+!      the straight mapping)
+!  .<. means only from op-specific to standard (generally a
+!      regex in the op-value which is used to map a class of
+!      op values to a standard value)
+!  .0. means that translation is not supported and if a translation
+!      request matches the specification, the request will fail.
+!
+! Standard values:
+! ================
+! _DtLcx defines the order of the standard values in the
+! translations it utilizes.  All translation specifications
+! must adhere to this order.
+!    <std lang_terr>.<std codeset>.<std modifier>
+! In CDE 1.0, no modifiers are standard and that
+! portion of the table is unspecified.  This means
+! that no CDE standard modifiers are available across
+! platforms.  Operations that use only the <std codeset>
+! should specify the wildcard character ("?") for the
+! <std lang_terr> value.
+!
+! Operation-specific value:
+! =========================
+! The operation-specific value is a string that is used
+! according to the kind of translation.  The syntax is
+!      : <op-string>
+! or   :  "<op-string>", if it contains white space
+!
+! Filling in the table of translations:
+! =====================================
+! The person preparing the translation table should know
+! the minimum version of the target platform that is
+! be supported.  For example, assume that we must
+! complete the table for all versions 9.00 and higher.
+!
+! The objective is then to provide two sets of translations:
+! a full set of translations from CDE standard locales to
+! valid platform locales, and a full set of translations
+! from valid platform locales to some or all CDE standard
+! locales.
+!
+! Translations from CDE standard locales to valid platform
+! locales must use the .~. .=. or .>. mappings.  When there
+! is a 1:1 mapping between a CDE locale and a platform locale,
+! use the .~. or .=. mapping.  See the comment below to
+! decide which to use.  When there is no 1:1 mapping between
+! CDE locale and platform locale, use the .>. mapping.  This
+! provides a valid translation from the CDE locale to the
+! best-suitable platform locale, but never translates from
+! that platform locale to the CDE locale.
+!
+! Translations from every platform locale to the appropriate
+! CDE locale must use the .~. .=. or .<. mappings.
+! When there is a 1:1 mapping between a platform locale and
+! a CDE standard locale, use the .~. or .=. mapping.  See the
+! comment below to decide which to use.  If there is a 1:1
+! mapping, but the platform locale pattern uses a regular
+! expression, or if more than one platform locale can
+! be translated to one CDE standard locale, the .<. mapping must
+! be used.
+!
+! If no appropriate CDE standard locale can be found, you have
+! identified the need for a new CDE standard locale.  Refer to
+! the instructions at the head of this file for how to go about
+! registering a new CDE standard locale.  You should not create
+! a new "standard" locale (the left hand side of the translation
+! specification) without registering it with CDE, because this
+! will hinder the free exchange of information across locales
+! and platforms.
+!
+! The .=. and .~. mappings are similar.  The difference is
+! that the .=. mapping requires an exact string match between
+! the platform locale and the string provided to the
+! translation routine.  Generally speaking, this mapping
+! is risky unless exact matchings can be guaranteed in
+! all DtLcx clients for the particular operation in question.
+! The .~. mapping is to be preferred, but the .=. translation
+! is useful in limited situations, where similar strings may
+! occur.
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+! define this resource to dump debug/test info
+!*debugDtXlate:  True
+
+!!!!!!!!!!!!!!!! OpenBSD Version Identificaton !!!!!!!!!!!!!!!!!
+! These translations are used by the _DtXlateGetXlateEnv()
+! call to determine the version number to use.
+!
+! To understand the translation, realize that the
+! operation-specific regexp(5) pattern on the right
+! hand side is matched against the strings returned
+! by uname(2).  The best match determines the "normalized"
+! version number of the platform, which should range from
+! 001 and up.  By convention, major release numbers
+! map to centuries and minor release numbers to within
+! the century.
+!
+! To determine the string that the regular expression on the
+! right hand side is matching against, use uname(1) and run
+! 'uname -r' and 'uname -v' and note the strings.  During execution,
+! the strings returned by this command are retrieved and
+! concatenated "rv"--in that order, no extra spaces.
+! This is the string that the pattern must match.
+!
+! Sometimes this string may not be intuitive.  For example,
+! note that OpenBSD 3.2 returns 2 for 'uname -r' and 3 for 'uname -v'.
+! So the pattern string must be 23, not 32.  Do not go by
+! the order of 'uname -rv' or 'uname -vr', as that is not used.
+!!
+
+OpenBSD.?.version.<.100:  ".*"       !! any CDE value
+
+
+!!!!!!!!!!!!!!!! OpenBSD-specific setlocale translations !!!!!!!!!!!!!!!!!!!
+! These translations are for the string returned by the
+! getlocale() or setlocale(LC_xxx,NULL) operations, but not
+! setlocale(LC_ALL,NULL) operation.
+!
+! It provides translations from OpenBSD operation-specific
+! to CDE standard strings and back again.
+!
+! Some language,territory combinations have the following comments:
+!  (1) These ISO territory names may be subject to change
+!      However, their CDE names will continue to be supported
+!  (2) No ISO "territory" name exists for the Arabic-speaking regions of the
+!      world as a whole.  Vendors have sometimes supplied their own.
+!      Those names, when conformant to the ISO model, will be adopted for CDE.
+!
+!Platform Operation Lang_Terr           Op-Value               Language,Territory           Who has
+!---     ---------   -----             --------                ------------------           -------
+!   Version      Kind      Codeset
+!   ----           -       ---------
+
+
+! setlocales Compliance
+OpenBSD.100+.setlocale.~.C.IBM-850:       C                         ! setlocales compliance           ,IBM
+OpenBSD.100+.setlocale.~.POSIX.IBM-850:   POSIX                     ! setlocales compliance           ,IBM
+OpenBSD.100+.setlocale.~.C.ISO-8859-1:       C                      ! setlocales compliance           ,IBM, HP, Sun       , USL
+OpenBSD.100+.setlocale.~.POSIX.ISO-8859-1:   POSIX                  ! setlocales compliance           ,IBM, HP, Sun       , USL
+
+! W European/Americas, Latin 1 codeset
+OpenBSD.100+.setlocale.~.da_DK.ISO-8859-1:     da_DK !.ISO8859-1         ! Danish, Denmark            XoJIG,IBM, HP,           , USL ("da")
+OpenBSD.100+.setlocale.>.de_AT.ISO-8859-1:     de_DE !.ISO8859-1         ! German,Austria             XoJIG,   ,   ,           , USL
+OpenBSD.100+.setlocale.~.de_CH.ISO-8859-1:     de_CH !.ISO8859-1         ! German,Switzerland         XoJIG,IBM,   ,           , USL
+OpenBSD.100+.setlocale.~.de_DE.ISO-8859-1:     de_DE !.ISO8859-1         ! German, Germany            XoJIG,IBM, HP, Sun ("de"), USL ("de")
+OpenBSD.100+.setlocale.>.en_AU.ISO-8859-1:     en_GB !.ISO8859-1         ! English,Australia               ,   ,   ,           , USL
+OpenBSD.100+.setlocale.>.en_CA.ISO-8859-1:     en_US !.ISO8859-1         ! English,Canada             XoJIG,   ,   ,           , USL
+OpenBSD.100+.setlocale.>.en_DK.ISO-8859-1:     en_GB !.ISO8859-1         ! English, Denmark           XoJIG,   ,   ,           , USL
+OpenBSD.100+.setlocale.~.en_GB.ISO-8859-1:     en_GB !.ISO8859-1         ! English, U.K.              XoJIG,IBM, HP,           , USL ("en")
+OpenBSD.100+.setlocale.>.en_JP.ISO-8859-1:     en_JP !.ISO8859-1         ! English, Japan             XoJIG,IBM,   ,           ,
+OpenBSD.100+.setlocale.>.en_JP.ISO-8859-1:     en_US !.ISO8859-1         ! English, Japan             XoJIG,IBM,   ,           ,
+OpenBSD.100+.setlocale.>.en_IE.ISO-8859-1:     en_GB !.ISO8859-1         ! English, Ireland           XoJIG,   ,   ,           , USL
+OpenBSD.100+.setlocale.>.en_MY.ISO-8859-1:     en_US !.ISO8859-1         ! English,Malaysia                ,   ,   ,           , USL
+OpenBSD.100+.setlocale.>.en_NZ.ISO-8859-1:     en_GB !.ISO8859-1         ! English,New Zealand             ,   ,   ,           , USL
+OpenBSD.100+.setlocale.>.en_KR.ISO-8859-1:     en_KR !.ISO8859-1         ! English,Korea                   ,   ,   ,           , USL
+OpenBSD.100+.setlocale.>.en_KR.ISO-8859-1:     en_US !.ISO8859-1         ! English,Korea                   ,IBM,   ,           ,
+OpenBSD.100+.setlocale.>.en_TW.ISO-8859-1:     en_TW !.ISO8859-1         ! English,Taiwan                  ,   ,   ,           , USL
+OpenBSD.100+.setlocale.>.en_TW.ISO-8859-1:     en_US !.ISO8859-1         ! English,Taiwan                  ,IBM,   ,           ,
+OpenBSD.100+.setlocale.~.en_US.ISO-8859-1:     en_US !.ISO8859-1         ! English, USA               XoJIG,IBM, HP, Sun       , USL
+OpenBSD.100+.setlocale.>.es_AR.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Argentina              ,   ,   , Sun       , USL
+OpenBSD.100+.setlocale.>.es_BO.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Bolivia                ,   ,   , Sun
+OpenBSD.100+.setlocale.>.es_CL.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Chile                  ,   ,   , Sun       , USL
+OpenBSD.100+.setlocale.>.es_CO.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Columbia               ,   ,   , Sun
+OpenBSD.100+.setlocale.>.es_CR.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Costa Rica             ,   ,   , Sun
+OpenBSD.100+.setlocale.>.es_EC.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Ecuador                ,   ,   , Sun
+OpenBSD.100+.setlocale.~.es_ES.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Spain             XoJIG,IBM, HP, Sun       , USL
+OpenBSD.100+.setlocale.~.ca_ES.ISO-8859-1:     ca_ES !.ISO8859-1         ! Catalan, Spain             XoJIG,IBM, HP, Sun       , USL
+OpenBSD.100+.setlocale.>.es_GT.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Guatemala              ,   ,   , Sun
+OpenBSD.100+.setlocale.>.es_MX.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Mexico                 ,   ,   , Sun       , USL
+OpenBSD.100+.setlocale.>.es_PE.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Peru                   ,   ,   , Sun
+OpenBSD.100+.setlocale.>.es_UY.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Uruguay                ,   ,   , Sun
+OpenBSD.100+.setlocale.>.es_VE.ISO-8859-1:     es_ES !.ISO8859-1         ! Spanish, Venezuela              ,   ,   , Sun       , USL
+! OpenBSD.100+.setlocale.>.et_EE.ISO-8859-1:                  ! Estonian, Estonia          XoJIG,
+OpenBSD.100+.setlocale.~.fi_FI.ISO-8859-1:     fi_FI !.ISO8859-1              ! Finnish, Finland           XoJIG,IBM, HP,           , USL ("fi")
+! OpenBSD.100+.setlocale.>.fo_FO.ISO-8859-1:                  ! Faroese, Faeroe Island     XoJIG,
+OpenBSD.100+.setlocale.~.fr_BE.ISO-8859-1:     fr_BE !.ISO8859-1         ! French,Belgium             XoJIG,   ,   ,           , USL
+OpenBSD.100+.setlocale.~.fr_CA.ISO-8859-1:     fr_CA !.ISO8859-1         ! French, Canada             XoJIG,IBM, HP,           , USL
+OpenBSD.100+.setlocale.~.fr_CH.ISO-8859-1:     fr_CH !.ISO8859-1         ! French, Switzerland        XoJIG,IBM,   ,           , USL
+OpenBSD.100+.setlocale.~.fr_FR.ISO-8859-1:     fr_FR !.ISO8859-1         ! French, France             XoJIG,IBM, HP, Sun ("fr"), USL ("fr")
+OpenBSD.100+.setlocale.~.is_IS.ISO-8859-1:     is_IS !.ISO8859-1         ! Icelandic, Iceland         XoJIG,IBM, HP,           , USL ("is")
+OpenBSD.100+.setlocale.>.it_CH.ISO-8859-1:     it_IT !.ISO8859-1         ! Italian,Switzerland             ,   ,   ,           , USL
+OpenBSD.100+.setlocale.~.it_IT.ISO-8859-1:     it_IT !.ISO8859-1         ! Italian, Italy             XoJIG,IBM, HP, Sun ("it"), USL ("it")
+! OpenBSD.100+.setlocale.>.kl_GL.ISO-8859-1:                  ! Greenlandic, Greenland     XoJIG,
+! OpenBSD.100+.setlocale.>.lt_LT.ISO-8859-1:                  ! Lithuanian, Lithuania      XoJIG,
+! OpenBSD.100+.setlocale.>.lv_LV.ISO-8859-1:                  ! Latvian, Latvia            XoJIG,
+OpenBSD.100+.setlocale.~.nl_BE.ISO-8859-1:     nl_BE !.ISO8859-1         ! Dutch, Belgium             XoJIG,IBM,   ,           , USL
+OpenBSD.100+.setlocale.~.nl_NL.ISO-8859-1:     nl_NL !.ISO8859-1         ! Dutch, The Netherlands     XoJIG,IBM, HP,           , USL ("nl")
+OpenBSD.100+.setlocale.~.no_NO.ISO-8859-1:     no_NO !.ISO8859-1         ! Norwegian, Norway          XoJIG,IBM, HP,           , USL ("no")
+OpenBSD.100+.setlocale.~.pt_BR.ISO-8859-1:     pt_BR !.ISO8859-1         ! Portuguese,Brazil               ,   ,   ,           , USL
+OpenBSD.100+.setlocale.~.pt_PT.ISO-8859-1:     pt_PT !.ISO8859-1         ! Portuguese, Portugal       XoJIG,IBM, HP,           , USL
+OpenBSD.100+.setlocale.>.sv_FI.ISO-8859-1:     sv_SE !.ISO8859-1         ! Swedish, Finland           XoJIG,
+OpenBSD.100+.setlocale.~.sv_SE.ISO-8859-1:     sv_SE !.ISO8859-1         ! Swedish, Sweden            XoJIG,IBM, HP, Sun ("sv"), USL ("sv")
+
+
+! E European
+OpenBSD.100+.setlocale.~.cs_CS.ISO-8859-2:   cs_CZ !.ISO8859-2 ! Czech(1)                        ,IBM, HP
+OpenBSD.100+.setlocale.~.hr_HR.ISO-8859-2:     hr_HR !.ISO8859-2               ! Croatian, Croatia               ,IBM
+OpenBSD.100+.setlocale.~.hu_HU.ISO-8859-2:     hu_HU !.ISO8859-2               ! Hungarian, Hungry          XoJIG,IBM, HP
+OpenBSD.100+.setlocale.~.pl_PL.ISO-8859-2:     pl_PL !.ISO8859-2               ! Polish, Poland             XoJIG,IBM, HP
+OpenBSD.100+.setlocale.~.ro_RO.ISO-8859-2:     ro_RO !.ISO8859-2               ! Rumanian, Romania          XoJIG,IBM, HP
+OpenBSD.100+.setlocale.~.sh_YU.ISO-8859-2:     sh_SP !.ISO8859-2               ! Serbocroatian, Yugoslavia(1)    ,IBM, HP
+OpenBSD.100+.setlocale.>.sl_CS.ISO-8859-2:     sl_SI !.ISO8859-2               ! Slovenian                       ,   , HP
+OpenBSD.100+.setlocale.~.si_SI.ISO-8859-2:   sl_SI !.ISO8859-2 ! Slovenian                       ,IBM,
+OpenBSD.100+.setlocale.~.sk_SK.ISO-8859-2:   sk_SK !.ISO8859-2 ! Slovak                          ,IBM
+
+! Cyrillic
+OpenBSD.100+.setlocale.~.bg_BG.ISO-8859-5:     bg_BG !.ISO8859-5               ! Bulgarian, Bulgaria             ,IBM, HP
+OpenBSD.100+.setlocale.~.mk_MK.ISO-8859-5:   mk_MK !.ISO8859-5 ! Macedonian                      ,IBM
+OpenBSD.100+.setlocale.~.ru_RU.ISO-8859-5:     ru_RU !.ISO8859-5       ! Russian(1)                      ,IBM,
+OpenBSD.100+.setlocale.>.ru_SU.ISO-8859-5:     ru_RU !.ISO8859-5       ! Russian(1)                      ,   , HP
+OpenBSD.100+.setlocale.~.sp_YU.ISO-8859-5:   sr_SP !.ISO8859-5 ! Serbian,Yugoslavia(1)           ,IBM
+
+! Arabic
+OpenBSD.100+.setlocale.>.ar_DZ.ISO-8859-6:     ar_AA !.ISO8859-6       ! Arabic(2)                       ,   , HP
+OpenBSD.100+.setlocale.~.ar_SA.ISO-8859-6:     ar_AA !.ISO8859-6       ! Arabic(2)                       ,IBM, HP
+OpenBSD.100+.setlocale.~.ar_SA.IBM-1046:       Ar_AA !.IBM-1046        ! Arabic(2)                       ,IBM
+
+! Hebrew
+OpenBSD.100+.setlocale.~.iw_IL.ISO-8859-8:     iw_IL !.ISO8859-8               ! Hebrew, Israel                  ,IBM, HP
+OpenBSD.100+.setlocale.~.iw_IL.IBM-856:        Iw_IL !.IBM-856                 ! Hebrew, Israel                  ,IBM
+
+! Greek
+OpenBSD.100+.setlocale.~.el_GR.ISO-8859-7:     el_GR !.ISO8859-7               ! Greek, Greece                   ,IBM, HP
+
+! Turkish
+OpenBSD.100+.setlocale.~.tr_TR.ISO-8859-9:     tr_TR !.ISO8859-9               ! Turkish, Turkey                 ,IBM, HP
+
+! East Asia
+OpenBSD.100+.setlocale.~.ja_JP.EUC-JP: ja_JP !.IBM-eucJP         ! Japanese, Japan                 ,IBM, HP, Sun ("ja"), USL
+OpenBSD.100+.setlocale.~.ja_JP.IBM-932:        Ja_JP !.IBM-932           ! Japanese, Japan                 ,IBM
+OpenBSD.100+.setlocale.>.ja_JP.HP-SJIS:     Ja_JP !.IBM-932            ! Japanese, Japan aka japanese 15 ,   , HP,
+OpenBSD.100+.setlocale.~.ko_KR.EUC-KR: ko_KR !.IBM-eucKR         ! Korean, Korea                   ,IBM, HP, Sun ("ko"), USL
+OpenBSD.100+.setlocale.~.zh_CN.EUC-CN: zh_CN !.IBM-eucCN         ! Chinese, China                  ,IBM,   , Sun ("zh"), USL
+OpenBSD.100+.setlocale.>.zh_CN.HP-15CN:        zh_CN !.IBM-eucCN         ! Chinese, China                  ,   , HP
+OpenBSD.100+.setlocale.~.zh_CN.UTF-8:  ZH_CN !.UTF-8             ! Chinese, China                  ,IBM,
+OpenBSD.100+.setlocale.~.zh_TW.EUC-TW: zh_TW !.IBM-eucTW         ! Chinese, Taiwan                 ,IBM, HP, Sun       , USL
+OpenBSD.100+.setlocale.>.zh_TW.HP-BIG5:        Zh_TW !.big5            ! Chinese, Taiwan                 ,IBM, HP,           ,
+! OpenBSD.100+.setlocale.>.zh_TW.HP-CCDC:                              ! Chinese, Taiwan                 ,   , HP,           ,
+! OpenBSD.100+.setlocale.>.ja_JP.HP-KANA8:                             ! Japanese, Japan                 ,   , HP,           ,
+
+
+! Thai
+OpenBSD.100+.setlocale.~.th_TH.TIS-620:        th_TH !.TIS-620         ! Thai, Thailand                  ,IBM, HP
+
+
+! W European/Americas, IBM-850 codeset
+OpenBSD.100+.setlocale.~.da_DK.IBM-850:        Da_DK           ! Danish, Denmark                 ,IBM,
+OpenBSD.100+.setlocale.>.de_AT.IBM-850:        De_DE           ! German,Austria                  ,   ,
+OpenBSD.100+.setlocale.~.de_CH.IBM-850:        De_CH           ! German,Switzerland              ,IBM,
+OpenBSD.100+.setlocale.~.de_DE.IBM-850:        De_DE           ! German, Germany                 ,IBM,
+OpenBSD.100+.setlocale.>.en_AU.IBM-850:        En_GB           ! English,Australia               ,   ,
+OpenBSD.100+.setlocale.>.en_CA.IBM-850:        En_US           ! English,Canada                  ,   ,
+OpenBSD.100+.setlocale.>.en_DK.IBM-850:        En_GB           ! English, Denmark                ,   ,
+OpenBSD.100+.setlocale.~.en_GB.IBM-850:        En_GB           ! English, U.K.                   ,IBM,
+OpenBSD.100+.setlocale.~.en_JP.IBM-850:        En_JP           ! English, Japan                  ,IBM,
+OpenBSD.100+.setlocale.>.en_IE.IBM-850:        En_GB           ! English, Ireland                ,   ,
+OpenBSD.100+.setlocale.>.en_MY.IBM-850:        En_US           ! English,Malaysia                ,   ,
+OpenBSD.100+.setlocale.>.en_NZ.IBM-850:        En_GB           ! English,New Zealand             ,   ,
+OpenBSD.100+.setlocale.>.en_KR.IBM-850:        En_GB           ! English,Korea                   ,   ,
+OpenBSD.100+.setlocale.>.en_TW.IBM-850:        En_GB           ! English,Taiwan                  ,   ,
+OpenBSD.100+.setlocale.~.en_US.IBM-850:        En_US           ! English, USA                    ,IBM,
+OpenBSD.100+.setlocale.>.es_AR.IBM-850:        Es_ES           ! Spanish, Argentina              ,   ,
+OpenBSD.100+.setlocale.>.es_BO.IBM-850:        Es_ES           ! Spanish, Bolivia                ,   ,
+OpenBSD.100+.setlocale.>.es_CL.IBM-850:        Es_ES           ! Spanish, Chile                  ,   ,
+OpenBSD.100+.setlocale.>.es_CO.IBM-850:        Es_ES           ! Spanish, Columbia               ,   ,
+OpenBSD.100+.setlocale.>.es_CR.IBM-850:        Es_ES           ! Spanish, Costa Rica             ,   ,
+OpenBSD.100+.setlocale.>.es_EC.IBM-850:        Es_ES           ! Spanish, Ecuador                ,   ,
+OpenBSD.100+.setlocale.~.es_ES.IBM-850:        Es_ES           ! Spanish, Spain                  ,IBM,
+OpenBSD.100+.setlocale.~.ca_ES.IBM-850:        Ca_ES           ! Catalan, Spain                  ,IBM,
+OpenBSD.100+.setlocale.>.es_GT.IBM-850:        Es_ES           ! Spanish, Guatemala              ,   ,
+OpenBSD.100+.setlocale.>.es_MX.IBM-850:        Es_ES           ! Spanish, Mexico                 ,   ,
+OpenBSD.100+.setlocale.>.es_PE.IBM-850:        Es_ES           ! Spanish, Peru                   ,   ,
+OpenBSD.100+.setlocale.>.es_UY.IBM-850:        Es_ES           ! Spanish, Uruguay                ,   ,
+OpenBSD.100+.setlocale.>.es_VE.IBM-850:        Es_ES           ! Spanish, Venezuela              ,   ,
+! OpenBSD.100+.setlocale.>.et_EE.IBM-850:                      ! Estonian, Estonia               ,
+OpenBSD.100+.setlocale.~.fi_FI.IBM-850:        Fi_FI           ! Finnish, Finland                ,IBM,
+! OpenBSD.100+.setlocale.>.fo_FO.IBM-850:                      ! Faroese, Faeroe Island          ,
+OpenBSD.100+.setlocale.~.fr_BE.IBM-850:        Fr_BE           ! French,Belgium                  ,   ,
+OpenBSD.100+.setlocale.~.fr_CA.IBM-850:        Fr_CA           ! French, Canada                  ,IBM,
+OpenBSD.100+.setlocale.~.fr_CH.IBM-850:        Fr_CH           ! French, Switzerland             ,IBM,
+OpenBSD.100+.setlocale.~.fr_FR.IBM-850:        Fr_FR           ! French, France                  ,IBM,
+OpenBSD.100+.setlocale.~.is_IS.IBM-850:        Is_IS           ! Icelandic, Iceland              ,IBM,
+OpenBSD.100+.setlocale.>.it_CH.IBM-850:        It_IT           ! Italian,Switzerland             ,   ,
+OpenBSD.100+.setlocale.~.it_IT.IBM-850:        It_IT           ! Italian, Italy                  ,IBM,
+! OpenBSD.100+.setlocale.>.kl_GL.IBM-850:                      ! Greenlandic, Greenland          ,
+! OpenBSD.100+.setlocale.>.lt_LT.IBM-850:                      ! Lithuanian, Lithuania           ,
+! OpenBSD.100+.setlocale.>.lv_LV.IBM-850:                      ! Latvian, Latvia                 ,
+OpenBSD.100+.setlocale.~.nl_BE.IBM-850:        Nl_BE           ! Dutch, Belgium                  ,IBM,
+OpenBSD.100+.setlocale.~.nl_NL.IBM-850:        Nl_NL           ! Dutch, The Netherlands          ,IBM,
+OpenBSD.100+.setlocale.~.no_NO.IBM-850:        No_NO           ! Norwegian, Norway               ,IBM,
+OpenBSD.100+.setlocale.>.pt_BR.IBM-850:        Pt_PT           ! Portuguese,Brazil               ,   ,
+OpenBSD.100+.setlocale.~.pt_PT.IBM-850:        Pt_PT           ! Portuguese, Portugal            ,IBM,
+OpenBSD.100+.setlocale.>.sv_FI.IBM-850:        Sv_SE           ! Swedish, Finland                ,
+vvOpenBSD.100+.setlocale.~.sv_SE.IBM-850:      Sv_SE           ! Swedish, Sweden                 ,IBM,
+
+
+! codesets supported for iconv(1,3) & nl_langinfo and above
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-1:        ISO8859-1
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-2:        ISO8859-2
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-5:        ISO8859-5
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-6:        ISO8859-6
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-7:        ISO8859-7
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-8:        ISO8859-8
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-9:        ISO8859-9
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.EUC-KR:            IBM-eucKR
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.EUC-JP:            IBM-eucJP
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.EUC-TW:            IBM-eucTW
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.EUC-CN:            IBM-eucCN
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).>.?.HP-15CN:   IBM-eucCN
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-437:   IBM-437
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-850:   IBM-850
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-856:   IBM-856
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-932:   IBM-932
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).>.?.HP-SJIS:   IBM-932
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-1046:  IBM-1046
+OpenBSD.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.UTF-8:          UTF-8
+OpenBSD.100+.iconv1,iconv3.>.?.ISO-2022-JP:                            fold7
+OpenBSD.100+.iconv1,iconv3.>.?.ISO-2022-KR:                         fold7
+OpenBSD.100+.iconv1,iconv3.>.?.ISO-2022-TW:                         fold7
+OpenBSD.100+.iconv1,iconv3.>.?.ISO-2022-CN:                         fold7
+OpenBSD.100+.iconv1,iconv3.>.?.HP-BIG5:                         big5
+OpenBSD.100+.iconv1,iconv3.>.?.TIS-620:                         TIS-620
+
+! codesets not supported by OpenBSD iconv(1,3)
+! OpenBSD.?.iconv1,iconv3.~.?.UCS-2:
+! OpenBSD.?.iconv1,iconv3.~.?.HP-ARABIC8:
+! OpenBSD.?.iconv1,iconv3.~.?.HP-GREEK8:
+! OpenBSD.?.iconv1,iconv3.~.?.HP-HEBREW8
+! OpenBSD.?.iconv1,iconv3.~.?.HP-ROMAN8:
+! OpenBSD.?.iconv1,iconv3.~.?.HP-TURKISH8:
+! OpenBSD.?.iconv1,iconv3.~.?.HP-KANA8:
+! OpenBSD.?.iconv1,iconv3.~.?.HP-CCDC:
+
+! multibyte codesets
+! This translation provides an alternative to a call to
+! using setlocale() and MB_CUR_MAX to determine this.
+OpenBSD.100+.multibyte.=.?.EUC-KR:             2
+OpenBSD.100+.multibyte.=.?.HP-SJIS:            2
+OpenBSD.100+.multibyte.=.?.IBM-932:            2
+OpenBSD.100+.multibyte.=.?.EUC-JP:             3
+! OpenBSD.?.multibyte.~.?.HP-CCDC:             2
+OpenBSD.100+.multibyte.>.?.HP-BIG5:            2
+OpenBSD.100+.multibyte.=.?.EUC-TW:             4
+OpenBSD.100+.multibyte.=.?.TIS-620:            2
+OpenBSD.100+.multibyte.=.?.EUC-CN:             2
+OpenBSD.100+.multibyte.=.?.HP-15CN:            2
+OpenBSD.100+.multibyte.=.?.EUC-KR:             2
+OpenBSD.100+.multibyte.=.?.UTF-8:              3
+
+
+! Translations from predefined CCDF-locales to CDE Standard Locales
+OpenBSD.100+.ccdf.=.?.ISO-8859-1:      ISO8859-1
+OpenBSD.100+.ccdf.=.?.ISO-8859-2:      ISO8859-2
+OpenBSD.100+.ccdf.=.?.ISO-8859-5:      ISO8859-5
+OpenBSD.100+.ccdf.=.?.ISO-8859-6:      ISO8859-6
+OpenBSD.100+.ccdf.=.?.ISO-8859-7:      ISO8859-7
+OpenBSD.100+.ccdf.=.?.ISO-8859-8:      ISO8859-8
+OpenBSD.100+.ccdf.=.?.ISO-8859-9:      ISO8859-9
+OpenBSD.100+.ccdf.=.?.EUC-JP:  IBM-eucJP
+OpenBSD.100+.ccdf.=.?.EUC-KR:  IBM-eucKR
+OpenBSD.100+.ccdf.=.?.EUC-TW:  IBM-eucTW
+OpenBSD.100+.ccdf.=.?.EUC-CN:  IBM-eucCN
+OpenBSD.100+.ccdf.>.?.IBM-932: IBM-932
+OpenBSD.100+.ccdf.>.?.HP-SJIS: IBM-932
+OpenBSD.100+.ccdf.=.?.IBM-1046:        IBM-1046
+OpenBSD.100+.ccdf.=.?.IBM-850: IBM-850
+OpenBSD.100+.ccdf.=.?.IBM-856: IBM-856
+OpenBSD.100+.ccdf.=.?.HP-BIG5: big5
+OpenBSD.100+.ccdf.=.?.TIS-620: TIS-620
+OpenBSD.100+.ccdf.=.?.UTF-8:   UTF-8
+OpenBSD.100+.ccdf.=.?.DT-SYMBOL-1:     symbol        !!! standard Dt symbol font
+
+! These CDE standard locales may have CCDF-locales, but they are defined by localizers
+OpenBSD.100+.ccdf.>.?.HP-ROMAN8:    ISO8859-1
+OpenBSD.100+.ccdf.>.?.HP-ARABIC8:      ISO8859-6
+OpenBSD.100+.ccdf.>.?.HP-GREEK8:       ISO8859-8
+OpenBSD.100+.ccdf.>.?.HP-HEBREW8:      ISO8859-7
+OpenBSD.100+.ccdf.>.?.HP-TURKISH8:     ISO8859-9
+OpenBSD.100+.ccdf.>.?.HP-KANA8:        IBM-932
+OpenBSD.100+.ccdf.>.?.HP-CCDC: IBM-eucCN
+
+
+
+! Codesets that require multibyte parsing to avoid confusion with shell special chars
+OpenBSD.?.dtkshSpecialParse.=.ja_JP.HP-JIS:            True
+OpenBSD.?.dtkshSpecialParse.=.ja_JP.HP-SJIS:   True
+OpenBSD.?.dtkshSpecialParse.=.ja_JP.IBM-932:   True
+OpenBSD.?.dtkshSpecialParse.=.zh_TW.HP-BIG5:   True
+OpenBSD.?.dtkshSpecialParse.=.zh_TW.HP-CCDC:   True
+
+
+!! When content is exchanged with other platforms, the interchange codeset
+!! may be different that the codeset used locally.  In CDE1, these translations
+!! are used by dtmail, but other clients may use the same translations
+!! in the future.  For example, to improve interoperability of 8-bit mail,
+!! the mail messages of users working in codesets such as HP-ROMAN8 or IBM-850
+!! are translated to the interchangeCodeset (in this case, ISO-8859-1) before
+!! they are sent.  Similarly, the mail of Japanese users is translated to JIS
+!! before it is sent.
+!!
+!! --------------------------------------------------------------------
+!! OpenBSD does provide the fold7 conversion which is an ISO 2022 encoding
+!! of every code set supported by a locale... so ... the name
+!!   ISO-2022-xx ( where xx is JP, CN, KR, TW)
+!! can be used for any of the following interchangeCodeset... but it has
+!! been left as is in case 8-bit mail is supported...
+!! --------------------------------------------------------------------
+!!
+OpenBSD.?.interchangeCodeset.~.?.ISO-8859-1:   ISO-8859-1      ! ISO Latin 1
+!OpenBSD.?.interchangeCodeset.>.?.HP-ROMAN8:   ISO-8859-1      ! HP Roman8
+OpenBSD.?.interchangeCodeset.>.?.IBM-850:              ISO-8859-1      ! PC (Multi-lingual)
+OpenBSD.?.interchangeCodeset.>.?.IBM-437:              ISO-8859-1      ! PC (US)
+OpenBSD.?.interchangeCodeset.~.?.ISO-8859-2:   ISO-8859-2      ! ISO Latin 2
+OpenBSD.?.interchangeCodeset.~.?.ISO-8859-5:   ISO-8859-5      ! ISO Latin/Cyrillic
+OpenBSD.?.interchangeCodeset.~.?.ISO-8859-6:   ISO-8859-6      ! ISO Latin/Arabic
+!OpenBSD.?.interchangeCodeset.>.?.HP-ARABIC8:  ISO-8859-6      ! HP Arabic8
+OpenBSD.?.interchangeCodeset.>.?.IBM-1046:             ISO-8859-6      ! PC Arabic Code Set
+OpenBSD.?.interchangeCodeset.~.?.ISO-8859-8:   ISO-8859-8      ! ISO Latin/Hebrew
+!OpenBSD.?.interchangeCodeset.>.?.HP-HEBREW8:  ISO-8859-8      ! HP Hebrew8
+OpenBSD.?.interchangeCodeset.>.?.IBM-856:              ISO-8859-8      ! PC Hebrew
+OpenBSD.?.interchangeCodeset.~.?.ISO-8859-7:   ISO-8859-7      ! ISO Latin/Greek
+!OpenBSD.?.interchangeCodeset.>.?.HP-GREEK8:   ISO-8859-7      ! HP Greek8
+OpenBSD.?.interchangeCodeset.~.?.ISO-8859-9:   ISO-8859-9      ! ISO Latin 5
+!OpenBSD.?.interchangeCodeset.>.?.HP-TURKISH8: ISO-8859-9      ! HP Turkish8
+OpenBSD.?.interchangeCodeset.~.?.EUC-JP:               ISO-2022-JP     ! Japanese EUC
+!OpenBSD.?.interchangeCodeset.>.?.HP-SJIS:             ISO-2022-JP     ! HP Japanese Shift JIS
+OpenBSD.?.interchangeCodeset.>.?.IBM-932:              ISO-2022-JP     ! PC Japanese Shift JIS
+!OpenBSD.?.interchangeCodeset.>.?.HP-KANA8:            ISO-2022-JP     ! HP Japanese Katakana8
+! uncomment when ISO-2022-KR is supported by iconv
+OpenBSD.?.interchangeCodeset.~.?.EUC-KR:               ISO-2022-KR     ! Korean EUC
+! uncomment when ISO-2022-CN is supported by iconv
+OpenBSD.?.interchangeCodeset.~.?.EUC-CN:               ISO-2022-CN     ! China Chinese EUC
+OpenBSD.?.interchangeCodeset.>.?.HP-15CN:              ISO-2022-CN     ! HP Chinese EUC
+! uncomment when ISO-2022-TW is supported by iconv
+OpenBSD.?.interchangeCodeset.~.?.EUC-TW:               ISO-2022-TW     ! Taiwan Chinese EUC
+OpenBSD.?.interchangeCodeset.>.?.HP-BIG5:              ISO-2022-TW     ! HP Big5 Chinese
+OpenBSD.?.interchangeCodeset.>.?.HP-CCDC:              ISO-2022-TW     ! HP CCDC Chinese
+OpenBSD.?.interchangeCodeset.~.?.TIS-620:              TIS-620         ! Thai
+OpenBSD.?.interchangeCodeset.>.?.UCS-2:                ISO-2022-JP     ! Unicode
+OpenBSD.?.interchangeCodeset.~.?.UTF-8:                ISO-2022-JP     ! multibyte Unicode
+!! Codeset identifiers for use with MIME messages.  The .~. translations
+!! are used by dtmail and adhere to the MIME standard, RFC 1521.
+!! Note that the MIME standard states that codeset identifiers are
+!! case-insensitive.  The operation-specific values on the right-hand-side
+!! of the translations below, however, ARE case sensitive.  Before
+!! doing a OpToStd translation, first convert the MIME codeset identifier
+!! to uppercase.  Alternatively, one could provide lower-case versions
+!! of the translations (right-hand-side only should be in lower-case).
+OpenBSD.?.mime.~.?.ISO-8859-1: ISO-8859-1      ! ISO Latin 1
+OpenBSD.?.mime.~.?.HP-ROMAN8:  X-HP-ROMAN8     ! HP Roman8
+OpenBSD.?.mime.~.?.IBM-437:            X-IBM-437       ! PC (US)
+OpenBSD.?.mime.~.?.IBM-850:            X-IBM-850       ! PC (Multi-lingual)
+OpenBSD.?.mime.~.?.ISO-8859-2: ISO-8859-2      ! ISO Latin 2
+OpenBSD.?.mime.~.?.ISO-8859-5: ISO-8859-5      ! ISO Latin/Cyrillic
+OpenBSD.?.mime.~.?.ISO-8859-6: ISO-8859-6      ! ISO Latin/Arabic
+OpenBSD.?.mime.~.?.HP-ARABIC8: X-HP-ARABIC8    ! HP Arabic8
+OpenBSD.?.mime.~.?.IBM-1046:   X-IBM-1046      ! PC Arabic Code Set
+OpenBSD.?.mime.~.?.ISO-8859-8: ISO-8859-8      ! ISO Latin/Hebrew
+OpenBSD.?.mime.~.?.HP-HEBREW8: X-HP-HEBREW8    ! HP Hebrew8
+OpenBSD.?.mime.~.?.IBM-856:            X-IBM-856       ! PC Hebrew
+OpenBSD.?.mime.~.?.ISO-8859-7: ISO-8859-7      ! ISO Latin/Greek
+OpenBSD.?.mime.~.?.HP-GREEK8:  X-HP-GREEK8     ! HP Greek8
+OpenBSD.?.mime.~.?.ISO-8859-9: ISO-8859-9      ! ISO Latin 5
+OpenBSD.?.mime.~.?.HP-TURKISH8:        X-HP-TURKISH8   ! HP Turkish8
+OpenBSD.?.mime.~.?.EUC-JP:             X-EUC-JP        ! Japanese EUC
+OpenBSD.?.mime.~.?.ISO-2022-JP:        ISO-2022-JP     ! Japanese JIS with 7-bit encoding per ISO-2022-JP
+OpenBSD.?.mime.~.?.HP-SJIS:            X-HP-SJIS       ! HP Japanese Shift JIS
+OpenBSD.?.mime.~.?.IBM-932:            X-IBM-932       ! PC Japanese Shift JIS
+OpenBSD.?.mime.~.?.HP-KANA8:   X-HP-KANA8      ! HP Japanese Katakana8
+OpenBSD.?.mime.~.?.EUC-KR:             X-EUC-KR        ! Korean EUC
+OpenBSD.?.mime.~.?.ISO-2022-KR:        ISO-2022-KR     ! Korean with 7-bit encoding per ISO-2022-KR
+OpenBSD.?.mime.~.?.EUC-CN:             X-EUC-CN        ! China Chinese EUC
+OpenBSD.?.mime.~.?.ISO-2022-CN:        ISO-2022-CN     ! China Chinese with 7-bit encoding per ISO-2022-CN
+OpenBSD.?.mime.~.?.HP-15CN:            X-HP-15CN       ! HP China Chinese EUC
+OpenBSD.?.mime.~.?.EUC-TW:             X-EUC-TW        ! Taiwan Chinese EUC
+OpenBSD.?.mime.~.?.ISO-2022-TW:        ISO-2022-TW     ! Taiwan Chinese with 7-bit encoding per ISO-2022-TW
+OpenBSD.?.mime.~.?.HP-BIG5:            X-HP-BIG5       ! HP Big5 Taiwan Chinese
+OpenBSD.?.mime.~.?.HP-CCDC:            X-HP-CCDC       ! HP CCDC Taiwan Chinese
+OpenBSD.?.mime.~.?.TIS-620:            X-TIS-620       ! Thai
+OpenBSD.?.mime.~.?.UCS-2:              X-UCS-2         ! Unicode; group 0, plane 0 of ISO-10646
+OpenBSD.?.mime.~.?.UCS-4:              X-UCS-4         ! ISO-10646
+OpenBSD.?.mime.~.?.UTF-7:              X-UTF-7         ! multibyte encoding of Unicode
+OpenBSD.?.mime.~.?.UTF-8:              X-UTF-8         ! multibyte encoding of Unicode
+OpenBSD.?.mime.~.?.UTF-16:             X-UTF-16        ! multibyte encoding of Unicode
+
+!! If other mailers are using other codeset identifiers in their MIME
+!! messages, dtmail will not be able to process them correctly.
+!! To correct this, additional .<. translations for these identifiers
+!! can be added to a <platform>.lcx file in the /etc/dt/config/svc
+!! or $HOME/.dt/config/svc directories.  Such translations should read:
+!! <platform>.100+.mime.<.?.<CDE std codeset>: <mailer identifier for the codeset>
+!!
+!! ***NEVER*** use a .~. translation, such as we use above, as this could
+!! cause dtmail to send unexpected identifier strings by overriding the
+!! above definition.  Further, never use .=. or .>. translations.
+!!
+!! These two identifiers are in common usage, as they derive from RFC1521.
+OpenBSD.?.mime.<.?.ISO-8859-1: us-ascii        ! ISO Latin 1
+OpenBSD.?.mime.<.?.ISO-8859-1: US-ASCII        ! ISO Latin 1
index 4805d1757d0e4db6aaec12504de5ad2b4ef8aa45..0d34371dad57b3908fa31490759e52ae36e8cf91 100644 (file)
@@ -7,7 +7,12 @@ XCOMM $XConsortium: Imakefile /main/4 1996/08/08 14:42:19 cde-hp $
 #define LibHeaders     NO
 #define LibInstall     NO
 
+#if defined(FreeBSDArchitecture)
+VERSION = 8.5
+#else
 VERSION = 7.5
+#endif
+
 prefix =       /usr/local
 
 XCOMM Directory from which applications will reference the library of Tcl
@@ -40,10 +45,17 @@ EXTRA_DEFINES = -DTCL_LIBRARY=\"${TCL_LIBRARY}\" \
        -DTCL_GOT_TIMEZONE
 
 #     else
+#       ifdef FreeBSDArchitecture
+EXTRA_DEFINES = -DTCL_LIBRARY=\"${TCL_LIBRARY}\" \
+       -DNO_UNION_WAIT -DHAVE_UNISTD_H \
+       -DTCL_GOT_TIMEZONE
+
+#       else
 EXTRA_DEFINES = -DTCL_LIBRARY=\"${TCL_LIBRARY}\" \
        -DNO_UNION_WAIT -DHAVE_UNISTD_H -DNEED_MATHERR \
        -DTCL_GOT_TIMEZONE
 
+#       endif
 #     endif
 #   endif
 # endif
index a4f422771c8ad229f647cf384951afda3703b0b4..989b4fd1b9105c87d9f36e3107a5549a570cabb4 100644 (file)
@@ -77,7 +77,7 @@ STLIBCENV =
 M4 = /bin/m4
 #endif
 
-#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture)
+#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture) || defined(FreeBSDArchitecture)
 
 /*
  * put cpp directives here rather than in CXXDEFINES because
@@ -86,7 +86,8 @@ M4 = /bin/m4
  */
 CXXOPTIONS = \
   -DSP_VOLATILE=volatile -DSP_CONST=const -DSP_ANSI_CLASS_INST \
-  -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_MANUAL_INST -fno-implicit-templates
+  -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_MANUAL_INST -fno-implicit-templates \
+  -fpermissive
 
 /*
  * Flags passed into compile step when doing manual template instantiation.