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

ci: Add Windows Clang builder #412

Merged
merged 29 commits into from
Jul 16, 2024
Merged
Changes from 1 commit
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
a1dcffb
ci: add clang builder for windows
gnattu Jul 8, 2024
1d0cf5d
configure: Disable inline assembly with nonlocal labels with LTO on C…
gnattu Jul 8, 2024
5f70748
configure: use thin lto for clang
gnattu Jul 8, 2024
1f1ce5e
ci: don't use matrix for windows to select compiler
gnattu Jul 8, 2024
e7d0029
ci: don't install dependencies twice
gnattu Jul 8, 2024
f39247b
ci: create the folder if not exist
gnattu Jul 8, 2024
00fb01a
ci: fix pkg path
gnattu Jul 8, 2024
2ad75e0
ci: disable autocrlf
gnattu Jul 8, 2024
452a4a6
ci: also disable for runner internal git
gnattu Jul 8, 2024
d409d92
ci: fix windows path
gnattu Jul 8, 2024
46bb615
ci: apply more config to force line ending
gnattu Jul 8, 2024
29ded39
ci: fix command
gnattu Jul 8, 2024
989d80e
ci: never convert line endings
gnattu Jul 8, 2024
e1f142a
ci: force lf
gnattu Jul 8, 2024
7aebcd8
pkgbuild: fix path
gnattu Jul 8, 2024
8a63843
ci: use .gitattributes instead
gnattu Jul 8, 2024
a769994
pkgbuild: prefix with ff
gnattu Jul 8, 2024
16e04fe
pkgbuild: prefix all path with ff
gnattu Jul 8, 2024
93ecddc
pkgbuild: delay libpng build
gnattu Jul 8, 2024
5654bb7
pkgconfig: export pkgbuild path
gnattu Jul 8, 2024
582ce2f
pkgbuild: fix chromaprint search path
gnattu Jul 8, 2024
48c86a8
pkgbuild: dont run check
gnattu Jul 8, 2024
b338572
pkgbuild: add libtheora patch
gnattu Jul 8, 2024
dfcf8b5
msys2: don't enable shared dll for clang
gnattu Jul 8, 2024
e6a0643
ci: install zip for clang builder
gnattu Jul 8, 2024
ba428b6
ci: fix artifact path
gnattu Jul 8, 2024
dc5ce19
ci: re-enable other ci
gnattu Jul 8, 2024
cf76ead
pkgbuild: use mirrors.kernel.org instead of sourceware.org
gnattu Jul 8, 2024
0b41bc9
ci: enable directwrite for libass
gnattu Jul 15, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
configure: Disable inline assembly with nonlocal labels with LTO on C…
gnattu committed Jul 8, 2024
commit 1d0cf5daae34768f51e00aa4c9ddf8067a009c2b
27 changes: 19 additions & 8 deletions debian/patches/0035-enable-gcc-vectorization-and-lto-auto.patch
Original file line number Diff line number Diff line change
@@ -1,17 +1,28 @@
Index: jellyfin-ffmpeg/configure
Index: FFmpeg/configure
===================================================================
--- jellyfin-ffmpeg.orig/configure
+++ jellyfin-ffmpeg/configure
@@ -7196,6 +7196,8 @@ if enabled lto; then
--- FFmpeg.orig/configure
+++ FFmpeg/configure
@@ -7197,7 +7197,19 @@ if enabled lto; then
test "$cc_type" != "$ld_type" && die "LTO requires same compiler and linker"
check_cflags -flto
check_ldflags -flto $cpuflags
+ check_cflags -flto=auto
+ check_ldflags -flto=auto $cpuflags
disable inline_asm_direct_symbol_refs
+ if test "$cc_type" = "clang"; then
+ # Clang's LTO fails on Windows, when there are references outside
+ # of inline assembly to nonlocal labels defined within inline assembly,
+ # see https://github.com/llvm/llvm-project/issues/76046.
+ case $target_os in
+ mingw*|win*)
+ disable inline_asm_nonlocal_labels
+ ;;
+ esac
+ fi
fi

@@ -7234,7 +7236,9 @@ if enabled icc; then
enabled ftrapv && check_cflags -ftrapv
@@ -7235,7 +7247,9 @@ if enabled icc; then
disable aligned_stack
fi
elif enabled gcc; then
@@ -22,10 +33,10 @@ Index: jellyfin-ffmpeg/configure
check_cflags -Werror=format-security
check_cflags -Werror=implicit-function-declaration
check_cflags -Werror=missing-prototypes
Index: jellyfin-ffmpeg/libavcodec/x86/cabac.h
Index: FFmpeg/libavcodec/x86/cabac.h
===================================================================
--- jellyfin-ffmpeg.orig/libavcodec/x86/cabac.h
+++ jellyfin-ffmpeg/libavcodec/x86/cabac.h
--- FFmpeg.orig/libavcodec/x86/cabac.h
+++ FFmpeg/libavcodec/x86/cabac.h
@@ -183,6 +183,9 @@ av_noinline
#else
av_always_inline