opencv 4.6.0 with related migrations to jpeg-turbo, python@3.10, and ffmpeg#107250
opencv 4.6.0 with related migrations to jpeg-turbo, python@3.10, and ffmpeg#107250cho-m wants to merge 11 commits intoHomebrew:masterfrom
jpeg-turbo, python@3.10, and ffmpeg#107250Conversation
jpeg-turbo and python@3.10
jpeg-turbo and python@3.10jpeg-turbo and python@3.10
This comment was marked as resolved.
This comment was marked as resolved.
jpeg-turbo and python@3.10jpeg-turbo and python@3.10
2eddfe3 to
8995269
Compare
Formula/opencv.rb
Outdated
There was a problem hiding this comment.
Remaining directories:
carotene cpufeatures ippicv ittnotify libtengine libtim-vx openvx quirc
include/opencl
include/vulkan
Some aren't used (like cpufeatures is Android-only) and Vulkan is disabled by default. Others aren't formulae like Intel libraries.
8995269 to
cfdd1fd
Compare
jpeg-turbo and python@3.10jpeg-turbo, python@3.10, and ffmpeg
This comment was marked as resolved.
This comment was marked as resolved.
cfdd1fd to
481851d
Compare
Formula/mlt.rb
Outdated
There was a problem hiding this comment.
I think this is related to mltframework/mlt#810
481851d to
e20a427
Compare
8aa446b to
25acf9f
Compare
25acf9f to
1bdb314
Compare
| # Ref: https://github.com/opencv/opencv/wiki/CPU-optimizations-build-options | ||
| ENV.runtime_cpu_detection | ||
| if Hardware::CPU.intel? && build.bottle? | ||
| cpu_baseline = MacOS.version.requires_sse42? ? "SSE4_2" : "SSSE3" | ||
| args += %W[-DCPU_BASELINE=#{cpu_baseline} -DCPU_BASELINE_REQUIRE=#{cpu_baseline}] | ||
| end |
There was a problem hiding this comment.
I think for non-bottle builds, it should:
- on Linux,
-march=nativeshould force CPU detection
https://github.com/opencv/opencv/blob/4.6.0/cmake/OpenCVCompilerOptimizations.cmake#L162-L166 - on macOS, the default is auto-detection
https://github.com/opencv/opencv/blob/4.6.0/cmake/OpenCVCompilerOptimizations.cmake#L319-L321
There was a problem hiding this comment.
This might need adjusting for source builds, then, since ENV.runtime_cpu_detection will skip passing any -march flags.
There was a problem hiding this comment.
In that case, Linux install will probably be similar between bottles and source build as SSE3 is default baseline which should give same result as SSSE3.
There is a CPU_BASELINE=NATIVE which I didn't see any documentation on but may provide a more tuned variant for host system.
There was a problem hiding this comment.
I'm ok to set CPU_BASELINE=NATIVE if we're not building bottles as long as it doesn't lead to dependent weirdness as with the Facebook formulae.
107f404 to
0f186bd
Compare
carlocab
left a comment
There was a problem hiding this comment.
Only audit failures for mlt.
bottle publish failed
carlocab
left a comment
There was a problem hiding this comment.
Forgot to pass --no-autosquash.
brew install --build-from-source <formula>, where<formula>is the name of the formula you're submitting?brew test <formula>, where<formula>is the name of the formula you're submitting?brew audit --strict <formula>(after doingbrew install --build-from-source <formula>)? If this is a new formula, does it passbrew audit --new <formula>?Migrations for
vtk,opencv,gdal,mapserver,mlt,ffms2,visp,mapnik