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:
signature.asc
Description: Digital signature