tags 758155 + patch
thanks

On 2014-08-17 16:11:16, Sebastian Ramacher wrote:
> On 2014-08-17 16:10:23, Sebastian Ramacher wrote:
> > the attached debdiff contains two patches.
> 
> And here is the patch.

Attached is a new patch that also deals with the build issue on armhf.

Cheers
-- 
Sebastian Ramacher
diff -Nru freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/changelog 
freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/changelog
--- freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/changelog   2014-08-12 
00:34:33.000000000 +0200
+++ freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/changelog   2014-08-17 
20:12:12.000000000 +0200
@@ -1,3 +1,15 @@
+freerdp (1.1.0~git20140809.1.b07a5c1+dfsg-2.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * debian/patches/1001-hide-internal-symbols.patch: Hide internal symbols.
+    They do not need to be part of the public ABI. (Closes: #758155)
+  * debian/patches/1002-update-pkg-config-file.patch: Add missing
+    -lfreerdp-client to pkg-config file. (Closes: #758257)
+  * debian/rules: Build with -DARM_FP_ABI=hard on armhf.
+  * debian/libfreerdp1.symbols: Remove internal symbols.
+
+ -- Sebastian Ramacher <sramac...@debian.org>  Sun, 17 Aug 2014 13:04:04 +0200
+
 freerdp (1.1.0~git20140809.1.b07a5c1+dfsg-2) unstable; urgency=medium
 
   * debian/libfreerdp1.symbols:
diff -Nru freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/libfreerdp1.symbols 
freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/libfreerdp1.symbols
--- freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/libfreerdp1.symbols 
2014-08-11 23:46:37.000000000 +0200
+++ freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/libfreerdp1.symbols 
2014-08-17 17:35:25.000000000 +0200
@@ -328,7 +328,6 @@
  nsc_context_new@Base 1.1.0~beta1+git20130629
  nsc_context_set_pixel_format@Base 1.1.0~beta1+git20130629
  nsc_encode@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)nsc_init_sse2@Base 1.1.0~beta1+git20130629
  nsc_process_message@Base 1.1.0~beta1+git20130629
  rdpsnd_compute_audio_time_length@Base 1.1.0~beta1+git20130629
  rdpsnd_free_audio_formats@Base 1.1.0~beta1+git20130629
@@ -349,7 +348,6 @@
  rfx_dwt_2d_decode@Base 1.1.0~beta1+git20130629
  rfx_dwt_2d_encode@Base 1.1.0~beta1+git20130629
  rfx_encode_rgb@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)rfx_init_sse2@Base 1.1.0~beta1+git20130629
  rfx_message_free@Base 1.1.0~beta1+git20130629
  rfx_message_get_rect@Base 1.1.0~beta1+git20130629
  rfx_message_get_rect_count@Base 1.1.0~beta1+git20130629
@@ -1777,21 +1775,6 @@
  primitives_init_shift_opt@Base 1.1.0~beta1+git20130629
  primitives_init_sign@Base 1.1.0~beta1+git20130629
  primitives_init_sign_opt@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)sse2_RGBToRGB_16s8u_P3AC4R@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)sse2_RGBToYCbCr_16s16s_P3P3@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)sse2_alphaComp_argb@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)sse2_lShiftC_16s@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)sse2_lShiftC_16u@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)sse2_rShiftC_16s@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)sse2_rShiftC_16u@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)sse2_set_32s@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)sse2_set_32u@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)sse2_set_8u@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)sse2_yCbCrToRGB_16s16s_P3P3@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)sse3_add_16s@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)sse3_andC_32u@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)sse3_orC_32u@Base 1.1.0~beta1+git20130629
- (arch=!ppc64el)ssse3_sign_16s@Base 1.1.0~beta1+git20130629
 libfreerdp-rail.so.1.1 libfreerdp1 #MINVER#
  icon_cache_free@Base 1.1.0~beta1+git20130629
  icon_cache_get@Base 1.1.0~beta1+git20130629
