gnu: m17n-lib: Fix cross-compile.
* gnu/packages/emacs.scm (m17n-lib) [source]: Add m17n-lib-1.8.0-use-pkg-config-for-freetype.patch. [native-inputs]: When cross-compile add pkg-config, libtool, gettext-minimal, autoconf, automake. [arguments]: When cross-compile, add phase to fix rpl_malloc undefined references. * gnu/packages/patches/m17n-lib-1.8.0-use-pkg-config-for-freetype.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
This commit is contained in:
		
							parent
							
								
									bf2c66b44e
								
							
						
					
					
						commit
						84a70d7c15
					
				
					 3 changed files with 150 additions and 2 deletions
				
			
		| 
						 | 
					@ -56,6 +56,7 @@
 | 
				
			||||||
# Copyright © 2022 Alex Griffin <a@ajgrf.com>
 | 
					# Copyright © 2022 Alex Griffin <a@ajgrf.com>
 | 
				
			||||||
# Copyright © 2022 ( <paren@disroot.org>
 | 
					# Copyright © 2022 ( <paren@disroot.org>
 | 
				
			||||||
# Copyright © 2022 jgart <jgart@dismail.de>
 | 
					# Copyright © 2022 jgart <jgart@dismail.de>
 | 
				
			||||||
 | 
					# Copyright © 2023 Zheng Junjie <873216071@qq.com>
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is part of GNU Guix.
 | 
					# This file is part of GNU Guix.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -1565,6 +1566,7 @@ dist_patch_DATA =						\
 | 
				
			||||||
  %D%/packages/patches/musl-cross-locale.patch			\
 | 
					  %D%/packages/patches/musl-cross-locale.patch			\
 | 
				
			||||||
  %D%/packages/patches/mutt-store-references.patch		\
 | 
					  %D%/packages/patches/mutt-store-references.patch		\
 | 
				
			||||||
  %D%/packages/patches/m4-gnulib-libio.patch			\
 | 
					  %D%/packages/patches/m4-gnulib-libio.patch			\
 | 
				
			||||||
 | 
					  %D%/packages/patches/m17n-lib-1.8.0-use-pkg-config-for-freetype.patch	\
 | 
				
			||||||
  %D%/packages/patches/nautilus-extension-search-path.patch	\
 | 
					  %D%/packages/patches/nautilus-extension-search-path.patch	\
 | 
				
			||||||
  %D%/packages/patches/ncompress-fix-softlinks.patch		\
 | 
					  %D%/packages/patches/ncompress-fix-softlinks.patch		\
 | 
				
			||||||
  %D%/packages/patches/ncftp-reproducible.patch			\
 | 
					  %D%/packages/patches/ncftp-reproducible.patch			\
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -664,8 +664,16 @@ This package contains the library database.")
 | 
				
			||||||
                           version ".tar.gz"))
 | 
					                           version ".tar.gz"))
 | 
				
			||||||
       (sha256
 | 
					       (sha256
 | 
				
			||||||
        (base32
 | 
					        (base32
 | 
				
			||||||
         "0jp61y09xqj10mclpip48qlfhniw8gwy8b28cbzxy8hq8pkwmfkq"))))
 | 
					         "0jp61y09xqj10mclpip48qlfhniw8gwy8b28cbzxy8hq8pkwmfkq"))
 | 
				
			||||||
 | 
					       (patches (search-patches "m17n-lib-1.8.0-use-pkg-config-for-freetype.patch"))))
 | 
				
			||||||
    (build-system gnu-build-system)
 | 
					    (build-system gnu-build-system)
 | 
				
			||||||
 | 
					    (native-inputs
 | 
				
			||||||
 | 
					     (if (%current-target-system)
 | 
				
			||||||
 | 
					         (list pkg-config
 | 
				
			||||||
 | 
					               libtool
 | 
				
			||||||
 | 
					               gettext-minimal
 | 
				
			||||||
 | 
					               autoconf automake)
 | 
				
			||||||
 | 
					         '()))
 | 
				
			||||||
    (inputs
 | 
					    (inputs
 | 
				
			||||||
     (list fribidi
 | 
					     (list fribidi
 | 
				
			||||||
           gd
 | 
					           gd
 | 
				
			||||||
| 
						 | 
					@ -674,7 +682,20 @@ This package contains the library database.")
 | 
				
			||||||
           libxml2
 | 
					           libxml2
 | 
				
			||||||
           m17n-db))
 | 
					           m17n-db))
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:parallel-build? #f))
 | 
					     `(#:parallel-build? #f
 | 
				
			||||||
 | 
					       ,@(if (%current-target-system)
 | 
				
			||||||
 | 
					             '(#:phases
 | 
				
			||||||
 | 
					               (modify-phases %standard-phases
 | 
				
			||||||
 | 
					                 ;; AC_FUNC_MALLOC and AC_FUNC_REALLOC usually unneeded
 | 
				
			||||||
 | 
					                 ;; see https://lists.gnu.org/archive/html/autoconf/2003-02/msg00017.html
 | 
				
			||||||
 | 
					                 (add-after 'unpack 'fix-rpl_malloc
 | 
				
			||||||
 | 
					                   (lambda _
 | 
				
			||||||
 | 
					                     (substitute* "configure.ac"
 | 
				
			||||||
 | 
					                       (("AC_FUNC_MALLOC") "")
 | 
				
			||||||
 | 
					                       (("AC_FUNC_REALLOC") ""))
 | 
				
			||||||
 | 
					                     ;; let bootstrap phase run.
 | 
				
			||||||
 | 
					                     (delete-file "./configure")))))
 | 
				
			||||||
 | 
					             '())))
 | 
				
			||||||
    ;; With `guix lint' the home-page URI returns a small page saying
 | 
					    ;; With `guix lint' the home-page URI returns a small page saying
 | 
				
			||||||
    ;; that your browser does not handle frames. This triggers the "URI
 | 
					    ;; that your browser does not handle frames. This triggers the "URI
 | 
				
			||||||
    ;; returns suspiciously small file" warning.
 | 
					    ;; returns suspiciously small file" warning.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,125 @@
 | 
				
			||||||
 | 
					backport from upstream.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					From b468fc95150b7ca0e766e7c385a60879e65322d4 Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: "K. Handa" <handa@gnu.org>
 | 
				
			||||||
 | 
					Date: Tue, 23 Oct 2018 00:05:46 +0900
 | 
				
			||||||
 | 
					Subject: Use pkg-config for freetype, use %p to print a pointer
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 ChangeLog     |  5 +++++
 | 
				
			||||||
 | 
					 configure.ac  | 48 +++++++++++++++++++-----------------------------
 | 
				
			||||||
 | 
					 src/ChangeLog |  5 +++++
 | 
				
			||||||
 | 
					 src/chartab.c |  4 ++--
 | 
				
			||||||
 | 
					 4 files changed, 31 insertions(+), 31 deletions(-)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/ChangeLog b/ChangeLog
 | 
				
			||||||
 | 
					index b069d89..9dfc0b0 100644
 | 
				
			||||||
 | 
					--- a/ChangeLog
 | 
				
			||||||
 | 
					+++ b/ChangeLog
 | 
				
			||||||
 | 
					@@ -1,3 +1,8 @@
 | 
				
			||||||
 | 
					+2018-10-22  K. Handa  <handa@gnu.org>
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	* configure.ac: Do not use the program freetype-config, use
 | 
				
			||||||
 | 
					+	PKG_CHECK_MODULES for checking freetype2.
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 2018-02-08  K. Handa  <handa@gnu.org>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 	Version 1.8.0 released.
 | 
				
			||||||
 | 
					diff --git a/configure.ac b/configure.ac
 | 
				
			||||||
 | 
					index 7f8b08e..3516bad 100644
 | 
				
			||||||
 | 
					--- a/configure.ac
 | 
				
			||||||
 | 
					+++ b/configure.ac
 | 
				
			||||||
 | 
					@@ -204,36 +204,26 @@ fi
 | 
				
			||||||
 | 
					 AC_SUBST(OTF_LD_FLAGS)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 dnl Check for Freetype2 usability.
 | 
				
			||||||
 | 
					-AC_CHECK_PROG(HAVE_FREETYPE_CONFIG, freetype-config, yes)
 | 
				
			||||||
 | 
					-if test "x$HAVE_FREETYPE_CONFIG" = "xyes"; then
 | 
				
			||||||
 | 
					-  FREETYPE_INC=`freetype-config --cflags`
 | 
				
			||||||
 | 
					-  save_CPPFLAGS="$CPPFLAGS"
 | 
				
			||||||
 | 
					-  CPPFLAGS="$CPPFLAGS $FREETYPE_INC"
 | 
				
			||||||
 | 
					-  AC_CHECK_HEADER(ft2build.h, HAVE_FREETYPE=yes,
 | 
				
			||||||
 | 
					-  			      HAVE_FREETYPE=no CPPFLAGS="$save_CPPFLAGS")
 | 
				
			||||||
 | 
					-  if test "x$HAVE_FREETYPE" = "xyes" ; then
 | 
				
			||||||
 | 
					-    save_LIBS="$LIBS"
 | 
				
			||||||
 | 
					-    LIBS="$LIBS `freetype-config --libs`"
 | 
				
			||||||
 | 
					-    AC_CHECK_LIB(freetype, FT_Init_FreeType, HAVE_FREETYPE=yes,
 | 
				
			||||||
 | 
					-    			   		     HAVE_FREETYPE=no)
 | 
				
			||||||
 | 
					-    LIBS="$save_LIBS"
 | 
				
			||||||
 | 
					-    if test "x$HAVE_FREETYPE" = "xyes"; then
 | 
				
			||||||
 | 
					-      FREETYPE_LD_FLAGS=`freetype-config --libs`
 | 
				
			||||||
 | 
					-      AC_DEFINE(HAVE_FREETYPE, 1, 
 | 
				
			||||||
 | 
					-		[Define to 1 if you have FreeType library and header file.])
 | 
				
			||||||
 | 
					-      M17N_EXT_LIBS="$M17N_EXT_LIBS freetype"
 | 
				
			||||||
 | 
					-      AC_CHECK_HEADER(freetype/ftbdf.h, HAVE_FTBDF_H=yes, HAVE_FTBDF_H=no,
 | 
				
			||||||
 | 
					-		      [#include <ft2build.h>
 | 
				
			||||||
 | 
					+PKG_CHECK_MODULES([FREETYPE], [freetype2], [HAVE_FREETYPE=yes],
 | 
				
			||||||
 | 
					+                                           [HAVE_FREETYPE=no])
 | 
				
			||||||
 | 
					+AS_IF([test "x$HAVE_FREETYPE" = "xyes"],
 | 
				
			||||||
 | 
					+  [CPPFLAGS="$CPPFLAGS $FREETYPE_CFLAGS";
 | 
				
			||||||
 | 
					+   FREETYPE_LD_FLAGS=FREETYPE_LIBS;
 | 
				
			||||||
 | 
					+   AC_DEFINE([HAVE_FREETYPE], [1],
 | 
				
			||||||
 | 
					+             [Define to 1 if you have FreeType library and header file.])
 | 
				
			||||||
 | 
					+   M17N_EXT_LIBS="$M17N_EXT_LIBS freetype";
 | 
				
			||||||
 | 
					+   AC_CHECK_HEADER([freetype/ftbdf.h], [HAVE_FTBDF_H=yes], [HAVE_FTBDF_H=no],
 | 
				
			||||||
 | 
					+                   [#include <ft2build.h>
 | 
				
			||||||
 | 
					 #include FT_FREETYPE_H])
 | 
				
			||||||
 | 
					-      if test "x$HAVE_FTBDF_H" = "xyes"; then
 | 
				
			||||||
 | 
					-        AC_DEFINE(HAVE_FTBDF_H, 1,
 | 
				
			||||||
 | 
					-		  [Define to 1 if you have freetype/ftbdf.h.])
 | 
				
			||||||
 | 
					-      fi
 | 
				
			||||||
 | 
					-      CONFIG_FLAGS="$CONFIG_FLAGS -DHAVE_FREETYPE"
 | 
				
			||||||
 | 
					-    fi
 | 
				
			||||||
 | 
					-  fi
 | 
				
			||||||
 | 
					-fi
 | 
				
			||||||
 | 
					-AC_SUBST(FREETYPE_LD_FLAGS)
 | 
				
			||||||
 | 
					+   AS_IF([test "x$HAVE_FTBDF_H" = "xyes"],
 | 
				
			||||||
 | 
					+     [AC_DEFINE([HAVE_FTBDF_H], [1],
 | 
				
			||||||
 | 
					+                [Define to 1 if you have freetype/ftbdf.h.])],
 | 
				
			||||||
 | 
					+     [])
 | 
				
			||||||
 | 
					+   CONFIG_FLAGS="$CONFIG_FLAGS -DHAVE_FREETYPE"
 | 
				
			||||||
 | 
					+  ],
 | 
				
			||||||
 | 
					+  []
 | 
				
			||||||
 | 
					+  )
 | 
				
			||||||
 | 
					+AC_SUBST([FREETYPE_LD_FLAGS])
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 dnl Check for Xft2 usability.
 | 
				
			||||||
 | 
					 save_CPPFLAGS="$CPPFLAGS"
 | 
				
			||||||
 | 
					diff --git a/src/ChangeLog b/src/ChangeLog
 | 
				
			||||||
 | 
					index ee28ea6..8cb91c1 100644
 | 
				
			||||||
 | 
					--- a/src/ChangeLog
 | 
				
			||||||
 | 
					+++ b/src/ChangeLog
 | 
				
			||||||
 | 
					@@ -1,3 +1,8 @@
 | 
				
			||||||
 | 
					+2018-10-22  K. Handa  <handa@gnu.org>
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	* chartab.c (dump_sub_chartab): Use %p directive to print a
 | 
				
			||||||
 | 
					+	pointer value.
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 2018-02-08  K. Handa  <handa@gnu.org>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 	Version 1.8.0 released.
 | 
				
			||||||
 | 
					diff --git a/src/chartab.c b/src/chartab.c
 | 
				
			||||||
 | 
					index d58aa65..8aeb6d7 100644
 | 
				
			||||||
 | 
					--- a/src/chartab.c
 | 
				
			||||||
 | 
					+++ b/src/chartab.c
 | 
				
			||||||
 | 
					@@ -558,7 +558,7 @@ dump_sub_chartab (MSubCharTable *table, void *default_value,
 | 
				
			||||||
 | 
					 	fprintf (mdebug__output, "(default nil)");
 | 
				
			||||||
 | 
					     }
 | 
				
			||||||
 | 
					   else
 | 
				
			||||||
 | 
					-    fprintf (mdebug__output, "(default #x%X)", (unsigned) table->default_value);
 | 
				
			||||||
 | 
					+    fprintf (mdebug__output, "(default #x%p)", table->default_value);
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					   default_value = table->default_value;
 | 
				
			||||||
 | 
					   if (table->contents.tables)
 | 
				
			||||||
 | 
					@@ -589,7 +589,7 @@ dump_sub_chartab (MSubCharTable *table, void *default_value,
 | 
				
			||||||
 | 
					 		  fprintf (mdebug__output, "nil)");
 | 
				
			||||||
 | 
					 	      }
 | 
				
			||||||
 | 
					 	    else
 | 
				
			||||||
 | 
					-	      fprintf (mdebug__output, " #xx%X)", (unsigned) default_value);
 | 
				
			||||||
 | 
					+	      fprintf (mdebug__output, " #x%p)", default_value);
 | 
				
			||||||
 | 
					 	  }
 | 
				
			||||||
 | 
					     }
 | 
				
			||||||
 | 
					   fprintf (mdebug__output, ")");
 | 
				
			||||||
 | 
					-- 
 | 
				
			||||||
 | 
					cgit v1.1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		Reference in a new issue