Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mingw fixes #43890

Merged
merged 8 commits into from Jul 21, 2018
Merged

Mingw fixes #43890

merged 8 commits into from Jul 21, 2018

Conversation

matthewbauer
Copy link
Member

Motivation for this change

Some non-mass rebuild fixes for mingw.

  • unmark a few packages as unix only
  • fixes builds of:
    • file
    • openssl
    • ncurses
  • add libgnurx (needed for file)
  • add two wine tests to verify executables work

@@ -19,8 +19,6 @@ let
# DejaVu changes are in public domain
# See http://dejavu-fonts.org/wiki/License for details
license = stdenv.lib.licenses.free;

platforms = stdenv.lib.platforms.unix;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Set it to all instead of deleting or it won't be built on Hydra.

@GrahamcOfBorg
Copy link

Success on x86_64-darwin (full log)

Attempted: file, gettext, libxml2, libxslt, ncurses, openssl

Partial log (click to expand)

/nix/store/yip5dram8rhc17zpnqgq73dj2qcs6mgz-file-5.33
/nix/store/203vdwnigm91gpqd4smyhg2bhf4gxxq9-gettext-0.19.8.1
/nix/store/x035cdr5w8wzxs5q08cypyzvikih33in-libxml2-2.9.8-bin
/nix/store/dylxy2l1n0bbc4af7pnjbf376wjzc94i-libxslt-1.1.32-bin
/nix/store/ck8c7nb7qg17r26gdxya2gw0q16mai5f-ncurses-6.1
/nix/store/3i6j84m9zvgb97i5swray2ch5586zmy6-openssl-1.0.2o-bin

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: file, gettext, libxml2, libxslt, ncurses, openssl

Partial log (click to expand)

  /nix/store/2wxf06pcnlzj3xp2nfkakbnkbnmc1ap6-libxslt-1.1.32-bin
  /nix/store/ykj83f0k4qv7j92siv3fg58lmxlj34yn-file-5.33
copying path '/nix/store/ykj83f0k4qv7j92siv3fg58lmxlj34yn-file-5.33' from 'https://cache.nixos.org'...
copying path '/nix/store/2wxf06pcnlzj3xp2nfkakbnkbnmc1ap6-libxslt-1.1.32-bin' from 'https://cache.nixos.org'...
/nix/store/ykj83f0k4qv7j92siv3fg58lmxlj34yn-file-5.33
/nix/store/j8811bfarsmi4vg4p8l53ggcfpbb1jim-gettext-0.19.8.1
/nix/store/9pvxq544f5jsg720gawbr4amlls4q04p-libxml2-2.9.8-bin
/nix/store/2wxf06pcnlzj3xp2nfkakbnkbnmc1ap6-libxslt-1.1.32-bin
/nix/store/f112h1icg77r31zn0ym2fmswsbdklb93-ncurses-6.1
/nix/store/a0w685vyychvsi91x4mh4f592hyazfyg-openssl-1.0.2o-bin

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: file, gettext, libxml2, libxslt, ncurses, openssl

Partial log (click to expand)

/nix/store/40x82ffad1nsbgcmg30yf3qz9qppz94z-file-5.33
/nix/store/x840622r5blc3mdr7v1nasa1i82jdixy-gettext-0.19.8.1
/nix/store/bhmvdjrir06l4akbd540il8679zba7l9-libxml2-2.9.8-bin
/nix/store/rbgbax009b0wkjihfh58fi5ahmybqsxv-libxslt-1.1.32-bin
/nix/store/2ycq3hgnkczlb06hy79lmficf392qgfd-ncurses-6.1
/nix/store/nylyf9hmrl947zni8xv01smp2x39v0f5-openssl-1.0.2o-bin

the .ttf file is cross platform.
Mingw/Windows support works out of the box.
Mingw/Windows support works out of the box.
@matthewbauer
Copy link
Member Author

