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

salt 2019.2.2 #45895

Closed
wants to merge 1 commit into from
Closed

salt 2019.2.2 #45895

wants to merge 1 commit into from

Conversation

bayandin
Copy link
Member

Created with brew bump-formula-pr.


saltstack/salt#55084 (comment)

@chenrui333
Copy link
Member

test step failed on Catalina build.

16:51:33 Error: salt: failed
16:51:33 An exception occurred within a child process:
16:51:33 Test::Unit::AssertionFailedError: <0> expected but was
16:51:33 .

@chenrui333 chenrui333 added the test failure CI fails while running the test-do block label Oct 29, 2019
@bayandin bayandin mentioned this pull request Nov 21, 2019
10 tasks
@bayandin
Copy link
Member Author

I have added a workaround for broken /usr/lib/libcrypto.dylib (origin #45337 (comment)):

+    # Workaround for https://github.com/saltstack/salt/issues/55084
+    # Remove when fixed
+    inreplace "salt/utils/rsax931.py",
+              "lib = find_library('crypto')",
+              "lib = '#{Formula["openssl@1.1"].opt_lib}/libcrypto.dylib'"

What do you think guys @Bo98, @fxcoudert?

@fxcoudert
Copy link
Member

fxcoudert commented Nov 21, 2019

I'd prefer if they could fix the issue in their own way, rather than us forcing a hard path. I've commented on the upstream issue.

@fxcoudert
Copy link
Member

On the other hand, if this is blocking Python 3.8.0, then let's get it fixed, indeed

@Bo98
Copy link
Member

Bo98 commented Nov 21, 2019

It's a shortcoming of ctypes.find_library, which won't work with keg only libraries. You can see for yourself by running python and doing:

import ctypes
ctypes.find_library('crypto')

The problem is all this is at runtime and not build time, so there's no flags or anything we can use to control it, unless upstream completely rewrites it to detect and insert the paths at build time.

@Bo98
Copy link
Member

Bo98 commented Nov 21, 2019

Oh wait, just saw you commented the same upstream. Sorry for repeating!

@Bo98
Copy link
Member

Bo98 commented Nov 21, 2019

High Sierra:

building 'M2Crypto._m2crypto' extension
swigging SWIG/_m2crypto.i to SWIG/_m2crypto_wrap.c
swig -python -py3 -I/usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m -I/usr/include/openssl -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -I/usr/local/opt/sqlite/include -I/usr/include -I/usr/local/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/libxml2 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/10.0.0/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks (framework directory) -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -I/usr/local/opt/sqlite/include -I/usr/include -I/usr/local/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/libxml2 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/10.0.0/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks (framework directory) -includeall -modern -builtin -outdir /private/tmp/pip-req-build-on6pizt8/M2Crypto -o SWIG/_m2crypto_wrap.c SWIG/_m2crypto.i
Deprecated command line option: -modern. This option is now always on.
/usr/include/sys/cdefs.h:81: Warning 204: CPP #warning, ""Unsupported compiler detected"".
/usr/include/sys/cdefs.h:763: Error: CPP #error "Unsupported architecture". Use the -cpperraswarn option to continue swig processing.
/usr/include/machine/_types.h:34: Error: CPP #error "architecture not supported". Use the -cpperraswarn option to continue swig processing.
/usr/include/machine/types.h:37: Error: CPP #error "architecture not supported". Use the -cpperraswarn option to continue swig processing.
error: command 'swig' failed with exit status 1
Running setup.py install for M2Crypto: finished with status 'error'

Will updating M2Cyrpto help, or is that problematic?

@bayandin
Copy link
Member Author

   building 'M2Crypto._m2crypto' extension
    swigging SWIG/_m2crypto.i to SWIG/_m2crypto_wrap.c
    swig -python -py3 -I/usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m -I/usr/include/openssl -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -I/usr/local/opt/sqlite/include -I/usr/include -I/usr/local/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/libxml2 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/10.0.0/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks (framework directory) -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -I/usr/local/opt/sqlite/include -I/usr/include -I/usr/local/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/libxml2 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/10.0.0/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks (framework directory) -includeall -modern -builtin -outdir /private/tmp/pip-req-build-on6pizt8/M2Crypto -o SWIG/_m2crypto_wrap.c SWIG/_m2crypto.i
    Deprecated command line option: -modern. This option is now always on.
    /usr/include/sys/cdefs.h:81: Warning 204: CPP #warning, ""Unsupported compiler detected"".
    /usr/include/sys/cdefs.h:763: Error: CPP #error "Unsupported architecture". Use the -cpperraswarn option to continue swig processing.
    /usr/include/machine/_types.h:34: Error: CPP #error "architecture not supported". Use the -cpperraswarn option to continue swig processing.
    /usr/include/machine/types.h:37: Error: CPP #error "architecture not supported". Use the -cpperraswarn option to continue swig processing.
    error: command 'swig' failed with exit status 1
    Running setup.py install for M2Crypto: finished with status 'error'

Will updating M2Cyrpto help, or is that problematic?

Have tried it already with no lack.
Installing from the source (brew install -s salt) fails even for the current version (2019.2.1) on High Sierra.

@Bo98
Copy link
Member

Bo98 commented Nov 21, 2019

Hmm that's concerning. We seemed to manage to build a bottle a month ago.

I don't have a High Sierra machine to narrow it down much.

@Bo98
Copy link
Member

Bo98 commented Nov 21, 2019

Does a passing the verbose flag -v into swig (via SWIG_FEATURES?) reveal much?

@bayandin
Copy link
Member Author

Does a passing the verbose flag -v into swig (via SWIG_FEATURES?) reveal much?

Doesn't seem so: salt.log

Looks like only python formula changed since the last successful build (3.7.4 -> 3.7.5). Will try to find it out later.

@bayandin
Copy link
Member Author

@Bo98 curiouser and curiouser, it works with reverted Homebrew/brew#6749

@Bo98
Copy link
Member

Bo98 commented Nov 21, 2019

Not sure what on earth swig is doing.

Can you try modify it so that it is -isysroot #{sysroot} rather than -isysroot#{sysroot}?

@bayandin
Copy link
Member Author

bayandin commented Nov 22, 2019

Can you try modify it so that it is -isysroot #{sysroot} rather than -isysroot#{sysroot}?

Nope, this didn't help

@Bo98
Copy link
Member

Bo98 commented Nov 22, 2019

Didn't think it would (given it works absolutely fine on Mojave and Catalina) - but I just waited to make sure.

I suppose the Homebrew bug before was masking something going badly wrong here - and we now see it. Do you have a .cc log that might reveal what swig is doing under the hood in its interactions with the superenv shims?

@bayandin
Copy link
Member Author

I suppose the Homebrew bug before was masking something going badly wrong here - and we now see it. Do you have a .cc log that might reveal what swig is doing under the hood in its interactions with the superenv shims?

Yep, I have exactly the same thoughts.

Here it is, for the latest brew:

cpp called with: -Wp,-v -
superenv added:    -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk --sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -isystem/usr/local/include -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/libxml2 -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -I/usr/local/opt/sqlite/include
superenv executed: cpp -Wp,-v - -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk --sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -isystem/usr/local/include -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/libxml2 -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -I/usr/local/opt/sqlite/include

cpp called with: -Wp,-v -
superenv added:    -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk --sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -isystem/usr/local/include -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/libxml2 -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -I/usr/local/opt/sqlite/include
superenv executed: cpp -Wp,-v - -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk --sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -isystem/usr/local/include -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/libxml2 -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -I/usr/local/opt/sqlite/include

And for the brew with reverted Homebrew/brew#6749:

cpp called with: -Wp,-v -
superenv added:    -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk --sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -isystem/usr/local/include -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/libxml2 -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -I/usr/local/opt/sqlite/include
superenv executed: cpp -Wp,-v - -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk --sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -isystem/usr/local/include -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/libxml2 -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -I/usr/local/opt/sqlite/include

cpp called with: -Wp,-v -
superenv added:    -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk --sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -isystem/usr/local/include -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/libxml2 -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -I/usr/local/opt/sqlite/include
superenv executed: cpp -Wp,-v - -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk --sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -isystem/usr/local/include -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/libxml2 -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -I/usr/local/opt/sqlite/include

clang called with: -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers -I/usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m -I/private/tmp/pip-req-build-2ym_kxt9/SWIG -c SWIG/_m2crypto_wrap.c -o build/temp.macosx-10.13-x86_64-3.7/SWIG/_m2crypto_wrap.o -Wno-deprecated-declarations -DTHREADING
superenv removed:  -Wsign-compare -Wunreachable-code -g -O3 -Wall
superenv added:    -pipe -w -Os -march=core2 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk --sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -isystem/usr/local/include -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/libxml2 -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -I/usr/local/opt/sqlite/include
superenv executed: clang -pipe -w -Os -march=core2 -Wno-unused-result -fno-common -dynamic -DNDEBUG -fwrapv -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers -I/usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m -I/private/tmp/pip-req-build-2ym_kxt9/SWIG -c SWIG/_m2crypto_wrap.c -o build/temp.macosx-10.13-x86_64-3.7/SWIG/_m2crypto_wrap.o -Wno-deprecated-declarations -DTHREADING -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk --sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -isystem/usr/local/include -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/libxml2 -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -I/usr/local/opt/sqlite/include

clang called with: -bundle -undefined dynamic_lookup build/temp.macosx-10.13-x86_64-3.7/SWIG/_m2crypto_wrap.o -lssl -lcrypto -o build/lib.macosx-10.13-x86_64-3.7/M2Crypto/_m2crypto.cpython-37m-darwin.so
superenv added:    -pipe -w -Os -march=core2 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk --sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -isystem/usr/local/include -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/libxml2 -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -I/usr/local/opt/sqlite/include -L/usr/local/opt/openssl@1.1/lib -L/usr/local/opt/readline/lib -L/usr/local/opt/sqlite/lib -L/usr/local/lib -L/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Libraries -Wl,-headerpad_max_install_names
superenv executed: clang -pipe -w -Os -march=core2 -bundle -undefined dynamic_lookup build/temp.macosx-10.13-x86_64-3.7/SWIG/_m2crypto_wrap.o -lssl -lcrypto -o build/lib.macosx-10.13-x86_64-3.7/M2Crypto/_m2crypto.cpython-37m-darwin.so -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk --sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -isystem/usr/local/include -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/libxml2 -isystem/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -I/usr/local/opt/sqlite/include -L/usr/local/opt/openssl@1.1/lib -L/usr/local/opt/readline/lib -L/usr/local/opt/sqlite/lib -L/usr/local/lib -L/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Libraries -Wl,-headerpad_max_install_names

@Bo98
Copy link
Member

Bo98 commented Nov 22, 2019

The difference here will be that cpp is now functional whereas it probably wasn't before.

Can you tell me the output of cpp -Wp,-v under the brew environment (brew sh) with and without the bug fixed? Maybe also throw in what it looks like outside the brew environment as well.

@bayandin
Copy link
Member Author

Latest:

brew /usr/local/Homebrew$ cpp -Wp,-v
clang -cc1 version 10.0.0 (clang-1000.10.44.4) default target x86_64-apple-darwin17.7.0
ignoring nonexistent directory "/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/local/include"
ignoring nonexistent directory "/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/Library/Frameworks"
#include "..." search starts here:
#include <...> search starts here:
 /usr/include
 /usr/local/include
 /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/libxml2
 /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers
 /Library/Developer/CommandLineTools/usr/lib/clang/10.0.0/include
 /Library/Developer/CommandLineTools/usr/include
 /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include
 /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks (framework directory)
End of search list.

Without Homebrew/brew#6749:

brew /usr/local/Homebrew$ cpp -Wp,-v
clang: error: no input files

@Bo98
Copy link
Member

Bo98 commented Nov 22, 2019

I'm surprised swig even worked before. What it like outside brew sh - just so I know what the default behaviour is without superenv.

@bayandin
Copy link
Member Author

bayandin$ cpp -Wp,-v
clang -cc1 version 10.0.0 (clang-1000.10.44.4) default target x86_64-apple-darwin17.7.0
ignoring duplicate directory "/usr/include"
  as it is a non-system directory that duplicates a system directory
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include
 /Library/Developer/CommandLineTools/usr/lib/clang/10.0.0/include
 /Library/Developer/CommandLineTools/usr/include
 /usr/include
 /System/Library/Frameworks (framework directory)
 /Library/Frameworks (framework directory)
End of search list.

@bayandin
Copy link
Member Author

Btw, why for brew sh it mentions "MacOSX10.14" when I run it on High Sierra (10.13)?

@Bo98
Copy link
Member

Bo98 commented Nov 22, 2019

Huh. Interesting ordering. Didn't expect /usr/include to be different compared to superenv.

Btw, why for brew sh it mentions "MacOSX10.14" when I run it on High Sierra (10.13)?

On Mojave it lists the 10.15 SDK. It's because Homebrew picks the latest SDK, and Xcode 10 contains the 10.14 SDK. It can work ok for certain framework stuff (basically whatever was in the SDK prior to the /usr/include move) but is problematic for system headers - see Git, gcc, etc.

However I don't know if that's necessarily the issue here given it builds fine on Mojave, but you can try tweak it - do ENV["HOMEBREW_SDKROOT"] = "".

@bayandin
Copy link
Member Author

However I don't know if that's necessarily the issue here given it builds fine on Mojave, but you can try tweak it - do ENV["HOMEBREW_SDKROOT"] = "".

This didn't help, but ENV.delete("HOMEBREW_SDKROOT") definitely works 🎉
Wow, @Bo98 you're amazing; great thanks for the help!

@Bo98
Copy link
Member

Bo98 commented Nov 22, 2019

That's interesting to know - I'll keep that in mind for swig.

I wholly expected /usr/include to take precendence, and I think it does in normal circumstances. That said, swig does it's own preprocessing so it could well be producing behaviour against expectation.

@bayandin
Copy link
Member Author

CI is happy now.

Also, probably it is a good idea to check all formulas with M2crypto resource on High Sierra:

$ git grep -il 'resource "M2crypto"'
Formula/dnsviz.rb
Formula/osc.rb
Formula/salt.rb

and all swig formulas then:

$ git grep -il 'depends_on "swig"'
Formula/alot.rb
Formula/astrometry-net.rb
Formula/binwalk.rb
Formula/cmu-pocketsphinx.rb
Formula/cmu-sphinxbase.rb
Formula/gdcm.rb
Formula/geos.rb
Formula/gnuradio.rb
Formula/gpgme.rb
Formula/gr-osmosdr.rb
Formula/ldns.rb
Formula/libftdi.rb
Formula/libstfl.rb
Formula/llvm.rb
Formula/llvm@8.rb
Formula/open-babel.rb
Formula/osc.rb
Formula/partio.rb
Formula/salt.rb
Formula/scipy.rb
Formula/tbb.rb
Formula/valabind.rb
Formula/ykman.rb
Formula/zeek.rb

@Bo98
Copy link
Member

Bo98 commented Nov 22, 2019

Fair point. zeek seems to be fine (#47011) so it might not be too widespread. dnsviz and osc are definitely worth checking.

@bayandin bayandin mentioned this pull request Nov 22, 2019
5 tasks
@bayandin
Copy link
Member Author

Fair point. zeek seems to be fine (#47011) so it might not be too widespread. dnsviz and osc are definitely worth checking.

Here it is: #47052

@bayandin
Copy link
Member Author

Are we ok to merge the workaround @fxcoudert? In the hail of Python 3.8

@fxcoudert fxcoudert added ready to merge PR can be merged once CI is green and removed test failure CI fails while running the test-do block labels Nov 22, 2019
@Moisan Moisan closed this in 413088b Nov 23, 2019
@bayandin bayandin deleted the salt-2019.2.2 branch November 23, 2019 03:44
@lock lock bot added the outdated PR was locked due to age label Jan 1, 2020
@lock lock bot locked as resolved and limited conversation to collaborators Jan 1, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
outdated PR was locked due to age ready to merge PR can be merged once CI is green
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants