[Buildroot] [git commit branch/2018.02.x] twolame: fix static linking with libmagic

Peter Korsgaard peter at korsgaard.com
Sun Nov 25 21:08:38 UTC 2018


commit: https://git.buildroot.net/buildroot/commit/?id=09860913c9b3388b4b83549008b92e6d42d418ba
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/2018.02.x

libmagic (from file package) already provides the buffer_init function
so to avoid a build failure for applications wanting to statically link
with twolame and libmagic (for example sox), rename buffer_init into
bitbuffer_init (also rename buffer_deinit into bitbuffer_deinit and
buffer_sstell into bitbuffer_sstell for consistency)

Fixes:
 - http://autobuild.buildroot.org/results/b3fc62e7f372fe595966e84091c11ccdb4cfa77c

Signed-off-by: Fabrice Fontaine <fontaine.fabrice at gmail.com>
Signed-off-by: Peter Korsgaard <peter at korsgaard.com>
(cherry picked from commit 393b205de132658d2a7e68d8c9d45de6298813c7)
Signed-off-by: Peter Korsgaard <peter at korsgaard.com>
---
 .../0001-Fix-static-linking-with-libmagic.patch    | 228 +++++++++++++++++++++
 1 file changed, 228 insertions(+)

diff --git a/package/twolame/0001-Fix-static-linking-with-libmagic.patch b/package/twolame/0001-Fix-static-linking-with-libmagic.patch
new file mode 100644
index 0000000000..094d7e997e
--- /dev/null
+++ b/package/twolame/0001-Fix-static-linking-with-libmagic.patch
@@ -0,0 +1,228 @@
+From 484275de103b2214cb8ff3868a2562e2c61ce0e1 Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice at gmail.com>
+Date: Thu, 8 Nov 2018 20:57:08 +0100
+Subject: [PATCH] Fix static linking with libmagic
+
+libmagic (from file package) already provides the buffer_init function
+so to avoid a build failure for applications wanting to statically link
+with twolame and libmagic (for example sox), rename buffer_init into
+bitbuffer_init (also rename buffer_deinit into bitbuffer_deinit and
+buffer_sstell into bitbuffer_sstell for consistency)
+
+Fixes:
+ - http://autobuild.buildroot.org/results/b3fc62e7f372fe595966e84091c11ccdb4cfa77c
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice at gmail.com>
+[Upstream status: https://github.com/njh/twolame/pull/81]
+---
+ libtwolame/bitbuffer.c |  4 ++--
+ libtwolame/bitbuffer.h |  6 +++---
+ libtwolame/energy.c    |  2 +-
+ libtwolame/twolame.c   | 32 ++++++++++++++++----------------
+ 4 files changed, 22 insertions(+), 22 deletions(-)
+
+diff --git a/libtwolame/bitbuffer.c b/libtwolame/bitbuffer.c
+index 38a632b..5b2fc4b 100644
+--- a/libtwolame/bitbuffer.c
++++ b/libtwolame/bitbuffer.c
+@@ -33,7 +33,7 @@
+ 
+ 
+ /*create bit buffer*/
+-bit_stream *buffer_init(unsigned char *buffer, int buffer_size)
++bit_stream *bitbuffer_init(unsigned char *buffer, int buffer_size)
+ {
+     bit_stream *bs = (bit_stream *) TWOLAME_MALLOC(sizeof(bit_stream));
+ 
+@@ -49,7 +49,7 @@ bit_stream *buffer_init(unsigned char *buffer, int buffer_size)
+ }
+ 
+ /* Dellocate bit buffer */
+-void buffer_deinit(bit_stream ** bs)
++void bitbuffer_deinit(bit_stream ** bs)
+ {
+ 
+     if (bs == NULL || *bs == NULL)
+diff --git a/libtwolame/bitbuffer.h b/libtwolame/bitbuffer.h
+index 0201347..f377c8f 100644
+--- a/libtwolame/bitbuffer.h
++++ b/libtwolame/bitbuffer.h
+@@ -39,11 +39,11 @@ typedef struct bit_stream_struc {
+ } bit_stream;
+ 
+ 
+-bit_stream *buffer_init(unsigned char *buffer, int buffer_size);
+-void buffer_deinit(bit_stream ** bs);
++bit_stream *bitbuffer_init(unsigned char *buffer, int buffer_size);
++void bitbuffer_deinit(bit_stream ** bs);
+ 
+ /*return the current bit stream length (in bits)*/
+-#define buffer_sstell(bs) (bs->totbit)
++#define bitbuffer_sstell(bs) (bs->totbit)
+ 
+ #endif
+ 
+diff --git a/libtwolame/energy.c b/libtwolame/energy.c
+index 219bd2c..312d8ae 100644
+--- a/libtwolame/energy.c
++++ b/libtwolame/energy.c
+@@ -73,7 +73,7 @@ void do_energy_levels(twolame_options * glopts, bit_stream * bs)
+     unsigned char rhibyte, rlobyte, lhibyte, llobyte;
+ 
+     // Get the position (in butes) of the end of the mpeg audio frame
+-    int frameEnd = buffer_sstell(bs) / 8;
++    int frameEnd = bitbuffer_sstell(bs) / 8;
+ 
+ 
+     // find the maximum in the left and right channels
+diff --git a/libtwolame/twolame.c b/libtwolame/twolame.c
+index fa4bcc0..d3b8450 100644
+--- a/libtwolame/twolame.c
++++ b/libtwolame/twolame.c
+@@ -442,7 +442,7 @@ static int encode_frame(twolame_options * glopts, bit_stream * bs)
+     glopts->num_crc_bits = 0;
+ 
+     // Store the number of bits initially in the bit buffer
+-    initial_bits = buffer_sstell(bs);
++    initial_bits = bitbuffer_sstell(bs);
+ 
+     adb = available_bits(glopts);
+ 
+@@ -580,7 +580,7 @@ static int encode_frame(twolame_options * glopts, bit_stream * bs)
+ 
+ 
+     // Calulate the number of bits in this frame
+-    frameBits = buffer_sstell(bs) - initial_bits;
++    frameBits = bitbuffer_sstell(bs) - initial_bits;
+     if (frameBits % 8) {        /* a program failure */
+         fprintf(stderr, "Sent %ld bits = %ld slots plus %ld\n", frameBits, frameBits / 8,
+                 frameBits % 8);
+@@ -630,7 +630,7 @@ int twolame_encode_buffer(twolame_options * glopts,
+ 
+     // now would be a great time to validate the size of the buffer.
+     // samples/1152 * sizeof(frame) < mp2buffer_size 
+-    mybs = buffer_init(mp2buffer, mp2buffer_size);
++    mybs = bitbuffer_init(mp2buffer, mp2buffer_size);
+ 
+ 
+     // Use up all the samples in in_buffer
+@@ -658,7 +658,7 @@ int twolame_encode_buffer(twolame_options * glopts,
+         if (glopts->samples_in_buffer >= TWOLAME_SAMPLES_PER_FRAME) {
+             int bytes = encode_frame(glopts, mybs);
+             if (bytes <= 0) {
+-                buffer_deinit(&mybs);
++                bitbuffer_deinit(&mybs);
+                 return bytes;
+             }
+             mp2_size += bytes;
+@@ -667,7 +667,7 @@ int twolame_encode_buffer(twolame_options * glopts,
+     }
+ 
+     // free up the bit stream buffer structure
+-    buffer_deinit(&mybs);
++    bitbuffer_deinit(&mybs);
+ 
+     return (mp2_size);
+ }
+@@ -687,7 +687,7 @@ int twolame_encode_buffer_interleaved(twolame_options * glopts,
+ 
+     // now would be a great time to validate the size of the buffer.
+     // samples/1152 * sizeof(frame) < mp2buffer_size 
+-    mybs = buffer_init(mp2buffer, mp2buffer_size);
++    mybs = bitbuffer_init(mp2buffer, mp2buffer_size);
+ 
+     // Use up all the samples in in_buffer
+     while (num_samples) {
+@@ -714,7 +714,7 @@ int twolame_encode_buffer_interleaved(twolame_options * glopts,
+         if (glopts->samples_in_buffer >= TWOLAME_SAMPLES_PER_FRAME) {
+             int bytes = encode_frame(glopts, mybs);
+             if (bytes <= 0) {
+-                buffer_deinit(&mybs);
++                bitbuffer_deinit(&mybs);
+                 return bytes;
+             }
+             mp2_size += bytes;
+@@ -723,7 +723,7 @@ int twolame_encode_buffer_interleaved(twolame_options * glopts,
+     }
+ 
+     // free up the bit stream buffer structure
+-    buffer_deinit(&mybs);
++    bitbuffer_deinit(&mybs);
+ 
+ 
+     return (mp2_size);
+@@ -771,7 +771,7 @@ int twolame_encode_buffer_float32(twolame_options * glopts,
+ 
+     // now would be a great time to validate the size of the buffer.
+     // samples/1152 * sizeof(frame) < mp2buffer_size 
+-    mybs = buffer_init(mp2buffer, mp2buffer_size);
++    mybs = bitbuffer_init(mp2buffer, mp2buffer_size);
+ 
+ 
+     // Use up all the samples in in_buffer
+@@ -800,7 +800,7 @@ int twolame_encode_buffer_float32(twolame_options * glopts,
+         if (glopts->samples_in_buffer >= TWOLAME_SAMPLES_PER_FRAME) {
+             int bytes = encode_frame(glopts, mybs);
+             if (bytes <= 0) {
+-                buffer_deinit(&mybs);
++                bitbuffer_deinit(&mybs);
+                 return bytes;
+             }
+             mp2_size += bytes;
+@@ -809,7 +809,7 @@ int twolame_encode_buffer_float32(twolame_options * glopts,
+     }
+ 
+     // free up the bit stream buffer structure
+-    buffer_deinit(&mybs);
++    bitbuffer_deinit(&mybs);
+ 
+     return (mp2_size);
+ }
+@@ -829,7 +829,7 @@ int twolame_encode_buffer_float32_interleaved(twolame_options * glopts,
+ 
+     // now would be a great time to validate the size of the buffer.
+     // samples/1152 * sizeof(frame) < mp2buffer_size 
+-    mybs = buffer_init(mp2buffer, mp2buffer_size);
++    mybs = bitbuffer_init(mp2buffer, mp2buffer_size);
+ 
+     // Use up all the samples in in_buffer
+     while (num_samples) {
+@@ -857,7 +857,7 @@ int twolame_encode_buffer_float32_interleaved(twolame_options * glopts,
+         if (glopts->samples_in_buffer >= TWOLAME_SAMPLES_PER_FRAME) {
+             int bytes = encode_frame(glopts, mybs);
+             if (bytes <= 0) {
+-                buffer_deinit(&mybs);
++                bitbuffer_deinit(&mybs);
+                 return bytes;
+             }
+             mp2_size += bytes;
+@@ -866,7 +866,7 @@ int twolame_encode_buffer_float32_interleaved(twolame_options * glopts,
+     }
+ 
+     // free up the bit stream buffer structure
+-    buffer_deinit(&mybs);
++    bitbuffer_deinit(&mybs);
+ 
+ 
+     return (mp2_size);
+@@ -885,7 +885,7 @@ int twolame_encode_flush(twolame_options * glopts, unsigned char *mp2buffer, int
+         return 0;
+     }
+     // Create bit stream structure
+-    mybs = buffer_init(mp2buffer, mp2buffer_size);
++    mybs = bitbuffer_init(mp2buffer, mp2buffer_size);
+ 
+     // Pad out the PCM buffers with 0 and encode the frame
+     for (i = glopts->samples_in_buffer; i < TWOLAME_SAMPLES_PER_FRAME; i++) {
+@@ -897,7 +897,7 @@ int twolame_encode_flush(twolame_options * glopts, unsigned char *mp2buffer, int
+     glopts->samples_in_buffer = 0;
+ 
+     // free up the bit stream buffer structure
+-    buffer_deinit(&mybs);
++    bitbuffer_deinit(&mybs);
+ 
+     return mp2_size;
+ }
+-- 
+2.17.1
+


More information about the buildroot mailing list