@GrahamcOfBorg build tests.cross.mingw32 tests.cross.mingwW64 pkgsCross.mingw32.openssl pkgsCross.mingwW64.openssl pkgsCross.mingw32.libxslt pkgsCross.mingwW64.libxslt pkgsCross.mingw32.ncurses pkgsCross.mingwW64.ncurses pkgsCross.mingw32.gettext pkgsCross.mingwW64.gettext

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: file, gettext, libxml2, libxslt, ncurses, openssl

Partial log (click to expand)

/nix/store/ykj83f0k4qv7j92siv3fg58lmxlj34yn-file-5.33
/nix/store/j8811bfarsmi4vg4p8l53ggcfpbb1jim-gettext-0.19.8.1
/nix/store/9pvxq544f5jsg720gawbr4amlls4q04p-libxml2-2.9.8-bin
/nix/store/2wxf06pcnlzj3xp2nfkakbnkbnmc1ap6-libxslt-1.1.32-bin
/nix/store/f112h1icg77r31zn0ym2fmswsbdklb93-ncurses-6.1
/nix/store/a0w685vyychvsi91x4mh4f592hyazfyg-openssl-1.0.2o-bin

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: file, gettext, libxml2, libxslt, ncurses, openssl

Partial log (click to expand)

/nix/store/40x82ffad1nsbgcmg30yf3qz9qppz94z-file-5.33
/nix/store/x840622r5blc3mdr7v1nasa1i82jdixy-gettext-0.19.8.1
/nix/store/bhmvdjrir06l4akbd540il8679zba7l9-libxml2-2.9.8-bin
/nix/store/rbgbax009b0wkjihfh58fi5ahmybqsxv-libxslt-1.1.32-bin
/nix/store/2ycq3hgnkczlb06hy79lmficf392qgfd-ncurses-6.1
/nix/store/nylyf9hmrl947zni8xv01smp2x39v0f5-openssl-1.0.2o-bin

@GrahamcOfBorg
Copy link

Failure on x86_64-linux (full log)

Attempted: tests.cross.mingw32, tests.cross.mingwW64, pkgsCross.mingw32.openssl, pkgsCross.mingwW64.openssl, pkgsCross.mingw32.libxslt, pkgsCross.mingwW64.libxslt, pkgsCross.mingw32.ncurses, pkgsCross.mingwW64.ncurses, pkgsCross.mingw32.gettext, pkgsCross.mingwW64.gettext

Partial log (click to expand)

patching script interpreter paths in /nix/store/jx8f380fmnrzy56ln6wnbg18lg5yv8sw-openssl-1.0.2o-x86_64-pc-mingw32-dev
shrinking RPATHs of ELF executables and libraries in /nix/store/1zm14d9b048csfbwzr3kvn61jd2zal45-openssl-1.0.2o-x86_64-pc-mingw32
x86_64-pc-mingw32-strip is /nix/store/klj0792ldam5glxjgndxp5rc0zd574yy-x86_64-pc-mingw32-binutils-2.30/bin/x86_64-pc-mingw32-strip
stripping (with command x86_64-pc-mingw32-strip and flags -S) in /nix/store/1zm14d9b048csfbwzr3kvn61jd2zal45-openssl-1.0.2o-x86_64-pc-mingw32/lib
patching script interpreter paths in /nix/store/1zm14d9b048csfbwzr3kvn61jd2zal45-openssl-1.0.2o-x86_64-pc-mingw32
shrinking RPATHs of ELF executables and libraries in /nix/store/6ph3a93brsz0hq5vlcz1j7h8ffajxgl4-openssl-1.0.2o-x86_64-pc-mingw32-man
gzipping man pages under /nix/store/6ph3a93brsz0hq5vlcz1j7h8ffajxgl4-openssl-1.0.2o-x86_64-pc-mingw32-man/share/man/
x86_64-pc-mingw32-strip is /nix/store/klj0792ldam5glxjgndxp5rc0zd574yy-x86_64-pc-mingw32-binutils-2.30/bin/x86_64-pc-mingw32-strip
patching script interpreter paths in /nix/store/6ph3a93brsz0hq5vlcz1j7h8ffajxgl4-openssl-1.0.2o-x86_64-pc-mingw32-man
error: build of '/nix/store/gn96jq5syf1ar8v4f76shh1zsndfj6ac-gettext-0.19.8.1-x86_64-pc-mingw32.drv' failed

