Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • videolan/vlc
  • chouquette/vlc
  • bakiewicz.marek122/vlc
  • devnexen/vlc
  • rohanrajpal/vlc
  • blurrrb/vlc
  • gsoc/gsoc2019/darkapex/vlc
  • b1ue/vlc
  • fkuehne/vlc
  • magsoft/vlc
  • chub/vlc
  • cramiro9/vlc
  • robUx4/vlc
  • rom1v/vlc
  • akshayaky/vlc
  • tmk907/vlc
  • akymaster/vlc
  • govind.sharma/vlc
  • psilokos/vlc
  • xjbeta/vlc
  • jahan/vlc
  • 1480c1/vlc
  • amanchande/vlc
  • aaqib/vlc
  • rist/vlc
  • apol/vlc
  • mindfreeze/vlc
  • alexandre-janniaux/vlc
  • sandsmark/vlc
  • jagannatharjun/vlc
  • gsoc/gsoc2020/matiaslgonzalez/vlc
  • gsoc/gsoc2020/jagannatharjun/vlc
  • mstorsjo/vlc
  • gsoc/gsoc2020/vedenta/vlc
  • gsoc/gsoc2020/arnav-ishaan/vlc
  • gsoc/gsoc2020/andreduong/vlc
  • fuzun/vlc
  • gsoc/gsoc2020/vatsin/vlc
  • gsoc/gsoc2020/sagid/vlc
  • yaron/vlc
  • Phoenix/vlc
  • Garf/vlc
  • ePiratWorkarounds/vlc
  • tguillem/vlc
  • jnqnfe/vlc
  • mdc/vlc
  • Vedaa/vlc
  • rasa/vlc
  • quink/vlc
  • yealo/vlc
  • aleksey_ak/vlc
  • ePirat/vlc
  • ilya.yanok/vlc
  • asenat/vlc
  • m/vlc
  • bunjee/vlc
  • BLumia/vlc
  • sagudev/vlc
  • hamedmonji30/vlc
  • nullgemm/vlc
  • DivyamAhuja/vlc
  • thesamesam/vlc
  • dag7/vlc
  • snehil101/vlc
  • haasn/vlc
  • jbk/vlc
  • ValZapod/vlc
  • mfkl/vlc
  • WangChuan/vlc
  • core1024/vlc
  • GhostVaibhav/vlc
  • dfuhrmann/vlc
  • davide.prade/vlc
  • tmatth/vlc
  • Courmisch/vlc
  • zouya/vlc
  • hpi/vlc
  • EwoutH/vlc
  • aleung27/vlc
  • hengwu0/vlc
  • saladin/vlc
  • ashuio/vlc
  • richselwood/vlc
  • verma16Ayush/vlc
  • chemicalflash/vlc
  • PoignardAzur/vlc
  • huangjieNT/vlc
  • Blake-Haydon/vlc
  • AnuthaDev/vlc
  • gsoc/gsoc2021/mpd/vlc
  • nicolas_lequec/vlc
  • sambassaly/vlc
  • thresh/vlc
  • bonniegong/vlc
  • myaashish/vlc
  • stavros.vagionitis/vlc
  • ileoo/vlc
  • louis-santucci/vlc
  • cchristiansen/vlc
  • sabyasachi07/vlc
  • AbduAmeen/vlc
  • ashishb0410/vlc
  • urbanhusky/vlc
  • davidepietrasanta/vlc
  • riksleutelstad/vlc
  • jeremyVignelles/vlc
  • komh/vlc
  • iamjithinjohn/vlc
  • JohannesKauffmann/vlc2
  • kunglao/vlc
  • natzberg/vlc
  • jill/vlc
  • cwendling/vlc
  • adufou/vlc
  • ErwanAirone/vlc
  • HasinduDilshan10/vlc
  • vagrantc/vlc
  • rafiv/macos-bigsur-icon
  • Aymeriic/vlc
  • saranshg20/vlc
  • metzlove24/vlc
  • linkfanel/vlc
  • Ds886/vlc
  • metehan-arslan/vlc
  • Skantes/vlc
  • kgsandundananjaya96/vlc
  • mitchcapper/vlc
  • advaitgupta/vlc
  • StefanBruens/vlc
  • ratajs/vlc
  • T.M.F.B.3761/vlc
  • m222059/vlc
  • casemerrick/vlc
  • joshuaword2alt/vlc
  • sjwaddy/vlc
  • dima/vlc
  • Ybalrid/vlc
  • umxprime/vlc
  • eschmidt/vlc
  • vannieuwenhuysenmichelle/vlc
  • badcf00d/vlc
  • wesinator/vlc
  • louis/vlc
  • xqq/vlc
  • EmperorYP7/vlc
  • NicoLiam/vlc
  • loveleen/vlc
  • rofferom/vlc
  • rbultje/vlc
  • TheUnamed/vlc
  • pratiksharma341/vlc
  • Saurab17/vlc
  • purist.coder/vlc
  • Shuicheng/vlc
  • mdrrubel292/vlc
  • silverbleu00/vlc
  • metif12/vlc
  • asher-m/vlc
  • jeffk/vlc
  • Brandonbr1/vlc
  • beautyyuyanli/vlc
  • rego21/vlc
  • muyangren907/vlc
  • collectionbylawrencejason/vlc
  • evelez/vlc
  • GSMgeeth/vlc
  • Oneric/vlc
  • TJ5/vlc
  • XuanTung95/vlc
  • darrenjenny21/vlc
  • Trenly/vlc
  • RockyTDR/vlc
  • mjakubowski/vlc
  • caprica/vlc
  • ForteFrankie/vlc
  • seannamiller19/vlc
  • junlon2006/vlc
  • kiwiren6666/vlc
  • iuseiphonexs/vlc
  • fenngtun/vlc
  • Rajdutt999/vlc
  • typx/vlc
  • leon.vitanos/vlc
  • robertogarci0938/vlc
  • gsoc/gsoc2022/luc65r/vlc-mpd
  • skeller/vlc
  • MCJack123/vlc
  • luc65r/vlc-mpd
  • popov895/vlc
  • claucambra/vlc
  • brad/vlc
  • matthewmurua88/vlc
  • Tomas8874/vlc
  • philenotfound/vlc
  • makita-do3/vlc
  • LZXCorp/vlc
  • mar0x/vlc
  • senojetkennedy0102/vlc
  • shaneb243/vlc
  • ahmadbader/vlc
  • rajduttcse26/vlc-audio-filters
  • Juniorzito8415/vlc
  • achernyakov/vlc
  • lucasjetgroup/vlc
  • pupdoggy666/vlc
  • gmde9363/vlc
  • alexnwayne/vlc
  • bahareebrahimi781/vlc
  • hamad633666/vlc
  • umghof3112/vlc
  • joe0199771874/vlc
  • Octocats66666666/vlc
  • jjm_223/vlc
  • btech10110.19/vlc
  • sunnykfc028/vlc-audio-filters
  • loic/vlc
  • nguyenminhducmx1/vlc
  • JanekKrueger/vlc
  • bstubbington2/vlc
  • rcombs/vlc
  • Ordissimo/vlc
  • king7532/vlc
  • noobsauce101/vlc
  • schong0525/vlc
  • myQwil/vlc
  • apisbg91/vlc
  • geeboy0101017/vlc
  • kim.faughey/vlc
  • nurupo/vlc
  • yyusea/vlc
  • 0711235879.khco/vlc
  • ialo/vlc
  • iloveyeye2/vlc
  • gdtdftdqtd/vlc
  • leandroconsiglio/vlc
  • AndyHTML2012/vlc
  • ncz/vlc
  • lucenticus/vlc
  • knr1931/vlc
  • kjoonlee/vlc
  • chandrakant100/vlc-qt
  • johge42/vlc
  • polter/vlc
  • hexchain/vlc
  • Tushwrld/vlc
  • mztea928/vlc
  • jbelloncastro/vlc
  • alvinhochun/vlc
  • ghostpiratecrow/vlc
  • ujjwaltwitx/vlc
  • alexsonarin06/vlc
  • adrianbon76/vlc
  • altsod/vlc
  • damien.lucas44/vlc
  • dmytrivtaisa/vlc
  • utk202/vlc
  • aaxhrj/vlc
  • thomas.hermes/vlc
  • structurenewworldorder/vlc
  • slomo/vlc
  • wantlamy/vlc
  • musc.o3cminc/vlc
  • thebarshablog/vlc
  • kerrick/vlc
  • kratos142518/vlc
  • leogps/vlc
  • vacantron/vlc
  • luna_koly/vlc
  • Ratio2/vlc
  • anuoshemohammad/vlc
  • apsun/vlc
  • aaa1115910/vlc
  • alimotmoyo/vlc
  • Ambossmann/vlc
  • Sam-LearnsToCode/vlc
  • Chilledheart/vlc
  • Labnann/vlc
  • ktcoooot1/vlc
  • mohit-marathe/vlc
  • johnddx/vlc
  • manstabuk/vlc
  • Omar-ahmed314/vlc
  • vineethkm/vlc
  • 9Enemi86/vlc
  • radoslav.m.panteleev/vlc
  • ashishami2002/vlc
  • Corbax/vlc
  • firnasahmed/vlc
  • pelayarmalam4/vlc
  • c0ff330k/vlc
  • shikhindahikar/vlc
  • l342723951/vlc
  • christianschwandner/vlc
  • douniwan5788/vlc
  • 7damian7/vlc
  • ferdnyc/vlc
  • f.ales1/vlc
  • pandagby/vlc
  • BaaBaa/vlc
  • jewe37/vlc
  • w00drow/vlc
  • russelltg/vlc
  • ironicallygod/vlc
  • soumyaDghosh/vlc
  • linzihao1999/vlc
  • deyayush6/vlc
  • mibi88/vlc
  • newabdallah10/vlc
  • jhorbincolombia/vlc
  • rimvihaqueshupto/vlc
  • andrewkhon98/vlc
  • fab78/vlc
  • lapaz17/vlc
  • amanna13/vlc
  • mdakram28/vlc
  • 07jw1980/vlc
  • sohamgupta/vlc
  • Eson-Jia1/vlc
  • Sumou/vlc
  • vikram-kangotra/vlc
  • chalice191/vlc
  • olivercalder/vlc
  • aaasg4001/vlc
  • zipdox/vlc
  • kwizart/vlc
  • Dragon-S/vlc
  • jdemeule/vlc
  • gabriel_lt/vlc
  • locutusofborg/vlc
  • sammirata/vlc-librist
  • another/vlc
  • Benjamin_Loison/vlc
  • ahmedmoselhi/vlc
  • petergaal/vlc
  • huynhsontung/vlc
  • dariusmihut/vlc
  • tvermaashutosh/vlc
  • buti/vlc
  • Niram7777/vlc
  • rohan-here/vlc
  • balaji-sivasakthi/vlc
  • rlindner81/vlc
  • Kakadus/vlc
  • djain/vlc
  • ABBurmeister/vlc
  • craighuggins/vlc
  • orbea/vlc
  • maxos/vlc
  • aakarshmj/vlc
  • kblaschke/vlc
  • ankitm/vlc
  • advait-0/vlc
  • mohak2003/vlc
  • yselkowitz/vlc
  • AZM999/vlc-azm
  • andrey.turkin/vlc
  • Disha-Baghel/vlc
  • nowrep/vlc
  • Apeng/vlc
  • Choucroute_melba/vlc
  • autra/vlc
  • eclipseo/vlc
  • fhuber/vlc
  • olafhering/vlc
  • sdasda7777/vlc
  • 1div0/vlc
  • skosnits/vlc-extended-playlist-support
  • dnicolson/vlc
  • Timshel/vlc
  • octopols/vlc
  • MangalK/vlc
  • nima64/vlc
  • misawai/vlc
  • Alexander-Wilms/vlc
  • Maxime2/vlc-fork-for-visualizer
  • ww/vlc
  • jeske/vlc
  • sgross-emlix/vlc
  • morenonatural/vlc
  • freakingLovesVLC/vlc
  • borisgolovnev/vlc
  • mpromonet/vlc
  • diogo.simao-marques/vlc
  • masstock/vlc
  • pratikpatel8982/vlc
  • hugok79/vlc
  • longervision/vlc
  • abhiudaysurya/vlc
  • rishabhgarg/vlc
  • tumic/vlc
  • cart/vlc
  • shubham442/vlc
  • Aditya692005/vlc
  • sammirata/vlc4
  • syrykh/vlc
  • Vvorcun/macos-new-icon
  • AyaanshC/vlc
  • nasso/vlc
  • Quark/vlc
  • sebastinas/vlc
  • rhstone/vlc
  • talregev/vlc
  • Managor/vlc
403 results
Show changes
Commits on Source (13)
  • Alexandre Janniaux's avatar
    modules: common.am: remove trailing characters · dd6fa610
    Alexandre Janniaux authored and Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf committed
    dd6fa610
  • Alexandre Janniaux's avatar
    demux: avformat: remove -read_only_relocs · 505f0955
    Alexandre Janniaux authored and Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf committed
    This is not supported with -bundle_bitcode, and was only supposed to be
    used on 32bit anyway. It seems to be only a legacy flag now.
    
    From ld64 man:
    
         -read_only_relocs treatment
                     Enables the use of relocations which will cause dyld to
                     modify (copy-on-write) read-only pages.  The compiler
                     will normally never generate such code.
    505f0955
  • Alexandre Janniaux's avatar
    securetransport: use __builtin_available tagging · 7c4ee7ec
    Alexandre Janniaux authored and Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf committed
    The SSL*ALPNProtocols were introduced in recent OS version, and dynamic
    lookup (using ld64 option -Wl,-U) was used to make it work during
    link-time and potentially not have the function available.
    
    However, -Wl,-U is not compatible with bitcode support, whereas
    availability targeting is, and availability targeting provides more
    information about when it's not supported.
    
    MacOSX 10.13.4 is the minimal version target in cURL too. The
    SSL*ALPNProtocols functions are documented as supported since 10.13 but
    they were not included in the initial 10.13 releases.
    7c4ee7ec
  • Alexandre Janniaux's avatar
    misc: remove -Wl,-U flags for SecureTransport · ceeb44fb
    Alexandre Janniaux authored and Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf committed
    Those flags are not supported with bitcode and are not needed now that
    the code has migrated to using availability targeting.
    ceeb44fb
  • Alexandre Janniaux's avatar
    video_output: Makefile.am: use CPPFLAGS for defines · c7bdf947
    Alexandre Janniaux authored and Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf committed
    c7bdf947
  • Alexandre Janniaux's avatar
    glinterop_cvpx: add frameworks on tvOS · 3a7eccda
    Alexandre Janniaux authored and Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf committed
    Otherwise, the OpenGL interop doesn't link on tvOS when creating dynamic
    plugins (--enable-shared option from build.sh).
    3a7eccda
  • Alexandre Janniaux's avatar
    video_output: Makefile.am: reorganize glinterop_cvpx · 22709120
    Alexandre Janniaux authored and Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf committed
     - use a single location for adding every defines
     - use a single vout_LTLIBRARIES += line
     - deduplicate -framework,IOSurface
    22709120
  • Alexandre Janniaux's avatar
    video_output: use libvlc_vtutils convenience library · 64bd2e6b
    Alexandre Janniaux authored and Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf committed
    64bd2e6b
  • Alexandre Janniaux's avatar
    configure.ac: remove -framework,AppKit · 9262bbc2
    Alexandre Janniaux authored and Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf committed
    Those frameworks only exist for MacOSX, so it was invalid to set them up
    in the general case. Fortunately, it wasn't really used on iOS and tvOS
    for the executables so it didn't have consequences.
    
    On MacOSX, the targets needing this framework already link it so it is
    not needed.
    9262bbc2
  • Alexandre Janniaux's avatar
    configure.ac: add linker test for dynamic_lookup · 7e916f4c
    Alexandre Janniaux authored and Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf committed
    Check that the linker features from Darwin ld64 for marking a symbol as
    undefined (in the context of two-level namespace, it means that it can
    be looked up in other namespaces) are usable. If they are not, the
    static module bank is disabled since it depends on either static linkage
    (which is obviously not affected by this option) or more generally the
    ability to look up the static module bank symbol in a different linkage
    unit/namespace.
    
    In particular, they are currently not usable when enabling bitcode
    through LDFLAGS+=" -fembed-bitcode" and compiling dynamically. On tvOS,
    bitcode is mandatory, so supporting compiling with bitcode but without
    the static module bank seems a rather good compromise given that it was
    disabled anyway previously.
    
    In static builds (the current shipping target for iOS and tvOS), the
    static module bank stays enabled by the !HAVE_DYNAMIC_PLUGINS check.
    7e916f4c
  • Alexandre Janniaux's avatar
    extras/tools: libtool: fix support for bitcode · 95bbad6d
    Alexandre Janniaux authored and Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf committed
    When building with bitcode enabled (*FLAGS+=-fembed-bitcode), the
    following happens:
    
     - with LDFLAGS += -fembed-bitcode, the vanilla libtool version will
       remove the -fembed-bitcode flag, being an unknown flag, so bitcode
       won't actually be enabled, and final link steps might complain that
       the dylibs (libvlccore.dylib for instance) doesn't actually have
       bitcode embedded.
    
     - once fixed (either by this patch or by using -Wl,-fembed-bitcode),
       the plugins will be compiled with -module, which default to using
       MH_BUNDLE on iOS/tvOS/MacOSX instead of MH_DYLIB. Indeed, dylibs can
       be dlopened only since MacOSX 10.3/10.4, and can be dlclosed only
       since MacOSX 10.5, so MH_BUNDLE was the primary target for libtool
       module support. However, MH_BUNDLE is not compatible with the bitcode
       support from Clang.
    
    Since we support MacOSX 10.11 as minimum, we can default to using
    MH_DYLIB for plugins to have the bitcode support.
    
    This new libtool patch add the explicit support for -fembed-bitcode in
    libtool --mode=link flags, and change the flags used when using -module
    in libtool to switch to dylibs.
    95bbad6d
  • Alexandre Janniaux's avatar
    apple: build.sh: add bitcode flag to LDFLAGS too · 26231ecf
    Alexandre Janniaux authored and Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf committed
    The bitcode flag was already added to CFLAGS, but was only used when
    creating a static build of libvlc, which doesn't involve linkage. When
    creating shared plugins, the dylibs must be linked with the
    -fembed-bitcode flag to gather the bitcode from the different objects.
    
    In particular, bitcode is mandatory on tvOS, so this is mandatory when
    building dynamic plugins and/or libvlc for tvOS.
    26231ecf
  • Alexandre Janniaux's avatar
    apple: build.sh: add support for -fembed-bitcode-marker · 585c0b02
    Alexandre Janniaux authored and Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf committed
    585c0b02
