nixpkgs/pkgs/data/misc/tzdata/0001-Add-exe-extension-for-MS-Windows-binaries.patch
Nicolas Benes 1654dc831c tzdata: enable cross-compilation for Windows
* Additional make flags are needed since some functions do not exist
    or have different names or parameters on Windows.

  * When compiling for Windows, GCC implicitly adds a `.exe` suffix to
    the output file name. A patch is needed for the `install` target
    to locate and install the correct files.

  * The tzdata Makefile contains `zic` and `ZIC` variables. The former
    refers to the path of the program to execute, while the latter
    invokes the former with additional arguments (it is defined as
    `ZIC=$(zic) $(ZFLAGS)`, `ZFLAGS` is normally empty).

    Previously, `ZIC` was overridden, potentially loosing `ZFLAGS`
    arguments. This commit changes it to override `zic` instead.

  * The `zic` program is built and installed as part of the package and
    also executed during the build to translate time-related files. When
    cross-compiling it means that two executables need to be compiled:
    one to get installed and run on the host platform, and another to
    run on the build platform. Instead of renaming files and building a
    temporary executable for the build platform, this commit references
    the build platform's `tzdata.bin` package and runs its `zic`
    program.
2022-10-01 21:55:18 +02:00

15 lines
557 B
Diff

diff --git a/Makefile b/Makefile
index a9a989e..4da737b 100644
--- a/Makefile
+++ b/Makefile
@@ -579,8 +579,8 @@ install: all $(DATA) $(REDO) $(MANS)
-t '$(DESTDIR)$(TZDEFAULT)'
cp -f $(TABDATA) '$(DESTDIR)$(TZDIR)/.'
cp tzselect '$(DESTDIR)$(BINDIR)/.'
- cp zdump '$(DESTDIR)$(ZDUMPDIR)/.'
- cp zic '$(DESTDIR)$(ZICDIR)/.'
+ cp zdump.exe '$(DESTDIR)$(ZDUMPDIR)/.'
+ cp zic.exe '$(DESTDIR)$(ZICDIR)/.'
cp libtz.a '$(DESTDIR)$(LIBDIR)/.'
$(RANLIB) '$(DESTDIR)$(LIBDIR)/libtz.a'
cp -f newctime.3 newtzset.3 '$(DESTDIR)$(MANDIR)/man3/.'