pdf2htmlEX/buildScripts/buildFontforge

93 lines
4.2 KiB
Bash
Executable File

#!/bin/sh
# This shell script build FontForge
# source buildScripts/reSourceVersionEnvs
. buildScripts/reSourceVersionEnvs
echo ""
echo "-------------------------------------------------------------------"
echo "BUILDING FontForge (using CMake)"
echo "-------------------------------------------------------------------"
echo ""
set -ev
cd fontforge
mkdir build
cd build
cmake \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=$PDF2HTMLEX_PREFIX \
-DBUILD_SHARED_LIBS:BOOL=OFF \
-DENABLE_GUI:BOOL=OFF \
-DENABLE_X11:BOOL=OFF \
-DENABLE_NATIVE_SCRIPTING:BOOL=ON \
-DENABLE_PYTHON_SCRIPTING:BOOL=OFF \
-DENABLE_PYTHON_EXTENSION:AUTO=OFF \
-DENABLE_LIBSPIRO:BOOL=OFF \
-DENABLE_LIBUNINAMESLIST:BOOL=OFF \
-DENABLE_LIBGIF:AUTO=OFF \
-DENABLE_LIBJPEG:AUTO=ON \
-DENABLE_LIBPNG:AUTO=ON \
-DENABLE_LIBREADLINE:AUTO=OFF \
-DENABLE_LIBTIFF:AUTO=OFF \
-DENABLE_WOFF2:AUTO=OFF \
-DENABLE_DOCS:AUTO=OFF \
-DENABLE_CODE_COVERAGE:BOOL=OFF \
-DENABLE_DEBUG_RAW_POINTS:BOOL=OFF \
-DENABLE_FONTFORGE_EXTRAS:BOOL=OFF \
-DENABLE_MAINTAINER_TOOLS:BOOL=OFF \
-DENABLE_TILE_PATH:BOOL=OFF \
-DENABLE_WRITE_PFM:BOOL=OFF \
-DENABLE_SANITIZER:ENUM="none" \
-DENABLE_FREETYPE_DEBUGGER:PATH="" \
-DSPHINX_USE_VENV:BOOL=OFF \
-DREAL_TYPE:ENUM="double" \
-DTHEME:ENUM="tango" \
..
# Apply any patches required for fontforge raw sources before we make
#
#for APATCHFILE in $(ls ../patches/fontforge-$FONTFORGE_VERSION-*)
#do
# echo "patching fontforge using [$APATCHFILE]"
# patch -p 1 < $APATCHFILE
#done
make $MAKE_PARALLEL
##########################################################
# FontForge CMakeLists.txt build options (2020/05/31):
# BUILD_SHARED_LIBS:BOOL=OFF "Build libfontforge as a shared library")
# ENABLE_GUI:BOOL=OFF "Build FontForge with GUI support")
# ENABLE_X11:BOOL=OFF "Build the GUI using the X backend INSTEAD of the GDK backend" "ENABLE_GUI")
# ENABLE_NATIVE_SCRIPTING:BOOL=ON "Enables FontForge's native scripting support")
# ENABLE_PYTHON_SCRIPTING:BOOL=OFF "Enables FontForge's Python scripting support")
# ENABLE_PYTHON_EXTENSION:AUTO=OFF "Builds the Python models for use with system python")
# ENABLE_LIBSPIRO:BOOL=ON "Enables libspiro support")
# ENABLE_LIBUNINAMESLIST:BOOL=ON "Enables libuninameslist support")
# ENABLE_LIBGIF:AUTO=OFF "Enables GIF support")
# ENABLE_LIBJPEG:AUTO=ON "Enables JPEG support")
# ENABLE_LIBPNG:AUTO=ON "Enables PNG support")
# ENABLE_LIBREADLINE:AUTO=OFF "Enables Readline support")
# ENABLE_LIBTIFF:AUTO=OFF "Enables TIFF support")
# ENABLE_WOFF2:AUTO=OFF "Enables WOFF2 support")
# ENABLE_DOCS:AUTO=OFF "Enables building and installing documentation. Sphinx is required to build it.")
# ENABLE_CODE_COVERAGE:BOOL=OFF "Build with code coverage support")
# ENABLE_DEBUG_RAW_POINTS:BOOL=OFF "Add a raw mode to the points window of the debugger")
# ENABLE_FONTFORGE_EXTRAS:BOOL=OFF "Builds programs from the contrib directory")
# ENABLE_MAINTAINER_TOOLS:BOOL=OFF "Build programs normally only used by FontForge maintainers and developers")
# ENABLE_TILE_PATH:BOOL=OFF "Enable a 'tile path' command (a variant of 'expand stroke')")
# ENABLE_WRITE_PFM:BOOL=OFF "Add the ability to save a PFM file without creating the associated font file")
# ENABLE_SANITIZER:ENUM="none" "Enables a sanitizer. Requires support from the compiler."
# ENABLE_FREETYPE_DEBUGGER:PATH="" "Use FreeTypes internal debugger within FontForge."
# SPHINX_USE_VENV:BOOL=OFF "If building documentation and Sphinx is not installed, try to install and use it from a python3 venv."
# REAL_TYPE:ENUM="double" "Sets the floating point type used." "double" "float")
# THEME:ENUM="tango" "Sets the GUI theme." "tango" "2012")