From 407c57c0f7b0ec35b52f7d7257c1e2edf75fe377 Mon Sep 17 00:00:00 2001 From: Silvan Calarco Date: Fri, 5 Jan 2024 19:31:21 +0100 Subject: [PATCH] package created using the webbuild interface [release 3.5-1mamba;Sun Nov 07 2021] --- README.md | 2 ++ x265-3.5-arm.patch | 76 ++++++++++++++++++++++++++++++++++++++++++ x265.spec | 82 ++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 160 insertions(+) create mode 100644 x265-3.5-arm.patch create mode 100644 x265.spec diff --git a/README.md b/README.md index fb34a78..405298d 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,4 @@ # x265 +x265 HEVC Encoder. + diff --git a/x265-3.5-arm.patch b/x265-3.5-arm.patch new file mode 100644 index 0000000..a02dc95 --- /dev/null +++ b/x265-3.5-arm.patch @@ -0,0 +1,76 @@ +diff -r 2a65b7209850 source/CMakeLists.txt +--- a/source/CMakeLists.txt Fri May 29 23:09:35 2020 +0530 ++++ b/source/CMakeLists.txt Tue Jun 09 12:49:19 2020 -0600 +@@ -40,7 +40,7 @@ + # System architecture detection + string(TOLOWER "${CMAKE_SYSTEM_PROCESSOR}" SYSPROC) + set(X86_ALIASES x86 i386 i686 x86_64 amd64) +-set(ARM_ALIASES armv6l armv7l aarch64) ++set(ARM_ALIASES armv5tel armv6l armv7l aarch64) + list(FIND X86_ALIASES "${SYSPROC}" X86MATCH) + list(FIND ARM_ALIASES "${SYSPROC}" ARMMATCH) + set(POWER_ALIASES ppc64 ppc64le) +@@ -76,8 +76,16 @@ + set(ARM64 1) + add_definitions(-DX265_ARCH_ARM=1 -DX265_ARCH_ARM64=1 -DHAVE_ARMV6=0) + else() +- message(STATUS "Detected ARM target processor") +- add_definitions(-DX265_ARCH_ARM=1 -DX265_ARCH_ARM64=0 -DHAVE_ARMV6=1) ++ if(${SYSPROC} MATCHES "armv5.*") ++ message(STATUS "Detected ARMV5 system processor") ++ add_definitions(-DX265_ARCH_ARM=1 -DX265_ARCH_ARM64=0 -DHAVE_ARMV6=0 -DHAVE_NEON=0) ++ elseif(${SYSPROC} STREQUAL "armv6l") ++ message(STATUS "Detected ARMV6 system processor") ++ add_definitions(-DX265_ARCH_ARM=1 -DX265_ARCH_ARM64=0 -DHAVE_ARMV6=0 -DHAVE_NEON=0) ++ elseif(${SYSPROC} STREQUAL "armv7l") ++ message(STATUS "Detected ARMV7 system processor") ++ add_definitions(-DX265_ARCH_ARM=1 -DX265_ARCH_ARM64=0 -DHAVE_ARMV6=0 -DHAVE_NEON=0 -fPIC) ++ endif() + endif() + else() + message(STATUS "CMAKE_SYSTEM_PROCESSOR value `${CMAKE_SYSTEM_PROCESSOR}` is unknown") +@@ -238,28 +246,11 @@ + endif() + endif() + endif() +- if(ARM AND CROSS_COMPILE_ARM) +- if(ARM64) +- set(ARM_ARGS -fPIC) +- else() +- set(ARM_ARGS -march=armv6 -mfloat-abi=soft -mfpu=vfp -marm -fPIC) +- endif() +- message(STATUS "cross compile arm") +- elseif(ARM) +- if(ARM64) +- set(ARM_ARGS -fPIC) +- add_definitions(-DHAVE_NEON) +- else() +- find_package(Neon) +- if(CPU_HAS_NEON) +- set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=neon -marm -fPIC) +- add_definitions(-DHAVE_NEON) +- else() +- set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=vfp -marm) +- endif() +- endif() ++ if(ARM64) ++ set(ARM_ARGS -fPIC) ++ add_definitions(-DHAVE_NEON) ++ add_definitions(${ARM_ARGS}) + endif() +- add_definitions(${ARM_ARGS}) + if(FPROFILE_GENERATE) + if(INTEL_CXX) + add_definitions(-prof-gen -prof-dir="${CMAKE_CURRENT_BINARY_DIR}") +diff -r 2a65b7209850 source/common/cpu.cpp +--- a/source/common/cpu.cpp Fri May 29 23:09:35 2020 +0530 ++++ b/source/common/cpu.cpp Tue Jun 09 12:49:19 2020 -0600 +@@ -39,7 +39,7 @@ + #include + #endif + +-#if X265_ARCH_ARM && !defined(HAVE_NEON) ++#if X265_ARCH_ARM && (!defined(HAVE_NEON) || HAVE_NEON==0) + #include + #include + static sigjmp_buf jmpbuf; diff --git a/x265.spec b/x265.spec new file mode 100644 index 0000000..7467016 --- /dev/null +++ b/x265.spec @@ -0,0 +1,82 @@ +Name: x265 +Version: 3.5 +Release: 1mamba +Summary: x265 HEVC Encoder +Group: System/Libraries +Vendor: openmamba +Distribution: openmamba +Packager: Silvan Calarco +URL: https://bitbucket.org/multicoreware/x265_git +Source: https://bitbucket.org/multicoreware/x265_git/downloads/x265_%{version}.tar.gz +Patch0: x265-3.5-arm.patch +License: GPL +## AUTOBUILDREQ-BEGIN +BuildRequires: glibc-devel +BuildRequires: libgcc +BuildRequires: libnuma-devel +BuildRequires: libstdc++6-devel +## AUTOBUILDREQ-END +Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release} + +%description +x265 HEVC Encoder. + +%package -n lib%{name} +Group: System/Libraries +Summary: Shared libraries for %{name} + +%description -n lib%{name} +This package contains shared libraries for %{name}. + +%package -n lib%{name}-devel +Group: Development/Libraries +Summary: Development files for %{name} +Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release} +Requires: pkg-config + +%description -n lib%{name}-devel +This package contains libraries and header files for developing applications that use %{name}. + + +%debug_package + +%prep +%setup -q -n %{name}_%{version} +%patch0 -p1 + +%build +%cmake -d build_x265 \ + -S ../source + +%make + +%install +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" +%makeinstall -C build_x265 + +%clean +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" + +%post -n lib%{name} -p /sbin/ldconfig +%postun -n lib%{name} -p /sbin/ldconfig + +%files +%defattr(-,root,root) +%{_bindir}/x265 + +%files -n lib%{name} +%defattr(-,root,root) +%{_libdir}/libx265.so.* +%doc COPYING + +%files -n lib%{name}-devel +%defattr(-,root,root) +%{_includedir}/x265.h +%{_includedir}/x265_config.h +%{_libdir}/libx265.a +%{_libdir}/libx265.so +%{_libdir}/pkgconfig/x265.pc + +%changelog +* Sun Nov 07 2021 Silvan Calarco 3.5-1mamba +- package created using the webbuild interface