......@@ -205,9 +205,26 @@ case "${host_os}" in
AX_APPEND_FLAG([-Werror=partial-availability], [OBJCFLAGS])
AX_APPEND_FLAG([-Wl,-headerpad_max_install_names], [LDFLAGS])
VLC_ADD_LIBS([libvlc vlc],[-Wl,-undefined,dynamic_lookup,-framework,AppKit])
VLC_ADD_LIBS([libvlccore],[-Wl,-framework,CoreFoundation])
dnl This is not supported when bitcode is enabled. In that case, we need
dnl to disable the static bank loader.
AC_MSG_CHECKING([if -Wl,-U is allowed])
VLC_SAVE_FLAGS
AX_APPEND_FLAG([LDFLAGS],[-Wl,-U,_my_array -no-undefined])
AC_LINK_IFELSE(
[AC_LANG_PROGRAM([], [dnl
__attribute__((visibility("default"))) extern int my_array[];
__attribute__((visibility("default"))) int foo() { return my_array[0]; }
])],
[
VLC_ADD_LDFLAGS([libvlccore],[-Wl,-U,_vlc_static_modules])
VLC_ADD_LDFLAGS([libvlc vlc],[-Wl,-undefined,dynamic_lookup])
VLC_ADD_CPPFLAGS([libvlccore],[-DHAVE_DYLIB_DYNAMIC_LOOKUP=1])
AC_MSG_RESULT([yes])
],[AC_MSG_RESULT([no])])
VLC_RESTORE_FLAGS
AC_EGREP_CPP(yes,
[#import <TargetConditionals.h>
#if TARGET_OS_IPHONE
......
......@@ -98,6 +98,7 @@ VLC_REQUESTED_CORE_COUNT=0
VLC_DISABLE_DEBUG=0
# whether to compile with bitcode or not
VLC_USE_BITCODE=0
VLC_BITCODE_FLAG="-fembed-bitcode"
# whether to build static or dynamic plugins
VLC_BUILD_DYNAMIC=0
......@@ -123,7 +124,8 @@ usage()
echo " --arch=ARCH Architecture to build for"
echo " (i386|x86_64|armv7|arm64)"
echo " --sdk=SDK Name of the SDK to build with (see 'xcodebuild -showsdks')"
echo " --enable-bitcode Enable bitcode for compilation"
echo " --enable-bitcode Enable bitcode for compilation, same as with =full"
echo " --enable-bitcode=marker Enable bitcode marker for compilation"
echo " --disable-debug Disable libvlc debug mode (for release)"
echo " --verbose Print verbose output and disable multi-core use"
echo " --help Print this help"
......@@ -316,8 +318,10 @@ set_host_envvars()
{
# Flags to be used for C-like compilers (C, C++, Obj-C)
local clike_flags="$VLC_DEPLOYMENT_TARGET_CFLAG -arch $VLC_HOST_ARCH -isysroot $VLC_APPLE_SDK_PATH $1"
local bitcode_flag=""
if [ "$VLC_USE_BITCODE" -gt "0" ]; then
clike_flags+=" -fembed-bitcode"
clike_flags+=" $VLC_BITCODE_FLAG"
bitcode_flag=" $VLC_BTICODE_FLAG"
fi
export CPPFLAGS="-arch $VLC_HOST_ARCH -isysroot $VLC_APPLE_SDK_PATH"
......@@ -327,7 +331,7 @@ set_host_envvars()
export OBJCFLAGS="$clike_flags"
# Vanilla clang doesn't use VLC_DEPLOYMENT_TAGET_LDFLAGS but only the CFLAGS variant
export LDFLAGS="$VLC_DEPLOYMENT_TARGET_LDFLAG $VLC_DEPLOYMENT_TARGET_CFLAG -arch $VLC_HOST_ARCH"
export LDFLAGS="$VLC_DEPLOYMENT_TARGET_LDFLAG $VLC_DEPLOYMENT_TARGET_CFLAG -arch $VLC_HOST_ARCH ${bitcode_flag}"
}
hostenv()
......@@ -362,6 +366,7 @@ write_config_mak()
# Flags to be used for C-like compilers (C, C++, Obj-C)
local clike_flags="$VLC_DEPLOYMENT_TARGET_CFLAG -arch $VLC_HOST_ARCH -isysroot $VLC_APPLE_SDK_PATH $1"
if [ "$VLC_USE_BITCODE" -gt "0" ]; then
# We use bitcode for contribs in every case, no dylib or executable built from them
clike_flags+=" -fembed-bitcode"
fi
......@@ -451,8 +456,12 @@ do
--disable-debug)
VLC_DISABLE_DEBUG=1
;;
--enable-bitcode)
--enable-bitcode|--enable-bitcode=full)
VLC_USE_BITCODE=1
;;
--enable-bitcode=marker)
VLC_USE_BITCODE=1
VLC_BITCODE_FLAG="-fembed-bitcode-marker"
;;
--arch=*)
VLC_HOST_ARCH="${1#--arch=}"
......
From 23f7d7c98d923bd454c114ea7dfa6ded9ef49bbe Mon Sep 17 00:00:00 2001
From: Alexandre Janniaux <ajanni@videolabs.io>
Date: Mon, 31 May 2021 10:28:54 +0200
Subject: [PATCH] ltmain: add support for -fembed-bitcode
---
build-aux/ltmain.in | 8 ++++++++
m4/libtool.m4 | 4 ++--
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index 96b37003..0d9f10a0 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -5173,6 +5173,13 @@ func_mode_link ()
prev=xcompiler
continue
;;
+ -fembed-bitcode|-fembed-bitcode-marker)
+ func_append compiler_flags " $arg"
+ func_append compile_command " $arg"
+ func_append finalize_command " $arg"
+ func_append linker_flags " $arg"
+ continue
+ ;;
-mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \
|-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*)
diff --git a/m4/libtool.m4 b/m4/libtool.m4
index f2d1f398..e5891815 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -1125,9 +1125,9 @@ m4_defun([_LT_DARWIN_LINKER_FEATURES],
if test yes = "$_lt_dar_can_shared"; then
output_verbose_link_cmd=func_echo_all
_LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
- _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
+ _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -dynamiclib \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
_LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
- _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
+ _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -dynamiclib \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
m4_if([$1], [CXX],
[ if test yes != "$lt_cv_apple_cc_single_mod"; then
_LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil"
--
2.31.1
......@@ -117,6 +117,7 @@ libtool: libtool-$(LIBTOOL_VERSION).tar.gz
$(APPLY) $(TOOLS)/libtool-2.4.6-clang-libs.patch
$(APPLY) $(TOOLS)/libtool-2.4.6-response-files.patch
$(APPLY) $(TOOLS)/libtool-2.4.6-lpthread.patch
$(APPLY) $(TOOLS)/libtool-2.4.6-embed-bitcode.patch
$(MOVE)
.buildlibtool: libtool .automake .help2man
......
......@@ -32,7 +32,7 @@ AM_LDFLAGS = \
-export-symbols-regex ^vlc_entry \
-shrext $(LIBEXT) \
-no-undefined \
$(top_builddir)/compat/libcompat.la $(LTLIBVLCCORE)
$(top_builddir)/compat/libcompat.la $(LTLIBVLCCORE)
if HAVE_WIN32
AM_LDFLAGS += $(top_builddir)/modules/module.rc.lo -Wc,-static
endif
......
......@@ -154,9 +154,6 @@ libavformat_plugin_la_LDFLAGS = $(AM_LDFLAGS) $(SYMBOLIC_LDFLAGS)
if HAVE_ZLIB
libavformat_plugin_la_LIBADD += -lz
endif
if HAVE_DARWIN
libavformat_plugin_la_LDFLAGS += -Wl,-read_only_relocs,suppress
endif
if HAVE_AVFORMAT
if !MERGE_FFMPEG
demux_LTLIBRARIES += libavformat_plugin.la
......
......@@ -42,7 +42,6 @@ libsecuretransport_plugin_la_SOURCES = misc/securetransport.c
libsecuretransport_plugin_la_CFLAGS = $(AM_CFLAGS) $(SECURETRANSPORT_CFLAGS)
libsecuretransport_plugin_la_LIBADD = $(SECURETRANSPORT_LIBS)
libsecuretransport_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(miscdir)' -Wl,-framework,Security,-framework,CoreFoundation
libsecuretransport_plugin_la_LDFLAGS += -Wl,-U,_SSLCopyALPNProtocols,-U,_SSLSetALPNProtocols
misc_LTLIBRARIES += libsecuretransport_plugin.la
endif
......
......@@ -441,12 +441,11 @@ static int st_Handshake (vlc_tls_t *session,
(TARGET_OS_IPHONE && __IPHONE_OS_VERSION_MAX_ALLOWED >= 110000) || \
(TARGET_OS_TV && __TV_OS_VERSION_MAX_ALLOWED >= 110000) || \
(TARGET_OS_WATCH && __WATCH_OS_VERSION_MAX_ALLOWED >= 40000)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wpartial-availability"
/* Handle ALPN data */
if (alp != NULL) {
if (SSLCopyALPNProtocols != NULL) {
if (__builtin_available(iOS 11, macOS 10.13.4, tvOS 11, watchOS 4, *))
{
CFArrayRef alpnArray = NULL;
OSStatus res = SSLCopyALPNProtocols(sys->p_context, &alpnArray);
if (res == noErr && alpnArray) {
......@@ -462,7 +461,6 @@ static int st_Handshake (vlc_tls_t *session,
}
}
#pragma clang diagnostic pop
#else
/* No ALPN support */
......@@ -745,12 +743,11 @@ static vlc_tls_t *st_ClientSessionOpen(vlc_tls_client_t *crd, vlc_tls_t *sock,
(TARGET_OS_IPHONE && __IPHONE_OS_VERSION_MAX_ALLOWED >= 110000) || \
(TARGET_OS_TV && __TV_OS_VERSION_MAX_ALLOWED >= 110000) || \
(TARGET_OS_WATCH && __WATCH_OS_VERSION_MAX_ALLOWED >= 40000)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wpartial-availability"
/* Handle ALPN */
if (alpn != NULL) {
if (SSLSetALPNProtocols != NULL) {
if (__builtin_available(iOS 11, macOS 10.13.4, tvOS 11, watchOS 4, *))
{
CFMutableArrayRef alpnValues = alpnToCFArray(alpn);
if (alpnValues == NULL) {
......@@ -768,7 +765,6 @@ static vlc_tls_t *st_ClientSessionOpen(vlc_tls_client_t *crd, vlc_tls_t *sock,
}
}
#pragma clang diagnostic pop
#else
/* No ALPN support */
......
......@@ -28,14 +28,25 @@ endif
libglinterop_cvpx_plugin_la_SOURCES = video_output/opengl/interop_cvpx.m \
video_output/opengl/interop.h
libglinterop_cvpx_plugin_la_SOURCES += codec/vt_utils.c codec/vt_utils.h
libglinterop_cvpx_plugin_la_LIBADD = libvlc_vtutils.la
libglinterop_cvpx_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)' \
-Wl,-framework,Foundation,-framework,CoreVideo
-Wl,-framework,Foundation,-framework,CoreVideo,-framework,IOSurface
libglinterop_cvpx_plugin_la_CPPFLAGS = $(AM_CPPFLAGS)
if HAVE_DARWIN
if HAVE_OSX
libglinterop_cvpx_plugin_la_LDFLAGS += -Wl,-framework,OpenGL
else
libglinterop_cvpx_plugin_la_CPPFLAGS += -DUSE_OPENGL_ES2
libglinterop_cvpx_plugin_la_LDFLAGS += -Wl,-framework,OpenGLES
endif
vout_LTLIBRARIES += libglinterop_cvpx_plugin.la
endif
if HAVE_OSX
libvout_macosx_plugin_la_SOURCES = video_output/macosx.m \
$(OPENGL_VOUT_COMMONSOURCES)
libvout_macosx_plugin_la_CFLAGS = $(AM_CFLAGS) -DHAVE_GL_CORE_SYMBOLS
libvout_macosx_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DHAVE_GL_CORE_SYMBOLS
libvout_macosx_plugin_la_LIBADD = libvlc_opengl.la
libvout_macosx_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)' \
-Wl,-framework,OpenGL,-framework,Cocoa
......@@ -47,13 +58,7 @@ libcaopengllayer_plugin_la_LIBADD = libvlc_opengl.la
libcaopengllayer_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)' \
-Wl,-framework,OpenGL,-framework,Cocoa,-framework,QuartzCore
libglinterop_cvpx_plugin_la_LDFLAGS += -Wl,-framework,IOSurface,-framework,OpenGL
vout_LTLIBRARIES += libvout_macosx_plugin.la libcaopengllayer_plugin.la \
libglinterop_cvpx_plugin.la
endif
if HAVE_IOS
libglinterop_cvpx_plugin_la_CFLAGS = $(AM_CFLAGS) -DUSE_OPENGL_ES2
libglinterop_cvpx_plugin_la_LDFLAGS += -Wl,-framework,IOSurface,-framework,OpenGLES
vout_LTLIBRARIES += libvout_macosx_plugin.la libcaopengllayer_plugin.la
endif
libvout_ios_plugin_la_SOURCES = video_output/opengl/display.c
......@@ -72,14 +77,12 @@ libcaeagl_ios_plugin_la_OBJCFLAGS = $(AM_OBJCFLAGS) -fobjc-arc
if HAVE_IOS
vout_LTLIBRARIES += libvout_ios_plugin.la \
libglinterop_cvpx_plugin.la \
libuiview_window_plugin.la \
libcaeagl_ios_plugin.la
endif
if HAVE_TVOS
vout_LTLIBRARIES += \
libvout_ios_plugin.la \
libglinterop_cvpx_plugin.la \
libuiview_window_plugin.la \
libcaeagl_ios_plugin.la
endif
......
......@@ -566,7 +566,7 @@ $(libvlccore_la_OBJECTS): libvlccore_objc.la
libvlccore_objc_la_OBJCFLAGS = $(AM_OBJCFLAGS) -fobjc-arc
libvlccore_objc_la_LDFLAGS = -static
libvlccore_la_LIBADD += libvlccore_objc.la
libvlccore_la_LDFLAGS += -Wl,-framework,Foundation -Xlinker -install_name -Xlinker @rpath/libvlccore.dylib -Wl,-U,_vlc_static_modules
libvlccore_la_LDFLAGS += -Wl,-framework,Foundation -Xlinker -install_name -Xlinker @rpath/libvlccore.dylib
endif
# iOS and tvOS applications cannot install global shared libraries and
......
......@@ -179,7 +179,9 @@ static vlc_plugin_t *module_InitStatic(vlc_plugin_cb entry)
* not provided at runtime. However, although __MACH__ implies the same runtime
* consequences for weak linking, it will still require the definition to exist
* at build time. To workaround this, we add -Wl,-U,vlc_static_modules. */
#if defined(__ELF__) || defined(__MACH__) || !HAVE_DYNAMIC_PLUGINS
#if defined(__ELF__) \
|| (defined(__MACH__) && defined(HAVE_DYLIB_DYNAMIC_LOOKUP)) \
|| !HAVE_DYNAMIC_PLUGINS
VLC_WEAK
extern vlc_plugin_cb vlc_static_modules[];
......