* [PATCH] fontconfig: Fix namespace conflicts with glibc
@ 2016-12-11 23:07 Khem Raj
2016-12-12 12:45 ` Burton, Ross
0 siblings, 1 reply; 4+ messages in thread
From: Khem Raj @ 2016-12-11 23:07 UTC (permalink / raw)
To: openembedded-core
glibc 2.25 will come with TS 18661-1 macro definitions in limits.h which ends with following errors
| ../../fontconfig-2.12.1/src/fcmatch.c:324:63: error: 'PRI_CHAR_WIDTH_STRONG' undeclared here (not in a function)
| #define FC_OBJECT(NAME, Type, Cmp) { FC_##NAME##_OBJECT, Cmp, PRI_##NAME##_STRONG, PRI_##NAME##_WEAK },
| ^
| ../../fontconfig-2.12.1/src/fcobjs.h:54:1: note: in expansion of macro 'FC_OBJECT'
| FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL)
| ^~~~~~~~~
| ../../fontconfig-2.12.1/src/fcmatch.c:324:84: error: 'PRI_CHAR_WIDTH_WEAK' undeclared here (not in a function)
| #define FC_OBJECT(NAME, Type, Cmp) { FC_##NAME##_OBJECT, Cmp, PRI_##NAME##_STRONG, PRI_##NAME##_WEAK },
| ^
| ../../fontconfig-2.12.1/src/fcobjs.h:54:1: note: in expansion of macro 'FC_OBJECT'
| FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL)
| ^~~~~~~~~
| make[3]: *** [Makefile:632: fcmatch.lo] Error 1
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
...icts-with-integer-width-macros-from-TS-18.patch | 74 ++++++++++++++++++++++
.../fontconfig/fontconfig_2.12.1.bb | 1 +
2 files changed, 75 insertions(+)
create mode 100644 meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch
diff --git a/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch b/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch
new file mode 100644
index 0000000..326ff3c
--- /dev/null
+++ b/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch
@@ -0,0 +1,74 @@
+From 20cddc824c6501c2082cac41b162c34cd5fcc530 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 11 Dec 2016 14:32:00 -0800
+Subject: [PATCH] Avoid conflicts with integer width macros from TS
+ 18661-1:2014
+
+glibc 2.25+ has now defined these macros in <limits.h>
+https://sourceware.org/git/?p=glibc.git;a=commit;h=5b17fd0da62bf923cb61d1bb7b08cf2e1f1f9c1a
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+Upstream-Status: Submitted
+
+ fontconfig/fontconfig.h | 2 +-
+ src/fcobjs.h | 2 +-
+ src/fcobjshash.gperf | 2 +-
+ src/fcobjshash.h | 2 +-
+ 4 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/fontconfig/fontconfig.h b/fontconfig/fontconfig.h
+index 5c72b22..843c532 100644
+--- a/fontconfig/fontconfig.h
++++ b/fontconfig/fontconfig.h
+@@ -128,7 +128,7 @@ typedef int FcBool;
+ #define FC_USER_CACHE_FILE ".fonts.cache-" FC_CACHE_VERSION
+
+ /* Adjust outline rasterizer */
+-#define FC_CHAR_WIDTH "charwidth" /* Int */
++#define FC_CHARWIDTH "charwidth" /* Int */
+ #define FC_CHAR_HEIGHT "charheight"/* Int */
+ #define FC_MATRIX "matrix" /* FcMatrix */
+
+diff --git a/src/fcobjs.h b/src/fcobjs.h
+index 1fc4f65..d27864b 100644
+--- a/src/fcobjs.h
++++ b/src/fcobjs.h
+@@ -51,7 +51,7 @@ FC_OBJECT (DPI, FcTypeDouble, NULL)
+ FC_OBJECT (RGBA, FcTypeInteger, NULL)
+ FC_OBJECT (SCALE, FcTypeDouble, NULL)
+ FC_OBJECT (MINSPACE, FcTypeBool, NULL)
+-FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL)
++FC_OBJECT (CHARWIDTH, FcTypeInteger, NULL)
+ FC_OBJECT (CHAR_HEIGHT, FcTypeInteger, NULL)
+ FC_OBJECT (MATRIX, FcTypeMatrix, NULL)
+ FC_OBJECT (CHARSET, FcTypeCharSet, FcCompareCharSet)
+diff --git a/src/fcobjshash.gperf b/src/fcobjshash.gperf
+index 80a0237..eb4ad84 100644
+--- a/src/fcobjshash.gperf
++++ b/src/fcobjshash.gperf
+@@ -44,7 +44,7 @@ int id;
+ "rgba",FC_RGBA_OBJECT
+ "scale",FC_SCALE_OBJECT
+ "minspace",FC_MINSPACE_OBJECT
+-"charwidth",FC_CHAR_WIDTH_OBJECT
++"charwidth",FC_CHARWIDTH_OBJECT
+ "charheight",FC_CHAR_HEIGHT_OBJECT
+ "matrix",FC_MATRIX_OBJECT
+ "charset",FC_CHARSET_OBJECT
+diff --git a/src/fcobjshash.h b/src/fcobjshash.h
+index 5a4d1ea..4e66bb0 100644
+--- a/src/fcobjshash.h
++++ b/src/fcobjshash.h
+@@ -284,7 +284,7 @@ FcObjectTypeLookup (register const char *str, register unsigned int len)
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str43,FC_CHARSET_OBJECT},
+ {-1},
+ #line 47 "fcobjshash.gperf"
+- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str45,FC_CHAR_WIDTH_OBJECT},
++ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str45,FC_CHARWIDTH_OBJECT},
+ #line 48 "fcobjshash.gperf"
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str46,FC_CHAR_HEIGHT_OBJECT},
+ #line 55 "fcobjshash.gperf"
+--
+2.10.2
+
diff --git a/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb b/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb
index 115f558..8616154 100644
--- a/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb
+++ b/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb
@@ -22,6 +22,7 @@ DEPENDS = "expat freetype zlib"
SRC_URI = "http://fontconfig.org/release/fontconfig-${PV}.tar.gz \
file://revert-static-pkgconfig.patch \
+ file://0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch \
"
SRC_URI[md5sum] = "ce55e525c37147eee14cc2de6cc09f6c"
SRC_URI[sha256sum] = "a9f42d03949f948a3a4f762287dbc16e53a927c91a07ee64207ebd90a9e5e292"
--
2.10.2
^ permalink raw reply related [flat|nested] 4+ messages in thread* Re: [PATCH] fontconfig: Fix namespace conflicts with glibc
2016-12-11 23:07 [PATCH] fontconfig: Fix namespace conflicts with glibc Khem Raj
@ 2016-12-12 12:45 ` Burton, Ross
2016-12-12 17:47 ` Khem Raj
0 siblings, 1 reply; 4+ messages in thread
From: Burton, Ross @ 2016-12-12 12:45 UTC (permalink / raw)
To: Khem Raj; +Cc: OE-core
[-- Attachment #1: Type: text/plain, Size: 6326 bytes --]
Has fallout, for example libxft:
| ../../libXft-2.3.2/src/xftfreetype.c:675:43: error: ‘FC_CHAR_WIDTH’
undeclared (first use in this function)
Ross
On 11 December 2016 at 23:07, Khem Raj <raj.khem@gmail.com> wrote:
> glibc 2.25 will come with TS 18661-1 macro definitions in limits.h which
> ends with following errors
>
> | ../../fontconfig-2.12.1/src/fcmatch.c:324:63: error:
> 'PRI_CHAR_WIDTH_STRONG' undeclared here (not in a function)
> | #define FC_OBJECT(NAME, Type, Cmp) { FC_##NAME##_OBJECT, Cmp,
> PRI_##NAME##_STRONG, PRI_##NAME##_WEAK },
> | ^
> | ../../fontconfig-2.12.1/src/fcobjs.h:54:1: note: in expansion of macro
> 'FC_OBJECT'
> | FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL)
> | ^~~~~~~~~
> | ../../fontconfig-2.12.1/src/fcmatch.c:324:84: error:
> 'PRI_CHAR_WIDTH_WEAK' undeclared here (not in a function)
> | #define FC_OBJECT(NAME, Type, Cmp) { FC_##NAME##_OBJECT, Cmp,
> PRI_##NAME##_STRONG, PRI_##NAME##_WEAK },
> |
> ^
> | ../../fontconfig-2.12.1/src/fcobjs.h:54:1: note: in expansion of macro
> 'FC_OBJECT'
> | FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL)
> | ^~~~~~~~~
> | make[3]: *** [Makefile:632: fcmatch.lo] Error 1
>
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
> ...icts-with-integer-width-macros-from-TS-18.patch | 74
> ++++++++++++++++++++++
> .../fontconfig/fontconfig_2.12.1.bb | 1 +
> 2 files changed, 75 insertions(+)
> create mode 100644 meta/recipes-graphics/fontconfig/fontconfig/0001-
> Avoid-conflicts-with-integer-width-macros-from-TS-18.patch
>
> diff --git a/meta/recipes-graphics/fontconfig/fontconfig/0001-
> Avoid-conflicts-with-integer-width-macros-from-TS-18.patch
> b/meta/recipes-graphics/fontconfig/fontconfig/0001-
> Avoid-conflicts-with-integer-width-macros-from-TS-18.patch
> new file mode 100644
> index 0000000..326ff3c
> --- /dev/null
> +++ b/meta/recipes-graphics/fontconfig/fontconfig/0001-
> Avoid-conflicts-with-integer-width-macros-from-TS-18.patch
> @@ -0,0 +1,74 @@
> +From 20cddc824c6501c2082cac41b162c34cd5fcc530 Mon Sep 17 00:00:00 2001
> +From: Khem Raj <raj.khem@gmail.com>
> +Date: Sun, 11 Dec 2016 14:32:00 -0800
> +Subject: [PATCH] Avoid conflicts with integer width macros from TS
> + 18661-1:2014
> +
> +glibc 2.25+ has now defined these macros in <limits.h>
> +https://sourceware.org/git/?p=glibc.git;a=commit;h=
> 5b17fd0da62bf923cb61d1bb7b08cf2e1f1f9c1a
> +
> +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> +---
> +Upstream-Status: Submitted
> +
> + fontconfig/fontconfig.h | 2 +-
> + src/fcobjs.h | 2 +-
> + src/fcobjshash.gperf | 2 +-
> + src/fcobjshash.h | 2 +-
> + 4 files changed, 4 insertions(+), 4 deletions(-)
> +
> +diff --git a/fontconfig/fontconfig.h b/fontconfig/fontconfig.h
> +index 5c72b22..843c532 100644
> +--- a/fontconfig/fontconfig.h
> ++++ b/fontconfig/fontconfig.h
> +@@ -128,7 +128,7 @@ typedef int FcBool;
> + #define FC_USER_CACHE_FILE ".fonts.cache-" FC_CACHE_VERSION
> +
> + /* Adjust outline rasterizer */
> +-#define FC_CHAR_WIDTH "charwidth" /* Int */
> ++#define FC_CHARWIDTH "charwidth" /* Int */
> + #define FC_CHAR_HEIGHT "charheight"/* Int */
> + #define FC_MATRIX "matrix" /* FcMatrix */
> +
> +diff --git a/src/fcobjs.h b/src/fcobjs.h
> +index 1fc4f65..d27864b 100644
> +--- a/src/fcobjs.h
> ++++ b/src/fcobjs.h
> +@@ -51,7 +51,7 @@ FC_OBJECT (DPI, FcTypeDouble,
> NULL)
> + FC_OBJECT (RGBA, FcTypeInteger, NULL)
> + FC_OBJECT (SCALE, FcTypeDouble, NULL)
> + FC_OBJECT (MINSPACE, FcTypeBool, NULL)
> +-FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL)
> ++FC_OBJECT (CHARWIDTH, FcTypeInteger, NULL)
> + FC_OBJECT (CHAR_HEIGHT, FcTypeInteger, NULL)
> + FC_OBJECT (MATRIX, FcTypeMatrix, NULL)
> + FC_OBJECT (CHARSET, FcTypeCharSet, FcCompareCharSet)
> +diff --git a/src/fcobjshash.gperf b/src/fcobjshash.gperf
> +index 80a0237..eb4ad84 100644
> +--- a/src/fcobjshash.gperf
> ++++ b/src/fcobjshash.gperf
> +@@ -44,7 +44,7 @@ int id;
> + "rgba",FC_RGBA_OBJECT
> + "scale",FC_SCALE_OBJECT
> + "minspace",FC_MINSPACE_OBJECT
> +-"charwidth",FC_CHAR_WIDTH_OBJECT
> ++"charwidth",FC_CHARWIDTH_OBJECT
> + "charheight",FC_CHAR_HEIGHT_OBJECT
> + "matrix",FC_MATRIX_OBJECT
> + "charset",FC_CHARSET_OBJECT
> +diff --git a/src/fcobjshash.h b/src/fcobjshash.h
> +index 5a4d1ea..4e66bb0 100644
> +--- a/src/fcobjshash.h
> ++++ b/src/fcobjshash.h
> +@@ -284,7 +284,7 @@ FcObjectTypeLookup (register const char *str,
> register unsigned int len)
> + {(int)(long)&((struct FcObjectTypeNamePool_t
> *)0)->FcObjectTypeNamePool_str43,FC_CHARSET_OBJECT},
> + {-1},
> + #line 47 "fcobjshash.gperf"
> +- {(int)(long)&((struct FcObjectTypeNamePool_t
> *)0)->FcObjectTypeNamePool_str45,FC_CHAR_WIDTH_OBJECT},
> ++ {(int)(long)&((struct FcObjectTypeNamePool_t
> *)0)->FcObjectTypeNamePool_str45,FC_CHARWIDTH_OBJECT},
> + #line 48 "fcobjshash.gperf"
> + {(int)(long)&((struct FcObjectTypeNamePool_t
> *)0)->FcObjectTypeNamePool_str46,FC_CHAR_HEIGHT_OBJECT},
> + #line 55 "fcobjshash.gperf"
> +--
> +2.10.2
> +
> diff --git a/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb
> b/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb
> index 115f558..8616154 100644
> --- a/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb
> +++ b/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb
> @@ -22,6 +22,7 @@ DEPENDS = "expat freetype zlib"
>
> SRC_URI = "http://fontconfig.org/release/fontconfig-${PV}.tar.gz \
> file://revert-static-pkgconfig.patch \
> + file://0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch
> \
> "
> SRC_URI[md5sum] = "ce55e525c37147eee14cc2de6cc09f6c"
> SRC_URI[sha256sum] = "a9f42d03949f948a3a4f762287dbc1
> 6e53a927c91a07ee64207ebd90a9e5e292"
> --
> 2.10.2
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
[-- Attachment #2: Type: text/html, Size: 8666 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: [PATCH] fontconfig: Fix namespace conflicts with glibc
2016-12-12 12:45 ` Burton, Ross
@ 2016-12-12 17:47 ` Khem Raj
2016-12-15 0:10 ` Khem Raj
0 siblings, 1 reply; 4+ messages in thread
From: Khem Raj @ 2016-12-12 17:47 UTC (permalink / raw)
To: Burton, Ross; +Cc: OE-core
[-- Attachment #1: Type: text/plain, Size: 7041 bytes --]
> On Dec 12, 2016, at 4:45 AM, Burton, Ross <ross.burton@intel.com> wrote:
>
> Has fallout, for example libxft:
>
> | ../../libXft-2.3.2/src/xftfreetype.c:675:43: error: ‘FC_CHAR_WIDTH’ undeclared (first use in this function)
>
OK, I wasn’t aware this is exported API, I will tweak the patch accordingly.
> Ross
>
> On 11 December 2016 at 23:07, Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com>> wrote:
> glibc 2.25 will come with TS 18661-1 macro definitions in limits.h which ends with following errors
>
> | ../../fontconfig-2.12.1/src/fcmatch.c:324:63: error: 'PRI_CHAR_WIDTH_STRONG' undeclared here (not in a function)
> | #define FC_OBJECT(NAME, Type, Cmp) { FC_##NAME##_OBJECT, Cmp, PRI_##NAME##_STRONG, PRI_##NAME##_WEAK },
> | ^
> | ../../fontconfig-2.12.1/src/fcobjs.h:54:1: note: in expansion of macro 'FC_OBJECT'
> | FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL)
> | ^~~~~~~~~
> | ../../fontconfig-2.12.1/src/fcmatch.c:324:84: error: 'PRI_CHAR_WIDTH_WEAK' undeclared here (not in a function)
> | #define FC_OBJECT(NAME, Type, Cmp) { FC_##NAME##_OBJECT, Cmp, PRI_##NAME##_STRONG, PRI_##NAME##_WEAK },
> | ^
> | ../../fontconfig-2.12.1/src/fcobjs.h:54:1: note: in expansion of macro 'FC_OBJECT'
> | FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL)
> | ^~~~~~~~~
> | make[3]: *** [Makefile:632: fcmatch.lo] Error 1
>
> Signed-off-by: Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com>>
> ---
> ...icts-with-integer-width-macros-from-TS-18.patch | 74 ++++++++++++++++++++++
> .../fontconfig/fontconfig_2.12.1.bb <http://fontconfig_2.12.1.bb/> | 1 +
> 2 files changed, 75 insertions(+)
> create mode 100644 meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch
>
> diff --git a/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch b/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch
> new file mode 100644
> index 0000000..326ff3c
> --- /dev/null
> +++ b/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch
> @@ -0,0 +1,74 @@
> +From 20cddc824c6501c2082cac41b162c34cd5fcc530 Mon Sep 17 00:00:00 2001
> +From: Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com>>
> +Date: Sun, 11 Dec 2016 14:32:00 -0800
> +Subject: [PATCH] Avoid conflicts with integer width macros from TS
> + 18661-1:2014
> +
> +glibc 2.25+ has now defined these macros in <limits.h>
> +https://sourceware.org/git/?p=glibc.git;a=commit;h=5b17fd0da62bf923cb61d1bb7b08cf2e1f1f9c1a <https://sourceware.org/git/?p=glibc.git;a=commit;h=5b17fd0da62bf923cb61d1bb7b08cf2e1f1f9c1a>
> +
> +Signed-off-by: Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com>>
> +---
> +Upstream-Status: Submitted
> +
> + fontconfig/fontconfig.h | 2 +-
> + src/fcobjs.h | 2 +-
> + src/fcobjshash.gperf | 2 +-
> + src/fcobjshash.h | 2 +-
> + 4 files changed, 4 insertions(+), 4 deletions(-)
> +
> +diff --git a/fontconfig/fontconfig.h b/fontconfig/fontconfig.h
> +index 5c72b22..843c532 100644
> +--- a/fontconfig/fontconfig.h
> ++++ b/fontconfig/fontconfig.h
> +@@ -128,7 +128,7 @@ typedef int FcBool;
> + #define FC_USER_CACHE_FILE ".fonts.cache-" FC_CACHE_VERSION
> +
> + /* Adjust outline rasterizer */
> +-#define FC_CHAR_WIDTH "charwidth" /* Int */
> ++#define FC_CHARWIDTH "charwidth" /* Int */
> + #define FC_CHAR_HEIGHT "charheight"/* Int */
> + #define FC_MATRIX "matrix" /* FcMatrix */
> +
> +diff --git a/src/fcobjs.h b/src/fcobjs.h
> +index 1fc4f65..d27864b 100644
> +--- a/src/fcobjs.h
> ++++ b/src/fcobjs.h
> +@@ -51,7 +51,7 @@ FC_OBJECT (DPI, FcTypeDouble, NULL)
> + FC_OBJECT (RGBA, FcTypeInteger, NULL)
> + FC_OBJECT (SCALE, FcTypeDouble, NULL)
> + FC_OBJECT (MINSPACE, FcTypeBool, NULL)
> +-FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL)
> ++FC_OBJECT (CHARWIDTH, FcTypeInteger, NULL)
> + FC_OBJECT (CHAR_HEIGHT, FcTypeInteger, NULL)
> + FC_OBJECT (MATRIX, FcTypeMatrix, NULL)
> + FC_OBJECT (CHARSET, FcTypeCharSet, FcCompareCharSet)
> +diff --git a/src/fcobjshash.gperf b/src/fcobjshash.gperf
> +index 80a0237..eb4ad84 100644
> +--- a/src/fcobjshash.gperf
> ++++ b/src/fcobjshash.gperf
> +@@ -44,7 +44,7 @@ int id;
> + "rgba",FC_RGBA_OBJECT
> + "scale",FC_SCALE_OBJECT
> + "minspace",FC_MINSPACE_OBJECT
> +-"charwidth",FC_CHAR_WIDTH_OBJECT
> ++"charwidth",FC_CHARWIDTH_OBJECT
> + "charheight",FC_CHAR_HEIGHT_OBJECT
> + "matrix",FC_MATRIX_OBJECT
> + "charset",FC_CHARSET_OBJECT
> +diff --git a/src/fcobjshash.h b/src/fcobjshash.h
> +index 5a4d1ea..4e66bb0 100644
> +--- a/src/fcobjshash.h
> ++++ b/src/fcobjshash.h
> +@@ -284,7 +284,7 @@ FcObjectTypeLookup (register const char *str, register unsigned int len)
> + {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str43,FC_CHARSET_OBJECT},
> + {-1},
> + #line 47 "fcobjshash.gperf"
> +- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str45,FC_CHAR_WIDTH_OBJECT},
> ++ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str45,FC_CHARWIDTH_OBJECT},
> + #line 48 "fcobjshash.gperf"
> + {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str46,FC_CHAR_HEIGHT_OBJECT},
> + #line 55 "fcobjshash.gperf"
> +--
> +2.10.2
> +
> diff --git a/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb <http://fontconfig_2.12.1.bb/> b/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb <http://fontconfig_2.12.1.bb/>
> index 115f558..8616154 100644
> --- a/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb <http://fontconfig_2.12.1.bb/>
> +++ b/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb <http://fontconfig_2.12.1.bb/>
> @@ -22,6 +22,7 @@ DEPENDS = "expat freetype zlib"
>
> SRC_URI = "http://fontconfig.org/release/fontconfig-${PV}.tar.gz <http://fontconfig.org/release/fontconfig-${PV}.tar.gz> \
> file://revert-static-pkgconfig.patch \
> + file://0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch \
> "
> SRC_URI[md5sum] = "ce55e525c37147eee14cc2de6cc09f6c"
> SRC_URI[sha256sum] = "a9f42d03949f948a3a4f762287dbc16e53a927c91a07ee64207ebd90a9e5e292"
> --
> 2.10.2
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org <mailto:Openembedded-core@lists.openembedded.org>
> http://lists.openembedded.org/mailman/listinfo/openembedded-core <http://lists.openembedded.org/mailman/listinfo/openembedded-core>
>
[-- Attachment #2: Type: text/html, Size: 12081 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: [PATCH] fontconfig: Fix namespace conflicts with glibc
2016-12-12 17:47 ` Khem Raj
@ 2016-12-15 0:10 ` Khem Raj
0 siblings, 0 replies; 4+ messages in thread
From: Khem Raj @ 2016-12-15 0:10 UTC (permalink / raw)
To: Burton, Ross; +Cc: OE-core
On Mon, Dec 12, 2016 at 9:47 AM, Khem Raj <raj.khem@gmail.com> wrote:
>
> On Dec 12, 2016, at 4:45 AM, Burton, Ross <ross.burton@intel.com> wrote:
>
> Has fallout, for example libxft:
>
> | ../../libXft-2.3.2/src/xftfreetype.c:675:43: error: ‘FC_CHAR_WIDTH’
> undeclared (first use in this function)
>
>
> OK, I wasn’t aware this is exported API, I will tweak the patch accordingly.
>
sent a v2
> Ross
>
> On 11 December 2016 at 23:07, Khem Raj <raj.khem@gmail.com> wrote:
>>
>> glibc 2.25 will come with TS 18661-1 macro definitions in limits.h which
>> ends with following errors
>>
>> | ../../fontconfig-2.12.1/src/fcmatch.c:324:63: error:
>> 'PRI_CHAR_WIDTH_STRONG' undeclared here (not in a function)
>> | #define FC_OBJECT(NAME, Type, Cmp) { FC_##NAME##_OBJECT, Cmp,
>> PRI_##NAME##_STRONG, PRI_##NAME##_WEAK },
>> | ^
>> | ../../fontconfig-2.12.1/src/fcobjs.h:54:1: note: in expansion of macro
>> 'FC_OBJECT'
>> | FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL)
>> | ^~~~~~~~~
>> | ../../fontconfig-2.12.1/src/fcmatch.c:324:84: error:
>> 'PRI_CHAR_WIDTH_WEAK' undeclared here (not in a function)
>> | #define FC_OBJECT(NAME, Type, Cmp) { FC_##NAME##_OBJECT, Cmp,
>> PRI_##NAME##_STRONG, PRI_##NAME##_WEAK },
>> |
>> ^
>> | ../../fontconfig-2.12.1/src/fcobjs.h:54:1: note: in expansion of macro
>> 'FC_OBJECT'
>> | FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL)
>> | ^~~~~~~~~
>> | make[3]: *** [Makefile:632: fcmatch.lo] Error 1
>>
>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>> ---
>> ...icts-with-integer-width-macros-from-TS-18.patch | 74
>> ++++++++++++++++++++++
>> .../fontconfig/fontconfig_2.12.1.bb | 1 +
>> 2 files changed, 75 insertions(+)
>> create mode 100644
>> meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch
>>
>> diff --git
>> a/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch
>> b/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch
>> new file mode 100644
>> index 0000000..326ff3c
>> --- /dev/null
>> +++
>> b/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch
>> @@ -0,0 +1,74 @@
>> +From 20cddc824c6501c2082cac41b162c34cd5fcc530 Mon Sep 17 00:00:00 2001
>> +From: Khem Raj <raj.khem@gmail.com>
>> +Date: Sun, 11 Dec 2016 14:32:00 -0800
>> +Subject: [PATCH] Avoid conflicts with integer width macros from TS
>> + 18661-1:2014
>> +
>> +glibc 2.25+ has now defined these macros in <limits.h>
>>
>> +https://sourceware.org/git/?p=glibc.git;a=commit;h=5b17fd0da62bf923cb61d1bb7b08cf2e1f1f9c1a
>> +
>> +Signed-off-by: Khem Raj <raj.khem@gmail.com>
>> +---
>> +Upstream-Status: Submitted
>> +
>> + fontconfig/fontconfig.h | 2 +-
>> + src/fcobjs.h | 2 +-
>> + src/fcobjshash.gperf | 2 +-
>> + src/fcobjshash.h | 2 +-
>> + 4 files changed, 4 insertions(+), 4 deletions(-)
>> +
>> +diff --git a/fontconfig/fontconfig.h b/fontconfig/fontconfig.h
>> +index 5c72b22..843c532 100644
>> +--- a/fontconfig/fontconfig.h
>> ++++ b/fontconfig/fontconfig.h
>> +@@ -128,7 +128,7 @@ typedef int FcBool;
>> + #define FC_USER_CACHE_FILE ".fonts.cache-" FC_CACHE_VERSION
>> +
>> + /* Adjust outline rasterizer */
>> +-#define FC_CHAR_WIDTH "charwidth" /* Int */
>> ++#define FC_CHARWIDTH "charwidth" /* Int */
>> + #define FC_CHAR_HEIGHT "charheight"/* Int */
>> + #define FC_MATRIX "matrix" /* FcMatrix */
>> +
>> +diff --git a/src/fcobjs.h b/src/fcobjs.h
>> +index 1fc4f65..d27864b 100644
>> +--- a/src/fcobjs.h
>> ++++ b/src/fcobjs.h
>> +@@ -51,7 +51,7 @@ FC_OBJECT (DPI, FcTypeDouble,
>> NULL)
>> + FC_OBJECT (RGBA, FcTypeInteger, NULL)
>> + FC_OBJECT (SCALE, FcTypeDouble, NULL)
>> + FC_OBJECT (MINSPACE, FcTypeBool, NULL)
>> +-FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL)
>> ++FC_OBJECT (CHARWIDTH, FcTypeInteger, NULL)
>> + FC_OBJECT (CHAR_HEIGHT, FcTypeInteger, NULL)
>> + FC_OBJECT (MATRIX, FcTypeMatrix, NULL)
>> + FC_OBJECT (CHARSET, FcTypeCharSet, FcCompareCharSet)
>> +diff --git a/src/fcobjshash.gperf b/src/fcobjshash.gperf
>> +index 80a0237..eb4ad84 100644
>> +--- a/src/fcobjshash.gperf
>> ++++ b/src/fcobjshash.gperf
>> +@@ -44,7 +44,7 @@ int id;
>> + "rgba",FC_RGBA_OBJECT
>> + "scale",FC_SCALE_OBJECT
>> + "minspace",FC_MINSPACE_OBJECT
>> +-"charwidth",FC_CHAR_WIDTH_OBJECT
>> ++"charwidth",FC_CHARWIDTH_OBJECT
>> + "charheight",FC_CHAR_HEIGHT_OBJECT
>> + "matrix",FC_MATRIX_OBJECT
>> + "charset",FC_CHARSET_OBJECT
>> +diff --git a/src/fcobjshash.h b/src/fcobjshash.h
>> +index 5a4d1ea..4e66bb0 100644
>> +--- a/src/fcobjshash.h
>> ++++ b/src/fcobjshash.h
>> +@@ -284,7 +284,7 @@ FcObjectTypeLookup (register const char *str,
>> register unsigned int len)
>> + {(int)(long)&((struct FcObjectTypeNamePool_t
>> *)0)->FcObjectTypeNamePool_str43,FC_CHARSET_OBJECT},
>> + {-1},
>> + #line 47 "fcobjshash.gperf"
>> +- {(int)(long)&((struct FcObjectTypeNamePool_t
>> *)0)->FcObjectTypeNamePool_str45,FC_CHAR_WIDTH_OBJECT},
>> ++ {(int)(long)&((struct FcObjectTypeNamePool_t
>> *)0)->FcObjectTypeNamePool_str45,FC_CHARWIDTH_OBJECT},
>> + #line 48 "fcobjshash.gperf"
>> + {(int)(long)&((struct FcObjectTypeNamePool_t
>> *)0)->FcObjectTypeNamePool_str46,FC_CHAR_HEIGHT_OBJECT},
>> + #line 55 "fcobjshash.gperf"
>> +--
>> +2.10.2
>> +
>> diff --git a/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb
>> b/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb
>> index 115f558..8616154 100644
>> --- a/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb
>> +++ b/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb
>> @@ -22,6 +22,7 @@ DEPENDS = "expat freetype zlib"
>>
>> SRC_URI = "http://fontconfig.org/release/fontconfig-${PV}.tar.gz \
>> file://revert-static-pkgconfig.patch \
>> +
>> file://0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch \
>> "
>> SRC_URI[md5sum] = "ce55e525c37147eee14cc2de6cc09f6c"
>> SRC_URI[sha256sum] =
>> "a9f42d03949f948a3a4f762287dbc16e53a927c91a07ee64207ebd90a9e5e292"
>> --
>> 2.10.2
>>
>> --
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2016-12-15 0:10 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-12-11 23:07 [PATCH] fontconfig: Fix namespace conflicts with glibc Khem Raj
2016-12-12 12:45 ` Burton, Ross
2016-12-12 17:47 ` Khem Raj
2016-12-15 0:10 ` Khem Raj
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox