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

The Cygwin/CI is broken. #2003

Merged
merged 15 commits into from
Nov 26, 2021
Merged

The Cygwin/CI is broken. #2003

merged 15 commits into from
Nov 26, 2021

Conversation

clanmills
Copy link
Collaborator

@clanmills clanmills commented Nov 25, 2021

Try using cmake to build instead of make.

@codecov
Copy link

codecov bot commented Nov 25, 2021

Codecov Report

Merging #2003 (d6e0740) into 0.27-maintenance (8b0794b) will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@                Coverage Diff                @@
##           0.27-maintenance    #2003   +/-   ##
=================================================
  Coverage             46.36%   46.36%           
=================================================
  Files                   146      146           
  Lines                 23005    23005           
  Branches              11809    11809           
=================================================
  Hits                  10666    10666           
  Misses                 6689     6689           
  Partials               5650     5650           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 8b0794b...d6e0740. Read the comment docs.

@clanmills clanmills changed the title The Cygwin/CI is broken. Try using cmake to build instead of make. The Cygwin/CI is broken. Nov 25, 2021
@clanmills
Copy link
Collaborator Author

I think c:\Cyginw64\bin\bash is missing. The miserable thing does this:

echo %CMD%
rm -rf build; mkdir -p build; cd build;cmake .. -G 'Unix Makefiles' -DCMAKE_CXX_STANDARD=98 -DCMAKE_CXX_FLAGS=-Wno-deprecated; cmake --build . --config Release; cmake --build . --target python_tests --config Release
cd %APPVEYOR_BUILD_FOLDER%
if "%BUILD%"=="CYGWIN64" C:\cygwin64\bin\bash -c "%CMD%"
Command exited with code 127

It's Thanksgiving today. Tomorrow I'll install a fresh Cygwin64 on Windows. Maybe bash.exe has moved.

https://clanmills.com/states/Thanksgiving/

@clanmills
Copy link
Collaborator Author

And now we know. CMake isn't installed. Right. I'll fix that.

@clanmills clanmills marked this pull request as draft November 25, 2021 17:57
@clanmills clanmills self-assigned this Nov 25, 2021
@clanmills
Copy link
Collaborator Author

Another way to ensure you have a working CMake on Cygwin is to build it locally and publish a zip of the the build. Pull down the zip (86mb) with curl and run make install. cmake.exe will be in /usr/local/bin. This will take 30 seconds. Building from source takes about 90 minutes.

@clanmills clanmills marked this pull request as ready for review November 26, 2021 13:52
@clanmills clanmills marked this pull request as draft November 26, 2021 14:03
Copy link
Collaborator

@kmilos kmilos left a comment

Choose a reason for hiding this comment

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

I wonder if we're missing updating the repository info (for both MinGW and Cygwin) before installing packages in order to get the latest packages, or you want to use what Appveyor froze in time on purpose?

Also, for MinGW: might reduce network traffic and speed up the build a bit if installation is done in one pacman -S line instead of the for loop?

appveyor_mingw_cygwin.yml Show resolved Hide resolved
appveyor_mingw_cygwin.yml Show resolved Hide resolved
appveyor_mingw_cygwin.yml Show resolved Hide resolved
@clanmills clanmills marked this pull request as ready for review November 26, 2021 14:19
@clanmills
Copy link
Collaborator Author

Zee lights ease green. Let's merge and close.

Copy link
Collaborator

@kmilos kmilos left a comment

Choose a reason for hiding this comment

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

Will make my suggestions in a new PR then...

@kmilos kmilos merged commit 7b77e71 into 0.27-maintenance Nov 26, 2021
@mergify mergify bot deleted the fix_cygwin_ci branch November 26, 2021 14:44
@kevinbackhouse kevinbackhouse added this to the v0.27.6 milestone Nov 23, 2022
@kmilos kmilos added CI Issues related with CI jobs platforms Cygwin, MinGW, cross-compilation, NetBSD, FreeBSD etc labels Nov 23, 2022
antermin pushed a commit to antermin/exiv2 that referenced this pull request Mar 16, 2023
* The Cygwin/CI is broken.  Try using cmake to build instead of make.

* Where's bash.exe?

* Bash is in c:\cygwin64\bin\bash.exe.  Modify CMD to report something meaningful.

* Run, rabbit, run.  (you've already seen what happened to the turkey!).

* Hunt for cmake.exe.  It was installed with `apt-cyg install cmake ...`

* cmake is in c:\Cygwin64\bin\cmake.exe which is /usr/bin/cmake.exe

* Request cmake v3.17.3 (which is what I use on the buildserver).

* Try 3.17.3.-2

* Query available versions of cmake.

* Build cmake from source.

* Can't build from source.  It simply stopped after 56 minutes.

* Try again!

* Yes another attempt to install a working cmake.

* I believe this now works.

* Some comment polishing.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI Issues related with CI jobs platforms Cygwin, MinGW, cross-compilation, NetBSD, FreeBSD etc
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants