Conversation
This could probably also be handled by adding So makensis is just an executable, not a C++ library of any kind? |
Also note that this needs to be scoped to |
Note: commit messages and pull requests should usually start with |
Updated pull request name:
|
For 2), just add this to the top of the install method ENV.libstdcxx if ENV.compiler == :clang And leave the rest alone. |
brew-bot is still reporting a build failure here. |
I have no further insight, just followed the request to add ENV.libstdcxx if ENV.compiler == :clang Do you think this change requires OSX 10.9? What does brew-bot use |
Ping @mistydemeo |
The build logs look kinda weird:
|
The failed build link seems broken (404). Surely it's old enough to be kept at the server. How can I get it? This correctly builded in my machine:
|
|
Doesn't the stuff on line 17 also need to be conditional? |
My understanding is that the options on line 17 are fine, and do not need to be conditional. These options explicitly provide what used to be default options. Providing these options (even on earlier versions of OSX) makes it really clear what this build requires. You re welcome to make them conditional, I do not know enough about home-brew to do this, and I do not have access to an earlier copy of OSX to test. |
Can you rebase your changes on master and re-push? I made a change to force finding Homebrew's versions of scons. The previous build failure is too old and the build bot deleted it. |
The problem with the brew output being cut off should also be fixed now, fwiw. |
I am not sure how to rebase, short of checking out everything in git and attacking it like a normal project. All the edits I have provided up until now have been performed using the github "edit" button. Okay tried that, seems that we are down to a single commit. |
See issue Homebrew#23913 Update makensis.rb Updated based on pull request feedback
@@ -13,7 +13,8 @@ class Makensis < Formula | |||
end | |||
|
|||
def install | |||
system "scons makensis" | |||
ENV.libstdcxx if ENV.compiler == :clang | |||
system "scons makensis APPEND_CCFLAGS=--stdlib=libstdc++ APPEND_LINKFLAGS=--stdlib=libstdc++" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This will fail if the compiler isn't clang - GCC doesn't recognize -stdlib
. ENV.libstdcxx
will take care of this, anyway (it passes -stdlib
via CXX
, so it makes it through scons).
Ah, I see the problem... makensis isn't respecting our compiler choice, and I can't find a way to force it to. Unlike mongodb, there's no |
Pushed an alternate fix. |
makensis only builds with libstdc++. This isn't a huge deal in itself as it's just a binary, not a library, and has no deps in Homebrew. More of a problem is the fact that it provides zero mechanism to govern compiler choice, forcing us to patch the SCons/config.py in order to make sure the right compiler gets used. Fixes Homebrew#23913. Closes Homebrew#24545.
Compiler and linker flags for OSX 10.9 see issue #23913