From 0aa5d541ef757cb0a7a6226031a74c22fce1de06 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Sat, 27 Mar 2021 18:12:55 -0700 Subject: [PATCH] fontconfig: compile with meson Faster compilation. Backport upstream patch fixing cross compilation. Signed-off-by: Rosen Penev --- utils/fontconfig/Makefile | 24 +++++++------- ...-sysconfdir-when-installing-symlinks.patch | 32 +++++++++++++++++++ utils/fontconfig/patches/020-distutils.patch | 11 +++++++ 3 files changed, 54 insertions(+), 13 deletions(-) create mode 100644 utils/fontconfig/patches/010-Handle-absolute-sysconfdir-when-installing-symlinks.patch create mode 100644 utils/fontconfig/patches/020-distutils.patch diff --git a/utils/fontconfig/Makefile b/utils/fontconfig/Makefile index b842b837f..4ef73c5a1 100644 --- a/utils/fontconfig/Makefile +++ b/utils/fontconfig/Makefile @@ -9,20 +9,22 @@ include $(TOPDIR)/rules.mk PKG_NAME:=fontconfig PKG_VERSION:=2.13.93 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://fontconfig.org/release/ PKG_HASH:=ea968631eadc5739bc7c8856cef5c77da812d1f67b763f5e51b57b8026c1a0a0 +PKG_MAINTAINER:= +PKG_LICENSE:= +PKG_LICENSE_FILES:= PKG_CPE_ID:=cpe:/a:fontconfig_project:fontconfig -PKG_FIXUP:=libtool PKG_INSTALL:=1 -PKG_BUILD_PARALLEL:=1 PKG_BUILD_DEPENDS:=gperf/host include $(INCLUDE_DIR)/package.mk +include ../../devel/meson/meson.mk define Package/fontconfig SECTION:=xorg-util @@ -33,16 +35,12 @@ define Package/fontconfig URL:=http://fontconfig.org/ endef -#TODO: better put cache on persistent storage for faster boot time? -CONFIGURE_ARGS+= \ - --with-cache-dir=/tmp/fontconfig/cache \ - --with-arch=$(ARCH) \ - --disable-iconv \ - --disable-libxml2 \ - --disable-docs - -CONFIGURE_VARS+= \ - ac_cv_prog_HASDOCBOOK=no \ +MESON_ARGS += \ + -Ddoc=disabled \ + -Ddoc-txt=disabled \ + -Dnls=disabled \ + -Dtests=disabled \ + -Dtools=enabled define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include diff --git a/utils/fontconfig/patches/010-Handle-absolute-sysconfdir-when-installing-symlinks.patch b/utils/fontconfig/patches/010-Handle-absolute-sysconfdir-when-installing-symlinks.patch new file mode 100644 index 000000000..e937c9510 --- /dev/null +++ b/utils/fontconfig/patches/010-Handle-absolute-sysconfdir-when-installing-symlinks.patch @@ -0,0 +1,32 @@ +From 4e42925096e97f4a6c9d09f475de7eb54a226668 Mon Sep 17 00:00:00 2001 +From: Heiko Becker +Date: Thu, 3 Dec 2020 21:04:26 +0100 +Subject: [PATCH] Handle absolute sysconfdir when installing symlinks + +sysconfdir defaults to /etc when the prefix is set to /usr. But joining +MESON_INSTALL_DESTDIR_PREFIX and sysconfdir when the latter is an +absoulte path, results in sysconfdir only. Which might lead to an error +during install because /etc/fonts/conf.d/ might already exist from an +pre-existing fontconfig installation. +--- + conf.d/link_confs.py | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) + +--- a/conf.d/link_confs.py ++++ b/conf.d/link_confs.py +@@ -11,7 +11,14 @@ if __name__=='__main__': + parser.add_argument('links', nargs='+') + args = parser.parse_args() + +- confpath = os.path.join(os.environ['MESON_INSTALL_DESTDIR_PREFIX'], args.confpath) ++ if os.path.isabs(args.confpath): ++ destdir = os.environ.get('DESTDIR') ++ if destdir: ++ confpath = os.path.join(destdir, args.confpath[1:]) ++ else: ++ confpath = args.confpath ++ else: ++ confpath = os.path.join(os.environ['MESON_INSTALL_DESTDIR_PREFIX'], args.confpath) + + if not os.path.exists(confpath): + os.makedirs(confpath) diff --git a/utils/fontconfig/patches/020-distutils.patch b/utils/fontconfig/patches/020-distutils.patch new file mode 100644 index 000000000..759b59a78 --- /dev/null +++ b/utils/fontconfig/patches/020-distutils.patch @@ -0,0 +1,11 @@ +--- a/meson.build ++++ b/meson.build +@@ -38,7 +38,7 @@ expat_dep = dependency('expat', + + i18n = import('i18n') + pkgmod = import('pkgconfig') +-python3 = import('python').find_installation() ++python3 = 'python3' + + check_headers = [ + ['dirent.h'],