Index: Makefile
===================================================================
--- Makefile (nonexistent)
+++ Makefile (revision 5)
@@ -0,0 +1,58 @@
+
+COMPONENT_TARGETS = $(HARDWARE_NOARCH)
+
+
+include ../../../../../build-system/constants.mk
+
+
+url = $(DOWNLOAD_SERVER)/sources/packages/m/VideoLAN/x265
+
+versions = 3.5
+pkgname = x265
+suffix = tar.gz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+patches = $(CURDIR)/patches/x265-3.5-cross.patch
+patches += $(CURDIR)/patches/x265-3.5-version.patch
+
+.NOTPARALLEL: $(patches)
+
+
+BUILD_TARGETS = $(tarballs) $(sha1s) $(patches)
+
+
+include ../../../../../build-system/core.mk
+
+
+.PHONY: download_clean
+
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======" ; \
+ for tarball in $(tarballs) ; do \
+ echo "$(url)/$$tarball" | xargs -n 1 -P 100 wget $(WGET_OPTIONS) - & \
+ done ; wait
+
+$(sha1s): $(tarballs)
+ @for sha in $@ ; do \
+ echo -e "\n======= Downloading '$$sha' signature =======\n" ; \
+ echo "$(url)/$$sha" | xargs -n 1 -P 100 wget $(WGET_OPTIONS) - & wait %1 ; \
+ touch $$sha ; \
+ echo -e "\n======= Check the '$$sha' sha1sum =======\n" ; \
+ sha1sum --check $$sha ; ret="$$?" ; \
+ if [ "$$ret" == "1" ]; then \
+ echo -e "\n======= ERROR: Bad '$$sha' sha1sum =======\n" ; \
+ exit 1 ; \
+ fi ; \
+ done
+
+$(patches): $(sha1s)
+ @echo -e "\n======= Create Patches =======\n" ; \
+ ( cd create-3.5-cross-patch ; ./create.patch.sh ) ; \
+ ( cd create-3.5-version-patch ; ./create.patch.sh ) ; \
+ echo -e "\n"
+
+download_clean:
+ @rm -f $(tarballs) $(sha1s) $(patches)
Index: create-3.5-cross-patch/create.patch.sh
===================================================================
--- create-3.5-cross-patch/create.patch.sh (nonexistent)
+++ create-3.5-cross-patch/create.patch.sh (revision 5)
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+VERSION=3.5
+
+tar --files-from=file.list -xzvf ../x265-$VERSION.tar.gz
+mv x265-$VERSION x265-$VERSION-orig
+
+cp -rf ./x265-$VERSION-new ./x265-$VERSION
+
+diff --unified -Nr x265-$VERSION-orig x265-$VERSION > x265-$VERSION-cross.patch
+
+mv x265-$VERSION-cross.patch ../patches
+
+rm -rf ./x265-$VERSION
+rm -rf ./x265-$VERSION-orig
Property changes on: create-3.5-cross-patch/create.patch.sh
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: create-3.5-cross-patch/file.list
===================================================================
--- create-3.5-cross-patch/file.list (nonexistent)
+++ create-3.5-cross-patch/file.list (revision 5)
@@ -0,0 +1 @@
+x265-3.5/source/CMakeLists.txt
Index: create-3.5-cross-patch/x265-3.5-new/source/CMakeLists.txt
===================================================================
--- create-3.5-cross-patch/x265-3.5-new/source/CMakeLists.txt (nonexistent)
+++ create-3.5-cross-patch/x265-3.5-new/source/CMakeLists.txt (revision 5)
@@ -0,0 +1,809 @@
+# vim: syntax=cmake
+if(NOT CMAKE_BUILD_TYPE)
+ # default to Release build for GCC builds
+ set(CMAKE_BUILD_TYPE Release CACHE STRING
+ "Choose the type of build, options are: None(CMAKE_CXX_FLAGS or CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel."
+ FORCE)
+endif()
+message(STATUS "cmake version ${CMAKE_VERSION}")
+if(POLICY CMP0025)
+ cmake_policy(SET CMP0025 OLD) # report Apple's Clang as just Clang
+endif()
+if(POLICY CMP0042)
+ cmake_policy(SET CMP0042 NEW) # MACOSX_RPATH
+endif()
+if(POLICY CMP0054)
+ cmake_policy(SET CMP0054 OLD) # Only interpret if() arguments as variables or keywords when unquoted
+endif()
+
+project (x265)
+cmake_minimum_required (VERSION 2.8.8) # OBJECT libraries require 2.8.8
+include(CheckIncludeFiles)
+include(CheckFunctionExists)
+include(CheckSymbolExists)
+include(CheckCXXCompilerFlag)
+
+option(FPROFILE_GENERATE "Compile executable to generate usage data" OFF)
+option(FPROFILE_USE "Compile executable using generated usage data" OFF)
+option(NATIVE_BUILD "Target the build CPU" OFF)
+option(STATIC_LINK_CRT "Statically link C runtime for release builds" OFF)
+mark_as_advanced(FPROFILE_USE FPROFILE_GENERATE NATIVE_BUILD)
+# X265_BUILD must be incremented each time the public API is changed
+set(X265_BUILD 199)
+configure_file("${PROJECT_SOURCE_DIR}/x265.def.in"
+ "${PROJECT_BINARY_DIR}/x265.def")
+configure_file("${PROJECT_SOURCE_DIR}/x265_config.h.in"
+ "${PROJECT_BINARY_DIR}/x265_config.h")
+
+SET(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake" "${CMAKE_MODULE_PATH}")
+
+# System architecture detection
+string(TOLOWER "${CMAKE_SYSTEM_PROCESSOR}" SYSPROC)
+set(X86_ALIASES x86 i386 i686 x86_64 amd64)
+set(ARM_ALIASES armv6l armv7l aarch64)
+list(FIND X86_ALIASES "${SYSPROC}" X86MATCH)
+list(FIND ARM_ALIASES "${SYSPROC}" ARMMATCH)
+set(MIPS_ALIASES mips mipsel)
+list(FIND MIPS_ALIASES "${SYSPROC}" MIPSMATCH)
+set(POWER_ALIASES ppc ppcle ppc64 ppc64le)
+list(FIND POWER_ALIASES "${SYSPROC}" POWERMATCH)
+set(RISCV_ALIASES riscv riscv64)
+list(FIND RISCV_ALIASES "${SYSPROC}" RISCVMATCH)
+if("${SYSPROC}" STREQUAL "" OR X86MATCH GREATER "-1")
+ set(X86 1)
+ add_definitions(-DX265_ARCH_X86=1)
+ if(CMAKE_CXX_FLAGS STREQUAL "-m32")
+ message(STATUS "Detected x86 target processor")
+ elseif("${CMAKE_SIZEOF_VOID_P}" MATCHES 8)
+ set(X64 1)
+ add_definitions(-DX86_64=1)
+ message(STATUS "Detected x86_64 target processor")
+ endif()
+elseif(MIPSMATCH GREATER "-1")
+ message(STATUS "Detected MIPS target processor")
+ set(MIPS 1)
+ add_definitions(-DX265_ARCH_MIPS=1)
+elseif(POWERMATCH GREATER "-1")
+ message(STATUS "Detected POWER target processor")
+ set(POWER 1)
+ add_definitions(-DX265_ARCH_POWER=1)
+ if("${CMAKE_SIZEOF_VOID_P}" MATCHES 8)
+ set(PPC64 1)
+ add_definitions(-DPPC64=1)
+ message(STATUS "Detected POWER PPC64 target processor")
+ endif()
+elseif(RISCVMATCH GREATER "-1")
+ message(STATUS "Detected RISCV target processor")
+ set(RISCV 1)
+ add_definitions(-DX265_ARCH_RISCV=1)
+ if("${CMAKE_SIZEOF_VOID_P}" MATCHES 8)
+ set(RISCV64 1)
+ add_definitions(-DRISCV64=1)
+ message(STATUS "Detected RISCV64 target processor")
+ endif()
+elseif(ARMMATCH GREATER "-1")
+ if(CROSS_COMPILE_ARM)
+ message(STATUS "Cross compiling for ARM arch")
+ else()
+ set(CROSS_COMPILE_ARM 0)
+ endif()
+ set(ARM 1)
+ if("${CMAKE_SIZEOF_VOID_P}" MATCHES 8)
+ message(STATUS "Detected ARM64 target processor")
+ 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)
+ endif()
+else()
+ message(STATUS "CMAKE_SYSTEM_PROCESSOR value `${CMAKE_SYSTEM_PROCESSOR}` is unknown")
+ message(STATUS "Please add this value near ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE}")
+endif()
+
+if(UNIX)
+ list(APPEND PLATFORM_LIBS pthread)
+ find_library(LIBRT rt)
+ if(LIBRT)
+ list(APPEND PLATFORM_LIBS rt)
+ endif()
+ mark_as_advanced(LIBRT)
+ find_library(LIBDL dl)
+ if(LIBDL)
+ list(APPEND PLATFORM_LIBS dl)
+ endif()
+ option(ENABLE_LIBNUMA "Enable libnuma usage (Linux only)" ON)
+ if(ENABLE_LIBNUMA)
+ find_package(Numa)
+ if(NUMA_FOUND)
+ link_directories(${NUMA_LIBRARY_DIR})
+ list(APPEND CMAKE_REQUIRED_LIBRARIES numa)
+ list(APPEND CMAKE_REQUIRED_INCLUDES ${NUMA_INCLUDE_DIR})
+ list(APPEND CMAKE_REQUIRED_LINK_OPTIONS "-L${NUMA_LIBRARY_DIR}")
+ check_symbol_exists(numa_node_of_cpu numa.h NUMA_V2)
+ if(NUMA_V2)
+ add_definitions(-DHAVE_LIBNUMA)
+ message(STATUS "libnuma found, building with support for NUMA nodes")
+ list(APPEND PLATFORM_LIBS numa)
+ include_directories(${NUMA_INCLUDE_DIR})
+ endif()
+ endif()
+ mark_as_advanced(NUMA_FOUND)
+ endif(ENABLE_LIBNUMA)
+ option(NO_ATOMICS "Use a slow mutex to replace atomics" OFF)
+ if(NO_ATOMICS)
+ add_definitions(-DNO_ATOMICS=1)
+ endif(NO_ATOMICS)
+ find_library(VMAF vmaf)
+ option(ENABLE_LIBVMAF "Enable VMAF" OFF)
+ if(ENABLE_LIBVMAF)
+ add_definitions(-DENABLE_LIBVMAF)
+ endif()
+endif(UNIX)
+
+if(X64 AND NOT WIN32)
+ option(ENABLE_PIC "Enable Position Independent Code" ON)
+else()
+ option(ENABLE_PIC "Enable Position Independent Code" OFF)
+endif(X64 AND NOT WIN32)
+
+# Compiler detection
+if(CMAKE_GENERATOR STREQUAL "Xcode")
+ set(XCODE 1)
+endif()
+if(APPLE)
+ add_definitions(-DMACOS=1)
+endif()
+
+if(${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang")
+ set(CLANG 1)
+endif()
+if(${CMAKE_CXX_COMPILER_ID} STREQUAL "Intel")
+ set(INTEL_CXX 1)
+endif()
+if(${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU")
+ set(GCC 1)
+endif()
+
+if(INTEL_CXX AND WIN32)
+ # treat icl roughly like MSVC
+ set(MSVC 1)
+endif()
+if(MSVC)
+ if(STATIC_LINK_CRT)
+ set(CompilerFlags CMAKE_CXX_FLAGS_RELEASE CMAKE_C_FLAGS_RELEASE)
+ foreach(CompilerFlag ${CompilerFlags})
+ string(REPLACE "/MD" "/MT" ${CompilerFlag} "${${CompilerFlag}}")
+ endforeach()
+ endif(STATIC_LINK_CRT)
+ add_definitions(/W4) # Full warnings
+ add_definitions(/Ob2) # always inline
+ add_definitions(/MP) # multithreaded build
+
+ # disable Microsofts suggestions for proprietary secure APIs
+ add_definitions(/D_CRT_SECURE_NO_WARNINGS)
+
+ check_include_files(stdint.h HAVE_STDINT_H)
+ if(NOT HAVE_STDINT_H)
+ include_directories(compat/msvc)
+ endif()
+endif(MSVC)
+
+check_include_files(inttypes.h HAVE_INT_TYPES_H)
+if(HAVE_INT_TYPES_H)
+ add_definitions(-DHAVE_INT_TYPES_H=1)
+endif()
+
+if(INTEL_CXX AND UNIX)
+ set(GCC 1) # treat icpc roughly like gcc
+elseif(CLANG)
+ set(GCC 1) # treat clang roughly like gcc
+elseif(CMAKE_COMPILER_IS_GNUCXX)
+ set(GCC 1)
+endif()
+
+if(CC STREQUAL "xlc")
+ message(STATUS "Use XLC compiler")
+ set(XLC 1)
+ set(GCC 0)
+ #set(CMAKE_C_COMPILER "/usr/bin/xlc")
+ #set(CMAKE_CXX_COMPILER "/usr/bin/xlc++")
+ add_definitions(-D__XLC__=1)
+ add_definitions(-O3 -qstrict -qhot -qaltivec)
+ add_definitions(-qinline=level=10 -qpath=IL:/data/video_files/latest.tpo/)
+endif()
+# this option is to enable the inclusion of dynamic HDR10 library to the libx265 compilation
+option(ENABLE_HDR10_PLUS "Enable dynamic HDR10 compilation" OFF)
+if(MSVC AND (MSVC_VERSION LESS 1800) AND ENABLE_HDR10_PLUS)
+ message(FATAL_ERROR "MSVC version 12.0 or above required to support hdr10plus")
+endif()
+if(WIN32 AND (MSVC_VERSION GREATER 1800))
+ if(CMAKE_VERSION VERSION_LESS 3.7)
+ message(FATAL_ERROR "cmake version not compatible for VS 2017. Update the cmake to versions 3.7 or above")
+ endif()
+endif()
+if(GCC)
+ add_definitions(-Wall -Wextra -Wshadow)
+ add_definitions(-D__STDC_LIMIT_MACROS=1)
+ if(NOT INTEL_CXX AND NOT CLANG AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 8.0)
+ add_definitions(-Wno-class-memaccess)
+ endif()
+ if(ENABLE_HDR10_PLUS)
+ if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.8")
+ message(FATAL_ERROR "gcc version above 4.8 required to support hdr10plus")
+ endif()
+ add_definitions(-std=gnu++11)
+ else()
+ add_definitions(-std=gnu++98)
+ endif()
+ if(ENABLE_PIC)
+ add_definitions(-fPIC)
+ endif(ENABLE_PIC)
+ if(NATIVE_BUILD)
+ if(INTEL_CXX)
+ add_definitions(-xhost)
+ else()
+ add_definitions(-march=native)
+ endif()
+ elseif(X86 AND NOT X64)
+ string(FIND "${CMAKE_CXX_FLAGS}" "-march" marchPos)
+ if(marchPos LESS "0")
+ add_definitions(-march=i686)
+ if(WIN32 AND NOT INTEL_CXX AND NOT CLANG AND
+ CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 6.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.0)
+ add_definitions(-mpreferred-stack-boundary=2)
+ 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)
+ set(ARM_ARGS -fPIC)
+ add_definitions(-DHAVE_NEON)
+ else()
+# set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=vfp -marm)
+ endif()
+ endif()
+ endif()
+ add_definitions(${ARM_ARGS})
+ if(FPROFILE_GENERATE)
+ if(INTEL_CXX)
+ add_definitions(-prof-gen -prof-dir="${CMAKE_CURRENT_BINARY_DIR}")
+ list(APPEND LINKER_OPTIONS "-prof-gen")
+ else()
+ check_cxx_compiler_flag(-fprofile-generate CC_HAS_PROFILE_GENERATE)
+ if(CC_HAS_PROFILE_GENERATE)
+ add_definitions(-fprofile-generate)
+ list(APPEND LINKER_OPTIONS "-fprofile-generate")
+ endif(CC_HAS_PROFILE_GENERATE)
+ endif(INTEL_CXX)
+ endif(FPROFILE_GENERATE)
+ if(FPROFILE_USE)
+ if(INTEL_CXX)
+ add_definitions(-prof-use -prof-dir="${CMAKE_CURRENT_BINARY_DIR}")
+ list(APPEND LINKER_OPTIONS "-prof-use")
+ else()
+ check_cxx_compiler_flag(-fprofile-use CC_HAS_PROFILE_USE)
+ check_cxx_compiler_flag(-fprofile-correction CC_HAS_PROFILE_CORRECTION)
+ check_cxx_compiler_flag(-Wno-error=coverage-mismatch CC_HAS_COVMISMATCH)
+ if(CC_HAS_PROFILE_USE)
+ add_definitions(-fprofile-use)
+ list(APPEND LINKER_OPTIONS "-fprofile-use")
+ endif(CC_HAS_PROFILE_USE)
+ if(CC_HAS_PROFILE_CORRECTION)
+ # auto-correct corrupted counters (happens a lot with x265)
+ add_definitions(-fprofile-correction)
+ endif(CC_HAS_PROFILE_CORRECTION)
+ if(CC_HAS_COVMISMATCH)
+ # ignore coverage mismatches (also happens a lot)
+ add_definitions(-Wno-error=coverage-mismatch)
+ endif(CC_HAS_COVMISMATCH)
+ endif(INTEL_CXX)
+ endif(FPROFILE_USE)
+ if(STATIC_LINK_CRT)
+ add_definitions(-static)
+ list(APPEND LINKER_OPTIONS "-static-libgcc")
+ endif(STATIC_LINK_CRT)
+ check_cxx_compiler_flag(-Wno-strict-overflow CC_HAS_NO_STRICT_OVERFLOW)
+ check_cxx_compiler_flag(-Wno-narrowing CC_HAS_NO_NARROWING)
+ check_cxx_compiler_flag(-Wno-array-bounds CC_HAS_NO_ARRAY_BOUNDS)
+ if (CC_HAS_NO_ARRAY_BOUNDS)
+ add_definitions(-Wno-array-bounds) # these are unhelpful
+ endif()
+ check_cxx_compiler_flag(-ffast-math CC_HAS_FAST_MATH)
+ if (CC_HAS_FAST_MATH)
+ add_definitions(-ffast-math)
+ endif()
+ check_cxx_compiler_flag(-mstackrealign CC_HAS_STACK_REALIGN)
+ if (CC_HAS_STACK_REALIGN)
+ add_definitions(-mstackrealign)
+ endif()
+ # Disable exceptions. Reduce executable size, increase compability.
+ check_cxx_compiler_flag(-fno-exceptions CC_HAS_FNO_EXCEPTIONS_FLAG)
+ if(CC_HAS_FNO_EXCEPTIONS_FLAG)
+ add_definitions(-fno-exceptions)
+ endif()
+ set(FSANITIZE "" CACHE STRING "-fsanitize options for GCC/clang")
+ if(FSANITIZE)
+ add_definitions(-fsanitize=${FSANITIZE})
+ # clang and gcc need the sanitize options to be passed at link
+ # time so the appropriate ASAN/TSAN runtime libraries can be
+ # linked.
+ list(APPEND LINKER_OPTIONS "-fsanitize=${FSANITIZE}")
+ endif()
+ option(ENABLE_AGGRESSIVE_CHECKS "Enable stack protection and -ftrapv" OFF)
+ if(ENABLE_AGGRESSIVE_CHECKS)
+ # use with care, -ftrapv can cause testbench SIGILL exceptions
+ # since it is testing corner cases of signed integer math
+ add_definitions(-DUSING_FTRAPV=1)
+ check_cxx_compiler_flag(-fsanitize=undefined-trap CC_HAS_CATCH_UNDEFINED) # clang
+ check_cxx_compiler_flag(-ftrapv CC_HAS_FTRAPV) # gcc
+ check_cxx_compiler_flag(-fstack-protector-all CC_HAS_STACK_PROTECT) # gcc
+ if(CC_HAS_FTRAPV)
+ add_definitions(-ftrapv)
+ endif()
+ if(CC_HAS_CATCH_UNDEFINED)
+ add_definitions(-fsanitize=undefined-trap -fsanitize-undefined-trap-on-error)
+ endif()
+ if(CC_HAS_STACK_PROTECT)
+ add_definitions(-fstack-protector-all)
+ if(MINGW)
+ list(APPEND PLATFORM_LIBS ssp)
+ endif()
+ endif()
+ endif(ENABLE_AGGRESSIVE_CHECKS)
+ execute_process(COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE CC_VERSION)
+endif(GCC)
+
+find_package(Nasm)
+if(ARM OR CROSS_COMPILE_ARM)
+ option(ENABLE_ASSEMBLY "Enable use of assembly coded primitives" ON)
+elseif((NASM_FOUND AND X86) AND (NOT DISABLE_X86_NASM))
+ if (NASM_VERSION_STRING VERSION_LESS "2.13.0")
+ message(STATUS "Nasm version ${NASM_VERSION_STRING} is too old. 2.13.0 or later required")
+ option(ENABLE_ASSEMBLY "Enable use of assembly coded primitives" OFF)
+ else()
+ message(STATUS "Found Nasm ${NASM_VERSION_STRING} to build assembly primitives")
+ option(ENABLE_ASSEMBLY "Enable use of assembly coded primitives" ON)
+ endif()
+else()
+ option(ENABLE_ASSEMBLY "Enable use of assembly coded primitives" OFF)
+endif()
+
+option(CHECKED_BUILD "Enable run-time sanity checks (debugging)" OFF)
+if(CHECKED_BUILD)
+ add_definitions(-DCHECKED_BUILD=1)
+endif()
+
+# Build options
+set(LIB_INSTALL_DIR lib CACHE STRING "Install location of libraries")
+set(BIN_INSTALL_DIR bin CACHE STRING "Install location of executables")
+set(EXTRA_LIB "" CACHE STRING "Extra libraries to link against")
+set(EXTRA_LINK_FLAGS "" CACHE STRING "Extra link flags")
+if(EXTRA_LINK_FLAGS)
+ list(APPEND LINKER_OPTIONS ${EXTRA_LINK_FLAGS})
+endif()
+if(EXTRA_LIB)
+ option(LINKED_8BIT "8bit libx265 is being linked with this library" OFF)
+ option(LINKED_10BIT "10bit libx265 is being linked with this library" OFF)
+ option(LINKED_12BIT "12bit libx265 is being linked with this library" OFF)
+endif(EXTRA_LIB)
+mark_as_advanced(EXTRA_LIB EXTRA_LINK_FLAGS)
+
+if(X64)
+ # NOTE: We only officially support high-bit-depth compiles of x265
+ # on 64bit architectures. Main10 plus large resolution plus slow
+ # preset plus 32bit address space usually means malloc failure. You
+ # can disable this if(X64) check if you desparately need a 32bit
+ # build with 10bit/12bit support, but this violates the "shrink wrap
+ # license" so to speak. If it breaks you get to keep both halves.
+ # You will need to disable assembly manually.
+ option(HIGH_BIT_DEPTH "Store pixel samples as 16bit values (Main10/Main12)" OFF)
+endif(X64)
+if(HIGH_BIT_DEPTH)
+ option(MAIN12 "Support Main12 instead of Main10" OFF)
+ if(MAIN12)
+ add_definitions(-DHIGH_BIT_DEPTH=1 -DX265_DEPTH=12)
+ else()
+ add_definitions(-DHIGH_BIT_DEPTH=1 -DX265_DEPTH=10)
+ endif()
+else(HIGH_BIT_DEPTH)
+ add_definitions(-DHIGH_BIT_DEPTH=0 -DX265_DEPTH=8)
+endif(HIGH_BIT_DEPTH)
+
+if (ENABLE_HDR10_PLUS)
+ include_directories(. dynamicHDR10 "${PROJECT_BINARY_DIR}")
+ add_subdirectory(dynamicHDR10)
+ add_definitions(-DENABLE_HDR10_PLUS)
+endif(ENABLE_HDR10_PLUS)
+
+option(ENABLE_SVT_HEVC "Enable SVT HEVC Encoder" OFF)
+if(ENABLE_SVT_HEVC)
+ find_package(svthevc)
+ if(SVTHEVC_FOUND)
+ add_definitions(-DSVT_HEVC)
+ include_directories(${SVT_HEVC_INCLUDE_DIR})
+ endif(SVTHEVC_FOUND)
+endif(ENABLE_SVT_HEVC)
+
+# this option can only be used when linking multiple libx265 libraries
+# together, and some alternate API access method is implemented.
+option(EXPORT_C_API "Implement public C programming interface" ON)
+mark_as_advanced(EXPORT_C_API)
+if(EXPORT_C_API)
+ set(X265_NS x265)
+ add_definitions(-DEXPORT_C_API=1)
+elseif(HIGH_BIT_DEPTH)
+ if(MAIN12)
+ set(X265_NS x265_12bit)
+ else()
+ set(X265_NS x265_10bit)
+ endif()
+ add_definitions(-DEXPORT_C_API=0)
+else()
+ set(X265_NS x265_8bit)
+ add_definitions(-DEXPORT_C_API=0)
+endif()
+add_definitions(-DX265_NS=${X265_NS})
+
+option(WARNINGS_AS_ERRORS "Stop compiles on first warning" OFF)
+if(WARNINGS_AS_ERRORS)
+ if(GCC)
+ add_definitions(-Werror)
+ elseif(MSVC)
+ add_definitions(/WX)
+ endif()
+endif(WARNINGS_AS_ERRORS)
+
+if(WIN32)
+ # Visual leak detector
+ find_package(VLD QUIET)
+ if(VLD_FOUND)
+ add_definitions(-DHAVE_VLD)
+ include_directories(${VLD_INCLUDE_DIRS})
+ list(APPEND PLATFORM_LIBS ${VLD_LIBRARIES})
+ link_directories(${VLD_LIBRARY_DIRS})
+ endif()
+ option(WINXP_SUPPORT "Make binaries compatible with Windows XP and Vista" OFF)
+ if(WINXP_SUPPORT)
+ # force use of workarounds for CONDITION_VARIABLE and atomic
+ # intrinsics introduced after XP
+ add_definitions(-D_WIN32_WINNT=_WIN32_WINNT_WINXP -D_WIN32_WINNT_WIN7=0x0601)
+ else(WINXP_SUPPORT)
+ # default to targeting Windows 7 for the NUMA APIs
+ add_definitions(-D_WIN32_WINNT=_WIN32_WINNT_WIN7)
+ endif(WINXP_SUPPORT)
+endif()
+
+if(POWER)
+ # IBM Power8
+ option(ENABLE_ALTIVEC "Enable ALTIVEC profiling instrumentation" ON)
+ if(ENABLE_ALTIVEC)
+ add_definitions(-DHAVE_ALTIVEC=1 -maltivec -mabi=altivec)
+ add_definitions(-flax-vector-conversions -fpermissive)
+ else()
+ add_definitions(-DHAVE_ALTIVEC=0)
+ endif()
+
+ option(CPU_POWER8 "Enable CPU POWER8 profiling instrumentation" ON)
+ if(CPU_POWER8)
+ add_definitions(-mcpu=power8 -DX265_ARCH_POWER8=1)
+ endif()
+endif()
+
+include(Version) # determine X265_VERSION and X265_LATEST_TAG
+include_directories(. common encoder "${PROJECT_BINARY_DIR}")
+
+option(ENABLE_PPA "Enable PPA profiling instrumentation" OFF)
+if(ENABLE_PPA)
+ add_definitions(-DENABLE_PPA)
+ list(APPEND PLATFORM_LIBS PPA)
+ if(UNIX)
+ list(APPEND PLATFORM_LIBS dl)
+ endif(UNIX)
+ add_subdirectory(profile/PPA)
+endif(ENABLE_PPA)
+
+option(ENABLE_VTUNE "Enable Vtune profiling instrumentation" OFF)
+if(ENABLE_VTUNE)
+ find_package(Vtune)
+ if(VTUNE_FOUND)
+ add_definitions(-DENABLE_VTUNE)
+ include_directories(${VTUNE_INCLUDE_DIR})
+ list(APPEND PLATFORM_LIBS vtune)
+ link_directories(${VTUNE_LIBRARY_DIR})
+ if(WIN32)
+ list(APPEND PLATFORM_LIBS libittnotify.lib)
+ else()
+ list(APPEND PLATFORM_LIBS libittnotify.a dl)
+ endif()
+ add_subdirectory(profile/vtune)
+ endif(VTUNE_FOUND)
+endif(ENABLE_VTUNE)
+
+option(DETAILED_CU_STATS "Enable internal profiling of encoder work" OFF)
+if(DETAILED_CU_STATS)
+ add_definitions(-DDETAILED_CU_STATS)
+endif(DETAILED_CU_STATS)
+
+add_subdirectory(encoder)
+add_subdirectory(common)
+
+if((MSVC_IDE OR XCODE OR GCC) AND ENABLE_ASSEMBLY)
+ # this is required because of this cmake bug
+ # http://www.cmake.org/Bug/print_bug_page.php?bug_id=8170
+ if(WIN32)
+ set(SUFFIX obj)
+ else()
+ set(SUFFIX o)
+ endif()
+
+ if(ARM OR CROSS_COMPILE_ARM)
+ # compile ARM arch asm files here
+ enable_language(ASM)
+ foreach(ASM ${ARM_ASMS})
+ if(ARM64)
+ set(ASM_SRC ${CMAKE_CURRENT_SOURCE_DIR}/common/aarch64/${ASM})
+ else()
+ set(ASM_SRC ${CMAKE_CURRENT_SOURCE_DIR}/common/arm/${ASM})
+ endif()
+ list(APPEND ASM_SRCS ${ASM_SRC})
+ list(APPEND ASM_OBJS ${ASM}.${SUFFIX})
+ add_custom_command(
+ OUTPUT ${ASM}.${SUFFIX}
+ COMMAND ${CMAKE_CXX_COMPILER}
+ ARGS ${ARM_ARGS} -c ${ASM_SRC} -o ${ASM}.${SUFFIX}
+ DEPENDS ${ASM_SRC})
+ endforeach()
+ elseif(X86)
+ # compile X86 arch asm files here
+ foreach(ASM ${MSVC_ASMS})
+ set(ASM_SRC ${CMAKE_CURRENT_SOURCE_DIR}/common/x86/${ASM})
+ list(APPEND ASM_SRCS ${ASM_SRC})
+ list(APPEND ASM_OBJS ${ASM}.${SUFFIX})
+ add_custom_command(
+ OUTPUT ${ASM}.${SUFFIX}
+ COMMAND ${NASM_EXECUTABLE} ARGS ${NASM_FLAGS} ${ASM_SRC} -o ${ASM}.${SUFFIX}
+ DEPENDS ${ASM_SRC})
+ endforeach()
+ endif()
+endif()
+source_group(ASM FILES ${ASM_SRCS})
+if(ENABLE_HDR10_PLUS)
+ add_library(x265-static STATIC $<TARGET_OBJECTS:encoder> $<TARGET_OBJECTS:common> $<TARGET_OBJECTS:dynamicHDR10> ${ASM_OBJS})
+ add_library(hdr10plus-static STATIC $<TARGET_OBJECTS:dynamicHDR10>)
+ set_target_properties(hdr10plus-static PROPERTIES OUTPUT_NAME hdr10plus)
+else()
+ add_library(x265-static STATIC $<TARGET_OBJECTS:encoder> $<TARGET_OBJECTS:common> ${ASM_OBJS})
+endif()
+if(NOT MSVC)
+ set_target_properties(x265-static PROPERTIES OUTPUT_NAME x265)
+endif()
+if(EXTRA_LIB)
+ target_link_libraries(x265-static ${EXTRA_LIB})
+endif()
+if(ENABLE_LIBVMAF)
+ target_link_libraries(x265-static ${VMAF})
+endif()
+if(SVTHEVC_FOUND)
+ target_link_libraries(x265-static ${SVT_HEVC_LIBRARY})
+endif()
+install(TARGETS x265-static
+ LIBRARY DESTINATION ${LIB_INSTALL_DIR}
+ ARCHIVE DESTINATION ${LIB_INSTALL_DIR})
+
+if(ENABLE_HDR10_PLUS)
+ install(TARGETS hdr10plus-static
+ LIBRARY DESTINATION ${LIB_INSTALL_DIR}
+ ARCHIVE DESTINATION ${LIB_INSTALL_DIR})
+endif()
+
+if(SVTHEVC_FOUND)
+ install(FILES "${SVT_HEVC_INCLUDE_DIR}/EbApi.h" DESTINATION include)
+ install(FILES "${SVT_HEVC_INCLUDE_DIR}/EbErrorCodes.h" DESTINATION include)
+ install(FILES "${SVT_HEVC_LIBRARY}" DESTINATION ${LIB_INSTALL_DIR})
+endif()
+
+install(FILES x265.h "${PROJECT_BINARY_DIR}/x265_config.h" DESTINATION include)
+if((WIN32 AND ENABLE_CLI) OR (WIN32 AND ENABLE_SHARED))
+ if(MSVC_IDE)
+ install(FILES "${PROJECT_BINARY_DIR}/Debug/x265.pdb" DESTINATION ${BIN_INSTALL_DIR} CONFIGURATIONS Debug)
+ install(FILES "${PROJECT_BINARY_DIR}/RelWithDebInfo/x265.pdb" DESTINATION ${BIN_INSTALL_DIR} CONFIGURATIONS RelWithDebInfo)
+ install(FILES "${PROJECT_BINARY_DIR}/Debug/libx265.pdb" DESTINATION ${BIN_INSTALL_DIR} CONFIGURATIONS Debug OPTIONAL NAMELINK_ONLY)
+ install(FILES "${PROJECT_BINARY_DIR}/RelWithDebInfo/libx265.pdb" DESTINATION ${BIN_INSTALL_DIR} CONFIGURATIONS RelWithDebInfo OPTIONAL NAMELINK_ONLY)
+ else()
+ install(FILES "${PROJECT_BINARY_DIR}/x265.pdb" DESTINATION ${BIN_INSTALL_DIR} CONFIGURATIONS Debug)
+ install(FILES "${PROJECT_BINARY_DIR}/x265.pdb" DESTINATION ${BIN_INSTALL_DIR} CONFIGURATIONS RelWithDebInfo)
+ install(FILES "${PROJECT_BINARY_DIR}/libx265.pdb" DESTINATION ${BIN_INSTALL_DIR} CONFIGURATIONS Debug OPTIONAL NAMELINK_ONLY)
+ install(FILES "${PROJECT_BINARY_DIR}/libx265.pdb" DESTINATION ${BIN_INSTALL_DIR} CONFIGURATIONS RelWithDebInfo OPTIONAL NAMELINK_ONLY)
+ endif()
+endif()
+if(CMAKE_RC_COMPILER)
+ # The resource compiler does not need CFLAGS or macro defines. It
+ # often breaks them
+ string(REPLACE "<FLAGS>" "" CMAKE_RC_COMPILE_OBJECT "${CMAKE_RC_COMPILE_OBJECT}")
+ string(REPLACE "<DEFINES>" "" CMAKE_RC_COMPILE_OBJECT "${CMAKE_RC_COMPILE_OBJECT}")
+ # convert X265_LATEST_TAG (ex: 0.7) and X265_TAG_DISTANCE (ex: 103) to
+ # @X265_VERSION_MAJOR@,@X265_VERSION_MINOR@,@X265_BRANCH_ID@,@X265_TAG_DISTANCE@
+ string(REGEX MATCHALL "([0-9]+)" VERSION_LIST "${X265_LATEST_TAG}")
+ list(GET VERSION_LIST 0 X265_VERSION_MAJOR)
+ list(GET VERSION_LIST 1 X265_VERSION_MINOR)
+ set(X265_BRANCH_ID 0) # TODO: 0 - stable, 1 - default or other
+ set(X265_RC_FILE "${CMAKE_CURRENT_BINARY_DIR}/x265.rc")
+ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/x265.rc.in" "${X265_RC_FILE}" @ONLY)
+endif()
+
+if(NOT (MSVC_IDE OR XCODE))
+ add_custom_target(clean-generated COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/clean-generated.cmake)
+endif()
+option(ENABLE_SHARED "Build shared library" ON)
+if(ENABLE_SHARED)
+ if(ENABLE_HDR10_PLUS)
+ add_library(x265-shared SHARED "${PROJECT_BINARY_DIR}/x265.def" ${ASM_OBJS}
+ ${X265_RC_FILE} $<TARGET_OBJECTS:encoder> $<TARGET_OBJECTS:common> $<TARGET_OBJECTS:dynamicHDR10>)
+ add_library(hdr10plus-shared SHARED $<TARGET_OBJECTS:dynamicHDR10>)
+
+ if(MSVC)
+ set_target_properties(hdr10plus-shared PROPERTIES OUTPUT_NAME libhdr10plus)
+ else()
+ set_target_properties(hdr10plus-shared PROPERTIES OUTPUT_NAME hdr10plus)
+ endif()
+ else()
+ add_library(x265-shared SHARED "${PROJECT_BINARY_DIR}/x265.def" ${ASM_OBJS}
+ ${X265_RC_FILE} $<TARGET_OBJECTS:encoder> $<TARGET_OBJECTS:common>)
+ endif()
+ if(EXTRA_LIB)
+ target_link_libraries(x265-shared ${EXTRA_LIB})
+ endif()
+ target_link_libraries(x265-shared ${PLATFORM_LIBS})
+ if(SVTHEVC_FOUND)
+ target_link_libraries(x265-shared ${SVT_HEVC_LIBRARY})
+ endif(SVTHEVC_FOUND)
+ if(MSVC)
+ set_target_properties(x265-shared PROPERTIES OUTPUT_NAME libx265)
+ else()
+ set_target_properties(x265-shared PROPERTIES OUTPUT_NAME x265)
+ endif()
+ if(UNIX)
+ set_target_properties(x265-shared PROPERTIES VERSION ${X265_BUILD})
+ if(APPLE)
+ set_target_properties(x265-shared PROPERTIES MACOSX_RPATH 1)
+ elseif(CYGWIN)
+ # Cygwin is not officially supported or tested. MinGW with msys is recommended.
+ else()
+ list(APPEND LINKER_OPTIONS "-Wl,-Bsymbolic,-znoexecstack")
+ endif()
+ endif()
+ set_target_properties(x265-shared PROPERTIES SOVERSION ${X265_BUILD})
+ if(X265_LATEST_TAG)
+ if(WINDOWS)
+ set_target_properties(x265-shared PROPERTIES VERSION ${X265_LATEST_TAG})
+ endif()
+ # shared library is not installed if a tag is not found
+ install(TARGETS x265-shared
+ LIBRARY DESTINATION ${LIB_INSTALL_DIR}
+ ARCHIVE DESTINATION ${LIB_INSTALL_DIR}
+ RUNTIME DESTINATION ${BIN_INSTALL_DIR})
+ endif()
+ if(ENABLE_HDR10_PLUS)
+ install(TARGETS hdr10plus-shared
+ LIBRARY DESTINATION ${LIB_INSTALL_DIR}
+ ARCHIVE DESTINATION ${LIB_INSTALL_DIR})
+ endif()
+ if(LINKER_OPTIONS)
+ # set_target_properties can't do list expansion
+ string(REPLACE ";" " " LINKER_OPTION_STR "${LINKER_OPTIONS}")
+ set_target_properties(x265-shared PROPERTIES LINK_FLAGS "${LINKER_OPTION_STR}")
+ endif()
+endif()
+
+if(X265_LATEST_TAG)
+ # convert lists of link libraries into -lstdc++ -lm etc..
+ foreach(LIB ${CMAKE_CXX_IMPLICIT_LINK_LIBRARIES} ${PLATFORM_LIBS})
+ if(IS_ABSOLUTE ${LIB} AND EXISTS ${LIB})
+ list(APPEND PLIBLIST "${LIB}")
+ else()
+ list(APPEND PLIBLIST "-l${LIB}")
+ endif()
+ endforeach()
+ if(PLIBLIST)
+ # blacklist of libraries that should not be in Libs.private
+ list(REMOVE_ITEM PLIBLIST "-lc" "-lpthread" "-lmingwex" "-lmingwthrd"
+ "-lmingw32" "-lmoldname" "-lmsvcrt" "-ladvapi32" "-lshell32"
+ "-luser32" "-lkernel32")
+ string(REPLACE ";" " " PRIVATE_LIBS "${PLIBLIST}")
+ else()
+ set(PRIVATE_LIBS "")
+ endif(PLIBLIST)
+
+ # Produce a pkg-config file
+ configure_file("x265.pc.in" "x265.pc" @ONLY)
+ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/x265.pc"
+ DESTINATION "${LIB_INSTALL_DIR}/pkgconfig")
+endif()
+
+configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/cmake/cmake_uninstall.cmake"
+ IMMEDIATE @ONLY)
+add_custom_target(uninstall
+ "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake/cmake_uninstall.cmake")
+
+# Main CLI application
+set(ENABLE_CLI ON CACHE BOOL "Build standalone CLI application")
+if(ENABLE_CLI)
+ file(GLOB InputFiles input/input.cpp input/yuv.cpp input/y4m.cpp input/*.h)
+ file(GLOB OutputFiles output/output.cpp output/reconplay.cpp output/*.h
+ output/yuv.cpp output/y4m.cpp # recon
+ output/raw.cpp) # muxers
+ source_group(input FILES ${InputFiles})
+ source_group(output FILES ${OutputFiles})
+
+ check_include_files(getopt.h HAVE_GETOPT_H)
+ if(NOT HAVE_GETOPT_H)
+ if(MSVC)
+ set_source_files_properties(compat/getopt/getopt.c PROPERTIES COMPILE_FLAGS "/wd4100 /wd4131 -DHAVE_STRING_H=1")
+ endif(MSVC)
+ include_directories(compat/getopt)
+ set(GETOPT compat/getopt/getopt.c compat/getopt/getopt.h)
+ endif(NOT HAVE_GETOPT_H)
+ if(WIN32)
+ set(ExportDefs "${PROJECT_BINARY_DIR}/x265.def")
+ endif(WIN32)
+ if(XCODE)
+ # Xcode seems unable to link the CLI with libs, so link as one targget
+ if(ENABLE_HDR10_PLUS)
+ add_executable(cli ../COPYING ${InputFiles} ${OutputFiles} ${GETOPT}
+ x265.cpp x265.h x265cli.cpp x265cli.h abrEncApp.cpp abrEncApp.h
+ $<TARGET_OBJECTS:encoder> $<TARGET_OBJECTS:common> $<TARGET_OBJECTS:dynamicHDR10> ${ASM_OBJS})
+ else()
+ add_executable(cli ../COPYING ${InputFiles} ${OutputFiles} ${GETOPT}
+ x265.cpp x265.h x265cli.cpp x265cli.h abrEncApp.cpp abrEncApp.h
+ $<TARGET_OBJECTS:encoder> $<TARGET_OBJECTS:common> ${ASM_OBJS})
+ endif()
+ else()
+ add_executable(cli ../COPYING ${InputFiles} ${OutputFiles} ${GETOPT} ${X265_RC_FILE}
+ ${ExportDefs} x265.cpp x265.h x265cli.cpp x265cli.h abrEncApp.cpp abrEncApp.h)
+ if(WIN32 OR NOT ENABLE_SHARED OR INTEL_CXX)
+ # The CLI cannot link to the shared library on Windows, it
+ # requires internal APIs not exported from the DLL
+ target_link_libraries(cli x265-static ${PLATFORM_LIBS})
+ else()
+ target_link_libraries(cli x265-shared ${PLATFORM_LIBS})
+ endif()
+ endif()
+ set_target_properties(cli PROPERTIES OUTPUT_NAME x265)
+ if(LINKER_OPTIONS)
+ # set_target_properties can't do list expansion
+ string(REPLACE ";" " " LINKER_OPTION_STR "${LINKER_OPTIONS}")
+ set_target_properties(cli PROPERTIES LINK_FLAGS "${LINKER_OPTION_STR}")
+ endif()
+
+ install(TARGETS cli DESTINATION ${BIN_INSTALL_DIR})
+endif(ENABLE_CLI)
+
+if(ENABLE_ASSEMBLY AND NOT XCODE)
+ option(ENABLE_TESTS "Enable Unit Tests" OFF)
+ if(ENABLE_TESTS)
+ add_subdirectory(test)
+ endif()
+endif()
+
+get_directory_property(hasParent PARENT_DIRECTORY)
+if(hasParent)
+ if(PLATFORM_LIBS)
+ LIST(REMOVE_DUPLICATES PLATFORM_LIBS)
+ set(PLATFORM_LIBS ${PLATFORM_LIBS} PARENT_SCOPE)
+ endif(PLATFORM_LIBS)
+endif(hasParent)
Index: create-3.5-cross-patch/x265-3.5-new/source
===================================================================
--- create-3.5-cross-patch/x265-3.5-new/source (nonexistent)
+++ create-3.5-cross-patch/x265-3.5-new/source (revision 5)
Property changes on: create-3.5-cross-patch/x265-3.5-new/source
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,73 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: create-3.5-cross-patch/x265-3.5-new
===================================================================
--- create-3.5-cross-patch/x265-3.5-new (nonexistent)
+++ create-3.5-cross-patch/x265-3.5-new (revision 5)
Property changes on: create-3.5-cross-patch/x265-3.5-new
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,73 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: create-3.5-cross-patch
===================================================================
--- create-3.5-cross-patch (nonexistent)
+++ create-3.5-cross-patch (revision 5)
Property changes on: create-3.5-cross-patch
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,73 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: create-3.5-version-patch/create.patch.sh
===================================================================
--- create-3.5-version-patch/create.patch.sh (nonexistent)
+++ create-3.5-version-patch/create.patch.sh (revision 5)
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+VERSION=3.5
+
+tar --files-from=file.list -xzvf ../x265-$VERSION.tar.gz
+mv x265-$VERSION x265-$VERSION-orig
+
+cp -rf ./x265-$VERSION-new ./x265-$VERSION
+
+diff --unified -Nr x265-$VERSION-orig x265-$VERSION > x265-$VERSION-version.patch
+
+mv x265-$VERSION-version.patch ../patches
+
+rm -rf ./x265-$VERSION
+rm -rf ./x265-$VERSION-orig
Property changes on: create-3.5-version-patch/create.patch.sh
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: create-3.5-version-patch/file.list
===================================================================
--- create-3.5-version-patch/file.list (nonexistent)
+++ create-3.5-version-patch/file.list (revision 5)
@@ -0,0 +1 @@
+x265-3.5/source/cmake/Version.cmake
Index: create-3.5-version-patch/x265-3.5-new/source/cmake/Version.cmake
===================================================================
--- create-3.5-version-patch/x265-3.5-new/source/cmake/Version.cmake (nonexistent)
+++ create-3.5-version-patch/x265-3.5-new/source/cmake/Version.cmake (revision 5)
@@ -0,0 +1,179 @@
+ #################################################################################################################
+ #
+ # Copyright (C) 2013-2020 MulticoreWare, Inc
+ #
+ # This program is free software; you can redistribute it and/or modify
+ # it under the terms of the GNU General Public License as published by
+ # the Free Software Foundation; either version 2 of the License, or
+ # (at your option) any later version.
+ #
+ # This program is distributed in the hope that it will be useful,
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ # GNU General Public License for more details.
+ #
+ # You should have received a copy of the GNU General Public License
+ # along with this program; if not, write to the Free Software
+ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111, USA.
+ #
+ # This program is also available under a commercial proprietary license.
+ # For more information, contact us at license @ x265.com
+ #
+ # Authors: Janani T.E <janani.te@multicorewareinc.com>, Srikanth Kurapati <srikanthkurapati@multicorewareinc.com>
+ #
+ #################################################################################################################
+ # PURPOSE: Identity version control software version display, also read version files to present x265 version.
+ #################################################################################################################
+ #Default Settings, for user to be vigilant about x265 version being reported during product build.
+set(X265_VERSION "unknown")
+set(X265_LATEST_TAG "3.5")
+set(X265_TAG_DISTANCE "0")
+
+#Find version control software to be used for live and extracted repositories from compressed tarballs
+if(CMAKE_VERSION VERSION_LESS "2.8.10")
+ find_program(HG_EXECUTABLE hg)
+ if(EXISTS "${HG_EXECUTABLE}.bat")
+ set(HG_EXECUTABLE "${HG_EXECUTABLE}.bat")
+ endif()
+ message(STATUS "hg found at ${HG_EXECUTABLE}")
+else()
+ find_package(Hg QUIET)
+endif()
+if(HG_EXECUTABLE)
+ #Set Version Control binary for source code kind
+ if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/../.hg_archival.txt)
+ set(HG_ARCHETYPE "1")
+ elseif(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/../.hg)
+ set(HG_ARCHETYPE "0")
+ endif()
+endif(HG_EXECUTABLE)
+find_package(Git QUIET) #No restrictions on Git versions used, any versions from 1.8.x to 2.2.x or later should do.
+if(GIT_FOUND)
+ find_program(GIT_EXECUTABLE git)
+ message(STATUS "GIT_EXECUTABLE ${GIT_EXECUTABLE}")
+ if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/../.git)
+ set(GIT_ARCHETYPE "0")
+ elseif(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/../x265Version.txt)
+ set(GIT_ARCHETYPE "1")
+ endif()
+endif(GIT_FOUND)
+if(HG_ARCHETYPE)
+ #Read the lines of the archive summary file to extract the version
+ message(STATUS "SOURCE CODE IS FROM x265 HG ARCHIVED ZIP OR TAR BALL")
+ file(READ ${CMAKE_CURRENT_SOURCE_DIR}/../.hg_archival.txt archive)
+ STRING(REGEX REPLACE "\n" ";" archive "${archive}")
+ foreach(f ${archive})
+ string(FIND "${f}" ": " pos)
+ string(SUBSTRING "${f}" 0 ${pos} key)
+ string(SUBSTRING "${f}" ${pos} -1 value)
+ string(SUBSTRING "${value}" 2 -1 value)
+ set(hg_${key} ${value})
+ endforeach()
+ if(DEFINED hg_tag)
+ set(X265_LATEST_TAG ${hg_tag})
+ elseif(DEFINED hg_node)
+ set(X265_LATEST_TAG ${hg_latesttag})
+ set(X265_TAG_DISTANCE ${hg_latesttagdistance})
+ string(SUBSTRING "${hg_node}" 0 12 X265_REVISION_ID)
+ endif()
+ message(STATUS "HG ARCHIVAL INFORMATION PROCESSED")
+elseif(NOT DEFINED GIT_ARCHETYPE)
+# means that's its neither hg archive nor git clone/archive hence it has to be hg live repo as these are only four cases that need to processed in mutual exclusion.
+ execute_process(COMMAND
+ ${HG_EXECUTABLE} log -r. --template "{latesttag}"
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ OUTPUT_VARIABLE X265_LATEST_TAG
+ ERROR_QUIET
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
+ execute_process(COMMAND
+ ${HG_EXECUTABLE} log -r. --template "{latesttagdistance}"
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ OUTPUT_VARIABLE X265_TAG_DISTANCE
+ ERROR_QUIET
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
+ execute_process(
+ COMMAND
+ ${HG_EXECUTABLE} log -r. --template "{node}"
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ OUTPUT_VARIABLE X265_REVISION_ID
+ ERROR_QUIET
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
+ string(SUBSTRING "${X265_REVISION_ID}" 0 12 X265_REVISION_ID)
+ if(X265_LATEST_TAG MATCHES "^r")
+ string(SUBSTRING ${X265_LATEST_TAG} 1 -1 X265_LATEST_TAG)
+ endif()
+ message(STATUS "HG LIVE REPO STATUS CHECK DONE")
+elseif(GIT_ARCHETYPE)
+ message(STATUS "SOURCE CODE IS FROM x265 GIT ARCHIVED ZIP OR TAR BALL")
+ #Read the lines of the archive summary file to extract the version
+ file(READ ${CMAKE_CURRENT_SOURCE_DIR}/../x265Version.txt filebuf)
+ STRING(REGEX REPLACE "\n" ";" filebuf "${filebuf}")
+ foreach(line ${filebuf})
+ string(FIND "${line}" ": " pos)
+ string(SUBSTRING "${line}" 0 ${pos} key)
+ string(SUBSTRING "${line}" ${pos} -1 value)
+ string(SUBSTRING "${value}" 2 -1 value)
+ set(git_${key} ${value})
+ endforeach()
+ if(DEFINED git_releasetag)
+ set(X265_LATEST_TAG ${git_releasetag})
+ if(DEFINED git_releasetagdistance)
+ set(X265_TAG_DISTANCE ${git_releasetagdistance})
+ if(X265_TAG_DISTANCE STRGREATER "0" OR X265_TAG_DISTANCE STREQUAL "0")
+ #for x265 the repository changeset has to be a tag id or commit id after the tag
+ #hence mandating it's presence in version file always for valid tag distances.
+ if(DEFINED git_repositorychangeset)
+ string(SUBSTRING "${git_repositorychangeset}" 0 9 X265_REVISION_ID)
+ else()
+ message(WARNING "X265 LATEST COMMIT TIP INFORMATION NOT AVAILABLE")
+ endif()
+ else()
+ message(WARNING "X265 TAG DISTANCE INVALID")
+ endif()
+ else()
+ message(WARNING "COMMIT INFORMATION AFTER LATEST REVISION UNAVAILABLE")
+ endif()
+ else()
+ message(WARNING "X265 RELEASE VERSION LABEL MISSING: ${X265_LATEST_TAG}")
+ endif()
+ message(STATUS "GIT ARCHIVAL INFORMATION PROCESSED")
+else()
+ execute_process(
+ COMMAND
+ ${GIT_EXECUTABLE} describe --abbrev=0 --tags
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ OUTPUT_VARIABLE X265_LATEST_TAG
+ ERROR_QUIET
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
+ execute_process(
+ COMMAND
+ ${GIT_EXECUTABLE} rev-list ${X265_LATEST_TAG}.. --count --first-parent
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ OUTPUT_VARIABLE X265_TAG_DISTANCE
+ ERROR_QUIET
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
+ execute_process(
+ COMMAND
+ ${GIT_EXECUTABLE} log --pretty=format:%h -n 1
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ OUTPUT_VARIABLE X265_REVISION_ID
+ ERROR_QUIET
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
+ message(STATUS "GIT LIVE REPO VERSION RETRIEVED")
+endif()
+
+# formatting based on distance from tag
+if(X265_TAG_DISTANCE STREQUAL "0")
+ set(X265_VERSION "${X265_LATEST_TAG}")
+elseif(X265_TAG_DISTANCE STRGREATER "0")
+ set(X265_VERSION "${X265_LATEST_TAG}+${X265_TAG_DISTANCE}-${X265_REVISION_ID}")
+endif()
+
+#will always be printed in its entirety based on version file configuration to avail revision monitoring by repo owners
+message(STATUS "X265 RELEASE VERSION ${X265_VERSION}")
Index: create-3.5-version-patch/x265-3.5-new/source/cmake
===================================================================
--- create-3.5-version-patch/x265-3.5-new/source/cmake (nonexistent)
+++ create-3.5-version-patch/x265-3.5-new/source/cmake (revision 5)
Property changes on: create-3.5-version-patch/x265-3.5-new/source/cmake
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,73 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: create-3.5-version-patch/x265-3.5-new/source
===================================================================
--- create-3.5-version-patch/x265-3.5-new/source (nonexistent)
+++ create-3.5-version-patch/x265-3.5-new/source (revision 5)
Property changes on: create-3.5-version-patch/x265-3.5-new/source
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,73 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: create-3.5-version-patch/x265-3.5-new
===================================================================
--- create-3.5-version-patch/x265-3.5-new (nonexistent)
+++ create-3.5-version-patch/x265-3.5-new (revision 5)
Property changes on: create-3.5-version-patch/x265-3.5-new
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,73 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: create-3.5-version-patch
===================================================================
--- create-3.5-version-patch (nonexistent)
+++ create-3.5-version-patch (revision 5)
Property changes on: create-3.5-version-patch
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,73 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: patches/README
===================================================================
--- patches/README (nonexistent)
+++ patches/README (revision 5)
@@ -0,0 +1,6 @@
+
+/* begin *
+
+ TODO: Leave some comment here.
+
+ * end */
Index: patches
===================================================================
--- patches (nonexistent)
+++ patches (revision 5)
Property changes on: patches
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,73 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: .
===================================================================
--- . (nonexistent)
+++ . (revision 5)
Property changes on: .
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,73 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~