@matthewbauer
Copy link
Member Author

@GrahamcOfBorg build tests.cross.mingw32 tests.cross.mingwW64 pkgsCross.mingw32.openssl pkgsCross.mingwW64.openssl pkgsCross.mingw32.libxslt pkgsCross.mingwW64.libxslt pkgsCross.mingw32.ncurses pkgsCross.mingwW64.ncurses pkgsCross.mingw32.gettext pkgsCross.mingwW64.gettext

@GrahamcOfBorg
Copy link

Failure on aarch64-linux (full log)

Attempted: tests.cross.mingw32, pkgsCross.mingw32.openssl, pkgsCross.mingwW64.openssl, pkgsCross.mingw32.libxslt, pkgsCross.mingwW64.libxslt, pkgsCross.mingw32.ncurses, pkgsCross.mingwW64.ncurses, pkgsCross.mingw32.gettext, pkgsCross.mingwW64.gettext

The following builds were skipped because they don't evaluate on aarch64-linux: tests.cross.mingwW64

Partial log (click to expand)

patching script interpreter paths in /nix/store/ral62cmbpn0dr65qhgy452yq9h4pf1yc-openssl-1.0.2o-x86_64-pc-mingw32-dev
shrinking RPATHs of ELF executables and libraries in /nix/store/2nnhakzbj74mr75vi6amqqf46pkllr4z-openssl-1.0.2o-x86_64-pc-mingw32
x86_64-pc-mingw32-strip is /nix/store/hsvrlz6y4xpqhdxll3p77zakrwmmd2fp-x86_64-pc-mingw32-binutils-2.30/bin/x86_64-pc-mingw32-strip
stripping (with command x86_64-pc-mingw32-strip and flags -S) in /nix/store/2nnhakzbj74mr75vi6amqqf46pkllr4z-openssl-1.0.2o-x86_64-pc-mingw32/lib
patching script interpreter paths in /nix/store/2nnhakzbj74mr75vi6amqqf46pkllr4z-openssl-1.0.2o-x86_64-pc-mingw32
shrinking RPATHs of ELF executables and libraries in /nix/store/5ifh8mck01lp4hzigmqkdq35m16l2msh-openssl-1.0.2o-x86_64-pc-mingw32-man
gzipping man pages under /nix/store/5ifh8mck01lp4hzigmqkdq35m16l2msh-openssl-1.0.2o-x86_64-pc-mingw32-man/share/man/
x86_64-pc-mingw32-strip is /nix/store/hsvrlz6y4xpqhdxll3p77zakrwmmd2fp-x86_64-pc-mingw32-binutils-2.30/bin/x86_64-pc-mingw32-strip
patching script interpreter paths in /nix/store/5ifh8mck01lp4hzigmqkdq35m16l2msh-openssl-1.0.2o-x86_64-pc-mingw32-man
error: build of '/nix/store/9a0islhwak25r9kz8hby63sx0rcy47ma-test-hello-2.10-i686-pc-mingw32.drv', '/nix/store/asc1a11vyjjq68n61sp9d4qd2vgq8b7s-test-file-5.33-winlinks-i686-pc-mingw32.drv', '/nix/store/vp9p01dgd60w8bqrfrq558ml0pqi2m1i-gettext-0.19.8.1-x86_64-pc-mingw32.drv' failed

@GrahamcOfBorg
Copy link

Failure on aarch64-linux (full log)

Attempted: tests.cross.mingw32, pkgsCross.mingw32.openssl, pkgsCross.mingwW64.openssl, pkgsCross.mingw32.libxslt, pkgsCross.mingwW64.libxslt, pkgsCross.mingw32.ncurses, pkgsCross.mingwW64.ncurses, pkgsCross.mingw32.gettext, pkgsCross.mingwW64.gettext

The following builds were skipped because they don't evaluate on aarch64-linux: tests.cross.mingwW64

Partial log (click to expand)

