summaryrefslogtreecommitdiff
path: root/Build/source/libs/freetype2/freetype-src/src/tools
diff options
context:
space:
mode:
authorAkira Kakuto <kakuto@fuk.kindai.ac.jp>2020-10-11 03:30:45 +0000
committerAkira Kakuto <kakuto@fuk.kindai.ac.jp>2020-10-11 03:30:45 +0000
commit818cc5aef331bbea8e3f51fde0d16930d3c7d61b (patch)
tree92e75c5790929645b7f7fe46531d08bd6da647fe /Build/source/libs/freetype2/freetype-src/src/tools
parentda07ca4d5d2822da52a86feffa09e8cf2b9484bd (diff)
freetype 2.10.3
git-svn-id: svn://tug.org/texlive/trunk@56628 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/freetype2/freetype-src/src/tools')
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/tools/Jamfile5
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/tools/ftrandom/ftrandom.c4
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/tools/make_distribution_archives.py208
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/tools/test_afm.c7
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/tools/test_bbox.c5
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/tools/test_trig.c5
6 files changed, 217 insertions, 17 deletions
diff --git a/Build/source/libs/freetype2/freetype-src/src/tools/Jamfile b/Build/source/libs/freetype2/freetype-src/src/tools/Jamfile
deleted file mode 100644
index 475161e07fd..00000000000
--- a/Build/source/libs/freetype2/freetype-src/src/tools/Jamfile
+++ /dev/null
@@ -1,5 +0,0 @@
-# Jamfile for src/tools
-#
-SubDir FT2_TOP src tools ;
-
-Main apinames : apinames.c ;
diff --git a/Build/source/libs/freetype2/freetype-src/src/tools/ftrandom/ftrandom.c b/Build/source/libs/freetype2/freetype-src/src/tools/ftrandom/ftrandom.c
index ab5cfc98b6c..ab62429787f 100644
--- a/Build/source/libs/freetype2/freetype-src/src/tools/ftrandom/ftrandom.c
+++ b/Build/source/libs/freetype2/freetype-src/src/tools/ftrandom/ftrandom.c
@@ -45,8 +45,8 @@
#include <time.h>
#include <ft2build.h>
-#include FT_FREETYPE_H
-#include FT_OUTLINE_H
+#include <freetype/freetype.h>
+#include <freetype/ftoutln.h>
#define true 1
#define false 0
diff --git a/Build/source/libs/freetype2/freetype-src/src/tools/make_distribution_archives.py b/Build/source/libs/freetype2/freetype-src/src/tools/make_distribution_archives.py
new file mode 100644
index 00000000000..f29eb128c7a
--- /dev/null
+++ b/Build/source/libs/freetype2/freetype-src/src/tools/make_distribution_archives.py
@@ -0,0 +1,208 @@
+#!/usr/bin/env python3
+"""Generate distribution archives for a given FreeType 2 release."""
+
+from __future__ import print_function
+
+import argparse
+import atexit
+import os
+import shutil
+import subprocess
+import sys
+import tempfile
+
+_TOP_DIR = os.path.abspath(os.path.join(__file__, "..", "..", ".."))
+_SCRIPT_DIR = os.path.dirname(os.path.join(_TOP_DIR, "builds", "meson", ""))
+
+
+def get_cmd_output(cmd, cwd=None):
+ """Run a command and return its output as a string."""
+ if cwd is not None:
+ out = subprocess.check_output(cmd, cwd=cwd)
+ else:
+ out = subprocess.check_output(cmd)
+ return out.decode("utf-8").rstrip()
+
+
+def is_git_dir_clean(git_dir):
+ """Return True iff |git_dir| is a git directory in clean state."""
+ out = get_cmd_output(["git", "status", "--porcelain"], cwd=git_dir)
+ return len(out) == 0
+
+
+def main():
+ parser = argparse.ArgumentParser(description=__doc__)
+
+ parser.add_argument(
+ "--source_dir", default=_TOP_DIR, help="Source directory path."
+ )
+
+ parser.add_argument(
+ "--version",
+ help=(
+ "Specify alternate FreeType version (it is otherwise extracted"
+ " from current sources by default)."
+ ),
+ )
+
+ parser.add_argument(
+ "--gnu-config-dir",
+ help=(
+ "Path of input directory containing recent `config.guess` and"
+ " `config.sub` files from GNU config."
+ ),
+ )
+
+ parser.add_argument(
+ "--build-dir",
+ help="Specify build directory. Only used for debugging this script.",
+ )
+
+ parser.add_argument(
+ "--ignore-clean-check",
+ action="store_true",
+ help=(
+ "Do not check for a clean source git repository. Only used for"
+ " debugging this script."
+ ),
+ )
+
+ parser.add_argument(
+ "output_dir", help="Output directory for generated archives."
+ )
+
+ args = parser.parse_args()
+
+ git_dir = args.source_dir if args.source_dir else _TOP_DIR
+ if not args.ignore_clean_check and not is_git_dir_clean(git_dir):
+ sys.stderr.write(
+ "ERROR: Your git repository is not in a clean state: %s\n"
+ % git_dir
+ )
+ return 1
+
+ if args.version:
+ version = args.version
+ else:
+ # Extract FreeType version from sources.
+ version = get_cmd_output(
+ [
+ sys.executable,
+ os.path.join(_SCRIPT_DIR, "extract_freetype_version.py"),
+ os.path.join(_TOP_DIR, "include", "freetype", "freetype.h"),
+ ]
+ )
+
+ # Determine the build directory. This will be a temporary file that is
+ # cleaned up on script exit by default, unless --build-dir=DIR is used,
+ # in which case we only create and empty the directory, but never remove
+ # its content on exit.
+ if args.build_dir:
+ build_dir = args.build_dir
+ if not os.path.exists(build_dir):
+ os.makedirs(build_dir)
+ else:
+ # Remove anything from the build directory, if any.
+ for item in os.listdir(build_dir):
+ file_path = os.path.join(build_dir, item)
+ if os.path.isdir(file_path):
+ shutil.rmtree(file_path)
+ else:
+ os.unlink(file_path)
+ else:
+ # Create a temporary directory, and ensure it is removed on exit.
+ build_dir = tempfile.mkdtemp(prefix="freetype-dist-")
+
+ def clean_build_dir():
+ shutil.rmtree(build_dir)
+
+ atexit.register(clean_build_dir)
+
+ # Copy all source files known to git into $BUILD_DIR/freetype-$VERSION
+ # with the exception of .gitignore and .mailmap files.
+ source_files = [
+ f
+ for f in get_cmd_output(["git", "ls-files"], cwd=git_dir).split("\n")
+ if os.path.basename(f) not in (".gitignore", ".mailmap")
+ ]
+
+ freetype_dir = "freetype-" + version
+ tmp_src_dir = os.path.join(build_dir, freetype_dir)
+ os.makedirs(tmp_src_dir)
+
+ for src in source_files:
+ dst = os.path.join(tmp_src_dir, src)
+ dst_dir = os.path.dirname(dst)
+ if not os.path.exists(dst_dir):
+ os.makedirs(dst_dir)
+ shutil.copy(os.path.join(git_dir, src), dst)
+
+ # Run autogen.sh in directory.
+ subprocess.check_call(["/bin/sh", "autogen.sh"], cwd=tmp_src_dir)
+ shutil.rmtree(
+ os.path.join(tmp_src_dir, "builds", "unix", "autom4te.cache")
+ )
+
+ # Copy config.guess and config.sub if possible!
+ if args.gnu_config_dir:
+ for f in ("config.guess", "config.sub"):
+ shutil.copy(
+ os.path.join(args.gnu_config_dir, f),
+ os.path.join(tmp_src_dir, "builds", "unix", f),
+ )
+
+ # Generate reference documentation under docs/
+ subprocess.check_call(
+ [
+ sys.executable,
+ os.path.join(_SCRIPT_DIR, "generate_reference_docs.py"),
+ "--input-dir",
+ tmp_src_dir,
+ "--version",
+ version,
+ "--output-dir",
+ os.path.join(tmp_src_dir, "docs"),
+ ]
+ )
+
+ shutil.rmtree(os.path.join(tmp_src_dir, "docs", "markdown"))
+ os.unlink(os.path.join(tmp_src_dir, "docs", "mkdocs.yml"))
+
+ # Generate our archives
+ freetype_tar = freetype_dir + ".tar"
+
+ subprocess.check_call(
+ ["tar", "-H", "ustar", "-chf", freetype_tar, freetype_dir],
+ cwd=build_dir,
+ )
+
+ subprocess.check_call(
+ ["gzip", "-9", "--keep", freetype_tar], cwd=build_dir
+ )
+
+ subprocess.check_call(["xz", "--keep", freetype_tar], cwd=build_dir)
+
+ ftwinversion = "ft" + "".join(version.split("."))
+ subprocess.check_call(
+ ["zip", "-qlr9", ftwinversion + ".zip", freetype_dir], cwd=build_dir
+ )
+
+ # Copy file to output directory now.
+ if not os.path.exists(args.output_dir):
+ os.makedirs(args.output_dir)
+
+ for f in (
+ freetype_tar + ".gz",
+ freetype_tar + ".xz",
+ ftwinversion + ".zip",
+ ):
+ shutil.copy(
+ os.path.join(build_dir, f), os.path.join(args.output_dir, f)
+ )
+
+ # Done!
+ return 0
+
+
+if __name__ == "__main__":
+ sys.exit(main())
diff --git a/Build/source/libs/freetype2/freetype-src/src/tools/test_afm.c b/Build/source/libs/freetype2/freetype-src/src/tools/test_afm.c
index 8de619bb035..a4b2268984e 100644
--- a/Build/source/libs/freetype2/freetype-src/src/tools/test_afm.c
+++ b/Build/source/libs/freetype2/freetype-src/src/tools/test_afm.c
@@ -2,10 +2,9 @@
* gcc -DFT2_BUILD_LIBRARY -I../../include -o test_afm test_afm.c \
* -L../../objs/.libs -lfreetype -lz -static
*/
-#include <ft2build.h>
-#include FT_FREETYPE_H
-#include FT_INTERNAL_STREAM_H
-#include FT_INTERNAL_POSTSCRIPT_AUX_H
+#include <freetype/freetype.h>
+#include <freetype/internal/ftstream.h>
+#include <freetype/internal/psaux.h>
void dump_fontinfo( AFM_FontInfo fi )
{
diff --git a/Build/source/libs/freetype2/freetype-src/src/tools/test_bbox.c b/Build/source/libs/freetype2/freetype-src/src/tools/test_bbox.c
index 64b82c384b6..d9fd932993d 100644
--- a/Build/source/libs/freetype2/freetype-src/src/tools/test_bbox.c
+++ b/Build/source/libs/freetype2/freetype-src/src/tools/test_bbox.c
@@ -1,6 +1,5 @@
-#include <ft2build.h>
-#include FT_FREETYPE_H
-#include FT_BBOX_H
+#include <freetype/freetype.h>
+#include <freetype/ftbbox.h>
#include <time.h> /* for clock() */
diff --git a/Build/source/libs/freetype2/freetype-src/src/tools/test_trig.c b/Build/source/libs/freetype2/freetype-src/src/tools/test_trig.c
index 99ac1cf174d..4f3410ab388 100644
--- a/Build/source/libs/freetype2/freetype-src/src/tools/test_trig.c
+++ b/Build/source/libs/freetype2/freetype-src/src/tools/test_trig.c
@@ -1,6 +1,5 @@
-#include <ft2build.h>
-#include FT_FREETYPE_H
-#include FT_TRIGONOMETRY_H
+#include <freetype/freetype.h>
+#include <freetype/fttrigon.h>
#include <math.h>
#include <stdio.h>