diff options
author | Werner Lemberg <wl@gnu.org> | 2021-02-02 10:33:53 +0100 |
---|---|---|
committer | Werner Lemberg <wl@gnu.org> | 2021-02-02 10:33:53 +0100 |
commit | 5635d5edc489a19d8e6faef48c644942a4b3f777 (patch) | |
tree | e37b9edd1b3d074bc6b673dbbda136a83b9c0529 /builds | |
parent | 689402418f862154ade6a3b2d08930fed2c08b52 (diff) | |
download | freetype2-5635d5edc489a19d8e6faef48c644942a4b3f777.tar.gz |
* builds/unix/configure.raw [mmap support]: Correctly handle Windows.
Fixes #1024.
Diffstat (limited to 'builds')
-rw-r--r-- | builds/unix/configure.raw | 36 |
1 files changed, 24 insertions, 12 deletions
diff --git a/builds/unix/configure.raw b/builds/unix/configure.raw index e45769d11..ce0c83f65 100644 --- a/builds/unix/configure.raw +++ b/builds/unix/configure.raw @@ -192,39 +192,51 @@ AC_SUBST(INSTALL_FT2_CONFIG, [$enable_freetype_config]) AC_SYS_LARGEFILE # Here we check whether we can use our mmap file component. +# +# Note that `ftsystem.c` for Windows has its own mmap-like implementation +# not covered by `AC_FUNC_MMAP` and/or `FT_UNMAP_PARAM`. AC_ARG_ENABLE([mmap], AS_HELP_STRING([--disable-mmap], [do not check mmap() and do not use]), [enable_mmap="no"], [enable_mmap="yes"]) if test "x${enable_mmap}" != "xno"; then - AC_FUNC_MMAP -fi -if test "x${enable_mmap}" = "xno" \ - -o "$ac_cv_func_mmap_fixed_mapped" != "yes"; then case "$host" in *-*-mingw*) - FTSYS_SRC='$(PLATFORM_DIR)/ftsystem.c' + ac_cv_func_mmap_fixed_mapped="yes" + AC_MSG_CHECKING([for working mmap]) + AC_MSG_RESULT([using Windows-specific equivalent]) ;; *) - FTSYS_SRC='$(BASE_DIR)/ftsystem.c' + AC_FUNC_MMAP + ;; esac +fi +if test "x${enable_mmap}" = "xno" \ + -o "$ac_cv_func_mmap_fixed_mapped" != "yes"; then + FTSYS_SRC='$(BASE_DIR)/ftsystem.c' else FTSYS_SRC='$(PLATFORM_DIR)/ftsystem.c' - AC_CHECK_DECLS([munmap], - [], - [], - [ + case "$host" in + *-*-mingw*) + ;; + *) + AC_CHECK_DECLS([munmap], + [], + [], + [ #ifdef HAVE_UNISTD_H #include <unistd.h> #endif #include <sys/mman.h> - ]) + ]) - FT_MUNMAP_PARAM + FT_MUNMAP_PARAM + ;; + esac fi AC_SUBST([FTSYS_SRC]) |