ysangkok / haskell-tzdata

Forked to update to newer tzdb and use different dependencies
Apache License 2.0
4 stars 1 forks source link

Does not build with new JS backend #7

Open tysonzero opened 1 month ago

tysonzero commented 1 month ago

Very possible this will get fixed with improvements in the backend itself, but in case there is unnecessarily platform/backend-dependent code in this library I'll raise it here, and I may end up building a workaround in this lib in the short term even if it never leaves my fork:

Haskell.nix revision 6e9c388cb8353b7d773cd93b553fa939556401ce using nixpkgs-2311 and ghc982 gives the following error when building tzdata-0.2.20240201.0:

Configure flags:
--prefix=/nix/store/n2g3451q74527c2i80vdy8q9xhrmpaw7-tzdata-lib-tzdata-0.2.20240201.0 lib:tzdata --package-db=clear --package-db=/private/tmp/nix-build-tzdata-lib-tzdata-0.2.20240201.0.drv-0/tmp.wrdpoG3UJj/lib/package.conf.d --exact-configuration --dependency=vector=vector-0.13.1.0-8kGvf1FNpWP4cD0qniZ65O --dependency=primitive=primitive-0.9.0.0-3Z6MZnSLD38BpiHT3vTCWH --dependency=vector-stream=vector-stream-0.1.0.1-AnXL7Iqx3gr4hvVX4moiUx --dependency=array=array-0.5.6.0-inplace --dependency=base=base-4.19.1.0-inplace --dependency=binary=binary-0.8.9.1-inplace --dependency=bytestring=bytestring-0.12.1.0-inplace --dependency=containers=containers-0.6.8-inplace --dependency=deepseq=deepseq-1.5.0.0-inplace --dependency=directory=directory-1.3.8.1-inplace --dependency=exceptions=exceptions-0.10.7-inplace --dependency=filepath=filepath-1.4.200.1-inplace --dependency=ghc-bignum=ghc-bignum-1.3-inplace --dependency=ghc-boot-th=ghc-boot-th-9.8.2-inplace --dependency=ghc-prim=ghc-prim-0.11.0-inplace --dependency=mtl=mtl-2.3.1-inplace --dependency=parsec=parsec-3.1.17.0-inplace --dependency=pretty=pretty-1.1.3.6-inplace --dependency=rts=rts-1.0.2 --dependency=stm=stm-2.5.2.1-inplace --dependency=system-cxx-std-lib=system-cxx-std-lib-1.0 --dependency=template-haskell=template-haskell-2.21.0.0-inplace --dependency=text=text-2.1.1-inplace --dependency=time=time-1.12.2-inplace --dependency=transformers=transformers-0.6.1.0-inplace --dependency=unix=unix-2.8.4.0-inplace --with-ghc=javascript-unknown-ghcjs-ghc --with-ghc-pkg=javascript-unknown-ghcjs-ghc-pkg --with-hsc2hs=javascript-unknown-ghcjs-hsc2hs --with-gcc=/nix/store/cw0612va6kjmgqldwq8glygw76dq7crm-emscripten-3.1.47/bin/emcc --with-ld=/nix/store/cw0612va6kjmgqldwq8glygw76dq7crm-emscripten-3.1.47/bin/emcc --disable-executable-stripping --disable-library-stripping --disable-library-profiling --disable-profiling --enable-static --disable-shared --disable-executable-dynamic --disable-coverage --disable-library-for-ghci --datadir=/nix/store/qwzv15dgqk8kwpjfv6swxhgipwgnncqm-tzdata-lib-tzdata-0.2.20240201.0-data/share/javascript-unknown-ghcjs-ghc-9.8.2 --hsc2hs-option=--cross-compile 
Configuring library for tzdata-0.2.20240201.0..
cache:INFO: generating system headers: sysroot_install.stamp... (this will be cached in "/private/tmp/nix-build-tzdata-lib-tzdata-0.2.20240201.0.drv-0/tmp.ypBSAWrXhT/sysroot_install.stamp" for subsequent builds)
cache:INFO:  - ok
building
"dist/build/emcc/lib.js doesn't exist!"
Preprocessing library for tzdata-0.2.20240201.0..
Building library for tzdata-0.2.20240201.0..
[1 of 3] Compiling Data.Time.Zones.DB ( Data/Time/Zones/DB.hs, dist/build/Data/Time/Zones/DB.o )

<no location info>: error:
    JS interpreter: couldn't find "ghci" package
[2 of 3] Compiling Paths_tzdata     ( dist/build/autogen/Paths_tzdata.hs, dist/build/Paths_tzdata.o )
[3 of 3] Compiling Data.Time.Zones.Files ( Data/Time/Zones/Files.hs, dist/build/Data/Time/Zones/Files.o )
ysangkok commented 1 month ago

Hmm, I am not sure what is going on here or why it's failing. But I'd happily merge a fix.