commit:     fa541de9b7eca0810b866c2127b01af77dfae13f
Author:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
AuthorDate: Sat Aug  8 05:54:08 2015 +0000
Commit:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
CommitDate: Sat Aug  8 05:54:08 2015 +0000
URL:        https://gitweb.gentoo.org/proj/grs.git/commit/?id=fa541de9

media-gfx/fontforge: add configure.ac patches.

 ...ure.ac-intelligently-check-for-execinfo.h.patch | 58 ++++++++++++++++++++++
 .../0002-configure.ac-check-for-locale_t.patch     | 45 +++++++++++++++++
 2 files changed, 103 insertions(+)

diff --git 
a/core/etc/portage/patches/media-gfx/fontforge/0001-configure.ac-intelligently-check-for-execinfo.h.patch
 
b/core/etc/portage/patches/media-gfx/fontforge/0001-configure.ac-intelligently-check-for-execinfo.h.patch
new file mode 100644
index 0000000..1f9ba81
--- /dev/null
+++ 
b/core/etc/portage/patches/media-gfx/fontforge/0001-configure.ac-intelligently-check-for-execinfo.h.patch
@@ -0,0 +1,58 @@
+From 15f0cb9e59b2fd4112236fc9abbb2bf3a29eca65 Mon Sep 17 00:00:00 2001
+From: "Anthony G. Basile" <bluen...@gentoo.org>
+Date: Thu, 6 Aug 2015 04:11:03 -0400
+Subject: [PATCH 1/2] configure.ac: intelligently check for <execinfo.h>
+
+Currently, it is assume that only MINGW32 and CYGWIN on windows do
+not provide backtrace.  However, other libc's in the Linux world
+do not provide it either.  uClibc only provides it if configured
+to do so, and musl doesn't provide it at all.  As a result, the
+build fails on those systems.
+
+This patch checks for <execinfo.h> in configure.ac and skip its
+inclusion in fontforge/cvundoes.c if it is not available.
+
+Signed-off-by: Anthony G. Basile <bluen...@gentoo.org>
+---
+ configure.ac         | 1 +
+ fontforge/cvundoes.c | 5 +++--
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index e998a6f..ebeaf85 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -377,6 +377,7 @@ AC_CHECK_HEADERS([strings.h sys/ioctl.h sys/socket.h 
sys/time.h unistd.h])
+ if test x"${i_do_want_iconv}" = xyes; then
+    AC_CHECK_HEADERS([iconv.h])
+ fi
++AC_CHECK_HEADERS([execinfo.h])
+ gl_INIT
+ 
+ #--------------------------------------------------------------------------
+diff --git a/fontforge/cvundoes.c b/fontforge/cvundoes.c
+index 5d84830..72a5b96 100644
+--- a/fontforge/cvundoes.c
++++ b/fontforge/cvundoes.c
+@@ -24,6 +24,7 @@
+  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+  * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+  */
++#include "config.h"
+ #include "fontforgevw.h"
+ #include "views.h"
+ #include <math.h>
+@@ -33,8 +34,8 @@
+ #include "inc/gfile.h"
+ #include "psfont.h"
+ 
+-#if defined(__MINGW32__)||defined(__CYGWIN__)
+-// no backtrace on windows yet
++#ifndef HAVE_EXECINFO_H
++// no backtrace available
+ #else
+     #include <execinfo.h>
+ #endif
+-- 
+2.4.6
+

diff --git 
a/core/etc/portage/patches/media-gfx/fontforge/0002-configure.ac-check-for-locale_t.patch
 
b/core/etc/portage/patches/media-gfx/fontforge/0002-configure.ac-check-for-locale_t.patch
new file mode 100644
index 0000000..0aea86a
--- /dev/null
+++ 
b/core/etc/portage/patches/media-gfx/fontforge/0002-configure.ac-check-for-locale_t.patch
@@ -0,0 +1,45 @@
+From 734217599420766f9927f4d312577911dbf56791 Mon Sep 17 00:00:00 2001
+From: "Anthony G. Basile" <bluen...@gentoo.org>
+Date: Sat, 8 Aug 2015 01:17:48 -0400
+Subject: [PATCH 2/2] configure.ac: check for locale_t
+
+fontforge/splinefont.h uses a "bad locale hack" for _WIN32 systems
+where locale_t is not provided.  However, there are other situations
+where locale_t may not be available.  For example, uClibc can be
+configured to not provide locales.  A better approach is to check
+for locale_t in configure.ac and enable the hack accordingly.
+
+Signed-off-by: Anthony G. Basile <bluen...@gentoo.org>
+---
+ configure.ac           | 1 +
+ fontforge/splinefont.h | 2 +-
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index ebeaf85..466214d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -387,6 +387,7 @@ gl_INIT
+ AC_C_BIGENDIAN
+ AC_TYPE_PID_T
+ AX_PTHREAD
++AC_CHECK_TYPES([locale_t], [], [], [[#include <locale.h>]])
+ 
+ #--------------------------------------------------------------------------
+ # Check to see if "this" compiler can use these flags, errors, or warnings.
+diff --git a/fontforge/splinefont.h b/fontforge/splinefont.h
+index 973f343..4f1de12 100644
+--- a/fontforge/splinefont.h
++++ b/fontforge/splinefont.h
+@@ -3548,7 +3548,7 @@ char * delimit_null(const char * input, char delimiter);
+ 
+ #include "ustring.h"
+ 
+-#ifdef _WIN32
++#ifndef HAVE_LOCALE_T
+ #define BAD_LOCALE_HACK
+ typedef char* locale_t;
+ #define LC_GLOBAL_LOCALE ((locale_t)-1)
+-- 
+2.4.6
+

Reply via email to