<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[HyperForum — [multilib] Collection of packages as addition]]></title>
		<link>https://forums.hyperbola.info/viewtopic.php?id=394</link>
		<atom:link href="https://forums.hyperbola.info/extern.php?action=feed&amp;tid=394&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[The most recent posts in [multilib] Collection of packages as addition.]]></description>
		<lastBuildDate>Sat, 18 Jul 2020 22:46:25 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: [multilib] Collection of packages as addition]]></title>
			<link>https://forums.hyperbola.info/viewtopic.php?pid=2143#p2143</link>
			<description><![CDATA[<p>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 <strong>libquicktime</strong> resides also as multilib-variant, while on others like Arch Linux more and more packages vanish.</p>]]></description>
			<author><![CDATA[null@example.com (throgh)]]></author>
			<pubDate>Sat, 18 Jul 2020 22:46:25 +0000</pubDate>
			<guid>https://forums.hyperbola.info/viewtopic.php?pid=2143#p2143</guid>
		</item>
		<item>
			<title><![CDATA[Re: [multilib] Collection of packages as addition]]></title>
			<link>https://forums.hyperbola.info/viewtopic.php?pid=2140#p2140</link>
			<description><![CDATA[<p>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 <img src="https://forums.hyperbola.info/img/smilies/smile.png" width="15" height="15" alt="smile" /></p>]]></description>
			<author><![CDATA[null@example.com (dikasp2)]]></author>
			<pubDate>Sat, 18 Jul 2020 13:59:43 +0000</pubDate>
			<guid>https://forums.hyperbola.info/viewtopic.php?pid=2140#p2140</guid>
		</item>
		<item>
			<title><![CDATA[Re: [multilib] Collection of packages as addition]]></title>
			<link>https://forums.hyperbola.info/viewtopic.php?pid=2138#p2138</link>
			<description><![CDATA[<p>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. <img src="https://forums.hyperbola.info/img/smilies/smile.png" width="15" height="15" alt="smile" /></p>]]></description>
			<author><![CDATA[null@example.com (throgh)]]></author>
			<pubDate>Thu, 16 Jul 2020 21:58:56 +0000</pubDate>
			<guid>https://forums.hyperbola.info/viewtopic.php?pid=2138#p2138</guid>
		</item>
		<item>
			<title><![CDATA[Re: [multilib] Collection of packages as addition]]></title>
			<link>https://forums.hyperbola.info/viewtopic.php?pid=2137#p2137</link>
			<description><![CDATA[<p><strong>lib32-libquicktime</strong></p><div class="codebox"><pre><code># Maintainer (Arch): Federico Cinelli &lt;cinelli@aur.archlinux.org&gt;
# Maintainer (Arch): Mateusz Herych   &lt;heniekk@gmail.com&gt;
# Maintainer: André Silva &lt;emulatorman@hyperbola.info&gt;
# Contributor: Jorge Lopez &lt;jorginho@hyperbola.info&gt;

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

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

    mv &quot;$srcdir&quot;/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=&#039;gcc -m32&#039;
  export CXX=&#039;g++ -m32&#039;
  export PKG_CONFIG_PATH=&#039;/usr/lib32/pkgconfig&#039;
  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=&quot;$pkgdir&quot; install
  rm -rf &quot;${pkgdir}/usr&quot;/{bin,include,share}
  install -Dm644 COPYING $pkgdir/usr/share/licenses/$pkgname/COPYING
}</code></pre></div><p><strong>libquicktime-ffmpeg3.patch</strong></p><div class="codebox"><pre><code>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 &gt;= ((54&lt;&lt;16)|(1&lt;&lt;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&#039;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&#039;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 }, ///&lt; Planar YUV 4:2:0 (1 Cr &amp; Cb sample per 2x2 Y samples)
+    { AV_PIX_FMT_YUV420P,   BC_YUV420P,   1 }, ///&lt; Planar YUV 4:2:0 (1 Cr &amp; Cb sample per 2x2 Y samples)
 #if LIBAVUTIL_VERSION_INT &lt; (50&lt;&lt;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 }, ///&lt; Packed pixel, 3 bytes per pixel, RGBRGB...
-    { PIX_FMT_BGR24,     BC_BGR888,    1 }, ///&lt; Packed pixel, 3 bytes per pixel, BGRBGR...
-    { PIX_FMT_YUV422P,   BC_YUV422P,   1 }, ///&lt; Planar YUV 4:2:2 (1 Cr &amp; Cb sample per 2x1 Y samples)
-    { PIX_FMT_YUV444P,   BC_YUV444P,   1 }, ///&lt; Planar YUV 4:4:4 (1 Cr &amp; Cb sample per 1x1 Y samples)
-    { PIX_FMT_YUV411P,   BC_YUV411P,   1 }, ///&lt; Planar YUV 4:1:1 (1 Cr &amp; Cb sample per 4x1 Y samples)
-    { PIX_FMT_YUV422P16, BC_YUV422P16, 1 }, ///&lt; Planar 16 bit YUV 4:2:2 (1 Cr &amp; Cb sample per 2x1 Y samples)
-#ifdef PIX_FMT_YUV422P10
-    { PIX_FMT_YUV422P10, BC_YUV422P10, 1 }, ///&lt; 10 bit samples in uint16_t containers, planar 4:2:2
-#endif
-    { PIX_FMT_RGB565,    BC_RGB565,    1 }, ///&lt; always stored in cpu endianness
-    { PIX_FMT_YUVJ420P,  BC_YUVJ420P,  1 }, ///&lt; Planar YUV 4:2:0 full scale (jpeg)
-    { PIX_FMT_YUVJ422P,  BC_YUVJ422P,  1 }, ///&lt; Planar YUV 4:2:2 full scale (jpeg)
-    { PIX_FMT_YUVJ444P,  BC_YUVJ444P,  1 }, ///&lt; Planar YUV 4:4:4 full scale (jpeg)
+    { AV_PIX_FMT_RGB24,     BC_RGB888,    1 }, ///&lt; Packed pixel, 3 bytes per pixel, RGBRGB...
+    { AV_PIX_FMT_BGR24,     BC_BGR888,    1 }, ///&lt; Packed pixel, 3 bytes per pixel, BGRBGR...
+    { AV_PIX_FMT_YUV422P,   BC_YUV422P,   1 }, ///&lt; Planar YUV 4:2:2 (1 Cr &amp; Cb sample per 2x1 Y samples)
+    { AV_PIX_FMT_YUV444P,   BC_YUV444P,   1 }, ///&lt; Planar YUV 4:4:4 (1 Cr &amp; Cb sample per 1x1 Y samples)
+    { AV_PIX_FMT_YUV411P,   BC_YUV411P,   1 }, ///&lt; Planar YUV 4:1:1 (1 Cr &amp; Cb sample per 4x1 Y samples)
+    { AV_PIX_FMT_YUV422P16, BC_YUV422P16, 1 }, ///&lt; Planar 16 bit YUV 4:2:2 (1 Cr &amp; Cb sample per 2x1 Y samples)
+#ifdef AV_PIX_FMT_YUV422P10
+    { AV_PIX_FMT_YUV422P10, BC_YUV422P10, 1 }, ///&lt; 10 bit samples in uint16_t containers, planar 4:2:2
+#endif
+    { AV_PIX_FMT_RGB565,    BC_RGB565,    1 }, ///&lt; always stored in cpu endianness
+    { AV_PIX_FMT_YUVJ420P,  BC_YUVJ420P,  1 }, ///&lt; Planar YUV 4:2:0 full scale (jpeg)
+    { AV_PIX_FMT_YUVJ422P,  BC_YUVJ422P,  1 }, ///&lt; Planar YUV 4:2:2 full scale (jpeg)
+    { AV_PIX_FMT_YUVJ444P,  BC_YUVJ444P,  1 }, ///&lt; Planar YUV 4:4:4 full scale (jpeg)
 #if LIBAVUTIL_VERSION_INT &lt; (50&lt;&lt;16)
-    { PIX_FMT_RGBA32,    BC_RGBA8888,  0 }, ///&lt; Packed pixel, 4 bytes per pixel, BGRABGRA...
+    { AV_PIX_FMT_RGBA32,    BC_RGBA8888,  0 }, ///&lt; Packed pixel, 4 bytes per pixel, BGRABGRA...
 #else
-    { PIX_FMT_RGB32,     BC_RGBA8888,  0 }, ///&lt; Packed pixel, 4 bytes per pixel, BGRABGRA...
+    { AV_PIX_FMT_RGB32,     BC_RGBA8888,  0 }, ///&lt; Packed pixel, 4 bytes per pixel, BGRABGRA...
 #endif
-    { PIX_FMT_RGB555,    BC_RGB888,    0 }, ///&lt; always stored in cpu endianness, most significant bit to 1
-    { PIX_FMT_GRAY8,     BC_RGB888,    0 },
-    { PIX_FMT_MONOWHITE, BC_RGB888,    0 }, ///&lt; 0 is white
-    { PIX_FMT_MONOBLACK, BC_RGB888,    0 }, ///&lt; 0 is black
-    { PIX_FMT_PAL8,      BC_RGB888,    0 }, ///&lt; 8 bit with RGBA palette
-    { PIX_FMT_YUV410P,   BC_YUV420P,   0 }, ///&lt; Planar YUV 4:1:0 (1 Cr &amp; Cb sample per 4x4 Y samples)
+    { AV_PIX_FMT_RGB555,    BC_RGB888,    0 }, ///&lt; always stored in cpu endianness, most significant bit to 1
+    { AV_PIX_FMT_GRAY8,     BC_RGB888,    0 },
+    { AV_PIX_FMT_MONOWHITE, BC_RGB888,    0 }, ///&lt; 0 is white
+    { AV_PIX_FMT_MONOBLACK, BC_RGB888,    0 }, ///&lt; 0 is black
+    { AV_PIX_FMT_PAL8,      BC_RGB888,    0 }, ///&lt; 8 bit with RGBA palette
+    { AV_PIX_FMT_YUV410P,   BC_YUV420P,   0 }, ///&lt; Planar YUV 4:1:0 (1 Cr &amp; Cb sample per 4x4 Y samples)
   };
 
 static const struct
@@ -343,16 +343,16 @@ static int lqt_tenbit_dnxhd_supported(AV
   if (!codec-&gt;pix_fmts)
     return 0;
 
-  for (i = 0; codec-&gt;pix_fmts[i] != PIX_FMT_NONE; ++i)
+  for (i = 0; codec-&gt;pix_fmts[i] != AV_PIX_FMT_NONE; ++i)
     {
-    if (codec-&gt;pix_fmts[i] == PIX_FMT_YUV422P10_OR_DUMMY)
+    if (codec-&gt;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-&gt;decoder-&gt;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-&gt;avctx-&gt;pix_fmt == PIX_FMT_YUV422P || codec-&gt;avctx-&gt;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-&gt;avctx-&gt;pix_fmt == AV_PIX_FMT_YUV422P || codec-&gt;avctx-&gt;pix_fmt == AV_PIX_FMT_YUV422P10_OR_DUMMY)
       {
-      int p10 = (codec-&gt;avctx-&gt;pix_fmt == PIX_FMT_YUV422P10_OR_DUMMY);
+      int p10 = (codec-&gt;avctx-&gt;pix_fmt == AV_PIX_FMT_YUV422P10_OR_DUMMY);
       *exact = 1;
       if (lqt_ffmpeg_get_avid_yuv_range(vtrack-&gt;track) == AVID_FULL_YUV_RANGE)
         {
         vtrack-&gt;stream_cmodel = p10 ? BC_YUVJ422P10 : BC_YUVJ422P;
-        codec-&gt;reinterpret_pix_fmt = p10 ? PIX_FMT_YUV422P10_OR_DUMMY : PIX_FMT_YUVJ422P;
-        // Note: reinterpret_pix_fmt should really be PIX_FMT_YUVJ422P10, except
+        codec-&gt;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&#039;s not a problem
         // in this case, as reinterpret_pix_fmt is only used when *exact == 0.
         }
       else
         {
         vtrack-&gt;stream_cmodel = p10 ? BC_YUV422P10 : BC_YUV422P;
-        codec-&gt;reinterpret_pix_fmt = p10 ? PIX_FMT_YUV422P10_OR_DUMMY : PIX_FMT_YUV422P;
+        codec-&gt;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-&gt;encoder-&gt;id == AV_CODEC_ID_DNXHD)
     {
-    /* FFMpeg&#039;s DNxHD encoder only supports PIX_FMT_YUV422P and PIX_FMT_YUV422P10
-       and doesn&#039;t know anything about PIX_FMT_YUVJ422P and PIX_FMT_YUVJ422P10
+    /* FFMpeg&#039;s DNxHD encoder only supports AV_PIX_FMT_YUV422P and AV_PIX_FMT_YUV422P10
+       and doesn&#039;t know anything about AV_PIX_FMT_YUVJ422P and AV_PIX_FMT_YUVJ422P10
        (in fact, the latter doesn&#039;t even exist) */
-    codec-&gt;avctx-&gt;pix_fmt = PIX_FMT_YUV422P;
+    codec-&gt;avctx-&gt;pix_fmt = AV_PIX_FMT_YUV422P;
     if (vtrack-&gt;stream_cmodel == BC_YUV422P10 || vtrack-&gt;stream_cmodel == BC_YUVJ422P10)
       {
       if (lqt_tenbit_dnxhd_supported(codec-&gt;encoder))
-        codec-&gt;avctx-&gt;pix_fmt = PIX_FMT_YUV422P10_OR_DUMMY;
+        codec-&gt;avctx-&gt;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 &lt;&lt; 24) | (R &lt;&lt; 16) | (G &lt;&lt; 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 &lt; (50&lt;&lt;16)
-  if((in_format == PIX_FMT_RGBA32) &amp;&amp; (out_format == BC_RGBA8888))
+  if((in_format == AV_PIX_FMT_RGBA32) &amp;&amp; (out_format == BC_RGBA8888))
 #else
-    if((in_format == PIX_FMT_RGB32) &amp;&amp; (out_format == BC_RGBA8888))
+    if((in_format == AV_PIX_FMT_RGB32) &amp;&amp; (out_format == BC_RGBA8888))
 #endif
       {
       convert_image_decode_rgba(in_frame, out_frame, width, height, codec-&gt;y_offset);
@@ -829,7 +829,7 @@ static int lqt_ffmpeg_decode_video(quick
     if(avcodec_open2(codec-&gt;avctx, codec-&gt;decoder, NULL) != 0)
       return -1;
 #endif
-    codec-&gt;frame = avcodec_alloc_frame();
+    codec-&gt;frame = av_frame_alloc();
     vtrack-&gt;stream_cmodel = LQT_COLORMODEL_NONE;
     codec-&gt;initialized = 1;
     }
@@ -929,10 +929,10 @@ static int lqt_ffmpeg_decode_video(quick
 #ifdef HAVE_LIBSWSCALE
 
 #if LIBAVUTIL_VERSION_INT &lt; (50&lt;&lt;16)
-      if(!((codec-&gt;avctx-&gt;pix_fmt == PIX_FMT_RGBA32) &amp;&amp;
+      if(!((codec-&gt;avctx-&gt;pix_fmt == AV_PIX_FMT_RGBA32) &amp;&amp;
            (vtrack-&gt;stream_cmodel == BC_RGBA8888)))
 #else
-        if(!((codec-&gt;avctx-&gt;pix_fmt == PIX_FMT_RGB32) &amp;&amp;
+        if(!((codec-&gt;avctx-&gt;pix_fmt == AV_PIX_FMT_RGB32) &amp;&amp;
              (vtrack-&gt;stream_cmodel == BC_RGBA8888)))
 #endif
           {
@@ -1318,7 +1318,7 @@ static int lqt_ffmpeg_encode_video(quick
         
   if(!codec-&gt;initialized)
     {
-    codec-&gt;frame = avcodec_alloc_frame();
+    codec-&gt;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-&gt;stream_cmodel == BC_RGBA8888)
         {
         /* Libquicktime doesn&#039;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-&gt;avctx-&gt;pix_fmt = PIX_FMT_ARGB;
+        codec-&gt;avctx-&gt;pix_fmt = AV_PIX_FMT_ARGB;
         vtrack-&gt;track-&gt;mdia.minf.stbl.stsd.table[0].depth = 32;
         }
       }
@@ -1467,7 +1467,7 @@ static int lqt_ffmpeg_encode_video(quick
     }
   //        codec-&gt;lqt_colormodel = ffmepg_2_lqt(codec-&gt;com.ffcodec_enc);
 
-  if(codec-&gt;y_offset != 0 || codec-&gt;avctx-&gt;pix_fmt == PIX_FMT_ARGB)
+  if(codec-&gt;y_offset != 0 || codec-&gt;avctx-&gt;pix_fmt == AV_PIX_FMT_ARGB)
     {
     if(!codec-&gt;tmp_rows)
       {
@@ -1492,7 +1492,7 @@ static int lqt_ffmpeg_encode_video(quick
                         vtrack-&gt;stream_cmodel,
                         0, 0, 0, codec-&gt;y_offset);
       }
-    else if(codec-&gt;avctx-&gt;pix_fmt == PIX_FMT_ARGB)
+    else if(codec-&gt;avctx-&gt;pix_fmt == AV_PIX_FMT_ARGB)
       {
       convert_rgba_to_argb(row_pointers[0], vtrack-&gt;stream_row_span,
                            codec-&gt;tmp_rows[0], codec-&gt;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-&gt;chunk_buffer;
     pkt.size = codec-&gt;chunk_buffer_alloc;
 
-    avcodec_get_frame_defaults(&amp;f);
+    av_frame_unref(&amp;f);
     f.nb_samples = codec-&gt;avctx-&gt;frame_size;
     
     avcodec_fill_audio_frame(&amp;f, channels, codec-&gt;avctx-&gt;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 &gt;= 3346688
     {
-      .id = CODEC_ID_TARGA,
+      .id = AV_CODEC_ID_TARGA,
       .index = -1,
       .encoder = NULL,
       .decoder = NULL,
@@ -590,7 +590,7 @@
 #endif
 #if LIBAVCODEC_BUILD &gt;= 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 &gt;= 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&#039;t work as long as audio chunks are not split into VBR &quot;Samples&quot; */
     {
-      .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-&gt;reinterpret_pix_fmt = codec-&gt;avctx-&gt;pix_fmt;
 
   /* First we try codec-specific colormodel matching. */
-  if(codec-&gt;decoder-&gt;id == CODEC_ID_DNXHD)
+  if(codec-&gt;decoder-&gt;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-&gt;codec-&gt;priv;
   codec-&gt;avctx-&gt;pix_fmt = lqt_ffmpeg_get_ffmpeg_colormodel(vtrack-&gt;stream_cmodel);
 
-  if (codec-&gt;encoder-&gt;id == CODEC_ID_DNXHD)
+  if (codec-&gt;encoder-&gt;id == AV_CODEC_ID_DNXHD)
     {
     /* FFMpeg&#039;s DNxHD encoder only supports AV_PIX_FMT_YUV422P and AV_PIX_FMT_YUV422P10
        and doesn&#039;t know anything about AV_PIX_FMT_YUVJ422P and AV_PIX_FMT_YUVJ422P10
@@ -728,13 +728,13 @@
 
     /* Set extradata: It&#039;s done differently for each codec */
 
-    if(codec-&gt;decoder-&gt;id == CODEC_ID_SVQ3)
+    if(codec-&gt;decoder-&gt;id == AV_CODEC_ID_SVQ3)
       {
       extradata       = trak-&gt;mdia.minf.stbl.stsd.table[0].table_raw + 4;
       extradata_size  = trak-&gt;mdia.minf.stbl.stsd.table[0].table_raw_size - 4;
       
       }
-    else if(codec-&gt;decoder-&gt;id == CODEC_ID_H264)
+    else if(codec-&gt;decoder-&gt;id == AV_CODEC_ID_H264)
       {
       user_atom = quicktime_stsd_get_user_atom(trak, &quot;avcC&quot;, &amp;user_atom_len);
 
@@ -753,7 +753,7 @@
         }
       
       }
-    else if(codec-&gt;decoder-&gt;id == CODEC_ID_MPEG4)
+    else if(codec-&gt;decoder-&gt;id == AV_CODEC_ID_MPEG4)
       {
       if(trak-&gt;mdia.minf.stbl.stsd.table[0].has_esds)
         {
@@ -947,15 +947,15 @@
           }
 #endif
       }
-    if(codec-&gt;decoder-&gt;id == CODEC_ID_DVVIDEO)
+    if(codec-&gt;decoder-&gt;id == AV_CODEC_ID_DVVIDEO)
       {
       if(vtrack-&gt;stream_cmodel == BC_YUV420P)
         vtrack-&gt;chroma_placement = LQT_CHROMA_PLACEMENT_DVPAL;
       vtrack-&gt;interlace_mode = LQT_INTERLACE_BOTTOM_FIRST;
       vtrack-&gt;ci.id = LQT_COMPRESSION_DV;
       }
-    else if((codec-&gt;decoder-&gt;id == CODEC_ID_MPEG4) ||
-            (codec-&gt;decoder-&gt;id == CODEC_ID_H264))
+    else if((codec-&gt;decoder-&gt;id == AV_CODEC_ID_MPEG4) ||
+            (codec-&gt;decoder-&gt;id == AV_CODEC_ID_H264))
       {
       if(vtrack-&gt;stream_cmodel == BC_YUV420P)
         vtrack-&gt;chroma_placement = LQT_CHROMA_PLACEMENT_MPEG2;
@@ -1299,13 +1299,13 @@
     {
     if(vtrack-&gt;stream_cmodel == BC_YUV420P)
       {
-      if(codec-&gt;encoder-&gt;id == CODEC_ID_MPEG4)
+      if(codec-&gt;encoder-&gt;id == AV_CODEC_ID_MPEG4)
         {
         vtrack-&gt;chroma_placement = LQT_CHROMA_PLACEMENT_MPEG2;
         /* enable interlaced encoding */
         vtrack-&gt;interlace_mode = LQT_INTERLACE_NONE;
         }
-      else if(codec-&gt;encoder-&gt;id == CODEC_ID_DVVIDEO)
+      else if(codec-&gt;encoder-&gt;id == AV_CODEC_ID_DVVIDEO)
         {
         vtrack-&gt;chroma_placement = LQT_CHROMA_PLACEMENT_DVPAL;
         }
@@ -1340,7 +1340,7 @@
     codec-&gt;avctx-&gt;sample_aspect_ratio.num = pixel_width;
     codec-&gt;avctx-&gt;sample_aspect_ratio.den = pixel_height;
     /* Use global headers for mp4v */
-    if(codec-&gt;encoder-&gt;id == CODEC_ID_MPEG4)
+    if(codec-&gt;encoder-&gt;id == AV_CODEC_ID_MPEG4)
       {
       if(!(file-&gt;file_type &amp; (LQT_FILE_AVI|LQT_FILE_AVI_ODML)))
         {
@@ -1364,12 +1364,12 @@
         }
 #endif
       }
-    else if((codec-&gt;encoder-&gt;id == CODEC_ID_MSMPEG4V3) &amp;&amp; (trak-&gt;strl) &amp;&amp;
+    else if((codec-&gt;encoder-&gt;id == AV_CODEC_ID_MSMPEG4V3) &amp;&amp; (trak-&gt;strl) &amp;&amp;
             !strncmp(trak-&gt;strl-&gt;strf.bh.biCompression, &quot;DIV3&quot;, 4))
       {
       strncpy(trak-&gt;strl-&gt;strh.fccHandler, &quot;div3&quot;, 4);
       }
-    else if((codec-&gt;encoder-&gt;id == CODEC_ID_H263) &amp;&amp;
+    else if((codec-&gt;encoder-&gt;id == AV_CODEC_ID_H263) &amp;&amp;
             (file-&gt;file_type &amp; (LQT_FILE_MP4|LQT_FILE_3GP)))
       {
       uint8_t d263_data[] =
@@ -1383,7 +1383,7 @@
       strncpy(trak-&gt;mdia.minf.stbl.stsd.table[0].format,
               &quot;s263&quot;, 4);
       }
-    else if(codec-&gt;encoder-&gt;id == CODEC_ID_FFVHUFF)
+    else if(codec-&gt;encoder-&gt;id == AV_CODEC_ID_FFVHUFF)
       {
       if(!(file-&gt;file_type &amp; (LQT_FILE_AVI|LQT_FILE_AVI_ODML)))
         {
@@ -1391,7 +1391,7 @@
         codec-&gt;write_global_header = 1;
         }
       }
-    else if(codec-&gt;encoder-&gt;id == CODEC_ID_QTRLE)
+    else if(codec-&gt;encoder-&gt;id == AV_CODEC_ID_QTRLE)
       {
       if(vtrack-&gt;stream_cmodel == BC_RGBA8888)
         {
@@ -1402,11 +1402,11 @@
         vtrack-&gt;track-&gt;mdia.minf.stbl.stsd.table[0].depth = 32;
         }
       }
-    else if(codec-&gt;encoder-&gt;id == CODEC_ID_DVVIDEO)
+    else if(codec-&gt;encoder-&gt;id == AV_CODEC_ID_DVVIDEO)
       {
       set_dv_fourcc(width, height, vtrack-&gt;stream_cmodel, trak);
       }
-    else if(codec-&gt;encoder-&gt;id == CODEC_ID_DNXHD)
+    else if(codec-&gt;encoder-&gt;id == AV_CODEC_ID_DNXHD)
       {
       if(vtrack-&gt;interlace_mode != LQT_INTERLACE_NONE)
         {
@@ -1558,12 +1558,12 @@
   
 #endif
   
-  if(!was_initialized &amp;&amp; codec-&gt;encoder-&gt;id == CODEC_ID_DNXHD)
+  if(!was_initialized &amp;&amp; codec-&gt;encoder-&gt;id == AV_CODEC_ID_DNXHD)
     setup_avid_atoms(file, vtrack, codec-&gt;buffer, bytes_encoded);
   
   if(bytes_encoded)
     {
-    if (pts == AV_NOPTS_VALUE || (codec-&gt;encoder-&gt;id == CODEC_ID_DNXHD &amp;&amp; pts == 0))
+    if (pts == AV_NOPTS_VALUE || (codec-&gt;encoder-&gt;id == AV_CODEC_ID_DNXHD &amp;&amp; pts == 0))
       {
       /* Some codecs don&#039;t bother generating presentation timestamps.
          FFMpeg&#039;s DNxHD encoder doesn&#039;t even bother to set it to AV_NOPTS_VALUE. */
@@ -1590,13 +1590,13 @@
 
   if(codec-&gt;write_global_header &amp;&amp; !codec-&gt;global_header_written)
     {
-    if(codec-&gt;encoder-&gt;id == CODEC_ID_FFVHUFF)
+    if(codec-&gt;encoder-&gt;id == AV_CODEC_ID_FFVHUFF)
       {
       quicktime_user_atoms_add_atom(&amp;trak-&gt;mdia.minf.stbl.stsd.table[0].user_atoms,
                                     &quot;glbl&quot;,
                                     codec-&gt;avctx-&gt;extradata, codec-&gt;avctx-&gt;extradata_size );
       }
-    else if(codec-&gt;encoder-&gt;id == CODEC_ID_MPEG4)
+    else if(codec-&gt;encoder-&gt;id == AV_CODEC_ID_MPEG4)
       {
       int advanced = 0;
       if(codec-&gt;avctx-&gt;max_b_frames ||
@@ -1903,18 +1903,18 @@
     codec_base-&gt;encode_video = lqt_ffmpeg_encode_video;
     codec_base-&gt;set_pass = set_pass_ffmpeg;
 
-    if(encoder-&gt;id == CODEC_ID_MPEG4)
+    if(encoder-&gt;id == AV_CODEC_ID_MPEG4)
       {
       codec_base-&gt;writes_compressed = writes_compressed_mpeg4;
       codec_base-&gt;init_compressed   = init_compressed_mpeg4;
       codec_base-&gt;write_packet = write_packet_mpeg4;
       }
-    else if(encoder-&gt;id == CODEC_ID_MPEG2VIDEO)
+    else if(encoder-&gt;id == AV_CODEC_ID_MPEG2VIDEO)
       {
       codec_base-&gt;writes_compressed = writes_compressed_imx;
       codec_base-&gt;init_compressed   = init_compressed_imx;
       }
-    else if(encoder-&gt;id == CODEC_ID_DVVIDEO)
+    else if(encoder-&gt;id == AV_CODEC_ID_DVVIDEO)
       {
       codec_base-&gt;init_compressed = init_compressed_dv;
       }
@@ -1922,7 +1922,7 @@
     }
   if(decoder)
     {
-    if(decoder-&gt;id == CODEC_ID_H264)
+    if(decoder-&gt;id == AV_CODEC_ID_H264)
       codec_base-&gt;read_packet = read_packet_h264;
     codec_base-&gt;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-&gt;avctx-&gt;codec_id == CODEC_ID_MP3) &amp;&amp;
+    if((codec-&gt;avctx-&gt;codec_id == AV_CODEC_ID_MP3) &amp;&amp;
        (codec-&gt;bytes_in_chunk_buffer &gt;= 4))
       {
       if(!mpa_decode_header(&amp;mph, codec-&gt;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-&gt;avctx-&gt;codec_id == CODEC_ID_MP3)
+    if(codec-&gt;avctx-&gt;codec_id == AV_CODEC_ID_MP3)
       {
       if(codec-&gt;bytes_in_chunk_buffer &lt; 4)
         {
@@ -806,7 +806,7 @@
     
     if(bytes_decoded &lt; 0)
       {
-      if(codec-&gt;avctx-&gt;codec_id == CODEC_ID_MP3)
+      if(codec-&gt;avctx-&gt;codec_id == AV_CODEC_ID_MP3)
         {
         /* For mp3, bytes_decoded &lt; 0 means, that the frame should be muted */
         memset(&amp;codec-&gt;sample_buffer[track_map-&gt;channels * (codec-&gt;sample_buffer_end -
@@ -866,8 +866,8 @@
   quicktime_audio_map_t *track_map = &amp;file-&gt;atracks[track];
   quicktime_ffmpeg_audio_codec_t *codec = track_map-&gt;codec-&gt;priv;
 
-  if((codec-&gt;decoder-&gt;id == CODEC_ID_MP2) ||
-     (codec-&gt;decoder-&gt;id == CODEC_ID_MP3))
+  if((codec-&gt;decoder-&gt;id == AV_CODEC_ID_MP2) ||
+     (codec-&gt;decoder-&gt;id == AV_CODEC_ID_MP3))
     {
     mpa_header h;
     uint32_t header;
@@ -909,7 +909,7 @@
     else
       track_map-&gt;ci.bitrate = h.bitrate;
     }
-  else if(codec-&gt;decoder-&gt;id == CODEC_ID_AC3)
+  else if(codec-&gt;decoder-&gt;id == AV_CODEC_ID_AC3)
     {
     a52_header h;
     uint8_t * ptr;
@@ -986,7 +986,7 @@
 #endif
     /* Some codecs need extra stuff */
 
-    if(codec-&gt;decoder-&gt;id == CODEC_ID_ALAC)
+    if(codec-&gt;decoder-&gt;id == AV_CODEC_ID_ALAC)
       {
       header = quicktime_wave_get_user_atom(track_map-&gt;track, &quot;alac&quot;, &amp;header_len);
       if(header)
@@ -995,7 +995,7 @@
         codec-&gt;avctx-&gt;extradata_size = header_len;
         }
       }
-    if(codec-&gt;decoder-&gt;id == CODEC_ID_QDM2)
+    if(codec-&gt;decoder-&gt;id == AV_CODEC_ID_QDM2)
       {
       header = quicktime_wave_get_user_atom(track_map-&gt;track, &quot;QDCA&quot;, &amp;header_len);
       if(header)
@@ -1495,9 +1495,9 @@
     codec_base-&gt;decode_audio = lqt_ffmpeg_decode_audio;
   codec_base-&gt;set_parameter = set_parameter;
 
-  if((decoder-&gt;id == CODEC_ID_MP3) || (decoder-&gt;id == CODEC_ID_MP2))
+  if((decoder-&gt;id == AV_CODEC_ID_MP3) || (decoder-&gt;id == AV_CODEC_ID_MP2))
     codec_base-&gt;read_packet = read_packet_mpa;
-  else if(decoder-&gt;id == CODEC_ID_AC3)
+  else if(decoder-&gt;id == AV_CODEC_ID_AC3)
     {
     codec_base-&gt;write_packet = write_packet_ac3;
     codec_base-&gt;read_packet = read_packet_ac3;</code></pre></div><p><strong>ffmpeg2.0.patch</strong></p><div class="codebox"><pre><code>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 =      &quot;frame_types&quot;, \
@@ -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&quot;) \
     .val_max =     { .val_int = 1 }, \
   }
 
+#if (LIBAVCODEC_VERSION_MAJOR &lt; 55)
 #define PARAM_LUMA_ELIM_THRESHOLD \
   { \
     .name =        &quot;ff_luma_elim_threshold&quot;, \
@@ -202,6 +203,7 @@ recommendation&quot;) \
 chrominamce. Negative values also consider dc \
 coefficient. 7 is JVT recommendation&quot;) \
   }
+#endif
 
 #define PARAM_STRICT_STANDARD_COMPLIANCE \
   { \
@@ -739,6 +741,7 @@ with max and/or min bitrate, this must be specified.&quot;) \
 
 /* Does nothing */
 /** Frame types */
+#if (LIBAVCODEC_VERSION_MAJOR &lt; 55)
 #define PARAM_INTER_THRESHOLD \
   { \
     .name =        &quot;ff_inter_threshold&quot;, \
@@ -759,6 +762,7 @@ with max and/or min bitrate, this must be specified.&quot;) \
     .help_string = TRS(&quot;Choose quantization such that noise will be masked by &quot; \
                        &quot;similar-frequency content in the image&quot;)        \
   }
+#endif
 
 /** Motion estimation */
 #define PARAM_ME_THRESHOLD \</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (throgh)]]></author>
			<pubDate>Thu, 16 Jul 2020 21:57:19 +0000</pubDate>
			<guid>https://forums.hyperbola.info/viewtopic.php?pid=2137#p2137</guid>
		</item>
		<item>
			<title><![CDATA[Re: [multilib] Collection of packages as addition]]></title>
			<link>https://forums.hyperbola.info/viewtopic.php?pid=2136#p2136</link>
			<description><![CDATA[<p><strong>lib32-ffmpeg</strong></p><div class="codebox"><pre><code># Maintainer: Alexandre Demers &lt;alexandre.f.demers@gmail.com&gt;
# Contributor: Johannes Dewender  arch at JonnyJD dot net
# Contributor: Ionut Biru &lt;ibiru@archlinux.org&gt;
# Contributor: Tom Newsom &lt;Jeepster@gmx.co.uk&gt;
# Contributor: Paul Mattal &lt;paul@archlinux.org&gt;

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

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

  export PKG_CONFIG_PATH=&quot;/usr/lib32/pkgconfig&quot;

  ./configure \
    --prefix=&#039;/usr&#039; \
    --libdir=/usr/lib32 \
    --shlibdir=/usr/lib32 \
    --cc=&quot;gcc -m32&quot; \
    --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=&quot;${pkgdir}&quot; install
  rm -rf &quot;$pkgdir&quot;/usr/{include,share,bin}
}

# vim:set ts=2 sw=2 et:</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (throgh)]]></author>
			<pubDate>Thu, 16 Jul 2020 21:55:13 +0000</pubDate>
			<guid>https://forums.hyperbola.info/viewtopic.php?pid=2136#p2136</guid>
		</item>
		<item>
			<title><![CDATA[Re: [multilib] Collection of packages as addition]]></title>
			<link>https://forums.hyperbola.info/viewtopic.php?pid=2135#p2135</link>
			<description><![CDATA[<p><strong>lib32-libass</strong></p><div class="codebox"><pre><code># Contributor: Johannes Dewender  arch at JonnyJD dot net
# Contributor: jospehgbr &lt;rafael.f.f1@gmail.com&gt;

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

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

package() {
  cd &quot;$srcdir/${_pkgbase}-${pkgver}&quot;
  make DESTDIR=&quot;${pkgdir}&quot; install
  rm -rf &quot;${pkgdir}&quot;/usr/include
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (throgh)]]></author>
			<pubDate>Thu, 16 Jul 2020 21:54:13 +0000</pubDate>
			<guid>https://forums.hyperbola.info/viewtopic.php?pid=2135#p2135</guid>
		</item>
		<item>
			<title><![CDATA[Re: [multilib] Collection of packages as addition]]></title>
			<link>https://forums.hyperbola.info/viewtopic.php?pid=2134#p2134</link>
			<description><![CDATA[<p><strong>lib32-xvidcore</strong></p><div class="codebox"><pre><code># Contributor: tobias &lt;tobias@archlinux.org&gt;
# Contributor: Sarah Hay &lt;sarah@archlinux.org&gt;
# Contributor: JD Steffen &lt;jd@steffennet.org&gt;
# Maintainer: GordonGR &lt;ntheo1979@gmail.com&gt;

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

build() {

export CC=&quot;gcc -m32&quot;
export CXX=&quot;g++ -m32&quot;
export PKG_CONFIG_PATH=&quot;/usr/lib32/pkgconfig&quot;
  
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 &quot;${pkgdir}&quot;/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
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (throgh)]]></author>
			<pubDate>Thu, 16 Jul 2020 21:51:00 +0000</pubDate>
			<guid>https://forums.hyperbola.info/viewtopic.php?pid=2134#p2134</guid>
		</item>
		<item>
			<title><![CDATA[Re: [multilib] Collection of packages as addition]]></title>
			<link>https://forums.hyperbola.info/viewtopic.php?pid=2133#p2133</link>
			<description><![CDATA[<p><strong>lib32-fribidi</strong></p><div class="codebox"><pre><code># Maintainer: Jan Alexander Steffens (heftig) &lt;jan.steffens@gmail.com&gt;
# Contributor: Giovanni Scafora &lt;giovanni@archlinux.org&gt;
# Contributor: Nezmer &lt;Nezmer@gmail.com&gt;

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

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

build() {
  export CC=&#039;gcc -m32&#039;
  export CXX=&#039;g++ -m32&#039;
  export PKG_CONFIG_PATH=&#039;/usr/lib32/pkgconfig&#039;

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

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

# vim:set sw=2 et:</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (throgh)]]></author>
			<pubDate>Thu, 16 Jul 2020 21:49:56 +0000</pubDate>
			<guid>https://forums.hyperbola.info/viewtopic.php?pid=2133#p2133</guid>
		</item>
		<item>
			<title><![CDATA[Re: [multilib] Collection of packages as addition]]></title>
			<link>https://forums.hyperbola.info/viewtopic.php?pid=2132#p2132</link>
			<description><![CDATA[<p><strong>lib32-openjpeg2</strong></p><div class="codebox"><pre><code># Maintainer: Alexandre Demers &lt;alexandre.f.demers@gmail.com&gt;

_setPrefix=&quot;/usr&quot;
_setLibdir=&quot;lib32&quot;
_setFullLibdir=&quot;${_setPrefix}/${_setLibdir}&quot;
_pkgbase=openjpeg2

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

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

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

package() {
  cd &quot;${srcdir}/build&quot;
  make DESTDIR=&quot;${pkgdir}&quot; install

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

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

  mkdir -p &quot;${pkgdir}/${_setPrefix}&quot;/share/licenses/${pkgname}
  ln -s ../openjpeg-2.1/LICENSE &quot;${pkgdir}/${_setPrefix}&quot;/share/licenses/${pkgname}/LICENSE
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (throgh)]]></author>
			<pubDate>Thu, 16 Jul 2020 21:48:43 +0000</pubDate>
			<guid>https://forums.hyperbola.info/viewtopic.php?pid=2132#p2132</guid>
		</item>
		<item>
			<title><![CDATA[Re: [multilib] Collection of packages as addition]]></title>
			<link>https://forums.hyperbola.info/viewtopic.php?pid=2131#p2131</link>
			<description><![CDATA[<p><strong>lib32-opencore-amr</strong></p><div class="codebox"><pre><code># Contributor: Ionut Biru &lt;ionut@archlinux.ro&gt;
# Contributor: WAntilles &lt;wantilles@adslgr.com&gt;
# Maintainer: GordonGR &lt;gordongr@freemail.gr&gt;

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

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

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

package() {
cd &quot;$srcdir/$_pkgname-$pkgver&quot;
make DESTDIR=&quot;$pkgdir&quot; install
cd &quot;$pkgdir/usr&quot;
rm -rf include/
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (throgh)]]></author>
			<pubDate>Thu, 16 Jul 2020 21:47:13 +0000</pubDate>
			<guid>https://forums.hyperbola.info/viewtopic.php?pid=2131#p2131</guid>
		</item>
		<item>
			<title><![CDATA[Re: [multilib] Collection of packages as addition]]></title>
			<link>https://forums.hyperbola.info/viewtopic.php?pid=2130#p2130</link>
			<description><![CDATA[<p><strong>lib32-gsm</strong></p><div class="codebox"><pre><code># Maintainer: Ondřej Hošek &lt;ondra.hosek@gmail.com&gt;
# Contributor: Jan de Groot &lt;jgc@archlinux.org&gt;
# Contributor: Maxime de Roucy &lt;maxime.deroucy@gmail.com&gt;
# Contributor: Darwin Bautista &lt;djclue917@gmail.com&gt;

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

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

  patch -p0 -i &quot;${srcdir}/gsm-shared.patch&quot;
}

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

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

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

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

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

  # clean directories provided by 64-bit package
  rm -Rf &quot;${pkgdir}&quot;/usr/{bin,include,lib,share}
}</code></pre></div><p><strong>gsm-shared.patch</strong></p><div class="codebox"><pre><code>--- 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)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (throgh)]]></author>
			<pubDate>Thu, 16 Jul 2020 21:46:07 +0000</pubDate>
			<guid>https://forums.hyperbola.info/viewtopic.php?pid=2130#p2130</guid>
		</item>
		<item>
			<title><![CDATA[Re: [multilib] Collection of packages as addition]]></title>
			<link>https://forums.hyperbola.info/viewtopic.php?pid=2129#p2129</link>
			<description><![CDATA[<p><strong>lib32-libbluray</strong></p><div class="codebox"><pre><code># Maintainer (Arch): Maxime Gauduin &lt;alucryd@archlinux.org&gt;
# Contributor (Arch): Ionut Biru &lt;ibiru@archlinux.org&gt;
# Contributor (Arch): Bartłomiej Piotrowski &lt;bpiotrowski@archlinux.org&gt;
# Contributor (Arch): Andrew Cook &lt;ariscop@gmail.com&gt;
# Maintainer: André Silva &lt;emulatorman@hyperbola.info&gt;

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

prepare() {
  cd libbluray-${pkgver}

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

    mv &quot;$srcdir&quot;/debian .

    # Doesn&#039;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=&#039;gcc -m32&#039;
  export PKG_CONFIG_PATH=&#039;/usr/lib32/pkgconfig&#039;
  cd libbluray-${pkgver}

  ./configure \
    --libdir=/usr/lib32 \
    --prefix=&#039;/usr&#039; \
    --disable-bdjava \
    --disable-bdjava-jar
  make
}

package() {
  cd libbluray-${pkgver}

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

# vim: ts=2 sw=2 et:</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (throgh)]]></author>
			<pubDate>Thu, 16 Jul 2020 21:45:00 +0000</pubDate>
			<guid>https://forums.hyperbola.info/viewtopic.php?pid=2129#p2129</guid>
		</item>
		<item>
			<title><![CDATA[Re: [multilib] Collection of packages as addition]]></title>
			<link>https://forums.hyperbola.info/viewtopic.php?pid=2128#p2128</link>
			<description><![CDATA[<p><strong>lib32-x264</strong></p><div class="codebox"><pre><code># $Id$
# Maintainer: Maxime Gauduin &lt;alucryd@archlinux.org&gt;
# Contributor: Ionut Biru &lt;ibiru@archlinux.org&gt;
# Contributor: Bartłomiej Piotrowski &lt;bpiotrowski@archlinux.org&gt;
# Contributor: damir &lt;damir@archlinux.org&gt;
# Contributor: Paul Mattal &lt;paul@archlinux.org&gt;

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

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

build() {
  cd ${pkgbase}

  export CC=&quot;gcc -m32&quot;
  export CXX=&quot;g++ -m32&quot;
  export PKG_CONFIG_PATH=&quot;/usr/lib32/pkgconfig&quot;

  ./configure \
        --prefix=&#039;/usr&#039; \
        --libdir=/usr/lib32 \
        --host=i686-linux-gnu \
        --enable-shared \
        --enable-pic
  make
}


package() {
    make -C ${pkgbase} DESTDIR=&quot;${pkgdir}&quot; install-lib-shared
    cd &quot;$pkgdir/usr&quot;
    rm -rf {bin,include}/
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (throgh)]]></author>
			<pubDate>Thu, 16 Jul 2020 21:43:27 +0000</pubDate>
			<guid>https://forums.hyperbola.info/viewtopic.php?pid=2128#p2128</guid>
		</item>
		<item>
			<title><![CDATA[Re: [multilib] Collection of packages as addition]]></title>
			<link>https://forums.hyperbola.info/viewtopic.php?pid=2127#p2127</link>
			<description><![CDATA[<p><strong>lib32-lame</strong></p><div class="codebox"><pre><code># Contributor: Johannes Dewender  arch at JonnyJD dot net
# Contributor: josephgbr &lt;rafael.f.f1@gmail.com&gt;

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

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

package() {
  cd &quot;${srcdir}/${_pkgbase}-${pkgver}&quot;
  make DESTDIR=&quot;${pkgdir}&quot; install
  rm -rf &quot;${pkgdir}/usr&quot;/{bin,include,share}
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (throgh)]]></author>
			<pubDate>Thu, 16 Jul 2020 21:42:12 +0000</pubDate>
			<guid>https://forums.hyperbola.info/viewtopic.php?pid=2127#p2127</guid>
		</item>
		<item>
			<title><![CDATA[Re: [multilib] Collection of packages as addition]]></title>
			<link>https://forums.hyperbola.info/viewtopic.php?pid=2126#p2126</link>
			<description><![CDATA[<p><strong>lib32-faad2</strong></p><div class="codebox"><pre><code># $Id$
# Maintainer: Eric Bélanger &lt;eric@archlinux.org&gt;

_basename=faad2
pkgname=lib32-faad2
pkgver=2.7
pkgrel=4
pkgdesc=&quot;ISO AAC audio decoder (32 bit)&quot;
arch=(&#039;i686&#039; &#039;x86_64&#039;)
url=&quot;http://www.audiocoding.com/&quot;
license=(&#039;GPL&#039;)
depends=(&#039;lib32-glibc&#039; ${_basename})
options=(&#039;!makeflags&#039;)
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=(&#039;b0e80481d27ae9faf9e46c8c8dfb617a0adb91b5&#039;
          &#039;1cf28cfd32dbae6cc484b149fd6adfea33506544&#039;
          &#039;247658aa795cd6d44a153fae8c5cb62e427f3ecf&#039;
          &#039;4b548a08f7611a5f4f395c7c1d4cef5e37368af2&#039;)

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

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

  ./configure --prefix=/usr --libdir=/usr/lib32
  make CFLAGS=&quot;${CFLAGS} -fPIC&quot;
}

package() {
  cd ${_basename}-${pkgver}
  make DESTDIR=&quot;${pkgdir}&quot; install
  rm -rf &quot;${pkgdir}/usr&quot;/{bin,include,share}
}</code></pre></div><p><strong>faad2-2.7-man1_MANS.patch</strong></p><div class="codebox"><pre><code>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</code></pre></div><p><strong>faad2-2.7-libmp4ff-shared-lib.patch</strong></p><div class="codebox"><pre><code>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 \</code></pre></div><p><strong>faad2-2.7-libmp4ff-install-mp4ff_int_types_h.patch</strong></p><div class="codebox"><pre><code>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
 </code></pre></div>]]></description>
			<author><![CDATA[null@example.com (throgh)]]></author>
			<pubDate>Thu, 16 Jul 2020 21:41:03 +0000</pubDate>
			<guid>https://forums.hyperbola.info/viewtopic.php?pid=2126#p2126</guid>
		</item>
	</channel>
</rss>