diff -Nru 
freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/patches/1001-hide-internal-symbols.patch
 
freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/patches/1001-hide-internal-symbols.patch
--- 
freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/patches/1001-hide-internal-symbols.patch
    1970-01-01 01:00:00.000000000 +0100
+++ 
freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/patches/1001-hide-internal-symbols.patch
    2014-08-17 20:06:18.000000000 +0200
@@ -0,0 +1,242 @@
+Description: Hide internal functions
+ They are only used in the test suite and via function pointers. There is no
+ need to expose them via the public ABI of libfreerdp-primitives and
+ libfreerdp-codec.
+Author: Sebastian Ramacher <sramac...@debian.org>
+Last-Update: 2014-08-17
+
+--- /dev/null
++++ b/libfreerdp/codec/codec_internal.h
+@@ -0,0 +1,14 @@
++#ifdef __GNUC__
++# pragma once
++#endif
++
++#ifndef __CODEC_INTERNAL_H_INCLUDED__
++#define __CODEC_INTERNAL_H_INCLUDED__
++
++#if __GNUC__ >= 4
++      #define CODEC_HIDDEN   __attribute__ ((visibility("hidden")))
++#else
++      #define CODEC_HIDDEN
++#endif
++
++#endif /* !__CODEC_INTERNAL_H_INCLUDED__ */
+--- a/libfreerdp/codec/nsc_sse2.h
++++ b/libfreerdp/codec/nsc_sse2.h
+@@ -21,8 +21,9 @@
+ #define __NSC_SSE2_H
+ 
+ #include <freerdp/codec/nsc.h>
++#include "codec_internal.h"
+ 
+-void nsc_init_sse2(NSC_CONTEXT* context);
++CODEC_HIDDEN void nsc_init_sse2(NSC_CONTEXT* context);
+ 
+ #ifdef WITH_SSE2
+  #ifndef NSC_INIT_SIMD
+--- a/libfreerdp/codec/rfx_neon.c
++++ b/libfreerdp/codec/rfx_neon.c
+@@ -51,7 +51,7 @@
+       while(buf < buf_end);
+ }
+ 
+-void
++static void
+ rfx_quantization_decode_NEON(INT16 * buffer, const UINT32 * 
quantization_values)
+ {
+       rfx_quantization_decode_block_NEON(buffer, 4096, 5);
+@@ -242,7 +242,7 @@
+       rfx_dwt_2d_decode_block_vert_NEON(l_dst, h_dst, buffer, subband_width);
+ }
+ 
+-void rfx_dwt_2d_decode_NEON(INT16 * buffer, INT16 * dwt_buffer)
++static void rfx_dwt_2d_decode_NEON(INT16 * buffer, INT16 * dwt_buffer)
+ {
+       rfx_dwt_2d_decode_block_NEON(buffer + 3840, dwt_buffer, 8);
+       rfx_dwt_2d_decode_block_NEON(buffer + 3072, dwt_buffer, 16);
+--- a/libfreerdp/codec/rfx_neon.h
++++ b/libfreerdp/codec/rfx_neon.h
+@@ -21,8 +21,9 @@
+ #define __RFX_NEON_H
+ 
+ #include <freerdp/codec/rfx.h>
++#include "codec_internal.h"
+ 
+-void rfx_init_neon(RFX_CONTEXT * context);
++CODEC_HIDDEN void rfx_init_neon(RFX_CONTEXT * context);
+ 
+ #ifndef RFX_INIT_SIMD
+  #if defined(WITH_NEON)
+--- a/libfreerdp/codec/rfx_sse2.h
++++ b/libfreerdp/codec/rfx_sse2.h
+@@ -21,8 +21,9 @@
+ #define __RFX_SSE2_H
+ 
+ #include <freerdp/codec/rfx.h>
++#include "codec_internal.h"
+ 
+-void rfx_init_sse2(RFX_CONTEXT* context);
++CODEC_HIDDEN void rfx_init_sse2(RFX_CONTEXT* context);
+ 
+ #ifdef WITH_SSE2
+  #ifndef RFX_INIT_SIMD
+--- a/libfreerdp/primitives/prim_alphaComp_opt.c
++++ b/libfreerdp/primitives/prim_alphaComp_opt.c
+@@ -45,7 +45,7 @@
+ #ifdef WITH_SSE2
+ #if !defined(WITH_IPP) || defined(ALL_PRIMITIVES_VERSIONS)
+ 
+-pstatus_t sse2_alphaComp_argb(
++PRIMITIVES_HIDDEN pstatus_t sse2_alphaComp_argb(
+       const BYTE *pSrc1,  INT32 src1Step,
+       const BYTE *pSrc2,  INT32 src2Step,
+       BYTE *pDst,  INT32 dstStep,
+@@ -196,7 +196,7 @@
+ 
+ #ifdef WITH_IPP
+ /* ------------------------------------------------------------------------- 
*/
+-pstatus_t ipp_alphaComp_argb(
++PRIMITIVES_HIDDEN pstatus_t ipp_alphaComp_argb(
+       const BYTE *pSrc1,  INT32 src1Step,
+       const BYTE *pSrc2,  INT32 src2Step,
+       BYTE *pDst,  INT32 dstStep,
+--- a/libfreerdp/primitives/prim_colors_opt.c
++++ b/libfreerdp/primitives/prim_colors_opt.c
+@@ -66,7 +66,7 @@
+ #endif /* DO_PREFETCH */
+ 
+ 
/*---------------------------------------------------------------------------*/
+-pstatus_t sse2_yCbCrToRGB_16s16s_P3P3(
++PRIMITIVES_HIDDEN pstatus_t sse2_yCbCrToRGB_16s16s_P3P3(
+       const INT16 *pSrc[3],
+       int srcStep,
+       INT16 *pDst[3],
+@@ -206,7 +206,7 @@
+ /* The encodec YCbCr coeffectients are represented as 11.5 fixed-point
+  * numbers. See the general code above.
+  */
+-pstatus_t sse2_RGBToYCbCr_16s16s_P3P3(
++PRIMITIVES_HIDDEN pstatus_t sse2_RGBToYCbCr_16s16s_P3P3(
+       const INT16 *pSrc[3],
+       int srcStep,
+       INT16 *pDst[3],
+@@ -359,7 +359,7 @@
+ #define XMM_ALL_ONES \
+       _mm_set1_epi32(0xFFFFFFFFU)
+ 
+-pstatus_t sse2_RGBToRGB_16s8u_P3AC4R(
++PRIMITIVES_HIDDEN pstatus_t sse2_RGBToRGB_16s8u_P3AC4R(
+       const INT16 *pSrc[3],   /* 16-bit R,G, and B arrays */
+       INT32 srcStep,                  /* bytes between rows in source data */
+       BYTE *pDst,                             /* 32-bit interleaved ARGB 
(ABGR?) data */
+@@ -440,7 +440,7 @@
+ 
+ 
/*---------------------------------------------------------------------------*/
+ #ifdef WITH_NEON
+-pstatus_t neon_yCbCrToRGB_16s16s_P3P3(
++PRIMITIVES_HIDDEN pstatus_t neon_yCbCrToRGB_16s16s_P3P3(
+       const INT16 *pSrc[3],
+       int srcStep,
+       INT16 *pDst[3],
+--- a/libfreerdp/primitives/prim_internal.h
++++ b/libfreerdp/primitives/prim_internal.h
+@@ -27,6 +27,11 @@
+ 
+ #include <freerdp/primitives.h>
+ 
++#if __GNUC__ >= 4
++      #define PRIMITIVES_HIDDEN   __attribute__ ((visibility("hidden")))
++#else
++      #define PRIMITIVES_HIDDEN
++#endif
+ 
+ /* Use lddqu for unaligned; load for 16-byte aligned. */
+ #define LOAD_SI128(_ptr_) \
+--- a/libfreerdp/primitives/prim_set_opt.c
++++ b/libfreerdp/primitives/prim_set_opt.c
+@@ -36,7 +36,7 @@
+ /* ========================================================================= 
*/
+ #ifdef WITH_SSE2
+ # if !defined(WITH_IPP) || defined(ALL_PRIMITIVES_VERSIONS)
+-pstatus_t sse2_set_8u(
++PRIMITIVES_HIDDEN pstatus_t sse2_set_8u(
+       BYTE val,
+       BYTE *pDst,
+       INT32 len)
+@@ -103,7 +103,7 @@
+ /* ------------------------------------------------------------------------- 
*/
+ #ifdef WITH_SSE2
+ # if !defined(WITH_IPP) || defined(ALL_PRIMITIVES_VERSIONS)
+-pstatus_t sse2_set_32u(
++PRIMITIVES_HIDDEN pstatus_t sse2_set_32u(
+       UINT32 val,
+       UINT32 *pDst,
+       INT32 len)
+@@ -174,7 +174,7 @@
+ }
+ 
+ /* ------------------------------------------------------------------------- 
*/
+-pstatus_t sse2_set_32s(
++PRIMITIVES_HIDDEN pstatus_t sse2_set_32s(
+       INT32 val,
+       INT32 *pDst,
+       INT32 len)
+@@ -187,7 +187,7 @@
+ 
+ #ifdef WITH_IPP
+ /* ------------------------------------------------------------------------- 
*/
+-pstatus_t ipp_wrapper_set_32u(
++PRIMITIVES_HIDDEN pstatus_t ipp_wrapper_set_32u(
+       UINT32 val,
+       UINT32 *pDst,
+       INT32 len)
+--- a/libfreerdp/primitives/prim_sign_opt.c
++++ b/libfreerdp/primitives/prim_sign_opt.c
+@@ -32,7 +32,7 @@
+ 
+ #ifdef WITH_SSE2
+ /* ------------------------------------------------------------------------- 
*/
+-pstatus_t ssse3_sign_16s(
++PRIMITIVES_HIDDEN pstatus_t ssse3_sign_16s(
+       const INT16 *pSrc,
+       INT16 *pDst,
+       INT32 len)
+--- a/libfreerdp/primitives/prim_templates.h
++++ b/libfreerdp/primitives/prim_templates.h
+@@ -20,6 +20,8 @@
+ #ifndef __PRIM_TEMPLATES_H_INCLUDED__
+ #define __PRIM_TEMPLATES_H_INCLUDED__
+ 
++#include "prim_internal.h"
++
+ /* These are prototypes for SSE (potentially NEON) routines that do a 
+  * simple SSE operation over an array of data.  Since so much of this
+  * code is shared except for the operation itself, these prototypes are
+@@ -44,7 +46,7 @@
+  * SCD = Source, Constant, Destination
+  */
+ #define SSE3_SCD_ROUTINE(_name_, _type_, _fallback_, _op_, _slowWay_) \
+-pstatus_t _name_(const _type_ *pSrc, INT32 val, _type_ *pDst, INT32 len) \
++PRIMITIVES_HIDDEN pstatus_t _name_(const _type_ *pSrc, INT32 val, _type_ 
*pDst, INT32 len) \
+ { \
+       int shifts; \
+       UINT32 offBeatMask; \
+@@ -188,7 +190,7 @@
+  * PRE = preload xmm0 with the constant.
+  */
+ #define SSE3_SCD_PRE_ROUTINE(_name_, _type_, _fallback_, _op_, _slowWay_) \
+-pstatus_t _name_(const _type_ *pSrc, _type_ val, _type_ *pDst, INT32 len) \
++PRIMITIVES_HIDDEN pstatus_t _name_(const _type_ *pSrc, _type_ val, _type_ 
*pDst, INT32 len) \
+ { \
+       int shifts; \
+       UINT32 offBeatMask; \
+@@ -293,7 +295,7 @@
+  * SSD = Source1, Source2, Destination
+  */
+ #define SSE3_SSD_ROUTINE(_name_, _type_, _fallback_, _op_, _slowWay_) \
+-pstatus_t _name_(const _type_ *pSrc1, const _type_ *pSrc2, _type_ *pDst, 
INT32 len) \
++PRIMITIVES_HIDDEN pstatus_t _name_(const _type_ *pSrc1, const _type_ *pSrc2, 
_type_ *pDst, INT32 len) \
+ { \
+       int shifts; \
+       UINT32 offBeatMask; \
diff -Nru 
freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/patches/1002-update-pkg-config-file.patch
 
freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/patches/1002-update-pkg-config-file.patch
--- 
freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/patches/1002-update-pkg-config-file.patch
   1970-01-01 01:00:00.000000000 +0100
+++ 
freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/patches/1002-update-pkg-config-file.patch
   2014-08-17 15:56:25.000000000 +0200
@@ -0,0 +1,16 @@
+Description: Add missing -lfreerdp-client
+Author: Sebastian Ramacher <sramac...@debian.org>
+Last-Update: 2014-08-17
+
+diff --git a/freerdp.pc.in b/freerdp.pc.in
+index 59e2b44..70288dd 100644
+--- a/freerdp.pc.in
++++ b/freerdp.pc.in
+@@ -8,6 +8,6 @@ Description: A free remote desktop protocol client
+ URL: http://www.freerdp.com/
+ Version: @FREERDP_VERSION_FULL@
+ Requires: 
+-Libs: -L${libdir} -lfreerdp-cache -lfreerdp-codec -lfreerdp-core 
-lfreerdp-crypto -lfreerdp-gdi -lfreerdp-locale -lfreerdp-rail -lfreerdp-utils 
-lwinpr-sspi -lwinpr-rpc -lwinpr-utils
++Libs: -L${libdir} -lfreerdp-cache -lfreerdp-codec -lfreerdp-client 
-lfreerdp-core -lfreerdp-crypto -lfreerdp-gdi -lfreerdp-locale -lfreerdp-rail 
-lfreerdp-utils -lwinpr-sspi -lwinpr-rpc -lwinpr-utils
+ Cflags: -I${includedir}
+ 
diff -Nru freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/patches/series 
freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/patches/series
--- freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/patches/series      
1970-01-01 01:00:00.000000000 +0100
+++ freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/patches/series      
2014-08-17 20:06:42.000000000 +0200
@@ -0,0 +1,2 @@
+1001-hide-internal-symbols.patch
+1002-update-pkg-config-file.patch
diff -Nru freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/rules 
freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/rules
--- freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/rules       2014-08-10 
00:15:30.000000000 +0200
+++ freerdp-1.1.0~git20140809.1.b07a5c1+dfsg/debian/rules       2014-08-17 
20:05:15.000000000 +0200
@@ -7,6 +7,13 @@
 
 NULL =
 
+DEB_HOST_ARCH=$(shell dpkg-architecture -qDEB_HOST_ARCH)
+ifneq (,$(filter armhf,$(DEB_HOST_ARCH)))
+ARM_FLOAT_ABI = -DARM_FP_ABI=hard
+else
+ARM_FLOAT_ABI =
+endif
+
 %:
        dh ${@}
 
@@ -17,6 +24,7 @@
                             -DWITH_CUPS=on \
                             -DWITH_PCSC=on \
                             -DWITH_JPEG=on \
+                            $(ARM_FLOAT_ABI) \
                             $(NULL)
 
 override_dh_install:

Attachment: signature.asc
Description: Digital signature

Reply via email to