1 (edited by throgh 2020-07-16 21:53:33)

Topic: [multilib] Collection of packages as addition

Hello together,

as collector of old(er) games I'm also interested into so-called source-ports. Meaning therefore games or game-engines being ported onto GNU/Linux and BSD. Therefore the game Septerra Core is into my field of view as there is a recreation here available. But for this recreation you also need furthermore packages being not available on Hyperbola, especially for an installation with multilib-purpose to run 32bit-executables onto a 64bit-environment. So following up there are some proposals making Hyperbola, the repositories just more "complete" as proposal for everyone to use them.

And yes: Some packages have a weak hashsum for now as they come up directly as older versions from Arch Linux and the AUR. So feel free doing a rework here. Did my best for now, but as you can see this is just a bigger list to get libquicktime to run as multilib-package in the end.

Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

2

Re: [multilib] Collection of packages as addition

lib32-libxpm

# Maintainer (Arch): Andreas Radke <andyrtr@archlinux.org>
# Maintainer (Arch): Jan de Groot <jgc@archlinux.org>
# Maintainer: André Silva <emulatorman@hyperbola.info>
# Contributor: Márcio Silva <coadde@hyperbola.info>

pkgname=lib32-libxpm
_openbsdver=6.5
pkgver=3.5.12
pkgrel=1.hyperbola3
pkgdesc="X11 pixmap library, provided by Xenocara (32 bit)"
arch=('i686' 'x86_64')
license=('X11')
url="https://www.xenocara.org"
depends=('lib32-libxt' 'lib32-libxext')
makedepends=('xenocara-util-macros')
source=(https://repo.hyperbola.info:50000/sources/xenocara-libre/$_openbsdver/lib/libxpm-$pkgver.tar.xz{,.sig})
sha512sums=('3bdcdf83a9f9d68ecd2cff687218e7c5083bef8d959a75815ab8efc2ae8b16874c731cac16d67808321ced3bc9fb1dfba2677b7c1e6a0267cc38588cf9bdfa0b'
            'SKIP')
validpgpkeys=('C92BAA713B8D53D3CAE63FC9E6974752F9704456') # André Silva

prepare() {
  cd "xenocara-$_openbsdver/lib/libXpm"
  autoreconf -vfi
}

build() {
  export CC="gcc -m32"
  export CXX="g++ -m32"
  export PKG_CONFIG_PATH="/usr/lib32/pkgconfig"

  cd "xenocara-$_openbsdver/lib/libXpm"
  ./configure --prefix=/usr --libdir=/usr/lib32
  make
}

package() {
  cd "xenocara-$_openbsdver/lib/libXpm"
  make DESTDIR="$pkgdir" install

  rm -rf "${pkgdir}"/usr/{include,share,bin}
  install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
}
Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

3

Re: [multilib] Collection of packages as addition

lib32-libxaw

# Maintainer (Arch): Jan de Groot <jgc@archlinux.org>
# Maintainer: André Silva <emulatorman@hyperbola.info>
# Contributor: Márcio Silva <coadde@hyperbola.info>

pkgname=lib32-libxaw
_openbsdver=6.5
pkgver=1.0.13
pkgrel=1.hyperbola2
pkgdesc="X11 Athena Widget library, provided by Xenocara (32 bit)"
arch=('i686' 'x86_64')
license=('X11')
url="https://www.xenocara.org"
depends=('lib32-libxmu' 'lib32-libxpm')
makedepends=('xenocara-util-macros')
source=(https://repo.hyperbola.info:50000/sources/xenocara-libre/$_openbsdver/lib/libxaw-$pkgver.tar.xz{,.sig})
sha512sums=('00683e27552318face338813926ff3e3c46bc614f0c9b03b1ee5a03cf553c1adce7357ec0c8b3fa5ac64969362d6b920dc0ddd60e75038fa213f80867def2643'
            'SKIP')
validpgpkeys=('C92BAA713B8D53D3CAE63FC9E6974752F9704456') # André Silva

prepare() {
  cd "xenocara-$_openbsdver/lib/libXaw"
  autoreconf -vfi
}

build() {
  export CC='gcc -m32'
  export PKG_CONFIG_PATH='/usr/lib32/pkgconfig'

  cd "xenocara-$_openbsdver/lib/libXaw"

  ./configure --prefix=/usr --sysconfdir=/etc --libdir=/usr/lib32 --disable-static
  make
}

package() {
  cd "xenocara-$_openbsdver/lib/libXaw"

  make DESTDIR="${pkgdir}" install
  rm -rf "${pkgdir}"/usr/{include,share}
  
  ln -sf libXaw7.so "$pkgdir/usr/lib32/libXaw.so"
  install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
}
Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

4

Re: [multilib] Collection of packages as addition

lib32-faad2

# $Id$
# Maintainer: Eric Bélanger <eric@archlinux.org>

_basename=faad2
pkgname=lib32-faad2
pkgver=2.7
pkgrel=4
pkgdesc="ISO AAC audio decoder (32 bit)"
arch=('i686' 'x86_64')
url="http://www.audiocoding.com/"
license=('GPL')
depends=('lib32-glibc' ${_basename})
options=('!makeflags')
source=(http://downloads.sourceforge.net/sourceforge/faac/${_basename}-${pkgver}.tar.bz2
        faad2-2.7-libmp4ff-install-mp4ff_int_types_h.patch
    faad2-2.7-libmp4ff-shared-lib.patch
    faad2-2.7-man1_MANS.patch)
sha1sums=('b0e80481d27ae9faf9e46c8c8dfb617a0adb91b5'
          '1cf28cfd32dbae6cc484b149fd6adfea33506544'
          '247658aa795cd6d44a153fae8c5cb62e427f3ecf'
          '4b548a08f7611a5f4f395c7c1d4cef5e37368af2')

prepare() {
  cd ${_basename}-${pkgver}
  patch -p1 -i "${srcdir}/faad2-2.7-libmp4ff-shared-lib.patch"
  patch -p0 -i "${srcdir}/faad2-2.7-libmp4ff-install-mp4ff_int_types_h.patch"
  patch -p1 -i "${srcdir}/faad2-2.7-man1_MANS.patch"
  autoreconf --force --install
}

build() {
  export CC='gcc -m32'
  export CXX='g++ -m32'
  export PKG_CONFIG_PATH='/usr/lib32/pkgconfig'
  cd ${_basename}-${pkgver}

  ./configure --prefix=/usr --libdir=/usr/lib32
  make CFLAGS="${CFLAGS} -fPIC"
}

package() {
  cd ${_basename}-${pkgver}
  make DESTDIR="${pkgdir}" install
  rm -rf "${pkgdir}/usr"/{bin,include,share}
}

faad2-2.7-man1_MANS.patch

diff -ur faad2-2.7.orig/frontend/Makefile.am faad2-2.7/frontend/Makefile.am
--- faad2-2.7.orig/frontend/Makefile.am    2009-02-06 18:03:37.000000000 +0200
+++ faad2-2.7/frontend/Makefile.am    2009-07-20 20:27:29.000000000 +0300
@@ -1,5 +1,5 @@
 bin_PROGRAMS = faad
-man_MANS = faad.man
+man1_MANS = faad.man
 
 INCLUDES = -I$(top_srcdir)/include -I$(top_srcdir)/common/faad \
        -I$(top_srcdir)/common/mp4ff

faad2-2.7-libmp4ff-shared-lib.patch

Ripped from Debian

Patch to create a shared lib for libmp4ff.

--- a/common/mp4ff/Makefile.am
+++ b/common/mp4ff/Makefile.am
@@ -1,7 +1,8 @@
-lib_LIBRARIES = libmp4ff.a
+lib_LTLIBRARIES = libmp4ff.la
 include_HEADERS = mp4ff.h mp4ffint.h
 
-libmp4ff_a_CFLAGS = -DUSE_TAGGING=1
+AM_CFLAGS = -DUSE_TAGGING=1
 
-libmp4ff_a_SOURCES = mp4ff.c mp4atom.c mp4meta.c mp4sample.c mp4util.c \
+libmp4ff_la_LDFLAGS = -version-info 0:0:0
+libmp4ff_la_SOURCES = mp4ff.c mp4atom.c mp4meta.c mp4sample.c mp4util.c \
              mp4tagupdate.c mp4ff.h mp4ffint.h mp4ff_int_types.h
--- a/frontend/Makefile.am
+++ b/frontend/Makefile.am
@@ -5,7 +5,7 @@
        -I$(top_srcdir)/common/mp4ff
 
 faad_LDADD = $(top_builddir)/libfaad/libfaad.la \
-         $(top_builddir)/common/mp4ff/libmp4ff.a
+         $(top_builddir)/common/mp4ff/libmp4ff.la
 
 faad_SOURCES = main.c \
            audio.c audio.h \

faad2-2.7-libmp4ff-install-mp4ff_int_types_h.patch

Install mp4ff_int_types.h for mythmusic.

http://bugs.gentoo.org/275008

--- common/mp4ff/Makefile.am
+++ common/mp4ff/Makefile.am
@@ -1,5 +1,5 @@
 lib_LTLIBRARIES = libmp4ff.la
-include_HEADERS = mp4ff.h mp4ffint.h
+include_HEADERS = mp4ff.h mp4ffint.h mp4ff_int_types.h
 
 AM_CFLAGS = -DUSE_TAGGING=1
 
Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

5

Re: [multilib] Collection of packages as addition

lib32-lame

# Contributor: Johannes Dewender  arch at JonnyJD dot net
# Contributor: josephgbr <rafael.f.f1@gmail.com>

_pkgbase=lame
pkgname=lib32-${_pkgbase}
pkgver=3.99.5
pkgrel=2
pkgdesc="A high quality MPEG Audio Layer III (MP3) encoder (32 bit)"
arch=('x86_64')
url="http://lame.sourceforge.net/"
depends=('lib32-glibc' "${_pkgbase}")
makedepends=('lib32-ncurses' 'gcc-multilib' 'nasm')
license=('LGPL')
source=(http://downloads.sourceforge.net/sourceforge/${_pkgbase}/${_pkgbase}-${pkgver}.tar.gz)
md5sums=('84835b313d4a8b68f5349816d33e07ce')

build() {
  export CC='gcc -m32'
  export CXX='g++ -m32'
  export PKG_CONFIG_PATH='/usr/lib32/pkgconfig'
  
  cd "${srcdir}/${_pkgbase}-${pkgver}"
  ./configure --prefix=/usr --enable-nasm --enable-shared --libdir=/usr/lib32
  make
}

package() {
  cd "${srcdir}/${_pkgbase}-${pkgver}"
  make DESTDIR="${pkgdir}" install
  rm -rf "${pkgdir}/usr"/{bin,include,share}
}
Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

6

Re: [multilib] Collection of packages as addition

lib32-x264

# $Id$
# Maintainer: Maxime Gauduin <alucryd@archlinux.org>
# Contributor: Ionut Biru <ibiru@archlinux.org>
# Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor: damir <damir@archlinux.org>
# Contributor: Paul Mattal <paul@archlinux.org>

pkgbase=x264
pkgname=lib32-x264
pkgver=0.148.r2748.97eaef2
pkgrel=1
epoch=2
arch=('i686' 'x86_64')
url='http://www.videolan.org/developers/x264.html'
license=('GPL')
depends=('x264' 'lib32-glibc')
makedepends=('git' 'l-smash' 'nasm' 'lib32-gcc-libs')
_commit='97eaef2ab82a46d13ea5e00270712d6475fbe42b'
source=("git+https://git.videolan.org/git/x264.git#commit=${_commit}")
sha256sums=('SKIP')

pkgver() {
    cd x264
    ./version.sh | grep X264_POINTVER | sed -r 's/^#define X264_POINTVER "([0-9]+\.[0-9]+)\.([0-9]+) (.*)"$/\1.r\2.\3/'
}

build() {
  cd ${pkgbase}

  export CC="gcc -m32"
  export CXX="g++ -m32"
  export PKG_CONFIG_PATH="/usr/lib32/pkgconfig"

  ./configure \
        --prefix='/usr' \
        --libdir=/usr/lib32 \
        --host=i686-linux-gnu \
        --enable-shared \
        --enable-pic
  make
}


package() {
    make -C ${pkgbase} DESTDIR="${pkgdir}" install-lib-shared
    cd "$pkgdir/usr"
    rm -rf {bin,include}/
}
Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

7

Re: [multilib] Collection of packages as addition

lib32-libbluray

# Maintainer (Arch): Maxime Gauduin <alucryd@archlinux.org>
# Contributor (Arch): Ionut Biru <ibiru@archlinux.org>
# Contributor (Arch): Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor (Arch): Andrew Cook <ariscop@gmail.com>
# Maintainer: André Silva <emulatorman@hyperbola.info>

_pkgbase=libbluray
pkgname=lib32-libbluray
pkgver=1.0.0
_debver=1.0.0
_debrel=2
pkgrel=1.hyperbola1
pkgdesc='Library to access Blu-Ray disks for video playback, without java-environment recommendation and without apache-ant support (32 bit)'
arch=('x86_64')
url='https://www.videolan.org/developers/libbluray.html'
license=('LGPL-2.1')
depends=("$_pkgbase" 'lib32-fontconfig' 'lib32-glibc' 'lib32-freetype2' 'lib32-libxml2')
makedepends=('quilt')
provides=('libbluray.so')
source=("https://download.videolan.org/pub/videolan/libbluray/${pkgver}/libbluray-${pkgver}.tar.bz2"
        "https://deb.debian.org/debian/pool/main/libb/libbluray/libbluray_$_debver-$_debrel.debian.tar.xz")
sha512sums=('fcf2193c3b76f3436bc88ce8853cac16f29c3bb6c66447109c14202a41ea938cb6814502a8f724fb1b31add6bd36b42d3aed3eb4a8010c123537e073bd7a0be1'
            '24f024210c9cb400632144758dae3d73bf95f6d22e0b29f8057339a3b629289f81ad66ad3ea101200e84e4c7087cd35021a1f687284efdd3986e12f0d75742c5')

prepare() {
  cd libbluray-${pkgver}

  if [[ ${pkgver%.*} = ${_debver%.*} ]]; then
    # Debian patches
    export QUILT_PATCHES=debian/patches
    export QUILT_REFRESH_ARGS='-p ab --no-timestamps --no-index'
    export QUILT_DIFF_ARGS='--no-timestamps'

    mv "$srcdir"/debian .

    # Doesn't apply and seems unimportant
    rm -v debian/patches/04_kfreebsd-include.patch || true
    rm -v debian/patches/05_use-system-asm.patch || true

    quilt push -av
  fi
}

build() {
  export CC='gcc -m32'
  export PKG_CONFIG_PATH='/usr/lib32/pkgconfig'
  cd libbluray-${pkgver}

  ./configure \
    --libdir=/usr/lib32 \
    --prefix='/usr' \
    --disable-bdjava \
    --disable-bdjava-jar
  make
}

package() {
  cd libbluray-${pkgver}

  make DESTDIR="$pkgdir" install
  rm -rf "${pkgdir}"/usr/{bin,include,share}
  install -Dm644 COPYING ${pkgdir}/usr/share/licenses/${pkgname}/COPYING
}

# vim: ts=2 sw=2 et:
Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

8

Re: [multilib] Collection of packages as addition

lib32-gsm

# Maintainer: Ondřej Hošek <ondra.hosek@gmail.com>
# Contributor: Jan de Groot <jgc@archlinux.org>
# Contributor: Maxime de Roucy <maxime.deroucy@gmail.com>
# Contributor: Darwin Bautista <djclue917@gmail.com>

pkgname=lib32-gsm
_pkgbase=gsm
pkgver=1.0.16
pkgrel=1
pkgdesc="Shared libraries for GSM 06.10 lossy speech compression (32 bit)"
arch=('x86_64')
url="http://www.quut.com/gsm/"
license=('custom')
makedepends=('gcc-multilib')
depends=('glibc' 'gsm')
source=("http://www.quut.com/${_pkgbase}/${_pkgbase}-${pkgver}.tar.gz"
        'gsm-shared.patch')
sha512sums=('dfcadca2ff062294deed23859f73f704fc28e2f30f5544f44befd445cb031308673f4885ba9b65c6a4e304bf12398c3458ee2b2f476e998fa4f8ea7728c9589b'
            'ece13a62503a50173a9fbf43d939f643d5a831a0208f13b108708989f73db63f9e3a5ac04c30ab11533ae19ad9e0ff348436a1184bb2a173518970d87da04b78')

prepare() {
  cd "${srcdir}/${_pkgbase}-${pkgver%.*}-pl${pkgver##*.}/"

  patch -p0 -i "${srcdir}/gsm-shared.patch"
}

build() {
  cd "${srcdir}/${_pkgbase}-${pkgver%.*}-pl${pkgver##*.}/"

  # flags for shared lib
  CFLAGS="${CFLAGS} -fPIC"
  make \
    CC="gcc -m32" \
    CCFLAGS="-c ${CFLAGS} -fPIC"
}

package() {
  cd "${srcdir}/${_pkgbase}-${pkgver%.*}-pl${pkgver##*.}/"

  # Prepare directories
  install -m755 -d "${pkgdir}"/usr/{bin,lib,lib32,include/gsm,share/{licenses/${_pkgbase},man/man{1,3}}}

  make -j1 \
    CC="gcc -m32" \
    INSTALL_ROOT="${pkgdir}/usr" \
    GSM_INSTALL_LIB="${pkgdir}/usr/lib32" \
    GSM_INSTALL_INC="${pkgdir}/usr/include/gsm" \
    GSM_INSTALL_MAN="${pkgdir}/usr/share/man/man3" \
    TOAST_INSTALL_MAN="${pkgdir}/usr/share/man/man1" \
    install

  # clean directories provided by 64-bit package
  rm -Rf "${pkgdir}"/usr/{bin,include,lib,share}
}

gsm-shared.patch

--- Makefile    2006-04-26 15:14:26.000000000 -0400
+++ Makefile    2010-06-19 16:53:25.000000000 -0400
@@ -96,11 +96,11 @@
 #  Other tools
 
 SHELL        = /bin/sh
-LN        = ln
+LN        = ln -s -f
 BASENAME     = basename
 AR        = ar
 ARFLAGS        = cr
-RMFLAGS        =
+RMFLAGS        = -f
 FIND        = find
 COMPRESS     = compress
 COMPRESSFLAGS     = 
@@ -139,7 +139,7 @@
 
 # Targets
 
-LIBGSM    = $(LIB)/libgsm.a
+LIBGSMSO = $(LIB)/libgsm.so
 
 TOAST    = $(BIN)/toast
 UNTOAST    = $(BIN)/untoast
@@ -257,7 +257,7 @@
 # Install targets
 
 GSM_INSTALL_TARGETS =    \
-        $(GSM_INSTALL_LIB)/libgsm.a        \
+        $(GSM_INSTALL_LIB)/libgsm.so        \
         $(GSM_INSTALL_INC)/gsm.h        \
         $(GSM_INSTALL_MAN)/gsm.3        \
         $(GSM_INSTALL_MAN)/gsm_explode.3    \
@@ -279,7 +279,7 @@
 
 # Target rules
 
-all:        $(LIBGSM) $(TOAST) $(TCAT) $(UNTOAST)
+all:        $(LIBGSMSO) $(TOAST) $(TCAT) $(UNTOAST)
         @-echo $(ROOT): Done.
 
 tst:        $(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/test-result
@@ -299,24 +299,23 @@
 
 # The basic API: libgsm
 
-$(LIBGSM):    $(LIB) $(GSM_OBJECTS)
-        -rm $(RMFLAGS) $(LIBGSM)
-        $(AR) $(ARFLAGS) $(LIBGSM) $(GSM_OBJECTS)
-        $(RANLIB) $(LIBGSM)
-
+$(LIBGSMSO): $(LIB) $(GSM_OBJECTS)
+    $(LD) -shared -Wl,-soname,libgsm.so.1 -o $@.1.0.13 $(GSM_OBJECTS)
+    $(LN) libgsm.so.1.0.13 $(LIBGSMSO).1
+    $(LN) libgsm.so.1.0.13 $(LIBGSMSO)
 
 # Toast, Untoast and Tcat -- the compress-like frontends to gsm.
 
-$(TOAST):    $(BIN) $(TOAST_OBJECTS) $(LIBGSM)
-        $(LD) $(LFLAGS) -o $(TOAST) $(TOAST_OBJECTS) $(LIBGSM) $(LDLIB)
+$(TOAST):    $(BIN) $(TOAST_OBJECTS) $(LIBGSMSO)
+        $(LD) $(LFLAGS) -o $(TOAST) $(TOAST_OBJECTS) $(LIBGSMSO) $(LDLIB)
 
 $(UNTOAST):    $(BIN) $(TOAST)
         -rm $(RMFLAGS) $(UNTOAST)
-        $(LN) $(TOAST) $(UNTOAST)
+        $(LN) toast $(UNTOAST)
 
 $(TCAT):    $(BIN) $(TOAST)
         -rm $(RMFLAGS) $(TCAT)
-        $(LN) $(TOAST) $(TCAT)
+        $(LN) toast $(TCAT)
 
 
 # The local bin and lib directories
@@ -351,53 +350,54 @@
         fi
 
 $(TOAST_INSTALL_BIN)/toast:    $(TOAST)
-        -rm $@
+        -rm $(RMFLAGS) $@
         cp $(TOAST) $@
         chmod 755 $@
 
 $(TOAST_INSTALL_BIN)/untoast:    $(TOAST_INSTALL_BIN)/toast
-        -rm $@
-        ln $? $@
+        -rm $(RMFLAGS) $@
+        $(LN) toast $@
 
 $(TOAST_INSTALL_BIN)/tcat:    $(TOAST_INSTALL_BIN)/toast
-        -rm $@
-        ln $? $@
+        -rm $(RMFLAGS) $@
+        $(LN) toast $@
 
 $(TOAST_INSTALL_MAN)/toast.1:    $(MAN)/toast.1
-        -rm $@
+        -rm $(RMFLAGS) $@
         cp $? $@
         chmod 444 $@
 
 $(GSM_INSTALL_MAN)/gsm.3:    $(MAN)/gsm.3
-        -rm $@
+        -rm $(RMFLAGS) $@
         cp $? $@
         chmod 444 $@
 
 $(GSM_INSTALL_MAN)/gsm_option.3:    $(MAN)/gsm_option.3
-        -rm $@
+        -rm $(RMFLAGS) $@
         cp $? $@
         chmod 444 $@
 
 $(GSM_INSTALL_MAN)/gsm_explode.3:    $(MAN)/gsm_explode.3
-        -rm $@
+        -rm $(RMFLAGS) $@
         cp $? $@
         chmod 444 $@
 
 $(GSM_INSTALL_MAN)/gsm_print.3:    $(MAN)/gsm_print.3
-        -rm $@
+        -rm $(RMFLAGS) $@
         cp $? $@
         chmod 444 $@
 
 $(GSM_INSTALL_INC)/gsm.h:    $(INC)/gsm.h
-        -rm $@
-        cp $? $@
-        chmod 444 $@
-
-$(GSM_INSTALL_LIB)/libgsm.a:    $(LIBGSM)
-        -rm $@
+        -rm $(RMFLAGS) $@
         cp $? $@
         chmod 444 $@
 
+$(GSM_INSTALL_LIB)/libgsm.so:    $(LIBGSMSO)
+        -rm $(RMFLAGS) $@ $@.1 $@.1.0.13
+        cp $?.1.0.13 $@.1.0.13
+        chmod 755 $@.1.0.13
+        $(LN) libgsm.so.1.0.13 $@
+        $(LN) libgsm.so.1.0.13 $@.1
 
 # Distribution
 
@@ -425,7 +425,7 @@
             -print | xargs rm $(RMFLAGS)
 
 clean:    semi-clean
-        -rm $(RMFLAGS) $(LIBGSM) $(ADDTST)/add        \
+        -rm $(RMFLAGS) $(LIBGSMSO)* $(ADDTST)/add        \
             $(TOAST) $(TCAT) $(UNTOAST)    \
             $(ROOT)/gsm-1.0.tar.Z
 
@@ -473,22 +473,22 @@
 $(TST)/test-result:    $(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/run
             ( cd $(TST); ./run ) 
 
-$(TST)/lin2txt:        $(TST)/lin2txt.o $(LIBGSM)
+$(TST)/lin2txt:        $(TST)/lin2txt.o $(LIBGSMSO)
             $(LD) $(LFLAGS) -o $(TST)/lin2txt \
-                $(TST)/lin2txt.o $(LIBGSM) $(LDLIB)
+                $(TST)/lin2txt.o $(LIBGSMSO) $(LDLIB)
 
-$(TST)/lin2cod:        $(TST)/lin2cod.o $(LIBGSM)
+$(TST)/lin2cod:        $(TST)/lin2cod.o $(LIBGSMSO)
             $(LD) $(LFLAGS) -o $(TST)/lin2cod \
-                $(TST)/lin2cod.o $(LIBGSM) $(LDLIB)
+                $(TST)/lin2cod.o $(LIBGSMSO) $(LDLIB)
 
-$(TST)/gsm2cod:        $(TST)/gsm2cod.o $(LIBGSM)
+$(TST)/gsm2cod:        $(TST)/gsm2cod.o $(LIBGSMSO)
             $(LD) $(LFLAGS) -o $(TST)/gsm2cod \
-                $(TST)/gsm2cod.o $(LIBGSM) $(LDLIB)
+                $(TST)/gsm2cod.o $(LIBGSMSO) $(LDLIB)
 
-$(TST)/cod2txt:        $(TST)/cod2txt.o $(LIBGSM)
+$(TST)/cod2txt:        $(TST)/cod2txt.o $(LIBGSMSO)
             $(LD) $(LFLAGS) -o $(TST)/cod2txt \
-                $(TST)/cod2txt.o $(LIBGSM) $(LDLIB)
+                $(TST)/cod2txt.o $(LIBGSMSO) $(LDLIB)
 
-$(TST)/cod2lin:        $(TST)/cod2lin.o $(LIBGSM)
+$(TST)/cod2lin:        $(TST)/cod2lin.o $(LIBGSMSO)
             $(LD) $(LFLAGS) -o $(TST)/cod2lin \
-                $(TST)/cod2lin.o $(LIBGSM) $(LDLIB)
+                $(TST)/cod2lin.o $(LIBGSMSO) $(LDLIB)
Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

9

Re: [multilib] Collection of packages as addition

lib32-opencore-amr

# Contributor: Ionut Biru <ionut@archlinux.ro>
# Contributor: WAntilles <wantilles@adslgr.com>
# Maintainer: GordonGR <gordongr@freemail.gr>

pkgname=lib32-opencore-amr
_pkgname=opencore-amr
pkgver=0.1.5
pkgrel=1
pkgdesc="Open source implementation of the Adaptive Multi Rate (AMR) speech codec, lib32"
arch=('x86_64')
license=('APACHE')
url="http://opencore-amr.sourceforge.net/"
source=("http://downloads.sourceforge.net/sourceforge/$_pkgname/$_pkgname-$pkgver.tar.gz")
depends=("glibc" "$_pkgname")
md5sums=('e0798587b91411cc092aa73091a97dfc')

build() {
export CC="gcc -m32"
export CXX="g++ -m32"
export PKG_CONFIG_PATH="/usr/lib32/pkgconfig"

cd "$srcdir/$_pkgname-$pkgver"
./configure --prefix=/usr --disable-static --libdir=/usr/lib32 --libexecdir=/usr/lib32
make
}

package() {
cd "$srcdir/$_pkgname-$pkgver"
make DESTDIR="$pkgdir" install
cd "$pkgdir/usr"
rm -rf include/
}
Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

10

Re: [multilib] Collection of packages as addition

lib32-openjpeg2

# Maintainer: Alexandre Demers <alexandre.f.demers@gmail.com>

_setPrefix="/usr"
_setLibdir="lib32"
_setFullLibdir="${_setPrefix}/${_setLibdir}"
_pkgbase=openjpeg2

pkgname=${_setLibdir}-${_pkgbase}
pkgver=2.1.2
pkgrel=2
pkgdesc="An open source JPEG 2000 codec, version ${pkgver} (32 bit)"
arch=('x86_64')
license=('BSD')
url="http://www.openjpeg.org"
makedepends=('cmake' 'gcc-multilib')
depends=("${_pkgbase}" 'lib32-glibc' 'lib32-libpng' 'lib32-zlib' 'lib32-libtiff' 'lib32-lcms2')
source=("https://github.com/uclouvain/openjpeg/archive/v2.1.2.tar.gz")
md5sums=("40a7bfdcc66280b3c1402a0eb1a27624")

build() {
  export CFLAGS="-m32"
  export CXXFLAGS="-m32"
  export PKG_CONFIG_PATH="${_setFullLibdir}/pkgconfig"

  cd "${srcdir}"
  mkdir -p build
  cd build
  cmake "../openjpeg-$pkgver" -DCMAKE_INSTALL_PREFIX=${_setPrefix} -DOPENJPEG_INSTALL_LIB_DIR=${_setLibdir} -DBUILD_DOC=off
  make
}

package() {
  cd "${srcdir}/build"
  make DESTDIR="${pkgdir}" install

  # removing unneeded files and folders
  rm -rf "${pkgdir}/${_setPrefix}"/{bin,include}
  rm -fr "${pkgdir}/${_setFullLibdir}"/openjpeg-2.1

  # installing license
  mkdir -p "${pkgdir}/${_setPrefix}"/share/licenses/openjpeg-2.1
  cp LICENSE.txt "${pkgdir}/${_setPrefix}"/share/licenses/openjpeg-2.1/LICENSE

  mkdir -p "${pkgdir}/${_setPrefix}"/share/licenses/${pkgname}
  ln -s ../openjpeg-2.1/LICENSE "${pkgdir}/${_setPrefix}"/share/licenses/${pkgname}/LICENSE
}
Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

11

Re: [multilib] Collection of packages as addition

lib32-fribidi

# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
# Contributor: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Nezmer <Nezmer@gmail.com>

_basename=fribidi
pkgname=lib32-fribidi
pkgver=1.0.9
pkgrel=1
pkgdesc="A Free Implementation of the Unicode Bidirectional Algorithm (32 bit)"
url="https://github.com/fribidi/fribidi/"
arch=(x86_64)
license=(LGPL)
depends=(lib32-glibc)
makedepends=(git)
provides=(libfribidi.so)
_commit=f9e8e71a6fbf4a4619481284c9f484d10e559995  # tags/v1.0.9^0
source=("git+https://github.com/fribidi/fribidi#commit=$_commit")
sha256sums=('SKIP')

pkgver() {
  cd fribidi
  git describe --tags | sed -e 's/-/+/g' -e 's/^v//'
}

build() {
  export CC='gcc -m32'
  export CXX='g++ -m32'
  export PKG_CONFIG_PATH='/usr/lib32/pkgconfig'

  cd "${srcdir}/${_basename}"
  ./autogen.sh
  ./configure --prefix=/usr --libdir=/usr/lib32
  make
}

package() {
  cd "${srcdir}/${_basename}"
  make DESTDIR="${pkgdir}" install
  rm -rf "${pkgdir}/usr"/{bin,include,share}
}

# vim:set sw=2 et:
Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

12

Re: [multilib] Collection of packages as addition

lib32-xvidcore

# Contributor: tobias <tobias@archlinux.org>
# Contributor: Sarah Hay <sarah@archlinux.org>
# Contributor: JD Steffen <jd@steffennet.org>
# Maintainer: GordonGR <ntheo1979@gmail.com>

_pkgname=xvidcore
pkgname=lib32-$_pkgname
pkgver=1.3.4
pkgrel=1
pkgdesc="XviD is an open source MPEG-4 video codec (32-bit)"
arch=('x86_64')
license=('GPL')
url="http://www.xvid.org/"
depends=('lib32-glibc' "$_pkgname")
makedepends=('nasm')
provides=('libxvidcore.so')
source=("http://downloads.xvid.org/downloads/${_pkgname}-${pkgver}.tar.bz2")
md5sums=('5e68b84e3286b7bbaa95ddc34f0fcace')

build() {

export CC="gcc -m32"
export CXX="g++ -m32"
export PKG_CONFIG_PATH="/usr/lib32/pkgconfig"
  
cd ${srcdir}/${_pkgname}/build/generic
./configure --prefix=/usr \
     --libdir=/usr/lib32 \
     --host=x86_64-unknown-linux-gnu \
     --target=i686-unknown-linux-gnu

make
}

package() {

cd ${srcdir}/${_pkgname}/build/generic
make DESTDIR=${pkgdir} install

rm -rf "${pkgdir}"/usr/{include,share,bin}

#Fix dynamic libraries
cd ${pkgdir}/usr/lib32
mylib=$(basename libxvidcore.so.*)
ln -sf ${mylib} libxvidcore.so.4
ln -sf ${mylib} libxvidcore.so
}
Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

13

Re: [multilib] Collection of packages as addition

lib32-libass

# Contributor: Johannes Dewender  arch at JonnyJD dot net
# Contributor: jospehgbr <rafael.f.f1@gmail.com>

_pkgbase=libass
pkgname=lib32-${_pkgbase}
pkgver=0.13.6
pkgrel=1
pkgdesc="A portable library for SSA/ASS subtitles rendering (32 bit)"
arch=('x86_64')
url="https://github.com/libass/libass/"
license=('BSD')
depends=("${_pkgbase}"
'lib32-fontconfig>=2.10.92' 'lib32-fribidi' 'lib32-harfbuzz')
provides=('libass.so')
makedepends=('gcc-multilib' 'yasm')
source=("${url}/releases/download/${pkgver}/${_pkgbase}-${pkgver}.tar.xz")
sha512sums=('8fad8ca3fc93143699ba6dbbc0893db3c2f3032ac341f69c2c90319f0bbe1b71fd4b358944a03851ee183f9065afcfec4d4c841432dbe0d9b1d4eb72964ff42b')

build() {
  export PKG_CONFIG_PATH='/usr/lib32/pkgconfig'
  export CC='gcc -m32'
  cd "$srcdir/${_pkgbase}-${pkgver}"
  ./configure --prefix=/usr --libdir=/usr/lib32 --host=i686-linux-gnu \
    --enable-harfbuzz \
    --enable-fontconfig
  make
}

package() {
  cd "$srcdir/${_pkgbase}-${pkgver}"
  make DESTDIR="${pkgdir}" install
  rm -rf "${pkgdir}"/usr/include
}
Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

14

Re: [multilib] Collection of packages as addition

lib32-ffmpeg

# Maintainer: Alexandre Demers <alexandre.f.demers@gmail.com>
# Contributor: Johannes Dewender  arch at JonnyJD dot net
# Contributor: Ionut Biru <ibiru@archlinux.org>
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
# Contributor: Paul Mattal <paul@archlinux.org>

_pkgbasename=ffmpeg
pkgname=lib32-$_pkgbasename
pkgver=3.3.8
pkgrel=5.hyperbola3
epoch=1
pkgdesc="Complete solution to record, convert and stream audio and video (32 bit)"
arch=('x86_64')
url="http://ffmpeg.org/"
license=('GPL3')
depends=("$_pkgbasename"
      'lib32-alsa-lib'
      'lib32-fontconfig'
      'lib32-fribidi'
      'lib32-gnutls'
      'lib32-gsm'
      'lib32-lame'
      'lib32-libass'
      'lib32-libavc1394'
      'lib32-libbluray'
      'lib32-libiec61883'
      'lib32-libmodplug'
      'lib32-jack'
      'lib32-libtheora'
      'lib32-libva'
      'lib32-libvdpau'
      'lib32-libwebp'
      'lib32-opencore-amr'
      'lib32-openjpeg2'
      'lib32-opus'
      'lib32-sdl2'
      'lib32-speex'
      'lib32-v4l-utils'
      'lib32-libxv'
      'lib32-xvidcore'
      'lib32-zlib'
      'lib32-libvorbis'
      'lib32-x264'
      'lib32-libvpx'
      )
makedepends=('lib32-ladspa' 'lib32-libvdpau' 'yasm')
optdepends=('lib32-ladspa: LADSPA filters')
provides=(
      'libavcodec.so' 'libavdevice.so' 'libavfilter.so' 'libavformat.so'
      'libavresample.so' 'libavutil.so' 'libpostproc.so' 'libswresample.so'
      'libswscale.so'
)
source=(
      "http://ffmpeg.org/releases/$_pkgbasename-$pkgver.tar.bz2"{,.asc}
)
validpgpkeys=('FCF986EA15E6E293A5644F10B4322F04D67658D8')
sha512sums=(
      'a793f6d0a06ff5244a580d9e54e1252d3ac88e2513dad4d137081103327ae4440ebe9b0d60a13f93536cb6b35097982ea76acc4056bfa31683063eef5c211ede'
      'SKIP'
)

build() {
  cd ${_pkgbasename}-${pkgver}

  export PKG_CONFIG_PATH="/usr/lib32/pkgconfig"

  ./configure \
    --prefix='/usr' \
    --libdir=/usr/lib32 \
    --shlibdir=/usr/lib32 \
    --cc="gcc -m32" \
    --disable-debug \
    --disable-static \
    --disable-stripping \
    --enable-avisynth \
    --enable-avresample \
    --enable-fontconfig \
    --enable-gmp \
    --enable-gnutls \
    --enable-gpl \
    --enable-ladspa \
    --enable-libass \
    --enable-libbluray \
    --enable-libfreetype \
    --enable-libfribidi \
    --enable-libgsm \
    --enable-libiec61883 \
    --enable-libmodplug \
    --enable-libmp3lame \
    --enable-libopencore_amrnb \
    --enable-libopencore_amrwb \
    --enable-libopenjpeg \
    --enable-libopus \
    --disable-libpulse \
    --disable-libschroedinger \
    --disable-libsoxr \
    --enable-libspeex \
    --enable-libtheora \
    --enable-libv4l2 \
    --enable-libvorbis \
    --enable-libvpx \
    --enable-libwebp \
    --enable-libx264 \
    --enable-libxcb \
    --enable-libxvid \
    --disable-netcdf \
    --enable-shared \
    --enable-version3

  make
}

package() {
  cd ${_pkgbasename}-${pkgver}

  make DESTDIR="${pkgdir}" install
  rm -rf "$pkgdir"/usr/{include,share,bin}
}

# vim:set ts=2 sw=2 et:
Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

15

Re: [multilib] Collection of packages as addition

lib32-libquicktime

# Maintainer (Arch): Federico Cinelli <cinelli@aur.archlinux.org>
# Maintainer (Arch): Mateusz Herych   <heniekk@gmail.com>
# Maintainer: André Silva <emulatorman@hyperbola.info>
# Contributor: Jorge Lopez <jorginho@hyperbola.info>

_basename=libquicktime
pkgname=lib32-libquicktime
pkgver=1.2.4
_debver=1.2.4
_debrel=10+deb9u1
pkgrel=15.hyperbola3
pkgdesc="A library for reading and writing quicktime files, without schroedinger and nonfree faac support (32 bit)"
arch=('i686' 'x86_64')
license=('LGPL-2.1')
url="http://libquicktime.sourceforge.net/"
depends=('lib32-alsa-lib' 'lib32-faad2' 'lib32-gtk2' 'lib32-lame' 'lib32-libjpeg-turbo' 'lib32-libxaw'
         'lib32-libxv' 'lib32-x264'
         'libavcodec.so' 'libswscale.so' 'libvorbisenc.so' 'libvorbisfile.so'
         'libvorbis.so')
makedepends=('mesa-libgl' 'quilt')
source=("https://downloads.sourceforge.net/sourceforge/$_basename/$_basename-$pkgver.tar.gz"
        "https://deb.debian.org/debian/pool/main/libq/libquicktime/libquicktime_$_debver-$_debrel.debian.tar.xz"
        ffmpeg2.0.patch libquicktime-ffmpeg3.patch)
sha512sums=('6ab6cd62ae2361bb3ad73725e9e8baa2b03361bc23e9e34b24f90c0e2bec4337de950ed7f30a6a1d2e67ab33e8f0c43538369fd07e417f54b84583a3c331f8dd'
            'dec21229077ab2043c22cec112ab33d2a50f5875bdcf1de9562ae27d520c9043e9597bdb6c475cb0322ff976adcc80817bb696c0ad358f53855d370fc237a8e3'
            '60ed75b21efddea879b7785fc5e265c60f21f924aa6f68d3840b7d70ba07237a7814d02d094223b6dc6067fc7a6986be3037a816d37eb0d7338215e203805a10'
            'd2a4851284b053cf95f9d45eba5dcd4f2c2f6beb1d683ceefce9a13b61c6f9d7e43571d661b9c5dc469410908b772be7e5c7e5c12537db400ee4ed684a3388ab')

prepare() {
  cd $_basename-$pkgver
  if [[ $pkgver = $_debver ]]; then
    # Debian patches
    export QUILT_PATCHES=debian/patches
    export QUILT_REFRESH_ARGS='-p ab --no-timestamps --no-index'
    export QUILT_DIFF_ARGS='--no-timestamps'

    mv "$srcdir"/debian .

    quilt push -av
  else
    # Fix build with ffmpeg 3.0 (Gentoo)
    patch -p1 -i ../libquicktime-ffmpeg3.patch
  fi
  patch -Np1 -i ../ffmpeg2.0.patch
}

build() {
  export CC='gcc -m32'
  export CXX='g++ -m32'
  export PKG_CONFIG_PATH='/usr/lib32/pkgconfig'
  cd $_basename-$pkgver
  ./configure \
    --prefix=/usr \
    --libdir=/usr/lib32 \
    --enable-gpl \
    --with-ffmpeg \
    --with-x264 \
    --without-doxygen \
    --without-schroedinger \
    --without-faac
  make
}

package() {
  cd $_basename-$pkgver
  make DESTDIR="$pkgdir" install
  rm -rf "${pkgdir}/usr"/{bin,include,share}
  install -Dm644 COPYING $pkgdir/usr/share/licenses/$pkgname/COPYING
}

libquicktime-ffmpeg3.patch

Index: libquicktime-1.2.4/plugins/ffmpeg/video.c
===================================================================
--- libquicktime-1.2.4.orig/plugins/ffmpeg/video.c
+++ libquicktime-1.2.4/plugins/ffmpeg/video.c
@@ -37,10 +37,10 @@
 #endif
 
 
-#ifdef  PIX_FMT_YUV422P10
-#define PIX_FMT_YUV422P10_OR_DUMMY PIX_FMT_YUV422P10
+#ifdef  AV_PIX_FMT_YUV422P10
+#define AV_PIX_FMT_YUV422P10_OR_DUMMY AV_PIX_FMT_YUV422P10
 #else
-#define PIX_FMT_YUV422P10_OR_DUMMY -1234
+#define AV_PIX_FMT_YUV422P10_OR_DUMMY -1234
 #endif
 
 #if LIBAVCODEC_VERSION_INT >= ((54<<16)|(1<<8)|0)
@@ -90,9 +90,9 @@ typedef struct
   int imx_bitrate;
   int imx_strip_vbi;
 
-  /* In some cases FFMpeg would report something like PIX_FMT_YUV422P, while
-     we would like to treat it as PIX_FMT_YUVJ422P. It's only used for decoding */
-  enum PixelFormat reinterpret_pix_fmt;
+  /* In some cases FFMpeg would report something like AV_PIX_FMT_YUV422P, while
+     we would like to treat it as AV_PIX_FMT_YUVJ422P. It's only used for decoding */
+  enum AVPixelFormat reinterpret_pix_fmt;
   
   int is_imx;
   int y_offset;
@@ -137,42 +137,42 @@ typedef struct
 
 static const struct
   {
-  enum PixelFormat ffmpeg_id;
+  enum AVPixelFormat ffmpeg_id;
   int              lqt_id;
   int              exact;
   }
 colormodels[] =
   {
-    { PIX_FMT_YUV420P,   BC_YUV420P,   1 }, ///< Planar YUV 4:2:0 (1 Cr & Cb sample per 2x2 Y samples)
+    { AV_PIX_FMT_YUV420P,   BC_YUV420P,   1 }, ///< Planar YUV 4:2:0 (1 Cr & Cb sample per 2x2 Y samples)
 #if LIBAVUTIL_VERSION_INT < (50<<16)
-    { PIX_FMT_YUV422,    BC_YUV422,    1 },
+    { AV_PIX_FMT_YUV422,    BC_YUV422,    1 },
 #else
-    { PIX_FMT_YUYV422,   BC_YUV422,    1 },
+    { AV_PIX_FMT_YUYV422,   BC_YUV422,    1 },
 #endif
-    { PIX_FMT_RGB24,     BC_RGB888,    1 }, ///< Packed pixel, 3 bytes per pixel, RGBRGB...
-    { PIX_FMT_BGR24,     BC_BGR888,    1 }, ///< Packed pixel, 3 bytes per pixel, BGRBGR...
-    { PIX_FMT_YUV422P,   BC_YUV422P,   1 }, ///< Planar YUV 4:2:2 (1 Cr & Cb sample per 2x1 Y samples)
-    { PIX_FMT_YUV444P,   BC_YUV444P,   1 }, ///< Planar YUV 4:4:4 (1 Cr & Cb sample per 1x1 Y samples)
-    { PIX_FMT_YUV411P,   BC_YUV411P,   1 }, ///< Planar YUV 4:1:1 (1 Cr & Cb sample per 4x1 Y samples)
-    { PIX_FMT_YUV422P16, BC_YUV422P16, 1 }, ///< Planar 16 bit YUV 4:2:2 (1 Cr & Cb sample per 2x1 Y samples)
-#ifdef PIX_FMT_YUV422P10
-    { PIX_FMT_YUV422P10, BC_YUV422P10, 1 }, ///< 10 bit samples in uint16_t containers, planar 4:2:2
-#endif
-    { PIX_FMT_RGB565,    BC_RGB565,    1 }, ///< always stored in cpu endianness
-    { PIX_FMT_YUVJ420P,  BC_YUVJ420P,  1 }, ///< Planar YUV 4:2:0 full scale (jpeg)
-    { PIX_FMT_YUVJ422P,  BC_YUVJ422P,  1 }, ///< Planar YUV 4:2:2 full scale (jpeg)
-    { PIX_FMT_YUVJ444P,  BC_YUVJ444P,  1 }, ///< Planar YUV 4:4:4 full scale (jpeg)
+    { AV_PIX_FMT_RGB24,     BC_RGB888,    1 }, ///< Packed pixel, 3 bytes per pixel, RGBRGB...
+    { AV_PIX_FMT_BGR24,     BC_BGR888,    1 }, ///< Packed pixel, 3 bytes per pixel, BGRBGR...
+    { AV_PIX_FMT_YUV422P,   BC_YUV422P,   1 }, ///< Planar YUV 4:2:2 (1 Cr & Cb sample per 2x1 Y samples)
+    { AV_PIX_FMT_YUV444P,   BC_YUV444P,   1 }, ///< Planar YUV 4:4:4 (1 Cr & Cb sample per 1x1 Y samples)
+    { AV_PIX_FMT_YUV411P,   BC_YUV411P,   1 }, ///< Planar YUV 4:1:1 (1 Cr & Cb sample per 4x1 Y samples)
+    { AV_PIX_FMT_YUV422P16, BC_YUV422P16, 1 }, ///< Planar 16 bit YUV 4:2:2 (1 Cr & Cb sample per 2x1 Y samples)
+#ifdef AV_PIX_FMT_YUV422P10
+    { AV_PIX_FMT_YUV422P10, BC_YUV422P10, 1 }, ///< 10 bit samples in uint16_t containers, planar 4:2:2
+#endif
+    { AV_PIX_FMT_RGB565,    BC_RGB565,    1 }, ///< always stored in cpu endianness
+    { AV_PIX_FMT_YUVJ420P,  BC_YUVJ420P,  1 }, ///< Planar YUV 4:2:0 full scale (jpeg)
+    { AV_PIX_FMT_YUVJ422P,  BC_YUVJ422P,  1 }, ///< Planar YUV 4:2:2 full scale (jpeg)
+    { AV_PIX_FMT_YUVJ444P,  BC_YUVJ444P,  1 }, ///< Planar YUV 4:4:4 full scale (jpeg)
 #if LIBAVUTIL_VERSION_INT < (50<<16)
-    { PIX_FMT_RGBA32,    BC_RGBA8888,  0 }, ///< Packed pixel, 4 bytes per pixel, BGRABGRA...
+    { AV_PIX_FMT_RGBA32,    BC_RGBA8888,  0 }, ///< Packed pixel, 4 bytes per pixel, BGRABGRA...
 #else
-    { PIX_FMT_RGB32,     BC_RGBA8888,  0 }, ///< Packed pixel, 4 bytes per pixel, BGRABGRA...
+    { AV_PIX_FMT_RGB32,     BC_RGBA8888,  0 }, ///< Packed pixel, 4 bytes per pixel, BGRABGRA...
 #endif
-    { PIX_FMT_RGB555,    BC_RGB888,    0 }, ///< always stored in cpu endianness, most significant bit to 1
-    { PIX_FMT_GRAY8,     BC_RGB888,    0 },
-    { PIX_FMT_MONOWHITE, BC_RGB888,    0 }, ///< 0 is white
-    { PIX_FMT_MONOBLACK, BC_RGB888,    0 }, ///< 0 is black
-    { PIX_FMT_PAL8,      BC_RGB888,    0 }, ///< 8 bit with RGBA palette
-    { PIX_FMT_YUV410P,   BC_YUV420P,   0 }, ///< Planar YUV 4:1:0 (1 Cr & Cb sample per 4x4 Y samples)
+    { AV_PIX_FMT_RGB555,    BC_RGB888,    0 }, ///< always stored in cpu endianness, most significant bit to 1
+    { AV_PIX_FMT_GRAY8,     BC_RGB888,    0 },
+    { AV_PIX_FMT_MONOWHITE, BC_RGB888,    0 }, ///< 0 is white
+    { AV_PIX_FMT_MONOBLACK, BC_RGB888,    0 }, ///< 0 is black
+    { AV_PIX_FMT_PAL8,      BC_RGB888,    0 }, ///< 8 bit with RGBA palette
+    { AV_PIX_FMT_YUV410P,   BC_YUV420P,   0 }, ///< Planar YUV 4:1:0 (1 Cr & Cb sample per 4x4 Y samples)
   };
 
 static const struct
@@ -343,16 +343,16 @@ static int lqt_tenbit_dnxhd_supported(AV
   if (!codec->pix_fmts)
     return 0;
 
-  for (i = 0; codec->pix_fmts[i] != PIX_FMT_NONE; ++i)
+  for (i = 0; codec->pix_fmts[i] != AV_PIX_FMT_NONE; ++i)
     {
-    if (codec->pix_fmts[i] == PIX_FMT_YUV422P10_OR_DUMMY)
+    if (codec->pix_fmts[i] == AV_PIX_FMT_YUV422P10_OR_DUMMY)
       return 1;
     }
 
   return 0;
   }
 
-static enum PixelFormat lqt_ffmpeg_get_ffmpeg_colormodel(int id)
+static enum AVPixelFormat lqt_ffmpeg_get_ffmpeg_colormodel(int id)
   {
   int i;
 
@@ -361,10 +361,10 @@ static enum PixelFormat lqt_ffmpeg_get_f
     if(colormodels[i].lqt_id == id)
       return colormodels[i].ffmpeg_id;
     }
-  return PIX_FMT_NB;
+  return AV_PIX_FMT_NB;
   }
 
-static int lqt_ffmpeg_get_lqt_colormodel(enum PixelFormat id, int * exact)
+static int lqt_ffmpeg_get_lqt_colormodel(enum AVPixelFormat id, int * exact)
   {
   int i;
 
@@ -402,24 +402,24 @@ static void lqt_ffmpeg_setup_decoding_co
   /* First we try codec-specific colormodel matching. */
   if(codec->decoder->id == AV_CODEC_ID_DNXHD)
     {
-    /* FFMpeg supports PIX_FMT_YUV422P and PIX_FMT_YUV422P10 for DNxHD, which
-       we sometimes interpret as PIX_FMT_YUVJ422P and PIX_FMT_YUVJ422P10. */
-    if (codec->avctx->pix_fmt == PIX_FMT_YUV422P || codec->avctx->pix_fmt == PIX_FMT_YUV422P10_OR_DUMMY)
+    /* FFMpeg supports AV_PIX_FMT_YUV422P and AV_PIX_FMT_YUV422P10 for DNxHD, which
+       we sometimes interpret as AV_PIX_FMT_YUVJ422P and AV_PIX_FMT_YUVJ422P10. */
+    if (codec->avctx->pix_fmt == AV_PIX_FMT_YUV422P || codec->avctx->pix_fmt == AV_PIX_FMT_YUV422P10_OR_DUMMY)
       {
-      int p10 = (codec->avctx->pix_fmt == PIX_FMT_YUV422P10_OR_DUMMY);
+      int p10 = (codec->avctx->pix_fmt == AV_PIX_FMT_YUV422P10_OR_DUMMY);
       *exact = 1;
       if (lqt_ffmpeg_get_avid_yuv_range(vtrack->track) == AVID_FULL_YUV_RANGE)
         {
         vtrack->stream_cmodel = p10 ? BC_YUVJ422P10 : BC_YUVJ422P;
-        codec->reinterpret_pix_fmt = p10 ? PIX_FMT_YUV422P10_OR_DUMMY : PIX_FMT_YUVJ422P;
-        // Note: reinterpret_pix_fmt should really be PIX_FMT_YUVJ422P10, except
+        codec->reinterpret_pix_fmt = p10 ? AV_PIX_FMT_YUV422P10_OR_DUMMY : AV_PIX_FMT_YUVJ422P;
+        // Note: reinterpret_pix_fmt should really be AV_PIX_FMT_YUVJ422P10, except
         // there is no such colormodel in FFMpeg. Fortunately, it's not a problem
         // in this case, as reinterpret_pix_fmt is only used when *exact == 0.
         }
       else
         {
         vtrack->stream_cmodel = p10 ? BC_YUV422P10 : BC_YUV422P;
-        codec->reinterpret_pix_fmt = p10 ? PIX_FMT_YUV422P10_OR_DUMMY : PIX_FMT_YUV422P;
+        codec->reinterpret_pix_fmt = p10 ? AV_PIX_FMT_YUV422P10_OR_DUMMY : AV_PIX_FMT_YUV422P;
         }
       return;
       }
@@ -440,14 +440,14 @@ static void lqt_ffmpeg_setup_encoding_co
 
   if (codec->encoder->id == AV_CODEC_ID_DNXHD)
     {
-    /* FFMpeg's DNxHD encoder only supports PIX_FMT_YUV422P and PIX_FMT_YUV422P10
-       and doesn't know anything about PIX_FMT_YUVJ422P and PIX_FMT_YUVJ422P10
+    /* FFMpeg's DNxHD encoder only supports AV_PIX_FMT_YUV422P and AV_PIX_FMT_YUV422P10
+       and doesn't know anything about AV_PIX_FMT_YUVJ422P and AV_PIX_FMT_YUVJ422P10
        (in fact, the latter doesn't even exist) */
-    codec->avctx->pix_fmt = PIX_FMT_YUV422P;
+    codec->avctx->pix_fmt = AV_PIX_FMT_YUV422P;
     if (vtrack->stream_cmodel == BC_YUV422P10 || vtrack->stream_cmodel == BC_YUVJ422P10)
       {
       if (lqt_tenbit_dnxhd_supported(codec->encoder))
-        codec->avctx->pix_fmt = PIX_FMT_YUV422P10_OR_DUMMY;
+        codec->avctx->pix_fmt = AV_PIX_FMT_YUV422P10_OR_DUMMY;
       }
     }
   }
@@ -458,7 +458,7 @@ static void lqt_ffmpeg_setup_encoding_co
 /* From avcodec.h: */
 
 /*
- * PIX_FMT_RGBA32 is handled in an endian-specific manner. A RGBA
+ * AV_PIX_FMT_RGBA32 is handled in an endian-specific manner. A RGBA
  * color is put together as:
  *  (A << 24) | (R << 16) | (G << 8) | B
  * This is stored as BGRA on little endian CPU architectures and ARGB on
@@ -530,7 +530,7 @@ static void convert_rgba_to_argb(uint8_t
  */
 
 static void convert_image_decode(quicktime_ffmpeg_video_codec_t *codec,
-                                 AVFrame * in_frame, enum PixelFormat in_format,
+                                 AVFrame * in_frame, enum AVPixelFormat in_format,
                                  unsigned char ** out_frame, int out_format,
                                  int width, int height, int row_span, int row_span_uv)
   {
@@ -547,9 +547,9 @@ static void convert_image_decode(quickti
    *  RGBA format like in ffmpeg??
    */
 #if LIBAVUTIL_VERSION_INT < (50<<16)
-  if((in_format == PIX_FMT_RGBA32) && (out_format == BC_RGBA8888))
+  if((in_format == AV_PIX_FMT_RGBA32) && (out_format == BC_RGBA8888))
 #else
-    if((in_format == PIX_FMT_RGB32) && (out_format == BC_RGBA8888))
+    if((in_format == AV_PIX_FMT_RGB32) && (out_format == BC_RGBA8888))
 #endif
       {
       convert_image_decode_rgba(in_frame, out_frame, width, height, codec->y_offset);
@@ -829,7 +829,7 @@ static int lqt_ffmpeg_decode_video(quick
     if(avcodec_open2(codec->avctx, codec->decoder, NULL) != 0)
       return -1;
 #endif
-    codec->frame = avcodec_alloc_frame();
+    codec->frame = av_frame_alloc();
     vtrack->stream_cmodel = LQT_COLORMODEL_NONE;
     codec->initialized = 1;
     }
@@ -929,10 +929,10 @@ static int lqt_ffmpeg_decode_video(quick
 #ifdef HAVE_LIBSWSCALE
 
 #if LIBAVUTIL_VERSION_INT < (50<<16)
-      if(!((codec->avctx->pix_fmt == PIX_FMT_RGBA32) &&
+      if(!((codec->avctx->pix_fmt == AV_PIX_FMT_RGBA32) &&
            (vtrack->stream_cmodel == BC_RGBA8888)))
 #else
-        if(!((codec->avctx->pix_fmt == PIX_FMT_RGB32) &&
+        if(!((codec->avctx->pix_fmt == AV_PIX_FMT_RGB32) &&
              (vtrack->stream_cmodel == BC_RGBA8888)))
 #endif
           {
@@ -1318,7 +1318,7 @@ static int lqt_ffmpeg_encode_video(quick
         
   if(!codec->initialized)
     {
-    codec->frame = avcodec_alloc_frame();
+    codec->frame = av_frame_alloc();
 
     /* time_base is 1/framerate for constant framerate */
           
@@ -1396,9 +1396,9 @@ static int lqt_ffmpeg_encode_video(quick
       if(vtrack->stream_cmodel == BC_RGBA8888)
         {
         /* Libquicktime doesn't natively support a color model equivalent
-           to PIX_FMT_ARGB, which is required for QTRLE with alpha channel.
+           to AV_PIX_FMT_ARGB, which is required for QTRLE with alpha channel.
            So, we use BC_RGBA8888 and do ad hoc conversion below. */
-        codec->avctx->pix_fmt = PIX_FMT_ARGB;
+        codec->avctx->pix_fmt = AV_PIX_FMT_ARGB;
         vtrack->track->mdia.minf.stbl.stsd.table[0].depth = 32;
         }
       }
@@ -1467,7 +1467,7 @@ static int lqt_ffmpeg_encode_video(quick
     }
   //        codec->lqt_colormodel = ffmepg_2_lqt(codec->com.ffcodec_enc);
 
-  if(codec->y_offset != 0 || codec->avctx->pix_fmt == PIX_FMT_ARGB)
+  if(codec->y_offset != 0 || codec->avctx->pix_fmt == AV_PIX_FMT_ARGB)
     {
     if(!codec->tmp_rows)
       {
@@ -1492,7 +1492,7 @@ static int lqt_ffmpeg_encode_video(quick
                         vtrack->stream_cmodel,
                         0, 0, 0, codec->y_offset);
       }
-    else if(codec->avctx->pix_fmt == PIX_FMT_ARGB)
+    else if(codec->avctx->pix_fmt == AV_PIX_FMT_ARGB)
       {
       convert_rgba_to_argb(row_pointers[0], vtrack->stream_row_span,
                            codec->tmp_rows[0], codec->tmp_row_span,
Index: libquicktime-1.2.4/plugins/ffmpeg/audio.c
===================================================================
--- libquicktime-1.2.4.orig/plugins/ffmpeg/audio.c
+++ libquicktime-1.2.4/plugins/ffmpeg/audio.c
@@ -1266,7 +1266,7 @@ static int lqt_ffmpeg_encode_audio(quick
     pkt.data = codec->chunk_buffer;
     pkt.size = codec->chunk_buffer_alloc;
 
-    avcodec_get_frame_defaults(&f);
+    av_frame_unref(&f);
     f.nb_samples = codec->avctx->frame_size;
     
     avcodec_fill_audio_frame(&f, channels, codec->avctx->sample_fmt,
--- libquicktime-1.2.4/plugins/ffmpeg/lqt_ffmpeg.c.orig    2016-02-17 08:11:50.683023612 +0000
+++ libquicktime-1.2.4/plugins/ffmpeg/lqt_ffmpeg.c    2016-02-17 08:12:20.362898974 +0000
@@ -370,7 +370,7 @@
 struct CODECIDMAP codecidmap_v[] =
   {
     {
-      .id = CODEC_ID_MPEG1VIDEO,
+      .id = AV_CODEC_ID_MPEG1VIDEO,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -381,7 +381,7 @@
       .wav_ids = { LQT_WAV_ID_NONE }
     },
     {
-      .id = CODEC_ID_MPEG4,
+      .id = AV_CODEC_ID_MPEG4,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -399,7 +399,7 @@
       .compression_id = LQT_COMPRESSION_MPEG4_ASP,
     },
     {
-      .id = CODEC_ID_MSMPEG4V1,
+      .id = AV_CODEC_ID_MSMPEG4V1,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -410,7 +410,7 @@
       .wav_ids = { LQT_WAV_ID_NONE },
     },
     {
-      .id = CODEC_ID_MSMPEG4V2,
+      .id = AV_CODEC_ID_MSMPEG4V2,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -421,7 +421,7 @@
       .wav_ids = { LQT_WAV_ID_NONE },
     },
     {
-      .id = CODEC_ID_MSMPEG4V3,
+      .id = AV_CODEC_ID_MSMPEG4V3,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -437,7 +437,7 @@
       .do_encode = 1,
     },
     {
-      .id = CODEC_ID_MSMPEG4V3,
+      .id = AV_CODEC_ID_MSMPEG4V3,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -452,7 +452,7 @@
     },
 #if 0
     {
-      .id = CODEC_ID_WMV1,
+      .id = AV_CODEC_ID_WMV1,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -465,7 +465,7 @@
     },
 #endif
     {
-      .id = CODEC_ID_H263,
+      .id = AV_CODEC_ID_H263,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -477,7 +477,7 @@
       .compatibility_flags = LQT_FILE_QT_OLD | LQT_FILE_QT | LQT_FILE_MP4 | LQT_FILE_3GP,
     },
     {
-      .id = CODEC_ID_H263,
+      .id = AV_CODEC_ID_H263,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -492,7 +492,7 @@
       .do_encode = 1,
     },
     {
-      .id = CODEC_ID_H264,
+      .id = AV_CODEC_ID_H264,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -503,7 +503,7 @@
       .wav_ids = { LQT_WAV_ID_NONE },
     },
     {
-      .id = CODEC_ID_H263P,
+      .id = AV_CODEC_ID_H263P,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -517,7 +517,7 @@
       .do_encode = 1,
     },
     {
-      .id = CODEC_ID_H263I,
+      .id = AV_CODEC_ID_H263I,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -528,7 +528,7 @@
       .wav_ids = { LQT_WAV_ID_NONE },
     },
     {
-      .id = CODEC_ID_SVQ1,
+      .id = AV_CODEC_ID_SVQ1,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -539,7 +539,7 @@
       .wav_ids = { LQT_WAV_ID_NONE },
     },
     {
-      .id = CODEC_ID_SVQ3,
+      .id = AV_CODEC_ID_SVQ3,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -550,7 +550,7 @@
       .wav_ids = { LQT_WAV_ID_NONE },
     },
     {
-      .id = CODEC_ID_MJPEG,
+      .id = AV_CODEC_ID_MJPEG,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -564,7 +564,7 @@
       .do_encode = 1,
     },
     {
-      .id = CODEC_ID_MJPEGB,
+      .id = AV_CODEC_ID_MJPEGB,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -578,7 +578,7 @@
     },
 #if LIBAVCODEC_BUILD >= 3346688
     {
-      .id = CODEC_ID_TARGA,
+      .id = AV_CODEC_ID_TARGA,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -590,7 +590,7 @@
 #endif
 #if LIBAVCODEC_BUILD >= 3347456
     {
-      .id = CODEC_ID_TIFF,
+      .id = AV_CODEC_ID_TIFF,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -601,7 +601,7 @@
     },
 #endif
     {
-      .id = CODEC_ID_8BPS,
+      .id = AV_CODEC_ID_8BPS,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -611,7 +611,7 @@
       .wav_ids = { LQT_WAV_ID_NONE },
     },
     {
-      .id = CODEC_ID_INDEO3,
+      .id = AV_CODEC_ID_INDEO3,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -622,7 +622,7 @@
       .wav_ids = { LQT_WAV_ID_NONE },
     },
     {
-      .id = CODEC_ID_RPZA,
+      .id = AV_CODEC_ID_RPZA,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -632,7 +632,7 @@
       .wav_ids = { LQT_WAV_ID_NONE },
     },
     {
-      .id = CODEC_ID_SMC,
+      .id = AV_CODEC_ID_SMC,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -642,7 +642,7 @@
       .wav_ids = { LQT_WAV_ID_NONE },
     },
     {
-      .id = CODEC_ID_CINEPAK,
+      .id = AV_CODEC_ID_CINEPAK,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -653,7 +653,7 @@
       .wav_ids = { LQT_WAV_ID_NONE },
     },
     {
-      .id = CODEC_ID_CYUV,
+      .id = AV_CODEC_ID_CYUV,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -664,7 +664,7 @@
       .wav_ids = { LQT_WAV_ID_NONE },
     },
     {
-      .id = CODEC_ID_QTRLE,
+      .id = AV_CODEC_ID_QTRLE,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -677,7 +677,7 @@
       .encoding_colormodels = (int[]){ BC_RGB888, BC_RGBA8888, LQT_COLORMODEL_NONE },
     },
     {
-      .id = CODEC_ID_MSRLE,
+      .id = AV_CODEC_ID_MSRLE,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -687,7 +687,7 @@
       .wav_ids = { LQT_WAV_ID_NONE },
     },
     {
-      .id = CODEC_ID_DVVIDEO,
+      .id = AV_CODEC_ID_DVVIDEO,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -703,7 +703,7 @@
       .image_sizes = image_sizes_dv,
     },
     {
-      .id = CODEC_ID_DVVIDEO,
+      .id = AV_CODEC_ID_DVVIDEO,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -719,7 +719,7 @@
       .image_sizes = image_sizes_dv,
     },
     {
-      .id = CODEC_ID_DVVIDEO,
+      .id = AV_CODEC_ID_DVVIDEO,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -735,7 +735,7 @@
     },
     /* DVCPRO HD (decoding only for now) */
     {
-      .id = CODEC_ID_DVVIDEO,
+      .id = AV_CODEC_ID_DVVIDEO,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -756,7 +756,7 @@
       // .do_encode = 1
     },
     {
-      .id = CODEC_ID_FFVHUFF,
+      .id = AV_CODEC_ID_FFVHUFF,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -769,7 +769,7 @@
       .do_encode = 1
     },
     {
-      .id = CODEC_ID_FFV1,
+      .id = AV_CODEC_ID_FFV1,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -785,7 +785,7 @@
     },
 #if LIBAVCODEC_BUILD >= 3352576
     {
-      .id = CODEC_ID_DNXHD,
+      .id = AV_CODEC_ID_DNXHD,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -801,7 +801,7 @@
     },
 #endif
     {
-      .id = CODEC_ID_MPEG2VIDEO,
+      .id = AV_CODEC_ID_MPEG2VIDEO,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -823,7 +823,7 @@
 struct CODECIDMAP codecidmap_a[] =
   {
     {
-      .id = CODEC_ID_MP3,
+      .id = AV_CODEC_ID_MP3,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -835,7 +835,7 @@
       .wav_ids = { 0x50, 0x55, LQT_WAV_ID_NONE },
     },
     {
-      .id = CODEC_ID_MP2,
+      .id = AV_CODEC_ID_MP2,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -850,7 +850,7 @@
       .compression_id = LQT_COMPRESSION_MP2,
     },
     {
-      .id = CODEC_ID_AC3,
+      .id = AV_CODEC_ID_AC3,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -865,7 +865,7 @@
       .compression_id = LQT_COMPRESSION_AC3,
     },
     {
-      .id = CODEC_ID_QDM2,
+      .id = AV_CODEC_ID_QDM2,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -880,7 +880,7 @@
 #if 1
     /* Doesn't work as long as audio chunks are not split into VBR "Samples" */
     {
-      .id = CODEC_ID_ALAC,
+      .id = AV_CODEC_ID_ALAC,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -893,7 +893,7 @@
 #if 1
     /* Sounds ugly */
     {
-      .id = CODEC_ID_ADPCM_MS,
+      .id = AV_CODEC_ID_ADPCM_MS,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -906,7 +906,7 @@
 #if 1
     /* Sounds ugly */
     {
-      .id = CODEC_ID_ADPCM_IMA_WAV,
+      .id = AV_CODEC_ID_ADPCM_IMA_WAV,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
--- libquicktime-1.2.4/plugins/ffmpeg/video.c.orig    2016-02-17 08:14:18.585735622 +0000
+++ libquicktime-1.2.4/plugins/ffmpeg/video.c    2016-02-17 08:14:35.332331900 +0000
@@ -400,7 +400,7 @@
   codec->reinterpret_pix_fmt = codec->avctx->pix_fmt;
 
   /* First we try codec-specific colormodel matching. */
-  if(codec->decoder->id == CODEC_ID_DNXHD)
+  if(codec->decoder->id == AV_CODEC_ID_DNXHD)
     {
     /* FFMpeg supports AV_PIX_FMT_YUV422P and AV_PIX_FMT_YUV422P10 for DNxHD, which
        we sometimes interpret as AV_PIX_FMT_YUVJ422P and AV_PIX_FMT_YUVJ422P10. */
@@ -438,7 +438,7 @@
   quicktime_ffmpeg_video_codec_t *codec = vtrack->codec->priv;
   codec->avctx->pix_fmt = lqt_ffmpeg_get_ffmpeg_colormodel(vtrack->stream_cmodel);
 
-  if (codec->encoder->id == CODEC_ID_DNXHD)
+  if (codec->encoder->id == AV_CODEC_ID_DNXHD)
     {
     /* FFMpeg's DNxHD encoder only supports AV_PIX_FMT_YUV422P and AV_PIX_FMT_YUV422P10
        and doesn't know anything about AV_PIX_FMT_YUVJ422P and AV_PIX_FMT_YUVJ422P10
@@ -728,13 +728,13 @@
 
     /* Set extradata: It's done differently for each codec */
 
-    if(codec->decoder->id == CODEC_ID_SVQ3)
+    if(codec->decoder->id == AV_CODEC_ID_SVQ3)
       {
       extradata       = trak->mdia.minf.stbl.stsd.table[0].table_raw + 4;
       extradata_size  = trak->mdia.minf.stbl.stsd.table[0].table_raw_size - 4;
       
       }
-    else if(codec->decoder->id == CODEC_ID_H264)
+    else if(codec->decoder->id == AV_CODEC_ID_H264)
       {
       user_atom = quicktime_stsd_get_user_atom(trak, "avcC", &user_atom_len);
 
@@ -753,7 +753,7 @@
         }
       
       }
-    else if(codec->decoder->id == CODEC_ID_MPEG4)
+    else if(codec->decoder->id == AV_CODEC_ID_MPEG4)
       {
       if(trak->mdia.minf.stbl.stsd.table[0].has_esds)
         {
@@ -947,15 +947,15 @@
           }
 #endif
       }
-    if(codec->decoder->id == CODEC_ID_DVVIDEO)
+    if(codec->decoder->id == AV_CODEC_ID_DVVIDEO)
       {
       if(vtrack->stream_cmodel == BC_YUV420P)
         vtrack->chroma_placement = LQT_CHROMA_PLACEMENT_DVPAL;
       vtrack->interlace_mode = LQT_INTERLACE_BOTTOM_FIRST;
       vtrack->ci.id = LQT_COMPRESSION_DV;
       }
-    else if((codec->decoder->id == CODEC_ID_MPEG4) ||
-            (codec->decoder->id == CODEC_ID_H264))
+    else if((codec->decoder->id == AV_CODEC_ID_MPEG4) ||
+            (codec->decoder->id == AV_CODEC_ID_H264))
       {
       if(vtrack->stream_cmodel == BC_YUV420P)
         vtrack->chroma_placement = LQT_CHROMA_PLACEMENT_MPEG2;
@@ -1299,13 +1299,13 @@
     {
     if(vtrack->stream_cmodel == BC_YUV420P)
       {
-      if(codec->encoder->id == CODEC_ID_MPEG4)
+      if(codec->encoder->id == AV_CODEC_ID_MPEG4)
         {
         vtrack->chroma_placement = LQT_CHROMA_PLACEMENT_MPEG2;
         /* enable interlaced encoding */
         vtrack->interlace_mode = LQT_INTERLACE_NONE;
         }
-      else if(codec->encoder->id == CODEC_ID_DVVIDEO)
+      else if(codec->encoder->id == AV_CODEC_ID_DVVIDEO)
         {
         vtrack->chroma_placement = LQT_CHROMA_PLACEMENT_DVPAL;
         }
@@ -1340,7 +1340,7 @@
     codec->avctx->sample_aspect_ratio.num = pixel_width;
     codec->avctx->sample_aspect_ratio.den = pixel_height;
     /* Use global headers for mp4v */
-    if(codec->encoder->id == CODEC_ID_MPEG4)
+    if(codec->encoder->id == AV_CODEC_ID_MPEG4)
       {
       if(!(file->file_type & (LQT_FILE_AVI|LQT_FILE_AVI_ODML)))
         {
@@ -1364,12 +1364,12 @@
         }
 #endif
       }
-    else if((codec->encoder->id == CODEC_ID_MSMPEG4V3) && (trak->strl) &&
+    else if((codec->encoder->id == AV_CODEC_ID_MSMPEG4V3) && (trak->strl) &&
             !strncmp(trak->strl->strf.bh.biCompression, "DIV3", 4))
       {
       strncpy(trak->strl->strh.fccHandler, "div3", 4);
       }
-    else if((codec->encoder->id == CODEC_ID_H263) &&
+    else if((codec->encoder->id == AV_CODEC_ID_H263) &&
             (file->file_type & (LQT_FILE_MP4|LQT_FILE_3GP)))
       {
       uint8_t d263_data[] =
@@ -1383,7 +1383,7 @@
       strncpy(trak->mdia.minf.stbl.stsd.table[0].format,
               "s263", 4);
       }
-    else if(codec->encoder->id == CODEC_ID_FFVHUFF)
+    else if(codec->encoder->id == AV_CODEC_ID_FFVHUFF)
       {
       if(!(file->file_type & (LQT_FILE_AVI|LQT_FILE_AVI_ODML)))
         {
@@ -1391,7 +1391,7 @@
         codec->write_global_header = 1;
         }
       }
-    else if(codec->encoder->id == CODEC_ID_QTRLE)
+    else if(codec->encoder->id == AV_CODEC_ID_QTRLE)
       {
       if(vtrack->stream_cmodel == BC_RGBA8888)
         {
@@ -1402,11 +1402,11 @@
         vtrack->track->mdia.minf.stbl.stsd.table[0].depth = 32;
         }
       }
-    else if(codec->encoder->id == CODEC_ID_DVVIDEO)
+    else if(codec->encoder->id == AV_CODEC_ID_DVVIDEO)
       {
       set_dv_fourcc(width, height, vtrack->stream_cmodel, trak);
       }
-    else if(codec->encoder->id == CODEC_ID_DNXHD)
+    else if(codec->encoder->id == AV_CODEC_ID_DNXHD)
       {
       if(vtrack->interlace_mode != LQT_INTERLACE_NONE)
         {
@@ -1558,12 +1558,12 @@
   
 #endif
   
-  if(!was_initialized && codec->encoder->id == CODEC_ID_DNXHD)
+  if(!was_initialized && codec->encoder->id == AV_CODEC_ID_DNXHD)
     setup_avid_atoms(file, vtrack, codec->buffer, bytes_encoded);
   
   if(bytes_encoded)
     {
-    if (pts == AV_NOPTS_VALUE || (codec->encoder->id == CODEC_ID_DNXHD && pts == 0))
+    if (pts == AV_NOPTS_VALUE || (codec->encoder->id == AV_CODEC_ID_DNXHD && pts == 0))
       {
       /* Some codecs don't bother generating presentation timestamps.
          FFMpeg's DNxHD encoder doesn't even bother to set it to AV_NOPTS_VALUE. */
@@ -1590,13 +1590,13 @@
 
   if(codec->write_global_header && !codec->global_header_written)
     {
-    if(codec->encoder->id == CODEC_ID_FFVHUFF)
+    if(codec->encoder->id == AV_CODEC_ID_FFVHUFF)
       {
       quicktime_user_atoms_add_atom(&trak->mdia.minf.stbl.stsd.table[0].user_atoms,
                                     "glbl",
                                     codec->avctx->extradata, codec->avctx->extradata_size );
       }
-    else if(codec->encoder->id == CODEC_ID_MPEG4)
+    else if(codec->encoder->id == AV_CODEC_ID_MPEG4)
       {
       int advanced = 0;
       if(codec->avctx->max_b_frames ||
@@ -1903,18 +1903,18 @@
     codec_base->encode_video = lqt_ffmpeg_encode_video;
     codec_base->set_pass = set_pass_ffmpeg;
 
-    if(encoder->id == CODEC_ID_MPEG4)
+    if(encoder->id == AV_CODEC_ID_MPEG4)
       {
       codec_base->writes_compressed = writes_compressed_mpeg4;
       codec_base->init_compressed   = init_compressed_mpeg4;
       codec_base->write_packet = write_packet_mpeg4;
       }
-    else if(encoder->id == CODEC_ID_MPEG2VIDEO)
+    else if(encoder->id == AV_CODEC_ID_MPEG2VIDEO)
       {
       codec_base->writes_compressed = writes_compressed_imx;
       codec_base->init_compressed   = init_compressed_imx;
       }
-    else if(encoder->id == CODEC_ID_DVVIDEO)
+    else if(encoder->id == AV_CODEC_ID_DVVIDEO)
       {
       codec_base->init_compressed = init_compressed_dv;
       }
@@ -1922,7 +1922,7 @@
     }
   if(decoder)
     {
-    if(decoder->id == CODEC_ID_H264)
+    if(decoder->id == AV_CODEC_ID_H264)
       codec_base->read_packet = read_packet_h264;
     codec_base->decode_video = lqt_ffmpeg_decode_video;
     }
--- libquicktime-1.2.4/plugins/ffmpeg/audio.c.orig    2016-02-17 08:17:57.421481934 +0000
+++ libquicktime-1.2.4/plugins/ffmpeg/audio.c    2016-02-17 08:18:05.254782305 +0000
@@ -626,7 +626,7 @@
     {
     /* If the codec is mp3, make sure to decode the very last frame */
 
-    if((codec->avctx->codec_id == CODEC_ID_MP3) &&
+    if((codec->avctx->codec_id == AV_CODEC_ID_MP3) &&
        (codec->bytes_in_chunk_buffer >= 4))
       {
       if(!mpa_decode_header(&mph, codec->chunk_buffer, (const mpa_header*)0))
@@ -695,7 +695,7 @@
     
     /* Some really broken mp3 files have the header bytes split across 2 chunks */
 
-    if(codec->avctx->codec_id == CODEC_ID_MP3)
+    if(codec->avctx->codec_id == AV_CODEC_ID_MP3)
       {
       if(codec->bytes_in_chunk_buffer < 4)
         {
@@ -806,7 +806,7 @@
     
     if(bytes_decoded < 0)
       {
-      if(codec->avctx->codec_id == CODEC_ID_MP3)
+      if(codec->avctx->codec_id == AV_CODEC_ID_MP3)
         {
         /* For mp3, bytes_decoded < 0 means, that the frame should be muted */
         memset(&codec->sample_buffer[track_map->channels * (codec->sample_buffer_end -
@@ -866,8 +866,8 @@
   quicktime_audio_map_t *track_map = &file->atracks[track];
   quicktime_ffmpeg_audio_codec_t *codec = track_map->codec->priv;
 
-  if((codec->decoder->id == CODEC_ID_MP2) ||
-     (codec->decoder->id == CODEC_ID_MP3))
+  if((codec->decoder->id == AV_CODEC_ID_MP2) ||
+     (codec->decoder->id == AV_CODEC_ID_MP3))
     {
     mpa_header h;
     uint32_t header;
@@ -909,7 +909,7 @@
     else
       track_map->ci.bitrate = h.bitrate;
     }
-  else if(codec->decoder->id == CODEC_ID_AC3)
+  else if(codec->decoder->id == AV_CODEC_ID_AC3)
     {
     a52_header h;
     uint8_t * ptr;
@@ -986,7 +986,7 @@
 #endif
     /* Some codecs need extra stuff */
 
-    if(codec->decoder->id == CODEC_ID_ALAC)
+    if(codec->decoder->id == AV_CODEC_ID_ALAC)
       {
       header = quicktime_wave_get_user_atom(track_map->track, "alac", &header_len);
       if(header)
@@ -995,7 +995,7 @@
         codec->avctx->extradata_size = header_len;
         }
       }
-    if(codec->decoder->id == CODEC_ID_QDM2)
+    if(codec->decoder->id == AV_CODEC_ID_QDM2)
       {
       header = quicktime_wave_get_user_atom(track_map->track, "QDCA", &header_len);
       if(header)
@@ -1495,9 +1495,9 @@
     codec_base->decode_audio = lqt_ffmpeg_decode_audio;
   codec_base->set_parameter = set_parameter;
 
-  if((decoder->id == CODEC_ID_MP3) || (decoder->id == CODEC_ID_MP2))
+  if((decoder->id == AV_CODEC_ID_MP3) || (decoder->id == AV_CODEC_ID_MP2))
     codec_base->read_packet = read_packet_mpa;
-  else if(decoder->id == CODEC_ID_AC3)
+  else if(decoder->id == AV_CODEC_ID_AC3)
     {
     codec_base->write_packet = write_packet_ac3;
     codec_base->read_packet = read_packet_ac3;

ffmpeg2.0.patch

diff --git a/plugins/ffmpeg/ffmpeg.h b/plugins/ffmpeg/ffmpeg.h
index 346abfc..b79d57a 100644
--- a/plugins/ffmpeg/ffmpeg.h
+++ b/plugins/ffmpeg/ffmpeg.h
@@ -45,3 +45,7 @@ void lqt_ffmpeg_set_parameter(AVCodecContext * ctx,
 
 
 #endif
+#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000
+#define CODEC_FLAG2_STRICT_GOP 0x00000002
+#define CODEC_FLAG_QP_RD 0x08000000
+#define CODEC_FLAG_CBP_RD 0x04000000
diff --git a/plugins/ffmpeg/lqt_ffmpeg.c b/plugins/ffmpeg/lqt_ffmpeg.c
index 1692d99..1aec51a 100644
--- a/plugins/ffmpeg/lqt_ffmpeg.c
+++ b/plugins/ffmpeg/lqt_ffmpeg.c
@@ -89,19 +89,8 @@ int ffmpeg_num_video_codecs = -1;
     PARAM_QSCALE, \
     PARAM_QCOMPRESS, \
     PARAM_QBLUR, \
-    PARAM_QUANTIZER_NOISE_SHAPING, \
     PARAM_TRELLIS
 
-#define ENCODE_PARAM_VIDEO_QUANTIZER_IP \
-  ENCODE_PARAM_VIDEO_QUANTIZER_I, \
-  PARAM_I_QUANT_FACTOR, \
-  PARAM_I_QUANT_OFFSET
-
-#define ENCODE_PARAM_VIDEO_QUANTIZER_IPB \
-  ENCODE_PARAM_VIDEO_QUANTIZER_IP, \
-  PARAM_B_QUANT_FACTOR, \
-  PARAM_B_QUANT_OFFSET
-
 #define ENCODE_PARAM_VIDEO_FRAMETYPES_IP \
   { \
     .name =      "frame_types", \
@@ -207,7 +196,6 @@ static lqt_parameter_info_static_t encode_parameters_mpeg4[] = {
   ENCODE_PARAM_VIDEO_FRAMETYPES_IPB,
   PARAM_FLAG_AC_PRED_MPEG4,
   ENCODE_PARAM_VIDEO_RATECONTROL,
-  ENCODE_PARAM_VIDEO_QUANTIZER_IPB,
   PARAM_FLAG_CBP_RD,
   ENCODE_PARAM_VIDEO_ME,
   PARAM_FLAG_GMC,
@@ -225,7 +213,6 @@ static lqt_parameter_info_static_t encode_parameters_mpeg4[] = {
 static lqt_parameter_info_static_t encode_parameters_dx50[] = {
   ENCODE_PARAM_VIDEO_FRAMETYPES_IP,
   ENCODE_PARAM_VIDEO_RATECONTROL,
-  ENCODE_PARAM_VIDEO_QUANTIZER_IP,
   ENCODE_PARAM_VIDEO_ME,
   ENCODE_PARAM_VIDEO_ME_PRE,
   ENCODE_PARAM_VIDEO_MASKING,
@@ -237,7 +224,6 @@ static lqt_parameter_info_static_t encode_parameters_dx50[] = {
 static lqt_parameter_info_static_t encode_parameters_h263[] = {
   ENCODE_PARAM_VIDEO_FRAMETYPES_IP,
   ENCODE_PARAM_VIDEO_RATECONTROL,
-  ENCODE_PARAM_VIDEO_QUANTIZER_IP,
   ENCODE_PARAM_VIDEO_ME,
   PARAM_FLAG_4MV,
   ENCODE_PARAM_VIDEO_ME_PRE,
@@ -250,7 +236,6 @@ static lqt_parameter_info_static_t encode_parameters_h263[] = {
 static lqt_parameter_info_static_t encode_parameters_h263p[] = {
   ENCODE_PARAM_VIDEO_FRAMETYPES_IP,
   ENCODE_PARAM_VIDEO_RATECONTROL,
-  ENCODE_PARAM_VIDEO_QUANTIZER_IP,
   ENCODE_PARAM_VIDEO_ME,
   PARAM_FLAG_4MV,
   ENCODE_PARAM_VIDEO_ME_PRE,
@@ -264,7 +249,6 @@ static lqt_parameter_info_static_t encode_parameters_h263p[] = {
 static lqt_parameter_info_static_t encode_parameters_msmpeg4v3[] = {
   ENCODE_PARAM_VIDEO_FRAMETYPES_IP,
   ENCODE_PARAM_VIDEO_RATECONTROL,
-  ENCODE_PARAM_VIDEO_QUANTIZER_IP,
   ENCODE_PARAM_VIDEO_ME,
   ENCODE_PARAM_VIDEO_ME_PRE,
   ENCODE_PARAM_VIDEO_MASKING,
diff --git a/plugins/ffmpeg/params.h b/plugins/ffmpeg/params.h
index ee94076..5817d46 100644
--- a/plugins/ffmpeg/params.h
+++ b/plugins/ffmpeg/params.h
@@ -177,6 +177,7 @@ the reference. Unused for constant quantizer encoding") \
     .val_max =     { .val_int = 1 }, \
   }
 
+#if (LIBAVCODEC_VERSION_MAJOR < 55)
 #define PARAM_LUMA_ELIM_THRESHOLD \
   { \
     .name =        "ff_luma_elim_threshold", \
@@ -202,6 +203,7 @@ recommendation") \
 chrominamce. Negative values also consider dc \
 coefficient. 7 is JVT recommendation") \
   }
+#endif
 
 #define PARAM_STRICT_STANDARD_COMPLIANCE \
   { \
@@ -739,6 +741,7 @@ with max and/or min bitrate, this must be specified.") \
 
 /* Does nothing */
 /** Frame types */
+#if (LIBAVCODEC_VERSION_MAJOR < 55)
 #define PARAM_INTER_THRESHOLD \
   { \
     .name =        "ff_inter_threshold", \
@@ -759,6 +762,7 @@ with max and/or min bitrate, this must be specified.") \
     .help_string = TRS("Choose quantization such that noise will be masked by " \
                        "similar-frequency content in the image")        \
   }
+#endif
 
 /** Motion estimation */
 #define PARAM_ME_THRESHOLD \
Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

16

Re: [multilib] Collection of packages as addition

Well, this is a bunch of packages now. But afterwards it is possible to compile the binary without further problems - of course the content and gamedata is proprietary afterwards. Nevertheless Hyperbola is a great distribution giving the opportunity and chance to enhance and hack from the ground up, creating more. smile

Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

17

Re: [multilib] Collection of packages as addition

this is great, im remember playing some good classic games like funnyboat in my early linux days, now some obsolete games are being forgotten and leftout from arch packages. i hope they can find a new home smile

18

Re: [multilib] Collection of packages as addition

Yes, there are many forgotten gems out there because of many reasons like people searching for the newest and best graphics. All in all the old games are the best, making fun and even better to have free, open and libre games here. I hope those packages here can be also a good addition as Hyperbola is following the way Debian is using. There libquicktime resides also as multilib-variant, while on others like Arch Linux more and more packages vanish.

Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!