make[4]: Leaving directory '/build/gettext-0.19.8.1/gettext-tools/gnulib-lib'
make[3]: *** [Makefile:2024: all-recursive] Error 1
make[3]: Leaving directory '/build/gettext-0.19.8.1/gettext-tools'
make[2]: *** [Makefile:1890: all] Error 2
make[2]: Leaving directory '/build/gettext-0.19.8.1/gettext-tools'
make[1]: *** [Makefile:413: all-recursive] Error 1
make[1]: Leaving directory '/build/gettext-0.19.8.1'
make: *** [Makefile:369: all] Error 2
builder for '/nix/store/vp9p01dgd60w8bqrfrq558ml0pqi2m1i-gettext-0.19.8.1-x86_64-pc-mingw32.drv' failed with exit code 2
error: build of '/nix/store/9a0islhwak25r9kz8hby63sx0rcy47ma-test-hello-2.10-i686-pc-mingw32.drv', '/nix/store/asc1a11vyjjq68n61sp9d4qd2vgq8b7s-test-file-5.33-winlinks-i686-pc-mingw32.drv', '/nix/store/vp9p01dgd60w8bqrfrq558ml0pqi2m1i-gettext-0.19.8.1-x86_64-pc-mingw32.drv' failed

@GrahamcOfBorg
Copy link

Failure on x86_64-linux (full log)

Attempted: tests.cross.mingw32, tests.cross.mingwW64, pkgsCross.mingw32.openssl, pkgsCross.mingwW64.openssl, pkgsCross.mingw32.libxslt, pkgsCross.mingwW64.libxslt, pkgsCross.mingw32.ncurses, pkgsCross.mingwW64.ncurses, pkgsCross.mingw32.gettext, pkgsCross.mingwW64.gettext

Partial log (click to expand)

/nix/store/40x82ffad1nsbgcmg30yf3qz9qppz94z-file-5.33/share/man/man1/file.1.gz:                           gzip compressed data, from Unix, original size 21613
/nix/store/95aj70d0xhsicmv0w9fmgkdqi1r37n08-dejavu-fonts-2.37/share/fonts/truetype/DejaVuMathTeXGyre.ttf: TrueType Font data, 15 tables, 1st "GPOS", 24 names, Macintosh
building '/nix/store/s5fr65qjwgfjs632i1md77n195jx26fd-test-file-5.33-winlinks-x86_64-pc-mingw32.drv'...
wine: created the configuration directory '/build/.wine'
wine: configuration in '/build/.wine' has been updated.
file-5.33-winlinks test passed
both produced output:
/nix/store/40x82ffad1nsbgcmg30yf3qz9qppz94z-file-5.33/share/man/man1/file.1.gz:                           gzip compressed data, from Unix, original size 21613
/nix/store/95aj70d0xhsicmv0w9fmgkdqi1r37n08-dejavu-fonts-2.37/share/fonts/truetype/DejaVuMathTeXGyre.ttf: TrueType Font data, 15 tables, 1st "GPOS", 24 names, Macintosh
error: build of '/nix/store/gn96jq5syf1ar8v4f76shh1zsndfj6ac-gettext-0.19.8.1-x86_64-pc-mingw32.drv' failed

@GrahamcOfBorg
Copy link

Failure on x86_64-darwin (full log)

Attempted: pkgsCross.mingw32.openssl, pkgsCross.mingwW64.openssl, pkgsCross.mingw32.libxslt, pkgsCross.mingwW64.libxslt, pkgsCross.mingw32.ncurses, pkgsCross.mingwW64.ncurses, pkgsCross.mingw32.gettext, pkgsCross.mingwW64.gettext

The following builds were skipped because they don't evaluate on x86_64-darwin: tests.cross.mingw32, tests.cross.mingwW64

Partial log (click to expand)

