From 53fe012aba71e5131e7aadf75049de5adc8d089d Mon Sep 17 00:00:00 2001 From: Matthias Saou Date: Mon, 12 Feb 2007 19:10:16 +0000 Subject: [PATCH 01/76] Initial import of libmp4v2. --- .cvsignore | 2 ++ libmp4v2.spec | 91 +++++++++++++++++++++++++++++++++++++++++++++++++++ sources | 2 ++ 3 files changed, 95 insertions(+) create mode 100644 libmp4v2.spec diff --git a/.cvsignore b/.cvsignore index e69de29..1d1a4e5 100644 --- a/.cvsignore +++ b/.cvsignore @@ -0,0 +1,2 @@ +libmp4v2-1.5.0.1.tar.bz2 +mklibmp4v2-r51.tar.bz2 diff --git a/libmp4v2.spec b/libmp4v2.spec new file mode 100644 index 0000000..cff437b --- /dev/null +++ b/libmp4v2.spec @@ -0,0 +1,91 @@ +Summary: Library for working with files using the mp4 container format +Name: libmp4v2 +Version: 1.5.0.1 +Release: 3%{?dist} +License: MPL +Group: System Environment/Libraries +URL: http://resare.com/libmp4v2/ +Source0: http://resare.com/libmp4v2/dist/libmp4v2-%{version}.tar.bz2 +# Only here to be in the source package, "just in case, and FYI" +Source1: http://resare.com/libmp4v2/mklibmp4v2/mklibmp4v2-r51.tar.bz2 +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root + +%description +The libmp4v2 library provides an abstraction layer for working with files +using the mp4 container format. This library is developed by mpeg4ip project +and is an exact copy of the library distributed in the mpeg4ip package. + + +%package devel +Summary: Development files for the mp4v2 library +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} + +%description devel +Development files and documentation needed to develop and compile programs +using the libmp4v2 library. + + +%prep +%setup -q + + +%build +%configure \ + --disable-static \ + --disable-dependency-tracking +%{__make} %{?_smp_mflags} + + +%install +%{__rm} -rf %{buildroot} +%{__make} install DESTDIR=%{buildroot} +%{__rm} -rf %{buildroot}%{_mandir}/manm/ + + +%clean +%{__rm} -rf %{buildroot} + + +%post -p /sbin/ldconfig + +%postun -p /sbin/ldconfig + + +%files +%defattr(-,root,root,0755) +%doc COPYING +%{_bindir}/* +%{_libdir}/*.so.* + +%files devel +%defattr(-,root,root,0755) +%doc README TODO INTERNALS API_CHANGES +%{_includedir}/*.h +%exclude %{_libdir}/*.la +%{_libdir}/*.so +%{_mandir}/man?/* + + +%changelog +* Fri Dec 15 2006 Matthias Saou 1.5.0.1-3 +- Spec file cleanup (habits, mostly) preparing to submit for Extras inclusion. + +* Fri Oct 06 2006 Thorsten Leemhuis 1.5.0.1-2 +- rebuilt for unwind info generation, broken in gcc-4.1.1-21 + +* Tue Jul 18 2006 Noa Resare 1.5.0.1-1 +- new upstream release + +* Sat May 13 2006 Noa Resare 1.4.1-3 +- disabled static lib +- use DESTDIR +- disable-dependency-tracking for faster builds +- removed a manpage template file apt.mpt.gz + +* Mon May 08 2006 Noa Resare 1.4.1-2 +- specfile cleanups + +* Fri May 05 2006 Noa Resare 1.4.1-1.lvn5 +- initial release + diff --git a/sources b/sources index e69de29..1087476 100644 --- a/sources +++ b/sources @@ -0,0 +1,2 @@ +90eb2b0940ebe02ef81b7a60530beaee libmp4v2-1.5.0.1.tar.bz2 +4b4abb862b079a7e296c891d96faebc9 mklibmp4v2-r51.tar.bz2 From 0b08223abbae01f92e75892e48721181ccd50e32 Mon Sep 17 00:00:00 2001 From: Matthias Saou Date: Sun, 5 Aug 2007 11:23:29 +0000 Subject: [PATCH 02/76] Update License field. --- libmp4v2.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index cff437b..e6062e0 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,8 +1,8 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 1.5.0.1 -Release: 3%{?dist} -License: MPL +Release: 4%{?dist} +License: MPLv1.1 Group: System Environment/Libraries URL: http://resare.com/libmp4v2/ Source0: http://resare.com/libmp4v2/dist/libmp4v2-%{version}.tar.bz2 @@ -68,6 +68,9 @@ using the libmp4v2 library. %changelog +* Sun Aug 5 2007 Matthias Saou 1.5.0.1-4 +- Update License field. + * Fri Dec 15 2006 Matthias Saou 1.5.0.1-3 - Spec file cleanup (habits, mostly) preparing to submit for Extras inclusion. From 63dd74666cf925c128bd9281728672ea59c53e1e Mon Sep 17 00:00:00 2001 From: Matthias Saou Date: Wed, 22 Aug 2007 17:42:20 +0000 Subject: [PATCH 03/76] Rebuild for new BuildID feature. --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index e6062e0..ae7e23f 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,7 +1,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 1.5.0.1 -Release: 4%{?dist} +Release: 5%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://resare.com/libmp4v2/ @@ -68,6 +68,9 @@ using the libmp4v2 library. %changelog +* Wed Aug 22 2007 Matthias Saou 1.5.0.1-5 +- Rebuild for new BuildID feature. + * Sun Aug 5 2007 Matthias Saou 1.5.0.1-4 - Update License field. From 2de6c8cead2211a6f2c386df4d1936a9a7513cbe Mon Sep 17 00:00:00 2001 From: Jesse Keating Date: Wed, 20 Feb 2008 04:20:29 +0000 Subject: [PATCH 04/76] - Autorebuild for GCC 4.3 --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index ae7e23f..dc4f24e 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,7 +1,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 1.5.0.1 -Release: 5%{?dist} +Release: 6%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://resare.com/libmp4v2/ @@ -68,6 +68,9 @@ using the libmp4v2 library. %changelog +* Tue Feb 19 2008 Fedora Release Engineering - 1.5.0.1-6 +- Autorebuild for GCC 4.3 + * Wed Aug 22 2007 Matthias Saou 1.5.0.1-5 - Rebuild for new BuildID feature. From f993f881cbe5b96cd2368f174816f4540724b844 Mon Sep 17 00:00:00 2001 From: Jesse Keating Date: Wed, 25 Feb 2009 16:22:49 +0000 Subject: [PATCH 05/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index dc4f24e..9314be1 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,7 +1,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 1.5.0.1 -Release: 6%{?dist} +Release: 7%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://resare.com/libmp4v2/ @@ -68,6 +68,9 @@ using the libmp4v2 library. %changelog +* Wed Feb 25 2009 Fedora Release Engineering - 1.5.0.1-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + * Tue Feb 19 2008 Fedora Release Engineering - 1.5.0.1-6 - Autorebuild for GCC 4.3 From cfa77e1b39e76069122896706653344fcfe356ec Mon Sep 17 00:00:00 2001 From: Caolan McNamara Date: Sun, 1 Mar 2009 17:46:10 +0000 Subject: [PATCH 06/76] constify rets of strchr(const char*) --- libmp4v2.spec | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libmp4v2.spec b/libmp4v2.spec index 9314be1..aa19497 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -8,6 +8,7 @@ URL: http://resare.com/libmp4v2/ Source0: http://resare.com/libmp4v2/dist/libmp4v2-%{version}.tar.bz2 # Only here to be in the source package, "just in case, and FYI" Source1: http://resare.com/libmp4v2/mklibmp4v2/mklibmp4v2-r51.tar.bz2 +Patch0: libmp4v2-1.5.0.1-consts.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root %description @@ -28,6 +29,7 @@ using the libmp4v2 library. %prep %setup -q +%patch0 -p1 -b .consts %build @@ -68,6 +70,9 @@ using the libmp4v2 library. %changelog +* Sun Mar 01 2009 Caolán McNamara - 1.5.0.1-8 +- constify rets of strchr(const char*) + * Wed Feb 25 2009 Fedora Release Engineering - 1.5.0.1-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild From 88204d7ec861da8f6c2fcda061e02b09933d92a0 Mon Sep 17 00:00:00 2001 From: Caolan McNamara Date: Sun, 1 Mar 2009 17:53:48 +0000 Subject: [PATCH 07/76] constify rets of strchr(const char*) --- libmp4v2-1.5.0.1-consts.patch | 12 ++++++++++++ libmp4v2.spec | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 libmp4v2-1.5.0.1-consts.patch diff --git a/libmp4v2-1.5.0.1-consts.patch b/libmp4v2-1.5.0.1-consts.patch new file mode 100644 index 0000000..ad80257 --- /dev/null +++ b/libmp4v2-1.5.0.1-consts.patch @@ -0,0 +1,12 @@ +diff -ru libmp4v2-1.5.0.1.orig/rtphint.cpp libmp4v2-1.5.0.1/rtphint.cpp +--- libmp4v2-1.5.0.1.orig/rtphint.cpp 2009-03-01 17:39:24.000000000 +0000 ++++ libmp4v2-1.5.0.1/rtphint.cpp 2009-03-01 17:39:58.000000000 +0000 +@@ -314,7 +314,7 @@ + char **ppEncodingParams) + { + const char* pRtpMap; +- char* pSlash; ++ const char* pSlash; + u_int32_t length; + InitPayload(); + diff --git a/libmp4v2.spec b/libmp4v2.spec index aa19497..432233c 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,7 +1,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 1.5.0.1 -Release: 7%{?dist} +Release: 8%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://resare.com/libmp4v2/ From 9272e7ac6eccfac0728b87fc708e83470af62d75 Mon Sep 17 00:00:00 2001 From: Matthias Saou Date: Mon, 13 Jul 2009 11:32:47 +0000 Subject: [PATCH 08/76] Rebuild to fix runtime problems of the latest builds (#507302). --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 432233c..1a50783 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,7 +1,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 1.5.0.1 -Release: 8%{?dist} +Release: 9%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://resare.com/libmp4v2/ @@ -70,6 +70,9 @@ using the libmp4v2 library. %changelog +* Mon Jul 13 2009 Matthias Saou 1.5.0.1-9 +- Rebuild to fix runtime problems of the latest builds (#507302). + * Sun Mar 01 2009 Caolán McNamara - 1.5.0.1-8 - constify rets of strchr(const char*) From cbf91396dff5315fe6d4bf74cecaa622b6481552 Mon Sep 17 00:00:00 2001 From: Jesse Keating Date: Sat, 25 Jul 2009 06:08:01 +0000 Subject: [PATCH 09/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 1a50783..c0a2da5 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,7 +1,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 1.5.0.1 -Release: 9%{?dist} +Release: 10%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://resare.com/libmp4v2/ @@ -70,6 +70,9 @@ using the libmp4v2 library. %changelog +* Fri Jul 24 2009 Fedora Release Engineering - 1.5.0.1-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + * Mon Jul 13 2009 Matthias Saou 1.5.0.1-9 - Rebuild to fix runtime problems of the latest builds (#507302). From 1e1a5b67366a5993cee4b9552c2571677309a81e Mon Sep 17 00:00:00 2001 From: Bill Nottingham Date: Wed, 25 Nov 2009 23:51:04 +0000 Subject: [PATCH 10/76] Fix typo that causes a failure to update the common directory. (releng #2781) --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 9a673ec..c6bdf20 100644 --- a/Makefile +++ b/Makefile @@ -1,10 +1,10 @@ # Makefile for source rpm: libmp4v2 -# $Id$ +# $Id: Makefile,v 1.1 2007/02/12 17:39:29 notting Exp $ NAME := libmp4v2 SPECFILE = $(firstword $(wildcard *.spec)) define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done +for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done endef MAKEFILE_COMMON := $(shell $(find-makefile-common)) From 20553996841cad16cbbcd70a5113c5cf4ac0b4c2 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 28 Jul 2010 21:18:19 +0000 Subject: [PATCH 11/76] dist-git conversion --- .cvsignore => .gitignore | 0 Makefile | 21 --------------------- 2 files changed, 21 deletions(-) rename .cvsignore => .gitignore (100%) delete mode 100644 Makefile diff --git a/.cvsignore b/.gitignore similarity index 100% rename from .cvsignore rename to .gitignore diff --git a/Makefile b/Makefile deleted file mode 100644 index c6bdf20..0000000 --- a/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Makefile for source rpm: libmp4v2 -# $Id: Makefile,v 1.1 2007/02/12 17:39:29 notting Exp $ -NAME := libmp4v2 -SPECFILE = $(firstword $(wildcard *.spec)) - -define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done -endef - -MAKEFILE_COMMON := $(shell $(find-makefile-common)) - -ifeq ($(MAKEFILE_COMMON),) -# attept a checkout -define checkout-makefile-common -test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 -endef - -MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) -endif - -include $(MAKEFILE_COMMON) From fd65ff22db5be8ab90079a29b056511e9aba6d57 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Tue, 8 Feb 2011 02:22:38 -0600 Subject: [PATCH 12/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index c0a2da5..da1817e 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,7 +1,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 1.5.0.1 -Release: 10%{?dist} +Release: 11%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://resare.com/libmp4v2/ @@ -70,6 +70,9 @@ using the libmp4v2 library. %changelog +* Tue Feb 08 2011 Fedora Release Engineering - 1.5.0.1-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + * Fri Jul 24 2009 Fedora Release Engineering - 1.5.0.1-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild From db8aeaf6644692a110e9a105487aa8aa4ad0c756 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Fri, 13 Jan 2012 02:03:47 -0600 Subject: [PATCH 13/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index da1817e..c7ad430 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,7 +1,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 1.5.0.1 -Release: 11%{?dist} +Release: 12%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://resare.com/libmp4v2/ @@ -70,6 +70,9 @@ using the libmp4v2 library. %changelog +* Fri Jan 13 2012 Fedora Release Engineering - 1.5.0.1-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + * Tue Feb 08 2011 Fedora Release Engineering - 1.5.0.1-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild From ebda69c249fb1739dc65463f257b9a196049894d Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Thu, 19 Jul 2012 15:29:12 -0500 Subject: [PATCH 14/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index c7ad430..aed100b 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,7 +1,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 1.5.0.1 -Release: 12%{?dist} +Release: 13%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://resare.com/libmp4v2/ @@ -70,6 +70,9 @@ using the libmp4v2 library. %changelog +* Thu Jul 19 2012 Fedora Release Engineering - 1.5.0.1-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + * Fri Jan 13 2012 Fedora Release Engineering - 1.5.0.1-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild From 09e3be42c8bc23abd410cc0cc78f593b1c9a9d1f Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Wed, 13 Feb 2013 22:45:57 -0600 Subject: [PATCH 15/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index aed100b..62e36e9 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,7 +1,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 1.5.0.1 -Release: 13%{?dist} +Release: 14%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://resare.com/libmp4v2/ @@ -70,6 +70,9 @@ using the libmp4v2 library. %changelog +* Thu Feb 14 2013 Fedora Release Engineering - 1.5.0.1-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + * Thu Jul 19 2012 Fedora Release Engineering - 1.5.0.1-13 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild From a17a2ade6d23dde869544861a9abf084c3da38b8 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sat, 3 Aug 2013 01:14:42 -0500 Subject: [PATCH 16/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 62e36e9..1d03632 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,7 +1,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 1.5.0.1 -Release: 14%{?dist} +Release: 15%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://resare.com/libmp4v2/ @@ -70,6 +70,9 @@ using the libmp4v2 library. %changelog +* Sat Aug 03 2013 Fedora Release Engineering - 1.5.0.1-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + * Thu Feb 14 2013 Fedora Release Engineering - 1.5.0.1-14 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild From 11d217819d3951ebc693b6f97cb41ba8d6016234 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Fri, 6 Jun 2014 23:27:59 -0500 Subject: [PATCH 17/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 1d03632..f2b087f 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,7 +1,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 1.5.0.1 -Release: 15%{?dist} +Release: 16%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://resare.com/libmp4v2/ @@ -70,6 +70,9 @@ using the libmp4v2 library. %changelog +* Sat Jun 07 2014 Fedora Release Engineering - 1.5.0.1-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + * Sat Aug 03 2013 Fedora Release Engineering - 1.5.0.1-15 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild From 1cef70e3ed397fc8f804b31ca4e8692347c6db6a Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Sun, 17 Aug 2014 04:39:32 +0000 Subject: [PATCH 18/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index f2b087f..1ddcb76 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,7 +1,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 1.5.0.1 -Release: 16%{?dist} +Release: 17%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://resare.com/libmp4v2/ @@ -70,6 +70,9 @@ using the libmp4v2 library. %changelog +* Sun Aug 17 2014 Fedora Release Engineering - 1.5.0.1-17 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + * Sat Jun 07 2014 Fedora Release Engineering - 1.5.0.1-16 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild From 8413e81cc47f60160f70b262a8c096e347845527 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20Basto?= Date: Fri, 9 Jan 2015 03:45:56 +0000 Subject: [PATCH 19/76] Update to upstream 2.0.0: Sat Mar 01 2014 Avi Alkalay - included some documentation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Mon Aug 02 2010 Honore Doktorr - update to upstream 2.0.0 Mon Aug 02 2010 François Kooman - update to upstream 1.9.1 - drop redundant patches - move README to main package - add cli-manuals to main package - no longer include the API documentation in devel package - move headers to /usr/include/mp4v2/* - remove *.la in install phase instead of excluding it while packaging --- .gitignore | 1 + libmp4v2-1.5.0.1-consts.patch | 12 --------- libmp4v2.spec | 51 +++++++++++++++++++---------------- sources | 3 +-- 4 files changed, 30 insertions(+), 37 deletions(-) delete mode 100644 libmp4v2-1.5.0.1-consts.patch diff --git a/.gitignore b/.gitignore index 1d1a4e5..fd9e016 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ libmp4v2-1.5.0.1.tar.bz2 mklibmp4v2-r51.tar.bz2 +/mp4v2-2.0.0.tar.bz2 diff --git a/libmp4v2-1.5.0.1-consts.patch b/libmp4v2-1.5.0.1-consts.patch deleted file mode 100644 index ad80257..0000000 --- a/libmp4v2-1.5.0.1-consts.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ru libmp4v2-1.5.0.1.orig/rtphint.cpp libmp4v2-1.5.0.1/rtphint.cpp ---- libmp4v2-1.5.0.1.orig/rtphint.cpp 2009-03-01 17:39:24.000000000 +0000 -+++ libmp4v2-1.5.0.1/rtphint.cpp 2009-03-01 17:39:58.000000000 +0000 -@@ -314,7 +314,7 @@ - char **ppEncodingParams) - { - const char* pRtpMap; -- char* pSlash; -+ const char* pSlash; - u_int32_t length; - InitPayload(); - diff --git a/libmp4v2.spec b/libmp4v2.spec index 1ddcb76..4ef3b8f 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,14 +1,11 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 -Version: 1.5.0.1 -Release: 17%{?dist} +Version: 2.0.0 +Release: 1%{?dist} License: MPLv1.1 Group: System Environment/Libraries -URL: http://resare.com/libmp4v2/ -Source0: http://resare.com/libmp4v2/dist/libmp4v2-%{version}.tar.bz2 -# Only here to be in the source package, "just in case, and FYI" -Source1: http://resare.com/libmp4v2/mklibmp4v2/mklibmp4v2-r51.tar.bz2 -Patch0: libmp4v2-1.5.0.1-consts.patch +URL: http://code.google.com/p/mp4v2 +Source0: http://mp4v2.googlecode.com/files/mp4v2-%{version}.tar.bz2 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root %description @@ -28,8 +25,7 @@ using the libmp4v2 library. %prep -%setup -q -%patch0 -p1 -b .consts +%setup -q -n mp4v2-%{version} %build @@ -40,14 +36,8 @@ using the libmp4v2 library. %install -%{__rm} -rf %{buildroot} %{__make} install DESTDIR=%{buildroot} -%{__rm} -rf %{buildroot}%{_mandir}/manm/ - - -%clean -%{__rm} -rf %{buildroot} - +find %{buildroot} -name '*.la' -exec rm -f {} ';' %post -p /sbin/ldconfig @@ -55,21 +45,36 @@ using the libmp4v2 library. %files -%defattr(-,root,root,0755) -%doc COPYING +%defattr(-,root,root,-) +%doc README COPYING doc/Documentation.txt doc/Authors.txt doc/ReleaseNotes.txt doc/BuildSource.txt doc/ToolGuide.txt %{_bindir}/* %{_libdir}/*.so.* +%{_mandir}/man1/* %files devel -%defattr(-,root,root,0755) -%doc README TODO INTERNALS API_CHANGES -%{_includedir}/*.h -%exclude %{_libdir}/*.la +%defattr(-,root,root,-) +%{_includedir}/mp4v2/*.h %{_libdir}/*.so -%{_mandir}/man?/* %changelog +* Fri Jan 09 2015 Sérgio Basto - 2.0.0-1 + + Sat Mar 01 2014 Avi Alkalay + - included some documentation + + Mon Aug 02 2010 Honore Doktorr + - update to upstream 2.0.0 + + Mon Aug 02 2010 François Kooman + - update to upstream 1.9.1 + - drop redundant patches + - move README to main package + - add cli-manuals to main package + - no longer include the API documentation in devel package + - move headers to /usr/include/mp4v2/* + - remove *.la in install phase instead of excluding it while packaging + * Sun Aug 17 2014 Fedora Release Engineering - 1.5.0.1-17 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild diff --git a/sources b/sources index 1087476..a196ed4 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -90eb2b0940ebe02ef81b7a60530beaee libmp4v2-1.5.0.1.tar.bz2 -4b4abb862b079a7e296c891d96faebc9 mklibmp4v2-r51.tar.bz2 +c91f06711225b34b4c192c9114887b14 mp4v2-2.0.0.tar.bz2 From 5e0b6a45962f774090e7ee0b8d5290f185738503 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Sat, 10 Jan 2015 08:32:53 -0600 Subject: [PATCH 20/76] 2.0.0-2 - track library soname, so bumps aren't a surprise - -devel: own %_includedir/mp4v2/ --- libmp4v2.spec | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 4ef3b8f..8be8759 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,7 +1,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.0.0 -Release: 1%{?dist} +Release: 2%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 @@ -48,16 +48,20 @@ find %{buildroot} -name '*.la' -exec rm -f {} ';' %defattr(-,root,root,-) %doc README COPYING doc/Documentation.txt doc/Authors.txt doc/ReleaseNotes.txt doc/BuildSource.txt doc/ToolGuide.txt %{_bindir}/* -%{_libdir}/*.so.* +%{_libdir}/libmp4v2.so.2* %{_mandir}/man1/* %files devel %defattr(-,root,root,-) -%{_includedir}/mp4v2/*.h -%{_libdir}/*.so +%{_includedir}/mp4v2/ +%{_libdir}/libmp4v2.so %changelog +* Sat Jan 10 2015 Rex Dieter - 2.0.0-2 +- track library soname, so bumps aren't a surprise +- -devel: own %%_includedir/mp4v2/ + * Fri Jan 09 2015 Sérgio Basto - 2.0.0-1 Sat Mar 01 2014 Avi Alkalay From 78183b57b31a1a618f1257c5810f7d3de7349a0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20Basto?= Date: Thu, 23 Apr 2015 00:34:30 +0100 Subject: [PATCH 21/76] Update pre release 2.1.0, svn trunk version REV 507 . --- .gitignore | 2 ++ libmp4v2.spec | 31 +++++++++++++++++++++++++------ sources | 3 ++- 3 files changed, 29 insertions(+), 7 deletions(-) diff --git a/.gitignore b/.gitignore index fd9e016..d30571c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ libmp4v2-1.5.0.1.tar.bz2 mklibmp4v2-r51.tar.bz2 /mp4v2-2.0.0.tar.bz2 +/mp4v2-trunk-r507.tar.bz2 +/mp4v2-docs.tar.gz diff --git a/libmp4v2.spec b/libmp4v2.spec index 8be8759..4be6558 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -1,12 +1,27 @@ +%global svnversion 507 +%global gver .trunkREV%{svnversion} + Summary: Library for working with files using the mp4 container format Name: libmp4v2 -Version: 2.0.0 -Release: 2%{?dist} +Version: 2.1.0 +Release: 0.2%{gver}%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 -Source0: http://mp4v2.googlecode.com/files/mp4v2-%{version}.tar.bz2 -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root +# references: https://code.google.com/p/mp4v2/issues/detail?id=177 +#svn co http://mp4v2.googlecode.com/svn/trunk/ trunk-svn +#cd trunk-svn/ +#autoreconf -fiv +#mkdir build/ +#cd build/ +#../configure +#make +#edit ../doc/GNUmakefile.mk +#make dist +Source0: http://mp4v2.googlecode.com/files/mp4v2-trunk-r%{svnversion}.tar.bz2 +# doc aren't is distribution +Source1: mp4v2-docs.tar.gz +BuildRequires: autoconf automake gettext-devel %description The libmp4v2 library provides an abstraction layer for working with files @@ -25,10 +40,11 @@ using the libmp4v2 library. %prep -%setup -q -n mp4v2-%{version} - +%setup -q -n mp4v2-trunk-r%{svnversion} +%setup -q -a1 -n mp4v2-trunk-r%{svnversion} %build +autoreconf -fiv %configure \ --disable-static \ --disable-dependency-tracking @@ -58,6 +74,9 @@ find %{buildroot} -name '*.la' -exec rm -f {} ';' %changelog +* Wed Apr 22 2015 Sérgio Basto - 2.1.0-0.1.trunkREV507 +- Update pre release 2.1.0, svn trunk version REV 507 . + * Sat Jan 10 2015 Rex Dieter - 2.0.0-2 - track library soname, so bumps aren't a surprise - -devel: own %%_includedir/mp4v2/ diff --git a/sources b/sources index a196ed4..a120b86 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ -c91f06711225b34b4c192c9114887b14 mp4v2-2.0.0.tar.bz2 +d967136a59366646e634a7398ae0acfa mp4v2-trunk-r507.tar.bz2 +a601baaf649be8a93edb8052558ff583 mp4v2-docs.tar.gz From 09282d3b83f10450aab13ad83cbf2b372fc21375 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20Basto?= Date: Thu, 23 Apr 2015 16:04:28 +0100 Subject: [PATCH 22/76] Fix relversion and add libtool to BR. --- libmp4v2.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 4be6558..1795c29 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.2%{gver}%{?dist} +Release: 0.1%{gver}%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 @@ -21,7 +21,7 @@ URL: http://code.google.com/p/mp4v2 Source0: http://mp4v2.googlecode.com/files/mp4v2-trunk-r%{svnversion}.tar.bz2 # doc aren't is distribution Source1: mp4v2-docs.tar.gz -BuildRequires: autoconf automake gettext-devel +BuildRequires: autoconf automake gettext-devel libtool %description The libmp4v2 library provides an abstraction layer for working with files From 0e5404adbf386e18f9330b16e680e4237198751c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20Basto?= Date: Fri, 24 Apr 2015 18:17:23 +0100 Subject: [PATCH 23/76] Use trunk source, not source generated with make dist --- libmp4v2.spec | 30 +++--- make-svn-snapshot.sh | 27 +++++ mp4v2-2.1-fixdoc.patch | 219 +++++++++++++++++++++++++++++++++++++++++ sources | 3 +- 4 files changed, 262 insertions(+), 17 deletions(-) create mode 100755 make-svn-snapshot.sh create mode 100644 mp4v2-2.1-fixdoc.patch diff --git a/libmp4v2.spec b/libmp4v2.spec index 1795c29..cf7ea95 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,24 +4,17 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.1%{gver}%{?dist} +Release: 0.2%{gver}%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 # references: https://code.google.com/p/mp4v2/issues/detail?id=177 -#svn co http://mp4v2.googlecode.com/svn/trunk/ trunk-svn -#cd trunk-svn/ -#autoreconf -fiv -#mkdir build/ -#cd build/ -#../configure -#make -#edit ../doc/GNUmakefile.mk -#make dist +# mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh Source0: http://mp4v2.googlecode.com/files/mp4v2-trunk-r%{svnversion}.tar.bz2 -# doc aren't is distribution -Source1: mp4v2-docs.tar.gz -BuildRequires: autoconf automake gettext-devel libtool +Source1: make-svn-snapshot.sh +# upstreamable patch +Patch0: mp4v2-2.1-fixdoc.patch +BuildRequires: autoconf automake gettext-devel libtool texinfo svn %description The libmp4v2 library provides an abstraction layer for working with files @@ -40,8 +33,8 @@ using the libmp4v2 library. %prep -%setup -q -n mp4v2-trunk-r%{svnversion} -%setup -q -a1 -n mp4v2-trunk-r%{svnversion} +%setup -q -n mp4v2-trunk +%patch0 -p0 -b .doc %build autoreconf -fiv @@ -49,12 +42,16 @@ autoreconf -fiv --disable-static \ --disable-dependency-tracking %{__make} %{?_smp_mflags} +%{__make} txt %install %{__make} install DESTDIR=%{buildroot} find %{buildroot} -name '*.la' -exec rm -f {} ';' +# from dist-hook of doc/GNUmakefile.mk +install -c -m 644 ./doc/articles/txt/ReleaseNotes.txt ./doc/articles/txt/BuildRepository.txt ./doc/articles/txt/ToolGuide.txt ./doc/articles/txt/Documentation.txt ./doc/articles/txt/BuildSource.txt ./doc/articles/txt/Authors.txt ./doc/. + %post -p /sbin/ldconfig %postun -p /sbin/ldconfig @@ -74,6 +71,9 @@ find %{buildroot} -name '*.la' -exec rm -f {} ';' %changelog +* Fri Apr 24 2015 Sérgio Basto - 2.1.0-0.2.trunkREV507 +- Use trunk source, not source generated with make dist + * Wed Apr 22 2015 Sérgio Basto - 2.1.0-0.1.trunkREV507 - Update pre release 2.1.0, svn trunk version REV 507 . diff --git a/make-svn-snapshot.sh b/make-svn-snapshot.sh new file mode 100755 index 0000000..837c6a6 --- /dev/null +++ b/make-svn-snapshot.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +set -e + +tmp=$(mktemp -d) + +trap cleanup EXIT +cleanup() { + set +e + [ -z "$tmp" -o ! -d "$tmp" ] || rm -rf "$tmp" +} + +unset CDPATH +pwd=$(pwd) +svn=$(date +%Y-%m-%d) +dirname=mp4v2-trunk +rev={$svn} +#mplayer_rev=HEAD + +cd "$tmp" +svn checkout http://mp4v2.googlecode.com/svn/trunk/ $dirname +cd $dirname + +svn_revision=`LC_ALL=C svn info 2> /dev/null | grep Revision | cut -d' ' -f2` +cd .. +tar jcf "$pwd"/$dirname-r$svn_revision.tar.bz2 $dirname +cd - >/dev/null diff --git a/mp4v2-2.1-fixdoc.patch b/mp4v2-2.1-fixdoc.patch new file mode 100644 index 0000000..19b7fd2 --- /dev/null +++ b/mp4v2-2.1-fixdoc.patch @@ -0,0 +1,219 @@ +--- configure.ac (revision 507) ++++ configure.ac (working copy) +@@ -35,6 +35,7 @@ + -->]) + + AC_CONFIG_AUX_DIR([autoaux]) ++AC_CONFIG_MACRO_DIR([m4]) + AM_INIT_AUTOMAKE([1.9.6 foreign -Wall -Wno-portability -Werror subdir-objects nostdinc no-dist-gzip dist-bzip2 dist-zip dejagnu]) + + AC_CONFIG_SRCDIR([src/mp4.cpp]) +--- doc/GNUmakefile.mk (revision 507) ++++ doc/GNUmakefile.mk (working copy) +@@ -384,4 +384,4 @@ + ############################################################################### + + $(sort $(MKDIRS)): +- $(mkdir_p) $@ ++ $(mkdir_p) $(sort $(MKDIRS)) +--- doc/texi/Authors.texi (revision 507) ++++ doc/texi/Authors.texi (working copy) +@@ -1,4 +1,4 @@ +-@input texinfo @c -*- Texinfo -*- ++\input texinfo @c -*- Texinfo -*- + @c %**start of header + @setfilename Authors.info + @include base/article.texi +--- doc/texi/BuildRepository.texi (revision 507) ++++ doc/texi/BuildRepository.texi (working copy) +@@ -1,4 +1,4 @@ +-@input texinfo @c -*- Texinfo -*- ++\input texinfo @c -*- Texinfo -*- + @c %**start of header + @setfilename BuildRepository.info + @include base/article.texi +@@ -19,12 +19,12 @@ + This chapter is for the impatient or those just looking for a quick summary of all the commands used in a typical build. You may skip this summary and jump to @ref{Build Process}. + + @example +-@COMMAND.checkout{} +-@COMMAND.bootstrap{} +-@COMMAND.configure{} +-@COMMAND.build{} +-@COMMAND.install{} +-@COMMAND.dist{} ++@COMMANDcheckout{} ++@COMMANDbootstrap{} ++@COMMANDconfigure{} ++@COMMANDbuild{} ++@COMMANDinstall{} ++@COMMANDdist{} + @end example + + @anchor{Build Process} +--- doc/texi/BuildSource.texi (revision 507) ++++ doc/texi/BuildSource.texi (working copy) +@@ -1,4 +1,4 @@ +-@input texinfo @c -*- Texinfo -*- ++\input texinfo @c -*- Texinfo -*- + @c %**start of header + @setfilename BuildSource.info + @include base/article.texi +@@ -19,10 +19,10 @@ + This chapter is for the impatient or those just looking for a quick summary of all the commands used in a typical build. You may skip this summary and jump to @ref{Build Process}. + + @example +-@COMMAND.extract{} +-@COMMAND.configure{} +-@COMMAND.build{} +-@COMMAND.install{} ++@COMMANDextract{} ++@COMMANDconfigure{} ++@COMMANDbuild{} ++@COMMANDinstall{} + @end example + + @anchor{Build Process} +--- doc/texi/Documentation.texi (revision 507) ++++ doc/texi/Documentation.texi (working copy) +@@ -1,4 +1,4 @@ +-@input texinfo @c -*- Texinfo -*- ++\input texinfo @c -*- Texinfo -*- + @c %**start of header + @setfilename Documentation.info + @include base/article.texi +--- doc/texi/ReleaseNotes.texi (revision 507) ++++ doc/texi/ReleaseNotes.texi (working copy) +@@ -1,4 +1,4 @@ +-@input texinfo @c -*- Texinfo -*- ++\input texinfo @c -*- Texinfo -*- + @c %**start of header + @setfilename ReleaseNotes.info + @include base/article.texi +--- doc/texi/ToolGuide.texi (revision 507) ++++ doc/texi/ToolGuide.texi (working copy) +@@ -1,4 +1,4 @@ +-@input texinfo @c -*- Texinfo -*- ++\input texinfo @c -*- Texinfo -*- + @c %**start of header + @setfilename ToolGuide.info + @include base/guide.texi +--- doc/texi/build/commands.texi (revision 507) ++++ doc/texi/build/commands.texi (working copy) +@@ -1,18 +1,18 @@ +-@macro COMMAND.checkout{} ++@macro COMMANDcheckout{} + svn checkout @value{PROJECT.repo.url} @value{PROJECT.name.lower} + cd @value{PROJECT.name.lower} + @end macro + +-@macro COMMAND.bootstrap{} ++@macro COMMANDbootstrap{} + autoreconf -fiv + @end macro + +-@macro COMMAND.extract{} ++@macro COMMANDextract{} + tar xf @value{PROJECT.name.lower}-@value{PROJECT.version}.tar.bz2 + cd @value{PROJECT.name.lower}-@value{PROJECT.version}/ + @end macro + +-@macro COMMAND.configure{} ++@macro COMMANDconfigure{} + rm -fr build/ + mkdir build/ + cd build/ +@@ -19,15 +19,15 @@ + ../configure + @end macro + +-@macro COMMAND.build{} ++@macro COMMANDbuild{} + make + @end macro + +-@macro COMMAND.install{} ++@macro COMMANDinstall{} + make install + make install-man + @end macro + +-@macro COMMAND.dist{} ++@macro COMMANDdist{} + make dist + @end macro +--- doc/texi/build/process.bootstrap.texi (revision 507) ++++ doc/texi/build/process.bootstrap.texi (working copy) +@@ -3,7 +3,7 @@ + The following command causes forces Autotools to regenerate all files and install helper scripts needed at configure-time and to regenerate all files. + + @example +-@COMMAND.bootstrap{} ++@COMMANDbootstrap{} + @end example + + If you are a project member and preparing for a release, it is important to note that the versions of Autotools available in your path will directly effect files added to the bundle. At the time of writing, the following versions of Autotools are recommended; in some cases a minimum is hard-coded and warnings will be issued if in violation: +--- doc/texi/build/process.build.texi (revision 507) ++++ doc/texi/build/process.build.texi (working copy) +@@ -3,7 +3,7 @@ + The following command will build @value{PROJECT.name}. + + @example +-@COMMAND.build{} ++@COMMANDbuild{} + @end example + + On some platforms @code{make} refers to a BSD-flavor of make which is not compatible with this project. Check if @code{gmake} is installed, and if it is, substitute @code{gmake} wherever you may see @code{make} in this document. Otherwise you will need to install GNU make package version 3.81 or higher. Lower versions might work. +--- doc/texi/build/process.checkout.texi (revision 507) ++++ doc/texi/build/process.checkout.texi (working copy) +@@ -7,7 +7,7 @@ + If you are a project member, then you may add the appropriate login/password information as needed. + + @example +-@COMMAND.checkout{} ++@COMMANDcheckout{} + @end example + + It is recommended to use Subversion 1.5.0 or higher. +--- doc/texi/build/process.configure.texi (revision 507) ++++ doc/texi/build/process.configure.texi (working copy) +@@ -3,7 +3,7 @@ + The following command configures the project for a build. It is highly recommended that you invoke configure from an empty directory. + + @example +-@COMMAND.configure{} ++@COMMANDconfigure{} + @end example + + Please see @file{INSTALL} for details on configure usage, and standard options. Additionally, the following custom options have been added to @file{configure}: +--- doc/texi/build/process.dist.texi (revision 507) ++++ doc/texi/build/process.dist.texi (working copy) +@@ -3,7 +3,7 @@ + The following command will create a @value{PROJECT.name} source distribution. It is during this step that shipped documentation is generated. + + @example +-@COMMAND.dist{} ++@COMMANDdist{} + @end example + + This step in the build process introduces additional requirements to the host system. While most of the following utilities are generally available, @command{help2man} is used to generate man-pages; however if this command is not available the man-pages will be empty. This is acceptable for non-release builds but for full quality builds this command is required. +--- doc/texi/build/process.extract.texi (revision 507) ++++ doc/texi/build/process.extract.texi (working copy) +@@ -2,7 +2,7 @@ + Extract sources from a @value{TERM.srcdist} bundle. Releases are available from @url{@value{PROJECT.url.website}} in the @url{@value{PROJECT.url.downloads},downloads} section. + + @example +-@COMMAND.extract{} ++@COMMANDextract{} + @end example + + Older versions of @code{tar} may not automatically uncompress the bundle, so you might have to either enter additional flags manually, or first decompress the bundle before extracting. Some possible command variations for uncompressing a @file{bz2} file: +--- doc/texi/build/process.install.texi (revision 507) ++++ doc/texi/build/process.install.texi (working copy) +@@ -4,5 +4,5 @@ + The following command will install @value{PROJECT.name}. + + @example +-@COMMAND.install{} ++@COMMANDinstall{} + @end example diff --git a/sources b/sources index a120b86..571c8b5 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -d967136a59366646e634a7398ae0acfa mp4v2-trunk-r507.tar.bz2 -a601baaf649be8a93edb8052558ff583 mp4v2-docs.tar.gz +5a0f7e66014a0ffc55484765435ed1ad mp4v2-trunk-r507.tar.bz2 From 0323a156ff17bc53f3c0ad224c8171e5eff00587 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Wed, 17 Jun 2015 16:07:23 +0000 Subject: [PATCH 24/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index cf7ea95..7d8ae0b 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.2%{gver}%{?dist} +Release: 0.3%{gver}%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 @@ -71,6 +71,9 @@ install -c -m 644 ./doc/articles/txt/ReleaseNotes.txt ./doc/articles/txt/BuildRe %changelog +* Wed Jun 17 2015 Fedora Release Engineering - 2.1.0-0.3.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + * Fri Apr 24 2015 Sérgio Basto - 2.1.0-0.2.trunkREV507 - Use trunk source, not source generated with make dist From c04885a74dc05ed4bf0225e02c7f80acf155d67a Mon Sep 17 00:00:00 2001 From: David King Date: Fri, 2 Oct 2015 16:51:21 -0400 Subject: [PATCH 25/76] Remove obsolete tags --- libmp4v2.spec | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 7d8ae0b..9f903f1 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.3%{gver}%{?dist} +Release: 0.4%{gver}%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 @@ -58,19 +58,20 @@ install -c -m 644 ./doc/articles/txt/ReleaseNotes.txt ./doc/articles/txt/BuildRe %files -%defattr(-,root,root,-) %doc README COPYING doc/Documentation.txt doc/Authors.txt doc/ReleaseNotes.txt doc/BuildSource.txt doc/ToolGuide.txt %{_bindir}/* %{_libdir}/libmp4v2.so.2* %{_mandir}/man1/* %files devel -%defattr(-,root,root,-) %{_includedir}/mp4v2/ %{_libdir}/libmp4v2.so %changelog +* Fri Oct 02 2015 David King - 2.1.0-0.4.trunkREV507 +- Remove obsolete tags + * Wed Jun 17 2015 Fedora Release Engineering - 2.1.0-0.3.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild From 4c90d014d02f5f78b50fda1e9c455d9f0486754a Mon Sep 17 00:00:00 2001 From: David King Date: Fri, 2 Oct 2015 16:54:56 -0400 Subject: [PATCH 26/76] Use license macro for COPYING --- libmp4v2.spec | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 9f903f1..07d1c60 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -58,7 +58,8 @@ install -c -m 644 ./doc/articles/txt/ReleaseNotes.txt ./doc/articles/txt/BuildRe %files -%doc README COPYING doc/Documentation.txt doc/Authors.txt doc/ReleaseNotes.txt doc/BuildSource.txt doc/ToolGuide.txt +%doc doc/Documentation.txt doc/Authors.txt doc/ReleaseNotes.txt doc/BuildSource.txt doc/ToolGuide.txt +%license COPYING %{_bindir}/* %{_libdir}/libmp4v2.so.2* %{_mandir}/man1/* @@ -71,6 +72,7 @@ install -c -m 644 ./doc/articles/txt/ReleaseNotes.txt ./doc/articles/txt/BuildRe %changelog * Fri Oct 02 2015 David King - 2.1.0-0.4.trunkREV507 - Remove obsolete tags +- Use license macro for COPYING * Wed Jun 17 2015 Fedora Release Engineering - 2.1.0-0.3.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild From c65d5dfc7a467ec334cd5380133fa5562beb5aa5 Mon Sep 17 00:00:00 2001 From: David King Date: Fri, 2 Oct 2015 16:56:48 -0400 Subject: [PATCH 27/76] Tighten requirements on base package --- libmp4v2.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 07d1c60..1021718 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -25,7 +25,7 @@ and is an exact copy of the library distributed in the mpeg4ip package. %package devel Summary: Development files for the mp4v2 library Group: Development/Libraries -Requires: %{name} = %{version}-%{release} +Requires: %{name}%{_isa} = %{version}-%{release} %description devel Development files and documentation needed to develop and compile programs @@ -73,6 +73,7 @@ install -c -m 644 ./doc/articles/txt/ReleaseNotes.txt ./doc/articles/txt/BuildRe * Fri Oct 02 2015 David King - 2.1.0-0.4.trunkREV507 - Remove obsolete tags - Use license macro for COPYING +- Tighten requirements on base package * Wed Jun 17 2015 Fedora Release Engineering - 2.1.0-0.3.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild From dba69489179a91013b385e0eabe5ee341b5846df Mon Sep 17 00:00:00 2001 From: David King Date: Fri, 2 Oct 2015 17:06:45 -0400 Subject: [PATCH 28/76] Update man pages glob in files section https://fedoraproject.org/wiki/Packaging:Guidelines#Manpages --- libmp4v2.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 1021718..873b8e7 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -62,7 +62,7 @@ install -c -m 644 ./doc/articles/txt/ReleaseNotes.txt ./doc/articles/txt/BuildRe %license COPYING %{_bindir}/* %{_libdir}/libmp4v2.so.2* -%{_mandir}/man1/* +%{_mandir}/man1/mp4*.1* %files devel %{_includedir}/mp4v2/ @@ -74,6 +74,7 @@ install -c -m 644 ./doc/articles/txt/ReleaseNotes.txt ./doc/articles/txt/BuildRe - Remove obsolete tags - Use license macro for COPYING - Tighten requirements on base package +- Update man pages glob in files section * Wed Jun 17 2015 Fedora Release Engineering - 2.1.0-0.3.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild From 9b953eb227d22fb651cb3318698686936873047e Mon Sep 17 00:00:00 2001 From: David King Date: Fri, 2 Oct 2015 17:28:39 -0400 Subject: [PATCH 29/76] Tidy spec file --- libmp4v2.spec | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 873b8e7..0612526 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -37,17 +37,15 @@ using the libmp4v2 library. %patch0 -p0 -b .doc %build -autoreconf -fiv -%configure \ - --disable-static \ - --disable-dependency-tracking +autoreconf --force --install --verbose +%configure --disable-static %{__make} %{?_smp_mflags} %{__make} txt %install %{__make} install DESTDIR=%{buildroot} -find %{buildroot} -name '*.la' -exec rm -f {} ';' +find %{buildroot} -name '*.la' -delete # from dist-hook of doc/GNUmakefile.mk install -c -m 644 ./doc/articles/txt/ReleaseNotes.txt ./doc/articles/txt/BuildRepository.txt ./doc/articles/txt/ToolGuide.txt ./doc/articles/txt/Documentation.txt ./doc/articles/txt/BuildSource.txt ./doc/articles/txt/Authors.txt ./doc/. @@ -75,6 +73,7 @@ install -c -m 644 ./doc/articles/txt/ReleaseNotes.txt ./doc/articles/txt/BuildRe - Use license macro for COPYING - Tighten requirements on base package - Update man pages glob in files section +- Tidy spec file * Wed Jun 17 2015 Fedora Release Engineering - 2.1.0-0.3.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild From d56815ad4022c562b74e934b427042f34cc3a744 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Sat, 3 Oct 2015 03:40:01 +0100 Subject: [PATCH 30/76] Tidy a little more. --- libmp4v2.spec | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 0612526..338182d 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -8,11 +8,11 @@ Release: 0.4%{gver}%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 -# references: https://code.google.com/p/mp4v2/issues/detail?id=177 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh Source0: http://mp4v2.googlecode.com/files/mp4v2-trunk-r%{svnversion}.tar.bz2 Source1: make-svn-snapshot.sh # upstreamable patch +# Reference: https://code.google.com/p/mp4v2/issues/detail?id=177 Patch0: mp4v2-2.1-fixdoc.patch BuildRequires: autoconf automake gettext-devel libtool texinfo svn @@ -47,16 +47,13 @@ autoreconf --force --install --verbose %{__make} install DESTDIR=%{buildroot} find %{buildroot} -name '*.la' -delete -# from dist-hook of doc/GNUmakefile.mk -install -c -m 644 ./doc/articles/txt/ReleaseNotes.txt ./doc/articles/txt/BuildRepository.txt ./doc/articles/txt/ToolGuide.txt ./doc/articles/txt/Documentation.txt ./doc/articles/txt/BuildSource.txt ./doc/articles/txt/Authors.txt ./doc/. - %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files -%doc doc/Documentation.txt doc/Authors.txt doc/ReleaseNotes.txt doc/BuildSource.txt doc/ToolGuide.txt +%doc doc/articles/txt/*txt %license COPYING %{_bindir}/* %{_libdir}/libmp4v2.so.2* From 222d26ad967f0f0c9ef098383601a33884bbe9a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Sun, 4 Oct 2015 17:50:25 +0100 Subject: [PATCH 31/76] Complete last commit. --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 338182d..f47e1e3 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.4%{gver}%{?dist} +Release: 0.5%{gver}%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 @@ -65,6 +65,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Sun Oct 04 2015 Sérgio Basto - 2.1.0-0.5.trunkREV507 +- Tidy a little more. + * Fri Oct 02 2015 David King - 2.1.0-0.4.trunkREV507 - Remove obsolete tags - Use license macro for COPYING From dc4fac311366b1975df16ce83d56fa9b6a66326d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Sun, 4 Oct 2015 17:57:03 +0100 Subject: [PATCH 32/76] Added mp4v2-2.1-fixdoc2.patch and api documentation into -devel package. --- libmp4v2.spec | 10 +++++ mp4v2-2.1-fixdoc2.patch | 95 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 105 insertions(+) create mode 100644 mp4v2-2.1-fixdoc2.patch diff --git a/libmp4v2.spec b/libmp4v2.spec index f47e1e3..4215c42 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -14,7 +14,9 @@ Source1: make-svn-snapshot.sh # upstreamable patch # Reference: https://code.google.com/p/mp4v2/issues/detail?id=177 Patch0: mp4v2-2.1-fixdoc.patch +Patch1: mp4v2-2.1-fixdoc2.patch BuildRequires: autoconf automake gettext-devel libtool texinfo svn +BuildRequires: python3 doxygen %description The libmp4v2 library provides an abstraction layer for working with files @@ -35,12 +37,15 @@ using the libmp4v2 library. %prep %setup -q -n mp4v2-trunk %patch0 -p0 -b .doc +%patch1 -p0 -b .doc2 %build autoreconf --force --install --verbose %configure --disable-static %{__make} %{?_smp_mflags} %{__make} txt +export LANG=en_US.utf8 +%{__make} api %install @@ -60,13 +65,18 @@ find %{buildroot} -name '*.la' -delete %{_mandir}/man1/mp4*.1* %files devel +%doc doc/api/html/ %{_includedir}/mp4v2/ %{_libdir}/libmp4v2.so +%{_mandir}/man3/MP4* %changelog * Sun Oct 04 2015 Sérgio Basto - 2.1.0-0.5.trunkREV507 - Tidy a little more. +- Added mp4v2-2.1-fixdoc2.patch : install man/man3/, BTW like in libmp4v2-1.5.0.1 + and fix 30 annoying warnings "target x given more than once in the same rule". +- Make api documentation and add it (doc/api/html/) into -devel package. * Fri Oct 02 2015 David King - 2.1.0-0.4.trunkREV507 - Remove obsolete tags diff --git a/mp4v2-2.1-fixdoc2.patch b/mp4v2-2.1-fixdoc2.patch new file mode 100644 index 0000000..00cb207 --- /dev/null +++ b/mp4v2-2.1-fixdoc2.patch @@ -0,0 +1,95 @@ +Install man/man3/, BTW like in libmp4v2-1.5.0.1 +Fix 30 annoying warnings "target x given more than once in the same rule" +--- ./GNUmakefile.am.orig 2015-10-03 16:32:32.790288451 +0100 ++++ ./GNUmakefile.am 2015-10-03 17:16:18.548015521 +0100 +@@ -296,6 +296,79 @@ if ADD_MANS + doc/man/man1/mp4file.1 \ + doc/man/man1/mp4subtitle.1 \ + doc/man/man1/mp4track.1 ++ man3_MANS = \ ++ doc/MP4.3 \ ++ doc/MP4AddRtpESConfigurationPacket.3 \ ++ doc/MP4AddRtpHint.3 \ ++ doc/MP4AddRtpImmediateData.3 \ ++ doc/MP4AddRtpPacket.3 \ ++ doc/MP4AddRtpSampleData.3 \ ++ doc/MP4AddRtpVideoHint.3 \ ++ doc/MP4AddTrackEdit.3 \ ++ doc/MP4AppendHintTrackSdp.3 \ ++ doc/MP4AppendSessionSdp.3 \ ++ doc/MP4BinaryToBase16.3 \ ++ doc/MP4BinaryToBase64.3 \ ++ doc/MP4CloneTrack.3 \ ++ doc/MP4ConvertFromMovieDuration.3 \ ++ doc/MP4ConvertFromTrackTimestamp.3 \ ++ doc/MP4ConvertToTrackTimestamp.3 \ ++ doc/MP4CopyTrack.3 \ ++ doc/MP4DeleteTrack.3 \ ++ doc/MP4DeleteTrackEdit.3 \ ++ doc/MP4FindTrackId.3 \ ++ doc/MP4FindTrackIndex.3 \ ++ doc/MP4GetAudioProfileLevel.3 \ ++ doc/MP4GetDuration.3 \ ++ doc/MP4GetGraphicsProfileLevel.3 \ ++ doc/MP4GetHintTrackReferenceTrackId.3 \ ++ doc/MP4GetHintTrackRtpPayload.3 \ ++ doc/MP4GetHintTrackSdp.3 \ ++ doc/MP4GetNumberOfTracks.3 \ ++ doc/MP4GetODProfileLevel.3 \ ++ doc/MP4GetRtpHintNumberOfPackets.3 \ ++ doc/MP4GetRtpPacketBFrame.3 \ ++ doc/MP4GetRtpPacketTransmitOffset.3 \ ++ doc/MP4GetRtpTimestampStart.3 \ ++ doc/MP4GetSampleIdFromEditTime.3 \ ++ doc/MP4GetSceneProfileLevel.3 \ ++ doc/MP4GetSessionSdp.3 \ ++ doc/MP4GetTrackAudioMpeg4Type.3 \ ++ doc/MP4GetTrackAudioType.3 \ ++ doc/MP4GetTrackBitRate.3 \ ++ doc/MP4GetTrackDuration.3 \ ++ doc/MP4GetTrackEditDuration.3 \ ++ doc/MP4GetTrackEditDwell.3 \ ++ doc/MP4GetTrackEditMediaStart.3 \ ++ doc/MP4GetTrackEditStart.3 \ ++ doc/MP4GetTrackEditTotalDuration.3 \ ++ doc/MP4GetTrackESConfiguration.3 \ ++ doc/MP4GetTrackFixedSampleDuration.3 \ ++ doc/MP4GetTrackNumberOfEdits.3 \ ++ doc/MP4GetTrackNumberOfSamples.3 \ ++ doc/MP4GetTrackVideoFrameRate.3 \ ++ doc/MP4GetTrackVideoHeight.3 \ ++ doc/MP4GetTrackVideoType.3 \ ++ doc/MP4GetTrackVideoWidth.3 \ ++ doc/MP4GetVideoProfileLevel.3 \ ++ doc/MP4MakeIsmaCompliant.3 \ ++ doc/MP4ReadRtpHint.3 \ ++ doc/MP4ReadRtpPacket.3 \ ++ doc/MP4ReadSampleFromEditTime.3 \ ++ doc/MP4SetAudioProfileLevel.3 \ ++ doc/MP4SetGraphicsProfileLevel.3 \ ++ doc/MP4SetHintTrackRtpPayload.3 \ ++ doc/MP4SetHintTrackSdp.3 \ ++ doc/MP4SetODProfileLevel.3 \ ++ doc/MP4SetRtpTimestampStart.3 \ ++ doc/MP4SetSceneProfileLevel.3 \ ++ doc/MP4SetSessionSdp.3 \ ++ doc/MP4SetTrackEditDuration.3 \ ++ doc/MP4SetTrackEditDwell.3 \ ++ doc/MP4SetTrackEditMediaStart.3 \ ++ doc/MP4SetTrackESConfiguration.3 \ ++ doc/MP4SetVideoProfileLevel.3 \ ++ doc/MP4WriteRtpHint.3 + endif + endif + +--- doc/GNUmakefile.mk.orig 2015-10-03 17:41:52.593061523 +0100 ++++ doc/GNUmakefile.mk 2015-10-04 00:34:23.260636428 +0100 +@@ -98,7 +98,7 @@ DOC.m4.out = \ + DOC.man.utils = mp4art mp4file mp4subtitle mp4track + DOC.man.out = $(DOC.man.utils:%=$(DOC.out/)man/man1/%.1) + +-DOC.texi.articles = $(wildcard $(DOC.in/)texi/*.texi $(DOC.out/)texi/*.texi) ++DOC.texi.articles = $(wildcard $(DOC.in/)texi/*.texi) + + DOC.texi.includes = \ + doc/texi/base/project.texi \ From 2194636c1633e0a8a10105935e86e43ad263a069 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Thu, 4 Feb 2016 03:33:23 +0000 Subject: [PATCH 33/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 4215c42..563bbd3 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.5%{gver}%{?dist} +Release: 0.6%{gver}%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 @@ -72,6 +72,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Thu Feb 04 2016 Fedora Release Engineering - 2.1.0-0.6.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + * Sun Oct 04 2015 Sérgio Basto - 2.1.0-0.5.trunkREV507 - Tidy a little more. - Added mp4v2-2.1-fixdoc2.patch : install man/man3/, BTW like in libmp4v2-1.5.0.1 From 3b47a1a9bf573134a08746aed626caef0138f3b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Mon, 6 Feb 2017 05:35:45 +0000 Subject: [PATCH 34/76] Fix python3 support in EPEL7 --- libmp4v2.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 563bbd3..3ec35d9 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.6%{gver}%{?dist} +Release: 0.7%{gver}%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 @@ -16,7 +16,7 @@ Source1: make-svn-snapshot.sh Patch0: mp4v2-2.1-fixdoc.patch Patch1: mp4v2-2.1-fixdoc2.patch BuildRequires: autoconf automake gettext-devel libtool texinfo svn -BuildRequires: python3 doxygen +BuildRequires: python%{python3_pkgversion} doxygen %description The libmp4v2 library provides an abstraction layer for working with files @@ -72,6 +72,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Mon Feb 06 2017 Sérgio Basto - 2.1.0-0.7.trunkREV507 +- Fix python3 support in EPEL7 + * Thu Feb 04 2016 Fedora Release Engineering - 2.1.0-0.6.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild From d7aeedabbcebf49c1356720362a4f6f78c1b2905 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Wed, 8 Feb 2017 01:12:48 +0000 Subject: [PATCH 35/76] Add patch for GCC7 Add new pactch 0003-Fix-out-of-tree-builds-182.patch Rename the others patches --- ...1-fixdoc.patch => 0001-Fix-make-dist.patch | 139 ++++++++++---- ...an-man3-BTW-like-in-libmp4v2-1.5.0.1.patch | 29 ++- 0003-Fix-out-of-tree-builds-182.patch | 169 ++++++++++++++++++ 0004-Fix-GCC7-build.patch | 30 ++++ libmp4v2.spec | 20 ++- 5 files changed, 337 insertions(+), 50 deletions(-) rename mp4v2-2.1-fixdoc.patch => 0001-Fix-make-dist.patch (57%) rename mp4v2-2.1-fixdoc2.patch => 0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch (79%) create mode 100644 0003-Fix-out-of-tree-builds-182.patch create mode 100644 0004-Fix-GCC7-build.patch diff --git a/mp4v2-2.1-fixdoc.patch b/0001-Fix-make-dist.patch similarity index 57% rename from mp4v2-2.1-fixdoc.patch rename to 0001-Fix-make-dist.patch index 19b7fd2..1558313 100644 --- a/mp4v2-2.1-fixdoc.patch +++ b/0001-Fix-make-dist.patch @@ -1,6 +1,35 @@ ---- configure.ac (revision 507) -+++ configure.ac (working copy) -@@ -35,6 +35,7 @@ +From 60e346211e53257d2fd0b39d4b89ce60c9053409 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= +Date: Wed, 7 Oct 2015 03:59:59 +0100 +Subject: [PATCH 1/4] Fix make dist. + +Makes fail because make doc fails . +for more information please see : +https://github.com/sergiomb2/libmp4v2/issues/177 +--- + configure.ac | 1 + + doc/GNUmakefile.mk | 2 +- + doc/texi/Authors.texi | 2 +- + doc/texi/BuildRepository.texi | 14 +++++++------- + doc/texi/BuildSource.texi | 10 +++++----- + doc/texi/Documentation.texi | 2 +- + doc/texi/ReleaseNotes.texi | 2 +- + doc/texi/ToolGuide.texi | 2 +- + doc/texi/build/commands.texi | 14 +++++++------- + doc/texi/build/process.bootstrap.texi | 2 +- + doc/texi/build/process.build.texi | 2 +- + doc/texi/build/process.checkout.texi | 2 +- + doc/texi/build/process.configure.texi | 2 +- + doc/texi/build/process.dist.texi | 2 +- + doc/texi/build/process.extract.texi | 2 +- + doc/texi/build/process.install.texi | 2 +- + 16 files changed, 32 insertions(+), 31 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 83e9dce..8316c67 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -35,6 +35,7 @@ AC_MSG_NOTICE([ -->]) AC_CONFIG_AUX_DIR([autoaux]) @@ -8,31 +37,37 @@ AM_INIT_AUTOMAKE([1.9.6 foreign -Wall -Wno-portability -Werror subdir-objects nostdinc no-dist-gzip dist-bzip2 dist-zip dejagnu]) AC_CONFIG_SRCDIR([src/mp4.cpp]) ---- doc/GNUmakefile.mk (revision 507) -+++ doc/GNUmakefile.mk (working copy) -@@ -384,4 +384,4 @@ +diff --git a/doc/GNUmakefile.mk b/doc/GNUmakefile.mk +index 131b03f..dadb234 100644 +--- a/doc/GNUmakefile.mk ++++ b/doc/GNUmakefile.mk +@@ -384,4 +384,4 @@ clean-local: ############################################################################### $(sort $(MKDIRS)): - $(mkdir_p) $@ + $(mkdir_p) $(sort $(MKDIRS)) ---- doc/texi/Authors.texi (revision 507) -+++ doc/texi/Authors.texi (working copy) +diff --git a/doc/texi/Authors.texi b/doc/texi/Authors.texi +index 9ec4920..74f2cb8 100644 +--- a/doc/texi/Authors.texi ++++ b/doc/texi/Authors.texi @@ -1,4 +1,4 @@ -@input texinfo @c -*- Texinfo -*- +\input texinfo @c -*- Texinfo -*- @c %**start of header @setfilename Authors.info @include base/article.texi ---- doc/texi/BuildRepository.texi (revision 507) -+++ doc/texi/BuildRepository.texi (working copy) +diff --git a/doc/texi/BuildRepository.texi b/doc/texi/BuildRepository.texi +index dcae56e..f784d69 100644 +--- a/doc/texi/BuildRepository.texi ++++ b/doc/texi/BuildRepository.texi @@ -1,4 +1,4 @@ -@input texinfo @c -*- Texinfo -*- +\input texinfo @c -*- Texinfo -*- @c %**start of header @setfilename BuildRepository.info @include base/article.texi -@@ -19,12 +19,12 @@ +@@ -19,12 +19,12 @@ This document describes the recommended process to build @value{PROJECT.name} fr This chapter is for the impatient or those just looking for a quick summary of all the commands used in a typical build. You may skip this summary and jump to @ref{Build Process}. @example @@ -51,15 +86,17 @@ @end example @anchor{Build Process} ---- doc/texi/BuildSource.texi (revision 507) -+++ doc/texi/BuildSource.texi (working copy) +diff --git a/doc/texi/BuildSource.texi b/doc/texi/BuildSource.texi +index 233ecdb..853dd30 100644 +--- a/doc/texi/BuildSource.texi ++++ b/doc/texi/BuildSource.texi @@ -1,4 +1,4 @@ -@input texinfo @c -*- Texinfo -*- +\input texinfo @c -*- Texinfo -*- @c %**start of header @setfilename BuildSource.info @include base/article.texi -@@ -19,10 +19,10 @@ +@@ -19,10 +19,10 @@ This document describes the recommended process to build @value{PROJECT.name} fr This chapter is for the impatient or those just looking for a quick summary of all the commands used in a typical build. You may skip this summary and jump to @ref{Build Process}. @example @@ -74,33 +111,41 @@ @end example @anchor{Build Process} ---- doc/texi/Documentation.texi (revision 507) -+++ doc/texi/Documentation.texi (working copy) +diff --git a/doc/texi/Documentation.texi b/doc/texi/Documentation.texi +index 7b85fa1..15554aa 100644 +--- a/doc/texi/Documentation.texi ++++ b/doc/texi/Documentation.texi @@ -1,4 +1,4 @@ -@input texinfo @c -*- Texinfo -*- +\input texinfo @c -*- Texinfo -*- @c %**start of header @setfilename Documentation.info @include base/article.texi ---- doc/texi/ReleaseNotes.texi (revision 507) -+++ doc/texi/ReleaseNotes.texi (working copy) +diff --git a/doc/texi/ReleaseNotes.texi b/doc/texi/ReleaseNotes.texi +index 2e3d189..ac276a4 100644 +--- a/doc/texi/ReleaseNotes.texi ++++ b/doc/texi/ReleaseNotes.texi @@ -1,4 +1,4 @@ -@input texinfo @c -*- Texinfo -*- +\input texinfo @c -*- Texinfo -*- @c %**start of header @setfilename ReleaseNotes.info @include base/article.texi ---- doc/texi/ToolGuide.texi (revision 507) -+++ doc/texi/ToolGuide.texi (working copy) +diff --git a/doc/texi/ToolGuide.texi b/doc/texi/ToolGuide.texi +index a951f26..7b3398a 100644 +--- a/doc/texi/ToolGuide.texi ++++ b/doc/texi/ToolGuide.texi @@ -1,4 +1,4 @@ -@input texinfo @c -*- Texinfo -*- +\input texinfo @c -*- Texinfo -*- @c %**start of header @setfilename ToolGuide.info @include base/guide.texi ---- doc/texi/build/commands.texi (revision 507) -+++ doc/texi/build/commands.texi (working copy) -@@ -1,18 +1,18 @@ +diff --git a/doc/texi/build/commands.texi b/doc/texi/build/commands.texi +index 8ef9ec9..79e42f7 100644 +--- a/doc/texi/build/commands.texi ++++ b/doc/texi/build/commands.texi +@@ -1,33 +1,33 @@ -@macro COMMAND.checkout{} +@macro COMMANDcheckout{} svn checkout @value{PROJECT.repo.url} @value{PROJECT.name.lower} @@ -123,7 +168,6 @@ rm -fr build/ mkdir build/ cd build/ -@@ -19,15 +19,15 @@ ../configure @end macro @@ -142,8 +186,10 @@ +@macro COMMANDdist{} make dist @end macro ---- doc/texi/build/process.bootstrap.texi (revision 507) -+++ doc/texi/build/process.bootstrap.texi (working copy) +diff --git a/doc/texi/build/process.bootstrap.texi b/doc/texi/build/process.bootstrap.texi +index f8153e9..cb538ac 100644 +--- a/doc/texi/build/process.bootstrap.texi ++++ b/doc/texi/build/process.bootstrap.texi @@ -3,7 +3,7 @@ The following command causes forces Autotools to regenerate all files and install helper scripts needed at configure-time and to regenerate all files. @@ -153,8 +199,10 @@ @end example If you are a project member and preparing for a release, it is important to note that the versions of Autotools available in your path will directly effect files added to the bundle. At the time of writing, the following versions of Autotools are recommended; in some cases a minimum is hard-coded and warnings will be issued if in violation: ---- doc/texi/build/process.build.texi (revision 507) -+++ doc/texi/build/process.build.texi (working copy) +diff --git a/doc/texi/build/process.build.texi b/doc/texi/build/process.build.texi +index 5e9d7a8..cb178df 100644 +--- a/doc/texi/build/process.build.texi ++++ b/doc/texi/build/process.build.texi @@ -3,7 +3,7 @@ The following command will build @value{PROJECT.name}. @@ -164,9 +212,11 @@ @end example On some platforms @code{make} refers to a BSD-flavor of make which is not compatible with this project. Check if @code{gmake} is installed, and if it is, substitute @code{gmake} wherever you may see @code{make} in this document. Otherwise you will need to install GNU make package version 3.81 or higher. Lower versions might work. ---- doc/texi/build/process.checkout.texi (revision 507) -+++ doc/texi/build/process.checkout.texi (working copy) -@@ -7,7 +7,7 @@ +diff --git a/doc/texi/build/process.checkout.texi b/doc/texi/build/process.checkout.texi +index 5bf371a..550fd0f 100644 +--- a/doc/texi/build/process.checkout.texi ++++ b/doc/texi/build/process.checkout.texi +@@ -7,7 +7,7 @@ Sources are checked out from either the trunk, release or a branch. This documen If you are a project member, then you may add the appropriate login/password information as needed. @example @@ -175,8 +225,10 @@ @end example It is recommended to use Subversion 1.5.0 or higher. ---- doc/texi/build/process.configure.texi (revision 507) -+++ doc/texi/build/process.configure.texi (working copy) +diff --git a/doc/texi/build/process.configure.texi b/doc/texi/build/process.configure.texi +index 19f427d..6750681 100644 +--- a/doc/texi/build/process.configure.texi ++++ b/doc/texi/build/process.configure.texi @@ -3,7 +3,7 @@ The following command configures the project for a build. It is highly recommended that you invoke configure from an empty directory. @@ -186,8 +238,10 @@ @end example Please see @file{INSTALL} for details on configure usage, and standard options. Additionally, the following custom options have been added to @file{configure}: ---- doc/texi/build/process.dist.texi (revision 507) -+++ doc/texi/build/process.dist.texi (working copy) +diff --git a/doc/texi/build/process.dist.texi b/doc/texi/build/process.dist.texi +index 2d8b10b..a9d835b 100644 +--- a/doc/texi/build/process.dist.texi ++++ b/doc/texi/build/process.dist.texi @@ -3,7 +3,7 @@ The following command will create a @value{PROJECT.name} source distribution. It is during this step that shipped documentation is generated. @@ -197,8 +251,10 @@ @end example This step in the build process introduces additional requirements to the host system. While most of the following utilities are generally available, @command{help2man} is used to generate man-pages; however if this command is not available the man-pages will be empty. This is acceptable for non-release builds but for full quality builds this command is required. ---- doc/texi/build/process.extract.texi (revision 507) -+++ doc/texi/build/process.extract.texi (working copy) +diff --git a/doc/texi/build/process.extract.texi b/doc/texi/build/process.extract.texi +index b019cac..efad39e 100644 +--- a/doc/texi/build/process.extract.texi ++++ b/doc/texi/build/process.extract.texi @@ -2,7 +2,7 @@ Extract sources from a @value{TERM.srcdist} bundle. Releases are available from @url{@value{PROJECT.url.website}} in the @url{@value{PROJECT.url.downloads},downloads} section. @@ -208,8 +264,10 @@ @end example Older versions of @code{tar} may not automatically uncompress the bundle, so you might have to either enter additional flags manually, or first decompress the bundle before extracting. Some possible command variations for uncompressing a @file{bz2} file: ---- doc/texi/build/process.install.texi (revision 507) -+++ doc/texi/build/process.install.texi (working copy) +diff --git a/doc/texi/build/process.install.texi b/doc/texi/build/process.install.texi +index 9087853..e3b27dd 100644 +--- a/doc/texi/build/process.install.texi ++++ b/doc/texi/build/process.install.texi @@ -4,5 +4,5 @@ The following command will install @value{PROJECT.name}. @@ -217,3 +275,6 @@ -@COMMAND.install{} +@COMMANDinstall{} @end example +-- +2.7.4 + diff --git a/mp4v2-2.1-fixdoc2.patch b/0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch similarity index 79% rename from mp4v2-2.1-fixdoc2.patch rename to 0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch index 00cb207..1d43b5b 100644 --- a/mp4v2-2.1-fixdoc2.patch +++ b/0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch @@ -1,7 +1,19 @@ -Install man/man3/, BTW like in libmp4v2-1.5.0.1 -Fix 30 annoying warnings "target x given more than once in the same rule" ---- ./GNUmakefile.am.orig 2015-10-03 16:32:32.790288451 +0100 -+++ ./GNUmakefile.am 2015-10-03 17:16:18.548015521 +0100 +From fc65e21b1fe12cb3d51a8bc8152efbebedabbd6f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= +Date: Wed, 7 Oct 2015 04:25:20 +0100 +Subject: [PATCH 2/4] Install man/man3/, BTW like in libmp4v2-1.5.0.1 + +And fix 30 annoying warnings "target x given more than once in the same +rule" +--- + GNUmakefile.am | 73 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ + doc/GNUmakefile.mk | 2 +- + 2 files changed, 74 insertions(+), 1 deletion(-) + +diff --git a/GNUmakefile.am b/GNUmakefile.am +index 947e6e3..ea45d75 100644 +--- a/GNUmakefile.am ++++ b/GNUmakefile.am @@ -296,6 +296,79 @@ if ADD_MANS doc/man/man1/mp4file.1 \ doc/man/man1/mp4subtitle.1 \ @@ -82,8 +94,10 @@ Fix 30 annoying warnings "target x given more than once in the same rule" endif endif ---- doc/GNUmakefile.mk.orig 2015-10-03 17:41:52.593061523 +0100 -+++ doc/GNUmakefile.mk 2015-10-04 00:34:23.260636428 +0100 +diff --git a/doc/GNUmakefile.mk b/doc/GNUmakefile.mk +index dadb234..1e6188e 100644 +--- a/doc/GNUmakefile.mk ++++ b/doc/GNUmakefile.mk @@ -98,7 +98,7 @@ DOC.m4.out = \ DOC.man.utils = mp4art mp4file mp4subtitle mp4track DOC.man.out = $(DOC.man.utils:%=$(DOC.out/)man/man1/%.1) @@ -93,3 +107,6 @@ Fix 30 annoying warnings "target x given more than once in the same rule" DOC.texi.includes = \ doc/texi/base/project.texi \ +-- +2.7.4 + diff --git a/0003-Fix-out-of-tree-builds-182.patch b/0003-Fix-out-of-tree-builds-182.patch new file mode 100644 index 0000000..a78b373 --- /dev/null +++ b/0003-Fix-out-of-tree-builds-182.patch @@ -0,0 +1,169 @@ +From d7de4350e9fb40c296798f2d0b5197aa760dd417 Mon Sep 17 00:00:00 2001 +From: Sam Thursfield +Date: Mon, 6 Feb 2017 06:23:19 +0100 +Subject: [PATCH 3/4] Fix out-of-tree builds (#182) + +Building with srcdir!=builddir was failing with a "no rule to create +doc/MP4.3" error. +--- + GNUmakefile.am | 144 ++++++++++++++++++++++++++++----------------------------- + 1 file changed, 72 insertions(+), 72 deletions(-) + +diff --git a/GNUmakefile.am b/GNUmakefile.am +index ea45d75..4b30ee6 100644 +--- a/GNUmakefile.am ++++ b/GNUmakefile.am +@@ -297,78 +297,78 @@ if ADD_MANS + doc/man/man1/mp4subtitle.1 \ + doc/man/man1/mp4track.1 + man3_MANS = \ +- doc/MP4.3 \ +- doc/MP4AddRtpESConfigurationPacket.3 \ +- doc/MP4AddRtpHint.3 \ +- doc/MP4AddRtpImmediateData.3 \ +- doc/MP4AddRtpPacket.3 \ +- doc/MP4AddRtpSampleData.3 \ +- doc/MP4AddRtpVideoHint.3 \ +- doc/MP4AddTrackEdit.3 \ +- doc/MP4AppendHintTrackSdp.3 \ +- doc/MP4AppendSessionSdp.3 \ +- doc/MP4BinaryToBase16.3 \ +- doc/MP4BinaryToBase64.3 \ +- doc/MP4CloneTrack.3 \ +- doc/MP4ConvertFromMovieDuration.3 \ +- doc/MP4ConvertFromTrackTimestamp.3 \ +- doc/MP4ConvertToTrackTimestamp.3 \ +- doc/MP4CopyTrack.3 \ +- doc/MP4DeleteTrack.3 \ +- doc/MP4DeleteTrackEdit.3 \ +- doc/MP4FindTrackId.3 \ +- doc/MP4FindTrackIndex.3 \ +- doc/MP4GetAudioProfileLevel.3 \ +- doc/MP4GetDuration.3 \ +- doc/MP4GetGraphicsProfileLevel.3 \ +- doc/MP4GetHintTrackReferenceTrackId.3 \ +- doc/MP4GetHintTrackRtpPayload.3 \ +- doc/MP4GetHintTrackSdp.3 \ +- doc/MP4GetNumberOfTracks.3 \ +- doc/MP4GetODProfileLevel.3 \ +- doc/MP4GetRtpHintNumberOfPackets.3 \ +- doc/MP4GetRtpPacketBFrame.3 \ +- doc/MP4GetRtpPacketTransmitOffset.3 \ +- doc/MP4GetRtpTimestampStart.3 \ +- doc/MP4GetSampleIdFromEditTime.3 \ +- doc/MP4GetSceneProfileLevel.3 \ +- doc/MP4GetSessionSdp.3 \ +- doc/MP4GetTrackAudioMpeg4Type.3 \ +- doc/MP4GetTrackAudioType.3 \ +- doc/MP4GetTrackBitRate.3 \ +- doc/MP4GetTrackDuration.3 \ +- doc/MP4GetTrackEditDuration.3 \ +- doc/MP4GetTrackEditDwell.3 \ +- doc/MP4GetTrackEditMediaStart.3 \ +- doc/MP4GetTrackEditStart.3 \ +- doc/MP4GetTrackEditTotalDuration.3 \ +- doc/MP4GetTrackESConfiguration.3 \ +- doc/MP4GetTrackFixedSampleDuration.3 \ +- doc/MP4GetTrackNumberOfEdits.3 \ +- doc/MP4GetTrackNumberOfSamples.3 \ +- doc/MP4GetTrackVideoFrameRate.3 \ +- doc/MP4GetTrackVideoHeight.3 \ +- doc/MP4GetTrackVideoType.3 \ +- doc/MP4GetTrackVideoWidth.3 \ +- doc/MP4GetVideoProfileLevel.3 \ +- doc/MP4MakeIsmaCompliant.3 \ +- doc/MP4ReadRtpHint.3 \ +- doc/MP4ReadRtpPacket.3 \ +- doc/MP4ReadSampleFromEditTime.3 \ +- doc/MP4SetAudioProfileLevel.3 \ +- doc/MP4SetGraphicsProfileLevel.3 \ +- doc/MP4SetHintTrackRtpPayload.3 \ +- doc/MP4SetHintTrackSdp.3 \ +- doc/MP4SetODProfileLevel.3 \ +- doc/MP4SetRtpTimestampStart.3 \ +- doc/MP4SetSceneProfileLevel.3 \ +- doc/MP4SetSessionSdp.3 \ +- doc/MP4SetTrackEditDuration.3 \ +- doc/MP4SetTrackEditDwell.3 \ +- doc/MP4SetTrackEditMediaStart.3 \ +- doc/MP4SetTrackESConfiguration.3 \ +- doc/MP4SetVideoProfileLevel.3 \ +- doc/MP4WriteRtpHint.3 ++ $(top_srcdir)/doc/MP4.3 \ ++ $(top_srcdir)/doc/MP4AddRtpESConfigurationPacket.3 \ ++ $(top_srcdir)/doc/MP4AddRtpHint.3 \ ++ $(top_srcdir)/doc/MP4AddRtpImmediateData.3 \ ++ $(top_srcdir)/doc/MP4AddRtpPacket.3 \ ++ $(top_srcdir)/doc/MP4AddRtpSampleData.3 \ ++ $(top_srcdir)/doc/MP4AddRtpVideoHint.3 \ ++ $(top_srcdir)/doc/MP4AddTrackEdit.3 \ ++ $(top_srcdir)/doc/MP4AppendHintTrackSdp.3 \ ++ $(top_srcdir)/doc/MP4AppendSessionSdp.3 \ ++ $(top_srcdir)/doc/MP4BinaryToBase16.3 \ ++ $(top_srcdir)/doc/MP4BinaryToBase64.3 \ ++ $(top_srcdir)/doc/MP4CloneTrack.3 \ ++ $(top_srcdir)/doc/MP4ConvertFromMovieDuration.3 \ ++ $(top_srcdir)/doc/MP4ConvertFromTrackTimestamp.3 \ ++ $(top_srcdir)/doc/MP4ConvertToTrackTimestamp.3 \ ++ $(top_srcdir)/doc/MP4CopyTrack.3 \ ++ $(top_srcdir)/doc/MP4DeleteTrack.3 \ ++ $(top_srcdir)/doc/MP4DeleteTrackEdit.3 \ ++ $(top_srcdir)/doc/MP4FindTrackId.3 \ ++ $(top_srcdir)/doc/MP4FindTrackIndex.3 \ ++ $(top_srcdir)/doc/MP4GetAudioProfileLevel.3 \ ++ $(top_srcdir)/doc/MP4GetDuration.3 \ ++ $(top_srcdir)/doc/MP4GetGraphicsProfileLevel.3 \ ++ $(top_srcdir)/doc/MP4GetHintTrackReferenceTrackId.3 \ ++ $(top_srcdir)/doc/MP4GetHintTrackRtpPayload.3 \ ++ $(top_srcdir)/doc/MP4GetHintTrackSdp.3 \ ++ $(top_srcdir)/doc/MP4GetNumberOfTracks.3 \ ++ $(top_srcdir)/doc/MP4GetODProfileLevel.3 \ ++ $(top_srcdir)/doc/MP4GetRtpHintNumberOfPackets.3 \ ++ $(top_srcdir)/doc/MP4GetRtpPacketBFrame.3 \ ++ $(top_srcdir)/doc/MP4GetRtpPacketTransmitOffset.3 \ ++ $(top_srcdir)/doc/MP4GetRtpTimestampStart.3 \ ++ $(top_srcdir)/doc/MP4GetSampleIdFromEditTime.3 \ ++ $(top_srcdir)/doc/MP4GetSceneProfileLevel.3 \ ++ $(top_srcdir)/doc/MP4GetSessionSdp.3 \ ++ $(top_srcdir)/doc/MP4GetTrackAudioMpeg4Type.3 \ ++ $(top_srcdir)/doc/MP4GetTrackAudioType.3 \ ++ $(top_srcdir)/doc/MP4GetTrackBitRate.3 \ ++ $(top_srcdir)/doc/MP4GetTrackDuration.3 \ ++ $(top_srcdir)/doc/MP4GetTrackEditDuration.3 \ ++ $(top_srcdir)/doc/MP4GetTrackEditDwell.3 \ ++ $(top_srcdir)/doc/MP4GetTrackEditMediaStart.3 \ ++ $(top_srcdir)/doc/MP4GetTrackEditStart.3 \ ++ $(top_srcdir)/doc/MP4GetTrackEditTotalDuration.3 \ ++ $(top_srcdir)/doc/MP4GetTrackESConfiguration.3 \ ++ $(top_srcdir)/doc/MP4GetTrackFixedSampleDuration.3 \ ++ $(top_srcdir)/doc/MP4GetTrackNumberOfEdits.3 \ ++ $(top_srcdir)/doc/MP4GetTrackNumberOfSamples.3 \ ++ $(top_srcdir)/doc/MP4GetTrackVideoFrameRate.3 \ ++ $(top_srcdir)/doc/MP4GetTrackVideoHeight.3 \ ++ $(top_srcdir)/doc/MP4GetTrackVideoType.3 \ ++ $(top_srcdir)/doc/MP4GetTrackVideoWidth.3 \ ++ $(top_srcdir)/doc/MP4GetVideoProfileLevel.3 \ ++ $(top_srcdir)/doc/MP4MakeIsmaCompliant.3 \ ++ $(top_srcdir)/doc/MP4ReadRtpHint.3 \ ++ $(top_srcdir)/doc/MP4ReadRtpPacket.3 \ ++ $(top_srcdir)/doc/MP4ReadSampleFromEditTime.3 \ ++ $(top_srcdir)/doc/MP4SetAudioProfileLevel.3 \ ++ $(top_srcdir)/doc/MP4SetGraphicsProfileLevel.3 \ ++ $(top_srcdir)/doc/MP4SetHintTrackRtpPayload.3 \ ++ $(top_srcdir)/doc/MP4SetHintTrackSdp.3 \ ++ $(top_srcdir)/doc/MP4SetODProfileLevel.3 \ ++ $(top_srcdir)/doc/MP4SetRtpTimestampStart.3 \ ++ $(top_srcdir)/doc/MP4SetSceneProfileLevel.3 \ ++ $(top_srcdir)/doc/MP4SetSessionSdp.3 \ ++ $(top_srcdir)/doc/MP4SetTrackEditDuration.3 \ ++ $(top_srcdir)/doc/MP4SetTrackEditDwell.3 \ ++ $(top_srcdir)/doc/MP4SetTrackEditMediaStart.3 \ ++ $(top_srcdir)/doc/MP4SetTrackESConfiguration.3 \ ++ $(top_srcdir)/doc/MP4SetVideoProfileLevel.3 \ ++ $(top_srcdir)/doc/MP4WriteRtpHint.3 + endif + endif + +-- +2.7.4 + diff --git a/0004-Fix-GCC7-build.patch b/0004-Fix-GCC7-build.patch new file mode 100644 index 0000000..dec02f9 --- /dev/null +++ b/0004-Fix-GCC7-build.patch @@ -0,0 +1,30 @@ +From 855e9674232808ff3be7191b697dfb56917db21f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= +Date: Wed, 8 Feb 2017 00:56:32 +0000 +Subject: [PATCH 4/4] Fix GCC7 build + +if (*pSlash != '\0') { + +As it stands the body of that if will always execute and when there are +no encoding parameters ppEncodingParams will be returned as a pointer to +an empty string rather than as a null pointer +--- + src/rtphint.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/rtphint.cpp b/src/rtphint.cpp +index e07309d..1eb01f5 100644 +--- a/src/rtphint.cpp ++++ b/src/rtphint.cpp +@@ -339,7 +339,7 @@ void MP4RtpHintTrack::GetPayload( + pSlash = strchr(pSlash, '/'); + if (pSlash != NULL) { + pSlash++; +- if (pSlash != '\0') { ++ if (*pSlash != '\0') { + length = (uint32_t)strlen(pRtpMap) - (pSlash - pRtpMap); + *ppEncodingParams = (char *)MP4Calloc(length + 1); + strncpy(*ppEncodingParams, pSlash, length); +-- +2.7.4 + diff --git a/libmp4v2.spec b/libmp4v2.spec index 3ec35d9..ed42395 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.7%{gver}%{?dist} +Release: 0.8%{gver}%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 @@ -13,8 +13,11 @@ Source0: http://mp4v2.googlecode.com/files/mp4v2-trunk-r%{svnversion}.tar.bz2 Source1: make-svn-snapshot.sh # upstreamable patch # Reference: https://code.google.com/p/mp4v2/issues/detail?id=177 -Patch0: mp4v2-2.1-fixdoc.patch -Patch1: mp4v2-2.1-fixdoc2.patch +Patch1: 0001-Fix-make-dist.patch +Patch2: 0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch +Patch3: 0003-Fix-out-of-tree-builds-182.patch +Patch4: 0004-Fix-GCC7-build.patch + BuildRequires: autoconf automake gettext-devel libtool texinfo svn BuildRequires: python%{python3_pkgversion} doxygen @@ -36,8 +39,10 @@ using the libmp4v2 library. %prep %setup -q -n mp4v2-trunk -%patch0 -p0 -b .doc -%patch1 -p0 -b .doc2 +%patch1 -p1 -b .doc +%patch2 -p1 -b .doc2 +%patch3 -p1 -b .doc3 +%patch4 -p1 -b .gcc7 %build autoreconf --force --install --verbose @@ -72,6 +77,11 @@ find %{buildroot} -name '*.la' -delete %changelog +* Wed Feb 08 2017 Sérgio Basto - 2.1.0-0.8.trunkREV507 +- Add patch for GCC7 +- Add new pactch 0003-Fix-out-of-tree-builds-182.patch +- Rename the others patches + * Mon Feb 06 2017 Sérgio Basto - 2.1.0-0.7.trunkREV507 - Fix python3 support in EPEL7 From c9df421fdff473b4c8ce3a230d3c2a7a679950bc Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 15 May 2017 20:26:26 +0000 Subject: [PATCH 36/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index ed42395..e760644 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.8%{gver}%{?dist} +Release: 0.9%{gver}%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 @@ -77,6 +77,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Mon May 15 2017 Fedora Release Engineering - 2.1.0-0.9.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild + * Wed Feb 08 2017 Sérgio Basto - 2.1.0-0.8.trunkREV507 - Add patch for GCC7 - Add new pactch 0003-Fix-out-of-tree-builds-182.patch From a0d4174f0198a6de354c4b8b55bb0f0f0feb0e86 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 26 Jul 2017 19:17:08 +0000 Subject: [PATCH 37/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index e760644..fdcbda9 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.9%{gver}%{?dist} +Release: 0.10%{gver}%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 @@ -77,6 +77,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Wed Jul 26 2017 Fedora Release Engineering - 2.1.0-0.10.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + * Mon May 15 2017 Fedora Release Engineering - 2.1.0-0.9.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild From 33a27811958ab3c80bd67074654101475413d705 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 3 Aug 2017 01:52:16 +0000 Subject: [PATCH 38/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index fdcbda9..eec75f3 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.10%{gver}%{?dist} +Release: 0.11%{gver}%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 @@ -77,6 +77,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Thu Aug 03 2017 Fedora Release Engineering - 2.1.0-0.11.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + * Wed Jul 26 2017 Fedora Release Engineering - 2.1.0-0.10.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild From b25d18146c9c49f95c29a65e14766dd2ba503eb7 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 7 Feb 2018 22:43:20 +0000 Subject: [PATCH 39/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index eec75f3..111acb1 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.11%{gver}%{?dist} +Release: 0.12%{gver}%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 @@ -77,6 +77,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Wed Feb 07 2018 Fedora Release Engineering - 2.1.0-0.12.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + * Thu Aug 03 2017 Fedora Release Engineering - 2.1.0-0.11.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild From af1d44ba3357182f739c02fe9b325fa630833396 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Tue, 10 Jul 2018 16:22:13 +0200 Subject: [PATCH 40/76] add BuildRequires: gcc-c++ Reference: https://fedoraproject.org/wiki/Changes/Remove_GCC_from_BuildRoot --- libmp4v2.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/libmp4v2.spec b/libmp4v2.spec index 111acb1..2207aae 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -18,6 +18,7 @@ Patch2: 0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch Patch3: 0003-Fix-out-of-tree-builds-182.patch Patch4: 0004-Fix-GCC7-build.patch +BuildRequires: gcc-c++ BuildRequires: autoconf automake gettext-devel libtool texinfo svn BuildRequires: python%{python3_pkgversion} doxygen From 4ffe8697ef1971dd1c386b6d01b523a579c0b2f3 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 13 Jul 2018 08:27:33 +0000 Subject: [PATCH 41/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 2207aae..67e7c84 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.12%{gver}%{?dist} +Release: 0.13%{gver}%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 @@ -78,6 +78,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Fri Jul 13 2018 Fedora Release Engineering - 2.1.0-0.13.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Wed Feb 07 2018 Fedora Release Engineering - 2.1.0-0.12.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild From 2dee429fee71d25455968008332aabe95555685b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Sun, 18 Nov 2018 16:57:40 +0100 Subject: [PATCH 42/76] Add BR:glibc-langpack-en --- libmp4v2.spec | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 67e7c84..db7df4a 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.13%{gver}%{?dist} +Release: 0.14%{gver}%{?dist} License: MPLv1.1 Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 @@ -18,9 +18,10 @@ Patch2: 0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch Patch3: 0003-Fix-out-of-tree-builds-182.patch Patch4: 0004-Fix-GCC7-build.patch -BuildRequires: gcc-c++ +BuildRequires: gcc-c++ BuildRequires: autoconf automake gettext-devel libtool texinfo svn BuildRequires: python%{python3_pkgversion} doxygen +BuildRequires: glibc-langpack-en %description The libmp4v2 library provides an abstraction layer for working with files @@ -78,6 +79,10 @@ find %{buildroot} -name '*.la' -delete %changelog +* Sun Nov 18 2018 Zbigniew Jędrzejewski-Szmek - 2.1.0-0.14.trunkREV507 +- Add BR:glibc-langpack-en + See https://fedoraproject.org/wiki/Changes/Remove_glibc-langpacks-all_from_buildroot + * Fri Jul 13 2018 Fedora Release Engineering - 2.1.0-0.13.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild From e020b5f9637694002fa7d2fc6535894586159a9e Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Tue, 22 Jan 2019 18:39:54 +0100 Subject: [PATCH 43/76] Remove obsolete ldconfig scriptlets References: https://fedoraproject.org/wiki/Changes/RemoveObsoleteScriptlets Signed-off-by: Igor Gnatenko --- libmp4v2.spec | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index db7df4a..09980c9 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -59,9 +59,7 @@ export LANG=en_US.utf8 %{__make} install DESTDIR=%{buildroot} find %{buildroot} -name '*.la' -delete -%post -p /sbin/ldconfig - -%postun -p /sbin/ldconfig +%ldconfig_scriptlets %files From fbc44a2870c0fbff09fd2e70ccb5e85033316b0d Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Mon, 28 Jan 2019 20:17:51 +0100 Subject: [PATCH 44/76] Remove obsolete Group tag References: https://fedoraproject.org/wiki/Changes/Remove_Group_Tag --- libmp4v2.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 09980c9..7aa6bb0 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -6,7 +6,6 @@ Name: libmp4v2 Version: 2.1.0 Release: 0.14%{gver}%{?dist} License: MPLv1.1 -Group: System Environment/Libraries URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh Source0: http://mp4v2.googlecode.com/files/mp4v2-trunk-r%{svnversion}.tar.bz2 @@ -31,7 +30,6 @@ and is an exact copy of the library distributed in the mpeg4ip package. %package devel Summary: Development files for the mp4v2 library -Group: Development/Libraries Requires: %{name}%{_isa} = %{version}-%{release} %description devel From 54794f224985b45240b44e339307150493e5a41a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 1 Feb 2019 07:40:25 +0000 Subject: [PATCH 45/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 7aa6bb0..a0d20e3 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.14%{gver}%{?dist} +Release: 0.15%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -75,6 +75,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Fri Feb 01 2019 Fedora Release Engineering - 2.1.0-0.15.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Sun Nov 18 2018 Zbigniew Jędrzejewski-Szmek - 2.1.0-0.14.trunkREV507 - Add BR:glibc-langpack-en See https://fedoraproject.org/wiki/Changes/Remove_glibc-langpacks-all_from_buildroot From 9ffca92eac14a55a00379f4b3b56a5a61f4e4bf0 Mon Sep 17 00:00:00 2001 From: "Frank Dana (FeRD)" Date: Tue, 19 Feb 2019 09:26:47 +0000 Subject: [PATCH 46/76] spec: Add BR for help2man libmp4v2 needs a BuildRequires for `help2man`, which it uses to generate the man pages for its command-line utilities. Without it, the man pages in section 1 are generated as empty files. Signed-off-by: FeRD (Frank Dana) --- libmp4v2.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index a0d20e3..22cd353 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.15%{gver}%{?dist} +Release: 0.16%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -19,7 +19,7 @@ Patch4: 0004-Fix-GCC7-build.patch BuildRequires: gcc-c++ BuildRequires: autoconf automake gettext-devel libtool texinfo svn -BuildRequires: python%{python3_pkgversion} doxygen +BuildRequires: python%{python3_pkgversion} doxygen help2man BuildRequires: glibc-langpack-en %description @@ -75,6 +75,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Tue Feb 19 2019 FeRD (Frank Dana) - 2.1.0-0.16.trunkREV507 +- Add BuildRequires for help2man, fixes manpage generation + * Fri Feb 01 2019 Fedora Release Engineering - 2.1.0-0.15.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild From c60037f971735d1dfb10fd7e22381f436a975274 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 25 Jul 2019 13:49:22 +0000 Subject: [PATCH 47/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 22cd353..ba86644 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.16%{gver}%{?dist} +Release: 0.17%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -75,6 +75,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Thu Jul 25 2019 Fedora Release Engineering - 2.1.0-0.17.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Tue Feb 19 2019 FeRD (Frank Dana) - 2.1.0-0.16.trunkREV507 - Add BuildRequires for help2man, fixes manpage generation From a9b30f9664395542410095d85f845c0025d8b37d Mon Sep 17 00:00:00 2001 From: Gwyn Ciesla Date: Mon, 26 Aug 2019 16:31:29 -0500 Subject: [PATCH 48/76] "Adding package.cfg file" --- package.cfg | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 package.cfg diff --git a/package.cfg b/package.cfg new file mode 100644 index 0000000..66ea79d --- /dev/null +++ b/package.cfg @@ -0,0 +1,2 @@ +[koji] +targets = epel8 epel8-playground \ No newline at end of file From c8b8804f9ac582e4473f5b316a6ee183fbf7a15a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Sat, 2 Nov 2019 06:31:08 +0000 Subject: [PATCH 49/76] Fix https://nvd.nist.gov/vuln/detail/CVE-2018-14446 https://nvd.nist.gov/vuln/detail/CVE-2018-14403 https://nvd.nist.gov/vuln/detail/CVE-2018-14379 https://nvd.nist.gov/vuln/detail/CVE-2018-14326 https://nvd.nist.gov/vuln/detail/CVE-2018-14325 https://nvd.nist.gov/vuln/detail/CVE-2018-14054 based on https://github.com/TechSmith/mp4v2/pull/27 and https://github.com/sergiomb2/libmp4v2/ Update spec --- 0001-Fix-make-dist.patch | 4 +- ...an-man3-BTW-like-in-libmp4v2-1.5.0.1.patch | 6 +- 0003-Fix-out-of-tree-builds-182.patch | 6 +- 0004-Fix-GCC7-build.patch | 4 +- 0005-Fix-clang-compilation.patch | 39 ++++++++++++ ...-bounds-memory-access-in-MP4v2-2.0.0.patch | 28 +++++++++ ...Fix-v2-Type-confusion-in-MP4v2-2.0.0.patch | 33 +++++++++++ ...er-after-free-to-prevent-double-free.patch | 35 +++++++++++ ...er-underflow-overflow-in-MP4v2-2.0.0.patch | 59 +++++++++++++++++++ libmp4v2.spec | 28 ++++++--- 10 files changed, 224 insertions(+), 18 deletions(-) create mode 100644 0005-Fix-clang-compilation.patch create mode 100644 0007-Fix-Out-of-bounds-memory-access-in-MP4v2-2.0.0.patch create mode 100644 0008-Fix-v2-Type-confusion-in-MP4v2-2.0.0.patch create mode 100644 0009-Null-out-pointer-after-free-to-prevent-double-free.patch create mode 100644 0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch diff --git a/0001-Fix-make-dist.patch b/0001-Fix-make-dist.patch index 1558313..2929dda 100644 --- a/0001-Fix-make-dist.patch +++ b/0001-Fix-make-dist.patch @@ -1,7 +1,7 @@ From 60e346211e53257d2fd0b39d4b89ce60c9053409 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Wed, 7 Oct 2015 03:59:59 +0100 -Subject: [PATCH 1/4] Fix make dist. +Subject: [PATCH 01/10] Fix make dist. Makes fail because make doc fails . for more information please see : @@ -276,5 +276,5 @@ index 9087853..e3b27dd 100644 +@COMMANDinstall{} @end example -- -2.7.4 +2.21.0 diff --git a/0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch b/0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch index 1d43b5b..4a72ad7 100644 --- a/0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch +++ b/0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch @@ -1,12 +1,12 @@ From fc65e21b1fe12cb3d51a8bc8152efbebedabbd6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Wed, 7 Oct 2015 04:25:20 +0100 -Subject: [PATCH 2/4] Install man/man3/, BTW like in libmp4v2-1.5.0.1 +Subject: [PATCH 02/10] Install man/man3/, BTW like in libmp4v2-1.5.0.1 And fix 30 annoying warnings "target x given more than once in the same rule" --- - GNUmakefile.am | 73 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ + GNUmakefile.am | 73 ++++++++++++++++++++++++++++++++++++++++++++++ doc/GNUmakefile.mk | 2 +- 2 files changed, 74 insertions(+), 1 deletion(-) @@ -108,5 +108,5 @@ index dadb234..1e6188e 100644 DOC.texi.includes = \ doc/texi/base/project.texi \ -- -2.7.4 +2.21.0 diff --git a/0003-Fix-out-of-tree-builds-182.patch b/0003-Fix-out-of-tree-builds-182.patch index a78b373..e666b93 100644 --- a/0003-Fix-out-of-tree-builds-182.patch +++ b/0003-Fix-out-of-tree-builds-182.patch @@ -1,12 +1,12 @@ From d7de4350e9fb40c296798f2d0b5197aa760dd417 Mon Sep 17 00:00:00 2001 From: Sam Thursfield Date: Mon, 6 Feb 2017 06:23:19 +0100 -Subject: [PATCH 3/4] Fix out-of-tree builds (#182) +Subject: [PATCH 03/10] Fix out-of-tree builds (#182) Building with srcdir!=builddir was failing with a "no rule to create doc/MP4.3" error. --- - GNUmakefile.am | 144 ++++++++++++++++++++++++++++----------------------------- + GNUmakefile.am | 144 ++++++++++++++++++++++++------------------------- 1 file changed, 72 insertions(+), 72 deletions(-) diff --git a/GNUmakefile.am b/GNUmakefile.am @@ -165,5 +165,5 @@ index ea45d75..4b30ee6 100644 endif -- -2.7.4 +2.21.0 diff --git a/0004-Fix-GCC7-build.patch b/0004-Fix-GCC7-build.patch index dec02f9..9057243 100644 --- a/0004-Fix-GCC7-build.patch +++ b/0004-Fix-GCC7-build.patch @@ -1,7 +1,7 @@ From 855e9674232808ff3be7191b697dfb56917db21f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Wed, 8 Feb 2017 00:56:32 +0000 -Subject: [PATCH 4/4] Fix GCC7 build +Subject: [PATCH 04/10] Fix GCC7 build if (*pSlash != '\0') { @@ -26,5 +26,5 @@ index e07309d..1eb01f5 100644 *ppEncodingParams = (char *)MP4Calloc(length + 1); strncpy(*ppEncodingParams, pSlash, length); -- -2.7.4 +2.21.0 diff --git a/0005-Fix-clang-compilation.patch b/0005-Fix-clang-compilation.patch new file mode 100644 index 0000000..588c298 --- /dev/null +++ b/0005-Fix-clang-compilation.patch @@ -0,0 +1,39 @@ +From edc4f0ad8f37bb8aeae4e3ea34766dc6cdbb2f15 Mon Sep 17 00:00:00 2001 +From: David Carlos Manuelda +Date: Tue, 7 Aug 2018 05:42:28 +0200 +Subject: [PATCH 05/10] Fix clang compilation + +--- + src/mp4.cpp | 2 +- + src/mp4util.h | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/mp4.cpp b/src/mp4.cpp +index 1016f79..d576103 100644 +--- a/src/mp4.cpp ++++ b/src/mp4.cpp +@@ -896,7 +896,7 @@ MP4FileHandle MP4ReadProvider( const char* fileName, const MP4FileProvider* file + } + + catch (...) { +- return MP4_INVALID_TRACK_ID; ++ return (mp4v2_ismacrypParams *)MP4_INVALID_TRACK_ID; + } + } + +diff --git a/src/mp4util.h b/src/mp4util.h +index 1fbbd81..b33bb44 100644 +--- a/src/mp4util.h ++++ b/src/mp4util.h +@@ -33,7 +33,7 @@ namespace mp4v2 { namespace impl { + #ifndef ASSERT + # define ASSERT(expr) \ + if (!(expr)) { \ +- throw new Exception("assert failure: "LIBMPV42_STRINGIFY((expr)), __FILE__, __LINE__, __FUNCTION__ ); \ ++ throw new Exception("assert failure: " LIBMPV42_STRINGIFY((expr)), __FILE__, __LINE__, __FUNCTION__ ); \ + } + #endif + +-- +2.21.0 + diff --git a/0007-Fix-Out-of-bounds-memory-access-in-MP4v2-2.0.0.patch b/0007-Fix-Out-of-bounds-memory-access-in-MP4v2-2.0.0.patch new file mode 100644 index 0000000..d1fd1fd --- /dev/null +++ b/0007-Fix-Out-of-bounds-memory-access-in-MP4v2-2.0.0.patch @@ -0,0 +1,28 @@ +From a94a3372c6ef66a2276cc6cd92f7ec07a9c8bb6b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= +Date: Wed, 17 Oct 2018 16:13:06 +0100 +Subject: [PATCH 07/10] Fix Out-of-bounds memory access in MP4v2 2.0.0 + +The bug can be fixed by more checks when doing type comparison. +Reference: https://www.openwall.com/lists/oss-security/2018/07/18/3 + +Addresses https://nvd.nist.gov/vuln/detail/CVE-2018-14403 +--- + src/mp4util.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/mp4util.cpp b/src/mp4util.cpp +index 47bd74e..696dab4 100644 +--- a/src/mp4util.cpp ++++ b/src/mp4util.cpp +@@ -46,6 +46,7 @@ bool MP4NameFirstMatches(const char* s1, const char* s2) + s1++; + s2++; + } ++ if(*s2 != '[' && *s2 != '.' && *s2 != '\0') return false; + return true; + } + +-- +2.21.0 + diff --git a/0008-Fix-v2-Type-confusion-in-MP4v2-2.0.0.patch b/0008-Fix-v2-Type-confusion-in-MP4v2-2.0.0.patch new file mode 100644 index 0000000..a521552 --- /dev/null +++ b/0008-Fix-v2-Type-confusion-in-MP4v2-2.0.0.patch @@ -0,0 +1,33 @@ +From bb920de948c85e3db4a52292ac7250a50e3bfc86 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= +Date: Sat, 2 Nov 2019 04:19:27 +0000 +Subject: [PATCH 08/10] Fix v2 Type confusion in MP4v2 2.0.0 + +The bug is caused by the wrong assumption that the child of an `ilst` +can never be an `ilst`. So we could fix it by simply adding an ASSERT. + +Reference: https://www.openwall.com/lists/oss-security/2018/07/17/1 +Addresses: https://nvd.nist.gov/vuln/detail/CVE-2018-14379 +--- + src/mp4atom.cpp | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/src/mp4atom.cpp b/src/mp4atom.cpp +index 520cbc8..7a0a53f 100644 +--- a/src/mp4atom.cpp ++++ b/src/mp4atom.cpp +@@ -778,8 +778,10 @@ MP4Atom::factory( MP4File &file, MP4Atom* parent, const char* type ) + const char* const ptype = parent->GetType(); + + if( descendsFrom( parent, "ilst" )) { +- if( ATOMID( ptype ) == ATOMID( "ilst" )) ++ if( ATOMID( ptype ) == ATOMID( "ilst" )) { ++ ASSERT(ATOMID( type ) != ATOMID( "ilst" )); + return new MP4ItemAtom( file, type ); ++ } + + if( ATOMID( type ) == ATOMID( "data" )) + return new MP4DataAtom(file); +-- +2.21.0 + diff --git a/0009-Null-out-pointer-after-free-to-prevent-double-free.patch b/0009-Null-out-pointer-after-free-to-prevent-double-free.patch new file mode 100644 index 0000000..6309b5d --- /dev/null +++ b/0009-Null-out-pointer-after-free-to-prevent-double-free.patch @@ -0,0 +1,35 @@ +From 3410bc66fb91f46325ab1d008b6a421dd8240949 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= +Date: Sat, 2 Nov 2019 04:21:17 +0000 +Subject: [PATCH 09/10] Null out pointer after free to prevent double free + +If an exception occurs (because of a crafted MP4) before the value is reassigned, then a double free can occur. By setting the pointer to NULL after the first free, we prevent the double free in this case. +Addresses: https://nvd.nist.gov/vuln/detail/CVE-2018-14054 + +copied form https://github.com/TechSmith/mp4v2/commit/f09cceeee5bd7f783fd31f10e8b3c440ccf4c743 +From: Dave O'Rourke +Date: Wed, 20 Mar 2019 08:57:29 -0400 +--- + src/mp4property.cpp | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/src/mp4property.cpp b/src/mp4property.cpp +index 9a5b1e3..1b8e1d2 100644 +--- a/src/mp4property.cpp ++++ b/src/mp4property.cpp +@@ -391,8 +391,10 @@ void MP4StringProperty::Read( MP4File& file, uint32_t index ) + char*& value = m_values[i]; + + // Generally a default atom setting, e.g. see atom_avc1.cpp, "JVT/AVC Coding"; we'll leak this string if +- // we don't free. Note that MP4Free checks for null. +- MP4Free(value); ++ // we don't free. Note that this code checks for null before calling free and sets the pointer to null ++ // after freeing it, to prevent a double free in case an exception occurs before the value is reassigned. ++ MP4Free( value ); ++ value = NULL; + + if( m_useCountedFormat ) { + value = file.ReadCountedString( (m_useUnicode ? 2 : 1), m_useExpandedCount, m_fixedLength ); +-- +2.21.0 + diff --git a/0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch b/0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch new file mode 100644 index 0000000..3c9a769 --- /dev/null +++ b/0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch @@ -0,0 +1,59 @@ +From f5f814801ecd312a1418e2226dadfea72badec49 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= +Date: Sat, 2 Nov 2019 04:37:15 +0000 +Subject: [PATCH 10/10] Fix v2 Integer underflow/overflow in MP4v2 2.0.0 + +Reference: https://www.openwall.com/lists/oss-security/2018/07/16/1 + +For the overflow, we could check the result of the integer multiplication: + +Addresses https://nvd.nist.gov/vuln/detail/CVE-2018-14326 and https://nvd.nist.gov/vuln/detail/CVE-2018-14446 + +For the underflow, we could check if `dataSize >= hdrSize` satisfies: +Throw exception when invalid atom size would cause integer underflow +The calculation `hdrSize - dataSize` can underflow the 64-bit unsigned int dataSize type, which can lead to incorrect results. We throw an exception to stop the code from going any further. + +Addresses https://nvd.nist.gov/vuln/detail/CVE-2018-14325 +Based on https://github.com/TechSmith/mp4v2/commit/e475013c6ef78093055a02b0d035eda0f9f01451 +--- + src/mp4array.h | 5 ++++- + src/mp4atom.cpp | 6 ++++++ + 2 files changed, 10 insertions(+), 1 deletion(-) + +diff --git a/src/mp4array.h b/src/mp4array.h +index c49d59b..340d74d 100644 +--- a/src/mp4array.h ++++ b/src/mp4array.h +@@ -102,8 +102,11 @@ protected: + void Resize(MP4ArrayIndex newSize) { \ + m_numElements = newSize; \ + m_maxNumElements = newSize; \ ++ uint32_t mul = newSize * sizeof(type); \ ++ if(mul / newSize != sizeof(type)) \ ++ throw new Exception("multiplication overflow", __FILE__, __LINE__, __FUNCTION__);\ + m_elements = (type*)MP4Realloc(m_elements, \ +- m_maxNumElements * sizeof(type)); \ ++ mul); \ + } \ + \ + type& operator[](MP4ArrayIndex index) { \ +diff --git a/src/mp4atom.cpp b/src/mp4atom.cpp +index 7a0a53f..f5d5dc0 100644 +--- a/src/mp4atom.cpp ++++ b/src/mp4atom.cpp +@@ -143,6 +143,12 @@ MP4Atom* MP4Atom::ReadAtom(MP4File& file, MP4Atom* pParentAtom) + dataSize = file.GetSize() - pos; + } + ++ if(dataSize < hdrSize) { ++ ostringstream oss; ++ oss << "Invalid atom size in '" << type << "' atom, dataSize = " << dataSize << " cannot be less than hdrSize = " << static_cast( hdrSize ); ++ log.errorf( "%s: \"%s\": %s", __FUNCTION__, file.GetFilename().c_str(), oss.str().c_str() ); ++ throw new Exception( oss.str().c_str(), __FILE__, __LINE__, __FUNCTION__ ); ++ } + dataSize -= hdrSize; + + log.verbose1f("\"%s\": type = \"%s\" data-size = %" PRIu64 " (0x%" PRIx64 ") hdr %u", +-- +2.21.0 + diff --git a/libmp4v2.spec b/libmp4v2.spec index ba86644..e645291 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.17%{gver}%{?dist} +Release: 0.18%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -16,6 +16,11 @@ Patch1: 0001-Fix-make-dist.patch Patch2: 0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch Patch3: 0003-Fix-out-of-tree-builds-182.patch Patch4: 0004-Fix-GCC7-build.patch +Patch5: 0005-Fix-clang-compilation.patch +Patch7: 0007-Fix-Out-of-bounds-memory-access-in-MP4v2-2.0.0.patch +Patch8: 0008-Fix-v2-Type-confusion-in-MP4v2-2.0.0.patch +Patch9: 0009-Null-out-pointer-after-free-to-prevent-double-free.patch +Patch10:0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch BuildRequires: gcc-c++ BuildRequires: autoconf automake gettext-devel libtool texinfo svn @@ -38,23 +43,19 @@ using the libmp4v2 library. %prep -%setup -q -n mp4v2-trunk -%patch1 -p1 -b .doc -%patch2 -p1 -b .doc2 -%patch3 -p1 -b .doc3 -%patch4 -p1 -b .gcc7 +%autosetup -p1 -n mp4v2-trunk %build autoreconf --force --install --verbose %configure --disable-static -%{__make} %{?_smp_mflags} +%make_build %{__make} txt export LANG=en_US.utf8 %{__make} api %install -%{__make} install DESTDIR=%{buildroot} +%make_install find %{buildroot} -name '*.la' -delete %ldconfig_scriptlets @@ -75,6 +76,17 @@ find %{buildroot} -name '*.la' -delete %changelog +* Sat Nov 02 2019 Sérgio Basto - 2.1.0-0.18.trunkREV507 +- Fix https://nvd.nist.gov/vuln/detail/CVE-2018-14446 + https://nvd.nist.gov/vuln/detail/CVE-2018-14403 + https://nvd.nist.gov/vuln/detail/CVE-2018-14379 + https://nvd.nist.gov/vuln/detail/CVE-2018-14326 + https://nvd.nist.gov/vuln/detail/CVE-2018-14325 + https://nvd.nist.gov/vuln/detail/CVE-2018-14054 + based on https://github.com/TechSmith/mp4v2/pull/27 + and https://github.com/sergiomb2/libmp4v2/ +- Update spec + * Thu Jul 25 2019 Fedora Release Engineering - 2.1.0-0.17.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From 619ec0c4815014f02c7abd91265f881538501179 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Sat, 2 Nov 2019 07:51:53 +0000 Subject: [PATCH 50/76] Fix build on epel7 --- libmp4v2.spec | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libmp4v2.spec b/libmp4v2.spec index e645291..1a33870 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -25,7 +25,9 @@ Patch10:0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch BuildRequires: gcc-c++ BuildRequires: autoconf automake gettext-devel libtool texinfo svn BuildRequires: python%{python3_pkgversion} doxygen help2man +%if 0%{?fedora} > 29 || 0%{?rhel} > 7 BuildRequires: glibc-langpack-en +%endif %description The libmp4v2 library provides an abstraction layer for working with files @@ -49,7 +51,9 @@ using the libmp4v2 library. autoreconf --force --install --verbose %configure --disable-static %make_build +%if 0%{?fedora} > 29 || 0%{?rhel} > 7 %{__make} txt +%endif export LANG=en_US.utf8 %{__make} api @@ -62,7 +66,9 @@ find %{buildroot} -name '*.la' -delete %files +%if 0%{?fedora} > 29 || 0%{?rhel} > 7 %doc doc/articles/txt/*txt +%endif %license COPYING %{_bindir}/* %{_libdir}/libmp4v2.so.2* @@ -86,6 +92,7 @@ find %{buildroot} -name '*.la' -delete based on https://github.com/TechSmith/mp4v2/pull/27 and https://github.com/sergiomb2/libmp4v2/ - Update spec +- Fix build on epel7 * Thu Jul 25 2019 Fedora Release Engineering - 2.1.0-0.17.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From cb7e3f27a7a10a926aeb3959b9a6ef1873382cd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Fri, 8 Nov 2019 01:27:12 +0000 Subject: [PATCH 51/76] Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0 --- ...er-underflow-overflow-in-MP4v2-2.0.0.patch | 28 ++++++++++--------- libmp4v2.spec | 7 +++-- 2 files changed, 20 insertions(+), 15 deletions(-) rename 0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch => 0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch (69%) diff --git a/0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch b/0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch similarity index 69% rename from 0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch rename to 0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch index 3c9a769..e70fe93 100644 --- a/0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch +++ b/0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch @@ -1,12 +1,16 @@ -From f5f814801ecd312a1418e2226dadfea72badec49 Mon Sep 17 00:00:00 2001 +From def286d811716ad55cb39b8d935bb7b2d656fa30 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Sat, 2 Nov 2019 04:37:15 +0000 -Subject: [PATCH 10/10] Fix v2 Integer underflow/overflow in MP4v2 2.0.0 +Subject: [PATCH 10/10] Fix v3 Integer underflow/overflow in MP4v2 2.0.0 Reference: https://www.openwall.com/lists/oss-security/2018/07/16/1 For the overflow, we could check the result of the integer multiplication: +fix vulnerability where an atom list size is enormous +and calculating the number of bytes needed to hold the list overflows +https://github.com/TechSmith/mp4v2/pull/27/commits/70d823ccd8e2d7d0ed9e62fb7e8983d21e6acbeb + Addresses https://nvd.nist.gov/vuln/detail/CVE-2018-14326 and https://nvd.nist.gov/vuln/detail/CVE-2018-14446 For the underflow, we could check if `dataSize >= hdrSize` satisfies: @@ -15,28 +19,26 @@ The calculation `hdrSize - dataSize` can underflow the 64-bit unsigned int dataS Addresses https://nvd.nist.gov/vuln/detail/CVE-2018-14325 Based on https://github.com/TechSmith/mp4v2/commit/e475013c6ef78093055a02b0d035eda0f9f01451 + +Addresses https://nvd.nist.gov/vuln/detail/CVE-2018-14326 and https://nvd.nist.gov/vuln/detail/CVE-2018-14446 --- - src/mp4array.h | 5 ++++- + src/mp4array.h | 2 ++ src/mp4atom.cpp | 6 ++++++ - 2 files changed, 10 insertions(+), 1 deletion(-) + 2 files changed, 8 insertions(+) diff --git a/src/mp4array.h b/src/mp4array.h -index c49d59b..340d74d 100644 +index c49d59b..69d470a 100644 --- a/src/mp4array.h +++ b/src/mp4array.h -@@ -102,8 +102,11 @@ protected: +@@ -102,6 +102,8 @@ protected: void Resize(MP4ArrayIndex newSize) { \ m_numElements = newSize; \ m_maxNumElements = newSize; \ -+ uint32_t mul = newSize * sizeof(type); \ -+ if(mul / newSize != sizeof(type)) \ -+ throw new Exception("multiplication overflow", __FILE__, __LINE__, __FUNCTION__);\ ++ if ( (uint64_t) m_maxNumElements * sizeof(type) > 0xFFFFFFFF ) \ ++ throw new PlatformException("requested array size exceeds 4GB", ERANGE, __FILE__, __LINE__, __FUNCTION__); /* prevent overflow */ \ m_elements = (type*)MP4Realloc(m_elements, \ -- m_maxNumElements * sizeof(type)); \ -+ mul); \ + m_maxNumElements * sizeof(type)); \ } \ - \ - type& operator[](MP4ArrayIndex index) { \ diff --git a/src/mp4atom.cpp b/src/mp4atom.cpp index 7a0a53f..f5d5dc0 100644 --- a/src/mp4atom.cpp diff --git a/libmp4v2.spec b/libmp4v2.spec index 1a33870..32c66f3 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.18%{gver}%{?dist} +Release: 0.19%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -20,7 +20,7 @@ Patch5: 0005-Fix-clang-compilation.patch Patch7: 0007-Fix-Out-of-bounds-memory-access-in-MP4v2-2.0.0.patch Patch8: 0008-Fix-v2-Type-confusion-in-MP4v2-2.0.0.patch Patch9: 0009-Null-out-pointer-after-free-to-prevent-double-free.patch -Patch10:0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch +Patch10: 0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch BuildRequires: gcc-c++ BuildRequires: autoconf automake gettext-devel libtool texinfo svn @@ -82,6 +82,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Fri Nov 08 2019 Sérgio Basto - 2.1.0-0.19.trunkREV507 +- Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0 + * Sat Nov 02 2019 Sérgio Basto - 2.1.0-0.18.trunkREV507 - Fix https://nvd.nist.gov/vuln/detail/CVE-2018-14446 https://nvd.nist.gov/vuln/detail/CVE-2018-14403 From 956989de8924e9e4d095b1aa10971c5079e23d00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Fri, 8 Nov 2019 02:05:56 +0000 Subject: [PATCH 52/76] Update 0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch --- 0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch b/0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch index e70fe93..a7a850f 100644 --- a/0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch +++ b/0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch @@ -1,6 +1,6 @@ -From def286d811716ad55cb39b8d935bb7b2d656fa30 Mon Sep 17 00:00:00 2001 +From 9084868fd9f86bee118001c23171e832f15009f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= -Date: Sat, 2 Nov 2019 04:37:15 +0000 +Date: Fri, 8 Nov 2019 02:01:32 +0000 Subject: [PATCH 10/10] Fix v3 Integer underflow/overflow in MP4v2 2.0.0 Reference: https://www.openwall.com/lists/oss-security/2018/07/16/1 @@ -19,8 +19,6 @@ The calculation `hdrSize - dataSize` can underflow the 64-bit unsigned int dataS Addresses https://nvd.nist.gov/vuln/detail/CVE-2018-14325 Based on https://github.com/TechSmith/mp4v2/commit/e475013c6ef78093055a02b0d035eda0f9f01451 - -Addresses https://nvd.nist.gov/vuln/detail/CVE-2018-14326 and https://nvd.nist.gov/vuln/detail/CVE-2018-14446 --- src/mp4array.h | 2 ++ src/mp4atom.cpp | 6 ++++++ From a66cc4a31434fb1bfa3583397efe7ddbb926b680 Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Sat, 14 Dec 2019 15:44:07 -0700 Subject: [PATCH 53/76] Fix narrowing convesion problem caught by gcc-10 --- gcc10.patch | 411 ++++++++++++++++++++++++++++++++++++++++++++++++++ libmp4v2.spec | 6 +- 2 files changed, 416 insertions(+), 1 deletion(-) create mode 100644 gcc10.patch diff --git a/gcc10.patch b/gcc10.patch new file mode 100644 index 0000000..bd18636 --- /dev/null +++ b/gcc10.patch @@ -0,0 +1,411 @@ +diff -Nrup a/libutil/Utility.cpp b/libutil/Utility.cpp +--- a/libutil/Utility.cpp 2015-04-24 09:37:49.000000000 -0600 ++++ b/libutil/Utility.cpp 2019-09-24 12:39:23.669103515 -0600 +@@ -531,26 +531,26 @@ Utility::process_impl() + printHelp( false, false ); + return SUCCESS; + +- case LC_DEBUG: ++ case int(LC_DEBUG): + debugUpdate( std::strtoul( prog::optarg, NULL, 0 ) ); + break; + +- case LC_VERBOSE: ++ case int(LC_VERBOSE): + { + const uint32_t level = std::strtoul( prog::optarg, NULL, 0 ); + _verbosity = ( level < 4 ) ? level : 3; + break; + } + +- case LC_HELP: ++ case int(LC_HELP): + printHelp( true, false ); + return SUCCESS; + +- case LC_VERSION: ++ case int(LC_VERSION): + printVersion( false ); + return SUCCESS; + +- case LC_VERSIONX: ++ case int(LC_VERSIONX): + printVersion( true ); + return SUCCESS; + +diff -Nrup a/util/mp4art.cpp b/util/mp4art.cpp +--- a/util/mp4art.cpp 2015-04-24 09:37:49.000000000 -0600 ++++ b/util/mp4art.cpp 2019-09-24 12:32:35.078171912 -0600 +@@ -377,11 +377,11 @@ ArtUtility::utility_option( int code, bo + handled = true; + + switch( code ) { +- case LC_ART_ANY: ++ case int(LC_ART_ANY): + _artFilter = numeric_limits::max(); + break; + +- case LC_ART_INDEX: ++ case int(LC_ART_INDEX): + { + istringstream iss( prog::optarg ); + iss >> _artFilter; +@@ -390,29 +390,29 @@ ArtUtility::utility_option( int code, bo + break; + } + +- case LC_LIST: ++ case int(LC_LIST): + _action = &ArtUtility::actionList; + break; + +- case LC_ADD: ++ case int(LC_ADD): + _action = &ArtUtility::actionAdd; + _artImageFile = prog::optarg; + if( _artImageFile.empty() ) + return herrf( "invalid image file: empty-string\n" ); + break; + +- case LC_REMOVE: ++ case int(LC_REMOVE): + _action = &ArtUtility::actionRemove; + break; + +- case LC_REPLACE: ++ case int(LC_REPLACE): + _action = &ArtUtility::actionReplace; + _artImageFile = prog::optarg; + if( _artImageFile.empty() ) + return herrf( "invalid image file: empty-string\n" ); + break; + +- case LC_EXTRACT: ++ case int(LC_EXTRACT): + _action = &ArtUtility::actionExtract; + break; + +diff -Nrup a/util/mp4chaps.cpp b/util/mp4chaps.cpp +--- a/util/mp4chaps.cpp 2015-04-24 09:37:49.000000000 -0600 ++++ b/util/mp4chaps.cpp 2019-09-24 12:35:24.121316167 -0600 +@@ -634,32 +634,32 @@ ChapterUtility::utility_option( int code + + switch( code ) { + case 'A': +- case LC_CHPT_ANY: ++ case int(LC_CHPT_ANY): + _ChapterType = MP4ChapterTypeAny; + break; + + case 'Q': +- case LC_CHPT_QT: ++ case int(LC_CHPT_QT): + _ChapterType = MP4ChapterTypeQt; + break; + + case 'N': +- case LC_CHPT_NERO: ++ case int(LC_CHPT_NERO): + _ChapterType = MP4ChapterTypeNero; + break; + + case 'C': +- case LC_CHPT_COMMON: ++ case int(LC_CHPT_COMMON): + _ChapterFormat = CHPT_FMT_COMMON; + break; + + case 'l': +- case LC_CHP_LIST: ++ case int(LC_CHP_LIST): + _action = &ChapterUtility::actionList; + break; + + case 'e': +- case LC_CHP_EVERY: ++ case int(LC_CHP_EVERY): + { + istringstream iss( prog::optarg ); + iss >> _ChaptersEvery; +@@ -675,7 +675,7 @@ ChapterUtility::utility_option( int code + _action = &ChapterUtility::actionExport; + break; + +- case LC_CHP_EXPORT: ++ case int(LC_CHP_EXPORT): + _action = &ChapterUtility::actionExport; + /* currently not supported since the chapters of n input files would be written to one chapter file + _ChapterFile = prog::optarg; +@@ -690,7 +690,7 @@ ChapterUtility::utility_option( int code + _action = &ChapterUtility::actionImport; + break; + +- case LC_CHP_IMPORT: ++ case int(LC_CHP_IMPORT): + _action = &ChapterUtility::actionImport; + /* currently not supported since the chapters of n input files would be read from one chapter file + _ChapterFile = prog::optarg; +@@ -702,12 +702,12 @@ ChapterUtility::utility_option( int code + break; + + case 'c': +- case LC_CHP_CONVERT: ++ case int(LC_CHP_CONVERT): + _action = &ChapterUtility::actionConvert; + break; + + case 'r': +- case LC_CHP_REMOVE: ++ case int(LC_CHP_REMOVE): + _action = &ChapterUtility::actionRemove; + break; + +diff -Nrup a/util/mp4file.cpp b/util/mp4file.cpp +--- a/util/mp4file.cpp 2015-04-24 09:37:49.000000000 -0600 ++++ b/util/mp4file.cpp 2019-09-24 12:33:09.735996459 -0600 +@@ -190,15 +190,15 @@ FileUtility::utility_option( int code, b + handled = true; + + switch( code ) { +- case LC_LIST: ++ case int(LC_LIST): + _action = &FileUtility::actionList; + break; + +- case LC_OPTIMIZE: ++ case int(LC_OPTIMIZE): + _action = &FileUtility::actionOptimize; + break; + +- case LC_DUMP: ++ case int(LC_DUMP): + _action = &FileUtility::actionDump; + break; + +diff -Nrup a/util/mp4subtitle.cpp b/util/mp4subtitle.cpp +--- a/util/mp4subtitle.cpp 2015-04-24 09:37:49.000000000 -0600 ++++ b/util/mp4subtitle.cpp 2019-09-24 12:33:53.739773682 -0600 +@@ -165,25 +165,25 @@ SubtitleUtility::utility_option( int cod + handled = true; + + switch( code ) { +- case LC_LIST: ++ case int(LC_LIST): + _action = &SubtitleUtility::actionList; + break; + +- case LC_EXPORT: ++ case int(LC_EXPORT): + _action = &SubtitleUtility::actionExport; + _stTextFile = prog::optarg; + if( _stTextFile.empty() ) + return herrf( "invalid TXT file: empty-string\n" ); + break; + +- case LC_IMPORT: ++ case int(LC_IMPORT): + _action = &SubtitleUtility::actionImport; + _stTextFile = prog::optarg; + if( _stTextFile.empty() ) + return herrf( "invalid TXT file: empty-string\n" ); + break; + +- case LC_REMOVE: ++ case int(LC_REMOVE): + _action = &SubtitleUtility::actionRemove; + break; + +diff -Nrup a/util/mp4track.cpp b/util/mp4track.cpp +--- a/util/mp4track.cpp 2015-04-24 09:37:49.000000000 -0600 ++++ b/util/mp4track.cpp 2019-09-24 12:37:02.934815918 -0600 +@@ -789,11 +789,11 @@ TrackUtility::utility_option( int code, + handled = true; + + switch( code ) { +- case LC_TRACK_WILDCARD: ++ case int(LC_TRACK_WILDCARD): + _trackMode = TM_WILDCARD; + break; + +- case LC_TRACK_INDEX: ++ case int(LC_TRACK_INDEX): + { + _trackMode = TM_INDEX; + istringstream iss( prog::optarg ); +@@ -803,7 +803,7 @@ TrackUtility::utility_option( int code, + break; + } + +- case LC_TRACK_ID: ++ case int(LC_TRACK_ID): + { + _trackMode = TM_ID; + istringstream iss( prog::optarg ); +@@ -813,142 +813,142 @@ TrackUtility::utility_option( int code, + break; + } + +- case LC_LIST: ++ case int(LC_LIST): + _action = &TrackUtility::actionList; + break; + +- case LC_COLR_PARMS: ++ case int(LC_COLR_PARMS): + _colorParameterItem.convertFromCSV( prog::optarg ); + break; + +- case LC_COLR_PARM_HD: ++ case int(LC_COLR_PARM_HD): + _colorParameterItem.primariesIndex = 1; + _colorParameterItem.transferFunctionIndex = 1; + _colorParameterItem.matrixIndex = 1; + break; + +- case LC_COLR_PARM_SD: ++ case int(LC_COLR_PARM_SD): + _colorParameterItem.primariesIndex = 6; + _colorParameterItem.transferFunctionIndex = 1; + _colorParameterItem.matrixIndex = 6; + break; + +- case LC_COLR_LIST: ++ case int(LC_COLR_LIST): + _action = &TrackUtility::actionColorParameterList; + break; + +- case LC_ENABLED: ++ case int(LC_ENABLED): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setEnabled; + _actionTrackModifierSet_name = "enabled"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_INMOVIE: ++ case int(LC_INMOVIE): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setInMovie; + _actionTrackModifierSet_name = "inMovie"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_INPREVIEW: ++ case int(LC_INPREVIEW): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setInPreview; + _actionTrackModifierSet_name = "inPreview"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_LAYER: ++ case int(LC_LAYER): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setLayer; + _actionTrackModifierSet_name = "layer"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_ALTGROUP: ++ case int(LC_ALTGROUP): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setAlternateGroup; + _actionTrackModifierSet_name = "alternateGroup"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_VOLUME: ++ case int(LC_VOLUME): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setVolume; + _actionTrackModifierSet_name = "volume"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_WIDTH: ++ case int(LC_WIDTH): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setWidth; + _actionTrackModifierSet_name = "width"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_HEIGHT: ++ case int(LC_HEIGHT): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setHeight; + _actionTrackModifierSet_name = "height"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_LANGUAGE: ++ case int(LC_LANGUAGE): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setLanguage; + _actionTrackModifierSet_name = "language"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_HDLRNAME: ++ case int(LC_HDLRNAME): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setHandlerName; + _actionTrackModifierSet_name = "handlerName"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_UDTANAME: ++ case int(LC_UDTANAME): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setUserDataName; + _actionTrackModifierSet_name = "userDataName"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_UDTANAME_R: ++ case int(LC_UDTANAME_R): + _action = &TrackUtility::actionTrackModifierRemove; + _actionTrackModifierRemove_function = &TrackModifier::removeUserDataName; + _actionTrackModifierRemove_name = "userDataName"; + break; + +- case LC_COLR_ADD: ++ case int(LC_COLR_ADD): + _action = &TrackUtility::actionColorParameterAdd; + break; + +- case LC_COLR_SET: ++ case int(LC_COLR_SET): + _action = &TrackUtility::actionColorParameterSet; + break; + +- case LC_COLR_REMOVE: ++ case int(LC_COLR_REMOVE): + _action = &TrackUtility::actionColorParameterRemove; + break; + +- case LC_PASP_PARMS: ++ case int(LC_PASP_PARMS): + _pictureAspectRatioItem.convertFromCSV( prog::optarg ); + break; + +- case LC_PASP_LIST: ++ case int(LC_PASP_LIST): + _action = &TrackUtility::actionPictureAspectRatioList; + break; + +- case LC_PASP_ADD: ++ case int(LC_PASP_ADD): + _action = &TrackUtility::actionPictureAspectRatioAdd; + break; + +- case LC_PASP_SET: ++ case int(LC_PASP_SET): + _action = &TrackUtility::actionPictureAspectRatioSet; + break; + +- case LC_PASP_REMOVE: ++ case int(LC_PASP_REMOVE): + _action = &TrackUtility::actionPictureAspectRatioRemove; + break; + diff --git a/libmp4v2.spec b/libmp4v2.spec index 32c66f3..4974c36 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.19%{gver}%{?dist} +Release: 0.20%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -21,6 +21,7 @@ Patch7: 0007-Fix-Out-of-bounds-memory-access-in-MP4v2-2.0.0.patch Patch8: 0008-Fix-v2-Type-confusion-in-MP4v2-2.0.0.patch Patch9: 0009-Null-out-pointer-after-free-to-prevent-double-free.patch Patch10: 0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch +Patch50: gcc10.patch BuildRequires: gcc-c++ BuildRequires: autoconf automake gettext-devel libtool texinfo svn @@ -82,6 +83,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Sat Dec 14 2019 Jeff Law - 2.1.0-0.20.trunkREV507 +- Fix narrowing conversion issue caught by gcc-10 + * Fri Nov 08 2019 Sérgio Basto - 2.1.0-0.19.trunkREV507 - Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0 From 33958b4f7d77fede7bcfc620a2571806486d7ed8 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 29 Jan 2020 09:46:08 +0000 Subject: [PATCH 54/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 4974c36..1561882 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.20%{gver}%{?dist} +Release: 0.21%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -83,6 +83,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Wed Jan 29 2020 Fedora Release Engineering - 2.1.0-0.21.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Sat Dec 14 2019 Jeff Law - 2.1.0-0.20.trunkREV507 - Fix narrowing conversion issue caught by gcc-10 From ef4a048fdc8d2b88be96a022ca3abbc86c74ddde Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Sat, 2 Nov 2019 06:31:08 +0000 Subject: [PATCH 55/76] Fix https://nvd.nist.gov/vuln/detail/CVE-2018-14446 https://nvd.nist.gov/vuln/detail/CVE-2018-14403 https://nvd.nist.gov/vuln/detail/CVE-2018-14379 https://nvd.nist.gov/vuln/detail/CVE-2018-14326 https://nvd.nist.gov/vuln/detail/CVE-2018-14325 https://nvd.nist.gov/vuln/detail/CVE-2018-14054 based on https://github.com/TechSmith/mp4v2/pull/27 and https://github.com/sergiomb2/libmp4v2/ Update spec --- 0001-Fix-make-dist.patch | 4 +- ...an-man3-BTW-like-in-libmp4v2-1.5.0.1.patch | 6 +- 0003-Fix-out-of-tree-builds-182.patch | 6 +- 0004-Fix-GCC7-build.patch | 4 +- 0005-Fix-clang-compilation.patch | 39 ++++++++++++ ...-bounds-memory-access-in-MP4v2-2.0.0.patch | 28 +++++++++ ...Fix-v2-Type-confusion-in-MP4v2-2.0.0.patch | 33 +++++++++++ ...er-after-free-to-prevent-double-free.patch | 35 +++++++++++ ...er-underflow-overflow-in-MP4v2-2.0.0.patch | 59 +++++++++++++++++++ libmp4v2.spec | 28 ++++++--- 10 files changed, 224 insertions(+), 18 deletions(-) create mode 100644 0005-Fix-clang-compilation.patch create mode 100644 0007-Fix-Out-of-bounds-memory-access-in-MP4v2-2.0.0.patch create mode 100644 0008-Fix-v2-Type-confusion-in-MP4v2-2.0.0.patch create mode 100644 0009-Null-out-pointer-after-free-to-prevent-double-free.patch create mode 100644 0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch diff --git a/0001-Fix-make-dist.patch b/0001-Fix-make-dist.patch index 1558313..2929dda 100644 --- a/0001-Fix-make-dist.patch +++ b/0001-Fix-make-dist.patch @@ -1,7 +1,7 @@ From 60e346211e53257d2fd0b39d4b89ce60c9053409 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Wed, 7 Oct 2015 03:59:59 +0100 -Subject: [PATCH 1/4] Fix make dist. +Subject: [PATCH 01/10] Fix make dist. Makes fail because make doc fails . for more information please see : @@ -276,5 +276,5 @@ index 9087853..e3b27dd 100644 +@COMMANDinstall{} @end example -- -2.7.4 +2.21.0 diff --git a/0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch b/0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch index 1d43b5b..4a72ad7 100644 --- a/0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch +++ b/0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch @@ -1,12 +1,12 @@ From fc65e21b1fe12cb3d51a8bc8152efbebedabbd6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Wed, 7 Oct 2015 04:25:20 +0100 -Subject: [PATCH 2/4] Install man/man3/, BTW like in libmp4v2-1.5.0.1 +Subject: [PATCH 02/10] Install man/man3/, BTW like in libmp4v2-1.5.0.1 And fix 30 annoying warnings "target x given more than once in the same rule" --- - GNUmakefile.am | 73 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ + GNUmakefile.am | 73 ++++++++++++++++++++++++++++++++++++++++++++++ doc/GNUmakefile.mk | 2 +- 2 files changed, 74 insertions(+), 1 deletion(-) @@ -108,5 +108,5 @@ index dadb234..1e6188e 100644 DOC.texi.includes = \ doc/texi/base/project.texi \ -- -2.7.4 +2.21.0 diff --git a/0003-Fix-out-of-tree-builds-182.patch b/0003-Fix-out-of-tree-builds-182.patch index a78b373..e666b93 100644 --- a/0003-Fix-out-of-tree-builds-182.patch +++ b/0003-Fix-out-of-tree-builds-182.patch @@ -1,12 +1,12 @@ From d7de4350e9fb40c296798f2d0b5197aa760dd417 Mon Sep 17 00:00:00 2001 From: Sam Thursfield Date: Mon, 6 Feb 2017 06:23:19 +0100 -Subject: [PATCH 3/4] Fix out-of-tree builds (#182) +Subject: [PATCH 03/10] Fix out-of-tree builds (#182) Building with srcdir!=builddir was failing with a "no rule to create doc/MP4.3" error. --- - GNUmakefile.am | 144 ++++++++++++++++++++++++++++----------------------------- + GNUmakefile.am | 144 ++++++++++++++++++++++++------------------------- 1 file changed, 72 insertions(+), 72 deletions(-) diff --git a/GNUmakefile.am b/GNUmakefile.am @@ -165,5 +165,5 @@ index ea45d75..4b30ee6 100644 endif -- -2.7.4 +2.21.0 diff --git a/0004-Fix-GCC7-build.patch b/0004-Fix-GCC7-build.patch index dec02f9..9057243 100644 --- a/0004-Fix-GCC7-build.patch +++ b/0004-Fix-GCC7-build.patch @@ -1,7 +1,7 @@ From 855e9674232808ff3be7191b697dfb56917db21f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Wed, 8 Feb 2017 00:56:32 +0000 -Subject: [PATCH 4/4] Fix GCC7 build +Subject: [PATCH 04/10] Fix GCC7 build if (*pSlash != '\0') { @@ -26,5 +26,5 @@ index e07309d..1eb01f5 100644 *ppEncodingParams = (char *)MP4Calloc(length + 1); strncpy(*ppEncodingParams, pSlash, length); -- -2.7.4 +2.21.0 diff --git a/0005-Fix-clang-compilation.patch b/0005-Fix-clang-compilation.patch new file mode 100644 index 0000000..588c298 --- /dev/null +++ b/0005-Fix-clang-compilation.patch @@ -0,0 +1,39 @@ +From edc4f0ad8f37bb8aeae4e3ea34766dc6cdbb2f15 Mon Sep 17 00:00:00 2001 +From: David Carlos Manuelda +Date: Tue, 7 Aug 2018 05:42:28 +0200 +Subject: [PATCH 05/10] Fix clang compilation + +--- + src/mp4.cpp | 2 +- + src/mp4util.h | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/mp4.cpp b/src/mp4.cpp +index 1016f79..d576103 100644 +--- a/src/mp4.cpp ++++ b/src/mp4.cpp +@@ -896,7 +896,7 @@ MP4FileHandle MP4ReadProvider( const char* fileName, const MP4FileProvider* file + } + + catch (...) { +- return MP4_INVALID_TRACK_ID; ++ return (mp4v2_ismacrypParams *)MP4_INVALID_TRACK_ID; + } + } + +diff --git a/src/mp4util.h b/src/mp4util.h +index 1fbbd81..b33bb44 100644 +--- a/src/mp4util.h ++++ b/src/mp4util.h +@@ -33,7 +33,7 @@ namespace mp4v2 { namespace impl { + #ifndef ASSERT + # define ASSERT(expr) \ + if (!(expr)) { \ +- throw new Exception("assert failure: "LIBMPV42_STRINGIFY((expr)), __FILE__, __LINE__, __FUNCTION__ ); \ ++ throw new Exception("assert failure: " LIBMPV42_STRINGIFY((expr)), __FILE__, __LINE__, __FUNCTION__ ); \ + } + #endif + +-- +2.21.0 + diff --git a/0007-Fix-Out-of-bounds-memory-access-in-MP4v2-2.0.0.patch b/0007-Fix-Out-of-bounds-memory-access-in-MP4v2-2.0.0.patch new file mode 100644 index 0000000..d1fd1fd --- /dev/null +++ b/0007-Fix-Out-of-bounds-memory-access-in-MP4v2-2.0.0.patch @@ -0,0 +1,28 @@ +From a94a3372c6ef66a2276cc6cd92f7ec07a9c8bb6b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= +Date: Wed, 17 Oct 2018 16:13:06 +0100 +Subject: [PATCH 07/10] Fix Out-of-bounds memory access in MP4v2 2.0.0 + +The bug can be fixed by more checks when doing type comparison. +Reference: https://www.openwall.com/lists/oss-security/2018/07/18/3 + +Addresses https://nvd.nist.gov/vuln/detail/CVE-2018-14403 +--- + src/mp4util.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/mp4util.cpp b/src/mp4util.cpp +index 47bd74e..696dab4 100644 +--- a/src/mp4util.cpp ++++ b/src/mp4util.cpp +@@ -46,6 +46,7 @@ bool MP4NameFirstMatches(const char* s1, const char* s2) + s1++; + s2++; + } ++ if(*s2 != '[' && *s2 != '.' && *s2 != '\0') return false; + return true; + } + +-- +2.21.0 + diff --git a/0008-Fix-v2-Type-confusion-in-MP4v2-2.0.0.patch b/0008-Fix-v2-Type-confusion-in-MP4v2-2.0.0.patch new file mode 100644 index 0000000..a521552 --- /dev/null +++ b/0008-Fix-v2-Type-confusion-in-MP4v2-2.0.0.patch @@ -0,0 +1,33 @@ +From bb920de948c85e3db4a52292ac7250a50e3bfc86 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= +Date: Sat, 2 Nov 2019 04:19:27 +0000 +Subject: [PATCH 08/10] Fix v2 Type confusion in MP4v2 2.0.0 + +The bug is caused by the wrong assumption that the child of an `ilst` +can never be an `ilst`. So we could fix it by simply adding an ASSERT. + +Reference: https://www.openwall.com/lists/oss-security/2018/07/17/1 +Addresses: https://nvd.nist.gov/vuln/detail/CVE-2018-14379 +--- + src/mp4atom.cpp | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/src/mp4atom.cpp b/src/mp4atom.cpp +index 520cbc8..7a0a53f 100644 +--- a/src/mp4atom.cpp ++++ b/src/mp4atom.cpp +@@ -778,8 +778,10 @@ MP4Atom::factory( MP4File &file, MP4Atom* parent, const char* type ) + const char* const ptype = parent->GetType(); + + if( descendsFrom( parent, "ilst" )) { +- if( ATOMID( ptype ) == ATOMID( "ilst" )) ++ if( ATOMID( ptype ) == ATOMID( "ilst" )) { ++ ASSERT(ATOMID( type ) != ATOMID( "ilst" )); + return new MP4ItemAtom( file, type ); ++ } + + if( ATOMID( type ) == ATOMID( "data" )) + return new MP4DataAtom(file); +-- +2.21.0 + diff --git a/0009-Null-out-pointer-after-free-to-prevent-double-free.patch b/0009-Null-out-pointer-after-free-to-prevent-double-free.patch new file mode 100644 index 0000000..6309b5d --- /dev/null +++ b/0009-Null-out-pointer-after-free-to-prevent-double-free.patch @@ -0,0 +1,35 @@ +From 3410bc66fb91f46325ab1d008b6a421dd8240949 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= +Date: Sat, 2 Nov 2019 04:21:17 +0000 +Subject: [PATCH 09/10] Null out pointer after free to prevent double free + +If an exception occurs (because of a crafted MP4) before the value is reassigned, then a double free can occur. By setting the pointer to NULL after the first free, we prevent the double free in this case. +Addresses: https://nvd.nist.gov/vuln/detail/CVE-2018-14054 + +copied form https://github.com/TechSmith/mp4v2/commit/f09cceeee5bd7f783fd31f10e8b3c440ccf4c743 +From: Dave O'Rourke +Date: Wed, 20 Mar 2019 08:57:29 -0400 +--- + src/mp4property.cpp | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/src/mp4property.cpp b/src/mp4property.cpp +index 9a5b1e3..1b8e1d2 100644 +--- a/src/mp4property.cpp ++++ b/src/mp4property.cpp +@@ -391,8 +391,10 @@ void MP4StringProperty::Read( MP4File& file, uint32_t index ) + char*& value = m_values[i]; + + // Generally a default atom setting, e.g. see atom_avc1.cpp, "JVT/AVC Coding"; we'll leak this string if +- // we don't free. Note that MP4Free checks for null. +- MP4Free(value); ++ // we don't free. Note that this code checks for null before calling free and sets the pointer to null ++ // after freeing it, to prevent a double free in case an exception occurs before the value is reassigned. ++ MP4Free( value ); ++ value = NULL; + + if( m_useCountedFormat ) { + value = file.ReadCountedString( (m_useUnicode ? 2 : 1), m_useExpandedCount, m_fixedLength ); +-- +2.21.0 + diff --git a/0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch b/0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch new file mode 100644 index 0000000..3c9a769 --- /dev/null +++ b/0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch @@ -0,0 +1,59 @@ +From f5f814801ecd312a1418e2226dadfea72badec49 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= +Date: Sat, 2 Nov 2019 04:37:15 +0000 +Subject: [PATCH 10/10] Fix v2 Integer underflow/overflow in MP4v2 2.0.0 + +Reference: https://www.openwall.com/lists/oss-security/2018/07/16/1 + +For the overflow, we could check the result of the integer multiplication: + +Addresses https://nvd.nist.gov/vuln/detail/CVE-2018-14326 and https://nvd.nist.gov/vuln/detail/CVE-2018-14446 + +For the underflow, we could check if `dataSize >= hdrSize` satisfies: +Throw exception when invalid atom size would cause integer underflow +The calculation `hdrSize - dataSize` can underflow the 64-bit unsigned int dataSize type, which can lead to incorrect results. We throw an exception to stop the code from going any further. + +Addresses https://nvd.nist.gov/vuln/detail/CVE-2018-14325 +Based on https://github.com/TechSmith/mp4v2/commit/e475013c6ef78093055a02b0d035eda0f9f01451 +--- + src/mp4array.h | 5 ++++- + src/mp4atom.cpp | 6 ++++++ + 2 files changed, 10 insertions(+), 1 deletion(-) + +diff --git a/src/mp4array.h b/src/mp4array.h +index c49d59b..340d74d 100644 +--- a/src/mp4array.h ++++ b/src/mp4array.h +@@ -102,8 +102,11 @@ protected: + void Resize(MP4ArrayIndex newSize) { \ + m_numElements = newSize; \ + m_maxNumElements = newSize; \ ++ uint32_t mul = newSize * sizeof(type); \ ++ if(mul / newSize != sizeof(type)) \ ++ throw new Exception("multiplication overflow", __FILE__, __LINE__, __FUNCTION__);\ + m_elements = (type*)MP4Realloc(m_elements, \ +- m_maxNumElements * sizeof(type)); \ ++ mul); \ + } \ + \ + type& operator[](MP4ArrayIndex index) { \ +diff --git a/src/mp4atom.cpp b/src/mp4atom.cpp +index 7a0a53f..f5d5dc0 100644 +--- a/src/mp4atom.cpp ++++ b/src/mp4atom.cpp +@@ -143,6 +143,12 @@ MP4Atom* MP4Atom::ReadAtom(MP4File& file, MP4Atom* pParentAtom) + dataSize = file.GetSize() - pos; + } + ++ if(dataSize < hdrSize) { ++ ostringstream oss; ++ oss << "Invalid atom size in '" << type << "' atom, dataSize = " << dataSize << " cannot be less than hdrSize = " << static_cast( hdrSize ); ++ log.errorf( "%s: \"%s\": %s", __FUNCTION__, file.GetFilename().c_str(), oss.str().c_str() ); ++ throw new Exception( oss.str().c_str(), __FILE__, __LINE__, __FUNCTION__ ); ++ } + dataSize -= hdrSize; + + log.verbose1f("\"%s\": type = \"%s\" data-size = %" PRIu64 " (0x%" PRIx64 ") hdr %u", +-- +2.21.0 + diff --git a/libmp4v2.spec b/libmp4v2.spec index ba86644..e645291 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.17%{gver}%{?dist} +Release: 0.18%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -16,6 +16,11 @@ Patch1: 0001-Fix-make-dist.patch Patch2: 0002-Install-man-man3-BTW-like-in-libmp4v2-1.5.0.1.patch Patch3: 0003-Fix-out-of-tree-builds-182.patch Patch4: 0004-Fix-GCC7-build.patch +Patch5: 0005-Fix-clang-compilation.patch +Patch7: 0007-Fix-Out-of-bounds-memory-access-in-MP4v2-2.0.0.patch +Patch8: 0008-Fix-v2-Type-confusion-in-MP4v2-2.0.0.patch +Patch9: 0009-Null-out-pointer-after-free-to-prevent-double-free.patch +Patch10:0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch BuildRequires: gcc-c++ BuildRequires: autoconf automake gettext-devel libtool texinfo svn @@ -38,23 +43,19 @@ using the libmp4v2 library. %prep -%setup -q -n mp4v2-trunk -%patch1 -p1 -b .doc -%patch2 -p1 -b .doc2 -%patch3 -p1 -b .doc3 -%patch4 -p1 -b .gcc7 +%autosetup -p1 -n mp4v2-trunk %build autoreconf --force --install --verbose %configure --disable-static -%{__make} %{?_smp_mflags} +%make_build %{__make} txt export LANG=en_US.utf8 %{__make} api %install -%{__make} install DESTDIR=%{buildroot} +%make_install find %{buildroot} -name '*.la' -delete %ldconfig_scriptlets @@ -75,6 +76,17 @@ find %{buildroot} -name '*.la' -delete %changelog +* Sat Nov 02 2019 Sérgio Basto - 2.1.0-0.18.trunkREV507 +- Fix https://nvd.nist.gov/vuln/detail/CVE-2018-14446 + https://nvd.nist.gov/vuln/detail/CVE-2018-14403 + https://nvd.nist.gov/vuln/detail/CVE-2018-14379 + https://nvd.nist.gov/vuln/detail/CVE-2018-14326 + https://nvd.nist.gov/vuln/detail/CVE-2018-14325 + https://nvd.nist.gov/vuln/detail/CVE-2018-14054 + based on https://github.com/TechSmith/mp4v2/pull/27 + and https://github.com/sergiomb2/libmp4v2/ +- Update spec + * Thu Jul 25 2019 Fedora Release Engineering - 2.1.0-0.17.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From 091b2dfa976c4f6e463299950b654c4274ac8fa3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Sat, 2 Nov 2019 07:51:53 +0000 Subject: [PATCH 56/76] Fix build on epel7 --- libmp4v2.spec | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libmp4v2.spec b/libmp4v2.spec index e645291..1a33870 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -25,7 +25,9 @@ Patch10:0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch BuildRequires: gcc-c++ BuildRequires: autoconf automake gettext-devel libtool texinfo svn BuildRequires: python%{python3_pkgversion} doxygen help2man +%if 0%{?fedora} > 29 || 0%{?rhel} > 7 BuildRequires: glibc-langpack-en +%endif %description The libmp4v2 library provides an abstraction layer for working with files @@ -49,7 +51,9 @@ using the libmp4v2 library. autoreconf --force --install --verbose %configure --disable-static %make_build +%if 0%{?fedora} > 29 || 0%{?rhel} > 7 %{__make} txt +%endif export LANG=en_US.utf8 %{__make} api @@ -62,7 +66,9 @@ find %{buildroot} -name '*.la' -delete %files +%if 0%{?fedora} > 29 || 0%{?rhel} > 7 %doc doc/articles/txt/*txt +%endif %license COPYING %{_bindir}/* %{_libdir}/libmp4v2.so.2* @@ -86,6 +92,7 @@ find %{buildroot} -name '*.la' -delete based on https://github.com/TechSmith/mp4v2/pull/27 and https://github.com/sergiomb2/libmp4v2/ - Update spec +- Fix build on epel7 * Thu Jul 25 2019 Fedora Release Engineering - 2.1.0-0.17.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From 3187b4d348b02e79cef433fb15896440101f5e00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Fri, 8 Nov 2019 01:27:12 +0000 Subject: [PATCH 57/76] Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0 --- ...er-underflow-overflow-in-MP4v2-2.0.0.patch | 28 ++++++++++--------- libmp4v2.spec | 7 +++-- 2 files changed, 20 insertions(+), 15 deletions(-) rename 0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch => 0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch (69%) diff --git a/0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch b/0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch similarity index 69% rename from 0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch rename to 0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch index 3c9a769..e70fe93 100644 --- a/0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch +++ b/0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch @@ -1,12 +1,16 @@ -From f5f814801ecd312a1418e2226dadfea72badec49 Mon Sep 17 00:00:00 2001 +From def286d811716ad55cb39b8d935bb7b2d656fa30 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Sat, 2 Nov 2019 04:37:15 +0000 -Subject: [PATCH 10/10] Fix v2 Integer underflow/overflow in MP4v2 2.0.0 +Subject: [PATCH 10/10] Fix v3 Integer underflow/overflow in MP4v2 2.0.0 Reference: https://www.openwall.com/lists/oss-security/2018/07/16/1 For the overflow, we could check the result of the integer multiplication: +fix vulnerability where an atom list size is enormous +and calculating the number of bytes needed to hold the list overflows +https://github.com/TechSmith/mp4v2/pull/27/commits/70d823ccd8e2d7d0ed9e62fb7e8983d21e6acbeb + Addresses https://nvd.nist.gov/vuln/detail/CVE-2018-14326 and https://nvd.nist.gov/vuln/detail/CVE-2018-14446 For the underflow, we could check if `dataSize >= hdrSize` satisfies: @@ -15,28 +19,26 @@ The calculation `hdrSize - dataSize` can underflow the 64-bit unsigned int dataS Addresses https://nvd.nist.gov/vuln/detail/CVE-2018-14325 Based on https://github.com/TechSmith/mp4v2/commit/e475013c6ef78093055a02b0d035eda0f9f01451 + +Addresses https://nvd.nist.gov/vuln/detail/CVE-2018-14326 and https://nvd.nist.gov/vuln/detail/CVE-2018-14446 --- - src/mp4array.h | 5 ++++- + src/mp4array.h | 2 ++ src/mp4atom.cpp | 6 ++++++ - 2 files changed, 10 insertions(+), 1 deletion(-) + 2 files changed, 8 insertions(+) diff --git a/src/mp4array.h b/src/mp4array.h -index c49d59b..340d74d 100644 +index c49d59b..69d470a 100644 --- a/src/mp4array.h +++ b/src/mp4array.h -@@ -102,8 +102,11 @@ protected: +@@ -102,6 +102,8 @@ protected: void Resize(MP4ArrayIndex newSize) { \ m_numElements = newSize; \ m_maxNumElements = newSize; \ -+ uint32_t mul = newSize * sizeof(type); \ -+ if(mul / newSize != sizeof(type)) \ -+ throw new Exception("multiplication overflow", __FILE__, __LINE__, __FUNCTION__);\ ++ if ( (uint64_t) m_maxNumElements * sizeof(type) > 0xFFFFFFFF ) \ ++ throw new PlatformException("requested array size exceeds 4GB", ERANGE, __FILE__, __LINE__, __FUNCTION__); /* prevent overflow */ \ m_elements = (type*)MP4Realloc(m_elements, \ -- m_maxNumElements * sizeof(type)); \ -+ mul); \ + m_maxNumElements * sizeof(type)); \ } \ - \ - type& operator[](MP4ArrayIndex index) { \ diff --git a/src/mp4atom.cpp b/src/mp4atom.cpp index 7a0a53f..f5d5dc0 100644 --- a/src/mp4atom.cpp diff --git a/libmp4v2.spec b/libmp4v2.spec index 1a33870..32c66f3 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.18%{gver}%{?dist} +Release: 0.19%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -20,7 +20,7 @@ Patch5: 0005-Fix-clang-compilation.patch Patch7: 0007-Fix-Out-of-bounds-memory-access-in-MP4v2-2.0.0.patch Patch8: 0008-Fix-v2-Type-confusion-in-MP4v2-2.0.0.patch Patch9: 0009-Null-out-pointer-after-free-to-prevent-double-free.patch -Patch10:0010-Fix-v2-Integer-underflow-overflow-in-MP4v2-2.0.0.patch +Patch10: 0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch BuildRequires: gcc-c++ BuildRequires: autoconf automake gettext-devel libtool texinfo svn @@ -82,6 +82,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Fri Nov 08 2019 Sérgio Basto - 2.1.0-0.19.trunkREV507 +- Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0 + * Sat Nov 02 2019 Sérgio Basto - 2.1.0-0.18.trunkREV507 - Fix https://nvd.nist.gov/vuln/detail/CVE-2018-14446 https://nvd.nist.gov/vuln/detail/CVE-2018-14403 From e331fdfa1f24c414d94249c6e8b05f3389019797 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Fri, 8 Nov 2019 02:05:56 +0000 Subject: [PATCH 58/76] Update 0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch --- 0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch b/0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch index e70fe93..a7a850f 100644 --- a/0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch +++ b/0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch @@ -1,6 +1,6 @@ -From def286d811716ad55cb39b8d935bb7b2d656fa30 Mon Sep 17 00:00:00 2001 +From 9084868fd9f86bee118001c23171e832f15009f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= -Date: Sat, 2 Nov 2019 04:37:15 +0000 +Date: Fri, 8 Nov 2019 02:01:32 +0000 Subject: [PATCH 10/10] Fix v3 Integer underflow/overflow in MP4v2 2.0.0 Reference: https://www.openwall.com/lists/oss-security/2018/07/16/1 @@ -19,8 +19,6 @@ The calculation `hdrSize - dataSize` can underflow the 64-bit unsigned int dataS Addresses https://nvd.nist.gov/vuln/detail/CVE-2018-14325 Based on https://github.com/TechSmith/mp4v2/commit/e475013c6ef78093055a02b0d035eda0f9f01451 - -Addresses https://nvd.nist.gov/vuln/detail/CVE-2018-14326 and https://nvd.nist.gov/vuln/detail/CVE-2018-14446 --- src/mp4array.h | 2 ++ src/mp4atom.cpp | 6 ++++++ From b456f253474538b1dd8c244da0eeea8b726043ae Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Sat, 14 Dec 2019 15:44:07 -0700 Subject: [PATCH 59/76] Fix narrowing convesion problem caught by gcc-10 --- gcc10.patch | 411 ++++++++++++++++++++++++++++++++++++++++++++++++++ libmp4v2.spec | 6 +- 2 files changed, 416 insertions(+), 1 deletion(-) create mode 100644 gcc10.patch diff --git a/gcc10.patch b/gcc10.patch new file mode 100644 index 0000000..bd18636 --- /dev/null +++ b/gcc10.patch @@ -0,0 +1,411 @@ +diff -Nrup a/libutil/Utility.cpp b/libutil/Utility.cpp +--- a/libutil/Utility.cpp 2015-04-24 09:37:49.000000000 -0600 ++++ b/libutil/Utility.cpp 2019-09-24 12:39:23.669103515 -0600 +@@ -531,26 +531,26 @@ Utility::process_impl() + printHelp( false, false ); + return SUCCESS; + +- case LC_DEBUG: ++ case int(LC_DEBUG): + debugUpdate( std::strtoul( prog::optarg, NULL, 0 ) ); + break; + +- case LC_VERBOSE: ++ case int(LC_VERBOSE): + { + const uint32_t level = std::strtoul( prog::optarg, NULL, 0 ); + _verbosity = ( level < 4 ) ? level : 3; + break; + } + +- case LC_HELP: ++ case int(LC_HELP): + printHelp( true, false ); + return SUCCESS; + +- case LC_VERSION: ++ case int(LC_VERSION): + printVersion( false ); + return SUCCESS; + +- case LC_VERSIONX: ++ case int(LC_VERSIONX): + printVersion( true ); + return SUCCESS; + +diff -Nrup a/util/mp4art.cpp b/util/mp4art.cpp +--- a/util/mp4art.cpp 2015-04-24 09:37:49.000000000 -0600 ++++ b/util/mp4art.cpp 2019-09-24 12:32:35.078171912 -0600 +@@ -377,11 +377,11 @@ ArtUtility::utility_option( int code, bo + handled = true; + + switch( code ) { +- case LC_ART_ANY: ++ case int(LC_ART_ANY): + _artFilter = numeric_limits::max(); + break; + +- case LC_ART_INDEX: ++ case int(LC_ART_INDEX): + { + istringstream iss( prog::optarg ); + iss >> _artFilter; +@@ -390,29 +390,29 @@ ArtUtility::utility_option( int code, bo + break; + } + +- case LC_LIST: ++ case int(LC_LIST): + _action = &ArtUtility::actionList; + break; + +- case LC_ADD: ++ case int(LC_ADD): + _action = &ArtUtility::actionAdd; + _artImageFile = prog::optarg; + if( _artImageFile.empty() ) + return herrf( "invalid image file: empty-string\n" ); + break; + +- case LC_REMOVE: ++ case int(LC_REMOVE): + _action = &ArtUtility::actionRemove; + break; + +- case LC_REPLACE: ++ case int(LC_REPLACE): + _action = &ArtUtility::actionReplace; + _artImageFile = prog::optarg; + if( _artImageFile.empty() ) + return herrf( "invalid image file: empty-string\n" ); + break; + +- case LC_EXTRACT: ++ case int(LC_EXTRACT): + _action = &ArtUtility::actionExtract; + break; + +diff -Nrup a/util/mp4chaps.cpp b/util/mp4chaps.cpp +--- a/util/mp4chaps.cpp 2015-04-24 09:37:49.000000000 -0600 ++++ b/util/mp4chaps.cpp 2019-09-24 12:35:24.121316167 -0600 +@@ -634,32 +634,32 @@ ChapterUtility::utility_option( int code + + switch( code ) { + case 'A': +- case LC_CHPT_ANY: ++ case int(LC_CHPT_ANY): + _ChapterType = MP4ChapterTypeAny; + break; + + case 'Q': +- case LC_CHPT_QT: ++ case int(LC_CHPT_QT): + _ChapterType = MP4ChapterTypeQt; + break; + + case 'N': +- case LC_CHPT_NERO: ++ case int(LC_CHPT_NERO): + _ChapterType = MP4ChapterTypeNero; + break; + + case 'C': +- case LC_CHPT_COMMON: ++ case int(LC_CHPT_COMMON): + _ChapterFormat = CHPT_FMT_COMMON; + break; + + case 'l': +- case LC_CHP_LIST: ++ case int(LC_CHP_LIST): + _action = &ChapterUtility::actionList; + break; + + case 'e': +- case LC_CHP_EVERY: ++ case int(LC_CHP_EVERY): + { + istringstream iss( prog::optarg ); + iss >> _ChaptersEvery; +@@ -675,7 +675,7 @@ ChapterUtility::utility_option( int code + _action = &ChapterUtility::actionExport; + break; + +- case LC_CHP_EXPORT: ++ case int(LC_CHP_EXPORT): + _action = &ChapterUtility::actionExport; + /* currently not supported since the chapters of n input files would be written to one chapter file + _ChapterFile = prog::optarg; +@@ -690,7 +690,7 @@ ChapterUtility::utility_option( int code + _action = &ChapterUtility::actionImport; + break; + +- case LC_CHP_IMPORT: ++ case int(LC_CHP_IMPORT): + _action = &ChapterUtility::actionImport; + /* currently not supported since the chapters of n input files would be read from one chapter file + _ChapterFile = prog::optarg; +@@ -702,12 +702,12 @@ ChapterUtility::utility_option( int code + break; + + case 'c': +- case LC_CHP_CONVERT: ++ case int(LC_CHP_CONVERT): + _action = &ChapterUtility::actionConvert; + break; + + case 'r': +- case LC_CHP_REMOVE: ++ case int(LC_CHP_REMOVE): + _action = &ChapterUtility::actionRemove; + break; + +diff -Nrup a/util/mp4file.cpp b/util/mp4file.cpp +--- a/util/mp4file.cpp 2015-04-24 09:37:49.000000000 -0600 ++++ b/util/mp4file.cpp 2019-09-24 12:33:09.735996459 -0600 +@@ -190,15 +190,15 @@ FileUtility::utility_option( int code, b + handled = true; + + switch( code ) { +- case LC_LIST: ++ case int(LC_LIST): + _action = &FileUtility::actionList; + break; + +- case LC_OPTIMIZE: ++ case int(LC_OPTIMIZE): + _action = &FileUtility::actionOptimize; + break; + +- case LC_DUMP: ++ case int(LC_DUMP): + _action = &FileUtility::actionDump; + break; + +diff -Nrup a/util/mp4subtitle.cpp b/util/mp4subtitle.cpp +--- a/util/mp4subtitle.cpp 2015-04-24 09:37:49.000000000 -0600 ++++ b/util/mp4subtitle.cpp 2019-09-24 12:33:53.739773682 -0600 +@@ -165,25 +165,25 @@ SubtitleUtility::utility_option( int cod + handled = true; + + switch( code ) { +- case LC_LIST: ++ case int(LC_LIST): + _action = &SubtitleUtility::actionList; + break; + +- case LC_EXPORT: ++ case int(LC_EXPORT): + _action = &SubtitleUtility::actionExport; + _stTextFile = prog::optarg; + if( _stTextFile.empty() ) + return herrf( "invalid TXT file: empty-string\n" ); + break; + +- case LC_IMPORT: ++ case int(LC_IMPORT): + _action = &SubtitleUtility::actionImport; + _stTextFile = prog::optarg; + if( _stTextFile.empty() ) + return herrf( "invalid TXT file: empty-string\n" ); + break; + +- case LC_REMOVE: ++ case int(LC_REMOVE): + _action = &SubtitleUtility::actionRemove; + break; + +diff -Nrup a/util/mp4track.cpp b/util/mp4track.cpp +--- a/util/mp4track.cpp 2015-04-24 09:37:49.000000000 -0600 ++++ b/util/mp4track.cpp 2019-09-24 12:37:02.934815918 -0600 +@@ -789,11 +789,11 @@ TrackUtility::utility_option( int code, + handled = true; + + switch( code ) { +- case LC_TRACK_WILDCARD: ++ case int(LC_TRACK_WILDCARD): + _trackMode = TM_WILDCARD; + break; + +- case LC_TRACK_INDEX: ++ case int(LC_TRACK_INDEX): + { + _trackMode = TM_INDEX; + istringstream iss( prog::optarg ); +@@ -803,7 +803,7 @@ TrackUtility::utility_option( int code, + break; + } + +- case LC_TRACK_ID: ++ case int(LC_TRACK_ID): + { + _trackMode = TM_ID; + istringstream iss( prog::optarg ); +@@ -813,142 +813,142 @@ TrackUtility::utility_option( int code, + break; + } + +- case LC_LIST: ++ case int(LC_LIST): + _action = &TrackUtility::actionList; + break; + +- case LC_COLR_PARMS: ++ case int(LC_COLR_PARMS): + _colorParameterItem.convertFromCSV( prog::optarg ); + break; + +- case LC_COLR_PARM_HD: ++ case int(LC_COLR_PARM_HD): + _colorParameterItem.primariesIndex = 1; + _colorParameterItem.transferFunctionIndex = 1; + _colorParameterItem.matrixIndex = 1; + break; + +- case LC_COLR_PARM_SD: ++ case int(LC_COLR_PARM_SD): + _colorParameterItem.primariesIndex = 6; + _colorParameterItem.transferFunctionIndex = 1; + _colorParameterItem.matrixIndex = 6; + break; + +- case LC_COLR_LIST: ++ case int(LC_COLR_LIST): + _action = &TrackUtility::actionColorParameterList; + break; + +- case LC_ENABLED: ++ case int(LC_ENABLED): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setEnabled; + _actionTrackModifierSet_name = "enabled"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_INMOVIE: ++ case int(LC_INMOVIE): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setInMovie; + _actionTrackModifierSet_name = "inMovie"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_INPREVIEW: ++ case int(LC_INPREVIEW): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setInPreview; + _actionTrackModifierSet_name = "inPreview"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_LAYER: ++ case int(LC_LAYER): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setLayer; + _actionTrackModifierSet_name = "layer"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_ALTGROUP: ++ case int(LC_ALTGROUP): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setAlternateGroup; + _actionTrackModifierSet_name = "alternateGroup"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_VOLUME: ++ case int(LC_VOLUME): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setVolume; + _actionTrackModifierSet_name = "volume"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_WIDTH: ++ case int(LC_WIDTH): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setWidth; + _actionTrackModifierSet_name = "width"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_HEIGHT: ++ case int(LC_HEIGHT): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setHeight; + _actionTrackModifierSet_name = "height"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_LANGUAGE: ++ case int(LC_LANGUAGE): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setLanguage; + _actionTrackModifierSet_name = "language"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_HDLRNAME: ++ case int(LC_HDLRNAME): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setHandlerName; + _actionTrackModifierSet_name = "handlerName"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_UDTANAME: ++ case int(LC_UDTANAME): + _action = &TrackUtility::actionTrackModifierSet; + _actionTrackModifierSet_function = &TrackModifier::setUserDataName; + _actionTrackModifierSet_name = "userDataName"; + _actionTrackModifierSet_value = prog::optarg; + break; + +- case LC_UDTANAME_R: ++ case int(LC_UDTANAME_R): + _action = &TrackUtility::actionTrackModifierRemove; + _actionTrackModifierRemove_function = &TrackModifier::removeUserDataName; + _actionTrackModifierRemove_name = "userDataName"; + break; + +- case LC_COLR_ADD: ++ case int(LC_COLR_ADD): + _action = &TrackUtility::actionColorParameterAdd; + break; + +- case LC_COLR_SET: ++ case int(LC_COLR_SET): + _action = &TrackUtility::actionColorParameterSet; + break; + +- case LC_COLR_REMOVE: ++ case int(LC_COLR_REMOVE): + _action = &TrackUtility::actionColorParameterRemove; + break; + +- case LC_PASP_PARMS: ++ case int(LC_PASP_PARMS): + _pictureAspectRatioItem.convertFromCSV( prog::optarg ); + break; + +- case LC_PASP_LIST: ++ case int(LC_PASP_LIST): + _action = &TrackUtility::actionPictureAspectRatioList; + break; + +- case LC_PASP_ADD: ++ case int(LC_PASP_ADD): + _action = &TrackUtility::actionPictureAspectRatioAdd; + break; + +- case LC_PASP_SET: ++ case int(LC_PASP_SET): + _action = &TrackUtility::actionPictureAspectRatioSet; + break; + +- case LC_PASP_REMOVE: ++ case int(LC_PASP_REMOVE): + _action = &TrackUtility::actionPictureAspectRatioRemove; + break; + diff --git a/libmp4v2.spec b/libmp4v2.spec index 32c66f3..4974c36 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.19%{gver}%{?dist} +Release: 0.20%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -21,6 +21,7 @@ Patch7: 0007-Fix-Out-of-bounds-memory-access-in-MP4v2-2.0.0.patch Patch8: 0008-Fix-v2-Type-confusion-in-MP4v2-2.0.0.patch Patch9: 0009-Null-out-pointer-after-free-to-prevent-double-free.patch Patch10: 0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch +Patch50: gcc10.patch BuildRequires: gcc-c++ BuildRequires: autoconf automake gettext-devel libtool texinfo svn @@ -82,6 +83,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Sat Dec 14 2019 Jeff Law - 2.1.0-0.20.trunkREV507 +- Fix narrowing conversion issue caught by gcc-10 + * Fri Nov 08 2019 Sérgio Basto - 2.1.0-0.19.trunkREV507 - Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0 From 5933a17481cdff3b1aff349abc1b6877d5d099d0 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 29 Jan 2020 09:46:08 +0000 Subject: [PATCH 60/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 4974c36..1561882 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.20%{gver}%{?dist} +Release: 0.21%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -83,6 +83,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Wed Jan 29 2020 Fedora Release Engineering - 2.1.0-0.21.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Sat Dec 14 2019 Jeff Law - 2.1.0-0.20.trunkREV507 - Fix narrowing conversion issue caught by gcc-10 From 6a501abadcff730034efaa4264bea3a6959e5f99 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 28 Jul 2020 05:07:36 +0000 Subject: [PATCH 61/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 1561882..dea87ee 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.21%{gver}%{?dist} +Release: 0.22%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -83,6 +83,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Tue Jul 28 2020 Fedora Release Engineering - 2.1.0-0.22.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Wed Jan 29 2020 Fedora Release Engineering - 2.1.0-0.21.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild From fc94490818ac94666d6646e88528e36d256fe9df Mon Sep 17 00:00:00 2001 From: Troy Dawson Date: Thu, 24 Sep 2020 18:55:31 +0000 Subject: [PATCH 62/76] remove package.cfg per new epel-playground policy --- package.cfg | 2 -- 1 file changed, 2 deletions(-) delete mode 100644 package.cfg diff --git a/package.cfg b/package.cfg deleted file mode 100644 index 66ea79d..0000000 --- a/package.cfg +++ /dev/null @@ -1,2 +0,0 @@ -[koji] -targets = epel8 epel8-playground \ No newline at end of file From 18c9722ffa8003547e8f20382bac614c6b3fa1be Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Wed, 6 Jan 2021 01:15:22 +0000 Subject: [PATCH 63/76] Add BuildRequires: make https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot --- libmp4v2.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/libmp4v2.spec b/libmp4v2.spec index dea87ee..45f7c0b 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -23,6 +23,7 @@ Patch9: 0009-Null-out-pointer-after-free-to-prevent-double-free.patch Patch10: 0010-Fix-v3-Integer-underflow-overflow-in-MP4v2-2.0.0.patch Patch50: gcc10.patch +BuildRequires: make BuildRequires: gcc-c++ BuildRequires: autoconf automake gettext-devel libtool texinfo svn BuildRequires: python%{python3_pkgversion} doxygen help2man From 63b256f2c7c018a69d0261c7db5fee651c699a07 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 26 Jan 2021 17:32:31 +0000 Subject: [PATCH 64/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 45f7c0b..d6601ef 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.22%{gver}%{?dist} +Release: 0.23%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -84,6 +84,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Tue Jan 26 2021 Fedora Release Engineering - 2.1.0-0.23.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Tue Jul 28 2020 Fedora Release Engineering - 2.1.0-0.22.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 3688e45913ab8b65306f880da2c359232f47ec60 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 22 Jul 2021 11:52:30 +0000 Subject: [PATCH 65/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index d6601ef..4b7fa8d 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.23%{gver}%{?dist} +Release: 0.24%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -84,6 +84,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Thu Jul 22 2021 Fedora Release Engineering - 2.1.0-0.24.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Tue Jan 26 2021 Fedora Release Engineering - 2.1.0-0.23.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From 6e2ed9a5afe8f8b861d411e283fde1306e2e0419 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jan 2022 16:43:51 +0000 Subject: [PATCH 66/76] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 4b7fa8d..33012a3 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.24%{gver}%{?dist} +Release: 0.25%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -84,6 +84,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Thu Jan 20 2022 Fedora Release Engineering - 2.1.0-0.25.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Thu Jul 22 2021 Fedora Release Engineering - 2.1.0-0.24.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From a32e3c43f8c0a994e97aebf25a00901fdfe0a7f2 Mon Sep 17 00:00:00 2001 From: Troy Dawson Date: Mon, 31 Jan 2022 11:17:16 -0800 Subject: [PATCH 67/76] epel8-playground decommissioned : https://pagure.io/epel/issue/136 --- .cvsignore | 0 Makefile | 21 --------------------- dead.package | 1 + sources | 0 4 files changed, 1 insertion(+), 21 deletions(-) delete mode 100644 .cvsignore delete mode 100644 Makefile create mode 100644 dead.package delete mode 100644 sources diff --git a/.cvsignore b/.cvsignore deleted file mode 100644 index e69de29..0000000 diff --git a/Makefile b/Makefile deleted file mode 100644 index 9a673ec..0000000 --- a/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Makefile for source rpm: libmp4v2 -# $Id$ -NAME := libmp4v2 -SPECFILE = $(firstword $(wildcard *.spec)) - -define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done -endef - -MAKEFILE_COMMON := $(shell $(find-makefile-common)) - -ifeq ($(MAKEFILE_COMMON),) -# attept a checkout -define checkout-makefile-common -test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 -endef - -MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) -endif - -include $(MAKEFILE_COMMON) diff --git a/dead.package b/dead.package new file mode 100644 index 0000000..a72aec0 --- /dev/null +++ b/dead.package @@ -0,0 +1 @@ +epel8-playground decommissioned : https://pagure.io/epel/issue/136 diff --git a/sources b/sources deleted file mode 100644 index e69de29..0000000 From afd486851639cbf39eaefc1a9ac04534ca6284ea Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 21 Jul 2022 18:24:38 +0000 Subject: [PATCH 68/76] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 33012a3..65278c0 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.25%{gver}%{?dist} +Release: 0.26%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -84,6 +84,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Thu Jul 21 2022 Fedora Release Engineering - 2.1.0-0.26.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Thu Jan 20 2022 Fedora Release Engineering - 2.1.0-0.25.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From 4ebe9904e3a1cc0459d54dd082fd270268a5326b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 19 Jan 2023 16:54:26 +0000 Subject: [PATCH 69/76] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 65278c0..642044d 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.26%{gver}%{?dist} +Release: 0.27%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -84,6 +84,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Thu Jan 19 2023 Fedora Release Engineering - 2.1.0-0.27.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Thu Jul 21 2022 Fedora Release Engineering - 2.1.0-0.26.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From c43a2cb3e794ad21b7d263fcc9e1efcc673ac45e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jul 2023 11:29:29 +0000 Subject: [PATCH 70/76] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 642044d..94bbe41 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.27%{gver}%{?dist} +Release: 0.28%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -84,6 +84,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Thu Jul 20 2023 Fedora Release Engineering - 2.1.0-0.28.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Thu Jan 19 2023 Fedora Release Engineering - 2.1.0-0.27.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From d86e78df27b2f7dfc12e904958be0b45d774d65b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 21 Jan 2024 04:42:58 +0000 Subject: [PATCH 71/76] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 94bbe41..606e857 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.28%{gver}%{?dist} +Release: 0.29%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -84,6 +84,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Sun Jan 21 2024 Fedora Release Engineering - 2.1.0-0.29.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Thu Jul 20 2023 Fedora Release Engineering - 2.1.0-0.28.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From 4de1efad61016e136fc5e1ebcd20fcc77c1a0093 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 25 Jan 2024 02:55:21 +0000 Subject: [PATCH 72/76] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 606e857..ad8750c 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.29%{gver}%{?dist} +Release: 0.30%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -84,6 +84,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Thu Jan 25 2024 Fedora Release Engineering - 2.1.0-0.30.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Sun Jan 21 2024 Fedora Release Engineering - 2.1.0-0.29.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 075bc035a164b5203173520865e0b08de5a28e39 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 18 Jul 2024 14:29:25 +0000 Subject: [PATCH 73/76] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index ad8750c..86755a7 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.30%{gver}%{?dist} +Release: 0.31%{gver}%{?dist} License: MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh @@ -84,6 +84,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Thu Jul 18 2024 Fedora Release Engineering - 2.1.0-0.31.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Thu Jan 25 2024 Fedora Release Engineering - 2.1.0-0.30.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From faaf79e71ea9c87d74ea019063c26380baf3fc28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20Such=C3=BD?= Date: Mon, 2 Sep 2024 10:06:26 +0200 Subject: [PATCH 74/76] convert license to SPDX This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4 --- libmp4v2.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 86755a7..fa234f7 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,8 +4,9 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.31%{gver}%{?dist} -License: MPLv1.1 +Release: 0.32%{gver}%{?dist} +# Automatically converted from old format: MPLv1.1 - review is highly recommended. +License: LicenseRef-Callaway-MPLv1.1 URL: http://code.google.com/p/mp4v2 # mp4v2-trunk-r507.tar.bz2 made with ./make-svn-snapshot.sh Source0: http://mp4v2.googlecode.com/files/mp4v2-trunk-r%{svnversion}.tar.bz2 @@ -84,6 +85,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Mon Sep 02 2024 Miroslav Suchý - 2.1.0-0.32.trunkREV507 +- convert license to SPDX + * Thu Jul 18 2024 Fedora Release Engineering - 2.1.0-0.31.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From c883aaf3f78d35afc16ab5c07916d0f066bd5069 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 17 Jan 2025 12:07:40 +0000 Subject: [PATCH 75/76] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index fa234f7..3ae4819 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.32%{gver}%{?dist} +Release: 0.33%{gver}%{?dist} # Automatically converted from old format: MPLv1.1 - review is highly recommended. License: LicenseRef-Callaway-MPLv1.1 URL: http://code.google.com/p/mp4v2 @@ -85,6 +85,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Fri Jan 17 2025 Fedora Release Engineering - 2.1.0-0.33.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Mon Sep 02 2024 Miroslav Suchý - 2.1.0-0.32.trunkREV507 - convert license to SPDX From 5402fddbc50348cc93833a1a08d8cf00c4db27e0 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 24 Jul 2025 20:00:57 +0000 Subject: [PATCH 76/76] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- libmp4v2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libmp4v2.spec b/libmp4v2.spec index 3ae4819..275a829 100644 --- a/libmp4v2.spec +++ b/libmp4v2.spec @@ -4,7 +4,7 @@ Summary: Library for working with files using the mp4 container format Name: libmp4v2 Version: 2.1.0 -Release: 0.33%{gver}%{?dist} +Release: 0.34%{gver}%{?dist} # Automatically converted from old format: MPLv1.1 - review is highly recommended. License: LicenseRef-Callaway-MPLv1.1 URL: http://code.google.com/p/mp4v2 @@ -85,6 +85,9 @@ find %{buildroot} -name '*.la' -delete %changelog +* Thu Jul 24 2025 Fedora Release Engineering - 2.1.0-0.34.trunkREV507 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Fri Jan 17 2025 Fedora Release Engineering - 2.1.0-0.33.trunkREV507 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild