summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt12
-rw-r--r--ChangeLog9
2 files changed, 18 insertions, 3 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 87a68c0f2..3b36efe96 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -215,14 +215,17 @@ if (UNIX)
endif ()
string(REPLACE "/undef " "#undef "
FTCONFIG_H "${FTCONFIG_H}")
- file(WRITE "${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h"
+ file(WRITE "${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h-new"
"${FTCONFIG_H}")
else ()
file(READ "${PROJECT_SOURCE_DIR}/include/freetype/config/ftconfig.h"
FTCONFIG_H)
- file(WRITE "${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h"
+ file(WRITE "${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h-new"
"${FTCONFIG_H}")
endif ()
+execute_process(COMMAND ${CMAKE_COMMAND} -E copy_if_different
+ "${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h-new"
+ "${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h")
# Create the options file
@@ -251,8 +254,11 @@ if (HARFBUZZ_FOUND)
"/\\* +(#define +FT_CONFIG_OPTION_USE_HARFBUZZ) +\\*/" "\\1"
FTOPTION_H "${FTOPTION_H}")
endif ()
-file(WRITE "${PROJECT_BINARY_DIR}/include/freetype/config/ftoption.h"
+file(WRITE "${PROJECT_BINARY_DIR}/include/freetype/config/ftoption.h-new"
"${FTOPTION_H}")
+execute_process(COMMAND ${CMAKE_COMMAND} -E copy_if_different
+ "${PROJECT_BINARY_DIR}/include/freetype/config/ftoption.h-new"
+ "${PROJECT_BINARY_DIR}/include/freetype/config/ftoption.h")
# Specify library include directories
diff --git a/ChangeLog b/ChangeLog
index 5c9ec1374..8b2afe8a2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2016-06-09 David Capello <davidcapello@gmail.com>
+
+ [cmake] Avoid modifying `ftconfig.h' and `ftoption.h' files.
+
+ * CMakeLists.txt: Each time cmake is run those files are
+ modified and the whole FreeType library is recompiled. With this
+ change we change the files only if there are real modifications, so
+ we can avoid recompilations.
+
2016-06-09 Werner Lemberg <wl@gnu.org>
[bdf] Check number of properties (#48166).