freerdp3/docs
2024-12-19 08:35:26 -05:00
..
mingw-example New upstream version 3.10.2+dfsg 2024-12-19 08:35:26 -05:00
Doxyfile New upstream version 3.10.2+dfsg 2024-12-19 08:35:26 -05:00
PrintFormatSpecifiers.md New upstream version 2.0.0~git1648deb 2017-07-25 14:45:30 +00:00
README.building New upstream version 3.10.2+dfsg 2024-12-19 08:35:26 -05:00
README.mingw New upstream version 3.6.2+dfsg1 2024-07-05 08:30:26 -04:00
README.timezones [winpr,timezone] update documentation 2024-07-19 14:02:15 +02:00
valgrind.supp Imported Upstream version 2.0.0~gite2dbe5e 2016-01-15 17:12:04 +00:00
version_detection.md New upstream version 3.10.2+dfsg 2024-12-19 08:35:26 -05:00
wlog.md New upstream version 3.10.2+dfsg 2024-12-19 08:35:26 -05:00

## Timezone related options

* WITH_TIMEZONE_COMPILED   Use compiled in mapping extracted with tzextract (default ON)
* WITH_TIMEZONE_FROM_FILE  Use JSON file mapping generated with tzextract (default OFF)
* WITH_TIMEZONE_ICU        Use ICU to map IANA to windows timezones (default OFF)
* WITH_TIMEZONE_UPDATER    Build the tzextract utility (default OFF)

### Suggested usage

* WITH_TIMEZONE_COMPILED is suggested for single binary builds (aka fully static) binaries that
  can not rely on external files to exist.
* WITH_TIMEZONE_FROM_FILE is suggested for distribution packages as this allows updating timezone
  mappings without a necessary recompile of the FreeRDP binaries. Set WITH_TIMEZONE_COMPILED=OFF
  in such cases as both options can be used in combination. (entries from file taking preference
  over compiled in versions)
* WITH_TIMEZONE_ICU is suggested if the target is already linked against ICU. This eliminates a
  required mapping table generated from WindowsZones.xml. This option is only a fallback if the
  compiled in or loaded from file mappings do not match any.

## Keeping timezone mappings up to date

On an up to date windows machine run the following binary after a build with -DWITH_TIMEZONE_UPDATER=ON (from build directory):

tzextract <path to source>\winpr\libwinpr\timezone

After running the scripts check
 * git clang-format -f to eliminate formatting changes
 * winpr/libwinpr/timezone/WindowsZones.c
for changes.

on any machine run the following script from checkout root:

./scripts/update-windows-zones.py

After running the scripts check
 * git clang-format -f to eliminate formatting changes
 * winpr/libwinpr/timezone/WindowsZones.c
for changes.

Commit if the definitions changed:
1. run `git clang-format -f` on these changed files
2. commit these changes
3. create a pull request at https://github.com/FreeRDP/FreeRDP