diff options
author | darealshinji <djcj@gmx.de> | 2017-07-01 16:36:06 (GMT) |
---|---|---|
committer | darealshinji <djcj@gmx.de> | 2017-07-01 16:36:06 (GMT) |
commit | a6731b852730369f04d826519bf04e146c9e1b6a (patch) | |
tree | ab0337d6c39cb66531115e19b2b5b8521f2aa41d /src/x265.mk | |
parent | bfdb83d7255a325ddd03d9265ca7b1d8c2144c60 (diff) | |
download | mxe-a6731b852730369f04d826519bf04e146c9e1b6a.zip mxe-a6731b852730369f04d826519bf04e146c9e1b6a.tar.gz mxe-a6731b852730369f04d826519bf04e146c9e1b6a.tar.bz2 |
x265: update, add patch and test
Diffstat (limited to 'src/x265.mk')
-rw-r--r-- | src/x265.mk | 69 |
1 files changed, 39 insertions, 30 deletions
diff --git a/src/x265.mk b/src/x265.mk index c9974b9..c136782 100644 --- a/src/x265.mk +++ b/src/x265.mk @@ -3,12 +3,12 @@ PKG := x265 $(PKG)_IGNORE := -$(PKG)_VERSION := 1.8 -$(PKG)_CHECKSUM := d41a3f0cc06dfc3967f6c47f458cb30b6aaa518f86c56c147946395bfe22b6f2 +$(PKG)_VERSION := 2.4 +$(PKG)_CHECKSUM := 9c2aa718d78f6fecdd783f08ab83b98d3169e5f670404da4c16439306907d729 $(PKG)_SUBDIR := x265_$($(PKG)_VERSION) $(PKG)_FILE := x265_$($(PKG)_VERSION).tar.gz $(PKG)_URL := https://ftp.videolan.org/pub/videolan/$(PKG)/$($(PKG)_FILE) -$(PKG)_DEPS := gcc cmake yasm +$(PKG)_DEPS := gcc yasm define $(PKG)_UPDATE $(WGET) -q -O- https://ftp.videolan.org/pub/videolan/x265/ | \ @@ -16,50 +16,59 @@ define $(PKG)_UPDATE tail -1 endef +# note: assembly for i686 targets is not officially supported define $(PKG)_BUILD - cd '$(1)' && mkdir -p 8bit 10bit 12bit + cd '$(BUILD_DIR)' && mkdir -p 10bit 12bit # 12 bit - test '$(TARGET)' = 'x86_64-w64-mingw32.static' && X265_ASM=ON || X265_ASM=OFF; \ - cd '$(1)/12bit' && cmake ../source \ - -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \ + cd '$(BUILD_DIR)/12bit' && $(TARGET)-cmake '$(SOURCE_DIR)/source' \ -DHIGH_BIT_DEPTH=ON \ -DEXPORT_C_API=OFF \ -DENABLE_SHARED=OFF \ - -DENABLE_ASSEMBLY=$$X265_ASM \ + -DENABLE_ASSEMBLY=$(if $(findstring x86_64,$(TARGET)),ON,OFF) \ -DENABLE_CLI=OFF \ + -DWINXP_SUPPORT=ON \ + -DENABLE_DYNAMIC_HDR10=ON \ -DMAIN12=ON - $(MAKE) -C '$(1)/12bit' -j '$(JOBS)' - cp '$(1)/12bit/libx265.a' '$(1)/8bit/libx265_main12.a' + $(MAKE) -C '$(BUILD_DIR)/12bit' -j '$(JOBS)' + cp '$(BUILD_DIR)/12bit/libx265.a' '$(BUILD_DIR)/libx265_main12.a' # 10 bit - test '$(TARGET)' = 'x86_64-w64-mingw32.static' && X265_ASM=ON || X265_ASM=OFF; \ - cd '$(1)/10bit' && cmake ../source \ - -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \ + cd '$(BUILD_DIR)/10bit' && $(TARGET)-cmake '$(SOURCE_DIR)/source' \ -DHIGH_BIT_DEPTH=ON \ -DEXPORT_C_API=OFF \ -DENABLE_SHARED=OFF \ - -DENABLE_ASSEMBLY=$$X265_ASM \ - -DENABLE_CLI=OFF - $(MAKE) -C '$(1)/10bit' -j '$(JOBS)' - cp '$(1)/10bit/libx265.a' '$(1)/8bit/libx265_main10.a' + -DENABLE_ASSEMBLY=$(if $(findstring x86_64,$(TARGET)),ON,OFF) \ + -DENABLE_CLI=OFF \ + -DWINXP_SUPPORT=ON \ + -DENABLE_DYNAMIC_HDR10=ON + $(MAKE) -C '$(BUILD_DIR)/10bit' -j '$(JOBS)' + cp '$(BUILD_DIR)/10bit/libx265.a' '$(BUILD_DIR)/libx265_main10.a' # 8bit - test '$(TARGET)' = 'x86_64-w64-mingw32.static' && X265_ASM=ON || X265_ASM=OFF; \ - cd '$(1)/8bit' && cmake ../source \ - -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \ - -DENABLE_SHARED=OFF \ - -DENABLE_ASSEMBLY=$$X265_ASM \ - -DEXTRA_LIB="x265_main10.a;x265_main12.a" \ - -DEXTRA_LINK_FLAGS=-L. \ + cd '$(BUILD_DIR)' && $(TARGET)-cmake '$(SOURCE_DIR)/source' \ + -DHIGH_BIT_DEPTH=OFF \ + -DEXPORT_C_API=ON \ + -DENABLE_SHARED=$(CMAKE_SHARED_BOOL) \ + -DENABLE_ASSEMBLY=$(if $(findstring x86_64,$(TARGET)),ON,OFF) \ + -DENABLE_CLI=OFF \ + -DWINXP_SUPPORT=ON \ + -DENABLE_DYNAMIC_HDR10=ON \ + -DEXTRA_LIB='x265_main10.a;x265_main12.a' \ + -DEXTRA_LINK_FLAGS=-L'$(BUILD_DIR)' \ -DLINKED_10BIT=ON \ -DLINKED_12BIT=ON - $(MAKE) -C '$(1)/8bit' -j '$(JOBS)' install - $(INSTALL) '$(1)/8bit/libx265_main12.a' '$(PREFIX)/$(TARGET)/lib/libx265_main12.a' - $(INSTALL) '$(1)/8bit/libx265_main10.a' '$(PREFIX)/$(TARGET)/lib/libx265_main10.a' - $(SED) -i 's|-lx265|-lx265 -lx265_main10 -lx265_main12|' '$(PREFIX)/$(TARGET)/lib/pkgconfig/x265.pc' -endef + $(MAKE) -C '$(BUILD_DIR)' -j '$(JOBS)' install + $(if $(BUILD_SHARED),rm -f '$(PREFIX)/$(TARGET)/lib/libx265.a',\ + $(INSTALL) '$(BUILD_DIR)/libx265_main12.a' '$(PREFIX)/$(TARGET)/lib/libx265_main12.a' && \ + $(INSTALL) '$(BUILD_DIR)/libx265_main10.a' '$(PREFIX)/$(TARGET)/lib/libx265_main10.a' && \ + $(SED) -i 's|-lx265|-lx265 -lx265_main10 -lx265_main12|' '$(PREFIX)/$(TARGET)/lib/pkgconfig/x265.pc') -$(PKG)_BUILD_SHARED = + '$(TARGET)-gcc' \ + -W -Wall -Werror \ + '$(TOP_DIR)/src/$(PKG)-test.c' \ + -o '$(PREFIX)/$(TARGET)/bin/test-$(PKG).exe' \ + `$(TARGET)-pkg-config --cflags --libs $(PKG)` +endef |