ponyc icon indicating copy to clipboard operation
ponyc copied to clipboard

FreeBSD - Fix build by using recent googletest/benchmark

Open mneumann opened this issue 3 years ago • 11 comments

  • The build failed due to -Werror turning a -Wunused-but-set-variable warning into an error.

  • The newer version of googletest / benchmark don't exhibit this problem. Actually, only one of these libraries had an issue on FreeBSD (in the pinned version), though updating both to the most recent versions should not cause harm.

  • This also removes special casing any of these libraries on FreeBSD.

mneumann avatar Sep 10 '22 17:09 mneumann

It's funny how this broke the FreeBSD CI build. Probably because gmake libs was cached before and wasn't triggered that often (it takes years to build). I am not quite sure what the issue here is. Is it a 3m timeout?

mneumann avatar Sep 10 '22 17:09 mneumann

FreeBSD build issues from the logs:

image

image

image

SeanTAllen avatar Sep 10 '22 17:09 SeanTAllen

full log attached:

libs.log.txt

SeanTAllen avatar Sep 10 '22 17:09 SeanTAllen

Interesting. Why does it compile on my FreeBSD 13.1-RELEASE system...

mneumann avatar Sep 10 '22 17:09 mneumann

The current supported FreeBSD is 13.0.

If 13.1 is out as a release then I can start the process to update.

SeanTAllen avatar Sep 10 '22 17:09 SeanTAllen

The cirrus FreeBSD box is 13.0 and uses clang 11, mine is 13.1 and uses clang 13 by default.

/usr/include/c++/v1/memory:4284:59: error: too many arguments provided to function-like macro invocation
    static_assert(is_constructible<_Tp, _Args...>::value, "Can't construct object in make_shared");
                                                          ^
/usr/include/sys/cdefs.h:288:9: note: macro '_Static_assert' defined here
#define _Static_assert(x, y)    __Static_assert(x, __COUNTER__)
        ^

This looks to be that it could be an issue with clang 11 that would just work with clang 13.

mneumann avatar Sep 10 '22 17:09 mneumann

FreeBSD 13.1 is out since May 16th :)

https://www.freebsd.org/releases/13.1R/announce/

mneumann avatar Sep 10 '22 17:09 mneumann

@mneumann I don't follow FreeBSD very closely so I was unware. In the future, if you let us know via a new issue or on Zulip when new FreeBSD releases come out, we'll end up updating more quickly. I'll drop you a note on this PR when we've updated to 13.1; if there are no issues, that will be later today.

SeanTAllen avatar Sep 10 '22 17:09 SeanTAllen

@SeanTAllen I wasn't accusing you :). thanks for updating!

mneumann avatar Sep 10 '22 17:09 mneumann

It looks like this is going to be incorporated into the upgrade PRs, I'm doing a couple smaller upgrade PRs first so that upgrading googletest and googlebench will get their own commits in the history. I'll probably end up closing this. Thanks for your work @mneumann.

I'll let you know if this all goes in or if there's some additional work that you can PR.

SeanTAllen avatar Sep 10 '22 18:09 SeanTAllen

This might take some time as we appear to have Windows build conflict with the changes.

SeanTAllen avatar Sep 10 '22 18:09 SeanTAllen

Closing this in favor of another PR that updates to FreeBSD 13.1

SeanTAllen avatar Oct 18 '22 18:10 SeanTAllen