Age | Commit message (Collapse) | Author | Files | Lines |
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1299>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1299>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1299>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1299>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1299>
|
|
We are already setting the minimum version via a (-m) argument and the
-Wl, variant now produces errors from clang.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1299>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1299>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1298>
|
|
Symlinks are not optional on macOS. Let's use them where capable except
on Windows (where they need administrative permissions).
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1297>
|
|
See: https://gitlab.gnome.org/GNOME/glib/-/issues/2902
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1294>
|
|
Cargo starves the rest of the system of RAM and wall clock cycles on
Intel Macs and other systems with low amount of RAM. So allow it to
use multiple jobs only if a big enough system is detected, and only
to the maximum number of threads.
For the purposes of Cerbero, more than 4 threads AND more than 8GB of
RAM is considered "big enough". The latter is only tested for macOS
through sysctl.
Fixes #446
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1293>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1296>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1292>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1284>
|
|
This one was incorrectly removed in bda5e209a013e097e2dcece431a683a61d045ce9 when bumping glib version.
We're at 2.74, this patch is not present upstream until 2.75.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1284>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1274>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1273>
|
|
Cargo-C ships the Cargo.lock separately from the source tarball, so
add it in the recipe.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1259>
|
|
The plague of Rust -sys crates continues. The openssl-sys crate
UNCONDITIONALLY looks into the brew prefix to find openssl libs. It
doesn't bother using pkg-config or some other standard mechanism.
Thankfully, it first looks at `OPENSSL_LIB_DIR` and
`OPENSSL_INCLUDE_DIR` so let's set that.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1259>
|
|
The mechanism is convoluted, so don't use it when we have MSYS2 ssh.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1254>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1251>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1247>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1246>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1233>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1233>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1229>
|
|
MSYS2 and MSYS support starting up a prompt in the current terminal
directly, which means entering the build env will actually work when
running cerbero remotely over SSH.
Also, MSYS2 wasn't preserving PATH correctly, so hack around it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1227>
|
|
Cerbero would try to enter into _builddir if extract failed, but that
dir only exists once the configure step starts. So if we fail while
extracting, enter into the source tree.
Also fix some whitespace.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1227>
|
|
Make the warning really big, annoying, and hard to miss.
Don't warn about the setuptools bug, everyone is running that now and
no one needs to know.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1227>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1227>
|
|
MSYS2 can provide CMake, and that CMake doesn't support MSVC. So
ignore it by removing all MSYS2 paths when searching for cmake.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1227>
|
|
It will likely cause the process to exit with a non-zero exit code and
terminate bootstrap. Also be verbose, not need to be quiet about what
we're doing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1227>
|
|
We still need to build our own nasm because MSYS2 nasm fails:
```
nasm -Ox -f win64 -DNEAR -g -o crypto\aes\aesni-sha256-x86_64.obj "crypto\aes\aesni-sha256-x86_64.asm"
panic: crypto\aes\aesni-sha256-x86_64.asm: assertion cv8_state.source_files != NULL failed at output/codeview.c:515
NMAKE : fatal error U1077:
'nasm -Ox -f win64 -DNEAR -g -o crypto\aes\aesni-sha256-x86_64.obj "crypto\aes\aesni-sha256-x86_64.asm"' :
return code '0x3'
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1227>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1227>
|
|
The MSYS2 shell converts
--fprod " /* enumerations from \"@filename@\" */\n"
to
--fprod " /* enumerations from \"@filename@\" *C:/msys64/\n"
Due to: https://www.msys2.org/docs/filesystem-paths/
This converts the whole enum-types file into one big comment and
breaks the build:
ld: .libs/librsvg_2_la-rsvg-gobject.o: in function `rsvg_handle_class_init':
rsvg-gobject.c:231: undefined reference to `rsvg_handle_flags_get_type'
So, just remove those args. They're useless comments anyway.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1227>
|
|
Build tools always use Visual Studio, so we were *always* printing
"Building recipes with Visual Studio", which is confusing when you're
building with -v mingw
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1227>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1224>
|
|
These shouldn't be in the object files at all, and it prevents macOS
app store validation when making an app bundle.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1225>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1220>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1219>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1213>
|
|
Cerbero was always building cmake even when it was provided by the
system. Fix that.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1213>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1213>
|
|
Fixes #435
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1210>
|
|
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1205>
|
|
```
In file included from ../sys/applemedia/videotexturecache-vulkan.mm:43:
build/dist/darwin_universal/include/MoltenVK/mvk_datatypes.h:225:1: error: 'MTLTextureSwizzle' is only available on macOS 10.15 or newer [-Werror,-Wunguarded-availability-new]
MTLTextureSwizzle mvkMTLTextureSwizzleFromVkComponentSwizzle(VkComponentSwizzle vkSwizzle);
^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.0.sdk/System/Library/Frameworks/Metal.framework/Headers/MTLTexture.h:38:26: note: 'MTLTextureSwizzle' has been marked as being introduced in macOS 10.15 here, but the deployment target is macOS 10.13.0
typedef NS_ENUM(uint8_t, MTLTextureSwizzle) {
^
build/dist/darwin_universal/include/MoltenVK/mvk_datatypes.h:225:19: note: annotate 'mvkMTLTextureSwizzleFromVkComponentSwizzle' with an availability attribute to silence this warning
MTLTextureSwizzle mvkMTLTextureSwizzleFromVkComponentSwizzle(VkComponentSwizzle vkSwizzle);
^
build/dist/darwin_universal/include/MoltenVK/mvk_datatypes.h:228:1: error: 'MTLTextureSwizzleChannels' is only available on macOS 10.15 or newer [-Werror,-Wunguarded-availability-new]
MTLTextureSwizzleChannels mvkMTLTextureSwizzleChannelsFromVkComponentMapping(VkComponentMapping vkMapping);
^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.0.sdk/System/Library/Frameworks/Metal.framework/Headers/MTLTexture.h:53:3: note: 'MTLTextureSwizzleChannels' has been marked as being introduced in macOS 10.15 here, but the deployment target is macOS 10.13.0
} MTLTextureSwizzleChannels API_AVAILABLE(macos(10.15), ios(13.0));
^
build/dist/darwin_universal/include/MoltenVK/mvk_datatypes.h:228:27: note: annotate 'mvkMTLTextureSwizzleChannelsFromVkComponentMapping' with an availability attribute to silence this warning
MTLTextureSwizzleChannels mvkMTLTextureSwizzleChannelsFromVkComponentMapping(VkComponentMapping vkMapping);
^
build/dist/darwin_universal/include/MoltenVK/mvk_datatypes.h:364:1: error: 'MTLMultisampleDepthResolveFilter' is only available on macOS 10.14 or newer [-Werror,-Wunguarded-availability-new]
MTLMultisampleDepthResolveFilter mvkMTLMultisampleDepthResolveFilterFromVkResolveModeFlagBits(VkResolveModeFlagBits vkResolveMode);
^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.0.sdk/System/Library/Frameworks/Metal.framework/Headers/MTLRenderPass.h:145:29: note: 'MTLMultisampleDepthResolveFilter' has been marked as being introduced in macOS 10.14 here, but the deployment target is macOS 10.13.0
typedef NS_ENUM(NSUInteger, MTLMultisampleDepthResolveFilter)
^
build/dist/darwin_universal/include/MoltenVK/mvk_datatypes.h:364:34: note: annotate 'mvkMTLMultisampleDepthResolveFilterFromVkResolveModeFlagBits' with an availability attribute to silence this warning
MTLMultisampleDepthResolveFilter mvkMTLMultisampleDepthResolveFilterFromVkResolveModeFlagBits(VkResolveModeFlagBits vkResolveMode);
^
3 errors generated.
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1117>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1117>
|
|
There are a bunch of reasons to do this:
1. This is the oldest version of macOS that people still use
- Released 5½ years ago, went out of security support 2½ years ago
- 93.5% according to https://www.statista.com/statistics/944559/worldwide-macos-version-market-share/
- 96.8% according to https://gs.statcounter.com/os-version-market-share/macos/desktop/worldwide
2. GLib uses `utimensat` added in 10.13 for nanosecond granularity
file timestamps, which is an important feature
3. This is also the oldest version supported by Qt5
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1117>
|
|
APIs that are only available on newer macOS versions need to be
guarded with __builtin_available for a runtime check that won't load
the symbol at all on older OS versions.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1117>
|