[vlc-commits] [Git][videolan/vlc][master] 2 commits: lib: remove libtool version for iOS/tvOS

Jean-Baptiste Kempf gitlab at videolan.org
Sat May 29 11:02:09 UTC 2021



Jean-Baptiste Kempf pushed to branch master at VideoLAN / VLC


Commits:
eab777c5 by Alexandre Janniaux at 2021-05-28T16:46:17+00:00
lib: remove libtool version for iOS/tvOS

The libtool versionning is there to handle linkage compatibility during
runtime with older/more recent version of the libraries. On iOS and
tvOS, the dynamic libraries MUST be shipped in a framework. A framework
already provides its own way of handling versionning, and applications
cannot install global dynamic libraries (except maybe on jailbroken
devices) so cannot really use the libtool versionning features for
anything.

- - - - -
2ccd4e6b by Alexandre Janniaux at 2021-05-28T16:46:17+00:00
src: remove libtool version for iOS/tvOS

The libtool versionning is there to handle linkage compatibility during
runtime with older/more recent version of the libraries. On iOS and
tvOS, the dynamic libraries MUST be shipped in a framework. A framework
already provides its own way of handling versionning, and applications
cannot install global dynamic libraries (except maybe on jailbroken
devices) so cannot really use the libtool versionning features for
anything.

- - - - -


2 changed files:

- lib/Makefile.am
- src/Makefile.am


Changes:

=====================================
lib/Makefile.am
=====================================
@@ -75,6 +75,15 @@ if HAVE_DARWIN
 libvlc_la_LDFLAGS += -Xlinker -install_name -Xlinker @rpath/libvlc.dylib
 endif
 
+# iOS and tvOS applications cannot install global shared libraries and
+# dylibs must be in frameworks so there's no need for libtool versionning.
+if HAVE_IOS
+libvlc_la_LDFLAGS += -avoid-version
+endif
+if HAVE_TVOS
+libvlc_la_LDFLAGS += -avoid-version
+endif
+
 pkgconfig_DATA = libvlc.pc
 
 libvlc.pc: libvlc.pc.in $(top_builddir)/config.status


=====================================
src/Makefile.am
=====================================
@@ -552,6 +552,15 @@ libvlccore_la_LIBADD += libvlccore_objc.la
 libvlccore_la_LDFLAGS +=  -Wl,-framework,Foundation -Xlinker -install_name -Xlinker @rpath/libvlccore.dylib -Wl,-U,_vlc_static_modules
 endif
 
+# iOS and tvOS applications cannot install global shared libraries and
+# dylibs must be in frameworks so there's no need for libtool versionning.
+if HAVE_IOS
+libvlccore_la_LDFLAGS += -avoid-version
+endif
+if HAVE_TVOS
+libvlccore_la_LDFLAGS += -avoid-version
+endif
+
 libvlc_win32_rc.$(OBJEXT): libvlc_win32_rc.rc $(top_srcdir)/extras/package/win32/libvlc.dll.manifest
 	$(WINDRES) --include-dir $(top_srcdir)/share --include-dir $(top_srcdir)/extras/package/win32 -i $< -o $@
 



View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/dcb42685eb18e3f36c2e0e86429d38098f1c036c...2ccd4e6bca34d46ad112683e3d3bc0174ff97af8

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/dcb42685eb18e3f36c2e0e86429d38098f1c036c...2ccd4e6bca34d46ad112683e3d3bc0174ff97af8
You're receiving this email because of your account on code.videolan.org.




More information about the vlc-commits mailing list