https://github.com/evq/utz
A time zone library for tiny embedded systems
https://github.com/evq/utz
Last synced: 11 months ago
JSON representation
A time zone library for tiny embedded systems
- Host: GitHub
- URL: https://github.com/evq/utz
- Owner: evq
- License: mit
- Created: 2017-01-21T12:25:33.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2020-04-22T17:01:39.000Z (about 6 years ago)
- Last Synced: 2024-06-24T01:03:29.475Z (almost 2 years ago)
- Language: C
- Homepage:
- Size: 409 KB
- Stars: 29
- Watchers: 4
- Forks: 13
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-embedded-software - μtz - Time zone library for tiny embedded systems. (Others / Time Management Libs)
README
# μ time zone (library)
An embedded timezone library and ~3kB tzinfo database featuring nearly
all current timezones present in the IANA timezone database.
Designed for use on budget embedded systems with low program space.
The C header containing packed timezone information is generated from
the IANA timezone database.
## Tradeoffs
All historical timezone information has been pruned to save space.
A limited number of aliases are available. (by default restricted to the
same set that android uses) In cases where the alias is not available,
the standard time UTC offset and abbreviation (if present) will be
displayed.
This library is generally inflexible as it heavily relies on
assumptions pertaining to timezone offset increments, abbreviation
formatting, etc to make efficient use of bit packs.
## Limitations
The current utility library does not support parsing /
packing all possible syntax of the source IANA tz database.
Instead a subset corresponding to the what is needed to correctly parse
most zones is implemented.
## Links
[zic man page and IANA tz database format documentation](https://linux.die.net/man/8/zic)
[vendored files](./vendor)