[Fontconfig] fontconfig: Branch 'master' - 9 commits

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Sat Mar 23 07:34:16 UTC 2019


 .gitlab-ci.yml         |   22 ++++++++++++++++++++++
 autogen.sh             |    2 +-
 configure.ac           |    2 +-
 src/fccache.c          |    8 +++++---
 test/Makefile.am       |    7 ++++++-
 test/run-test.sh       |   12 +++++++++---
 test/test-d1f48f11.c   |   18 ++++++++++++++++++
 test/test-issue107.c   |   18 ++++++++++++++++++
 test/test-issue110.c   |   18 ++++++++++++++++++
 test/wrapper-script.sh |   13 +++++++++++++
 10 files changed, 111 insertions(+), 9 deletions(-)

New commits:
commit 809f040bc367763ceaec69568a867bbef2fee926
Author: Akira TAGOH <akira at tagoh.org>
Date:   Sat Mar 23 07:19:08 2019 +0000

    Don't test bind-mount thing for MinGW

diff --git a/test/run-test.sh b/test/run-test.sh
index 2519846..fdf8d6a 100644
--- a/test/run-test.sh
+++ b/test/run-test.sh
@@ -181,7 +181,7 @@ if cmp out1 out2 > /dev/null ; then : ; else
     exit 1
 fi
 
-if [ x"$BWRAP" != "x" ]; then
+if [ x"$BWRAP" != "x" -a "x$EXEEXT" = "x" ]; then
 dotest "Basic functionality with the bind-mounted cache dir"
 prep
 cp $FONT1 $FONT2 $FONTDIR
commit 4cb490b0b9247b95e78470aa35657bc1ba0f457c
Author: Akira TAGOH <akira at tagoh.org>
Date:   Sat Mar 23 07:05:23 2019 +0000

    Install wine for CI on MinGW

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index c82e93a..0780b2b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -7,7 +7,7 @@ before_script:
   - dnf -y upgrade --disablerepo=rawhide-modular --nogpgcheck fedora-repos fedora-repos-rawhide
   - dnf -y upgrade --disablerepo=rawhide-modular
   - dnf -y install --disablerepo=rawhide-modular --allowerasing --skip-broken @buildsys-build autoconf automake libtool gettext gettext-devel gperf expat-devel freetype-devel libuuid-devel json-c-devel git docbook-utils docbook-utils-pdf bubblewrap
-  - dnf -y install --disablerepo=rawhide-modular --allowerasing --skip-broken mingw64-gettext mingw64-freetype mingw64-expat
+  - dnf -y install --disablerepo=rawhide-modular --allowerasing --skip-broken mingw64-gettext mingw64-freetype mingw64-expat wine
 
 shared-build:
   stage: build
commit 73b300dc7c31dfbb6ec3638fde109033bb9785a4
Author: Akira TAGOH <akira at tagoh.org>
Date:   Sat Mar 23 06:57:19 2019 +0000

    Correct configure option to cross-compile

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 6646122..c82e93a 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -64,7 +64,7 @@ mingw-build:
     - mkdir "$BUILDDIR"
     - cd "$BUILDDIR"
     - eval `rpm --eval %{mingw64_env}`
-    - ../autogen.sh --prefix="$PREFIX" --disable-shared --enable-static
+    - ../autogen.sh --prefix="$PREFIX" --host=x86_64-mingw32 --disable-shared --enable-static
     - make
     - make check
   artifacts:
commit 33b372e20f6f9fd7d41fbb6dded1c703bae22403
Author: Akira TAGOH <akira at tagoh.org>
Date:   Sat Mar 23 06:49:32 2019 +0000

    Update requirement for gettext

diff --git a/configure.ac b/configure.ac
index fb8af46..5eaadb8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -104,7 +104,7 @@ GETTEXT_PACKAGE=$PACKAGE
 AC_SUBST(GETTEXT_PACKAGE)
 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [Gettext package])
 
-AM_GNU_GETTEXT_VERSION([0.19.8])
+AM_GNU_GETTEXT_VERSION([0.19.7])
 AM_GNU_GETTEXT([external])
 
 dnl ==========================================================================
commit 92caab9c769488cce3a720b85e38252f3dadd63c
Author: Akira TAGOH <akira at tagoh.org>
Date:   Sat Mar 23 06:27:39 2019 +0000

    Fix make distcheck error

