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

Add appveyor, Windows ci, support. #69

Closed
wants to merge 2 commits into from

Conversation

TheOneRing
Copy link
Contributor

@afbjorklund
Copy link
Contributor

Fix for unit test can be cherry-picked from b4d227a.
Alternatively (to Appveyor), one could maybe set up Travis cross-compiling with mingw32 ?

@afbjorklund
Copy link
Contributor

See also http://www.mail-archive.com/ccache@lists.samba.org/msg01273.html
Avoid the missing signal support and formats is easy enough, but the tests fail...

Added the code at 42fb31f (itensionanders/mingw) if you want to play with it ?

@White-Tiger
Copy link

Those changes in:
test/framework.c : jrosdahl@42fb31f#diff-2c3cfe373cd1b61a79e8a64b2abd09aeL183
test/test_conf.c

wouldn't be needed if MinGW is allowed to use GCC's printf functions instead of MSVC.
-D__USE_MINGW_ANSI_STDIO=1
(which would be default for c99, c++11 etc.)

@TheOneRing
Copy link
Contributor Author

The appveyor build can also provide binaries. https://ci.appveyor.com/project/TheOneRing/ccache/build/20/job/dh2ty4468xgtb8ay/artifacts

@White-Tiger
Copy link

Well... Travis CI can also provide binaries.. though they'll usually upload as Github releases or to some other server.

@afbjorklund
Copy link
Contributor

I'm thinking that AppVeyor might be the best option after all, since that saves having to install "wine".
The build part (probably) works fine, as seen in 38033d8. But the "make test" part would be trouble...

Anyway, the main thing is actually making it work on Windows again ? There's some dust and bit rot.

@afbjorklund
Copy link
Contributor

@White-Tiger : sure, but probably overkill for those uses... Better to have it work out-of-the-box ?
That %zu can probably be avoided on all platforms, we don't have that many configs do we ?

@afbjorklund
Copy link
Contributor

I don't think you need to create binaries, not from the CI tests at least.
Pushed fixed unit tests to: itensionanders/ccache@mingw (477caff)

@TheOneRing
Copy link
Contributor Author

@afbjorklund
Copy link
Contributor

Build and test fixed in d2c6751 (from #73)

@TheOneRing
Copy link
Contributor Author

It now compiles :)
I guess its now only about tests and the install target.

@afbjorklund
Copy link
Contributor

@TheOneRing: there seems to be a couple of failing tests still ?
FAILED: 4 tests C:/projects/ccache/test/test_argument_processing.c:166: Failed assertion: C:/projects/ccache/test/test_argument_processing.c:354: Failed assertion: C:/projects/ccache/test/test_conf.c:341: Failed assertion: C:/projects/ccache/test/test_conf.c:353: Failed assertion:
Perhaps only for the 32-bit target though, as the 64-bit looks OK ?

And the usage of "git" and "asciidoc" seems to be silently failing:
bash.exe : configure: WARNING: unable to determine ccache version
bash.exe : make: *** No rule to make target '/c/projects/ccache/ccache.1', needed by 'install'. Stop.
Maybe it should do so with slightly more grace. Or avoid man perhaps.

@jrosdahl
Copy link
Member

What's the status of this pull request?

@afbjorklund
Copy link
Contributor

I was a bit skeptic about the need to do "make install" and publish artifacts, but it would be nice to actually run the Windows test binaries after producing them... As in compiling was doable with Travis, but running was much harder (with WINE) than doing it in Appveyor ? (Starting bash, the other way around...) Either way, we did get some basic Win32 functionality going again. Would be nice to keep it that way ?

@jrosdahl
Copy link
Member

Closing this as superseded by #247.

@jrosdahl jrosdahl closed this Jul 28, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New or improved feature os: windows Related to building or running on Windows
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants