Change automatic build to use MinGW-w64 instead of the old mingw

Issue #1125 resolved
Lukas Meindl
created an issue

As discussed in internal e-mail conversation

Comments (45)

  1. Yaron Cohen-Tal

    How long will it take until we get mingw-w64 running in automatic build?

    What do u mean? Some1 has to arrange it, perhaps I will sometime, though I have no experience with configuring automatic builds.

  2. Yaron Cohen-Tal

    W8, we have also a linux automatic build, don't we?

    Build errors/warnings which r specific to mingw (i.e. don't appear on MSVC or linux) r very rare, and I fixed all of them when I added official support for MinGW-w64.

    Btw, if u wanna build MinGW-w64 on your computer it should b simple; if u wish I can help u set it up quickly.

  3. Yaron Cohen-Tal

    Ok, this may sound like a very stupid question, but I'm trying to understand which ubuntu version drone io runs, and not only am I not able to find that, I even can't find where they state which distribution they use (u say it's ubuntu?). I've looked at most of their doc and they just seem to believe it's obvious..

  4. Lukas Meindl reporter

    I had the same issue :) I have no clue but I think it is an old one because I saw some issues that only old ubuntu versions were reported to have. Can you output the version via command line? if so you can just add that tot he build commands, trigger a build via web and see the result. Not optimal but if it is not in the docs then not much we can go

  5. Yaron Cohen-Tal

    It's amazing. I've checked all the main services. Some support only github, some only git. Haven't found a single 1 that supports mercurial. A shame. And drone-io uses prolly Ubuntu LTS 12.04, which, in the linux world, is analogous to using windows xp. It's prolly impossible to even use mingw with gcc 4.8 there. screw them. I'm trying to fix appveyor.

  6. Lukas Meindl reporter

    That's a real shame. Why is mercurial so disregarded? I really like it more than GIT but am fine with GIT since tortoisegit is better but moving to github barely seems worth it for us. Appveyor is fine and I would like to stick with it but we really need something for Linux. Otherwise I won't know if I break the build ;)

  7. Lukas Meindl reporter

    The maker of drone io wrote that in a comparison with travis CI :) Would be cool if it is true because then appveyor and drone io will fulfil our needs completely + they are set up ;)

  8. Yaron Cohen-Tal

    It required changing 2 lines in the build script, one of which was prolly unnecessary.. Turns out Windows has an "apt-get"-like package manager called "chocolatey" (installed in the appveyor machine), that can install many windows "packages" from the command line in a sinlge command. So I just had to install the "mingw" package (which is MinGW-w64 with GCC 5.3)..

  9. Yaron Cohen-Tal

    I have indeed followed those steps.

    I've got the feeling the "drone" and "drone.io" r 2 different things. "drone" supports ".drone.yml". "drone.io" is a "drone" server which doesn't seem to support it.

    It even repeats here: http://readme.drone.io/usage/overview/ that the yml file has to be in the root to configure the thing. How the hell does it make sense that it would not work?

    Even though the address is on "drone.io", that doc seems to b of "drone", not "drone.io", and is indeed linked from "drone". The fact is our repository currently doesn't contain a ".drone.yml", and it works. It just uses the default image with the build steps entered at the repository configuration page, ignoring a ".drone.yml" if it exists.

  10. Yaron Cohen-Tal

    I don't c how it can b urgent coz it currently works, even if on an old distribution with an old compiler.

    I'll try to ask for help from the "drone.io" site and by emailing the core "drone" maintainer.

  11. Yaron Cohen-Tal

    I thought we get a newer compiler by using docker? Wasnt that the point?

    Yes, but to choose the docker image with Drone I need a ".drone.yml" file, which "drone.io" ignores.

    Using a newer compiler is desirable, but not urgent, coz it currently works.

  12. timotei

    Ah, they suck. I'm looking for an alternative.

    Sadly, I reached the same conclusion when I set up CI for CEGUI 1/2 years ago. I think we deserve this given that we use bitbucket and mercurial :D

    .... And drone-io uses prolly Ubuntu LTS 12.04, which, in the linux world, is analogous to using windows xp. It's prolly impossible to even use mingw with gcc 4.8 there. screw them. I'm trying to fix appveyor.

    Yeah, I used uname -a to get the info on that, but they had it on the docs at one point. We can upgrade some things even more by using some 3rd party/other user's PPA's.

    It doesn't treat warnings as errors yet though, I'll fix

    Are we that good yet :D ? I think we still have quite some warnings on different compilers.

    About the drone docker thingy: it's actually a docker image to run a personal drone.io server, so it doesn't really help us.

    I don't see what issues we have with the current drone.io configuration btw. We use gcc and that's enough, no?

    Also, we'd better split this Issue if we want to work on both, right now it's a mix of Linux & Windows. As I see it most of the remaining (if any?) work is required only on AppVeyor/Windows (which I already started a long time ago and currently still working on it - via the cegui sdk builder, and my plan to get the NuGet builds (see https://bitbucket.org/cegui/cegui/issues/1100/nuget-support)).

    In the long run, if AppVeyor won't be enough, I'll setup a proper Jenkins environment, but I was blocked with some required info related to OpenShift's platform from @Martin Preisler That's why I didn't set up an appveyor.yml file, because it's too much trouble until we get the final workflow set finalised.

    Hope my feedback manages to answer some of the questions

  13. Yaron Cohen-Tal

    @timotei:

    Are we that good yet :D ? I think we still have quite some warnings on different compilers.

    Not on GCC (linux or Windows), I've taken care of that 😄. Can u plz update the appveyor mingw build to use -DCEGUI_WARNINGS_AS_ERRORS=TRUE?

  14. Yaron Cohen-Tal

    @timotei:

    We can upgrade some things even more by using some 3rd party/other user's PPA's.

    That's indeed possible

    About the drone docker thingy: it's actually a docker image to run a personal drone.io server, so it doesn't really help us.

    Not only, it can also b used to run the build, I've verified that on my own locally set drone server.

  15. timotei

    @Yaron Cohen-Tal I'm working to fix the permission issues on AppVeyor, as they were incorrectly set, that's why the team doesn't have access to it anymore. Will send an email as soon as I fix it.

    Also, right now there is no support for extra args in the build (as you mentioned with CEGUI_WARNINGS_AS_ERRORS, unless the cegui-sdkbuilder is tweak for that ) -> You have permissions on that repo, feel free to do it, if I don't manage myself. Or create an issue in that project so we deal with it.

    About the drone docker thingy: it's actually a docker image to run a personal drone.io server, so it doesn't really help us.

    Not only, it can also b used to run the build, I've verified that on my own locally set drone server.

    Yeah. What I meant is that it's not useful to have it run ourselves, just for the sake of the .yml file (at least for Linux). We'd need some actual resources to run the docker container.

    @Lukas Meindl I think we could, but not sure if the effort is really worth it.

  16. Lukas Meindl reporter

    Lukas Meindl I think we could, but not sure if the effort is really worth it.

    Then let's not do it, we have other things to focus on, such as 1.0 release.

  17. Log in to comment