vlc | branch: master | Jean-Baptiste Kempf <[email protected]> | Thu Jan 19 18:57:47 2017 +0100| [7641f2bb8c9c5b10cdf2af7427721fecccf5c839] | committer: Jean-Baptiste Kempf
Contribs: rewrite most of live555 rules It now calls make && make install in the subfolders It has a .pc file taken from Debian package > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7641f2bb8c9c5b10cdf2af7427721fecccf5c839 --- contrib/src/live555/add-pkgconfig-file.patch | 37 ++++++++++++++++++ contrib/src/live555/rules.mak | 57 +++++++++++++++------------- 2 files changed, 67 insertions(+), 27 deletions(-) diff --git a/contrib/src/live555/add-pkgconfig-file.patch b/contrib/src/live555/add-pkgconfig-file.patch new file mode 100644 index 0000000..6f477dc --- /dev/null +++ b/contrib/src/live555/add-pkgconfig-file.patch @@ -0,0 +1,37 @@ +Description: Add a pkg-config file for the shared libraries. +Author: Benjamin Drung <[email protected]> + +diff --git a/Makefile.tail b/Makefile.tail +--- a/Makefile.tail ++++ b/Makefile.tail +@@ -22,7 +22,12 @@ + @echo + @echo "For more information about this source code (including your obligations under the LGPL), please see our FAQ at http://live555.com/liveMedia/faq.html" + +-install: ++install_shared_libraries: ++ install -d $(DESTDIR)$(LIBDIR)/pkgconfig ++ sed "s#@PREFIX@#$(PREFIX)#;s#@LIBDIR@#$(LIBDIR)#;s#@VERSION@#$(VERSION)#" live555.pc.in > $(DESTDIR)$(LIBDIR)/pkgconfig/live555.pc ++ chmod 644 $(DESTDIR)$(LIBDIR)/pkgconfig/live555.pc ++ ++install: $(INSTALL2) + cd $(LIVEMEDIA_DIR) ; $(MAKE) install + cd $(GROUPSOCK_DIR) ; $(MAKE) install + cd $(USAGE_ENVIRONMENT_DIR) ; $(MAKE) install +--- /dev/null 2017-01-19 15:35:15.538412775 +0100 ++++ live.2016.07.19/live555.pc.in 2017-01-19 18:46:01.456059400 +0100 +@@ -0,0 +1,9 @@ ++prefix=@PREFIX@ ++libdir=@LIBDIR@ ++includedir=${prefix}/include ++ ++Name: live555 ++Description: multimedia RTSP streaming library ++Version: @VERSION@ ++Cflags: -I${includedir}/liveMedia -I${includedir}/groupsock -I${includedir}/BasicUsageEnvironment -I${includedir}/UsageEnvironment ++Libs: -L${libdir} -lliveMedia -lgroupsock -lBasicUsageEnvironment -lUsageEnvironment +--- live.2016.07.19/Makefile.head.orig 2017-01-19 18:47:50.376062631 +0100 ++++ live.2016.07.19/Makefile.head 2017-01-19 18:48:09.940063212 +0100 +@@ -1 +1,2 @@ ++VERSION = $(shell grep LIVEMEDIA_LIBRARY_VERSION_STRING liveMedia/include/liveMedia_version.hh | sed 's/.*"\([^"]*\)".*/\1/') + ##### Change the following for your environment: diff --git a/contrib/src/live555/rules.mak b/contrib/src/live555/rules.mak index a1b4b9f..fae4be8 100644 --- a/contrib/src/live555/rules.mak +++ b/contrib/src/live555/rules.mak @@ -1,6 +1,7 @@ # live555 -LIVE555_FILE := live.2016.07.19.tar.gz +LIVE555_VERSION := 2016.07.19 +LIVE555_FILE := live.$(LIVE555_VERSION).tar.gz LIVEDOTCOM_URL := http://live555.com/liveMedia/public/$(LIVE555_FILE) ifdef BUILD_NETWORK @@ -37,43 +38,45 @@ endif LIVE_EXTRA_CFLAGS := $(EXTRA_CFLAGS) -fexceptions $(CFLAGS) live555: $(LIVE555_FILE) .sum-live555 - rm -Rf live - $(UNPACK) + rm -Rf live && $(UNPACK) + + # Change permissions to patch and sed the source chmod -R u+w live - (cd live && patch -fp1) < $(SRC)/live555/live555-nosignal.patch + # Remove hardcoded cc, c++, ar variables cd live && sed -e 's%cc%$(CC)%' -e 's%c++%$(CXX)%' -e 's%LIBRARY_LINK =.*ar%LIBRARY_LINK = $(AR)%' -i.orig config.$(LIVE_TARGET) + # Replace libtool -s by ar cr for macOS only cd live && sed -i.orig -e s/"libtool -s -o"/"ar cr"/g config.macosx* - cd live && sed -i.orig \ - -e 's%$(CXX)%$(CXX)\ $(EXTRA_LDFLAGS)%' config.macosx + # Add Extra LDFLAGS for macOS + cd live && sed -i.orig -e 's%$(CXX)%$(CXX)\ $(EXTRA_LDFLAGS)%' config.macosx + # Add the Extra_CFLAGS to all config files cd live && sed -i.orig \ -e 's%^\(COMPILE_OPTS.*\)$$%\1 '"$(LIVE_EXTRA_CFLAGS)%" config.* + # We want 64bits offsets and PIC on Linux cd live && sed -e 's%-D_FILE_OFFSET_BITS=64%-D_FILE_OFFSET_BITS=64\ -fPIC\ -DPIC%' -i.orig config.linux + # Disable Locale for Solaris cd live && sed -e 's%-DSOLARIS%-DSOLARIS -DXLOCALE_NOT_USED%' -i.orig config.solaris-*bit ifdef HAVE_ANDROID + # Disable locale on Android too cd live && sed -e 's%-DPIC%-DPIC -DNO_SSTREAM=1 -DLOCALE_NOT_USED -I$(ANDROID_NDK)/platforms/$(ANDROID_API)/arch-$(PLATFORM_SHORT_ARCH)/usr/include%' -i.orig config.linux endif - cd live && patch -lfp1 < ../../src/live555/winstore.patch - mv live $@ - touch $@ + mv live live.$(LIVE555_VERSION) + # Patch for MSG_NOSIGNAL + $(APPLY) $(SRC)/live555/live555-nosignal.patch + # Don't use FormatMessageA on WinRT + $(APPLY) $(SRC)/live555/winstore.patch + # Add a pkg-config file + $(APPLY) $(SRC)/live555/add-pkgconfig-file.patch + + mv live.$(LIVE555_VERSION) $@ && touch $@ + +SUBDIRS=groupsock liveMedia UsageEnvironment BasicUsageEnvironment .live555: live555 + cd $< && for subdir in $(SUBDIRS); do \ + echo "PREFIX = $(PREFIX)" >> $$subdir/Makefile.head && \ + echo "LIBDIR = $(PREFIX)/lib" >> $$subdir/Makefile.head ; done + cd $< && echo "LIBDIR = $(PREFIX)/lib" >> Makefile.head cd $< && ./genMakefiles $(LIVE_TARGET) - cd $< && $(MAKE) $(HOSTVARS) -C groupsock \ - && $(MAKE) $(HOSTVARS) -C liveMedia \ - && $(MAKE) $(HOSTVARS) -C UsageEnvironment \ - && $(MAKE) $(HOSTVARS) -C BasicUsageEnvironment - mkdir -p -- "$(PREFIX)/lib" "$(PREFIX)/include/liveMedia" - cp \ - $</groupsock/libgroupsock.a \ - $</liveMedia/libliveMedia.a \ - $</UsageEnvironment/libUsageEnvironment.a \ - $</BasicUsageEnvironment/libBasicUsageEnvironment.a \ - "$(PREFIX)/lib/" - cp \ - $</groupsock/include/*.hh \ - $</groupsock/include/*.h \ - $</liveMedia/include/*.hh \ - $</UsageEnvironment/include/*.hh \ - $</BasicUsageEnvironment/include/*.hh \ - "$(PREFIX)/include/liveMedia" + cd $< && for subdir in $(SUBDIRS); do $(MAKE) $(HOSTVARS) -C $$subdir; done + cd $< && for subdir in $(SUBDIRS); do $(MAKE) $(HOSTVARS) -C $$subdir install; done touch $@ _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
