diff --git a/recipes/gettext.recipe b/recipes/gettext.recipe
index c723c25..c2ec736 100644
--- a/recipes/gettext.recipe
+++ b/recipes/gettext.recipe
@@ -9,7 +9,9 @@ class Recipe(recipe.Recipe):
     stype = SourceType.TARBALL
     url = 'http://ftp.gnu.org/pub/gnu/gettext/gettext-0.19.4.tar.gz'
     srcdir = 'gettext-runtime'
-    patches = ['gettext/0001-Fix-linker-error-redefinition-of-vasprintf.patch']
+    patches = ['gettext/0001-Fix-linker-error-redefinition-of-vasprintf.patch',
+               'gettext/0002-gettext-hide-xfunctions.patch'
+      ]
     platform_deps = {
         Platform.DARWIN:  ['libiconv'],
         Platform.IOS:  ['libiconv'],
diff --git a/recipes/gettext/0002-gettext-hide-xfunctions.patch b/recipes/gettext/0002-gettext-hide-xfunctions.patch
new file mode 100644
index 0000000..7ac5000
--- /dev/null
+++ b/recipes/gettext/0002-gettext-hide-xfunctions.patch
@@ -0,0 +1,80 @@
+From 96cb6ba42ef72db841d9304be4a45fdb80886a1f Tue May 19 13:35:05 2015 +0200
+From: Emmanuel Poitier <emmanuel.poitier@enman.fr>
+Date: Tue, 19 May 2015 13:35:05 +0100
+Subject: [PATCH] Hide symbols in conflict with other components and may break the link process
+
+---
+diff --git a/gettext-runtime/intl/xsize.h b/gettext-runtime/intl/xsize.h
+index c256665..69549ba 100644
+--- a/gettext-runtime/intl/xsize.h
++++ b/gettext-runtime/intl/xsize.h
+@@ -59,6 +59,7 @@ _GL_INLINE_HEADER_BEGIN
+ XSIZE_INLINE size_t
+ #if __GNUC__ >= 3
+ __attribute__ ((__pure__))
++__attribute__((visibility("hidden")))
+ #endif
+ xsum (size_t size1, size_t size2)
+ {
+@@ -70,6 +71,7 @@ xsum (size_t size1, size_t size2)
+ XSIZE_INLINE size_t
+ #if __GNUC__ >= 3
+ __attribute__ ((__pure__))
++__attribute__((visibility("hidden")))
+ #endif
+ xsum3 (size_t size1, size_t size2, size_t size3)
+ {
+@@ -80,6 +82,7 @@ xsum3 (size_t size1, size_t size2, size_t size3)
+ XSIZE_INLINE size_t
+ #if __GNUC__ >= 3
+ __attribute__ ((__pure__))
++__attribute__((visibility("hidden")))
+ #endif
+ xsum4 (size_t size1, size_t size2, size_t size3, size_t size4)
+ {
+@@ -90,6 +93,7 @@ xsum4 (size_t size1, size_t size2, size_t size3, size_t size4)
+ XSIZE_INLINE size_t
+ #if __GNUC__ >= 3
+ __attribute__ ((__pure__))
++__attribute__((visibility("hidden")))
+ #endif
+ xmax (size_t size1, size_t size2)
+ {
+diff --git a/gettext-runtime/libasprintf/xsize.h b/gettext-runtime/libasprintf/xsize.h
+index c256665..69549ba 100644
+--- a/gettext-runtime/libasprintf/xsize.h
++++ b/gettext-runtime/libasprintf/xsize.h
+@@ -59,6 +59,7 @@ _GL_INLINE_HEADER_BEGIN
+ XSIZE_INLINE size_t
+ #if __GNUC__ >= 3
+ __attribute__ ((__pure__))
++__attribute__((visibility("hidden")))
+ #endif
+ xsum (size_t size1, size_t size2)
+ {
+@@ -70,6 +71,7 @@ xsum (size_t size1, size_t size2)
+ XSIZE_INLINE size_t
+ #if __GNUC__ >= 3
+ __attribute__ ((__pure__))
++__attribute__((visibility("hidden")))
+ #endif
+ xsum3 (size_t size1, size_t size2, size_t size3)
+ {
+@@ -80,6 +82,7 @@ xsum3 (size_t size1, size_t size2, size_t size3)
+ XSIZE_INLINE size_t
+ #if __GNUC__ >= 3
+ __attribute__ ((__pure__))
++__attribute__((visibility("hidden")))
+ #endif
+ xsum4 (size_t size1, size_t size2, size_t size3, size_t size4)
+ {
+@@ -90,6 +93,7 @@ xsum4 (size_t size1, size_t size2, size_t size3, size_t size4)
+ XSIZE_INLINE size_t
+ #if __GNUC__ >= 3
+ __attribute__ ((__pure__))
++__attribute__((visibility("hidden")))
+ #endif
+ xmax (size_t size1, size_t size2)
+ {
+-- 
+1.8.4
diff --git a/recipes/gnutls.recipe b/recipes/gnutls.recipe
index 9920a69..43eb86f 100644
--- a/recipes/gnutls.recipe
+++ b/recipes/gnutls.recipe
@@ -23,7 +23,8 @@ class Recipe(recipe.Recipe):
         Platform.DARWIN: ['bionic-fixup']
     }
     patches = [name + "/0001-configure-vasprintf-is-defined-in-stdio.h.patch",
-               name + "/0002-configure-Update-gettext-version-to-0.19.patch"]
+               name + "/0002-configure-Update-gettext-version-to-0.19.patch",
+               name + "/0003-gnutls-hide-xfunctions.patch"]
     autoreconf = True
 
     files_libs = ['libgnutls', 'libgnutlsxx']
diff --git a/recipes/gnutls/0003-gnutls-hide-xfunctions.patch b/recipes/gnutls/0003-gnutls-hide-xfunctions.patch
new file mode 100644
index 0000000..5a94095
--- /dev/null
+++ b/recipes/gnutls/0003-gnutls-hide-xfunctions.patch
@@ -0,0 +1,80 @@
+From 96cb6ba42ef72db841d9304be4a45fdb80886a1f Tue May 19 13:35:05 2015 +0200
+From: Emmanuel Poitier <emmanuel.poitier@enman.fr>
+Date: Tue, 19 May 2015 13:35:05 +0100
+Subject: [PATCH] Hide symbols in conflict with other components and may break the link process
+
+---
+diff --git a/gl/xsize.h b/gl/xsize.h
+index de3d92e..d294a12 100644
+--- a/gl/xsize.h
++++ b/gl/xsize.h
+@@ -59,6 +59,7 @@ _GL_INLINE_HEADER_BEGIN
+ XSIZE_INLINE size_t
+ #if __GNUC__ >= 3
+ __attribute__ ((__pure__))
++__attribute__((visibility("hidden")))
+ #endif
+ xsum (size_t size1, size_t size2)
+ {
+@@ -70,6 +71,7 @@ xsum (size_t size1, size_t size2)
+ XSIZE_INLINE size_t
+ #if __GNUC__ >= 3
+ __attribute__ ((__pure__))
++__attribute__((visibility("hidden")))
+ #endif
+ xsum3 (size_t size1, size_t size2, size_t size3)
+ {
+@@ -80,6 +82,7 @@ xsum3 (size_t size1, size_t size2, size_t size3)
+ XSIZE_INLINE size_t
+ #if __GNUC__ >= 3
+ __attribute__ ((__pure__))
++__attribute__((visibility("hidden")))
+ #endif
+ xsum4 (size_t size1, size_t size2, size_t size3, size_t size4)
+ {
+@@ -90,6 +93,7 @@ xsum4 (size_t size1, size_t size2, size_t size3, size_t size4)
+ XSIZE_INLINE size_t
+ #if __GNUC__ >= 3
+ __attribute__ ((__pure__))
++__attribute__((visibility("hidden")))
+ #endif
+ xmax (size_t size1, size_t size2)
+ {
+diff --git a/src/gl/xsize.h b/src/gl/xsize.h
+index b2a786a..ae3d101 100644
+--- a/src/gl/xsize.h
++++ b/src/gl/xsize.h
+@@ -59,6 +59,7 @@ _GL_INLINE_HEADER_BEGIN
+ XSIZE_INLINE size_t
+ #if __GNUC__ >= 3
+ __attribute__ ((__pure__))
++__attribute__((visibility("hidden")))
+ #endif
+ xsum (size_t size1, size_t size2)
+ {
+@@ -70,6 +71,7 @@ xsum (size_t size1, size_t size2)
+ XSIZE_INLINE size_t
+ #if __GNUC__ >= 3
+ __attribute__ ((__pure__))
++__attribute__((visibility("hidden")))
+ #endif
+ xsum3 (size_t size1, size_t size2, size_t size3)
+ {
+@@ -80,6 +82,7 @@ xsum3 (size_t size1, size_t size2, size_t size3)
+ XSIZE_INLINE size_t
+ #if __GNUC__ >= 3
+ __attribute__ ((__pure__))
++__attribute__((visibility("hidden")))
+ #endif
+ xsum4 (size_t size1, size_t size2, size_t size3, size_t size4)
+ {
+@@ -90,6 +93,7 @@ xsum4 (size_t size1, size_t size2, size_t size3, size_t size4)
+ XSIZE_INLINE size_t
+ #if __GNUC__ >= 3
+ __attribute__ ((__pure__))
++__attribute__((visibility("hidden")))
+ #endif
+ xmax (size_t size1, size_t size2)
+ {
+-- 
+1.8.4