x86_64-pc-mingw32-strip is /nix/store/mm0p87ns3yg0wr0w2w7grpyi8ava0w8c-x86_64-pc-mingw32-binutils-2.30/bin/x86_64-pc-mingw32-strip
stripping (with command x86_64-pc-mingw32-strip and flags -S) in /nix/store/gqv44b2n7iifn4ayfgjav957jllm0bp4-openssl-1.0.2o-x86_64-pc-mingw32-dev/lib
patching script interpreter paths in /nix/store/gqv44b2n7iifn4ayfgjav957jllm0bp4-openssl-1.0.2o-x86_64-pc-mingw32-dev
x86_64-pc-mingw32-strip is /nix/store/mm0p87ns3yg0wr0w2w7grpyi8ava0w8c-x86_64-pc-mingw32-binutils-2.30/bin/x86_64-pc-mingw32-strip
stripping (with command x86_64-pc-mingw32-strip and flags -S) in /nix/store/j8pdl68ia841xf33rcjmq2az85764yns-openssl-1.0.2o-x86_64-pc-mingw32/lib
patching script interpreter paths in /nix/store/j8pdl68ia841xf33rcjmq2az85764yns-openssl-1.0.2o-x86_64-pc-mingw32
gzipping man pages under /nix/store/zy65gq8lx3izh2884jnii9sjniarqhda-openssl-1.0.2o-x86_64-pc-mingw32-man/share/man/
x86_64-pc-mingw32-strip is /nix/store/mm0p87ns3yg0wr0w2w7grpyi8ava0w8c-x86_64-pc-mingw32-binutils-2.30/bin/x86_64-pc-mingw32-strip
patching script interpreter paths in /nix/store/zy65gq8lx3izh2884jnii9sjniarqhda-openssl-1.0.2o-x86_64-pc-mingw32-man
�[31;1merror:�[0m build of '/nix/store/jc8q2lzwlb2w3z7av6zp9mqcjbq99jgh-gettext-0.19.8.1-x86_64-pc-mingw32.drv' failed

@GrahamcOfBorg
Copy link

Success on x86_64-darwin (full log)

Attempted: file, gettext, libxml2, libxslt, ncurses, openssl

Partial log (click to expand)

/nix/store/yip5dram8rhc17zpnqgq73dj2qcs6mgz-file-5.33
/nix/store/203vdwnigm91gpqd4smyhg2bhf4gxxq9-gettext-0.19.8.1
/nix/store/x035cdr5w8wzxs5q08cypyzvikih33in-libxml2-2.9.8-bin
/nix/store/dylxy2l1n0bbc4af7pnjbf376wjzc94i-libxslt-1.1.32-bin
/nix/store/ck8c7nb7qg17r26gdxya2gw0q16mai5f-ncurses-6.1
/nix/store/3i6j84m9zvgb97i5swray2ch5586zmy6-openssl-1.0.2o-bin

@GrahamcOfBorg
Copy link

Failure on x86_64-darwin (full log)

Attempted: pkgsCross.mingw32.openssl, pkgsCross.mingwW64.openssl, pkgsCross.mingw32.libxslt, pkgsCross.mingwW64.libxslt, pkgsCross.mingw32.ncurses, pkgsCross.mingwW64.ncurses, pkgsCross.mingw32.gettext, pkgsCross.mingwW64.gettext

The following builds were skipped because they don't evaluate on x86_64-darwin: tests.cross.mingw32, tests.cross.mingwW64

Partial log (click to expand)

make[4]: Leaving directory '/private/tmp/nix-build-gettext-0.19.8.1-x86_64-pc-mingw32.drv-0/gettext-0.19.8.1/gettext-tools/gnulib-lib'
make[3]: *** [Makefile:2024: all-recursive] Error 1
make[3]: Leaving directory '/private/tmp/nix-build-gettext-0.19.8.1-x86_64-pc-mingw32.drv-0/gettext-0.19.8.1/gettext-tools'
make[2]: *** [Makefile:1890: all] Error 2
make[2]: Leaving directory '/private/tmp/nix-build-gettext-0.19.8.1-x86_64-pc-mingw32.drv-0/gettext-0.19.8.1/gettext-tools'
make[1]: *** [Makefile:413: all-recursive] Error 1
make[1]: Leaving directory '/private/tmp/nix-build-gettext-0.19.8.1-x86_64-pc-mingw32.drv-0/gettext-0.19.8.1'
make: *** [Makefile:369: all] Error 2
builder for '/nix/store/jc8q2lzwlb2w3z7av6zp9mqcjbq99jgh-gettext-0.19.8.1-x86_64-pc-mingw32.drv' failed with exit code 2
�[31;1merror:�[0m build of '/nix/store/jc8q2lzwlb2w3z7av6zp9mqcjbq99jgh-gettext-0.19.8.1-x86_64-pc-mingw32.drv' failed

@matthewbauer
Copy link
Member Author

Dropped the gettext one, everything else seems to build!

Eventually this test should go in release-cross.nix.

@matthewbauer matthewbauer merged commit 916f096 into NixOS:master Jul 21, 2018
@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: file, libxml2, libxslt, ncurses, openssl

Partial log (click to expand)

/nix/store/ykj83f0k4qv7j92siv3fg58lmxlj34yn-file-5.33
/nix/store/9pvxq544f5jsg720gawbr4amlls4q04p-libxml2-2.9.8-bin
/nix/store/2wxf06pcnlzj3xp2nfkakbnkbnmc1ap6-libxslt-1.1.32-bin
/nix/store/f112h1icg77r31zn0ym2fmswsbdklb93-ncurses-6.1
/nix/store/a0w685vyychvsi91x4mh4f592hyazfyg-openssl-1.0.2o-bin

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: file, libxml2, libxslt, ncurses, openssl

Partial log (click to expand)

/nix/store/40x82ffad1nsbgcmg30yf3qz9qppz94z-file-5.33
/nix/store/bhmvdjrir06l4akbd540il8679zba7l9-libxml2-2.9.8-bin
/nix/store/rbgbax009b0wkjihfh58fi5ahmybqsxv-libxslt-1.1.32-bin
/nix/store/2ycq3hgnkczlb06hy79lmficf392qgfd-ncurses-6.1
/nix/store/nylyf9hmrl947zni8xv01smp2x39v0f5-openssl-1.0.2o-bin

@GrahamcOfBorg
Copy link

Success on x86_64-darwin (full log)

Attempted: file, libxml2, libxslt, ncurses, openssl

Partial log (click to expand)

/nix/store/yip5dram8rhc17zpnqgq73dj2qcs6mgz-file-5.33
/nix/store/x035cdr5w8wzxs5q08cypyzvikih33in-libxml2-2.9.8-bin
/nix/store/dylxy2l1n0bbc4af7pnjbf376wjzc94i-libxslt-1.1.32-bin
/nix/store/ck8c7nb7qg17r26gdxya2gw0q16mai5f-ncurses-6.1
/nix/store/3i6j84m9zvgb97i5swray2ch5586zmy6-openssl-1.0.2o-bin

@matthewbauer matthewbauer deleted the mingw-fixes branch February 22, 2019 04:27
@doronbehar
Copy link
Contributor

Hey @matthewbauer , hope you don't mind me resurrecting a (super) old PR. Do you manage to cross compile file to windows?

$ nix build -Lf. pkgsCross.mingw32.file
file-i686-w64-mingw32> /nix/store/3six896mnb1qxgc2k3aqaznnw0bqm3ip-i686-w64-mingw32-binutils-2.40/bin/i686-w64-mingw32-ld: .libs/funcs.o: in function `file_pipe_closexec':
file-i686-w64-mingw32> /build/file-5.44/src/funcs.c:884: undefined reference to `pipe'
file-i686-w64-mingw32> collect2: error: ld returned 1 exit status
file-i686-w64-mingw32> make[3]: *** [Makefile:500: libmagic.la] Error 1
file-i686-w64-mingw32> make[3]: Leaving directory '/build/file-5.44/src'
file-i686-w64-mingw32> make[2]: *** [Makefile:381: all] Error 2
file-i686-w64-mingw32> make[2]: Leaving directory '/build/file-5.44/src'
file-i686-w64-mingw32> make[1]: *** [Makefile:462: all-recursive] Error 1
file-i686-w64-mingw32> make[1]: Leaving directory '/build/file-5.44'
file-i686-w64-mingw32> make: *** [Makefile:371: all] Error 2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants