Git-Jiro / homebrew-jiro

This repository contains homebrew formulae authored by me
26 stars 11 forks source link

Update Build To 5.2.0.0 #87

Closed RoboticMind closed 3 years ago

RoboticMind commented 3 years ago

Updates the URL and SHA-256 of the tar file for the new mandatory

RoboticMind commented 3 years ago

@Git-Jiro whenever you see this, can you either merge this or do whatever else may be needed to release the DMG for 5.2.0, the new mandatory

RoboticMind commented 3 years ago

Hmm @Git-Jiro it looks like the build timed out and travis cut it off before it was able to finish. You may need to manually build for MacOS 1.13, but I think you can trigger the GitHub actions script to get it to work for BigSur

Git-Jiro commented 3 years ago

Yes, I think the travis builds to support older macOS versions seem to come to an end, because they are not completing in 50 minutes anymore. Thanks for the reminder of the GitHub actions. I completely forgot about those since the last mandatory update.

RoboticMind commented 3 years ago

@Git-Jiro I think you may need to remove 5.2.0 as a release and then retrigger the build or alternatively modify the script. The actions script tried to create a new release and then failed because it already exists. The rest of the build seems to have worked fine

Error: Validation Failed: {"resource":"Release","code":"already_exists","field":"tag_name"}

RoboticMind commented 3 years ago

@Git-Jiro I copied the repo and after a little bit of trial and error was able to run the GitHub actions script and get it to build

If you want to use that binary and put it here, take a look at https://github.com/RoboticMind/homebrew-forkofjiro/releases/tag/refs%2Fheads%2Fmaster or here https://github.com/RoboticMind/homebrew-forkofjiro/releases/tag/refs%2Fheads%2Fmacos-1.14-build where I downgraded it to 1.14

Git-Jiro commented 3 years ago

Hi @RoboticMind, the build works fine. What still does not work is automatically creating the release. I kind of have a stupid "race condition" because: I specified the action should only run on tagged commits. And then the "publish release" function complains that the tag already exists! :-)

RoboticMind commented 3 years ago

@Git-Jiro in the fork I made, I was able to get it to build and make a release by only using the manual trigger (workflow_dispatch) of the GitHub actions without any tags instead of using the tags trigger. I think that could also be done here as well if the v5.2.0 tag was removed and then a build was triggered manually

RoboticMind commented 3 years ago

Wait what, now the builds are failing from a linking error? That's bizarre. Googling the error leads me to things about clearing caches, but I don't see any caches from previous builds in the GitHub action script...

echo '{ CFBundleDisplayName = "Gridcoin"; CFBundleName = "Gridcoin"; }' > gridcoinresearch.app/Contents/Resources/Base.lproj/InfoPlist.strings
  OBJCXXLD qt/gridcoinresearch
ld: entry point (_main) undefined. for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [qt/gridcoinresearch] Error 1
make: *** [src/qt/gridcoinresearch] Error 2
Git-Jiro commented 3 years ago

I got the error on my local machine now as well .. I kinda know why it does not work: Because make / automake for some reason decides that it does not need to link to qt/bitcoin.cpp anymore. And this is the location where "main()" is.

Git-Jiro commented 3 years ago

I was able to hack around in the Makefile and now I would get: make qt/gridcoinresearch CXX qt/gridcoinresearch-bitcoin.o qt/bitcoin.cpp:6:10: fatal error: 'QApplication' file not found

include

     ^~~~~~~~~~~~~~

1 error generated. make: *** [qt/gridcoinresearch-bitcoin.o] Error 1

which is not that much better ...

Git-Jiro commented 3 years ago

My theory is that some Homebrew dependency changed in the last 48 hours. Because the contents of the Gridcoin source code tgz file hopefully have not changed in this timeframe.

Git-Jiro commented 3 years ago

My guess is either on a version bump in "autoconf", "automake" or "qt"

Git-Jiro commented 3 years ago

Autoconf is stable since 25 days: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/automake.rb Automake as well: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/autoconf.rb But QT changed a few hours ago: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/qt.rb Coincidence?

Git-Jiro commented 3 years ago

And the QT update was from 5.15.2 to 6.0.1. So it was a major version upgrade. I am going to try to change the dependency from "qt" to "qt@5" and let's see what happens ...

RoboticMind commented 3 years ago

Looks like it worked now :tada: