Skip to content

Commit

Permalink
Mkvtoolnix (SynoCommunity#4622)
Browse files Browse the repository at this point in the history
* add mkvtoolnix v8.5.2
* update mkvtoolnix dependencies
- update libebml and libmatroska
- use generic installer and SPK_COMMANDS
- declare unsupported archs: ARMv5 ARMv7L OLD_PPC_ARCHS
* fix build for DSM7 for x64 and i686 archs
* update mkvtoolnix to v22.0.0
- latest version that builds with gcc 4.9.x
- downgrade libebml and libmatroska to fix build for gcc 4.9.x
- fix GCC version in ppc853x toolchains

Co-authored-by: cytec <iamcytec@googlemail.com>
  • Loading branch information
hgy59 and cytec authored May 11, 2021
1 parent dd9d9a3 commit a4a5d3d
Show file tree
Hide file tree
Showing 14 changed files with 125 additions and 2 deletions.
16 changes: 16 additions & 0 deletions cross/libebml/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
PKG_NAME = libebml
PKG_VERS = 1.3.9
PKG_EXT = tar.xz
PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT)
PKG_DIST_SITE = https://dl.matroska.org/downloads/$(PKG_NAME)
PKG_DIR = $(PKG_NAME)-$(PKG_VERS)

DEPENDS =

HOMEPAGE = http://matroska.org
COMMENT = libebml is a C++ libary to parse EBML files.
LICENSE = LGPL

GNU_CONFIGURE = 1

include ../../mk/spksrc.cross-cmake.mk
3 changes: 3 additions & 0 deletions cross/libebml/PLIST
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
lnk:lib/libebml.so
lnk:lib/libebml.so.4
lib:lib/libebml.so.4.0.0
3 changes: 3 additions & 0 deletions cross/libebml/digests
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
libebml-1.3.9.tar.xz SHA1 abdcaac0f10756271ad6a15a2147e9bc51cd8661
libebml-1.3.9.tar.xz SHA256 c6b6c6cd8b20a46203cb5dce636883aef68beb2846f1e4103b660a7da2c9c548
libebml-1.3.9.tar.xz MD5 319f99898751052f13334c0df7d19d02
16 changes: 16 additions & 0 deletions cross/libmatroska/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
PKG_NAME = libmatroska
PKG_VERS = 1.5.2
PKG_EXT = tar.xz
PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT)
PKG_DIST_SITE = https://dl.matroska.org/downloads/$(PKG_NAME)
PKG_DIR = $(PKG_NAME)-$(PKG_VERS)

DEPENDS = cross/libebml

HOMEPAGE = https://matroska.org/
COMMENT = libmatroska is a C++ libary to parse Matroska files (.mkv and .mka).
LICENSE = LGPL

GNU_CONFIGURE = 1

include ../../mk/spksrc.cross-cmake.mk
3 changes: 3 additions & 0 deletions cross/libmatroska/PLIST
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
lnk:lib/libmatroska.so
lnk:lib/libmatroska.so.6
lib:lib/libmatroska.so.6.0.0
3 changes: 3 additions & 0 deletions cross/libmatroska/digests
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
libmatroska-1.5.2.tar.xz SHA1 d7426212bf98d18619a70c5a9bbda1089b3e59c9
libmatroska-1.5.2.tar.xz SHA256 0ac6debfbf781d47f001b830aaf9be9dfbcefd13bcfb80ca5efc1c04b4a3c962
libmatroska-1.5.2.tar.xz MD5 df59a50db89296cad8662abf596355a9
49 changes: 49 additions & 0 deletions cross/mkvtoolnix/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
PKG_NAME = mkvtoolnix
PKG_VERS = 22.0.0
PKG_EXT = tar.xz
PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT)
PKG_DIST_SITE = https://mkvtoolnix.download/sources
PKG_DIR = $(PKG_NAME)-$(PKG_VERS)

# compiler too old, gcc >= 4.9.x required.
UNSUPPORTED_ARCHS = $(ARMv5_ARCHS) $(ARMv7L_ARCHS) $(OLD_PPC_ARCHS)

BUILD_DEPENDS = native/ruby
DEPENDS = cross/boost cross/libogg cross/libvorbis cross/zlib
DEPENDS += cross/flac cross/file
DEPENDS += cross/libebml cross/libmatroska

HOMEPAGE = https://mkvtoolnix.download/index.html
COMMENT = MKVToolNix is a set of tools to create, alter and inspect Matroska files.
LICENSE = GPLv2

GNU_CONFIGURE = 1
COMPILE_TARGET = mkvtoolnix_compile
INSTALL_TARGET = mkvtoolnix_install

CONFIGURE_ARGS = --prefix=$(STAGING_INSTALL_PREFIX)
CONFIGURE_ARGS += --with-boost-libdir=$(STAGING_INSTALL_PREFIX)/lib

BOOST_LIBRARIES = system filesystem regex date_time
ENV += BOOST_LIBRARIES="$(BOOST_LIBRARIES)"

NATIVE_RUBY_DIR = $(realpath $(WORK_DIR)/../../../native/ruby/work-native/install/usr/local/bin)
ENV += PATH=$(NATIVE_RUBY_DIR):$$PATH

include ../../mk/spksrc.common.mk
ifeq ($(call version_ge, ${TCVERSION}, 7.0),1)
# fix compilation with newer compilers
ADDITIONAL_CXXFLAGS = -D_GLIBCXX_USE_C99_MATH=1
# disable warnings (by includes of boost header files)
ADDITIONAL_CXXFLAGS += -Wno-implicit-fallthrough
endif

include ../../mk/spksrc.cross-cc.mk

.PHONY: mkvtoolnix_compile
mkvtoolnix_compile:
$(RUN) rake

.PHONY: mkvtoolnix_install
mkvtoolnix_install:
$(RUN) rake install
5 changes: 5 additions & 0 deletions cross/mkvtoolnix/PLIST
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
bin:bin/mkvextract
bin:bin/mkvinfo
bin:bin/mkvmerge
bin:bin/mkvpropedit
rsc:share/locale/
3 changes: 3 additions & 0 deletions cross/mkvtoolnix/digests
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
mkvtoolnix-22.0.0.tar.xz SHA1 36719c113c5667de0bef4ee4aafd4060bf19ff4c
mkvtoolnix-22.0.0.tar.xz SHA256 88c5074d6731b65d5c2ddd02113ae064373eb83ef3e6e00a04876f88c0be7f67
mkvtoolnix-22.0.0.tar.xz MD5 1472762ea8cbafe03b7b827480b86e55
22 changes: 22 additions & 0 deletions spk/mkvtoolnix/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
SPK_NAME = mkvtoolnix
SPK_VERS = 22.0.0
SPK_REV = 1
SPK_ICON = src/$(SPK_NAME).png

DEPENDS = cross/$(SPK_NAME)

# compiler too old, gcc >= 4.9.x required.
UNSUPPORTED_ARCHS = $(ARMv5_ARCHS) $(ARMv7L_ARCHS) $(OLD_PPC_ARCHS)

MAINTAINER = cytec
DESCRIPTION = MKVToolNix is a set of tools to create, alter and inspect Matroska files.
CHANGELOG = "Initial package release"
DISPLAY_NAME = MKVToolNix
STARTABLE = no

HOMEPAGE = https://mkvtoolnix.download/index.html
LICENSE = GPLv2

SPK_COMMANDS = bin/mkvextract bin/mkvinfo bin/mkvmerge bin/mkvpropedit

include ../../mk/spksrc.spk.mk
Empty file added spk/mkvtoolnix/PLIST
Empty file.
Binary file added spk/mkvtoolnix/src/mkvtoolnix.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion toolchain/syno-ppc853x-5.1/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ TC_ARCH = ppc853x
TC_VERS = 5.1
TC_FIRMWARE = 5.0-4458
TC_KERNEL = 2.6.32
TC_GCC = 4.7.4
TC_GCC = 4.3.2
TC_GLIBC = 2.8

TC_DIST = gcc4374_eglibc2874_qoriq-GPL
Expand Down
2 changes: 1 addition & 1 deletion toolchain/syno-ppc853x-5.2/Makefile
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
TC_ARCH = ppc853x
TC_VERS = 5.2
TC_KERNEL = 2.6.32
TC_GCC = 4.7.4
TC_GCC = 4.3.2
TC_GLIBC = 2.8

TC_DIST = 853x-gcc4374_eglibc2874_qoriq-GPL
Expand Down

0 comments on commit a4a5d3d

Please # to comment.