Language and locale data
If your language/locale is already present in one of the language list boxes of the font attribution dialog (Format → Character → Font), probably nothing needs to be done, except maybe an entry to the build system needs to be added. If in doubt, just ask on the dev@l10n mailing list.
Adding a language to the language list box makes it available for character attribution and spell-checking. Availability of spell checker, hyphenation and thesaurus of course depends on the installed dictionaries. To be able to fully support it as a locale, including number formats and calendar data, and having it selectable as default document language we would need a locale data file.
If you plan a new localization of OOo and want to have a new language or locale added, some very basic assignments and mappings have to be done to make it known to the code and the build system.
Once submitted, your requested language usually will be added for the next minor release of OOo.
Default Fonts and Font fallback
Is this still up to date? Define the default fonts for the language (locale)
The International Components for Unicode or ICU is an external library providing glyph layout in CTL languages, Unicode algorithms like collation, break iterators for word boundaries, and calendar systems. There's a list of patches applied to the version currently in use.