diff --git a/test/Makefile.am b/test/Makefile.am
index cbbaa03..afdf343 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -133,7 +133,7 @@ TESTS += test-d1f48f11
 endif
 endif
 
-EXTRA_DIST=run-test.sh run-test-conf.sh $(TESTDATA) out.expected-long-family-names out.expected-no-long-family-names
+EXTRA_DIST=run-test.sh run-test-conf.sh $(LOG_COMPILER) $(TESTDATA) out.expected-long-family-names out.expected-no-long-family-names
 
 CLEANFILES=out out1 out2 fonts.conf out.expected
 
commit 10e13fc748aa75a7ba7d67b1cf3baec47bd9cbc8
Author: Akira TAGOH <akira at tagoh.org>
Date:   Fri Mar 22 07:58:04 2019 +0000

    Add build test for MinGW

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index a51273f..6646122 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -7,6 +7,7 @@ before_script:
   - dnf -y upgrade --disablerepo=rawhide-modular --nogpgcheck fedora-repos fedora-repos-rawhide
   - dnf -y upgrade --disablerepo=rawhide-modular
   - dnf -y install --disablerepo=rawhide-modular --allowerasing --skip-broken @buildsys-build autoconf automake libtool gettext gettext-devel gperf expat-devel freetype-devel libuuid-devel json-c-devel git docbook-utils docbook-utils-pdf bubblewrap
+  - dnf -y install --disablerepo=rawhide-modular --allowerasing --skip-broken mingw64-gettext mingw64-freetype mingw64-expat
 
 shared-build:
   stage: build
@@ -53,3 +54,24 @@ static-build:
       - build-*/*.log
       - build-*/test/*.log
       - build-*/test/*.trs
+mingw-build:
+  stage: build
+  script:
+    - export BUILD_ID="fontconfig-$CI_JOB_NAME_$CI_COMMIT_SHA-$CI_JOB_ID"
+    - export PREFIX="$(pwd)/prefix-$BUILD_ID"
+    - export BUILDDIR="$(pwd)/build-$BUILD_ID"
+    - export MAKEFLAGS="-j4"
+    - mkdir "$BUILDDIR"
+    - cd "$BUILDDIR"
+    - eval `rpm --eval %{mingw64_env}`
+    - ../autogen.sh --prefix="$PREFIX" --disable-shared --enable-static
+    - make
+    - make check
+  artifacts:
+    name: fontconfig-$CI_COMMIT_SHA-$CI_JOB_ID
+    when: always
+    paths:
+      - build-*/*.log
+      - build-*/test/*.log
+      - build-*/test/*.trs
+
commit f6810ede6010da394f60e8425030901e235d2a77
Author: Akira TAGOH <akira at tagoh.org>
Date:   Fri Mar 22 07:45:09 2019 +0000

    Fix make check on cross-compiled env

diff --git a/test/Makefile.am b/test/Makefile.am
index 2877a8f..cbbaa03 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -11,6 +11,7 @@ AM_TESTS_ENVIRONMENT= \
 BUILT_SOURCES = $(builddir)/out.expected
 
 SH_LOG_COMPILER = sh
+LOG_COMPILER = ${srcdir}/wrapper-script.sh
 TESTS=run-test.sh
 
 TESTDATA =			\
@@ -75,6 +76,7 @@ endif
 check_PROGRAMS += test-bz106618
 test_bz106618_LDADD = $(top_builddir)/src/libfontconfig.la
 
+if !OS_WIN32
 check_PROGRAMS += test-hash
 test_hash_CFLAGS = -I$(top_builddir) -I$(top_builddir)/src $(UUID_CFLAGS)
 test_hash_LDADD = $(UUID_LIBS)
@@ -91,6 +93,7 @@ test_bz106632_CFLAGS =					\
 	$(NULL)
 test_bz106632_LDADD = $(top_builddir)/src/libfontconfig.la
 TESTS += test-bz106632
+endif
 
 check_PROGRAMS += test-issue107
 test_issue107_LDADD =					\
@@ -99,6 +102,7 @@ test_issue107_LDADD =					\
 TESTS += test-issue107
 
 if !ENABLE_SHARED
+if !OS_WIN32
 check_PROGRAMS += test-issue110
 test_issue110_CFLAGS =					\
 	-I$(top_builddir)				\
@@ -127,6 +131,7 @@ test_d1f48f11_LDADD =					\
 	$(NULL)
 TESTS += test-d1f48f11
 endif
+endif
 
 EXTRA_DIST=run-test.sh run-test-conf.sh $(TESTDATA) out.expected-long-family-names out.expected-no-long-family-names
 
diff --git a/test/run-test.sh b/test/run-test.sh
index ed41456..2519846 100644
--- a/test/run-test.sh
+++ b/test/run-test.sh
@@ -31,11 +31,12 @@ BUILDTESTDIR=${builddir-"$MyPWD"}
 FONTDIR="$MyPWD"/fonts
 CACHEDIR="$MyPWD"/cache.dir
 EXPECTED=${EXPECTED-"out.expected"}
+LOG_COMPILER=${LOG_COMPILER-"$TESTDIR/wrapper-script.sh"}
 
 ECHO=true
 
-FCLIST=../fc-list/fc-list$EXEEXT
-FCCACHE=../fc-cache/fc-cache$EXEEXT
+FCLIST="$LOG_COMPILER ../fc-list/fc-list$EXEEXT"
+FCCACHE="$LOG_COMPILER ../fc-cache/fc-cache$EXEEXT"
 
 which bwrap > /dev/null 2>&1
 if [ $? -eq 0 ]; then
@@ -122,6 +123,7 @@ mkdir $FONTDIR/a
 cp $FONT2 $FONTDIR/a
 check
 
+if [ "x$EXEEXT" = "x" ]; then
 dotest "Re-creating .uuid"
 prep
 cp $FONT1 $FONTDIR
@@ -164,6 +166,7 @@ if [ $n != 1 ]; then
   ls $CACHEDIR
   exit 1
 fi
+fi
 
 dotest "Keep mtime of the font directory"
 prep
@@ -214,6 +217,7 @@ fi
 rm -rf $TESTTMPDIR out1 out2 xxx flist1 flist2 bind-fonts.conf
 fi
 
+if [ "x$EXEEXT" = "x" ]; then
 dotest "sysroot option"
 prep
 mkdir -p $MyPWD/sysroot/$FONTDIR
@@ -239,6 +243,8 @@ fi
 
 rm -rf $MyPWD/sysroot
 
+fi
+
 # dotest "deleting .uuid file on empty dir"
 # prep
 # cp $FONT1 $FONT2 $FONTDIR
diff --git a/test/test-d1f48f11.c b/test/test-d1f48f11.c
index 6c0ecf0..a5ecac9 100644
--- a/test/test-d1f48f11.c
+++ b/test/test-d1f48f11.c
@@ -45,6 +45,24 @@
 #  define FC_DIR_SEPARATOR_S       "/"
 #endif
 
+#ifdef _WIN32
+#include <direct.h>
+#define mkdir(path,mode) _mkdir(path)
+
+int
+setenv(const char *name, const char *value, int o)
+{
+    size_t len = strlen(name) + strlen(value) + 1;
+    char *s = malloc(len+1);
+    int ret;
+
+    snprintf(s, len, "%s=%s", name, value);
+    ret = _putenv(s);
+    free(s);
+    return ret;
+}
+#endif
+
 extern FcChar8 *FcConfigRealFilename (FcConfig *, FcChar8 *);
 extern FcChar8 *FcStrCanonFilename (const FcChar8 *);
 
diff --git a/test/test-issue107.c b/test/test-issue107.c
index 7f4bfb0..eeb3d68 100644
--- a/test/test-issue107.c
+++ b/test/test-issue107.c
@@ -45,6 +45,24 @@
 #  define FC_DIR_SEPARATOR_S       "/"
 #endif
 
+#ifdef _WIN32
+#include <direct.h>
+#define mkdir(path,mode) _mkdir(path)
+
+int
+setenv(const char *name, const char *value, int o)
+{
+    size_t len = strlen(name) + strlen(value) + 1;
+    char *s = malloc(len+1);
+    int ret;
+
+    snprintf(s, len, "%s=%s", name, value);
+    ret = _putenv(s);
+    free(s);
+    return ret;
+}
+#endif
+
 extern FcChar8 *FcConfigRealFilename (FcConfig *, FcChar8 *);
 
 #ifdef HAVE_MKDTEMP
diff --git a/test/test-issue110.c b/test/test-issue110.c
index 28a3bd2..0ab40e3 100644
--- a/test/test-issue110.c
+++ b/test/test-issue110.c
@@ -45,6 +45,24 @@
 #  define FC_DIR_SEPARATOR_S       "/"
 #endif
 
+#ifdef _WIN32
+#include <direct.h>
+#define mkdir(path,mode) _mkdir(path)
+
+int
+setenv(const char *name, const char *value, int o)
+{
+    size_t len = strlen(name) + strlen(value) + 1;
+    char *s = malloc(len+1);
+    int ret;
+
+    snprintf(s, len, "%s=%s", name, value);
+    ret = _putenv(s);
+    free(s);
+    return ret;
+}
+#endif
+
 extern FcChar8 *FcConfigRealFilename (FcConfig *, FcChar8 *);
 
 #ifdef HAVE_MKDTEMP
diff --git a/test/wrapper-script.sh b/test/wrapper-script.sh
new file mode 100755
index 0000000..4138e4b
--- /dev/null
+++ b/test/wrapper-script.sh
@@ -0,0 +1,13 @@
+#! /bin/bash
+
+case "$1" in
+  *.exe)
+    fccwd=`pwd`
+    cd $(IFS=:;for i in $PATH; do echo $i|grep mingw> /dev/null; [ $? -eq 0 ] && echo $i; done)
+    /usr/bin/env wine $fccwd/$@
+    ;;
+  *)
+    $@
+    ;;
+esac
+
commit 98099ffc9f1c3fd195075d5d48617ccb73940470
Author: Akira TAGOH <akira at tagoh.org>
Date:   Fri Mar 22 07:41:32 2019 +0000

    Ifdef'ed unnecessary code for Win32
    
    Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/147

diff --git a/src/fccache.c b/src/fccache.c
index ac46ee8..03b4f38 100644
--- a/src/fccache.c
+++ b/src/fccache.c
@@ -51,10 +51,10 @@ FcDirCacheCreateUUID (FcChar8  *dir,
 		      FcBool    force,
 		      FcConfig *config)
 {
-    const FcChar8 *sysroot = FcConfigGetSysRoot (config);
-    FcChar8 *target;
     FcBool ret = FcTrue;
 #ifndef _WIN32
+    const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+    FcChar8 *target;
     FcChar8 *uuidname;
 
     if (sysroot)
@@ -154,9 +154,10 @@ FcBool
 FcDirCacheDeleteUUID (const FcChar8  *dir,
 		      FcConfig       *config)
 {
+    FcBool ret = FcTrue;
+#ifndef _WIN32
     const FcChar8 *sysroot = FcConfigGetSysRoot (config);
     FcChar8 *target, *d;
-    FcBool ret = FcTrue;
     struct stat statb;
     struct timeval times[2];
 
@@ -191,6 +192,7 @@ FcDirCacheDeleteUUID (const FcChar8  *dir,
     FcStrFree (target);
 bail:
     FcStrFree (d);
+#endif
 
     return ret;
 }
commit 8a9435958ac709ca81ef0e517b9242958afcd6b2
Author: Akira TAGOH <akira at tagoh.org>
Date:   Fri Mar 22 07:40:24 2019 +0000

    autogen.sh: Make AUTORECONF_FLAGS overwritable

diff --git a/autogen.sh b/autogen.sh
index e5537e5..1d31465 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -43,7 +43,7 @@ FILE=fontconfig/fontconfig.h
 LIBTOOLIZE=${LIBTOOLIZE-libtoolize}
 AUTOPOINT=${AUTOPOINT-autopoint}
 AUTORECONF=${AUTORECONF-autoreconf}
-AUTORECONF_FLAGS="-i"
+AUTORECONF_FLAGS=${AUTORECONF_FLAGS-"-i"}
 GPERF=${GPERF-gperf}
 GETTEXTIZE=${GETTEXTIZE-gettextize}
 GETTEXTIZE_FLAGS="--force --no-changelog"


More information about the Fontconfig mailing list