add freetype-2.6.1 as thirdparty
This commit is contained in:
parent
421f366f23
commit
c70980ab7e
757 changed files with 368250 additions and 0 deletions
404
thirdparty/freetype/CMakeLists.txt
vendored
Normal file
404
thirdparty/freetype/CMakeLists.txt
vendored
Normal file
|
@ -0,0 +1,404 @@
|
|||
# CMakeLists.txt
|
||||
#
|
||||
# Copyright 2013-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# Written originally by John Cary <cary@txcorp.com>
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
#
|
||||
#
|
||||
# As a preliminary, create a compilation directory and change into it, for
|
||||
# example
|
||||
#
|
||||
# mkdir ~/freetype2.compiled
|
||||
# cd ~/freetype2.compiled
|
||||
#
|
||||
# Now you can say
|
||||
#
|
||||
# cmake <path-to-freetype2-src-dir>
|
||||
#
|
||||
# to create a Makefile that builds a static version of the library.
|
||||
#
|
||||
# For a dynamic library, use
|
||||
#
|
||||
# cmake <path-to-freetype2-src-dir> -D BUILD_SHARED_LIBS:BOOL=true
|
||||
#
|
||||
# For a framework on OS X, use
|
||||
#
|
||||
# cmake <path-to-freetype2-src-dir> -D BUILD_FRAMEWORK:BOOL=true -G Xcode
|
||||
#
|
||||
# instead.
|
||||
#
|
||||
# For an iOS static library, use
|
||||
#
|
||||
# cmake <path-to-freetype2-src-dir> -D IOS_PLATFORM=OS -G Xcode
|
||||
#
|
||||
# or
|
||||
#
|
||||
# cmake <path-to-freetype2-src-dir> -D IOS_PLATFORM=SIMULATOR -G Xcode
|
||||
#
|
||||
# Please refer to the cmake manual for further options, in particular, how
|
||||
# to modify compilation and linking parameters.
|
||||
#
|
||||
# Some notes.
|
||||
#
|
||||
# . `cmake' creates configuration files in
|
||||
#
|
||||
# <build-directory>/include/freetype/config
|
||||
#
|
||||
# which should be further modified if necessary.
|
||||
#
|
||||
# . You can use `cmake' directly on a freshly cloned FreeType git
|
||||
# repository.
|
||||
#
|
||||
# . `CMakeLists.txt' is provided as-is since it is normally not used by the
|
||||
# developer team.
|
||||
|
||||
|
||||
cmake_minimum_required(VERSION 2.6)
|
||||
|
||||
|
||||
include(CheckIncludeFile)
|
||||
|
||||
|
||||
# CMAKE_TOOLCHAIN_FILE must be set before `project' is called, which
|
||||
# configures the base build environment and references the toolchain file
|
||||
if (APPLE)
|
||||
if (DEFINED IOS_PLATFORM)
|
||||
if (NOT "${IOS_PLATFORM}" STREQUAL "OS"
|
||||
AND NOT "${IOS_PLATFORM}" STREQUAL "SIMULATOR")
|
||||
message(FATAL_ERROR
|
||||
"IOS_PLATFORM must be set to either OS or SIMULATOR")
|
||||
endif ()
|
||||
if (NOT "${CMAKE_GENERATOR}" STREQUAL "Xcode")
|
||||
message(AUTHOR_WARNING
|
||||
"You should use Xcode generator with IOS_PLATFORM enabled to get Universal builds.")
|
||||
endif ()
|
||||
if (BUILD_SHARED_LIBS)
|
||||
message(FATAL_ERROR
|
||||
"BUILD_SHARED_LIBS can not be on with IOS_PLATFORM enabled")
|
||||
endif ()
|
||||
if (BUILD_FRAMEWORK)
|
||||
message(FATAL_ERROR
|
||||
"BUILD_FRAMEWORK can not be on with IOS_PLATFORM enabled")
|
||||
endif ()
|
||||
|
||||
# iOS only uses static libraries
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
|
||||
set(CMAKE_TOOLCHAIN_FILE
|
||||
${PROJECT_SOURCE_DIR}/builds/cmake/iOS.cmake)
|
||||
endif ()
|
||||
else ()
|
||||
if (DEFINED IOS_PLATFORM)
|
||||
message(FATAL_ERROR "IOS_PLATFORM is not supported on this platform")
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
if (WIN32 AND BUILD_SHARED_LIBS)
|
||||
message(FATAL_ERROR "Shared libraries not supported on Windows.")
|
||||
endif ()
|
||||
|
||||
|
||||
project(freetype)
|
||||
|
||||
|
||||
# Disallow in-source builds
|
||||
if ("${PROJECT_BINARY_DIR}" STREQUAL "${PROJECT_SOURCE_DIR}")
|
||||
message(FATAL_ERROR
|
||||
"
|
||||
In-source builds are not permitted! Make a separate folder for"
|
||||
" building, e.g.,"
|
||||
"
|
||||
mkdir build; cd build; cmake .."
|
||||
"
|
||||
Before that, remove the files created by this failed run with"
|
||||
"
|
||||
rm -rf CMakeCache.txt CMakeFiles")
|
||||
endif ()
|
||||
|
||||
|
||||
# Add local cmake modules
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/builds)
|
||||
|
||||
|
||||
if (BUILD_FRAMEWORK)
|
||||
if (NOT "${CMAKE_GENERATOR}" STREQUAL "Xcode")
|
||||
message(FATAL_ERROR
|
||||
"You should use Xcode generator with BUILD_FRAMEWORK enabled")
|
||||
endif ()
|
||||
set(CMAKE_OSX_ARCHITECTURES "$(ARCHS_STANDARD_32_64_BIT)")
|
||||
set(BUILD_SHARED_LIBS ON)
|
||||
endif ()
|
||||
|
||||
|
||||
set(VERSION_MAJOR "2")
|
||||
set(VERSION_MINOR "6")
|
||||
set(VERSION_PATCH "1")
|
||||
|
||||
set(PROJECT_VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH})
|
||||
set(SHARED_LIBRARY_VERSION ${VERSION_MAJOR}.${VERSION_MINOR})
|
||||
|
||||
|
||||
# Compiler definitions for building the library
|
||||
add_definitions(-DFT2_BUILD_LIBRARY)
|
||||
|
||||
|
||||
# Find dependencies
|
||||
find_package(ZLIB)
|
||||
find_package(BZip2)
|
||||
find_package(PNG)
|
||||
find_package(HarfBuzz)
|
||||
|
||||
|
||||
message(STATUS
|
||||
"Creating directory ${PROJECT_BINARY_DIR}/include/freetype/config")
|
||||
file(MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/include/freetype/config")
|
||||
|
||||
|
||||
# Create the configuration file
|
||||
message(STATUS
|
||||
"Creating file ${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h")
|
||||
|
||||
if (UNIX)
|
||||
check_include_file("unistd.h" HAVE_UNISTD_H)
|
||||
check_include_file("fcntl.h" HAVE_FCNTL_H)
|
||||
check_include_file("stdint.h" HAVE_STDINT_H)
|
||||
|
||||
file(READ "${PROJECT_SOURCE_DIR}/builds/unix/ftconfig.in"
|
||||
FTCONFIG_H)
|
||||
if (HAVE_UNISTD_H)
|
||||
string(REGEX REPLACE
|
||||
"#undef +(HAVE_UNISTD_H)" "#define \\1"
|
||||
FTCONFIG_H "${FTCONFIG_H}")
|
||||
endif ()
|
||||
if (HAVE_FCNTL_H)
|
||||
string(REGEX REPLACE
|
||||
"#undef +(HAVE_FCNTL_H)" "#define \\1"
|
||||
FTCONFIG_H "${FTCONFIG_H}")
|
||||
endif ()
|
||||
if (HAVE_STDINT_H)
|
||||
string(REGEX REPLACE
|
||||
"#undef +(HAVE_STDINT_H)" "#define \\1"
|
||||
FTCONFIG_H "${FTCONFIG_H}")
|
||||
endif ()
|
||||
string(REPLACE "/undef " "#undef "
|
||||
FTCONFIG_H "${FTCONFIG_H}")
|
||||
file(WRITE "${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h"
|
||||
"${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"
|
||||
"${FTCONFIG_H}")
|
||||
endif ()
|
||||
|
||||
|
||||
# Create the options file
|
||||
message(STATUS
|
||||
"Creating file ${PROJECT_BINARY_DIR}/include/freetype/config/ftoption.h")
|
||||
|
||||
file(READ "${PROJECT_SOURCE_DIR}/include/freetype/config/ftoption.h"
|
||||
FTOPTION_H)
|
||||
if (ZLIB_FOUND)
|
||||
string(REGEX REPLACE
|
||||
"/\\* +(#define +FT_CONFIG_OPTION_SYSTEM_ZLIB) +\\*/" "\\1"
|
||||
FTOPTION_H "${FTOPTION_H}")
|
||||
endif ()
|
||||
if (BZIP2_FOUND)
|
||||
string(REGEX REPLACE
|
||||
"/\\* +(#define +FT_CONFIG_OPTION_USE_BZIP2) +\\*/" "\\1"
|
||||
FTOPTION_H "${FTOPTION_H}")
|
||||
endif ()
|
||||
if (PNG_FOUND)
|
||||
string(REGEX REPLACE
|
||||
"/\\* +(#define +FT_CONFIG_OPTION_USE_PNG) +\\*/" "\\1"
|
||||
FTOPTION_H "${FTOPTION_H}")
|
||||
endif ()
|
||||
if (HARFBUZZ_FOUND)
|
||||
string(REGEX REPLACE
|
||||
"/\\* +(#define +FT_CONFIG_OPTION_USE_HARFBUZZ) +\\*/" "\\1"
|
||||
FTOPTION_H "${FTOPTION_H}")
|
||||
endif ()
|
||||
file(WRITE "${PROJECT_BINARY_DIR}/include/freetype/config/ftoption.h"
|
||||
"${FTOPTION_H}")
|
||||
|
||||
|
||||
# Specify library include directories
|
||||
include_directories("${PROJECT_SOURCE_DIR}/include")
|
||||
include_directories(BEFORE "${PROJECT_BINARY_DIR}/include")
|
||||
|
||||
|
||||
file(GLOB PUBLIC_HEADERS "include/ft2build.h" "include/freetype/*.h")
|
||||
file(GLOB PUBLIC_CONFIG_HEADERS "include/freetype/config/*.h")
|
||||
file(GLOB PRIVATE_HEADERS "include/freetype/internal/*.h")
|
||||
|
||||
|
||||
set(BASE_SRCS
|
||||
src/autofit/autofit.c
|
||||
src/base/ftbase.c
|
||||
src/base/ftbbox.c
|
||||
src/base/ftbdf.c
|
||||
src/base/ftbitmap.c
|
||||
src/base/ftcid.c
|
||||
src/base/ftfntfmt.c
|
||||
src/base/ftfstype.c
|
||||
src/base/ftgasp.c
|
||||
src/base/ftglyph.c
|
||||
src/base/ftgxval.c
|
||||
src/base/ftinit.c
|
||||
src/base/ftlcdfil.c
|
||||
src/base/ftmm.c
|
||||
src/base/ftotval.c
|
||||
src/base/ftpatent.c
|
||||
src/base/ftpfr.c
|
||||
src/base/ftstroke.c
|
||||
src/base/ftsynth.c
|
||||
src/base/ftsystem.c
|
||||
src/base/fttype1.c
|
||||
src/base/ftwinfnt.c
|
||||
src/bdf/bdf.c
|
||||
src/bzip2/ftbzip2.c
|
||||
src/cache/ftcache.c
|
||||
src/cff/cff.c
|
||||
src/cid/type1cid.c
|
||||
src/gzip/ftgzip.c
|
||||
src/lzw/ftlzw.c
|
||||
src/pcf/pcf.c
|
||||
src/pfr/pfr.c
|
||||
src/psaux/psaux.c
|
||||
src/pshinter/pshinter.c
|
||||
src/psnames/psnames.c
|
||||
src/raster/raster.c
|
||||
src/sfnt/sfnt.c
|
||||
src/smooth/smooth.c
|
||||
src/truetype/truetype.c
|
||||
src/type1/type1.c
|
||||
src/type42/type42.c
|
||||
src/winfonts/winfnt.c
|
||||
)
|
||||
|
||||
if (WIN32)
|
||||
set(BASE_SRCS ${BASE_SRCS} builds/windows/ftdebug.c)
|
||||
elseif (WINCE)
|
||||
set(BASE_SRCS ${BASE_SRCS} builds/wince/ftdebug.c)
|
||||
else ()
|
||||
set(BASE_SRCS ${BASE_SRCS} src/base/ftdebug.c)
|
||||
endif ()
|
||||
|
||||
|
||||
if (BUILD_FRAMEWORK)
|
||||
set(BASE_SRCS
|
||||
${BASE_SRCS}
|
||||
builds/mac/freetype-Info.plist
|
||||
)
|
||||
endif ()
|
||||
|
||||
|
||||
add_library(freetype
|
||||
${PUBLIC_HEADERS}
|
||||
${PUBLIC_CONFIG_HEADERS}
|
||||
${PRIVATE_HEADERS}
|
||||
${BASE_SRCS}
|
||||
)
|
||||
|
||||
|
||||
if (BUILD_SHARED_LIBS)
|
||||
set_target_properties(freetype PROPERTIES
|
||||
VERSION ${PROJECT_VERSION}
|
||||
SOVERSION ${SHARED_LIBRARY_VERSION}
|
||||
COMPILE_DEFINITIONS freetype_EXPORTS
|
||||
)
|
||||
endif ()
|
||||
|
||||
|
||||
if (BUILD_FRAMEWORK)
|
||||
set_property(SOURCE ${PUBLIC_CONFIG_HEADERS}
|
||||
PROPERTY MACOSX_PACKAGE_LOCATION Headers/config
|
||||
)
|
||||
set_target_properties(freetype PROPERTIES
|
||||
FRAMEWORK TRUE
|
||||
MACOSX_FRAMEWORK_INFO_PLIST builds/mac/freetype-Info.plist
|
||||
PUBLIC_HEADER "${PUBLIC_HEADERS}"
|
||||
XCODE_ATTRIBUTE_INSTALL_PATH "@rpath"
|
||||
)
|
||||
endif ()
|
||||
|
||||
|
||||
if (MSVC)
|
||||
set_target_properties(freetype PROPERTIES
|
||||
COMPILE_FLAGS /Fd"$(IntDir)$(TargetName).pdb")
|
||||
endif ()
|
||||
|
||||
|
||||
if (ZLIB_FOUND)
|
||||
target_link_libraries(freetype ${ZLIB_LIBRARIES})
|
||||
include_directories(${ZLIB_INCLUDE_DIRS})
|
||||
endif ()
|
||||
if (BZIP2_FOUND)
|
||||
target_link_libraries(freetype ${BZIP2_LIBRARIES})
|
||||
include_directories(${BZIP2_INCLUDE_DIR}) # not BZIP2_INCLUDE_DIRS
|
||||
endif ()
|
||||
if (PNG_FOUND)
|
||||
add_definitions(${PNG_DEFINITIONS})
|
||||
target_link_libraries(freetype ${PNG_LIBRARIES})
|
||||
include_directories(${PNG_INCLUDE_DIRS})
|
||||
endif ()
|
||||
if (HARFBUZZ_FOUND)
|
||||
target_link_libraries(freetype ${HARFBUZZ_LIBRARIES})
|
||||
include_directories(${HARFBUZZ_INCLUDE_DIRS})
|
||||
endif ()
|
||||
|
||||
|
||||
# Installations
|
||||
# Note the trailing slash in the argument to the `DIRECTORY' directive
|
||||
install(DIRECTORY ${PROJECT_SOURCE_DIR}/include/
|
||||
DESTINATION include/freetype2
|
||||
PATTERN "internal" EXCLUDE
|
||||
PATTERN "ftconfig.h" EXCLUDE
|
||||
PATTERN "ftoption.h" EXCLUDE
|
||||
)
|
||||
install(FILES
|
||||
${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h
|
||||
${PROJECT_BINARY_DIR}/include/freetype/config/ftoption.h
|
||||
DESTINATION include/freetype2/freetype/config
|
||||
)
|
||||
install(TARGETS freetype
|
||||
RUNTIME DESTINATION bin
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib
|
||||
FRAMEWORK DESTINATION Library/Frameworks
|
||||
)
|
||||
|
||||
|
||||
# Packaging
|
||||
# CPack version numbers for release tarball name.
|
||||
set(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR})
|
||||
set(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR})
|
||||
set(CPACK_PACKAGE_VERSION_PATCH ${VERSION_PATCH}})
|
||||
if (NOT DEFINED CPACK_PACKAGE_DESCRIPTION_SUMMARY)
|
||||
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${CMAKE_PROJECT_NAME}")
|
||||
endif ()
|
||||
if (NOT DEFINED CPACK_SOURCE_PACKAGE_FILE_NAME)
|
||||
set(CPACK_SOURCE_PACKAGE_FILE_NAME
|
||||
"${CMAKE_PROJECT_NAME}-${PROJECT_VERSION}-r${PROJECT_REV}"
|
||||
CACHE INTERNAL "tarball basename"
|
||||
)
|
||||
endif ()
|
||||
set(CPACK_SOURCE_GENERATOR TGZ)
|
||||
set(CPACK_SOURCE_IGNORE_FILES
|
||||
"/CVS/;/.svn/;.swp$;.#;/#;/build/;/serial/;/ser/;/parallel/;/par/;~;/preconfig.out;/autom4te.cache/;/.config")
|
||||
set(CPACK_GENERATOR TGZ)
|
||||
include(CPack)
|
||||
|
||||
|
||||
# add make dist target
|
||||
add_custom_target(dist COMMAND ${CMAKE_MAKE_PROGRAM} package_source)
|
||||
|
||||
|
||||
# eof
|
7900
thirdparty/freetype/ChangeLog
vendored
Normal file
7900
thirdparty/freetype/ChangeLog
vendored
Normal file
File diff suppressed because it is too large
Load diff
2613
thirdparty/freetype/ChangeLog.20
vendored
Normal file
2613
thirdparty/freetype/ChangeLog.20
vendored
Normal file
File diff suppressed because it is too large
Load diff
9439
thirdparty/freetype/ChangeLog.21
vendored
Normal file
9439
thirdparty/freetype/ChangeLog.21
vendored
Normal file
File diff suppressed because it is too large
Load diff
2837
thirdparty/freetype/ChangeLog.22
vendored
Normal file
2837
thirdparty/freetype/ChangeLog.22
vendored
Normal file
File diff suppressed because it is too large
Load diff
7948
thirdparty/freetype/ChangeLog.23
vendored
Normal file
7948
thirdparty/freetype/ChangeLog.23
vendored
Normal file
File diff suppressed because it is too large
Load diff
6360
thirdparty/freetype/ChangeLog.24
vendored
Normal file
6360
thirdparty/freetype/ChangeLog.24
vendored
Normal file
File diff suppressed because it is too large
Load diff
209
thirdparty/freetype/Jamfile
vendored
Normal file
209
thirdparty/freetype/Jamfile
vendored
Normal file
|
@ -0,0 +1,209 @@
|
|||
# FreeType 2 top Jamfile.
|
||||
#
|
||||
# Copyright 2001-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# The HDRMACRO is already defined in FTJam and is used to add
|
||||
# the content of certain macros to the list of included header
|
||||
# files.
|
||||
#
|
||||
# We can compile FreeType 2 with classic Jam however thanks to
|
||||
# the following code
|
||||
#
|
||||
if ! $(JAM_TOOLSET)
|
||||
{
|
||||
rule HDRMACRO
|
||||
{
|
||||
# nothing
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# We need to invoke a SubDir rule if the FT2 source directory top is not the
|
||||
# current directory. This allows us to build FreeType 2 as part of a larger
|
||||
# project easily.
|
||||
#
|
||||
if $(FT2_TOP) != $(DOT)
|
||||
{
|
||||
SubDir FT2_TOP ;
|
||||
}
|
||||
|
||||
|
||||
# The following macros define the include directory, the source directory,
|
||||
# and the final library name (without library extensions). They can be
|
||||
# replaced by other definitions when the library is compiled as part of
|
||||
# a larger project.
|
||||
#
|
||||
|
||||
# Name of FreeType include directory during compilation.
|
||||
# This is relative to FT2_TOP.
|
||||
#
|
||||
FT2_INCLUDE_DIR ?= include ;
|
||||
|
||||
# Name of FreeType source directory during compilation.
|
||||
# This is relative to FT2_TOP.
|
||||
#
|
||||
FT2_SRC_DIR ?= src ;
|
||||
|
||||
# Name of final library, without extension.
|
||||
#
|
||||
FT2_LIB ?= $(LIBPREFIX)freetype ;
|
||||
|
||||
|
||||
# Define FT2_BUILD_INCLUDE to point to your build-specific directory.
|
||||
# This is prepended to FT2_INCLUDE_DIR. It can be used to specify
|
||||
# the location of a custom <ft2build.h> which will point to custom
|
||||
# versions of `ftmodule.h' and `ftoption.h', for example.
|
||||
#
|
||||
FT2_BUILD_INCLUDE ?= ;
|
||||
|
||||
# The list of modules to compile on any given build of the library.
|
||||
# By default, this will contain _all_ modules defined in FT2_SRC_DIR.
|
||||
#
|
||||
# IMPORTANT: You'll need to change the content of `ftmodule.h' as well
|
||||
# if you modify this list or provide your own.
|
||||
#
|
||||
FT2_COMPONENTS ?= autofit # auto-fitter
|
||||
base # base component (public APIs)
|
||||
bdf # BDF font driver
|
||||
bzip2 # support for bzip2-compressed PCF font
|
||||
cache # cache sub-system
|
||||
cff # CFF/CEF font driver
|
||||
cid # PostScript CID-keyed font driver
|
||||
gzip # support for gzip-compressed PCF font
|
||||
lzw # support for LZW-compressed PCF font
|
||||
pcf # PCF font driver
|
||||
pfr # PFR/TrueDoc font driver
|
||||
psaux # common PostScript routines module
|
||||
pshinter # PostScript hinter module
|
||||
psnames # PostScript names handling
|
||||
raster # monochrome rasterizer
|
||||
sfnt # SFNT-based format support routines
|
||||
smooth # anti-aliased rasterizer
|
||||
truetype # TrueType font driver
|
||||
type1 # PostScript Type 1 font driver
|
||||
type42 # PostScript Type 42 (embedded TrueType) driver
|
||||
winfonts # Windows FON/FNT font driver
|
||||
;
|
||||
|
||||
|
||||
# Don't touch.
|
||||
#
|
||||
FT2_INCLUDE = $(FT2_BUILD_INCLUDE)
|
||||
[ FT2_SubDir $(FT2_INCLUDE_DIR) ] ;
|
||||
|
||||
FT2_SRC = [ FT2_SubDir $(FT2_SRC_DIR) ] ;
|
||||
|
||||
# Location of API Reference Documentation
|
||||
#
|
||||
if $(DOC_DIR)
|
||||
{
|
||||
DOC_DIR = $(DOCDIR:T) ;
|
||||
}
|
||||
else
|
||||
{
|
||||
DOC_DIR = docs/reference ;
|
||||
}
|
||||
|
||||
|
||||
# Only used by FreeType developers.
|
||||
#
|
||||
if $(DEBUG_HINTER)
|
||||
{
|
||||
CCFLAGS += -DDEBUG_HINTER ;
|
||||
}
|
||||
|
||||
|
||||
# We need `include' in the current include path in order to
|
||||
# compile any part of FreeType 2.
|
||||
#
|
||||
HDRS += $(FT2_INCLUDE) ;
|
||||
|
||||
|
||||
# We need to #define FT2_BUILD_LIBRARY so that our sources find the
|
||||
# internal headers
|
||||
#
|
||||
CCFLAGS += -DFT2_BUILD_LIBRARY ;
|
||||
|
||||
# Uncomment the following line if you want to build individual source files
|
||||
# for each FreeType 2 module. This is only useful during development, and
|
||||
# is better defined as an environment variable anyway!
|
||||
#
|
||||
# FT2_MULTI = true ;
|
||||
|
||||
|
||||
# The files `ftheader.h', `internal.h', and `ftserv.h' are used to define
|
||||
# macros that are later used in #include statements. They need to be parsed
|
||||
# in order to record these definitions.
|
||||
#
|
||||
HDRMACRO [ FT2_SubDir $(FT2_INCLUDE_DIR) freetype config ftheader.h ] ;
|
||||
HDRMACRO [ FT2_SubDir $(FT2_INCLUDE_DIR) freetype internal internal.h ] ;
|
||||
HDRMACRO [ FT2_SubDir $(FT2_INCLUDE_DIR) freetype internal ftserv.h ] ;
|
||||
|
||||
|
||||
# Now include the Jamfile in `freetype2/src', used to drive the compilation
|
||||
# of each FreeType 2 component and/or module.
|
||||
#
|
||||
SubInclude FT2_TOP $(FT2_SRC_DIR) ;
|
||||
|
||||
# Handle the generation of the `ftexport.sym' file, which contains the list
|
||||
# of exported symbols. This can be used on Unix by libtool.
|
||||
#
|
||||
SubInclude FT2_TOP $(FT2_SRC_DIR) tools ;
|
||||
|
||||
rule GenExportSymbols
|
||||
{
|
||||
local apinames = apinames$(SUFEXE) ;
|
||||
local headers = [ Glob $(2) : *.h ] ;
|
||||
|
||||
LOCATE on $(1) = $(ALL_LOCATE_TARGET) ;
|
||||
|
||||
APINAMES on $(1) = apinames$(SUFEXE) ;
|
||||
|
||||
Depends $(1) : $(apinames) $(headers) ;
|
||||
GenExportSymbols1 $(1) : $(headers) ;
|
||||
Clean clean : $(1) ;
|
||||
}
|
||||
|
||||
actions GenExportSymbols1 bind APINAMES
|
||||
{
|
||||
$(APINAMES) $(2) > $(1)
|
||||
}
|
||||
|
||||
GenExportSymbols ftexport.sym : include include/cache ;
|
||||
|
||||
# Test files (hinter debugging). Only used by FreeType developers.
|
||||
#
|
||||
if $(DEBUG_HINTER)
|
||||
{
|
||||
SubInclude FT2_TOP tests ;
|
||||
}
|
||||
|
||||
rule RefDoc
|
||||
{
|
||||
Depends $1 : all ;
|
||||
NotFile $1 ;
|
||||
Always $1 ;
|
||||
}
|
||||
|
||||
actions RefDoc
|
||||
{
|
||||
python $(FT2_SRC)/tools/docmaker/docmaker.py
|
||||
--prefix=ft2
|
||||
--title=FreeType-2.6.1
|
||||
--output=$(DOC_DIR)
|
||||
$(FT2_INCLUDE)/freetype/*.h
|
||||
$(FT2_INCLUDE)/freetype/config/*.h
|
||||
}
|
||||
|
||||
RefDoc refdoc ;
|
||||
|
||||
|
||||
# end of top Jamfile
|
71
thirdparty/freetype/Jamrules
vendored
Normal file
71
thirdparty/freetype/Jamrules
vendored
Normal file
|
@ -0,0 +1,71 @@
|
|||
# FreeType 2 JamRules.
|
||||
#
|
||||
# Copyright 2001-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# This file contains the Jam rules needed to build the FreeType 2 library.
|
||||
# It is shared by all Jamfiles and is included only once in the build
|
||||
# process.
|
||||
#
|
||||
|
||||
|
||||
# Call SubDirHdrs on a list of directories.
|
||||
#
|
||||
rule AddSubDirHdrs
|
||||
{
|
||||
local x ;
|
||||
|
||||
for x in $(<)
|
||||
{
|
||||
SubDirHdrs $(x) ;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# Determine prefix of library file. We must use "libxxxxx" on Unix systems,
|
||||
# while all other simply use the real name.
|
||||
#
|
||||
if $(UNIX)
|
||||
{
|
||||
LIBPREFIX ?= lib ;
|
||||
}
|
||||
else
|
||||
{
|
||||
LIBPREFIX ?= "" ;
|
||||
}
|
||||
|
||||
# FT2_TOP contains the location of the FreeType source directory. You can
|
||||
# set it to a specific value if you want to compile the library as part of a
|
||||
# larger project.
|
||||
#
|
||||
FT2_TOP ?= $(DOT) ;
|
||||
|
||||
# Define a new rule used to declare a sub directory of the Nirvana source
|
||||
# tree.
|
||||
#
|
||||
rule FT2_SubDir
|
||||
{
|
||||
if $(FT2_TOP) = $(DOT)
|
||||
{
|
||||
return [ FDirName $(<) ] ;
|
||||
}
|
||||
else
|
||||
{
|
||||
return [ FDirName $(FT2_TOP) $(<) ] ;
|
||||
}
|
||||
}
|
||||
|
||||
# We also set ALL_LOCATE_TARGET in order to place all object and library
|
||||
# files in "objs".
|
||||
#
|
||||
ALL_LOCATE_TARGET ?= [ FT2_SubDir objs ] ;
|
||||
|
||||
|
||||
# end of Jamrules
|
34
thirdparty/freetype/Makefile
vendored
Normal file
34
thirdparty/freetype/Makefile
vendored
Normal file
|
@ -0,0 +1,34 @@
|
|||
#
|
||||
# FreeType 2 build system -- top-level Makefile
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# Project names
|
||||
#
|
||||
PROJECT := freetype
|
||||
PROJECT_TITLE := FreeType
|
||||
|
||||
# The variable TOP_DIR holds the path to the topmost directory in the project
|
||||
# engine source hierarchy. If it is not defined, default it to `.'.
|
||||
#
|
||||
TOP_DIR ?= .
|
||||
|
||||
# The variable OBJ_DIR gives the location where object files and the
|
||||
# FreeType library are built.
|
||||
#
|
||||
OBJ_DIR ?= $(TOP_DIR)/objs
|
||||
|
||||
|
||||
include $(TOP_DIR)/builds/toplevel.mk
|
||||
|
||||
# EOF
|
84
thirdparty/freetype/README
vendored
Normal file
84
thirdparty/freetype/README
vendored
Normal file
|
@ -0,0 +1,84 @@
|
|||
FreeType 2.6.1
|
||||
==============
|
||||
|
||||
Homepage: http://www.freetype.org
|
||||
|
||||
FreeType is a freely available software library to render fonts.
|
||||
|
||||
It is written in C, designed to be small, efficient, highly
|
||||
customizable, and portable while capable of producing high-quality
|
||||
output (glyph images) of most vector and bitmap font formats.
|
||||
|
||||
Please read the docs/CHANGES file, it contains IMPORTANT
|
||||
INFORMATION.
|
||||
|
||||
Read the files `docs/INSTALL*' for installation instructions; see
|
||||
the file `docs/LICENSE.TXT' for the available licenses.
|
||||
|
||||
The FreeType 2 API reference is located in `docs/reference'; use the
|
||||
file `ft2-toc.html' as the top entry point. Additional
|
||||
documentation is available as a separate package from our sites. Go
|
||||
to
|
||||
|
||||
http://download.savannah.gnu.org/releases/freetype/
|
||||
|
||||
and download one of the following files.
|
||||
|
||||
freetype-doc-2.6.1.tar.bz2
|
||||
freetype-doc-2.6.1.tar.gz
|
||||
ftdoc261.zip
|
||||
|
||||
To view the documentation online, go to
|
||||
|
||||
http://www.freetype.org/freetype2/documentation.html
|
||||
|
||||
|
||||
Mailing Lists
|
||||
=============
|
||||
|
||||
The preferred way of communication with the FreeType team is using
|
||||
e-mail lists.
|
||||
|
||||
general use and discussion: freetype@nongnu.org
|
||||
engine internals, porting, etc.: freetype-devel@nongnu.org
|
||||
announcements: freetype-announce@nongnu.org
|
||||
git repository tracker: freetype-commit@nongnu.org
|
||||
|
||||
The lists are moderated; see
|
||||
|
||||
http://www.freetype.org/contact.html
|
||||
|
||||
how to subscribe.
|
||||
|
||||
|
||||
Bugs
|
||||
====
|
||||
|
||||
Please submit bug reports at
|
||||
|
||||
https://savannah.nongnu.org/bugs/?group=freetype
|
||||
|
||||
Alternatively, you might report bugs by e-mail to
|
||||
`freetype-devel@nongnu.org'. Don't forget to send a detailed
|
||||
explanation of the problem -- there is nothing worse than receiving
|
||||
a terse message that only says `it doesn't work'.
|
||||
|
||||
|
||||
Enjoy!
|
||||
|
||||
|
||||
The FreeType Team
|
||||
|
||||
----------------------------------------------------------------------
|
||||
|
||||
Copyright 2006-2015 by
|
||||
David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
|
||||
This file is part of the FreeType project, and may only be used,
|
||||
modified, and distributed under the terms of the FreeType project
|
||||
license, LICENSE.TXT. By continuing to use, modify, or distribute
|
||||
this file you indicate that you have read the license and understand
|
||||
and accept it fully.
|
||||
|
||||
|
||||
--- end of README ---
|
50
thirdparty/freetype/README.git
vendored
Normal file
50
thirdparty/freetype/README.git
vendored
Normal file
|
@ -0,0 +1,50 @@
|
|||
The git archive doesn't contain pre-built configuration scripts for
|
||||
UNIXish platforms. To generate them say
|
||||
|
||||
sh autogen.sh
|
||||
|
||||
which in turn depends on the following packages:
|
||||
|
||||
automake (1.10.1)
|
||||
libtool (2.2.4)
|
||||
autoconf (2.62)
|
||||
|
||||
The versions given in parentheses are known to work. Newer versions
|
||||
should work too, of course. Note that autogen.sh also sets up proper
|
||||
file permissions for the `configure' and auxiliary scripts.
|
||||
|
||||
The autogen.sh script now checks the version of above three packages
|
||||
whether they match the numbers above. Otherwise it will complain and
|
||||
suggest either upgrading or using an environment variable to point to
|
||||
a more recent version of the required tool(s).
|
||||
|
||||
Note that `aclocal' is provided by the `automake' package on Linux,
|
||||
and that `libtoolize' is called `glibtoolize' on Darwin (OS X).
|
||||
|
||||
|
||||
For static builds which don't use platform specific optimizations, no
|
||||
configure script is necessary at all; saying
|
||||
|
||||
make setup ansi
|
||||
make
|
||||
|
||||
should work on all platforms which have GNU make (or makepp).
|
||||
|
||||
|
||||
Similarly, a build with `cmake' can be done directly from the git
|
||||
repository.
|
||||
|
||||
|
||||
----------------------------------------------------------------------
|
||||
|
||||
Copyright 2005-2015 by
|
||||
David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
|
||||
This file is part of the FreeType project, and may only be used,
|
||||
modified, and distributed under the terms of the FreeType project
|
||||
license, LICENSE.TXT. By continuing to use, modify, or distribute
|
||||
this file you indicate that you have read the license and understand
|
||||
and accept it fully.
|
||||
|
||||
|
||||
--- end of README.git ---
|
165
thirdparty/freetype/autogen.sh
vendored
Executable file
165
thirdparty/freetype/autogen.sh
vendored
Executable file
|
@ -0,0 +1,165 @@
|
|||
#!/bin/sh
|
||||
|
||||
# Copyright 2005-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
run ()
|
||||
{
|
||||
echo "running \`$*'"
|
||||
eval $*
|
||||
|
||||
if test $? != 0 ; then
|
||||
echo "error while running \`$*'"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
get_major_version ()
|
||||
{
|
||||
echo $1 | sed -e 's/\([0-9][0-9]*\)\..*/\1/g'
|
||||
}
|
||||
|
||||
get_minor_version ()
|
||||
{
|
||||
echo $1 | sed -e 's/[0-9][0-9]*\.\([0-9][0-9]*\).*/\1/g'
|
||||
}
|
||||
|
||||
get_patch_version ()
|
||||
{
|
||||
# tricky: some version numbers don't include a patch
|
||||
# separated with a point, but something like 1.4-p6
|
||||
patch=`echo $1 | sed -e 's/[0-9][0-9]*\.[0-9][0-9]*\.\([0-9][0-9]*\).*/\1/g'`
|
||||
if test "$patch" = "$1"; then
|
||||
patch=`echo $1 | sed -e 's/[0-9][0-9]*\.[0-9][0-9]*\-p\([0-9][0-9]*\).*/\1/g'`
|
||||
# if there isn't any patch number, default to 0
|
||||
if test "$patch" = "$1"; then
|
||||
patch=0
|
||||
fi
|
||||
fi
|
||||
echo $patch
|
||||
}
|
||||
|
||||
# $1: version to check
|
||||
# $2: minimum version
|
||||
|
||||
compare_to_minimum_version ()
|
||||
{
|
||||
MAJOR1=`get_major_version $1`
|
||||
MAJOR2=`get_major_version $2`
|
||||
if test $MAJOR1 -lt $MAJOR2; then
|
||||
echo 0
|
||||
return
|
||||
else
|
||||
if test $MAJOR1 -gt $MAJOR2; then
|
||||
echo 1
|
||||
return
|
||||
fi
|
||||
fi
|
||||
|
||||
MINOR1=`get_minor_version $1`
|
||||
MINOR2=`get_minor_version $2`
|
||||
if test $MINOR1 -lt $MINOR2; then
|
||||
echo 0
|
||||
return
|
||||
else
|
||||
if test $MINOR1 -gt $MINOR2; then
|
||||
echo 1
|
||||
return
|
||||
fi
|
||||
fi
|
||||
|
||||
PATCH1=`get_patch_version $1`
|
||||
PATCH2=`get_patch_version $2`
|
||||
if test $PATCH1 -lt $PATCH2; then
|
||||
echo 0
|
||||
else
|
||||
echo 1
|
||||
fi
|
||||
}
|
||||
|
||||
# check the version of a given tool against a minimum version number
|
||||
#
|
||||
# $1: tool path
|
||||
# $2: tool usual name (e.g. `aclocal')
|
||||
# $3: tool variable (e.g. `ACLOCAL')
|
||||
# $4: minimum version to check against
|
||||
# $5: option field index used to extract the tool version from the
|
||||
# output of --version
|
||||
|
||||
check_tool_version ()
|
||||
{
|
||||
field=$5
|
||||
# assume the output of "[TOOL] --version" is "toolname (GNU toolname foo bar) version"
|
||||
if test "$field"x = x; then
|
||||
field=3 # default to 3 for all GNU autotools, after filtering enclosed string
|
||||
fi
|
||||
version=`$1 --version | head -1 | sed 's/([^)]*)/()/g' | cut -d ' ' -f $field`
|
||||
version_check=`compare_to_minimum_version $version $4`
|
||||
if test "$version_check"x = 0x; then
|
||||
echo "ERROR: Your version of the \`$2' tool is too old."
|
||||
echo " Minimum version $4 is required (yours is version $version)."
|
||||
echo " Please upgrade or use the $3 variable to point to a more recent one."
|
||||
echo ""
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
if test ! -f ./builds/unix/configure.raw; then
|
||||
echo "You must be in the same directory as \`autogen.sh'."
|
||||
echo "Bootstrapping doesn't work if srcdir != builddir."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# On MacOS X, the GNU libtool is named `glibtool'.
|
||||
HOSTOS=`uname`
|
||||
if test "$LIBTOOLIZE"x != x; then
|
||||
:
|
||||
elif test "$HOSTOS"x = Darwinx; then
|
||||
LIBTOOLIZE=glibtoolize
|
||||
else
|
||||
LIBTOOLIZE=libtoolize
|
||||
fi
|
||||
|
||||
if test "$ACLOCAL"x = x; then
|
||||
ACLOCAL=aclocal
|
||||
fi
|
||||
|
||||
if test "$AUTOCONF"x = x; then
|
||||
AUTOCONF=autoconf
|
||||
fi
|
||||
|
||||
check_tool_version $ACLOCAL aclocal ACLOCAL 1.10.1
|
||||
check_tool_version $LIBTOOLIZE libtoolize LIBTOOLIZE 2.2.4
|
||||
check_tool_version $AUTOCONF autoconf AUTOCONF 2.62
|
||||
|
||||
# This sets freetype_major, freetype_minor, and freetype_patch.
|
||||
eval `sed -nf version.sed include/freetype/freetype.h`
|
||||
|
||||
# We set freetype-patch to an empty value if it is zero.
|
||||
if test "$freetype_patch" = ".0"; then
|
||||
freetype_patch=
|
||||
fi
|
||||
|
||||
cd builds/unix
|
||||
|
||||
echo "generating \`configure.ac'"
|
||||
sed -e "s;@VERSION@;$freetype_major$freetype_minor$freetype_patch;" \
|
||||
< configure.raw > configure.ac
|
||||
|
||||
run aclocal -I . --force
|
||||
run $LIBTOOLIZE --force --copy --install
|
||||
run autoconf --force
|
||||
|
||||
chmod +x install-sh
|
||||
|
||||
cd ../..
|
||||
|
||||
chmod +x ./configure
|
||||
|
||||
# EOF
|
61
thirdparty/freetype/builds/FindHarfBuzz.cmake
vendored
Normal file
61
thirdparty/freetype/builds/FindHarfBuzz.cmake
vendored
Normal file
|
@ -0,0 +1,61 @@
|
|||
# Copyright (c) 2012, Intel Corporation
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions are met:
|
||||
#
|
||||
# * Redistributions of source code must retain the above copyright notice, this
|
||||
# list of conditions and the following disclaimer.
|
||||
# * Redistributions in binary form must reproduce the above copyright notice,
|
||||
# this list of conditions and the following disclaimer in the documentation
|
||||
# and/or other materials provided with the distribution.
|
||||
# * Neither the name of Intel Corporation nor the names of its contributors may
|
||||
# be used to endorse or promote products derived from this software without
|
||||
# specific prior written permission.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
|
||||
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
# POSSIBILITY OF SUCH DAMAGE.
|
||||
#
|
||||
# Try to find Harfbuzz include and library directories.
|
||||
#
|
||||
# After successful discovery, this will set for inclusion where needed:
|
||||
# HARFBUZZ_INCLUDE_DIRS - containg the HarfBuzz headers
|
||||
# HARFBUZZ_LIBRARIES - containg the HarfBuzz library
|
||||
|
||||
include(FindPkgConfig)
|
||||
|
||||
pkg_check_modules(PC_HARFBUZZ harfbuzz>=0.9.7)
|
||||
|
||||
find_path(HARFBUZZ_INCLUDE_DIRS NAMES hb.h
|
||||
HINTS ${PC_HARFBUZZ_INCLUDE_DIRS} ${PC_HARFBUZZ_INCLUDEDIR}
|
||||
)
|
||||
|
||||
find_library(HARFBUZZ_LIBRARIES NAMES harfbuzz
|
||||
HINTS ${PC_HARFBUZZ_LIBRARY_DIRS} ${PC_HARFBUZZ_LIBDIR}
|
||||
)
|
||||
|
||||
# HarfBuzz 0.9.18 split ICU support into a separate harfbuzz-icu library.
|
||||
if ("${PC_HARFBUZZ_VERSION}" VERSION_GREATER "0.9.17")
|
||||
pkg_check_modules(PC_HARFBUZZ_ICU harfbuzz-icu>=0.9.18 REQUIRED)
|
||||
find_library(HARFBUZZ_ICU_LIBRARIES NAMES harfbuzz-icu
|
||||
HINTS ${PC_HARFBUZZ_ICU_LIBRARY_DIRS} ${PC_HARFBUZZ_ICU_LIBDIR}
|
||||
)
|
||||
list(APPEND HARFBUZZ_LIBRARIES "${HARFBUZZ_ICU_LIBRARIES}")
|
||||
endif ()
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(HarfBuzz DEFAULT_MSG HARFBUZZ_INCLUDE_DIRS HARFBUZZ_LIBRARIES)
|
||||
|
||||
mark_as_advanced(
|
||||
HARFBUZZ_ICU_LIBRARIES
|
||||
HARFBUZZ_INCLUDE_DIRS
|
||||
HARFBUZZ_LIBRARIES
|
||||
)
|
110
thirdparty/freetype/builds/amiga/README
vendored
Normal file
110
thirdparty/freetype/builds/amiga/README
vendored
Normal file
|
@ -0,0 +1,110 @@
|
|||
|
||||
README for the builds/amiga subdirectory.
|
||||
|
||||
Copyright 2005-2015 by
|
||||
Werner Lemberg and Detlef Würkner.
|
||||
|
||||
This file is part of the FreeType project, and may only be used, modified,
|
||||
and distributed under the terms of the FreeType project license,
|
||||
LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
indicate that you have read the license and understand and accept it
|
||||
fully.
|
||||
|
||||
|
||||
The makefile.os4 is for the AmigaOS4 SDK. To use it, type
|
||||
"make -f makefile.os4", it produces a link library libft2_ppc.a.
|
||||
|
||||
The makefile is for ppc-morphos-gcc-2.95.3-bin.tgz (gcc 2.95.3 hosted on
|
||||
68k-Amiga producing MorphOS-PPC-binaries from http://www.morphos.de).
|
||||
To use it, type "make assign", then "make"; it produces a link library
|
||||
libft2_ppc.a.
|
||||
|
||||
The smakefile is a makefile for Amiga SAS/C 6.58 (no longer available,
|
||||
latest sold version was 6.50, updates can be found in Aminet). It is
|
||||
based on the version found in the sourcecode of ttf.library 0.83b for
|
||||
FreeType 1.3.1 from Richard Griffith (ragriffi@sprynet.com,
|
||||
http://ragriffi.home.sprynet.com).
|
||||
|
||||
You will also need the latest include files and amiga.lib from the
|
||||
Amiga web site (http://www.amiga.com/3.9/download/NDK3.9.lha) for
|
||||
AmigaOS 3.9; the generated code should work under AmigaOS 2.04 and up.
|
||||
|
||||
To use it, call "smake assign" and then "smake" from the builds/amiga
|
||||
directory. The results are:
|
||||
|
||||
- A link library "ft2_680x0.lib" (where x depends on the setting of
|
||||
the CPU entry in the smakefile) containing all FreeType2 parts
|
||||
except of the init code, debugging code, and the system interface
|
||||
code.
|
||||
|
||||
- ftsystem.o, an object module containing the standard version of the
|
||||
system interface code which uses fopen() fclose() fread() fseek()
|
||||
ftell() malloc() realloc() and free() from lib:sc.lib (not pure).
|
||||
|
||||
- ftsystempure.o, an object module containing the pure version of the
|
||||
system interface code which uses Open() Close() Read() Seek()
|
||||
ExamineFH() AsmAllocPooled() AsmFreePooled() etc. This version can
|
||||
be used in both normal programs and in Amiga run-time shared system
|
||||
librarys (can be linked with lib:libinit.o, no copying of DATA and
|
||||
BSS hunks for each OpenLibrary() necessary). Source code is in
|
||||
src/base/ftsystem.c.
|
||||
|
||||
- ftdebug.o, an object module containing the standard version of the
|
||||
debugging code which uses vprintf() and exit() (not pure).
|
||||
Debugging can be turned on in FT:include/freetype/config/ftoption.h
|
||||
and with FT_SetTraceLevel().
|
||||
|
||||
- ftdebugpure.o, an object module containing the pure version of the
|
||||
debugging code which uses KVPrintf() from lib:debug.lib and no
|
||||
exit(). For debugging of Amiga run-time shared system libraries.
|
||||
Source code is in src/base/ftdebug.c.
|
||||
|
||||
- NO ftinit.o. Because linking with a link library should result in
|
||||
linking only the needed object modules in it, but standard
|
||||
ftsystem.o would force ALL FreeType2 modules to be linked to your
|
||||
program, I decided to use a different scheme: You must #include
|
||||
FT:src/base/ftinit.c in your sourcecode and specify with #define
|
||||
statements which modules you need. See
|
||||
include/freetype/config/ftmodule.h.
|
||||
|
||||
|
||||
To use in your own programs:
|
||||
|
||||
- Insert the #define and #include statements from top of
|
||||
include/freetype/config/ftmodule.h in your source code and
|
||||
uncomment the #define statements for the FreeType2 modules you need.
|
||||
|
||||
- You can use either PARAMETERS=REGISTER or PARAMETERS=STACK for
|
||||
calling the FreeType2 functions, because the link library and the
|
||||
object files are compiled with PARAMETERS=BOTH.
|
||||
|
||||
- "smake assign" (assign "FT:" to the FreeType2 main directory).
|
||||
|
||||
- Compile your program.
|
||||
|
||||
- Link with either ftsystem.o or ftsystempure.o, if debugging enabled
|
||||
with either ftdebug.o or (ftdebugpure.o and lib:debug.lib), and with
|
||||
ft2_680x0.lib as link library.
|
||||
|
||||
|
||||
To adapt to other compilers:
|
||||
|
||||
- The standard ANSI C maximum length of 31 significant characters in
|
||||
identifiers is not enough for FreeType2. Check if your compiler has
|
||||
a minimum length of 40 significant characters or can be switched to
|
||||
it. "idlen=40" is the option for SAS/C. Setting #define
|
||||
HAVE_LIMIT_ON_IDENTS in an include file may also work (not tested).
|
||||
|
||||
- Make sure that the include directory in builds/amiga is searched
|
||||
before the normal FreeType2 include directory, so you are able to
|
||||
replace problematic include files with your own version (same may be
|
||||
useful for the src directory).
|
||||
|
||||
- An example of how to replace/workaround a problematic include file
|
||||
is include/freetype/config/ftconfig.h; it changes a #define that
|
||||
would prevent SAS/C from generating XDEF's where it should do that and
|
||||
then includes the standard FreeType2 include file.
|
||||
|
||||
Local Variables:
|
||||
coding: latin-1
|
||||
End:
|
55
thirdparty/freetype/builds/amiga/include/config/ftconfig.h
vendored
Normal file
55
thirdparty/freetype/builds/amiga/include/config/ftconfig.h
vendored
Normal file
|
@ -0,0 +1,55 @@
|
|||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftconfig.h */
|
||||
/* */
|
||||
/* Amiga-specific configuration file (specification only). */
|
||||
/* */
|
||||
/* Copyright 2005-2015 by */
|
||||
/* Werner Lemberg and Detlef Würkner. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
/*
|
||||
* This is an example how to override the default FreeType2 header files
|
||||
* with Amiga-specific changes. When the compiler searches this directory
|
||||
* before the default directory, we can do some modifications.
|
||||
*
|
||||
* Here we must change FT_EXPORT_DEF so that SAS/C does
|
||||
* generate the needed XDEFs.
|
||||
*/
|
||||
|
||||
#if 0
|
||||
#define FT_EXPORT_DEF( x ) extern x
|
||||
#endif
|
||||
|
||||
#undef FT_EXPORT_DEF
|
||||
#define FT_EXPORT_DEF( x ) x
|
||||
|
||||
/* Now include the original file */
|
||||
#ifndef __MORPHOS__
|
||||
#ifdef __SASC
|
||||
#include "FT:include/freetype/config/ftconfig.h"
|
||||
#else
|
||||
#include "/FT/include/freetype/config/ftconfig.h"
|
||||
#endif
|
||||
#else
|
||||
/* We must define that, it seems that
|
||||
* lib/gcc-lib/ppc-morphos/2.95.3/include/syslimits.h is missing in
|
||||
* ppc-morphos-gcc-2.95.3-bin.tgz (gcc for 68k producing MorphOS PPC elf
|
||||
* binaries from http://www.morphos.de)
|
||||
*/
|
||||
#define _LIBC_LIMITS_H_
|
||||
#include "/FT/include/freetype/config/ftconfig.h"
|
||||
#endif
|
||||
|
||||
/*
|
||||
Local Variables:
|
||||
coding: latin-1
|
||||
End:
|
||||
*/
|
160
thirdparty/freetype/builds/amiga/include/config/ftmodule.h
vendored
Normal file
160
thirdparty/freetype/builds/amiga/include/config/ftmodule.h
vendored
Normal file
|
@ -0,0 +1,160 @@
|
|||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftmodule.h */
|
||||
/* */
|
||||
/* Amiga-specific FreeType module selection. */
|
||||
/* */
|
||||
/* Copyright 2005-2015 by */
|
||||
/* Werner Lemberg and Detlef Würkner. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
/*
|
||||
* To avoid that all your programs include all FreeType modules,
|
||||
* you copy the following piece of source code into your own
|
||||
* source file and specify which modules you really need in your
|
||||
* application by uncommenting the appropriate lines.
|
||||
*/
|
||||
/*
|
||||
//#define FT_USE_AUTOFIT // autofitter
|
||||
//#define FT_USE_RASTER // monochrome rasterizer
|
||||
//#define FT_USE_SMOOTH // anti-aliasing rasterizer
|
||||
//#define FT_USE_TT // truetype font driver
|
||||
//#define FT_USE_T1 // type1 font driver
|
||||
//#define FT_USE_T42 // type42 font driver
|
||||
//#define FT_USE_T1CID // cid-keyed type1 font driver // no cmap support
|
||||
//#define FT_USE_CFF // opentype font driver
|
||||
//#define FT_USE_BDF // bdf bitmap font driver
|
||||
//#define FT_USE_PCF // pcf bitmap font driver
|
||||
//#define FT_USE_PFR // pfr font driver
|
||||
//#define FT_USE_WINFNT // windows .fnt|.fon bitmap font driver
|
||||
//#define FT_USE_OTV // opentype validator
|
||||
//#define FT_USE_GXV // truetype gx validator
|
||||
#include "FT:src/base/ftinit.c"
|
||||
*/
|
||||
|
||||
/* Make sure that the needed support modules are built in.
|
||||
* Dependencies can be found by searching for FT_Get_Module.
|
||||
*/
|
||||
|
||||
#ifdef FT_USE_T42
|
||||
#define FT_USE_TT
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_TT
|
||||
#define FT_USE_SFNT
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_CFF
|
||||
#define FT_USE_SFNT
|
||||
#define FT_USE_PSHINT
|
||||
#define FT_USE_PSNAMES
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_T1
|
||||
#define FT_USE_PSAUX
|
||||
#define FT_USE_PSHINT
|
||||
#define FT_USE_PSNAMES
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_T1CID
|
||||
#define FT_USE_PSAUX
|
||||
#define FT_USE_PSHINT
|
||||
#define FT_USE_PSNAMES
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PSAUX
|
||||
#define FT_USE_PSNAMES
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_SFNT
|
||||
#define FT_USE_PSNAMES
|
||||
#endif
|
||||
|
||||
/* Now include the modules */
|
||||
|
||||
#ifdef FT_USE_AUTOFIT
|
||||
FT_USE_MODULE( FT_Module_Class, autofit_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_TT
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, tt_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_T1
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, t1_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_CFF
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, cff_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_T1CID
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, t1cid_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PFR
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, pfr_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_T42
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, t42_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_WINFNT
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, winfnt_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PCF
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, pcf_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PSAUX
|
||||
FT_USE_MODULE( FT_Module_Class, psaux_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PSNAMES
|
||||
FT_USE_MODULE( FT_Module_Class, psnames_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PSHINT
|
||||
FT_USE_MODULE( FT_Module_Class, pshinter_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_RASTER
|
||||
FT_USE_MODULE( FT_Renderer_Class, ft_raster1_renderer_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_SFNT
|
||||
FT_USE_MODULE( FT_Module_Class, sfnt_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_SMOOTH
|
||||
FT_USE_MODULE( FT_Renderer_Class, ft_smooth_renderer_class )
|
||||
FT_USE_MODULE( FT_Renderer_Class, ft_smooth_lcd_renderer_class )
|
||||
FT_USE_MODULE( FT_Renderer_Class, ft_smooth_lcdv_renderer_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_OTV
|
||||
FT_USE_MODULE( FT_Module_Class, otv_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_BDF
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, bdf_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_GXV
|
||||
FT_USE_MODULE( FT_Module_Class, gxv_module_class )
|
||||
#endif
|
||||
|
||||
/*
|
||||
Local Variables:
|
||||
coding: latin-1
|
||||
End:
|
||||
*/
|
299
thirdparty/freetype/builds/amiga/makefile
vendored
Normal file
299
thirdparty/freetype/builds/amiga/makefile
vendored
Normal file
|
@ -0,0 +1,299 @@
|
|||
#
|
||||
# Makefile for FreeType2 link library using ppc-morphos-gcc-2.95.3-bin.tgz
|
||||
# (gcc 2.95.3 hosted on 68k-Amiga producing MorphOS-PPC-binaries from
|
||||
# http://www.morphos.de)
|
||||
#
|
||||
|
||||
|
||||
# Copyright 2005-2015 by
|
||||
# Werner Lemberg and Detlef Würkner.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
#
|
||||
# to build from the builds/amiga directory call
|
||||
#
|
||||
# make assign
|
||||
# make
|
||||
#
|
||||
# Your programs source code should start with this
|
||||
# (uncomment the parts you do not need to keep the program small):
|
||||
# ---8<---
|
||||
#define FT_USE_AUTOFIT // autofitter
|
||||
#define FT_USE_RASTER // monochrome rasterizer
|
||||
#define FT_USE_SMOOTH // anti-aliasing rasterizer
|
||||
#define FT_USE_TT // truetype font driver
|
||||
#define FT_USE_T1 // type1 font driver
|
||||
#define FT_USE_T42 // type42 font driver
|
||||
#define FT_USE_T1CID // cid-keyed type1 font driver
|
||||
#define FT_USE_CFF // opentype font driver
|
||||
#define FT_USE_BDF // bdf bitmap font driver
|
||||
#define FT_USE_PCF // pcf bitmap font driver
|
||||
#define FT_USE_PFR // pfr font driver
|
||||
#define FT_USE_WINFNT // windows .fnt|.fon bitmap font driver
|
||||
#define FT_USE_OTV // opentype validator
|
||||
#define FT_USE_GXV // truetype gx validator
|
||||
#include "FT:src/base/ftinit.c"
|
||||
# ---8<---
|
||||
#
|
||||
# link your programs with libft2_ppc.a and either ftsystem.ppc.o or ftsystempure.ppc.o
|
||||
# (and either ftdebug.ppc.o or ftdebugpure.ppc.o if you enabled FT_DEBUG_LEVEL_ERROR or
|
||||
# FT_DEBUG_LEVEL_TRACE in include/freetype/config/ftoption.h).
|
||||
|
||||
all: libft2_ppc.a ftsystem.ppc.o ftsystempure.ppc.o
|
||||
|
||||
assign:
|
||||
assign FT: //
|
||||
|
||||
FTSRC = /FT/src
|
||||
|
||||
CC = ppc-morphos-gcc
|
||||
AR = ppc-morphos-ar rc
|
||||
RANLIB = ppc-morphos-ranlib
|
||||
LD = ppc-morphos-ld
|
||||
CFLAGS = -DFT2_BUILD_LIBRARY -O2 -I/emu/emulinclude/includegcc -I/emu/include -Iinclude -I$(FTSRC) -I/FT/include
|
||||
|
||||
#
|
||||
# FreeType2 library base
|
||||
#
|
||||
ftbase.ppc.o: $(FTSRC)/base/ftbase.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftinit.ppc.o: $(FTSRC)/base/ftinit.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftsystem.ppc.o: $(FTSRC)/base/ftsystem.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
# pure version for use in run-time library etc
|
||||
ftsystempure.ppc.o: src/base/ftsystem.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftdebug.ppc.o: $(FTSRC)/base/ftdebug.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
# pure version for use in run-time library etc
|
||||
ftdebugpure.ppc.o: src/base/ftdebug.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library base extensions
|
||||
#
|
||||
ftbbox.ppc.o: $(FTSRC)/base/ftbbox.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftbdf.ppc.o: $(FTSRC)/base/ftbdf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftbitmap.ppc.o: $(FTSRC)/base/ftbitmap.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftcid.ppc.o: $(FTSRC)/base/ftcid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftfntfmt.ppc.o: $(FTSRC)/base/ftfntfmt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftfstype.ppc.o: $(FTSRC)/base/ftfstype.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftgasp.ppc.o: $(FTSRC)/base/ftgasp.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftglyph.ppc.o: $(FTSRC)/base/ftglyph.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftgxval.ppc.o: $(FTSRC)/base/ftgxval.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftlcdfil.ppc.o: $(FTSRC)/base/ftlcdfil.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftmm.ppc.o: $(FTSRC)/base/ftmm.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftotval.ppc.o: $(FTSRC)/base/ftotval.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftpatent.ppc.o: $(FTSRC)/base/ftpatent.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftpfr.ppc.o: $(FTSRC)/base/ftpfr.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftstroke.ppc.o: $(FTSRC)/base/ftstroke.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftsynth.ppc.o: $(FTSRC)/base/ftsynth.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
fttype1.ppc.o: $(FTSRC)/base/fttype1.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftwinfnt.ppc.o: $(FTSRC)/base/ftwinfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library autofitting module
|
||||
#
|
||||
autofit.ppc.o: $(FTSRC)/autofit/autofit.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library postscript hinting module
|
||||
#
|
||||
pshinter.ppc.o: $(FTSRC)/pshinter/pshinter.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library PS support module
|
||||
#
|
||||
psaux.ppc.o: $(FTSRC)/psaux/psaux.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library PS glyph names module
|
||||
#
|
||||
psnames.ppc.o: $(FTSRC)/psnames/psnames.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library monochrome raster module
|
||||
#
|
||||
raster.ppc.o: $(FTSRC)/raster/raster.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library anti-aliasing raster module
|
||||
#
|
||||
smooth.ppc.o: $(FTSRC)/smooth/smooth.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library 'sfnt' module
|
||||
#
|
||||
sfnt.ppc.o: $(FTSRC)/sfnt/sfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library glyph and image caching system
|
||||
#
|
||||
ftcache.ppc.o: $(FTSRC)/cache/ftcache.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library OpenType font driver
|
||||
#
|
||||
cff.ppc.o: $(FTSRC)/cff/cff.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library TrueType font driver
|
||||
#
|
||||
truetype.ppc.o: $(FTSRC)/truetype/truetype.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library Type1 font driver
|
||||
#
|
||||
type1.ppc.o: $(FTSRC)/type1/type1.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library Type42 font driver
|
||||
#
|
||||
type42.ppc.o: $(FTSRC)/type42/type42.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library CID-keyed Type1 font driver
|
||||
#
|
||||
type1cid.ppc.o: $(FTSRC)/cid/type1cid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library BDF bitmap font driver
|
||||
#
|
||||
bdf.ppc.o: $(FTSRC)/bdf/bdf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library PCF bitmap font driver
|
||||
#
|
||||
pcf.ppc.o: $(FTSRC)/pcf/pcf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library gzip support for compressed PCF bitmap fonts
|
||||
#
|
||||
gzip.ppc.o: $(FTSRC)/gzip/ftgzip.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
# FreeType2 library bzip2 support for compressed PCF bitmap fonts
|
||||
#
|
||||
bzip2.ppc.o: $(FTSRC)/bzip2/ftbzip2.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library compress support for compressed PCF bitmap fonts
|
||||
#
|
||||
lzw.ppc.o: $(FTSRC)/lzw/ftlzw.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library PFR font driver
|
||||
#
|
||||
pfr.ppc.o: $(FTSRC)/pfr/pfr.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library Windows FNT/FON bitmap font driver
|
||||
#
|
||||
winfnt.ppc.o: $(FTSRC)/winfonts/winfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library TrueTypeGX Validator
|
||||
#
|
||||
gxvalid.ppc.o: $(FTSRC)/gxvalid/gxvalid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library OpenType validator
|
||||
#
|
||||
otvalid.ppc.o: $(FTSRC)/otvalid/otvalid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
BASEPPC = ftbase.ppc.o ftbbox.ppc.o ftbdf.ppc.o ftbitmap.ppc.o ftcid.ppc.o \
|
||||
ftfntfmt.ppc.oftfstype.ppc.o ftgasp.ppc.o ftglyph.ppc.o \
|
||||
ftgxval.ppc.o ftlcdfil.ppc.o ftmm.ppc.o ftotval.ppc.o \
|
||||
ftpatent.ppc.o ftpfr.ppc.o ftstroke.ppc.o ftsynth.ppc.o \
|
||||
fttype1.ppc.o ftwinfnt.ppc.o
|
||||
|
||||
DEBUGPPC = ftdebug.ppc.o ftdebugpure.ppc.o
|
||||
|
||||
AFITPPC = autofit.ppc.o
|
||||
|
||||
GXVPPC = gxvalid.ppc.o
|
||||
|
||||
OTVPPC = otvalid.ppc.o
|
||||
|
||||
PSPPC = psaux.ppc.o psnames.ppc.o pshinter.ppc.o
|
||||
|
||||
RASTERPPC = raster.ppc.o smooth.ppc.o
|
||||
|
||||
FONTDPPC = cff.ppc.o type1.ppc.o type42.ppc.o type1cid.ppc.o truetype.ppc.o\
|
||||
bdf.ppc.o pcf.ppc.o pfr.ppc.o winfnt.ppc.o
|
||||
|
||||
libft2_ppc.a: $(BASEPPC) $(AFITPPC) $(GXVPPC) $(OTVPPC) $(PSPPC) $(RASTERPPC) sfnt.ppc.o ftcache.ppc.o $(FONTDPPC) gzip.ppc.o bzip2.ppc.o lzw.ppc.o
|
||||
$(AR) $@ $(BASEPPC) $(AFITPPC) $(GXVPPC) $(OTVPPC) $(PSPPC) $(RASTERPPC) sfnt.ppc.o ftcache.ppc.o $(FONTDPPC) gzip.ppc.o bzip2.ppc.o lzw.ppc.o
|
||||
-@ ($(RANLIB) $@ || true) >/dev/null 2>&1
|
||||
|
||||
#Local Variables:
|
||||
#coding: latin-1
|
||||
#End:
|
303
thirdparty/freetype/builds/amiga/makefile.os4
vendored
Normal file
303
thirdparty/freetype/builds/amiga/makefile.os4
vendored
Normal file
|
@ -0,0 +1,303 @@
|
|||
#
|
||||
# Makefile for FreeType2 link library using gcc 4.0.3 from the
|
||||
# AmigaOS4 SDK
|
||||
#
|
||||
|
||||
|
||||
# Copyright 2005-2015 by
|
||||
# Werner Lemberg and Detlef Würkner.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# to build from the builds/amiga directory call
|
||||
#
|
||||
# make -f makefile.os4
|
||||
#
|
||||
# Your programs source code should start with this
|
||||
# (uncomment the parts you do not need to keep the program small):
|
||||
# ---8<---
|
||||
#define FT_USE_AUTOFIT // autofitter
|
||||
#define FT_USE_RASTER // monochrome rasterizer
|
||||
#define FT_USE_SMOOTH // anti-aliasing rasterizer
|
||||
#define FT_USE_TT // truetype font driver
|
||||
#define FT_USE_T1 // type1 font driver
|
||||
#define FT_USE_T42 // type42 font driver
|
||||
#define FT_USE_T1CID // cid-keyed type1 font driver
|
||||
#define FT_USE_CFF // opentype font driver
|
||||
#define FT_USE_BDF // bdf bitmap font driver
|
||||
#define FT_USE_PCF // pcf bitmap font driver
|
||||
#define FT_USE_PFR // pfr font driver
|
||||
#define FT_USE_WINFNT // windows .fnt|.fon bitmap font driver
|
||||
#define FT_USE_OTV // opentype validator
|
||||
#define FT_USE_GXV // truetype gx validator
|
||||
#include "FT:src/base/ftinit.c"
|
||||
# ---8<---
|
||||
#
|
||||
# link your programs with libft2_ppc.a and either ftsystem.ppc.o or ftsystempure.ppc.o
|
||||
# (and either ftdebug.ppc.o or ftdebugpure.ppc.o if you enabled FT_DEBUG_LEVEL_ERROR or
|
||||
# FT_DEBUG_LEVEL_TRACE in include/freetype/config/ftoption.h).
|
||||
|
||||
all: assign libft2_ppc.a ftsystem.ppc.o ftsystempure.ppc.o
|
||||
|
||||
assign:
|
||||
assign FT: //
|
||||
|
||||
CC = ppc-amigaos-gcc
|
||||
AR = ppc-amigaos-ar
|
||||
RANLIB = ppc-amigaos-ranlib
|
||||
|
||||
DIRFLAGS = -Iinclude -I/FT/src -I/FT/include -I/SDK/include
|
||||
|
||||
WARNINGS = -Wall -W -Wundef -Wpointer-arith -Wbad-function-cast \
|
||||
-Waggregate-return -Wwrite-strings -Wshadow
|
||||
|
||||
OPTIONS = -DFT2_BUILD_LIBRARY -DNDEBUG -fno-builtin
|
||||
OPTIMIZE = -O2 -fomit-frame-pointer -fstrength-reduce -finline-functions
|
||||
|
||||
CFLAGS = -mcrt=clib2 $(DIRFLAGS) $(WARNINGS) $(FT2FLAGS) $(OPTIONS) $(OPTIMIZE)
|
||||
|
||||
#
|
||||
# FreeType2 library base
|
||||
#
|
||||
ftbase.ppc.o: FT:src/base/ftbase.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftbase.c
|
||||
|
||||
ftinit.ppc.o: FT:src/base/ftinit.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftinit.c
|
||||
|
||||
ftsystem.ppc.o: FT:src/base/ftsystem.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftsystem.c
|
||||
|
||||
# pure version for use in run-time library etc
|
||||
ftsystempure.ppc.o: src/base/ftsystem.c
|
||||
$(CC) -c $(CFLAGS) -o $@ src/base/ftsystem.c
|
||||
|
||||
#
|
||||
# FreeType2 library base extensions
|
||||
#
|
||||
ftbbox.ppc.o: FT:src/base/ftbbox.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftbbox.c
|
||||
|
||||
ftbdf.ppc.o: FT:src/base/ftbdf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftbdf.c
|
||||
|
||||
ftbitmap.ppc.o: FT:src/base/ftbitmap.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftbitmap.c
|
||||
|
||||
ftcid.ppc.o: FT:src/base/ftcid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftcid.c
|
||||
|
||||
ftdebug.ppc.o: FT:src/base/ftdebug.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftdebug.c
|
||||
|
||||
# pure version for use in run-time library etc
|
||||
ftdebugpure.ppc.o: src/base/ftdebug.c
|
||||
$(CC) -c $(CFLAGS) -o $@ src/base/ftdebug.c
|
||||
|
||||
ftfntfmt.ppc.o: FT:src/base/ftfntfmt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftfntfmt.c
|
||||
|
||||
ftfstype.ppc.o: FT:src/base/ftfstype.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftfstype.c
|
||||
|
||||
ftgasp.ppc.o: FT:src/base/ftgasp.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftgasp.c
|
||||
|
||||
ftglyph.ppc.o: FT:src/base/ftglyph.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftglyph.c
|
||||
|
||||
ftgxval.ppc.o: FT:src/base/ftgxval.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftgxval.c
|
||||
|
||||
ftlcdfil.ppc.o: FT:src/base/ftlcdfil.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftlcdfil.c
|
||||
|
||||
ftmm.ppc.o: FT:src/base/ftmm.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftmm.c
|
||||
|
||||
ftotval.ppc.o: FT:src/base/ftotval.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftotval.c
|
||||
|
||||
ftpatent.ppc.o: FT:src/base/ftpatent.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftpatent.c
|
||||
|
||||
ftpfr.ppc.o: FT:src/base/ftpfr.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftpfr.c
|
||||
|
||||
ftstroke.ppc.o: FT:src/base/ftstroke.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftstroke.c
|
||||
|
||||
ftsynth.ppc.o: FT:src/base/ftsynth.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftsynth.c
|
||||
|
||||
fttype1.ppc.o: FT:src/base/fttype1.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/fttype1.c
|
||||
|
||||
ftwinfnt.ppc.o: FT:src/base/ftwinfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftwinfnt.c
|
||||
|
||||
#
|
||||
# FreeType2 library autofitting module
|
||||
#
|
||||
autofit.ppc.o: FT:src/autofit/autofit.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/autofit/autofit.c
|
||||
|
||||
#
|
||||
# FreeType2 library postscript hinting module
|
||||
#
|
||||
pshinter.ppc.o: FT:src/pshinter/pshinter.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/pshinter/pshinter.c
|
||||
|
||||
#
|
||||
# FreeType2 library PS support module
|
||||
#
|
||||
psaux.ppc.o: FT:src/psaux/psaux.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/psaux/psaux.c
|
||||
|
||||
#
|
||||
# FreeType2 library PS glyph names module
|
||||
#
|
||||
psnames.ppc.o: FT:src/psnames/psnames.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/psnames/psnames.c
|
||||
|
||||
#
|
||||
# FreeType2 library monochrome raster module
|
||||
#
|
||||
raster.ppc.o: FT:src/raster/raster.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/raster/raster.c
|
||||
|
||||
#
|
||||
# FreeType2 library anti-aliasing raster module
|
||||
#
|
||||
smooth.ppc.o: FT:src/smooth/smooth.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/smooth/smooth.c
|
||||
|
||||
#
|
||||
# FreeType2 library 'sfnt' module
|
||||
#
|
||||
sfnt.ppc.o: FT:src/sfnt/sfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/sfnt/sfnt.c
|
||||
|
||||
#
|
||||
# FreeType2 library glyph and image caching system
|
||||
#
|
||||
ftcache.ppc.o: FT:src/cache/ftcache.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/cache/ftcache.c
|
||||
|
||||
#
|
||||
# FreeType2 library OpenType font driver
|
||||
#
|
||||
cff.ppc.o: FT:src/cff/cff.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/cff/cff.c
|
||||
|
||||
#
|
||||
# FreeType2 library TrueType font driver
|
||||
#
|
||||
truetype.ppc.o: FT:src/truetype/truetype.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/truetype/truetype.c
|
||||
|
||||
#
|
||||
# FreeType2 library Type1 font driver
|
||||
#
|
||||
type1.ppc.o: FT:src/type1/type1.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/type1/type1.c
|
||||
|
||||
#
|
||||
# FreeType2 library Type42 font driver
|
||||
#
|
||||
type42.ppc.o: FT:src/type42/type42.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/type42/type42.c
|
||||
|
||||
#
|
||||
# FreeType2 library CID-keyed Type1 font driver
|
||||
#
|
||||
type1cid.ppc.o: FT:src/cid/type1cid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/cid/type1cid.c
|
||||
|
||||
#
|
||||
# FreeType2 library BDF bitmap font driver
|
||||
#
|
||||
bdf.ppc.o: FT:src/bdf/bdf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/bdf/bdf.c
|
||||
|
||||
#
|
||||
# FreeType2 library PCF bitmap font driver
|
||||
#
|
||||
pcf.ppc.o: FT:src/pcf/pcf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/pcf/pcf.c
|
||||
|
||||
#
|
||||
# FreeType2 library gzip support for compressed PCF bitmap fonts
|
||||
#
|
||||
gzip.ppc.o: FT:src/gzip/ftgzip.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/gzip/ftgzip.c
|
||||
|
||||
#
|
||||
# FreeType2 library bzip2 support for compressed PCF bitmap fonts
|
||||
#
|
||||
bzip2.ppc.o: FT:src/bzip2/ftbzip2.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/bzip2/ftbzip2.c
|
||||
|
||||
#
|
||||
# FreeType2 library compress support for compressed PCF bitmap fonts
|
||||
#
|
||||
lzw.ppc.o: FT:src/lzw/ftlzw.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/lzw/ftlzw.c
|
||||
|
||||
#
|
||||
# FreeType2 library PFR font driver
|
||||
#
|
||||
pfr.ppc.o: FT:src/pfr/pfr.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/pfr/pfr.c
|
||||
|
||||
#
|
||||
# FreeType2 library Windows FNT/FON bitmap font driver
|
||||
#
|
||||
winfnt.ppc.o: FT:src/winfonts/winfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/winfonts/winfnt.c
|
||||
|
||||
#
|
||||
# FreeType2 library TrueTypeGX Validator
|
||||
#
|
||||
gxvalid.ppc.o: FT:src/gxvalid/gxvalid.c
|
||||
$(CC) -c $(CFLAGS) -Wno-aggregate-return -o $@ /FT/src/gxvalid/gxvalid.c
|
||||
|
||||
#
|
||||
# FreeType2 library OpenType validator
|
||||
#
|
||||
otvalid.ppc.o: FT:src/otvalid/otvalid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/otvalid/otvalid.c
|
||||
|
||||
BASE = ftbase.ppc.o ftbbox.ppc.o ftbdf.ppc.o ftbitmap.ppc.o ftcid.ppc.o \
|
||||
ftfntfmt.ppc.o ftfstype.ppc.o ftgasp.ppc.o ftglyph.ppc.o \
|
||||
ftgxval.ppc.o ftlcdfil.ppc.o ftmm.ppc.o ftotval.ppc.o \
|
||||
ftpatent.ppc.o ftpfr.ppc.o ftstroke.ppc.o ftsynth.ppc.o \
|
||||
fttype1.ppc.o ftwinfnt.ppc.o
|
||||
|
||||
DEBUG = ftdebug.ppc.o ftdebugpure.ppc.o
|
||||
|
||||
AFIT = autofit.ppc.o
|
||||
|
||||
GXV = gxvalid.ppc.o
|
||||
|
||||
OTV = otvalid.ppc.o
|
||||
|
||||
PS = psaux.ppc.o psnames.ppc.o pshinter.ppc.o
|
||||
|
||||
RASTER = raster.ppc.o smooth.ppc.o
|
||||
|
||||
FONTD = cff.ppc.o type1.ppc.o type42.ppc.o type1cid.ppc.o truetype.ppc.o\
|
||||
bdf.ppc.o pcf.ppc.o pfr.ppc.o winfnt.ppc.o
|
||||
|
||||
libft2_ppc.a: $(BASE) $(AFIT) $(GXV) $(OTV) $(PS) $(RASTER) sfnt.ppc.o ftcache.ppc.o $(FONTD) gzip.ppc.o lzw.ppc.o
|
||||
$(AR) r $@ $(BASE) $(AFIT) $(GXV) $(OTV) $(PS) $(RASTER) sfnt.ppc.o ftcache.ppc.o $(FONTD) gzip.ppc.o lzw.ppc.o
|
||||
$(RANLIB) $@
|
||||
|
||||
#Local Variables:
|
||||
#coding: latin-1
|
||||
#End:
|
303
thirdparty/freetype/builds/amiga/smakefile
vendored
Normal file
303
thirdparty/freetype/builds/amiga/smakefile
vendored
Normal file
|
@ -0,0 +1,303 @@
|
|||
#
|
||||
# Makefile for FreeType2 link library using Amiga SAS/C 6.58
|
||||
#
|
||||
|
||||
|
||||
# Copyright 2005-2015 by
|
||||
# Werner Lemberg and Detlef Würkner.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# to build from the builds/amiga directory call
|
||||
#
|
||||
# smake assign
|
||||
# smake
|
||||
#
|
||||
# Your programs source code should start with this
|
||||
# (uncomment the parts you do not need to keep the program small):
|
||||
# ---8<---
|
||||
#define FT_USE_AUTOFIT // autofitter
|
||||
#define FT_USE_RASTER // monochrome rasterizer
|
||||
#define FT_USE_SMOOTH // anti-aliasing rasterizer
|
||||
#define FT_USE_TT // truetype font driver
|
||||
#define FT_USE_T1 // type1 font driver
|
||||
#define FT_USE_T42 // type42 font driver
|
||||
#define FT_USE_T1CID // cid-keyed type1 font driver
|
||||
#define FT_USE_CFF // opentype font driver
|
||||
#define FT_USE_BDF // bdf bitmap font driver
|
||||
#define FT_USE_PCF // pcf bitmap font driver
|
||||
#define FT_USE_PFR // pfr font driver
|
||||
#define FT_USE_WINFNT // windows .fnt|.fon bitmap font driver
|
||||
#define FT_USE_OTV // opentype validator
|
||||
#define FT_USE_GXV // truetype gx validator
|
||||
#include "FT:src/base/ftinit.c"
|
||||
# ---8<---
|
||||
#
|
||||
# link your programs with ft2_680x0.lib and either ftsystem.o or ftsystempure.o
|
||||
# (and either ftdebug.o or ftdebugpure.o if you enabled FT_DEBUG_LEVEL_ERROR or
|
||||
# FT_DEBUG_LEVEL_TRACE in include/freetype/config/ftoption.h).
|
||||
|
||||
OBJBASE = ftbase.o ftbbox.o ftbdf.o ftbitmap.o ftcid.o ftfntfmt.o ftfstype.o \
|
||||
ftgasp.o ftglyph.o ftgxval.o ftlcdfil.o ftmm.o ftotval.o \
|
||||
ftpatent.o ftpfr.o ftstroke.o ftsynth.o fttype1.o ftwinfnt.o
|
||||
|
||||
OBJSYSTEM = ftsystem.o ftsystempure.o
|
||||
|
||||
OBJDEBUG = ftdebug.o ftdebugpure.o
|
||||
|
||||
OBJAFIT = autofit.o
|
||||
|
||||
OBJGXV = gxvalid.o
|
||||
|
||||
OBJOTV = otvalid.o
|
||||
|
||||
OBJPS = psaux.o psnames.o pshinter.o
|
||||
|
||||
OBJRASTER = raster.o smooth.o
|
||||
|
||||
OBJSFNT = sfnt.o
|
||||
|
||||
OBJCACHE = ftcache.o
|
||||
|
||||
OBJFONTD = cff.o type1.o type42.o type1cid.o\
|
||||
truetype.o winfnt.o bdf.o pcf.o pfr.o
|
||||
|
||||
CORE = FT:src/
|
||||
|
||||
CPU = 68000
|
||||
#CPU = 68020
|
||||
#CPU = 68030
|
||||
#CPU = 68040
|
||||
#CPU = 68060
|
||||
|
||||
OPTIMIZER = optinlocal
|
||||
|
||||
SCFLAGS = optimize opttime optsched strmerge data=faronly idlen=50 cpu=$(CPU)\
|
||||
idir=include/ idir=$(CORE) idir=FT:include/ nostackcheck nochkabort\
|
||||
noicons ignore=79,85,110,306 parameters=both define=FT2_BUILD_LIBRARY
|
||||
|
||||
LIB = ft2_$(CPU).lib
|
||||
|
||||
# sample linker options
|
||||
OPTS = link lib=$(LIB),lib:sc.lib,lib:amiga.lib,lib:debug.lib\
|
||||
smallcode smalldata noicons utillib
|
||||
|
||||
# sample program entry
|
||||
#myprog: myprog.c ftsystem.o $(LIB)
|
||||
# sc $< programname=$@ ftsystem.o $(SCFLAGS) $(OPTS)
|
||||
|
||||
all: $(LIB) $(OBJSYSTEM) $(OBJDEBUG)
|
||||
|
||||
assign:
|
||||
assign FT: //
|
||||
|
||||
# uses separate object modules in lib to make for easier debugging
|
||||
# also, can make smaller programs if entire engine is not used
|
||||
ft2_$(CPU).lib: $(OBJBASE) $(OBJAFIT) $(OBJOTV) $(OBJPS) $(OBJRASTER) $(OBJSFNT) $(OBJCACHE) $(OBJFONTD) lzw.o gzip.o bzip2.o
|
||||
oml $@ r $(OBJBASE) $(OBJAFIT) $(OBJOTV) $(OBJPS) $(OBJRASTER) $(OBJSFNT) $(OBJCACHE) $(OBJFONTD) lzw.o gzip.o bzip2.o
|
||||
|
||||
clean:
|
||||
-delete \#?.o
|
||||
|
||||
realclean: clean
|
||||
-delete ft2$(CPU).lib
|
||||
|
||||
#
|
||||
# freetype library base
|
||||
#
|
||||
ftbase.o: $(CORE)base/ftbase.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftinit.o: $(CORE)base/ftinit.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftsystem.o: $(CORE)base/ftsystem.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftsystempure.o: src/base/ftsystem.c ## pure version for use in run-time library etc
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftdebug.o: $(CORE)base/ftdebug.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftdebugpure.o: src/base/ftdebug.c ## pure version for use in run-time library etc
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
#
|
||||
# freetype library base extensions
|
||||
#
|
||||
ftbbox.o: $(CORE)base/ftbbox.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftbdf.o: $(CORE)base/ftbdf.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftbitmap.o: $(CORE)base/ftbitmap.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftcid.o: $(CORE)base/ftcid.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftfntfmt.o: $(CORE)base/ftfntfmt.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftfstype.o: $(CORE)base/ftfstype.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftgasp.o: $(CORE)base/ftgasp.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftglyph.o: $(CORE)base/ftglyph.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftgxval.o: $(CORE)base/ftgxval.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftlcdfil.o: $(CORE)base/ftlcdfil.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftmm.o: $(CORE)base/ftmm.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftotval.o: $(CORE)base/ftotval.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftpatent.o: $(CORE)base/ftpatent.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftpfr.o: $(CORE)base/ftpfr.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftstroke.o: $(CORE)base/ftstroke.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftsynth.o: $(CORE)base/ftsynth.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
fttype1.o: $(CORE)base/fttype1.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftwinfnt.o: $(CORE)base/ftwinfnt.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library autofitter module
|
||||
#
|
||||
autofit.o: $(CORE)autofit/autofit.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library PS hinting module
|
||||
#
|
||||
pshinter.o: $(CORE)pshinter/pshinter.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
#
|
||||
# freetype library PS support module
|
||||
#
|
||||
psaux.o: $(CORE)psaux/psaux.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library PS glyph names module
|
||||
#
|
||||
psnames.o: $(CORE)psnames/psnames.c
|
||||
sc $(SCFLAGS) code=far objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library monochrome raster module
|
||||
#
|
||||
raster.o: $(CORE)raster/raster.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library anti-aliasing raster module
|
||||
#
|
||||
smooth.o: $(CORE)smooth/smooth.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library 'sfnt' module
|
||||
#
|
||||
sfnt.o: $(CORE)sfnt/sfnt.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library glyph and image caching system (still experimental)
|
||||
#
|
||||
ftcache.o: $(CORE)cache/ftcache.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library OpenType font driver
|
||||
#
|
||||
cff.o: $(CORE)cff/cff.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library TrueType font driver
|
||||
#
|
||||
truetype.o: $(CORE)truetype/truetype.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library Type1 font driver
|
||||
#
|
||||
type1.o: $(CORE)type1/type1.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library Type42 font driver
|
||||
#
|
||||
type42.o: $(CORE)type42/type42.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library CID-keyed Type1 font driver
|
||||
#
|
||||
type1cid.o: $(CORE)cid/type1cid.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
#
|
||||
# freetype library CID-keyed Type1 font driver extensions
|
||||
#
|
||||
#cidafm.o: $(CORE)cid/cidafm.c
|
||||
# sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library BDF bitmap font driver
|
||||
#
|
||||
bdf.o: $(CORE)bdf/bdf.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library PCF bitmap font driver
|
||||
#
|
||||
pcf.o: $(CORE)pcf/pcf.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library gzip support for compressed PCF bitmap fonts
|
||||
#
|
||||
gzip.o: $(CORE)gzip/ftgzip.c
|
||||
sc $(SCFLAGS) define FAR objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library bzip2 support for compressed PCF bitmap fonts
|
||||
#
|
||||
bzip2.o: $(CORE)bzip2/ftbzip2.c
|
||||
sc $(SCFLAGS) define FAR objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library compress support for compressed PCF bitmap fonts
|
||||
#
|
||||
lzw.o: $(CORE)lzw/ftlzw.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library PFR font driver
|
||||
#
|
||||
pfr.o: $(CORE)pfr/pfr.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library Windows FNT/FON bitmap font driver
|
||||
#
|
||||
winfnt.o: $(CORE)winfonts/winfnt.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library TrueTypeGX validator
|
||||
#
|
||||
gxvalid.o: $(CORE)gxvalid/gxvalid.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library OpenType validator
|
||||
#
|
||||
otvalid.o: $(CORE)otvalid/otvalid.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#Local Variables:
|
||||
#coding: latin-1
|
||||
#End:
|
297
thirdparty/freetype/builds/amiga/src/base/ftdebug.c
vendored
Normal file
297
thirdparty/freetype/builds/amiga/src/base/ftdebug.c
vendored
Normal file
|
@ -0,0 +1,297 @@
|
|||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftdebug.c */
|
||||
/* */
|
||||
/* Debugging and logging component for amiga (body). */
|
||||
/* */
|
||||
/* Copyright 1996-2015 by */
|
||||
/* David Turner, Robert Wilhelm, Werner Lemberg and Detlef Würkner. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* This component contains various macros and functions used to ease the */
|
||||
/* debugging of the FreeType engine. Its main purpose is in assertion */
|
||||
/* checking, tracing, and error detection. */
|
||||
/* */
|
||||
/* There are now three debugging modes: */
|
||||
/* */
|
||||
/* - trace mode */
|
||||
/* */
|
||||
/* Error and trace messages are sent to the log file (which can be the */
|
||||
/* standard error output). */
|
||||
/* */
|
||||
/* - error mode */
|
||||
/* */
|
||||
/* Only error messages are generated. */
|
||||
/* */
|
||||
/* - release mode: */
|
||||
/* */
|
||||
/* No error message is sent or generated. The code is free from any */
|
||||
/* debugging parts. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*
|
||||
* Based on the default ftdebug.c,
|
||||
* replaced vprintf() with KVPrintF(),
|
||||
* commented out exit(),
|
||||
* replaced getenv() with GetVar().
|
||||
*/
|
||||
|
||||
#include <exec/types.h>
|
||||
#include <utility/tagitem.h>
|
||||
#include <dos/exall.h>
|
||||
#include <dos/var.h>
|
||||
#define __NOLIBBASE__
|
||||
#define __NOLOBALIFACE__
|
||||
#define __USE_INLINE__
|
||||
#include <proto/dos.h>
|
||||
#include <clib/debug_protos.h>
|
||||
|
||||
#ifndef __amigaos4__
|
||||
extern struct Library *DOSBase;
|
||||
#else
|
||||
extern struct DOSIFace *IDOS;
|
||||
#endif
|
||||
|
||||
|
||||
#include <ft2build.h>
|
||||
#include FT_FREETYPE_H
|
||||
#include FT_INTERNAL_DEBUG_H
|
||||
|
||||
|
||||
#if defined( FT_DEBUG_LEVEL_ERROR )
|
||||
|
||||
/* documentation is in ftdebug.h */
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
FT_Message( const char* fmt,
|
||||
... )
|
||||
{
|
||||
va_list ap;
|
||||
|
||||
|
||||
va_start( ap, fmt );
|
||||
KVPrintF( fmt, ap );
|
||||
va_end( ap );
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftdebug.h */
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
FT_Panic( const char* fmt,
|
||||
... )
|
||||
{
|
||||
va_list ap;
|
||||
|
||||
|
||||
va_start( ap, fmt );
|
||||
KVPrintF( fmt, ap );
|
||||
va_end( ap );
|
||||
|
||||
/* exit( EXIT_FAILURE ); */
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftdebug.h */
|
||||
|
||||
FT_BASE_DEF( int )
|
||||
FT_Throw( FT_Error error,
|
||||
int line,
|
||||
const char* file )
|
||||
{
|
||||
FT_UNUSED( error );
|
||||
FT_UNUSED( line );
|
||||
FT_UNUSED( file );
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#endif /* FT_DEBUG_LEVEL_ERROR */
|
||||
|
||||
|
||||
|
||||
#ifdef FT_DEBUG_LEVEL_TRACE
|
||||
|
||||
/* array of trace levels, initialized to 0 */
|
||||
int ft_trace_levels[trace_count];
|
||||
|
||||
|
||||
/* define array of trace toggle names */
|
||||
#define FT_TRACE_DEF( x ) #x ,
|
||||
|
||||
static const char* ft_trace_toggles[trace_count + 1] =
|
||||
{
|
||||
#include FT_INTERNAL_TRACE_H
|
||||
NULL
|
||||
};
|
||||
|
||||
#undef FT_TRACE_DEF
|
||||
|
||||
|
||||
/* documentation is in ftdebug.h */
|
||||
|
||||
FT_BASE_DEF( FT_Int )
|
||||
FT_Trace_Get_Count( void )
|
||||
{
|
||||
return trace_count;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftdebug.h */
|
||||
|
||||
FT_BASE_DEF( const char * )
|
||||
FT_Trace_Get_Name( FT_Int idx )
|
||||
{
|
||||
int max = FT_Trace_Get_Count();
|
||||
|
||||
|
||||
if ( idx < max )
|
||||
return ft_trace_toggles[idx];
|
||||
else
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Initialize the tracing sub-system. This is done by retrieving the */
|
||||
/* value of the `FT2_DEBUG' environment variable. It must be a list of */
|
||||
/* toggles, separated by spaces, `;', or `,'. Example: */
|
||||
/* */
|
||||
/* export FT2_DEBUG="any:3 memory:7 stream:5" */
|
||||
/* */
|
||||
/* This requests that all levels be set to 3, except the trace level for */
|
||||
/* the memory and stream components which are set to 7 and 5, */
|
||||
/* respectively. */
|
||||
/* */
|
||||
/* See the file `include/freetype/internal/fttrace.h' for details of the */
|
||||
/* available toggle names. */
|
||||
/* */
|
||||
/* The level must be between 0 and 7; 0 means quiet (except for serious */
|
||||
/* runtime errors), and 7 means _very_ verbose. */
|
||||
/* */
|
||||
FT_BASE_DEF( void )
|
||||
ft_debug_init( void )
|
||||
{
|
||||
/* const char* ft2_debug = getenv( "FT2_DEBUG" ); */
|
||||
char buf[256];
|
||||
const char* ft2_debug = &buf[0];
|
||||
|
||||
|
||||
/* if ( ft2_debug ) */
|
||||
if ( GetVar( "FT2_DEBUG", (STRPTR)ft2_debug, 256, LV_VAR ) > 0 )
|
||||
{
|
||||
const char* p = ft2_debug;
|
||||
const char* q;
|
||||
|
||||
|
||||
for ( ; *p; p++ )
|
||||
{
|
||||
/* skip leading whitespace and separators */
|
||||
if ( *p == ' ' || *p == '\t' || *p == ',' || *p == ';' || *p == '=' )
|
||||
continue;
|
||||
|
||||
/* read toggle name, followed by ':' */
|
||||
q = p;
|
||||
while ( *p && *p != ':' )
|
||||
p++;
|
||||
|
||||
if ( !*p )
|
||||
break;
|
||||
|
||||
if ( *p == ':' && p > q )
|
||||
{
|
||||
FT_Int n, i, len = (FT_Int)( p - q );
|
||||
FT_Int level = -1, found = -1;
|
||||
|
||||
|
||||
for ( n = 0; n < trace_count; n++ )
|
||||
{
|
||||
const char* toggle = ft_trace_toggles[n];
|
||||
|
||||
|
||||
for ( i = 0; i < len; i++ )
|
||||
{
|
||||
if ( toggle[i] != q[i] )
|
||||
break;
|
||||
}
|
||||
|
||||
if ( i == len && toggle[i] == 0 )
|
||||
{
|
||||
found = n;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* read level */
|
||||
p++;
|
||||
if ( *p )
|
||||
{
|
||||
level = *p - '0';
|
||||
if ( level < 0 || level > 7 )
|
||||
level = -1;
|
||||
}
|
||||
|
||||
if ( found >= 0 && level >= 0 )
|
||||
{
|
||||
if ( found == trace_any )
|
||||
{
|
||||
/* special case for `any' */
|
||||
for ( n = 0; n < trace_count; n++ )
|
||||
ft_trace_levels[n] = level;
|
||||
}
|
||||
else
|
||||
ft_trace_levels[found] = level;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#else /* !FT_DEBUG_LEVEL_TRACE */
|
||||
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
ft_debug_init( void )
|
||||
{
|
||||
/* nothing */
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF( FT_Int )
|
||||
FT_Trace_Get_Count( void )
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF( const char * )
|
||||
FT_Trace_Get_Name( FT_Int idx )
|
||||
{
|
||||
FT_UNUSED( idx );
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
#endif /* !FT_DEBUG_LEVEL_TRACE */
|
||||
|
||||
/*
|
||||
Local Variables:
|
||||
coding: latin-1
|
||||
End:
|
||||
*/
|
||||
/* END */
|
530
thirdparty/freetype/builds/amiga/src/base/ftsystem.c
vendored
Normal file
530
thirdparty/freetype/builds/amiga/src/base/ftsystem.c
vendored
Normal file
|
@ -0,0 +1,530 @@
|
|||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftsystem.c */
|
||||
/* */
|
||||
/* Amiga-specific FreeType low-level system interface (body). */
|
||||
/* */
|
||||
/* Copyright 1996-2015 by */
|
||||
/* David Turner, Robert Wilhelm, Werner Lemberg and Detlef Würkner. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* This file contains the Amiga interface used by FreeType to access */
|
||||
/* low-level, i.e. memory management, i/o access as well as thread */
|
||||
/* synchronisation. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Maintained by Detlef Würkner <TetiSoft@apg.lahn.de> */
|
||||
/* */
|
||||
/* Based on the original ftsystem.c, */
|
||||
/* modified to avoid fopen(), fclose(), fread(), fseek(), ftell(), */
|
||||
/* malloc(), realloc(), and free(). */
|
||||
/* */
|
||||
/* Those C library functions are often not thread-safe or cant be */
|
||||
/* used in a shared Amiga library. If that's not a problem for you, */
|
||||
/* you can of course use the default ftsystem.c with C library calls */
|
||||
/* instead. */
|
||||
/* */
|
||||
/* This implementation needs exec V39+ because it uses AllocPooled() etc */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
#define __NOLIBBASE__
|
||||
#define __NOGLOBALIFACE__
|
||||
#define __USE_INLINE__
|
||||
#include <proto/exec.h>
|
||||
#include <dos/stdio.h>
|
||||
#include <proto/dos.h>
|
||||
#ifdef __amigaos4__
|
||||
extern struct ExecIFace *IExec;
|
||||
extern struct DOSIFace *IDOS;
|
||||
#else
|
||||
extern struct Library *SysBase;
|
||||
extern struct Library *DOSBase;
|
||||
#endif
|
||||
|
||||
#define IOBUF_SIZE 512
|
||||
|
||||
/* structure that helps us to avoid
|
||||
* useless calls of Seek() and Read()
|
||||
*/
|
||||
struct SysFile
|
||||
{
|
||||
BPTR file;
|
||||
ULONG iobuf_start;
|
||||
ULONG iobuf_end;
|
||||
UBYTE iobuf[IOBUF_SIZE];
|
||||
};
|
||||
|
||||
#ifndef __amigaos4__
|
||||
/* C implementation of AllocVecPooled (see autodoc exec/AllocPooled) */
|
||||
APTR
|
||||
Alloc_VecPooled( APTR poolHeader,
|
||||
ULONG memSize )
|
||||
{
|
||||
ULONG newSize = memSize + sizeof ( ULONG );
|
||||
ULONG *mem = AllocPooled( poolHeader, newSize );
|
||||
|
||||
if ( !mem )
|
||||
return NULL;
|
||||
*mem = newSize;
|
||||
return mem + 1;
|
||||
}
|
||||
|
||||
/* C implementation of FreeVecPooled (see autodoc exec/AllocPooled) */
|
||||
void
|
||||
Free_VecPooled( APTR poolHeader,
|
||||
APTR memory )
|
||||
{
|
||||
ULONG *realmem = (ULONG *)memory - 1;
|
||||
|
||||
FreePooled( poolHeader, realmem, *realmem );
|
||||
}
|
||||
#endif
|
||||
|
||||
#include <ft2build.h>
|
||||
#include FT_CONFIG_CONFIG_H
|
||||
#include FT_INTERNAL_DEBUG_H
|
||||
#include FT_SYSTEM_H
|
||||
#include FT_ERRORS_H
|
||||
#include FT_TYPES_H
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* MEMORY MANAGEMENT INTERFACE */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* It is not necessary to do any error checking for the */
|
||||
/* allocation-related functions. This is done by the higher level */
|
||||
/* routines like ft_mem_alloc() or ft_mem_realloc(). */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Function> */
|
||||
/* ft_alloc */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* The memory allocation function. */
|
||||
/* */
|
||||
/* <Input> */
|
||||
/* memory :: A pointer to the memory object. */
|
||||
/* */
|
||||
/* size :: The requested size in bytes. */
|
||||
/* */
|
||||
/* <Return> */
|
||||
/* The address of newly allocated block. */
|
||||
/* */
|
||||
FT_CALLBACK_DEF( void* )
|
||||
ft_alloc( FT_Memory memory,
|
||||
long size )
|
||||
{
|
||||
#ifdef __amigaos4__
|
||||
return AllocVecPooled( memory->user, size );
|
||||
#else
|
||||
return Alloc_VecPooled( memory->user, size );
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Function> */
|
||||
/* ft_realloc */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* The memory reallocation function. */
|
||||
/* */
|
||||
/* <Input> */
|
||||
/* memory :: A pointer to the memory object. */
|
||||
/* */
|
||||
/* cur_size :: The current size of the allocated memory block. */
|
||||
/* */
|
||||
/* new_size :: The newly requested size in bytes. */
|
||||
/* */
|
||||
/* block :: The current address of the block in memory. */
|
||||
/* */
|
||||
/* <Return> */
|
||||
/* The address of the reallocated memory block. */
|
||||
/* */
|
||||
FT_CALLBACK_DEF( void* )
|
||||
ft_realloc( FT_Memory memory,
|
||||
long cur_size,
|
||||
long new_size,
|
||||
void* block )
|
||||
{
|
||||
void* new_block;
|
||||
|
||||
#ifdef __amigaos4__
|
||||
new_block = AllocVecPooled ( memory->user, new_size );
|
||||
#else
|
||||
new_block = Alloc_VecPooled ( memory->user, new_size );
|
||||
#endif
|
||||
if ( new_block != NULL )
|
||||
{
|
||||
CopyMem ( block, new_block,
|
||||
( new_size > cur_size ) ? cur_size : new_size );
|
||||
#ifdef __amigaos4__
|
||||
FreeVecPooled ( memory->user, block );
|
||||
#else
|
||||
Free_VecPooled ( memory->user, block );
|
||||
#endif
|
||||
}
|
||||
return new_block;
|
||||
}
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Function> */
|
||||
/* ft_free */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* The memory release function. */
|
||||
/* */
|
||||
/* <Input> */
|
||||
/* memory :: A pointer to the memory object. */
|
||||
/* */
|
||||
/* block :: The address of block in memory to be freed. */
|
||||
/* */
|
||||
FT_CALLBACK_DEF( void )
|
||||
ft_free( FT_Memory memory,
|
||||
void* block )
|
||||
{
|
||||
#ifdef __amigaos4__
|
||||
FreeVecPooled( memory->user, block );
|
||||
#else
|
||||
Free_VecPooled( memory->user, block );
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* RESOURCE MANAGEMENT INTERFACE */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* The macro FT_COMPONENT is used in trace mode. It is an implicit */
|
||||
/* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log */
|
||||
/* messages during execution. */
|
||||
/* */
|
||||
#undef FT_COMPONENT
|
||||
#define FT_COMPONENT trace_io
|
||||
|
||||
/* We use the macro STREAM_FILE for convenience to extract the */
|
||||
/* system-specific stream handle from a given FreeType stream object */
|
||||
#define STREAM_FILE( stream ) ( (struct SysFile *)stream->descriptor.pointer )
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Function> */
|
||||
/* ft_amiga_stream_close */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* The function to close a stream. */
|
||||
/* */
|
||||
/* <Input> */
|
||||
/* stream :: A pointer to the stream object. */
|
||||
/* */
|
||||
FT_CALLBACK_DEF( void )
|
||||
ft_amiga_stream_close( FT_Stream stream )
|
||||
{
|
||||
struct SysFile* sysfile;
|
||||
|
||||
sysfile = STREAM_FILE( stream );
|
||||
Close ( sysfile->file );
|
||||
FreeMem ( sysfile, sizeof ( struct SysFile ));
|
||||
|
||||
stream->descriptor.pointer = NULL;
|
||||
stream->size = 0;
|
||||
stream->base = 0;
|
||||
}
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Function> */
|
||||
/* ft_amiga_stream_io */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* The function to open a stream. */
|
||||
/* */
|
||||
/* <Input> */
|
||||
/* stream :: A pointer to the stream object. */
|
||||
/* */
|
||||
/* offset :: The position in the data stream to start reading. */
|
||||
/* */
|
||||
/* buffer :: The address of buffer to store the read data. */
|
||||
/* */
|
||||
/* count :: The number of bytes to read from the stream. */
|
||||
/* */
|
||||
/* <Return> */
|
||||
/* The number of bytes actually read. */
|
||||
/* */
|
||||
FT_CALLBACK_DEF( unsigned long )
|
||||
ft_amiga_stream_io( FT_Stream stream,
|
||||
unsigned long offset,
|
||||
unsigned char* buffer,
|
||||
unsigned long count )
|
||||
{
|
||||
struct SysFile* sysfile;
|
||||
unsigned long read_bytes;
|
||||
|
||||
if ( count != 0 )
|
||||
{
|
||||
sysfile = STREAM_FILE( stream );
|
||||
|
||||
/* handle the seek */
|
||||
if ( (offset < sysfile->iobuf_start) || (offset + count > sysfile->iobuf_end) )
|
||||
{
|
||||
/* requested offset implies we need a buffer refill */
|
||||
if ( !sysfile->iobuf_end || offset != sysfile->iobuf_end )
|
||||
{
|
||||
/* a physical seek is necessary */
|
||||
Seek( sysfile->file, offset, OFFSET_BEGINNING );
|
||||
}
|
||||
sysfile->iobuf_start = offset;
|
||||
sysfile->iobuf_end = 0; /* trigger a buffer refill */
|
||||
}
|
||||
|
||||
/* handle the read */
|
||||
if ( offset + count <= sysfile->iobuf_end )
|
||||
{
|
||||
/* we have buffer and requested bytes are all inside our buffer */
|
||||
CopyMem( &sysfile->iobuf[offset - sysfile->iobuf_start], buffer, count );
|
||||
read_bytes = count;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* (re)fill buffer */
|
||||
if ( count <= IOBUF_SIZE )
|
||||
{
|
||||
/* requested bytes is a subset of the buffer */
|
||||
read_bytes = Read( sysfile->file, sysfile->iobuf, IOBUF_SIZE );
|
||||
if ( read_bytes == -1UL )
|
||||
{
|
||||
/* error */
|
||||
read_bytes = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
sysfile->iobuf_end = offset + read_bytes;
|
||||
CopyMem( sysfile->iobuf, buffer, count );
|
||||
if ( read_bytes > count )
|
||||
{
|
||||
read_bytes = count;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
/* we actually need more than our buffer can hold, so we decide
|
||||
** to do a single big read, and then copy the last IOBUF_SIZE
|
||||
** bytes of that to our internal buffer for later use */
|
||||
read_bytes = Read( sysfile->file, buffer, count );
|
||||
if ( read_bytes == -1UL )
|
||||
{
|
||||
/* error */
|
||||
read_bytes = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
ULONG bufsize;
|
||||
|
||||
bufsize = ( read_bytes > IOBUF_SIZE ) ? IOBUF_SIZE : read_bytes;
|
||||
sysfile->iobuf_end = offset + read_bytes;
|
||||
sysfile->iobuf_start = sysfile->iobuf_end - bufsize;
|
||||
CopyMem( &buffer[read_bytes - bufsize] , sysfile->iobuf, bufsize );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
read_bytes = 0;
|
||||
}
|
||||
|
||||
return read_bytes;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftobjs.h */
|
||||
|
||||
FT_BASE_DEF( FT_Error )
|
||||
FT_Stream_Open( FT_Stream stream,
|
||||
const char* filepathname )
|
||||
{
|
||||
struct FileInfoBlock* fib;
|
||||
struct SysFile* sysfile;
|
||||
|
||||
|
||||
if ( !stream )
|
||||
return FT_THROW( Invalid_Stream_Handle );
|
||||
|
||||
#ifdef __amigaos4__
|
||||
sysfile = AllocMem ( sizeof (struct SysFile ), MEMF_SHARED );
|
||||
#else
|
||||
sysfile = AllocMem ( sizeof (struct SysFile ), MEMF_PUBLIC );
|
||||
#endif
|
||||
if ( !sysfile )
|
||||
{
|
||||
FT_ERROR(( "FT_Stream_Open:" ));
|
||||
FT_ERROR(( " could not open `%s'\n", filepathname ));
|
||||
|
||||
return FT_THROW( Cannot_Open_Resource );
|
||||
}
|
||||
sysfile->file = Open( (STRPTR)filepathname, MODE_OLDFILE );
|
||||
if ( !sysfile->file )
|
||||
{
|
||||
FreeMem ( sysfile, sizeof ( struct SysFile ));
|
||||
FT_ERROR(( "FT_Stream_Open:" ));
|
||||
FT_ERROR(( " could not open `%s'\n", filepathname ));
|
||||
|
||||
return FT_THROW( Cannot_Open_Resource );
|
||||
}
|
||||
|
||||
fib = AllocDosObject( DOS_FIB, NULL );
|
||||
if ( !fib )
|
||||
{
|
||||
Close ( sysfile->file );
|
||||
FreeMem ( sysfile, sizeof ( struct SysFile ));
|
||||
FT_ERROR(( "FT_Stream_Open:" ));
|
||||
FT_ERROR(( " could not open `%s'\n", filepathname ));
|
||||
|
||||
return FT_THROW( Cannot_Open_Resource );
|
||||
}
|
||||
if ( !( ExamineFH( sysfile->file, fib ) ) )
|
||||
{
|
||||
FreeDosObject( DOS_FIB, fib );
|
||||
Close ( sysfile->file );
|
||||
FreeMem ( sysfile, sizeof ( struct SysFile ));
|
||||
FT_ERROR(( "FT_Stream_Open:" ));
|
||||
FT_ERROR(( " could not open `%s'\n", filepathname ));
|
||||
|
||||
return FT_THROW( Cannot_Open_Resource );
|
||||
}
|
||||
stream->size = fib->fib_Size;
|
||||
FreeDosObject( DOS_FIB, fib );
|
||||
|
||||
stream->descriptor.pointer = (void *)sysfile;
|
||||
stream->pathname.pointer = (char*)filepathname;
|
||||
sysfile->iobuf_start = 0;
|
||||
sysfile->iobuf_end = 0;
|
||||
stream->pos = 0;
|
||||
|
||||
stream->read = ft_amiga_stream_io;
|
||||
stream->close = ft_amiga_stream_close;
|
||||
|
||||
if ( !stream->size )
|
||||
{
|
||||
ft_amiga_stream_close( stream );
|
||||
FT_ERROR(( "FT_Stream_Open:" ));
|
||||
FT_ERROR(( " opened `%s' but zero-sized\n", filepathname ));
|
||||
return FT_THROW( Cannot_Open_Stream );
|
||||
}
|
||||
|
||||
FT_TRACE1(( "FT_Stream_Open:" ));
|
||||
FT_TRACE1(( " opened `%s' (%ld bytes) successfully\n",
|
||||
filepathname, stream->size ));
|
||||
|
||||
return FT_Err_Ok;
|
||||
}
|
||||
|
||||
|
||||
#ifdef FT_DEBUG_MEMORY
|
||||
|
||||
extern FT_Int
|
||||
ft_mem_debug_init( FT_Memory memory );
|
||||
|
||||
extern void
|
||||
ft_mem_debug_done( FT_Memory memory );
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
/* documentation is in ftobjs.h */
|
||||
|
||||
FT_BASE_DEF( FT_Memory )
|
||||
FT_New_Memory( void )
|
||||
{
|
||||
FT_Memory memory;
|
||||
|
||||
|
||||
#ifdef __amigaos4__
|
||||
memory = (FT_Memory)AllocVec( sizeof ( *memory ), MEMF_SHARED );
|
||||
#else
|
||||
memory = (FT_Memory)AllocVec( sizeof ( *memory ), MEMF_PUBLIC );
|
||||
#endif
|
||||
if ( memory )
|
||||
{
|
||||
#ifdef __amigaos4__
|
||||
memory->user = CreatePool( MEMF_SHARED, 16384, 16384 );
|
||||
#else
|
||||
memory->user = CreatePool( MEMF_PUBLIC, 16384, 16384 );
|
||||
#endif
|
||||
if ( memory->user == NULL )
|
||||
{
|
||||
FreeVec( memory );
|
||||
memory = NULL;
|
||||
}
|
||||
else
|
||||
{
|
||||
memory->alloc = ft_alloc;
|
||||
memory->realloc = ft_realloc;
|
||||
memory->free = ft_free;
|
||||
#ifdef FT_DEBUG_MEMORY
|
||||
ft_mem_debug_init( memory );
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
return memory;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftobjs.h */
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
FT_Done_Memory( FT_Memory memory )
|
||||
{
|
||||
#ifdef FT_DEBUG_MEMORY
|
||||
ft_mem_debug_done( memory );
|
||||
#endif
|
||||
|
||||
DeletePool( memory->user );
|
||||
FreeVec( memory );
|
||||
}
|
||||
|
||||
/*
|
||||
Local Variables:
|
||||
coding: latin-1
|
||||
End:
|
||||
*/
|
||||
/* END */
|
74
thirdparty/freetype/builds/ansi/ansi-def.mk
vendored
Normal file
74
thirdparty/freetype/builds/ansi/ansi-def.mk
vendored
Normal file
|
@ -0,0 +1,74 @@
|
|||
#
|
||||
# FreeType 2 configuration rules for a `normal' ANSI system
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
DELETE := rm -f
|
||||
CAT := cat
|
||||
SEP := /
|
||||
BUILD_DIR := $(TOP_DIR)/builds/ansi
|
||||
PLATFORM := ansi
|
||||
|
||||
|
||||
# The directory where all library files are placed.
|
||||
#
|
||||
# By default, this is the same as $(OBJ_DIR); however, this can be changed
|
||||
# to suit particular needs.
|
||||
#
|
||||
LIB_DIR := $(OBJ_DIR)
|
||||
|
||||
|
||||
# The name of the final library file. Note that the DOS-specific Makefile
|
||||
# uses a shorter (8.3) name.
|
||||
#
|
||||
LIBRARY := lib$(PROJECT)
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := -I
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := -D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L := -l
|
||||
|
||||
|
||||
# Target flag.
|
||||
#
|
||||
T := -o$(space)
|
||||
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||
# ANSI compliance.
|
||||
#
|
||||
CFLAGS ?= -c
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
ANSIFLAGS :=
|
||||
|
||||
|
||||
# EOF
|
21
thirdparty/freetype/builds/ansi/ansi.mk
vendored
Normal file
21
thirdparty/freetype/builds/ansi/ansi.mk
vendored
Normal file
|
@ -0,0 +1,21 @@
|
|||
#
|
||||
# FreeType 2 configuration rules for a `normal' pseudo ANSI compiler/system
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
include $(TOP_DIR)/builds/ansi/ansi-def.mk
|
||||
include $(TOP_DIR)/builds/compiler/ansi-cc.mk
|
||||
include $(TOP_DIR)/builds/link_std.mk
|
||||
|
||||
|
||||
# EOF
|
20
thirdparty/freetype/builds/atari/ATARI.H
vendored
Normal file
20
thirdparty/freetype/builds/atari/ATARI.H
vendored
Normal file
|
@ -0,0 +1,20 @@
|
|||
#if defined( __GXVALID_H__ )
|
||||
#pragma warn -aus /* too many unevaluated variables in gxvalid */
|
||||
#endif
|
||||
|
||||
#ifndef ATARI_H
|
||||
#define ATARI_H
|
||||
|
||||
#pragma warn -stu
|
||||
|
||||
/* PureC doesn't like 32bit enumerations */
|
||||
|
||||
#ifndef FT_IMAGE_TAG
|
||||
#define FT_IMAGE_TAG( value, _x1, _x2, _x3, _x4 ) value
|
||||
#endif /* FT_IMAGE_TAG */
|
||||
|
||||
#ifndef FT_ENC_TAG
|
||||
#define FT_ENC_TAG( value, a, b, c, d ) value
|
||||
#endif /* FT_ENC_TAG */
|
||||
|
||||
#endif /* ATARI_H */
|
37
thirdparty/freetype/builds/atari/FNames.SIC
vendored
Normal file
37
thirdparty/freetype/builds/atari/FNames.SIC
vendored
Normal file
|
@ -0,0 +1,37 @@
|
|||
/* the following changes file names for PureC projects */
|
||||
|
||||
if (argc > 0)
|
||||
{
|
||||
ordner = argv[0];
|
||||
if (basename(ordner) == "") /* ist Ordner */
|
||||
{
|
||||
ChangeFilenames(ordner);
|
||||
}
|
||||
}
|
||||
|
||||
proc ChangeFilenames(folder)
|
||||
local i,entries,directory,file;
|
||||
{
|
||||
entries = filelist(directory,folder);
|
||||
for (i = 0; i < entries; ++i)
|
||||
{
|
||||
file = directory[i,0];
|
||||
if ((directory[i,3]&16) > 0) /* subdirectory */
|
||||
{
|
||||
ChangeFilenames(folder+file+"\\");
|
||||
}
|
||||
else
|
||||
{
|
||||
if ((stricmp(suffix(file),".h")==0)|(stricmp(suffix(file),".c")==0))
|
||||
ChangeFilename(folder,file);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
proc ChangeFilename(path,datei)
|
||||
local newfile,err;
|
||||
{
|
||||
newfile=datei;
|
||||
newfile[0]=(newfile[0] | 32) ^ 32;
|
||||
err=files.rename("-q",path+datei,newfile);
|
||||
}
|
32
thirdparty/freetype/builds/atari/FREETYPE.PRJ
vendored
Normal file
32
thirdparty/freetype/builds/atari/FREETYPE.PRJ
vendored
Normal file
|
@ -0,0 +1,32 @@
|
|||
;FreeType project file
|
||||
|
||||
FREETYPE.LIB
|
||||
|
||||
.C [-K -P -R -A]
|
||||
.L [-J -V]
|
||||
.S
|
||||
|
||||
=
|
||||
|
||||
..\..\src\base\ftsystem.c
|
||||
..\..\src\base\ftdebug.c
|
||||
|
||||
..\..\src\base\ftinit.c
|
||||
..\..\src\base\ftglyph.c
|
||||
..\..\src\base\ftmm
|
||||
..\..\src\base\ftbbox
|
||||
|
||||
..\..\src\base\ftbase.c
|
||||
..\..\src\autohint\autohint.c
|
||||
;..\..\src\cache\ftcache.c
|
||||
..\..\src\cff\cff.c
|
||||
..\..\src\cid\type1cid.c
|
||||
..\..\src\psaux\psaux.c
|
||||
..\..\src\pshinter\pshinter.c
|
||||
..\..\src\psnames\psnames.c
|
||||
..\..\src\raster\raster.c
|
||||
..\..\src\sfnt\sfnt.c
|
||||
..\..\src\smooth\smooth.c
|
||||
..\..\src\truetype\truetype.c
|
||||
..\..\src\type1\type1.c
|
||||
..\..\src\type42\type42.c
|
51
thirdparty/freetype/builds/atari/README.TXT
vendored
Normal file
51
thirdparty/freetype/builds/atari/README.TXT
vendored
Normal file
|
@ -0,0 +1,51 @@
|
|||
Compiling FreeType 2 with PureC compiler
|
||||
========================================
|
||||
|
||||
[See below for a German version.]
|
||||
|
||||
To compile FreeType 2 as a library the following changes must be applied:
|
||||
|
||||
- All *.c files must start with an uppercase letter.
|
||||
(In case GEMSCRIPT is available:
|
||||
Simply drag the whole FreeType 2 directory to the file `FNames.SIC'.)
|
||||
|
||||
- You have to change the INCLUDE directory in PureC's compiler options
|
||||
to contain both the `INCLUDE' and `freetype2\include' directory.
|
||||
Example:
|
||||
|
||||
INCLUDE;E:\freetype2\include
|
||||
|
||||
- The file `freetype2/include/Ft2build.h' must be patched as follows to
|
||||
include ATARI.H:
|
||||
|
||||
#ifndef __FT2_BUILD_GENERIC_H__
|
||||
#define __FT2_BUILD_GENERIC_H__
|
||||
|
||||
#include "ATARI.H"
|
||||
|
||||
|
||||
|
||||
Compilieren von FreeType 2 mit PureC
|
||||
====================================
|
||||
|
||||
Um FreeType 2 als eine Bibliothek (library) zu compilieren, muss folgendes
|
||||
ge„ndert werden:
|
||||
|
||||
- Alle *.c-files m<>ssen mit einem GROSSBUCHSTABEN beginnen.
|
||||
(Falls GEMSCRIPT zur Verf<72>gung steht:
|
||||
Den kompletten Ordner freetype2 auf die Datei `FNames.SIC' draggen.)
|
||||
|
||||
- In den Compiler-Optionen von PureC muss das INCLUDE directory auf INCLUDE
|
||||
und freetype2\include verweisen. Z.B.:
|
||||
|
||||
INCLUDE;E:\freetype2\include
|
||||
|
||||
- In der Datei freetype2/include/Ft2build.h muss zu Beginn
|
||||
ein #include "ATARI.H" wie folgt eingef<65>gt werden:
|
||||
|
||||
#ifndef __FT2_BUILD_GENERIC_H__
|
||||
#define __FT2_BUILD_GENERIC_H__
|
||||
|
||||
#include "ATARI.H"
|
||||
|
||||
--- end of README.TXT ---
|
181
thirdparty/freetype/builds/atari/deflinejoiner.awk
vendored
Normal file
181
thirdparty/freetype/builds/atari/deflinejoiner.awk
vendored
Normal file
|
@ -0,0 +1,181 @@
|
|||
#!/usr/bin/env awk
|
||||
|
||||
|
||||
function shift( array, \
|
||||
junk, elm0, l )
|
||||
{
|
||||
elm0 = array[0]
|
||||
for ( l = 0; l < asorti( array, junk ) - 1; l++ )
|
||||
array[l] = array[l+1];
|
||||
delete array[l]
|
||||
return elm0
|
||||
}
|
||||
|
||||
|
||||
function init_cpp_src_line()
|
||||
{
|
||||
logical_line = ""
|
||||
delete break_pos
|
||||
}
|
||||
|
||||
|
||||
function shift_valid_bp( array, \
|
||||
junk, elm )
|
||||
{
|
||||
elm = -1
|
||||
|
||||
if ( 0 < asorti( array, junk ) )
|
||||
do {
|
||||
elm = shift( array )
|
||||
} while ( 0 > elm );
|
||||
|
||||
return elm
|
||||
}
|
||||
|
||||
|
||||
function check_cpp_src_line_break_pos( \
|
||||
i, junk )
|
||||
{
|
||||
printf( "break_pos:" )
|
||||
for ( i = 0; i < asorti( break_pos, junk ); i++ )
|
||||
printf( " %d", break_pos[i] );
|
||||
printf( "\n" )
|
||||
}
|
||||
|
||||
|
||||
function check_cpp_src_line()
|
||||
{
|
||||
printf( "logical_line[%s]\n", logical_line )
|
||||
check_cpp_src_line_break_pos()
|
||||
}
|
||||
|
||||
|
||||
function append_line( phys_line, \
|
||||
filt_line, bp_len )
|
||||
{
|
||||
filt_line = phys_line
|
||||
sub( /\\$/, " ", filt_line )
|
||||
logical_line = logical_line filt_line
|
||||
bp_len = asorti( break_pos, junk )
|
||||
break_pos[bp_len] = length( logical_line ) - 1
|
||||
}
|
||||
|
||||
|
||||
function print_line( \
|
||||
c0, c1, i, junk, part_str )
|
||||
{
|
||||
c0 = 0
|
||||
|
||||
while( asorti( break_pos, junk ) > 1 )
|
||||
{
|
||||
if ( ( c1 = shift_valid_bp( break_pos ) ) < 1 )
|
||||
{
|
||||
part_str = substr( logical_line, c0 + 1 )
|
||||
printf( "%s\n", part_str )
|
||||
return
|
||||
}
|
||||
|
||||
part_str = substr( logical_line, c0 + 1, c1 - c0 + 1 )
|
||||
gsub( / $/, "\\", part_str )
|
||||
printf( "%s\n", part_str )
|
||||
c0 = c1 + 1
|
||||
}
|
||||
|
||||
part_str = substr( logical_line, c0 + 1 )
|
||||
printf( "%s\n", part_str )
|
||||
}
|
||||
|
||||
|
||||
function shrink_spaces( pos, \
|
||||
tail, removed_length, k )
|
||||
{
|
||||
tail = substr( logical_line, pos )
|
||||
sub( /^[ \t]+/, " ", tail )
|
||||
removed_length = length( logical_line ) - pos - length( tail ) + 1
|
||||
logical_line = substr( logical_line, 0, pos - 1 ) tail
|
||||
|
||||
|
||||
for ( k = 0; k < asorti( break_pos, junk ); k++ )
|
||||
if ( ( pos + removed_length ) <= break_pos[k] )
|
||||
break_pos[k] = break_pos[k] - removed_length;
|
||||
else if ( pos <= break_pos[k] )
|
||||
break_pos[k] = -1;
|
||||
|
||||
return removed_length
|
||||
}
|
||||
|
||||
|
||||
function shrink_spaces_to_linebreak( pos, \
|
||||
junk, part_str, removed_length, i )
|
||||
{
|
||||
for ( i = 0; i < asorti( break_pos, junk ) && break_pos[i] < pos ; i++ )
|
||||
;
|
||||
|
||||
if ( break_pos[i] < 1 )
|
||||
return;
|
||||
|
||||
part_str = substr( logical_line, pos, break_pos[i] - pos + 1 )
|
||||
sub( /^[ \t]+/, " ", part_str )
|
||||
removed_length = ( break_pos[i] - pos + 1 ) - length( part_str )
|
||||
|
||||
tail = substr( logical_line, pos + removed_length )
|
||||
logical_line = substr( logical_line, 0, pos - 1 ) tail
|
||||
|
||||
for ( ; i < asorti( break_pos, junk ); i++ )
|
||||
break_pos[i] -= removed_length;
|
||||
|
||||
return removed_length
|
||||
}
|
||||
|
||||
|
||||
function delete_linebreaks_in_2nd_token( \
|
||||
tail, paren_depth, junk, i, j, k, l )
|
||||
{
|
||||
if ( logical_line ~ /^[ \t]*#[ \t]*define[ \t]+[0-9A-Za-z_]+\(/ )
|
||||
{
|
||||
tail = logical_line
|
||||
sub( /^[ \t]*#[ \t]*define[ \t]+[0-9A-Za-z_]+/, "", tail )
|
||||
|
||||
paren_depth = 0
|
||||
l = 0
|
||||
i = length( logical_line ) - length( tail ) + 1 # seek to the 1st op paren
|
||||
j = i
|
||||
do {
|
||||
if ( substr( logical_line, j, 2 ) ~ /[ \t][ \t]/ )
|
||||
l = shrink_spaces( j );
|
||||
else if ( substr( logical_line, j, 1 ) == "(" )
|
||||
paren_depth += 1;
|
||||
else if ( substr( logical_line, j, 1 ) == ")" )
|
||||
paren_depth -= 1;
|
||||
j += 1
|
||||
} while ( j < length( logical_line ) && paren_depth != 0 )
|
||||
|
||||
for ( k = 0; k < asorti( break_pos, junk ); k++ )
|
||||
if ( i <= break_pos[k] && break_pos[k] < j )
|
||||
break_pos[k] = -1;
|
||||
|
||||
if ( l > 0 )
|
||||
shrink_spaces_to_linebreak( j );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
BEGIN{
|
||||
init_cpp_src_line()
|
||||
}
|
||||
{
|
||||
append_line( $0 )
|
||||
if ( $0 !~ /\\$/ )
|
||||
{
|
||||
delete_linebreaks_in_2nd_token()
|
||||
print_line()
|
||||
init_cpp_src_line()
|
||||
}
|
||||
}
|
||||
END{
|
||||
if ( 0 < length( logical_line ) )
|
||||
{
|
||||
delete_linebreaks_in_2nd_token()
|
||||
print_line()
|
||||
}
|
||||
}
|
40
thirdparty/freetype/builds/atari/gen-purec-patch.sh
vendored
Executable file
40
thirdparty/freetype/builds/atari/gen-purec-patch.sh
vendored
Executable file
|
@ -0,0 +1,40 @@
|
|||
#!/bin/sh
|
||||
|
||||
TOP_DIR=.
|
||||
OBJ_DIR=.
|
||||
|
||||
for x in "$@"
|
||||
do
|
||||
case x"$x" in
|
||||
x--srcdir=* | x--topdir=* )
|
||||
TOP_DIR=`echo $x | sed 's/^--[a-z]*dir=//'`
|
||||
;;
|
||||
x--builddir=* | x--objdir=* )
|
||||
OBJ_DIR=`echo $x | sed 's/^--[a-z]*dir=//'`
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
mkdir -p ${OBJ_DIR}/builds/atari/tmp/orig
|
||||
|
||||
( cd ${TOP_DIR} && find . -name '*.[CHch]' -type f | fgrep -v builds/atari/tmp | cpio -o ) | \
|
||||
( cd ${OBJ_DIR}/builds/atari/tmp/orig && cpio -idum )
|
||||
cp ${TOP_DIR}/builds/atari/deflinejoiner.awk ${OBJ_DIR}/builds/atari/tmp
|
||||
|
||||
pushd ${OBJ_DIR}/builds/atari/tmp
|
||||
|
||||
cp -pr orig purec
|
||||
for f in `cd orig && find . -type f`
|
||||
do
|
||||
echo filter $f
|
||||
env LANG=C awk -f deflinejoiner.awk < orig/$f > purec/$f
|
||||
done
|
||||
|
||||
echo '#define FT2_BUILD_LIBRARY' > purec/include/ft2build.h
|
||||
echo '#include "ATARI.H"' >> purec/include/ft2build.h
|
||||
env LANG=C awk -f deflinejoiner.awk < orig/include/ft2build.h >> purec/include/ft2build.h
|
||||
|
||||
env LANG=C diff -ur orig purec > ../purec.diff
|
||||
|
||||
popd
|
||||
rm -rf ${OBJ_DIR}/builds/atari/tmp
|
76
thirdparty/freetype/builds/beos/beos-def.mk
vendored
Normal file
76
thirdparty/freetype/builds/beos/beos-def.mk
vendored
Normal file
|
@ -0,0 +1,76 @@
|
|||
#
|
||||
# FreeType 2 configuration rules for a BeOS system
|
||||
#
|
||||
# this is similar to the "ansi-def.mk" file, except for BUILD and PLATFORM
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
DELETE := rm -f
|
||||
CAT := cat
|
||||
SEP := /
|
||||
BUILD_DIR := $(TOP_DIR)/builds/beos
|
||||
PLATFORM := beos
|
||||
|
||||
|
||||
# The directory where all library files are placed.
|
||||
#
|
||||
# By default, this is the same as $(OBJ_DIR); however, this can be changed
|
||||
# to suit particular needs.
|
||||
#
|
||||
LIB_DIR := $(OBJ_DIR)
|
||||
|
||||
|
||||
# The name of the final library file. Note that the DOS-specific Makefile
|
||||
# uses a shorter (8.3) name.
|
||||
#
|
||||
LIBRARY := lib$(PROJECT)
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := -I
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := -D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L := -l
|
||||
|
||||
|
||||
# Target flag.
|
||||
#
|
||||
T := -o$(space)
|
||||
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||
# ANSI compliance.
|
||||
#
|
||||
CFLAGS ?= -c
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
ANSIFLAGS :=
|
||||
|
||||
|
||||
# EOF
|
19
thirdparty/freetype/builds/beos/beos.mk
vendored
Normal file
19
thirdparty/freetype/builds/beos/beos.mk
vendored
Normal file
|
@ -0,0 +1,19 @@
|
|||
#
|
||||
# FreeType 2 configuration rules for a BeOS system
|
||||
#
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
include $(TOP_DIR)/builds/beos/beos-def.mk
|
||||
include $(TOP_DIR)/builds/compiler/ansi-cc.mk
|
||||
include $(TOP_DIR)/builds/link_std.mk
|
||||
|
||||
|
||||
# EOF
|
41
thirdparty/freetype/builds/beos/detect.mk
vendored
Normal file
41
thirdparty/freetype/builds/beos/detect.mk
vendored
Normal file
|
@ -0,0 +1,41 @@
|
|||
#
|
||||
# FreeType 2 configuration file to detect an BeOS host platform.
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
.PHONY: setup
|
||||
|
||||
|
||||
ifeq ($(PLATFORM),ansi)
|
||||
|
||||
ifdef BE_HOST_CPU
|
||||
|
||||
PLATFORM := beos
|
||||
|
||||
endif # test MACHTYPE beos
|
||||
endif
|
||||
|
||||
ifeq ($(PLATFORM),beos)
|
||||
|
||||
DELETE := rm -f
|
||||
CAT := cat
|
||||
SEP := /
|
||||
BUILD_DIR := $(TOP_DIR)/builds/beos
|
||||
CONFIG_FILE := beos.mk
|
||||
|
||||
setup: std_setup
|
||||
|
||||
endif # test PLATFORM beos
|
||||
|
||||
|
||||
# EOF
|
275
thirdparty/freetype/builds/cmake/iOS.cmake
vendored
Normal file
275
thirdparty/freetype/builds/cmake/iOS.cmake
vendored
Normal file
|
@ -0,0 +1,275 @@
|
|||
# iOS.cmake
|
||||
#
|
||||
# Copyright 2014-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# Written by David Wimsey <david@wimsey.us>
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
#
|
||||
#
|
||||
# This file is derived from the files `Platform/Darwin.cmake' and
|
||||
# `Platform/UnixPaths.cmake', which are part of CMake 2.8.4. It has been
|
||||
# altered for iOS development.
|
||||
|
||||
|
||||
# Options
|
||||
# -------
|
||||
#
|
||||
# IOS_PLATFORM = OS | SIMULATOR
|
||||
#
|
||||
# This decides whether SDKS are selected from the `iPhoneOS.platform' or
|
||||
# `iPhoneSimulator.platform' folders.
|
||||
#
|
||||
# OS - the default, used to build for iPhone and iPad physical devices,
|
||||
# which have an ARM architecture.
|
||||
# SIMULATOR - used to build for the Simulator platforms, which have an
|
||||
# x86 architecture.
|
||||
#
|
||||
# CMAKE_IOS_DEVELOPER_ROOT = /path/to/platform/Developer folder
|
||||
#
|
||||
# By default, this location is automatically chosen based on the
|
||||
# IOS_PLATFORM value above. If you manually set this variable, it
|
||||
# overrides the default location and forces the use of a particular
|
||||
# Developer Platform.
|
||||
#
|
||||
# CMAKE_IOS_SDK_ROOT = /path/to/platform/Developer/SDKs/SDK folder
|
||||
#
|
||||
# By default, this location is automatically chosen based on the
|
||||
# CMAKE_IOS_DEVELOPER_ROOT value. In this case it is always the most
|
||||
# up-to-date SDK found in the CMAKE_IOS_DEVELOPER_ROOT path. If you
|
||||
# manually set this variable, it forces the use of a specific SDK
|
||||
# version.
|
||||
#
|
||||
#
|
||||
# Macros
|
||||
# ------
|
||||
#
|
||||
# set_xcode_property (TARGET XCODE_PROPERTY XCODE_VALUE)
|
||||
#
|
||||
# A convenience macro for setting Xcode specific properties on targets.
|
||||
#
|
||||
# Example:
|
||||
#
|
||||
# set_xcode_property(myioslib IPHONEOS_DEPLOYMENT_TARGET "3.1")
|
||||
#
|
||||
# find_host_package (PROGRAM ARGS)
|
||||
#
|
||||
# A macro to find executable programs on the host system, not within the
|
||||
# iOS environment. Thanks to the `android-cmake' project for providing
|
||||
# the command.
|
||||
|
||||
|
||||
# standard settings
|
||||
set(CMAKE_SYSTEM_NAME Darwin)
|
||||
set(CMAKE_SYSTEM_VERSION 1)
|
||||
set(UNIX True)
|
||||
set(APPLE True)
|
||||
set(IOS True)
|
||||
|
||||
# required as of cmake 2.8.10
|
||||
set(CMAKE_OSX_DEPLOYMENT_TARGET ""
|
||||
CACHE STRING "Force unset of the deployment target for iOS" FORCE
|
||||
)
|
||||
|
||||
# determine the cmake host system version so we know where to find the iOS
|
||||
# SDKs
|
||||
find_program(CMAKE_UNAME uname /bin /usr/bin /usr/local/bin)
|
||||
if (CMAKE_UNAME)
|
||||
exec_program(uname ARGS -r OUTPUT_VARIABLE CMAKE_HOST_SYSTEM_VERSION)
|
||||
string(REGEX REPLACE "^([0-9]+)\\.([0-9]+).*$" "\\1"
|
||||
DARWIN_MAJOR_VERSION "${CMAKE_HOST_SYSTEM_VERSION}")
|
||||
endif (CMAKE_UNAME)
|
||||
|
||||
# force the compilers to gcc for iOS
|
||||
include(CMakeForceCompiler)
|
||||
CMAKE_FORCE_C_COMPILER(gcc gcc)
|
||||
CMAKE_FORCE_CXX_COMPILER(g++ g++)
|
||||
|
||||
# skip the platform compiler checks for cross compiling
|
||||
set(CMAKE_CXX_COMPILER_WORKS TRUE)
|
||||
set(CMAKE_C_COMPILER_WORKS TRUE)
|
||||
|
||||
# all iOS/Darwin specific settings - some may be redundant
|
||||
set(CMAKE_SHARED_LIBRARY_PREFIX "lib")
|
||||
set(CMAKE_SHARED_LIBRARY_SUFFIX ".dylib")
|
||||
set(CMAKE_SHARED_MODULE_PREFIX "lib")
|
||||
set(CMAKE_SHARED_MODULE_SUFFIX ".so")
|
||||
set(CMAKE_MODULE_EXISTS 1)
|
||||
set(CMAKE_DL_LIBS "")
|
||||
|
||||
set(CMAKE_C_OSX_COMPATIBILITY_VERSION_FLAG
|
||||
"-compatibility_version ")
|
||||
set(CMAKE_C_OSX_CURRENT_VERSION_FLAG
|
||||
"-current_version ")
|
||||
set(CMAKE_CXX_OSX_COMPATIBILITY_VERSION_FLAG
|
||||
"${CMAKE_C_OSX_COMPATIBILITY_VERSION_FLAG}")
|
||||
set(CMAKE_CXX_OSX_CURRENT_VERSION_FLAG
|
||||
"${CMAKE_C_OSX_CURRENT_VERSION_FLAG}")
|
||||
|
||||
# hidden visibility is required for cxx on iOS
|
||||
set(CMAKE_C_FLAGS_INIT "")
|
||||
set(CMAKE_CXX_FLAGS_INIT
|
||||
"-headerpad_max_install_names -fvisibility=hidden -fvisibility-inlines-hidden")
|
||||
|
||||
set(CMAKE_C_LINK_FLAGS
|
||||
"-Wl,-search_paths_first ${CMAKE_C_LINK_FLAGS}")
|
||||
set(CMAKE_CXX_LINK_FLAGS
|
||||
"-Wl,-search_paths_first ${CMAKE_CXX_LINK_FLAGS}")
|
||||
|
||||
set(CMAKE_PLATFORM_HAS_INSTALLNAME 1)
|
||||
set(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS
|
||||
"-dynamiclib -headerpad_max_install_names")
|
||||
set(CMAKE_SHARED_MODULE_CREATE_C_FLAGS
|
||||
"-bundle -headerpad_max_install_names")
|
||||
set(CMAKE_SHARED_MODULE_LOADER_C_FLAG
|
||||
"-Wl,-bundle_loader,")
|
||||
set(CMAKE_SHARED_MODULE_LOADER_CXX_FLAG
|
||||
"-Wl,-bundle_loader,")
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES
|
||||
".dylib" ".so" ".a")
|
||||
|
||||
# hack: If a new cmake (which uses CMAKE_INSTALL_NAME_TOOL) runs on an old
|
||||
# build tree (where `install_name_tool' was hardcoded), and where
|
||||
# CMAKE_INSTALL_NAME_TOOL isn't in the cache and still cmake didn't
|
||||
# fail in `CMakeFindBinUtils.cmake' (because it isn't rerun), hardcode
|
||||
# CMAKE_INSTALL_NAME_TOOL here to `install_name_tool' so it behaves as
|
||||
# it did before.
|
||||
if (NOT DEFINED CMAKE_INSTALL_NAME_TOOL)
|
||||
find_program(CMAKE_INSTALL_NAME_TOOL install_name_tool)
|
||||
endif (NOT DEFINED CMAKE_INSTALL_NAME_TOOL)
|
||||
|
||||
# set up iOS platform unless specified manually with IOS_PLATFORM
|
||||
if (NOT DEFINED IOS_PLATFORM)
|
||||
set(IOS_PLATFORM "OS")
|
||||
endif (NOT DEFINED IOS_PLATFORM)
|
||||
|
||||
set(IOS_PLATFORM ${IOS_PLATFORM} CACHE STRING "Type of iOS Platform")
|
||||
|
||||
# check the platform selection and setup for developer root
|
||||
if (${IOS_PLATFORM} STREQUAL "OS")
|
||||
set(IOS_PLATFORM_LOCATION "iPhoneOS.platform")
|
||||
|
||||
# this causes the installers to properly locate the output libraries
|
||||
set(CMAKE_XCODE_EFFECTIVE_PLATFORMS "-iphoneos")
|
||||
|
||||
elseif (${IOS_PLATFORM} STREQUAL "SIMULATOR")
|
||||
set(IOS_PLATFORM_LOCATION "iPhoneSimulator.platform")
|
||||
|
||||
# this causes the installers to properly locate the output libraries
|
||||
set(CMAKE_XCODE_EFFECTIVE_PLATFORMS "-iphonesimulator")
|
||||
|
||||
else (${IOS_PLATFORM} STREQUAL "OS")
|
||||
message(FATAL_ERROR
|
||||
"Unsupported IOS_PLATFORM value selected. Please choose OS or SIMULATOR.")
|
||||
|
||||
endif (${IOS_PLATFORM} STREQUAL "OS")
|
||||
|
||||
# set up iOS developer location unless specified manually with
|
||||
# CMAKE_IOS_DEVELOPER_ROOT --
|
||||
# note that Xcode 4.3 changed the installation location; choose the most
|
||||
# recent one available
|
||||
set(XCODE_POST_43_ROOT
|
||||
"/Applications/Xcode.app/Contents/Developer/Platforms/${IOS_PLATFORM_LOCATION}/Developer")
|
||||
set(XCODE_PRE_43_ROOT
|
||||
"/Developer/Platforms/${IOS_PLATFORM_LOCATION}/Developer")
|
||||
|
||||
if (NOT DEFINED CMAKE_IOS_DEVELOPER_ROOT)
|
||||
if (EXISTS ${XCODE_POST_43_ROOT})
|
||||
set(CMAKE_IOS_DEVELOPER_ROOT ${XCODE_POST_43_ROOT})
|
||||
elseif (EXISTS ${XCODE_PRE_43_ROOT})
|
||||
set(CMAKE_IOS_DEVELOPER_ROOT ${XCODE_PRE_43_ROOT})
|
||||
endif (EXISTS ${XCODE_POST_43_ROOT})
|
||||
endif (NOT DEFINED CMAKE_IOS_DEVELOPER_ROOT)
|
||||
|
||||
set(CMAKE_IOS_DEVELOPER_ROOT ${CMAKE_IOS_DEVELOPER_ROOT}
|
||||
CACHE PATH "Location of iOS Platform"
|
||||
)
|
||||
|
||||
# find and use the most recent iOS SDK unless specified manually with
|
||||
# CMAKE_IOS_SDK_ROOT
|
||||
if (NOT DEFINED CMAKE_IOS_SDK_ROOT)
|
||||
file(GLOB _CMAKE_IOS_SDKS "${CMAKE_IOS_DEVELOPER_ROOT}/SDKs/*")
|
||||
if (_CMAKE_IOS_SDKS)
|
||||
list(SORT _CMAKE_IOS_SDKS)
|
||||
list(REVERSE _CMAKE_IOS_SDKS)
|
||||
list(GET _CMAKE_IOS_SDKS 0 CMAKE_IOS_SDK_ROOT)
|
||||
else (_CMAKE_IOS_SDKS)
|
||||
message(FATAL_ERROR
|
||||
"No iOS SDK's found in default search path ${CMAKE_IOS_DEVELOPER_ROOT}. Manually set CMAKE_IOS_SDK_ROOT or install the iOS SDK.")
|
||||
endif (_CMAKE_IOS_SDKS)
|
||||
|
||||
message(STATUS "Toolchain using default iOS SDK: ${CMAKE_IOS_SDK_ROOT}")
|
||||
endif (NOT DEFINED CMAKE_IOS_SDK_ROOT)
|
||||
|
||||
set(CMAKE_IOS_SDK_ROOT ${CMAKE_IOS_SDK_ROOT}
|
||||
CACHE PATH "Location of the selected iOS SDK"
|
||||
)
|
||||
|
||||
# set the sysroot default to the most recent SDK
|
||||
set(CMAKE_OSX_SYSROOT ${CMAKE_IOS_SDK_ROOT}
|
||||
CACHE PATH "Sysroot used for iOS support"
|
||||
)
|
||||
|
||||
# set the architecture for iOS --
|
||||
# note that currently both ARCHS_STANDARD_32_BIT and
|
||||
# ARCHS_UNIVERSAL_IPHONE_OS set armv7 only, so set both manually
|
||||
if (${IOS_PLATFORM} STREQUAL "OS")
|
||||
set(IOS_ARCH $(ARCHS_STANDARD_32_64_BIT))
|
||||
else (${IOS_PLATFORM} STREQUAL "OS")
|
||||
set(IOS_ARCH i386)
|
||||
endif (${IOS_PLATFORM} STREQUAL "OS")
|
||||
|
||||
set(CMAKE_OSX_ARCHITECTURES ${IOS_ARCH}
|
||||
CACHE string "Build architecture for iOS"
|
||||
)
|
||||
|
||||
# set the find root to the iOS developer roots and to user defined paths
|
||||
set(CMAKE_FIND_ROOT_PATH
|
||||
${CMAKE_IOS_DEVELOPER_ROOT}
|
||||
${CMAKE_IOS_SDK_ROOT}
|
||||
${CMAKE_PREFIX_PATH}
|
||||
CACHE string "iOS find search path root"
|
||||
)
|
||||
|
||||
# default to searching for frameworks first
|
||||
set(CMAKE_FIND_FRAMEWORK FIRST)
|
||||
|
||||
# set up the default search directories for frameworks
|
||||
set(CMAKE_SYSTEM_FRAMEWORK_PATH
|
||||
${CMAKE_IOS_SDK_ROOT}/System/Library/Frameworks
|
||||
${CMAKE_IOS_SDK_ROOT}/System/Library/PrivateFrameworks
|
||||
${CMAKE_IOS_SDK_ROOT}/Developer/Library/Frameworks
|
||||
)
|
||||
|
||||
# only search the iOS SDKs, not the remainder of the host filesystem
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM ONLY)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
|
||||
# this little macro lets you set any Xcode specific property
|
||||
macro(set_xcode_property TARGET XCODE_PROPERTY XCODE_VALUE)
|
||||
set_property(TARGET ${TARGET}
|
||||
PROPERTY XCODE_ATTRIBUTE_${XCODE_PROPERTY} ${XCODE_VALUE})
|
||||
endmacro(set_xcode_property)
|
||||
|
||||
# this macro lets you find executable programs on the host system
|
||||
macro(find_host_package)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY NEVER)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE NEVER)
|
||||
set(IOS FALSE)
|
||||
|
||||
find_package(${ARGN})
|
||||
|
||||
set(IOS TRUE)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM ONLY)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
endmacro(find_host_package)
|
||||
|
||||
# eof
|
80
thirdparty/freetype/builds/compiler/ansi-cc.mk
vendored
Normal file
80
thirdparty/freetype/builds/compiler/ansi-cc.mk
vendored
Normal file
|
@ -0,0 +1,80 @@
|
|||
#
|
||||
# FreeType 2 generic pseudo ANSI compiler
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# Compiler command line name
|
||||
#
|
||||
CC := cc
|
||||
COMPILER_SEP := $(SEP)
|
||||
|
||||
|
||||
# The object file extension (for standard and static libraries). This can be
|
||||
# .o, .tco, .obj, etc., depending on the platform.
|
||||
#
|
||||
O := o
|
||||
SO := o
|
||||
|
||||
# The library file extension (for standard and static libraries). This can
|
||||
# be .a, .lib, etc., depending on the platform.
|
||||
#
|
||||
A := a
|
||||
SA := a
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := -I
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := -D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L := -l
|
||||
|
||||
|
||||
# Target flag.
|
||||
#
|
||||
T := -o$(space)
|
||||
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||
# ANSI compliance.
|
||||
#
|
||||
CFLAGS ?= -c
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
# we assume the compiler is already strictly ANSI
|
||||
#
|
||||
ANSIFLAGS :=
|
||||
|
||||
|
||||
# Library linking
|
||||
#
|
||||
CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
|
||||
LINK_LIBRARY = $(AR) -r $@ $(subst /,$(COMPILER_SEP),$(OBJECTS_LIST))
|
||||
|
||||
|
||||
# EOF
|
86
thirdparty/freetype/builds/compiler/bcc-dev.mk
vendored
Normal file
86
thirdparty/freetype/builds/compiler/bcc-dev.mk
vendored
Normal file
|
@ -0,0 +1,86 @@
|
|||
#
|
||||
# FreeType 2 Borland C++-specific with NO OPTIMIZATIONS + DEBUGGING
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# Compiler command line name
|
||||
#
|
||||
CC := bcc32
|
||||
COMPILER_SEP := $(SEP)
|
||||
|
||||
|
||||
# The object file extension (for standard and static libraries). This can be
|
||||
# .o, .tco, .obj, etc., depending on the platform.
|
||||
#
|
||||
O := obj
|
||||
SO := obj
|
||||
|
||||
# The library file extension (for standard and static libraries). This can
|
||||
# be .a, .lib, etc., depending on the platform.
|
||||
#
|
||||
A := lib
|
||||
SA := lib
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := -I
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := -D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L :=
|
||||
|
||||
|
||||
# Target flag -- no trailing space.
|
||||
#
|
||||
T := -o
|
||||
TE := -e
|
||||
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||
# ANSI compliance.
|
||||
#
|
||||
CFLAGS ?= -q -c -y -d -v -Od -w-par -w-ccc -w-rch -w-pro -w-aus
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
ANSIFLAGS := -A
|
||||
|
||||
|
||||
# Library linking
|
||||
#
|
||||
CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
|
||||
LINK_LIBRARY = tlib /u /P128 $(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST:%=+%))
|
||||
|
||||
|
||||
# Borland C++ specific temporary files
|
||||
#
|
||||
CLEAN += \
|
||||
$(subst /,$(SEP),$(TOP_DIR)/apinames.$(O)) \
|
||||
$(subst /,$(SEP),$(OBJ_DIR)/apinames.tds)
|
||||
|
||||
|
||||
# EOF
|
86
thirdparty/freetype/builds/compiler/bcc.mk
vendored
Normal file
86
thirdparty/freetype/builds/compiler/bcc.mk
vendored
Normal file
|
@ -0,0 +1,86 @@
|
|||
#
|
||||
# FreeType 2 Borland C++-specific rules
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# Compiler command line name
|
||||
#
|
||||
CC := bcc32
|
||||
COMPILER_SEP := $(SEP)
|
||||
|
||||
|
||||
# The object file extension (for standard and static libraries). This can be
|
||||
# .o, .tco, .obj, etc., depending on the platform.
|
||||
#
|
||||
O := obj
|
||||
SO := obj
|
||||
|
||||
# The library file extension (for standard and static libraries). This can
|
||||
# be .a, .lib, etc., depending on the platform.
|
||||
#
|
||||
A := lib
|
||||
SA := lib
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := -I
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := -D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L :=
|
||||
|
||||
|
||||
# Target flag -- no trailing space.
|
||||
#
|
||||
T := -o
|
||||
TE := -e
|
||||
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||
# ANSI compliance.
|
||||
#
|
||||
CFLAGS ?= -c -q -y -d -v -Od -w-par -w-ccc -w-rch -w-pro -w-aus
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
ANSIFLAGS := -A
|
||||
|
||||
|
||||
# Library linking
|
||||
#
|
||||
CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
|
||||
LINK_LIBRARY = tlib /u /P128 $(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST:%=+%))
|
||||
|
||||
|
||||
# Borland C++ specific temporary files
|
||||
#
|
||||
CLEAN += \
|
||||
$(subst /,$(SEP),$(TOP_DIR)/apinames.$(O)) \
|
||||
$(subst /,$(SEP),$(OBJ_DIR)/apinames.tds)
|
||||
|
||||
|
||||
# EOF
|
77
thirdparty/freetype/builds/compiler/emx.mk
vendored
Normal file
77
thirdparty/freetype/builds/compiler/emx.mk
vendored
Normal file
|
@ -0,0 +1,77 @@
|
|||
#
|
||||
# FreeType 2 emx-specific definitions
|
||||
#
|
||||
|
||||
|
||||
# Copyright 2003-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# Compiler command line name
|
||||
#
|
||||
CC := set GCCOPT="-ansi -pedantic"; gcc
|
||||
COMPILER_SEP := /
|
||||
|
||||
|
||||
# The object file extension (for standard and static libraries). This can be
|
||||
# .o, .tco, .obj, etc., depending on the platform.
|
||||
#
|
||||
O := o
|
||||
SO := o
|
||||
|
||||
# The library file extension (for standard and static libraries). This can
|
||||
# be .a, .lib, etc., depending on the platform.
|
||||
#
|
||||
A := a
|
||||
SA := a
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := -I
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := -D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L := -l
|
||||
|
||||
|
||||
# Target flag.
|
||||
#
|
||||
T := -o$(space)
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||
# ANSI compliance.
|
||||
#
|
||||
CFLAGS ?= -c -g -O6 -Wall
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
ANSIFLAGS :=
|
||||
|
||||
|
||||
# Library linking
|
||||
#
|
||||
CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
|
||||
LINK_LIBRARY = $(foreach m,$(OBJECTS_LIST),$(AR) -r $@ $(m);) echo > nul
|
||||
|
||||
|
||||
# EOF
|
95
thirdparty/freetype/builds/compiler/gcc-dev.mk
vendored
Normal file
95
thirdparty/freetype/builds/compiler/gcc-dev.mk
vendored
Normal file
|
@ -0,0 +1,95 @@
|
|||
#
|
||||
# FreeType 2 gcc-specific with NO OPTIMIZATIONS + DEBUGGING
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# Compiler command line name
|
||||
#
|
||||
CC := gcc
|
||||
COMPILER_SEP := /
|
||||
|
||||
|
||||
# The object file extension (for standard and static libraries). This can be
|
||||
# .o, .tco, .obj, etc., depending on the platform.
|
||||
#
|
||||
O := o
|
||||
SO := o
|
||||
|
||||
# The library file extension (for standard and static libraries). This can
|
||||
# be .a, .lib, etc., depending on the platform.
|
||||
#
|
||||
A := a
|
||||
SA := a
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := -I
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := -D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L := -l
|
||||
|
||||
|
||||
# Target flag.
|
||||
#
|
||||
T := -o$(space)
|
||||
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||
# ANSI compliance.
|
||||
#
|
||||
ifndef CFLAGS
|
||||
ifeq ($(findstring g++,$(CC)),)
|
||||
nested_externs := -Wnested-externs
|
||||
strict_prototypes := -Wstrict-prototypes
|
||||
endif
|
||||
|
||||
CFLAGS := -c -g -O0 \
|
||||
-Wall \
|
||||
-W \
|
||||
-Wundef \
|
||||
-Wshadow \
|
||||
-Wpointer-arith \
|
||||
-Wwrite-strings \
|
||||
-Wredundant-decls \
|
||||
-Wno-long-long \
|
||||
$(nested_externs) \
|
||||
$(strict_prototypes)
|
||||
endif
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
ANSIFLAGS := -ansi -pedantic
|
||||
|
||||
|
||||
# Library linking
|
||||
#
|
||||
CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
|
||||
LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST)
|
||||
|
||||
|
||||
# EOF
|
77
thirdparty/freetype/builds/compiler/gcc.mk
vendored
Normal file
77
thirdparty/freetype/builds/compiler/gcc.mk
vendored
Normal file
|
@ -0,0 +1,77 @@
|
|||
#
|
||||
# FreeType 2 gcc-specific definitions
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# Compiler command line name
|
||||
#
|
||||
CC := gcc
|
||||
COMPILER_SEP := /
|
||||
|
||||
|
||||
# The object file extension (for standard and static libraries). This can be
|
||||
# .o, .tco, .obj, etc., depending on the platform.
|
||||
#
|
||||
O := o
|
||||
SO := o
|
||||
|
||||
# The library file extension (for standard and static libraries). This can
|
||||
# be .a, .lib, etc., depending on the platform.
|
||||
#
|
||||
A := a
|
||||
SA := a
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := -I
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := -D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L := -l
|
||||
|
||||
|
||||
# Target flag.
|
||||
#
|
||||
T := -o$(space)
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||
# ANSI compliance.
|
||||
#
|
||||
CFLAGS ?= -c -g -O3 -Wall
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
ANSIFLAGS := -ansi -pedantic
|
||||
|
||||
|
||||
# Library linking
|
||||
#
|
||||
CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
|
||||
LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST)
|
||||
|
||||
|
||||
# EOF
|
85
thirdparty/freetype/builds/compiler/intelc.mk
vendored
Normal file
85
thirdparty/freetype/builds/compiler/intelc.mk
vendored
Normal file
|
@ -0,0 +1,85 @@
|
|||
#
|
||||
# FreeType 2 Intel C/C++ definitions (VC++ compatibility mode)
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# compiler command line name
|
||||
#
|
||||
CC := icl
|
||||
COMPILER_SEP := $(SEP)
|
||||
|
||||
|
||||
# The object file extension (for standard and static libraries). This can be
|
||||
# .o, .tco, .obj, etc., depending on the platform.
|
||||
#
|
||||
O := obj
|
||||
SO := obj
|
||||
|
||||
|
||||
# The library file extension (for standard and static libraries). This can
|
||||
# be .a, .lib, etc., depending on the platform.
|
||||
#
|
||||
A := lib
|
||||
SA := lib
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := /I
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := /D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L := /Fl
|
||||
|
||||
|
||||
# Target flag.
|
||||
#
|
||||
T := /Fo
|
||||
TE := /Fe
|
||||
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||
# ANSI compliance.
|
||||
#
|
||||
# Note that the Intel C/C++ compiler version 4.5 complains about
|
||||
# the use of FT_FIELD_OFFSET with "value must be arithmetic type"!
|
||||
# This really looks like a bug in the compiler because the macro
|
||||
# _does_ compute an arithmetic value, so we disable this warning
|
||||
# with "/Qwd32".
|
||||
#
|
||||
CFLAGS ?= /nologo /c /Ox /G5 /W3 /Qwd32
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
ANSIFLAGS := /Qansi_alias /Za
|
||||
|
||||
# Library linking
|
||||
#
|
||||
#CLEAN_LIBRARY =
|
||||
LINK_LIBRARY = lib /nologo /out:$(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST))
|
||||
|
||||
|
||||
# EOF
|
83
thirdparty/freetype/builds/compiler/unix-lcc.mk
vendored
Normal file
83
thirdparty/freetype/builds/compiler/unix-lcc.mk
vendored
Normal file
|
@ -0,0 +1,83 @@
|
|||
#
|
||||
# FreeType 2 Unix LCC specific definitions
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# Command line name
|
||||
#
|
||||
CC := lcc
|
||||
COMPILER_SEP := $(SEP)
|
||||
|
||||
|
||||
# The object file extension (for standard and static libraries). This can be
|
||||
# .o, .tco, .obj, etc., depending on the platform.
|
||||
#
|
||||
O := o
|
||||
SO := o
|
||||
|
||||
|
||||
# The library file extension (for standard and static libraries). This can
|
||||
# be .a, .lib, etc., depending on the platform.
|
||||
#
|
||||
A := a
|
||||
SA := a
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := -I
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := -D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L := -l
|
||||
|
||||
|
||||
# Target flag.
|
||||
#
|
||||
T := -o$(space)
|
||||
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||
# ANSI compliance.
|
||||
#
|
||||
CFLAGS ?= -c -g
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
# LCC is pure ANSI anyway!
|
||||
#
|
||||
# the "-A" flag simply increments verbosity about non ANSI code
|
||||
#
|
||||
ANSIFLAGS := -A
|
||||
|
||||
|
||||
# library linking
|
||||
#
|
||||
CLEAN_LIBRARY ?= $(DELETE) $(PROJECT_LIBRARY)
|
||||
LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST)
|
||||
|
||||
|
||||
# EOF
|
76
thirdparty/freetype/builds/compiler/visualage.mk
vendored
Normal file
76
thirdparty/freetype/builds/compiler/visualage.mk
vendored
Normal file
|
@ -0,0 +1,76 @@
|
|||
#
|
||||
# FreeType 2 Visual Age C++ specific definitions
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# command line compiler name
|
||||
#
|
||||
CC := icc
|
||||
COMPILER_SEP := $(SEP)
|
||||
|
||||
|
||||
# The object file extension (for standard and static libraries). This can be
|
||||
# .o, .tco, .obj, etc., depending on the platform.
|
||||
#
|
||||
O := obj
|
||||
SO := obj
|
||||
|
||||
|
||||
# The library file extension (for standard and static libraries). This can
|
||||
# be .a, .lib, etc., depending on the platform.
|
||||
#
|
||||
A := lib
|
||||
SA := lib
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := /I
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := /D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L := /Fl
|
||||
|
||||
|
||||
# Target flag.
|
||||
#
|
||||
T := /Fo
|
||||
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
CFLAGS ?= /Q- /Gd+ /O2 /G5 /W3 /C
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
ANSI_FLAGS := /Sa
|
||||
|
||||
|
||||
# Library linking
|
||||
#
|
||||
#CLEAN_LIBRARY :=
|
||||
LINK_LIBRARY = lib /nologo /out:$(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST))
|
||||
|
||||
|
||||
# EOF
|
82
thirdparty/freetype/builds/compiler/visualc.mk
vendored
Normal file
82
thirdparty/freetype/builds/compiler/visualc.mk
vendored
Normal file
|
@ -0,0 +1,82 @@
|
|||
#
|
||||
# FreeType 2 Visual C++ definitions
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# compiler command line name
|
||||
#
|
||||
CC := cl
|
||||
COMPILER_SEP := $(SEP)
|
||||
|
||||
|
||||
# The object file extension (for standard and static libraries). This can be
|
||||
# .o, .tco, .obj, etc., depending on the platform.
|
||||
#
|
||||
O := obj
|
||||
SO := obj
|
||||
|
||||
|
||||
# The library file extension (for standard and static libraries). This can
|
||||
# be .a, .lib, etc., depending on the platform.
|
||||
#
|
||||
A := lib
|
||||
SA := lib
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := /I
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := /D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L := /Fl
|
||||
|
||||
|
||||
# Target flag.
|
||||
#
|
||||
T := /Fo
|
||||
|
||||
# Target executable flag
|
||||
#
|
||||
TE := /Fe
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||
# ANSI compliance.
|
||||
#
|
||||
CFLAGS ?= /nologo /c /Ox /W3 /WX
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
ANSIFLAGS := /Za /D_CRT_SECURE_NO_DEPRECATE
|
||||
|
||||
|
||||
# Library linking
|
||||
#
|
||||
#CLEAN_LIBRARY =
|
||||
LINK_LIBRARY = lib /nologo /out:$(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST))
|
||||
|
||||
|
||||
# EOF
|
81
thirdparty/freetype/builds/compiler/watcom.mk
vendored
Normal file
81
thirdparty/freetype/builds/compiler/watcom.mk
vendored
Normal file
|
@ -0,0 +1,81 @@
|
|||
#
|
||||
# FreeType 2 Watcom-specific definitions
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# Compiler command line name
|
||||
#
|
||||
CC := wcc386
|
||||
COMPILER_SEP := $(SEP)
|
||||
|
||||
|
||||
# The object file extension (for standard and static libraries). This can be
|
||||
# .o, .tco, .obj, etc., depending on the platform.
|
||||
#
|
||||
O := obj
|
||||
SO := obj
|
||||
|
||||
|
||||
# The library file extension (for standard and static libraries). This can
|
||||
# be .a, .lib, etc., depending on the platform.
|
||||
#
|
||||
A := lib
|
||||
SA := lib
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := -I=
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := -D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L := -l
|
||||
|
||||
|
||||
# Target flag.
|
||||
#
|
||||
T := -FO=
|
||||
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||
# ANSI compliance.
|
||||
#
|
||||
CFLAGS ?= -zq
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
ANSIFLAGS := -za
|
||||
|
||||
|
||||
# Library linking
|
||||
#
|
||||
CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
|
||||
LINK_LIBRARY = $(subst /,$(COMPILER_SEP), \
|
||||
wlib -q -n $@; \
|
||||
$(foreach m, $(OBJECTS_LIST), wlib -q $@ +$(m);) \
|
||||
echo > nul)
|
||||
|
||||
# EOF
|
81
thirdparty/freetype/builds/compiler/win-lcc.mk
vendored
Normal file
81
thirdparty/freetype/builds/compiler/win-lcc.mk
vendored
Normal file
|
@ -0,0 +1,81 @@
|
|||
#
|
||||
# FreeType 2 Win32-LCC specific definitions
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# Command line name
|
||||
#
|
||||
CC := lcc
|
||||
COMPILER_SEP := $(SEP)
|
||||
|
||||
|
||||
# The object file extension (for standard and static libraries). This can be
|
||||
# .o, .tco, .obj, etc., depending on the platform.
|
||||
#
|
||||
O := obj
|
||||
SO := obj
|
||||
|
||||
|
||||
# The library file extension (for standard and static libraries). This can
|
||||
# be .a, .lib, etc., depending on the platform.
|
||||
#
|
||||
A := lib
|
||||
SA := lib
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := -I
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := -D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L := -Fl
|
||||
|
||||
|
||||
# Target flag.
|
||||
#
|
||||
T := -Fo
|
||||
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||
# ANSI compliance.
|
||||
#
|
||||
CFLAGS ?= -c -g2 -O
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
# LCC is pure ANSI anyway!
|
||||
#
|
||||
ANSIFLAGS :=
|
||||
|
||||
|
||||
# library linking
|
||||
#
|
||||
#CLEAN_LIBRARY :=
|
||||
LINK_LIBRARY = lcclib /out:$(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST))
|
||||
|
||||
|
||||
# EOF
|
154
thirdparty/freetype/builds/detect.mk
vendored
Normal file
154
thirdparty/freetype/builds/detect.mk
vendored
Normal file
|
@ -0,0 +1,154 @@
|
|||
#
|
||||
# FreeType 2 host platform detection rules
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# This sub-Makefile is in charge of detecting the current platform. It sets
|
||||
# the following variables:
|
||||
#
|
||||
# BUILD_DIR The configuration and system-specific directory. Usually
|
||||
# `builds/$(PLATFORM)' but can be different for custom builds
|
||||
# of the library.
|
||||
#
|
||||
# The following variables must be defined in system specific `detect.mk'
|
||||
# files:
|
||||
#
|
||||
# PLATFORM The detected platform. This will default to `ansi' if
|
||||
# auto-detection fails.
|
||||
# CONFIG_FILE The configuration sub-makefile to use. This usually depends
|
||||
# on the compiler defined in the `CC' environment variable.
|
||||
# DELETE The shell command used to remove a given file.
|
||||
# COPY The shell command used to copy one file.
|
||||
# SEP The platform-specific directory separator.
|
||||
# COMPILER_SEP The separator used in arguments of the compilation tools.
|
||||
# CC The compiler to use.
|
||||
#
|
||||
# You need to set the following variable(s) before calling it:
|
||||
#
|
||||
# TOP_DIR The top-most directory in the FreeType library source
|
||||
# hierarchy. If not defined, it will default to `.'.
|
||||
|
||||
# Set auto-detection default to `ansi' resp. UNIX-like operating systems.
|
||||
#
|
||||
PLATFORM := ansi
|
||||
DELETE := $(RM)
|
||||
COPY := cp
|
||||
CAT := cat
|
||||
SEP := /
|
||||
|
||||
BUILD_CONFIG := $(TOP_DIR)/builds
|
||||
|
||||
# These two assignments must be delayed.
|
||||
BUILD_DIR = $(BUILD_CONFIG)/$(PLATFORM)
|
||||
CONFIG_RULES = $(BUILD_DIR)/$(CONFIG_FILE)
|
||||
|
||||
# We define the BACKSLASH variable to hold a single back-slash character.
|
||||
# This is needed because a line like
|
||||
#
|
||||
# SEP := \
|
||||
#
|
||||
# does not work with GNU Make (the backslash is interpreted as a line
|
||||
# continuation). While a line like
|
||||
#
|
||||
# SEP := \\
|
||||
#
|
||||
# really defines $(SEP) as `\' on Unix, and `\\' on Dos and Windows!
|
||||
#
|
||||
BACKSLASH := $(strip \ )
|
||||
|
||||
# Find all auto-detectable platforms.
|
||||
#
|
||||
PLATFORMS := $(notdir $(subst /detect.mk,,$(wildcard $(BUILD_CONFIG)/*/detect.mk)))
|
||||
.PHONY: $(PLATFORMS) ansi
|
||||
|
||||
# Filter out platform specified as setup target.
|
||||
#
|
||||
PLATFORM := $(firstword $(filter $(MAKECMDGOALS),$(PLATFORMS)))
|
||||
|
||||
# If no setup target platform was specified, enable auto-detection/
|
||||
# default platform.
|
||||
#
|
||||
ifeq ($(PLATFORM),)
|
||||
PLATFORM := ansi
|
||||
endif
|
||||
|
||||
# If the user has explicitly asked for `ansi' on the command line,
|
||||
# disable auto-detection.
|
||||
#
|
||||
ifeq ($(findstring ansi,$(MAKECMDGOALS)),)
|
||||
# Now, include all detection rule files found in the `builds/<system>'
|
||||
# directories. Note that the calling order of the various `detect.mk'
|
||||
# files isn't predictable.
|
||||
#
|
||||
include $(wildcard $(BUILD_CONFIG)/*/detect.mk)
|
||||
endif
|
||||
|
||||
# In case no detection rule file was successful, use the default.
|
||||
#
|
||||
ifndef CONFIG_FILE
|
||||
CONFIG_FILE := ansi.mk
|
||||
setup: std_setup
|
||||
.PHONY: setup
|
||||
endif
|
||||
|
||||
# The following targets are equivalent, with the exception that they use
|
||||
# a slightly different syntax for the `echo' command.
|
||||
#
|
||||
# std_setup: defined for most (i.e. Unix-like) platforms
|
||||
# dos_setup: defined for Dos-ish platforms like Dos, Windows & OS/2
|
||||
#
|
||||
.PHONY: std_setup dos_setup
|
||||
|
||||
std_setup:
|
||||
@echo ""
|
||||
@echo "$(PROJECT_TITLE) build system -- automatic system detection"
|
||||
@echo ""
|
||||
@echo "The following settings are used:"
|
||||
@echo ""
|
||||
@echo " platform $(PLATFORM)"
|
||||
@echo " compiler $(CC)"
|
||||
@echo " configuration directory $(BUILD_DIR)"
|
||||
@echo " configuration rules $(CONFIG_RULES)"
|
||||
@echo ""
|
||||
@echo "If this does not correspond to your system or settings please remove the file"
|
||||
@echo "\`$(CONFIG_MK)' from this directory then read the INSTALL file for help."
|
||||
@echo ""
|
||||
@echo "Otherwise, simply type \`$(MAKE)' again to build the library,"
|
||||
@echo "or \`$(MAKE) refdoc' to build the API reference (this needs python >= 2.6)."
|
||||
@echo ""
|
||||
@$(COPY) $(CONFIG_RULES) $(CONFIG_MK)
|
||||
|
||||
|
||||
# Special case for Dos, Windows, OS/2, where echo "" doesn't work correctly!
|
||||
#
|
||||
dos_setup:
|
||||
@type builds$(SEP)newline
|
||||
@echo $(PROJECT_TITLE) build system -- automatic system detection
|
||||
@type builds$(SEP)newline
|
||||
@echo The following settings are used:
|
||||
@type builds$(SEP)newline
|
||||
@echo platformÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ$(PLATFORM)
|
||||
@echo compilerÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ$(CC)
|
||||
@echo configuration directoryÿÿÿÿÿÿ$(subst /,$(SEP),$(BUILD_DIR))
|
||||
@echo configuration rulesÿÿÿÿÿÿÿÿÿÿ$(subst /,$(SEP),$(CONFIG_RULES))
|
||||
@type builds$(SEP)newline
|
||||
@echo If this does not correspond to your system or settings please remove the file
|
||||
@echo '$(CONFIG_MK)' from this directory then read the INSTALL file for help.
|
||||
@type builds$(SEP)newline
|
||||
@echo Otherwise, simply type 'make' again to build the library.
|
||||
@echo or 'make refdoc' to build the API reference (this needs python >= 2.6).
|
||||
@type builds$(SEP)newline
|
||||
@$(COPY) $(subst /,$(SEP),$(CONFIG_RULES) $(CONFIG_MK)) > nul
|
||||
|
||||
|
||||
# EOF
|
142
thirdparty/freetype/builds/dos/detect.mk
vendored
Normal file
142
thirdparty/freetype/builds/dos/detect.mk
vendored
Normal file
|
@ -0,0 +1,142 @@
|
|||
#
|
||||
# FreeType 2 configuration file to detect a DOS host platform.
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
.PHONY: setup
|
||||
|
||||
|
||||
ifeq ($(PLATFORM),ansi)
|
||||
|
||||
# Test for DJGPP by checking the DJGPP environment variable, which must be
|
||||
# set in order to use the system (ie. it will always be present when the
|
||||
# `make' utility is run).
|
||||
#
|
||||
# We test for the COMSPEC environment variable, then run the `ver'
|
||||
# command-line program to see if its output contains the word `Dos' or
|
||||
# `DOS'.
|
||||
#
|
||||
# If this is true, we are running a Dos-ish platform (or an emulation).
|
||||
#
|
||||
ifdef DJGPP
|
||||
PLATFORM := dos
|
||||
else
|
||||
ifdef COMSPEC
|
||||
is_dos := $(findstring DOS,$(subst Dos,DOS,$(shell ver)))
|
||||
|
||||
# We try to recognize a Dos session under OS/2. The `ver' command
|
||||
# returns `Operating System/2 ...' there, so `is_dos' should be empty.
|
||||
#
|
||||
# To recognize a Dos session under OS/2, we check COMSPEC for the
|
||||
# substring `MDOS\COMMAND'
|
||||
#
|
||||
ifeq ($(is_dos),)
|
||||
is_dos := $(findstring MDOS\COMMAND,$(COMSPEC))
|
||||
endif
|
||||
|
||||
# We also try to recognize Dos 7.x without Windows 9X launched.
|
||||
# See builds/windows/detect.mk for explanations about the logic.
|
||||
#
|
||||
ifeq ($(is_dos),)
|
||||
ifdef winbootdir
|
||||
#ifneq ($(OS),Windows_NT)
|
||||
# If windows is available, do not trigger this test.
|
||||
ifndef windir
|
||||
is_dos := $(findstring Windows,$(strip $(shell ver)))
|
||||
endif
|
||||
#endif
|
||||
endif
|
||||
endif
|
||||
|
||||
endif # test COMSPEC
|
||||
|
||||
ifneq ($(is_dos),)
|
||||
|
||||
PLATFORM := dos
|
||||
|
||||
endif # test Dos
|
||||
endif # test DJGPP
|
||||
endif # test PLATFORM ansi
|
||||
|
||||
ifeq ($(PLATFORM),dos)
|
||||
|
||||
# Use DJGPP (i.e. gcc) by default.
|
||||
#
|
||||
CONFIG_FILE := dos-gcc.mk
|
||||
CC ?= gcc
|
||||
|
||||
# additionally, we provide hooks for various other compilers
|
||||
#
|
||||
ifneq ($(findstring emx,$(MAKECMDGOALS)),) # EMX gcc
|
||||
CONFIG_FILE := dos-emx.mk
|
||||
CC := gcc
|
||||
emx: setup
|
||||
.PHONY: emx
|
||||
endif
|
||||
|
||||
ifneq ($(findstring turboc,$(MAKECMDGOALS)),) # Turbo C
|
||||
CONFIG_FILE := dos-tcc.mk
|
||||
CC := tcc
|
||||
turboc: setup
|
||||
.PHONY: turboc
|
||||
endif
|
||||
|
||||
ifneq ($(findstring watcom,$(MAKECMDGOALS)),) # Watcom C/C++
|
||||
CONFIG_FILE := dos-wat.mk
|
||||
CC := wcc386
|
||||
watcom: setup
|
||||
.PHONY: watcom
|
||||
endif
|
||||
|
||||
ifneq ($(findstring borlandc,$(MAKECMDGOALS)),) # Borland C/C++ 32-bit
|
||||
CONFIG_FILE := dos-bcc.mk
|
||||
CC := bcc32
|
||||
borlandc: setup
|
||||
.PHONY: borlandc
|
||||
endif
|
||||
|
||||
ifneq ($(findstring borlandc16,$(MAKECMDGOALS)),) # Borland C/C++ 16-bit
|
||||
CONFIG_FILE := dos-bcc.mk
|
||||
CC := bcc
|
||||
borlandc16: setup
|
||||
.PHONY: borlandc16
|
||||
endif
|
||||
|
||||
ifneq ($(findstring bash,$(SHELL)),) # check for bash
|
||||
SEP := /
|
||||
DELETE := rm
|
||||
COPY := cp
|
||||
CAT := cat
|
||||
setup: std_setup
|
||||
else
|
||||
SEP := $(BACKSLASH)
|
||||
DELETE := del
|
||||
CAT := type
|
||||
|
||||
# Setting COPY is a bit trickier. We can be running DJGPP on some
|
||||
# Windows NT derivatives, like XP. See builds/windows/detect.mk for
|
||||
# explanations why we need hacking here.
|
||||
#
|
||||
ifeq ($(OS),Windows_NT)
|
||||
COPY := cmd.exe /c copy
|
||||
else
|
||||
COPY := copy
|
||||
endif # test NT
|
||||
|
||||
setup: dos_setup
|
||||
endif
|
||||
|
||||
endif # test PLATFORM dos
|
||||
|
||||
|
||||
# EOF
|
45
thirdparty/freetype/builds/dos/dos-def.mk
vendored
Normal file
45
thirdparty/freetype/builds/dos/dos-def.mk
vendored
Normal file
|
@ -0,0 +1,45 @@
|
|||
#
|
||||
# FreeType 2 DOS specific definitions
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
DELETE := del
|
||||
CAT := type
|
||||
SEP := $(strip \ )
|
||||
BUILD_DIR := $(TOP_DIR)/builds/dos
|
||||
PLATFORM := dos
|
||||
|
||||
|
||||
# The executable file extension (for tools), *with* leading dot.
|
||||
#
|
||||
E := .exe
|
||||
|
||||
# The directory where all library files are placed.
|
||||
#
|
||||
# By default, this is the same as $(OBJ_DIR); however, this can be changed
|
||||
# to suit particular needs.
|
||||
#
|
||||
LIB_DIR := $(OBJ_DIR)
|
||||
|
||||
# The name of the final library file. Note that the DOS-specific Makefile
|
||||
# uses a shorter (8.3) name.
|
||||
#
|
||||
LIBRARY := $(PROJECT)
|
||||
|
||||
|
||||
# The NO_OUTPUT macro is used to ignore the output of commands.
|
||||
#
|
||||
NO_OUTPUT = > nul
|
||||
|
||||
|
||||
# EOF
|
21
thirdparty/freetype/builds/dos/dos-emx.mk
vendored
Normal file
21
thirdparty/freetype/builds/dos/dos-emx.mk
vendored
Normal file
|
@ -0,0 +1,21 @@
|
|||
#
|
||||
# FreeType 2 configuration rules for the EMX gcc compiler
|
||||
#
|
||||
|
||||
|
||||
# Copyright 2003-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
include $(TOP_DIR)/builds/dos/dos-def.mk
|
||||
include $(TOP_DIR)/builds/compiler/emx.mk
|
||||
include $(TOP_DIR)/builds/link_dos.mk
|
||||
|
||||
|
||||
# EOF
|
21
thirdparty/freetype/builds/dos/dos-gcc.mk
vendored
Normal file
21
thirdparty/freetype/builds/dos/dos-gcc.mk
vendored
Normal file
|
@ -0,0 +1,21 @@
|
|||
#
|
||||
# FreeType 2 configuration rules for the DJGPP compiler
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
include $(TOP_DIR)/builds/dos/dos-def.mk
|
||||
include $(TOP_DIR)/builds/compiler/gcc.mk
|
||||
include $(TOP_DIR)/builds/link_dos.mk
|
||||
|
||||
|
||||
# EOF
|
20
thirdparty/freetype/builds/dos/dos-wat.mk
vendored
Normal file
20
thirdparty/freetype/builds/dos/dos-wat.mk
vendored
Normal file
|
@ -0,0 +1,20 @@
|
|||
#
|
||||
# FreeType 2 configuration rules for the Watcom C/C++ compiler
|
||||
#
|
||||
|
||||
|
||||
# Copyright 2003-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
include $(TOP_DIR)/builds/dos/dos-def.mk
|
||||
include $(TOP_DIR)/builds/compiler/watcom.mk
|
||||
include $(TOP_DIR)/builds/link_dos.mk
|
||||
|
||||
|
||||
# EOF
|
76
thirdparty/freetype/builds/exports.mk
vendored
Normal file
76
thirdparty/freetype/builds/exports.mk
vendored
Normal file
|
@ -0,0 +1,76 @@
|
|||
#
|
||||
# FreeType 2 exports sub-Makefile
|
||||
#
|
||||
|
||||
|
||||
# Copyright 2005-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# DO NOT INVOKE THIS MAKEFILE DIRECTLY! IT IS MEANT TO BE INCLUDED BY
|
||||
# OTHER MAKEFILES.
|
||||
|
||||
|
||||
# This sub-Makefile is used to compute the list of exported symbols whenever
|
||||
# the EXPORTS_LIST variable is defined by one of the platform or compiler
|
||||
# specific build files.
|
||||
#
|
||||
# EXPORTS_LIST contains the name of the `list' file, for example a Windows
|
||||
# .DEF file.
|
||||
#
|
||||
ifneq ($(EXPORTS_LIST),)
|
||||
|
||||
# CCexe is the compiler used to compile the `apinames' tool program
|
||||
# on the host machine. This isn't necessarily the same as the compiler
|
||||
# which can be a cross-compiler for a different architecture, for example.
|
||||
#
|
||||
ifeq ($(CCexe),)
|
||||
CCexe := $(CC)
|
||||
endif
|
||||
|
||||
# TE acts like T, but for executables instead of object files.
|
||||
ifeq ($(TE),)
|
||||
TE := $T
|
||||
endif
|
||||
|
||||
# The list of public headers we're going to parse.
|
||||
PUBLIC_HEADERS := $(wildcard $(PUBLIC_DIR)/*.h)
|
||||
|
||||
# The `apinames' source and executable. We use $E_BUILD as the host
|
||||
# executable suffix, which *includes* the final dot.
|
||||
#
|
||||
# Note that $(APINAMES_OPTIONS) is empty, except for Windows compilers.
|
||||
#
|
||||
APINAMES_SRC := $(subst /,$(SEP),$(TOP_DIR)/src/tools/apinames.c)
|
||||
APINAMES_EXE := $(subst /,$(SEP),$(OBJ_DIR)/apinames$(E_BUILD))
|
||||
|
||||
$(APINAMES_EXE): $(APINAMES_SRC)
|
||||
$(CCexe) $(CCexe_CFLAGS) $(TE)$@ $< $(CCexe_LDFLAGS)
|
||||
|
||||
.PHONY: symbols_list
|
||||
|
||||
symbols_list: $(EXPORTS_LIST)
|
||||
|
||||
# We manually add TT_New_Context and TT_RunIns, which are needed by TT
|
||||
# debuggers, to the EXPORTS_LIST.
|
||||
#
|
||||
$(EXPORTS_LIST): $(APINAMES_EXE) $(PUBLIC_HEADERS)
|
||||
$(subst /,$(SEP),$(APINAMES_EXE)) -o$@ $(APINAMES_OPTIONS) $(PUBLIC_HEADERS)
|
||||
@echo TT_New_Context >> $(EXPORTS_LIST)
|
||||
@echo TT_RunIns >> $(EXPORTS_LIST)
|
||||
|
||||
$(PROJECT_LIBRARY): $(EXPORTS_LIST)
|
||||
|
||||
CLEAN += $(EXPORTS_LIST) \
|
||||
$(APINAMES_EXE)
|
||||
|
||||
endif
|
||||
|
||||
|
||||
# EOF
|
339
thirdparty/freetype/builds/freetype.mk
vendored
Normal file
339
thirdparty/freetype/builds/freetype.mk
vendored
Normal file
|
@ -0,0 +1,339 @@
|
|||
#
|
||||
# FreeType 2 library sub-Makefile
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# DO NOT INVOKE THIS MAKEFILE DIRECTLY! IT IS MEANT TO BE INCLUDED BY
|
||||
# OTHER MAKEFILES.
|
||||
|
||||
|
||||
# The following variables (set by other Makefile components, in the
|
||||
# environment, or on the command line) are used:
|
||||
#
|
||||
# BUILD_DIR The architecture dependent directory,
|
||||
# e.g. `$(TOP_DIR)/builds/unix'. Added to INCLUDES also.
|
||||
#
|
||||
# OBJ_DIR The directory in which object files are created.
|
||||
#
|
||||
# LIB_DIR The directory in which the library is created.
|
||||
#
|
||||
# DOC_DIR The directory in which the API reference is created.
|
||||
#
|
||||
# INCLUDES A list of directories to be included additionally.
|
||||
#
|
||||
# DEVEL_DIR Development directory which is added to the INCLUDES
|
||||
# variable before the standard include directories.
|
||||
#
|
||||
# CFLAGS Compilation flags. This overrides the default settings
|
||||
# in the platform-specific configuration files.
|
||||
#
|
||||
# FTSYS_SRC If set, its value is used as the name of a replacement
|
||||
# file for `src/base/ftsystem.c'.
|
||||
#
|
||||
# FTDEBUG_SRC If set, its value is used as the name of a replacement
|
||||
# file for `src/base/ftdebug.c'. [For a normal build, this
|
||||
# file does nothing.]
|
||||
#
|
||||
# FTMODULE_H The file which contains the list of module classes for
|
||||
# the current build. Usually, this is automatically
|
||||
# created by `modules.mk'.
|
||||
#
|
||||
# BASE_OBJ_S
|
||||
# BASE_OBJ_M A list of base objects (for single object and multiple
|
||||
# object builds, respectively). Set up in
|
||||
# `src/base/rules.mk'.
|
||||
#
|
||||
# BASE_EXT_OBJ A list of base extension objects. Set up in
|
||||
# `src/base/rules.mk'.
|
||||
#
|
||||
# DRV_OBJ_S
|
||||
# DRV_OBJ_M A list of driver objects (for single object and multiple
|
||||
# object builds, respectively). Set up cumulatively in
|
||||
# `src/<driver>/rules.mk'.
|
||||
#
|
||||
# CLEAN
|
||||
# DISTCLEAN The sub-makefiles can append additional stuff to these two
|
||||
# variables which is to be removed for the `clean' resp.
|
||||
# `distclean' target.
|
||||
#
|
||||
# TOP_DIR, SEP,
|
||||
# COMPILER_SEP,
|
||||
# LIBRARY, CC,
|
||||
# A, I, O, T Check `config.mk' for details.
|
||||
|
||||
|
||||
# The targets `objects' and `library' are defined at the end of this
|
||||
# Makefile after all other rules have been included.
|
||||
#
|
||||
.PHONY: single multi objects library refdoc
|
||||
|
||||
# default target -- build single objects and library
|
||||
#
|
||||
single: objects library
|
||||
|
||||
# `multi' target -- build multiple objects and library
|
||||
#
|
||||
multi: objects library
|
||||
|
||||
|
||||
# The FreeType source directory, usually `./src'.
|
||||
#
|
||||
SRC_DIR := $(TOP_DIR)/src
|
||||
|
||||
# The directory where the base layer components are placed, usually
|
||||
# `./src/base'.
|
||||
#
|
||||
BASE_DIR := $(SRC_DIR)/base
|
||||
|
||||
# Other derived directories.
|
||||
#
|
||||
PUBLIC_DIR := $(TOP_DIR)/include/freetype
|
||||
INTERNAL_DIR := $(PUBLIC_DIR)/internal
|
||||
SERVICES_DIR := $(INTERNAL_DIR)/services
|
||||
CONFIG_DIR := $(PUBLIC_DIR)/config
|
||||
|
||||
# The documentation directory.
|
||||
#
|
||||
DOC_DIR ?= $(TOP_DIR)/docs/reference
|
||||
|
||||
# The final name of the library file.
|
||||
#
|
||||
PROJECT_LIBRARY := $(LIB_DIR)/$(LIBRARY).$A
|
||||
|
||||
|
||||
# include paths
|
||||
#
|
||||
# IMPORTANT NOTE: The architecture-dependent directory must ALWAYS be placed
|
||||
# before the standard include list. Porters are then able to
|
||||
# put their own version of some of the FreeType components
|
||||
# in the `builds/<system>' directory, as these files will
|
||||
# override the default sources.
|
||||
#
|
||||
INCLUDES := $(subst /,$(COMPILER_SEP),$(OBJ_DIR) \
|
||||
$(DEVEL_DIR) \
|
||||
$(BUILD_DIR) \
|
||||
$(TOP_DIR)/include)
|
||||
|
||||
INCLUDE_FLAGS := $(INCLUDES:%=$I%)
|
||||
|
||||
ifdef DEVEL_DIR
|
||||
# We assume that all library dependencies for FreeType are fulfilled for a
|
||||
# development build, so we directly access the necessary include directory
|
||||
# information using `pkg-config'.
|
||||
INCLUDE_FLAGS += $(shell pkg-config --cflags libpng \
|
||||
harfbuzz )
|
||||
endif
|
||||
|
||||
|
||||
# C flags used for the compilation of an object file. This must include at
|
||||
# least the paths for the `base' and `builds/<system>' directories;
|
||||
# debug/optimization/warning flags + ansi compliance if needed.
|
||||
#
|
||||
# $(INCLUDE_FLAGS) should come before $(CFLAGS) to avoid problems with
|
||||
# old FreeType versions.
|
||||
#
|
||||
# Note what we also define the macro FT2_BUILD_LIBRARY when building
|
||||
# FreeType. This is required to let our sources include the internal
|
||||
# headers (something forbidden by clients).
|
||||
#
|
||||
# Finally, we define FT_CONFIG_MODULES_H so that the compiler uses the
|
||||
# generated version of `ftmodule.h' in $(OBJ_DIR). If there is an
|
||||
# `ftoption.h' files in $(OBJ_DIR), define FT_CONFIG_OPTIONS_H too.
|
||||
#
|
||||
ifneq ($(wildcard $(OBJ_DIR)/ftoption.h),)
|
||||
FTOPTION_H := $(OBJ_DIR)/ftoption.h
|
||||
FTOPTION_FLAG := $DFT_CONFIG_OPTIONS_H="<ftoption.h>"
|
||||
endif
|
||||
|
||||
# `CPPFLAGS' might be specified by the user in the environment.
|
||||
#
|
||||
FT_CFLAGS = $(CPPFLAGS) \
|
||||
$(CFLAGS) \
|
||||
$DFT2_BUILD_LIBRARY \
|
||||
$DFT_CONFIG_MODULES_H="<ftmodule.h>" \
|
||||
$(FTOPTION_FLAG)
|
||||
|
||||
|
||||
# Include the `exports' rules file.
|
||||
#
|
||||
include $(TOP_DIR)/builds/exports.mk
|
||||
|
||||
|
||||
# Initialize the list of objects.
|
||||
#
|
||||
OBJECTS_LIST :=
|
||||
|
||||
|
||||
# Define $(PUBLIC_H) as the list of all public header files located in
|
||||
# `$(TOP_DIR)/include/freetype'. $(INTERNAL_H), and $(CONFIG_H) are defined
|
||||
# similarly.
|
||||
#
|
||||
# This is used to simplify the dependency rules -- if one of these files
|
||||
# changes, the whole library is recompiled.
|
||||
#
|
||||
PUBLIC_H := $(wildcard $(PUBLIC_DIR)/*.h)
|
||||
INTERNAL_H := $(wildcard $(INTERNAL_DIR)/*.h) \
|
||||
$(wildcard $(SERVICES_DIR)/*.h)
|
||||
CONFIG_H := $(wildcard $(CONFIG_DIR)/*.h) \
|
||||
$(wildcard $(BUILD_DIR)/config/*.h) \
|
||||
$(FTMODULE_H) \
|
||||
$(FTOPTION_H)
|
||||
DEVEL_H := $(wildcard $(TOP_DIR)/devel/*.h)
|
||||
|
||||
FREETYPE_H := $(PUBLIC_H) $(INTERNAL_H) $(CONFIG_H) $(DEVEL_H)
|
||||
|
||||
|
||||
FT_COMPILE := $(CC) $(ANSIFLAGS) $(INCLUDE_FLAGS) $(FT_CFLAGS)
|
||||
|
||||
# ftsystem component
|
||||
#
|
||||
FTSYS_SRC ?= $(BASE_DIR)/ftsystem.c
|
||||
|
||||
FTSYS_OBJ := $(OBJ_DIR)/ftsystem.$O
|
||||
|
||||
OBJECTS_LIST += $(FTSYS_OBJ)
|
||||
|
||||
$(FTSYS_OBJ): $(FTSYS_SRC) $(FREETYPE_H)
|
||||
$(FT_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<)
|
||||
|
||||
|
||||
# ftdebug component
|
||||
#
|
||||
FTDEBUG_SRC ?= $(BASE_DIR)/ftdebug.c
|
||||
|
||||
FTDEBUG_OBJ := $(OBJ_DIR)/ftdebug.$O
|
||||
|
||||
OBJECTS_LIST += $(FTDEBUG_OBJ)
|
||||
|
||||
$(FTDEBUG_OBJ): $(FTDEBUG_SRC) $(FREETYPE_H)
|
||||
$(FT_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<)
|
||||
|
||||
|
||||
# Include all rule files from FreeType components.
|
||||
#
|
||||
include $(SRC_DIR)/base/rules.mk
|
||||
include $(patsubst %,$(SRC_DIR)/%/rules.mk,$(MODULES))
|
||||
|
||||
|
||||
# ftinit component
|
||||
#
|
||||
# The C source `ftinit.c' contains the FreeType initialization routines.
|
||||
# It is able to automatically register one or more drivers when the API
|
||||
# function FT_Init_FreeType() is called.
|
||||
#
|
||||
# The set of initial drivers is determined by the driver Makefiles
|
||||
# includes above. Each driver Makefile updates the FTINIT_xxx lists
|
||||
# which contain additional include paths and macros used to compile the
|
||||
# single `ftinit.c' source.
|
||||
#
|
||||
FTINIT_SRC := $(BASE_DIR)/ftinit.c
|
||||
FTINIT_OBJ := $(OBJ_DIR)/ftinit.$O
|
||||
|
||||
OBJECTS_LIST += $(FTINIT_OBJ)
|
||||
|
||||
$(FTINIT_OBJ): $(FTINIT_SRC) $(FREETYPE_H)
|
||||
$(FT_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<)
|
||||
|
||||
|
||||
# All FreeType library objects.
|
||||
#
|
||||
OBJ_M := $(BASE_OBJ_M) $(BASE_EXT_OBJ) $(DRV_OBJS_M)
|
||||
OBJ_S := $(BASE_OBJ_S) $(BASE_EXT_OBJ) $(DRV_OBJS_S)
|
||||
|
||||
|
||||
# The target `multi' on the Make command line indicates that we want to
|
||||
# compile each source file independently.
|
||||
#
|
||||
# Otherwise, each module/driver is compiled in a single object file through
|
||||
# source file inclusion (see `src/base/ftbase.c' or
|
||||
# `src/truetype/truetype.c' for examples).
|
||||
#
|
||||
BASE_OBJECTS := $(OBJECTS_LIST)
|
||||
|
||||
ifneq ($(findstring multi,$(MAKECMDGOALS)),)
|
||||
OBJECTS_LIST += $(OBJ_M)
|
||||
else
|
||||
OBJECTS_LIST += $(OBJ_S)
|
||||
endif
|
||||
|
||||
objects: $(OBJECTS_LIST)
|
||||
|
||||
library: $(PROJECT_LIBRARY)
|
||||
|
||||
|
||||
# Option `-B' disables generation of .pyc files (available since python 2.6)
|
||||
#
|
||||
refdoc:
|
||||
python -B $(SRC_DIR)/tools/docmaker/docmaker.py \
|
||||
--prefix=ft2 \
|
||||
--title=FreeType-$(version) \
|
||||
--output=$(DOC_DIR) \
|
||||
$(PUBLIC_DIR)/*.h \
|
||||
$(PUBLIC_DIR)/config/*.h \
|
||||
$(PUBLIC_DIR)/cache/*.h
|
||||
|
||||
|
||||
.PHONY: clean_project_std distclean_project_std
|
||||
|
||||
# Standard cleaning and distclean rules. These are not accepted
|
||||
# on all systems though.
|
||||
#
|
||||
clean_project_std:
|
||||
-$(DELETE) $(BASE_OBJECTS) $(OBJ_M) $(OBJ_S) $(CLEAN)
|
||||
|
||||
distclean_project_std: clean_project_std
|
||||
-$(DELETE) $(PROJECT_LIBRARY)
|
||||
-$(DELETE) *.orig *~ core *.core $(DISTCLEAN)
|
||||
|
||||
|
||||
.PHONY: clean_project_dos distclean_project_dos
|
||||
|
||||
# The Dos command shell does not support very long list of arguments, so
|
||||
# we are stuck with wildcards.
|
||||
#
|
||||
# Don't break the command lines with \; this prevents the "del" command from
|
||||
# working correctly on Win9x.
|
||||
#
|
||||
clean_project_dos:
|
||||
-$(DELETE) $(subst /,$(SEP),$(OBJ_DIR)/*.$O $(CLEAN) $(NO_OUTPUT))
|
||||
|
||||
distclean_project_dos: clean_project_dos
|
||||
-$(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY) $(DISTCLEAN) $(NO_OUTPUT))
|
||||
|
||||
|
||||
.PHONY: remove_config_mk remove_ftmodule_h
|
||||
|
||||
# Remove configuration file (used for distclean).
|
||||
#
|
||||
remove_config_mk:
|
||||
-$(DELETE) $(subst /,$(SEP),$(CONFIG_MK) $(NO_OUTPUT))
|
||||
|
||||
# Remove module list (used for distclean).
|
||||
#
|
||||
remove_ftmodule_h:
|
||||
-$(DELETE) $(subst /,$(SEP),$(FTMODULE_H) $(NO_OUTPUT))
|
||||
|
||||
|
||||
.PHONY: clean distclean
|
||||
|
||||
# The `config.mk' file must define `clean_freetype' and
|
||||
# `distclean_freetype'. Implementations may use to relay these to either
|
||||
# the `std' or `dos' versions from above, or simply provide their own
|
||||
# implementation.
|
||||
#
|
||||
clean: clean_project
|
||||
distclean: distclean_project remove_config_mk remove_ftmodule_h
|
||||
-$(DELETE) $(subst /,$(SEP),$(DOC_DIR)/*.html $(NO_OUTPUT))
|
||||
|
||||
|
||||
# EOF
|
42
thirdparty/freetype/builds/link_dos.mk
vendored
Normal file
42
thirdparty/freetype/builds/link_dos.mk
vendored
Normal file
|
@ -0,0 +1,42 @@
|
|||
#
|
||||
# Link instructions for Dos-like systems (Dos, Win32, OS/2)
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
ifdef BUILD_PROJECT
|
||||
|
||||
.PHONY: clean_project distclean_project
|
||||
|
||||
# Now include the main sub-makefile. It contains all the rules used to
|
||||
# build the library with the previous variables defined.
|
||||
#
|
||||
include $(TOP_DIR)/builds/$(PROJECT).mk
|
||||
|
||||
# The cleanup targets.
|
||||
#
|
||||
clean_project: clean_project_dos
|
||||
distclean_project: distclean_project_dos
|
||||
|
||||
# This final rule is used to link all object files into a single library.
|
||||
# this is compiler-specific
|
||||
#
|
||||
$(PROJECT_LIBRARY): $(OBJECTS_LIST)
|
||||
ifdef CLEAN_LIBRARY
|
||||
-$(CLEAN_LIBRARY) $(NO_OUTPUT)
|
||||
endif
|
||||
$(LINK_LIBRARY)
|
||||
|
||||
endif
|
||||
|
||||
|
||||
# EOF
|
42
thirdparty/freetype/builds/link_std.mk
vendored
Normal file
42
thirdparty/freetype/builds/link_std.mk
vendored
Normal file
|
@ -0,0 +1,42 @@
|
|||
#
|
||||
# Link instructions for standard systems
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
ifdef BUILD_PROJECT
|
||||
|
||||
.PHONY: clean_project distclean_project
|
||||
|
||||
# Now include the main sub-makefile. It contains all the rules used to
|
||||
# build the library with the previous variables defined.
|
||||
#
|
||||
include $(TOP_DIR)/builds/$(PROJECT).mk
|
||||
|
||||
# The cleanup targets.
|
||||
#
|
||||
clean_project: clean_project_std
|
||||
distclean_project: distclean_project_std
|
||||
|
||||
# This final rule is used to link all object files into a single library.
|
||||
# this is compiler-specific
|
||||
#
|
||||
$(PROJECT_LIBRARY): $(OBJECTS_LIST)
|
||||
ifdef CLEAN_LIBRARY
|
||||
-$(CLEAN_LIBRARY) $(NO_OUTPUT)
|
||||
endif
|
||||
$(LINK_LIBRARY)
|
||||
|
||||
endif
|
||||
|
||||
|
||||
# EOF
|
212
thirdparty/freetype/builds/mac/FreeType.m68k_cfm.make.txt
vendored
Normal file
212
thirdparty/freetype/builds/mac/FreeType.m68k_cfm.make.txt
vendored
Normal file
|
@ -0,0 +1,212 @@
|
|||
# File: FreeType.m68k_cfm.make
|
||||
# Target: FreeType.m68k_cfm
|
||||
# Created: Thursday, October 27, 2005 09:23:25 PM
|
||||
|
||||
|
||||
MAKEFILE = FreeType.m68k_cfm.make
|
||||
\xA5MondoBuild\xA5 = {MAKEFILE} # Make blank to avoid rebuilds when makefile is modified
|
||||
|
||||
ObjDir = :objs:
|
||||
Includes = \xB6
|
||||
-ansi strict \xB6
|
||||
-includes unix \xB6
|
||||
-i :include: \xB6
|
||||
-i :src: \xB6
|
||||
-i :include:freetype:config:
|
||||
|
||||
Sym-68K = -sym off
|
||||
|
||||
COptions = \xB6
|
||||
-d FT_MACINTOSH=1 \xB6
|
||||
-d HAVE_FSSPEC=1 \xB6
|
||||
-d HAVE_FSREF=0 \xB6
|
||||
-d HAVE_QUICKDRAW_TOOLBOX=1 \xB6
|
||||
-d HAVE_QUICKDRAW_CARBON=0 \xB6
|
||||
-d HAVE_ATS=0 \xB6
|
||||
-d FT2_BUILD_LIBRARY \xB6
|
||||
-d FT_CONFIG_CONFIG_H="<ftconfig.h>" \xB6
|
||||
-d FT_CONFIG_MODULES_H="<ftmodule.h>" \xB6
|
||||
{Includes} {Sym-68K} -model cfmseg
|
||||
|
||||
|
||||
### Source Files ###
|
||||
|
||||
SrcFiles = \xB6
|
||||
:src:autofit:autofit.c \xB6
|
||||
:builds:mac:ftbase.c \xB6
|
||||
:src:base:ftbbox.c \xB6
|
||||
:src:base:ftbdf.c \xB6
|
||||
:src:base:ftbitmap.c \xB6
|
||||
:src:base:ftdebug.c \xB6
|
||||
:src:base:ftfntfmt.c \xB6
|
||||
:src:base:ftfstype.c \xB6
|
||||
:src:base:ftglyph.c \xB6
|
||||
:src:base:ftgxval.c \xB6
|
||||
:src:base:ftinit.c \xB6
|
||||
:src:base:ftmm.c \xB6
|
||||
:src:base:ftotval.c \xB6
|
||||
:src:base:ftpfr.c \xB6
|
||||
:src:base:ftstroke.c \xB6
|
||||
:src:base:ftsynth.c \xB6
|
||||
:src:base:ftsystem.c \xB6
|
||||
:src:base:fttype1.c \xB6
|
||||
:src:base:ftwinfnt.c \xB6
|
||||
:src:cache:ftcache.c \xB6
|
||||
:src:bdf:bdf.c \xB6
|
||||
:src:cff:cff.c \xB6
|
||||
:src:cid:type1cid.c \xB6
|
||||
# :src:gxvalid:gxvalid.c \xB6
|
||||
:src:gzip:ftgzip.c \xB6
|
||||
:src:bzip2:ftbzip2.c \xB6
|
||||
:src:lzw:ftlzw.c \xB6
|
||||
:src:otvalid:otvalid.c \xB6
|
||||
:src:pcf:pcf.c \xB6
|
||||
:src:pfr:pfr.c \xB6
|
||||
:src:psaux:psaux.c \xB6
|
||||
:src:pshinter:pshinter.c \xB6
|
||||
:src:psnames:psmodule.c \xB6
|
||||
:src:raster:raster.c \xB6
|
||||
:src:sfnt:sfnt.c \xB6
|
||||
:src:smooth:smooth.c \xB6
|
||||
:src:truetype:truetype.c \xB6
|
||||
:src:type1:type1.c \xB6
|
||||
:src:type42:type42.c \xB6
|
||||
:src:winfonts:winfnt.c
|
||||
|
||||
|
||||
### Object Files ###
|
||||
|
||||
ObjFiles-68K = \xB6
|
||||
"{ObjDir}autofit.c.o" \xB6
|
||||
"{ObjDir}ftbase.c.o" \xB6
|
||||
"{ObjDir}ftbbox.c.o" \xB6
|
||||
"{ObjDir}ftbdf.c.o" \xB6
|
||||
"{ObjDir}ftbitmap.c.o" \xB6
|
||||
"{ObjDir}ftdebug.c.o" \xB6
|
||||
"{ObjDir}ftfntfmt.c.o" \xB6
|
||||
"{ObjDir}ftfstype.c.o" \xB6
|
||||
"{ObjDir}ftglyph.c.o" \xB6
|
||||
"{ObjDir}ftgxval.c.o" \xB6
|
||||
"{ObjDir}ftinit.c.o" \xB6
|
||||
"{ObjDir}ftmm.c.o" \xB6
|
||||
"{ObjDir}ftotval.c.o" \xB6
|
||||
"{ObjDir}ftpfr.c.o" \xB6
|
||||
"{ObjDir}ftstroke.c.o" \xB6
|
||||
"{ObjDir}ftsynth.c.o" \xB6
|
||||
"{ObjDir}ftsystem.c.o" \xB6
|
||||
"{ObjDir}fttype1.c.o" \xB6
|
||||
"{ObjDir}ftwinfnt.c.o" \xB6
|
||||
"{ObjDir}ftcache.c.o" \xB6
|
||||
"{ObjDir}bdf.c.o" \xB6
|
||||
"{ObjDir}cff.c.o" \xB6
|
||||
"{ObjDir}type1cid.c.o" \xB6
|
||||
# "{ObjDir}gxvalid.c.o" \xB6
|
||||
"{ObjDir}ftgzip.c.o" \xB6
|
||||
"{ObjDir}ftbzip2.c.o" \xB6
|
||||
"{ObjDir}ftlzw.c.o" \xB6
|
||||
"{ObjDir}otvalid.c.o" \xB6
|
||||
"{ObjDir}pcf.c.o" \xB6
|
||||
"{ObjDir}pfr.c.o" \xB6
|
||||
"{ObjDir}psaux.c.o" \xB6
|
||||
"{ObjDir}pshinter.c.o" \xB6
|
||||
"{ObjDir}psmodule.c.o" \xB6
|
||||
"{ObjDir}raster.c.o" \xB6
|
||||
"{ObjDir}sfnt.c.o" \xB6
|
||||
"{ObjDir}smooth.c.o" \xB6
|
||||
"{ObjDir}truetype.c.o" \xB6
|
||||
"{ObjDir}type1.c.o" \xB6
|
||||
"{ObjDir}type42.c.o" \xB6
|
||||
"{ObjDir}winfnt.c.o"
|
||||
|
||||
|
||||
### Libraries ###
|
||||
|
||||
LibFiles-68K =
|
||||
|
||||
|
||||
### Default Rules ###
|
||||
|
||||
.c.o \xC4 .c {\xA5MondoBuild\xA5}
|
||||
{C} {depDir}{default}.c -o {targDir}{default}.c.o {COptions}
|
||||
|
||||
|
||||
### Build Rules ###
|
||||
|
||||
:builds:mac:ftbase.c \xC4\xC4 :src:base:ftbase.c
|
||||
Duplicate :src:base:ftbase.c :builds:mac:ftbase.c
|
||||
|
||||
"{ObjDir}ftbase.c.o" \xC4\xC4 :builds:mac:ftbase.c
|
||||
{C} :builds:mac:ftbase.c -o "{ObjDir}ftbase.c.o" \xB6
|
||||
-i :builds:mac: \xB6
|
||||
-i :src:base: \xB6
|
||||
{COptions}
|
||||
|
||||
FreeType.m68k_cfm \xC4\xC4 FreeType.m68k_cfm.o
|
||||
|
||||
FreeType.m68k_cfm.o \xC4\xC4 {ObjFiles-68K} {LibFiles-68K} {\xA5MondoBuild\xA5}
|
||||
Lib \xB6
|
||||
-o {Targ} \xB6
|
||||
{ObjFiles-68K} \xB6
|
||||
{LibFiles-68K} \xB6
|
||||
{Sym-68K} \xB6
|
||||
-mf -d
|
||||
|
||||
|
||||
|
||||
### Required Dependencies ###
|
||||
|
||||
"{ObjDir}autofit.c.o" \xC4 :src:autofit:autofit.c
|
||||
# "{ObjDir}ftbase.c.o" \xC4 :src:base:ftbase.c
|
||||
"{ObjDir}ftbbox.c.o" \xC4 :src:base:ftbbox.c
|
||||
"{ObjDir}ftbdf.c.o" \xC4 :src:base:ftbdf.c
|
||||
"{ObjDir}ftbitmap.c.o" \xC4 :src:base:ftbitmap.c
|
||||
"{ObjDir}ftdebug.c.o" \xC4 :src:base:ftdebug.c
|
||||
"{ObjDir}ftfntfmt.c.o" \xC4 :src:base:ftfntfmt.c
|
||||
"{ObjDir}ftfstype.c.o" \xC4 :src:base:ftfstype.c
|
||||
"{ObjDir}ftglyph.c.o" \xC4 :src:base:ftglyph.c
|
||||
"{ObjDir}ftgxval.c.o" \xC4 :src:base:ftgxval.c
|
||||
"{ObjDir}ftinit.c.o" \xC4 :src:base:ftinit.c
|
||||
"{ObjDir}ftmm.c.o" \xC4 :src:base:ftmm.c
|
||||
"{ObjDir}ftotval.c.o" \xC4 :src:base:ftotval.c
|
||||
"{ObjDir}ftpfr.c.o" \xC4 :src:base:ftpfr.c
|
||||
"{ObjDir}ftstroke.c.o" \xC4 :src:base:ftstroke.c
|
||||
"{ObjDir}ftsynth.c.o" \xC4 :src:base:ftsynth.c
|
||||
"{ObjDir}ftsystem.c.o" \xC4 :src:base:ftsystem.c
|
||||
"{ObjDir}fttype1.c.o" \xC4 :src:base:fttype1.c
|
||||
"{ObjDir}ftwinfnt.c.o" \xC4 :src:base:ftwinfnt.c
|
||||
"{ObjDir}ftcache.c.o" \xC4 :src:cache:ftcache.c
|
||||
"{ObjDir}bdf.c.o" \xC4 :src:bdf:bdf.c
|
||||
"{ObjDir}cff.c.o" \xC4 :src:cff:cff.c
|
||||
"{ObjDir}type1cid.c.o" \xC4 :src:cid:type1cid.c
|
||||
# "{ObjDir}gxvalid.c.o" \xC4 :src:gxvalid:gxvalid.c
|
||||
"{ObjDir}ftgzip.c.o" \xC4 :src:gzip:ftgzip.c
|
||||
"{ObjDir}ftbzip2.c.o" \xC4 :src:bzip2:ftbzip2.c
|
||||
"{ObjDir}ftlzw.c.o" \xC4 :src:lzw:ftlzw.c
|
||||
"{ObjDir}otvalid.c.o" \xC4 :src:otvalid:otvalid.c
|
||||
"{ObjDir}pcf.c.o" \xC4 :src:pcf:pcf.c
|
||||
"{ObjDir}pfr.c.o" \xC4 :src:pfr:pfr.c
|
||||
"{ObjDir}psaux.c.o" \xC4 :src:psaux:psaux.c
|
||||
"{ObjDir}pshinter.c.o" \xC4 :src:pshinter:pshinter.c
|
||||
"{ObjDir}psmodule.c.o" \xC4 :src:psnames:psmodule.c
|
||||
"{ObjDir}raster.c.o" \xC4 :src:raster:raster.c
|
||||
"{ObjDir}sfnt.c.o" \xC4 :src:sfnt:sfnt.c
|
||||
"{ObjDir}smooth.c.o" \xC4 :src:smooth:smooth.c
|
||||
"{ObjDir}truetype.c.o" \xC4 :src:truetype:truetype.c
|
||||
"{ObjDir}type1.c.o" \xC4 :src:type1:type1.c
|
||||
"{ObjDir}type42.c.o" \xC4 :src:type42:type42.c
|
||||
"{ObjDir}winfnt.c.o" \xC4 :src:winfonts:winfnt.c
|
||||
|
||||
|
||||
### Optional Dependencies ###
|
||||
### Build this target to generate "include file" dependencies. ###
|
||||
|
||||
Dependencies \xC4 $OutOfDate
|
||||
MakeDepend \xB6
|
||||
-append {MAKEFILE} \xB6
|
||||
-ignore "{CIncludes}" \xB6
|
||||
-objdir "{ObjDir}" \xB6
|
||||
-objext .o \xB6
|
||||
{Includes} \xB6
|
||||
{SrcFiles}
|
||||
|
||||
|
211
thirdparty/freetype/builds/mac/FreeType.m68k_far.make.txt
vendored
Normal file
211
thirdparty/freetype/builds/mac/FreeType.m68k_far.make.txt
vendored
Normal file
|
@ -0,0 +1,211 @@
|
|||
# File: FreeType.m68k_far.make
|
||||
# Target: FreeType.m68k_far
|
||||
# Created: Tuesday, October 25, 2005 03:34:05 PM
|
||||
|
||||
|
||||
MAKEFILE = FreeType.m68k_far.make
|
||||
\xA5MondoBuild\xA5 = {MAKEFILE} # Make blank to avoid rebuilds when makefile is modified
|
||||
|
||||
ObjDir = :objs:
|
||||
Includes = \xB6
|
||||
-includes unix \xB6
|
||||
-i :include: \xB6
|
||||
-i :src: \xB6
|
||||
-i :include:freetype:config:
|
||||
|
||||
Sym-68K = -sym off
|
||||
|
||||
COptions = \xB6
|
||||
-d FT_MACINTOSH=1 \xB6
|
||||
-d HAVE_FSSPEC=1 \xB6
|
||||
-d HAVE_FSREF=0 \xB6
|
||||
-d HAVE_QUICKDRAW_TOOLBOX=1 \xB6
|
||||
-d HAVE_QUICKDRAW_CARBON=0 \xB6
|
||||
-d HAVE_ATS=0 \xB6
|
||||
-d FT2_BUILD_LIBRARY \xB6
|
||||
-d FT_CONFIG_CONFIG_H="<ftconfig.h>" \xB6
|
||||
-d FT_CONFIG_MODULES_H="<ftmodule.h>" \xB6
|
||||
{Includes} {Sym-68K} -model far
|
||||
|
||||
|
||||
### Source Files ###
|
||||
|
||||
SrcFiles = \xB6
|
||||
:src:autofit:autofit.c \xB6
|
||||
:builds:mac:ftbase.c \xB6
|
||||
:src:base:ftbbox.c \xB6
|
||||
:src:base:ftbdf.c \xB6
|
||||
:src:base:ftbitmap.c \xB6
|
||||
:src:base:ftdebug.c \xB6
|
||||
:src:base:ftfntfmt.c \xB6
|
||||
:src:base:ftfstype.c \xB6
|
||||
:src:base:ftglyph.c \xB6
|
||||
:src:base:ftgxval.c \xB6
|
||||
:src:base:ftinit.c \xB6
|
||||
:src:base:ftmm.c \xB6
|
||||
:src:base:ftotval.c \xB6
|
||||
:src:base:ftpfr.c \xB6
|
||||
:src:base:ftstroke.c \xB6
|
||||
:src:base:ftsynth.c \xB6
|
||||
:src:base:ftsystem.c \xB6
|
||||
:src:base:fttype1.c \xB6
|
||||
:src:base:ftwinfnt.c \xB6
|
||||
:src:cache:ftcache.c \xB6
|
||||
:src:bdf:bdf.c \xB6
|
||||
:src:cff:cff.c \xB6
|
||||
:src:cid:type1cid.c \xB6
|
||||
:src:gxvalid:gxvalid.c \xB6
|
||||
:src:gzip:ftgzip.c \xB6
|
||||
:src:bzip2:ftbzip2.c \xB6
|
||||
:src:lzw:ftlzw.c \xB6
|
||||
:src:otvalid:otvalid.c \xB6
|
||||
:src:pcf:pcf.c \xB6
|
||||
:src:pfr:pfr.c \xB6
|
||||
:src:psaux:psaux.c \xB6
|
||||
:src:pshinter:pshinter.c \xB6
|
||||
:src:psnames:psmodule.c \xB6
|
||||
:src:raster:raster.c \xB6
|
||||
:src:sfnt:sfnt.c \xB6
|
||||
:src:smooth:smooth.c \xB6
|
||||
:src:truetype:truetype.c \xB6
|
||||
:src:type1:type1.c \xB6
|
||||
:src:type42:type42.c \xB6
|
||||
:src:winfonts:winfnt.c
|
||||
|
||||
|
||||
### Object Files ###
|
||||
|
||||
ObjFiles-68K = \xB6
|
||||
"{ObjDir}autofit.c.o" \xB6
|
||||
"{ObjDir}ftbase.c.o" \xB6
|
||||
"{ObjDir}ftbbox.c.o" \xB6
|
||||
"{ObjDir}ftbdf.c.o" \xB6
|
||||
"{ObjDir}ftbitmap.c.o" \xB6
|
||||
"{ObjDir}ftdebug.c.o" \xB6
|
||||
"{ObjDir}ftfntfmt.c.o" \xB6
|
||||
"{ObjDir}ftfstype.c.o" \xB6
|
||||
"{ObjDir}ftglyph.c.o" \xB6
|
||||
"{ObjDir}ftgxval.c.o" \xB6
|
||||
"{ObjDir}ftinit.c.o" \xB6
|
||||
"{ObjDir}ftmm.c.o" \xB6
|
||||
"{ObjDir}ftotval.c.o" \xB6
|
||||
"{ObjDir}ftpfr.c.o" \xB6
|
||||
"{ObjDir}ftstroke.c.o" \xB6
|
||||
"{ObjDir}ftsynth.c.o" \xB6
|
||||
"{ObjDir}ftsystem.c.o" \xB6
|
||||
"{ObjDir}fttype1.c.o" \xB6
|
||||
"{ObjDir}ftwinfnt.c.o" \xB6
|
||||
"{ObjDir}ftcache.c.o" \xB6
|
||||
"{ObjDir}bdf.c.o" \xB6
|
||||
"{ObjDir}cff.c.o" \xB6
|
||||
"{ObjDir}type1cid.c.o" \xB6
|
||||
"{ObjDir}gxvalid.c.o" \xB6
|
||||
"{ObjDir}ftgzip.c.o" \xB6
|
||||
"{ObjDir}ftbzip2.c.o" \xB6
|
||||
"{ObjDir}ftlzw.c.o" \xB6
|
||||
"{ObjDir}otvalid.c.o" \xB6
|
||||
"{ObjDir}pcf.c.o" \xB6
|
||||
"{ObjDir}pfr.c.o" \xB6
|
||||
"{ObjDir}psaux.c.o" \xB6
|
||||
"{ObjDir}pshinter.c.o" \xB6
|
||||
"{ObjDir}psmodule.c.o" \xB6
|
||||
"{ObjDir}raster.c.o" \xB6
|
||||
"{ObjDir}sfnt.c.o" \xB6
|
||||
"{ObjDir}smooth.c.o" \xB6
|
||||
"{ObjDir}truetype.c.o" \xB6
|
||||
"{ObjDir}type1.c.o" \xB6
|
||||
"{ObjDir}type42.c.o" \xB6
|
||||
"{ObjDir}winfnt.c.o"
|
||||
|
||||
|
||||
### Libraries ###
|
||||
|
||||
LibFiles-68K =
|
||||
|
||||
|
||||
### Default Rules ###
|
||||
|
||||
.c.o \xC4 .c {\xA5MondoBuild\xA5}
|
||||
{C} {depDir}{default}.c -o {targDir}{default}.c.o {COptions} \xB6
|
||||
-ansi strict
|
||||
|
||||
### Build Rules ###
|
||||
|
||||
:builds:mac:ftbase.c \xC4\xC4 :src:base:ftbase.c
|
||||
Duplicate :src:base:ftbase.c :builds:mac:ftbase.c
|
||||
|
||||
"{ObjDir}ftbase.c.o" \xC4\xC4 :builds:mac:ftbase.c
|
||||
{C} :builds:mac:ftbase.c -o "{ObjDir}ftbase.c.o" \xB6
|
||||
-i :builds:mac: \xB6
|
||||
-i :src:base: \xB6
|
||||
{COptions}
|
||||
|
||||
FreeType.m68k_far \xC4\xC4 FreeType.m68k_far.o
|
||||
|
||||
FreeType.m68k_far.o \xC4\xC4 {ObjFiles-68K} {LibFiles-68K} {\xA5MondoBuild\xA5}
|
||||
Lib \xB6
|
||||
-o {Targ} \xB6
|
||||
{ObjFiles-68K} \xB6
|
||||
{LibFiles-68K} \xB6
|
||||
{Sym-68K} \xB6
|
||||
-mf -d
|
||||
|
||||
|
||||
|
||||
### Required Dependencies ###
|
||||
|
||||
"{ObjDir}autofit.c.o" \xC4 :src:autofit:autofit.c
|
||||
# "{ObjDir}ftbase.c.o" \xC4 :src:base:ftbase.c
|
||||
"{ObjDir}ftbbox.c.o" \xC4 :src:base:ftbbox.c
|
||||
"{ObjDir}ftbdf.c.o" \xC4 :src:base:ftbdf.c
|
||||
"{ObjDir}ftbitmap.c.o" \xC4 :src:base:ftbitmap.c
|
||||
"{ObjDir}ftdebug.c.o" \xC4 :src:base:ftdebug.c
|
||||
"{ObjDir}ftfntfmt.c.o" \xC4 :src:base:ftfntfmt.c
|
||||
"{ObjDir}ftfstype.c.o" \xC4 :src:base:ftfstype.c
|
||||
"{ObjDir}ftglyph.c.o" \xC4 :src:base:ftglyph.c
|
||||
"{ObjDir}ftgxval.c.o" \xC4 :src:base:ftgxval.c
|
||||
"{ObjDir}ftinit.c.o" \xC4 :src:base:ftinit.c
|
||||
"{ObjDir}ftmm.c.o" \xC4 :src:base:ftmm.c
|
||||
"{ObjDir}ftotval.c.o" \xC4 :src:base:ftotval.c
|
||||
"{ObjDir}ftpfr.c.o" \xC4 :src:base:ftpfr.c
|
||||
"{ObjDir}ftstroke.c.o" \xC4 :src:base:ftstroke.c
|
||||
"{ObjDir}ftsynth.c.o" \xC4 :src:base:ftsynth.c
|
||||
"{ObjDir}ftsystem.c.o" \xC4 :src:base:ftsystem.c
|
||||
"{ObjDir}fttype1.c.o" \xC4 :src:base:fttype1.c
|
||||
"{ObjDir}ftwinfnt.c.o" \xC4 :src:base:ftwinfnt.c
|
||||
"{ObjDir}ftcache.c.o" \xC4 :src:cache:ftcache.c
|
||||
"{ObjDir}bdf.c.o" \xC4 :src:bdf:bdf.c
|
||||
"{ObjDir}cff.c.o" \xC4 :src:cff:cff.c
|
||||
"{ObjDir}type1cid.c.o" \xC4 :src:cid:type1cid.c
|
||||
"{ObjDir}gxvalid.c.o" \xC4 :src:gxvalid:gxvalid.c
|
||||
"{ObjDir}ftgzip.c.o" \xC4 :src:gzip:ftgzip.c
|
||||
"{ObjDir}ftbzip2.c.o" \xC4 :src:bzip2:ftbzip2.c
|
||||
"{ObjDir}ftlzw.c.o" \xC4 :src:lzw:ftlzw.c
|
||||
"{ObjDir}otvalid.c.o" \xC4 :src:otvalid:otvalid.c
|
||||
"{ObjDir}pcf.c.o" \xC4 :src:pcf:pcf.c
|
||||
"{ObjDir}pfr.c.o" \xC4 :src:pfr:pfr.c
|
||||
"{ObjDir}psaux.c.o" \xC4 :src:psaux:psaux.c
|
||||
"{ObjDir}pshinter.c.o" \xC4 :src:pshinter:pshinter.c
|
||||
"{ObjDir}psmodule.c.o" \xC4 :src:psnames:psmodule.c
|
||||
"{ObjDir}raster.c.o" \xC4 :src:raster:raster.c
|
||||
"{ObjDir}sfnt.c.o" \xC4 :src:sfnt:sfnt.c
|
||||
"{ObjDir}smooth.c.o" \xC4 :src:smooth:smooth.c
|
||||
"{ObjDir}truetype.c.o" \xC4 :src:truetype:truetype.c
|
||||
"{ObjDir}type1.c.o" \xC4 :src:type1:type1.c
|
||||
"{ObjDir}type42.c.o" \xC4 :src:type42:type42.c
|
||||
"{ObjDir}winfnt.c.o" \xC4 :src:winfonts:winfnt.c
|
||||
|
||||
|
||||
### Optional Dependencies ###
|
||||
### Build this target to generate "include file" dependencies. ###
|
||||
|
||||
Dependencies \xC4 $OutOfDate
|
||||
MakeDepend \xB6
|
||||
-append {MAKEFILE} \xB6
|
||||
-ignore "{CIncludes}" \xB6
|
||||
-objdir "{ObjDir}" \xB6
|
||||
-objext .o \xB6
|
||||
{Includes} \xB6
|
||||
{SrcFiles}
|
||||
|
||||
|
215
thirdparty/freetype/builds/mac/FreeType.ppc_carbon.make.txt
vendored
Normal file
215
thirdparty/freetype/builds/mac/FreeType.ppc_carbon.make.txt
vendored
Normal file
|
@ -0,0 +1,215 @@
|
|||
# File: FreeType.ppc_carbon.make
|
||||
# Target: FreeType.ppc_carbon
|
||||
# Created: Friday, October 28, 2005 03:40:06 PM
|
||||
|
||||
|
||||
MAKEFILE = FreeType.ppc_carbon.make
|
||||
\xA5MondoBuild\xA5 = {MAKEFILE} # Make blank to avoid rebuilds when makefile is modified
|
||||
|
||||
ObjDir = :objs:
|
||||
Includes = \xB6
|
||||
-ansi strict \xB6
|
||||
-includes unix \xB6
|
||||
-i :include: \xB6
|
||||
-i :src: \xB6
|
||||
-i :include:freetype:config:
|
||||
|
||||
Sym-PPC = -sym off
|
||||
|
||||
PPCCOptions = \xB6
|
||||
-d FT_MACINTOSH=1 \xB6
|
||||
-d HAVE_FSSPEC=1 \xB6
|
||||
-d HAVE_FSREF=1 \xB6
|
||||
-d HAVE_QUICKDRAW_TOOLBOX=1 \xB6
|
||||
-d HAVE_QUICKDRAW_CARBON=1 \xB6
|
||||
-d HAVE_ATS=0 \xB6
|
||||
-d FT2_BUILD_LIBRARY \xB6
|
||||
-d FT_CONFIG_CONFIG_H="<ftconfig.h>" \xB6
|
||||
-d FT_CONFIG_MODULES_H="<ftmodule.h>" \xB6
|
||||
{Includes} {Sym-PPC} -d TARGET_API_MAC_CARBON=1
|
||||
|
||||
|
||||
### Source Files ###
|
||||
|
||||
SrcFiles = \xB6
|
||||
:src:autofit:autofit.c \xB6
|
||||
:builds:mac:ftbase.c \xB6
|
||||
:src:base:ftbbox.c \xB6
|
||||
:src:base:ftbdf.c \xB6
|
||||
:src:base:ftbitmap.c \xB6
|
||||
:src:base:ftdebug.c \xB6
|
||||
:src:base:ftfntfmt.c \xB6
|
||||
:src:base:ftfstype.c \xB6
|
||||
:src:base:ftglyph.c \xB6
|
||||
:src:base:ftgxval.c \xB6
|
||||
:src:base:ftinit.c \xB6
|
||||
:src:base:ftmm.c \xB6
|
||||
:src:base:ftotval.c \xB6
|
||||
:src:base:ftpfr.c \xB6
|
||||
:src:base:ftstroke.c \xB6
|
||||
:src:base:ftsynth.c \xB6
|
||||
:src:base:ftsystem.c \xB6
|
||||
:src:base:fttype1.c \xB6
|
||||
:src:base:ftwinfnt.c \xB6
|
||||
:src:cache:ftcache.c \xB6
|
||||
:src:bdf:bdf.c \xB6
|
||||
:src:cff:cff.c \xB6
|
||||
:src:cid:type1cid.c \xB6
|
||||
:src:gxvalid:gxvalid.c \xB6
|
||||
:src:gzip:ftgzip.c \xB6
|
||||
:src:bzip2:ftbzip2.c \xB6
|
||||
:src:lzw:ftlzw.c \xB6
|
||||
:src:otvalid:otvalid.c \xB6
|
||||
:src:pcf:pcf.c \xB6
|
||||
:src:pfr:pfr.c \xB6
|
||||
:src:psaux:psaux.c \xB6
|
||||
:src:pshinter:pshinter.c \xB6
|
||||
:src:psnames:psmodule.c \xB6
|
||||
:src:raster:raster.c \xB6
|
||||
:src:sfnt:sfnt.c \xB6
|
||||
:src:smooth:smooth.c \xB6
|
||||
:src:truetype:truetype.c \xB6
|
||||
:src:type1:type1.c \xB6
|
||||
:src:type42:type42.c \xB6
|
||||
:src:winfonts:winfnt.c
|
||||
|
||||
|
||||
### Object Files ###
|
||||
|
||||
ObjFiles-PPC = \xB6
|
||||
"{ObjDir}autofit.c.x" \xB6
|
||||
"{ObjDir}ftbase.c.x" \xB6
|
||||
"{ObjDir}ftbbox.c.x" \xB6
|
||||
"{ObjDir}ftbdf.c.x" \xB6
|
||||
"{ObjDir}ftbitmap.c.x" \xB6
|
||||
"{ObjDir}ftdebug.c.x" \xB6
|
||||
"{ObjDir}ftfntfmt.c.x" \xB6
|
||||
"{ObjDir}ftfstype.c.x" \xB6
|
||||
"{ObjDir}ftglyph.c.x" \xB6
|
||||
"{ObjDir}ftgxval.c.x" \xB6
|
||||
"{ObjDir}ftinit.c.x" \xB6
|
||||
"{ObjDir}ftmm.c.x" \xB6
|
||||
"{ObjDir}ftotval.c.x" \xB6
|
||||
"{ObjDir}ftpfr.c.x" \xB6
|
||||
"{ObjDir}ftstroke.c.x" \xB6
|
||||
"{ObjDir}ftsynth.c.x" \xB6
|
||||
"{ObjDir}ftsystem.c.x" \xB6
|
||||
"{ObjDir}fttype1.c.x" \xB6
|
||||
"{ObjDir}ftwinfnt.c.x" \xB6
|
||||
"{ObjDir}ftcache.c.x" \xB6
|
||||
"{ObjDir}bdf.c.x" \xB6
|
||||
"{ObjDir}cff.c.x" \xB6
|
||||
"{ObjDir}type1cid.c.x" \xB6
|
||||
"{ObjDir}gxvalid.c.x" \xB6
|
||||
"{ObjDir}ftgzip.c.x" \xB6
|
||||
"{ObjDir}ftbzip2.c.x" \xB6
|
||||
"{ObjDir}ftlzw.c.x" \xB6
|
||||
"{ObjDir}otvalid.c.x" \xB6
|
||||
"{ObjDir}pcf.c.x" \xB6
|
||||
"{ObjDir}pfr.c.x" \xB6
|
||||
"{ObjDir}psaux.c.x" \xB6
|
||||
"{ObjDir}pshinter.c.x" \xB6
|
||||
"{ObjDir}psmodule.c.x" \xB6
|
||||
"{ObjDir}raster.c.x" \xB6
|
||||
"{ObjDir}sfnt.c.x" \xB6
|
||||
"{ObjDir}smooth.c.x" \xB6
|
||||
"{ObjDir}truetype.c.x" \xB6
|
||||
"{ObjDir}type1.c.x" \xB6
|
||||
"{ObjDir}type42.c.x" \xB6
|
||||
"{ObjDir}winfnt.c.x"
|
||||
|
||||
|
||||
### Libraries ###
|
||||
|
||||
LibFiles-PPC =
|
||||
|
||||
|
||||
### Default Rules ###
|
||||
|
||||
.c.x \xC4 .c {\xA5MondoBuild\xA5}
|
||||
{PPCC} {depDir}{default}.c -o {targDir}{default}.c.x {PPCCOptions}
|
||||
|
||||
|
||||
### Build Rules ###
|
||||
|
||||
:builds:mac:ftbase.c \xC4\xC4 :src:base:ftbase.c
|
||||
Duplicate :src:base:ftbase.c :builds:mac:ftbase.c
|
||||
|
||||
"{ObjDir}ftbase.c.x" \xC4\xC4 :builds:mac:ftbase.c
|
||||
{PPCC} :builds:mac:ftbase.c -o {ObjDir}ftbase.c.x \xB6
|
||||
-i :builds:mac: \xB6
|
||||
-i :src:base: \xB6
|
||||
{PPCCOptions}
|
||||
|
||||
FreeType.ppc_carbon \xC4\xC4 FreeType.ppc_carbon.o
|
||||
|
||||
FreeType.ppc_carbon.o \xC4\xC4 {ObjFiles-PPC} {LibFiles-PPC} {\xA5MondoBuild\xA5}
|
||||
PPCLink \xB6
|
||||
-o {Targ} \xB6
|
||||
{ObjFiles-PPC} \xB6
|
||||
{LibFiles-PPC} \xB6
|
||||
{Sym-PPC} \xB6
|
||||
-mf -d \xB6
|
||||
-t 'XCOF' \xB6
|
||||
-c 'MPS ' \xB6
|
||||
-xm l
|
||||
|
||||
|
||||
|
||||
### Required Dependencies ###
|
||||
|
||||
"{ObjDir}autofit.c.x" \xC4 :src:autofit:autofit.c
|
||||
# "{ObjDir}ftbase.c.x" \xC4 :builds:mac:ftbase.c
|
||||
"{ObjDir}ftbbox.c.x" \xC4 :src:base:ftbbox.c
|
||||
"{ObjDir}ftbdf.c.x" \xC4 :src:base:ftbdf.c
|
||||
"{ObjDir}ftbitmap.c.x" \xC4 :src:base:ftbitmap.c
|
||||
"{ObjDir}ftdebug.c.x" \xC4 :src:base:ftdebug.c
|
||||
"{ObjDir}ftfntfmt.c.x" \xC4 :src:base:ftfntfmt.c
|
||||
"{ObjDir}ftfstype.c.x" \xC4 :src:base:ftfstype.c
|
||||
"{ObjDir}ftglyph.c.x" \xC4 :src:base:ftglyph.c
|
||||
"{ObjDir}ftgxval.c.x" \xC4 :src:base:ftgxval.c
|
||||
"{ObjDir}ftinit.c.x" \xC4 :src:base:ftinit.c
|
||||
"{ObjDir}ftmm.c.x" \xC4 :src:base:ftmm.c
|
||||
"{ObjDir}ftotval.c.x" \xC4 :src:base:ftotval.c
|
||||
"{ObjDir}ftpfr.c.x" \xC4 :src:base:ftpfr.c
|
||||
"{ObjDir}ftstroke.c.x" \xC4 :src:base:ftstroke.c
|
||||
"{ObjDir}ftsynth.c.x" \xC4 :src:base:ftsynth.c
|
||||
"{ObjDir}ftsystem.c.x" \xC4 :src:base:ftsystem.c
|
||||
"{ObjDir}fttype1.c.x" \xC4 :src:base:fttype1.c
|
||||
"{ObjDir}ftwinfnt.c.x" \xC4 :src:base:ftwinfnt.c
|
||||
"{ObjDir}ftcache.c.x" \xC4 :src:cache:ftcache.c
|
||||
"{ObjDir}bdf.c.x" \xC4 :src:bdf:bdf.c
|
||||
"{ObjDir}cff.c.x" \xC4 :src:cff:cff.c
|
||||
"{ObjDir}type1cid.c.x" \xC4 :src:cid:type1cid.c
|
||||
"{ObjDir}gxvalid.c.x" \xC4 :src:gxvalid:gxvalid.c
|
||||
"{ObjDir}ftgzip.c.x" \xC4 :src:gzip:ftgzip.c
|
||||
"{ObjDir}ftbzip2.c.x" \xC4 :src:bzip2:ftbzip2.c
|
||||
"{ObjDir}ftlzw.c.x" \xC4 :src:lzw:ftlzw.c
|
||||
"{ObjDir}otvalid.c.x" \xC4 :src:otvalid:otvalid.c
|
||||
"{ObjDir}pcf.c.x" \xC4 :src:pcf:pcf.c
|
||||
"{ObjDir}pfr.c.x" \xC4 :src:pfr:pfr.c
|
||||
"{ObjDir}psaux.c.x" \xC4 :src:psaux:psaux.c
|
||||
"{ObjDir}pshinter.c.x" \xC4 :src:pshinter:pshinter.c
|
||||
"{ObjDir}psmodule.c.x" \xC4 :src:psnames:psmodule.c
|
||||
"{ObjDir}raster.c.x" \xC4 :src:raster:raster.c
|
||||
"{ObjDir}sfnt.c.x" \xC4 :src:sfnt:sfnt.c
|
||||
"{ObjDir}smooth.c.x" \xC4 :src:smooth:smooth.c
|
||||
"{ObjDir}truetype.c.x" \xC4 :src:truetype:truetype.c
|
||||
"{ObjDir}type1.c.x" \xC4 :src:type1:type1.c
|
||||
"{ObjDir}type42.c.x" \xC4 :src:type42:type42.c
|
||||
"{ObjDir}winfnt.c.x" \xC4 :src:winfonts:winfnt.c
|
||||
|
||||
|
||||
### Optional Dependencies ###
|
||||
### Build this target to generate "include file" dependencies. ###
|
||||
|
||||
Dependencies \xC4 $OutOfDate
|
||||
MakeDepend \xB6
|
||||
-append {MAKEFILE} \xB6
|
||||
-ignore "{CIncludes}" \xB6
|
||||
-objdir "{ObjDir}" \xB6
|
||||
-objext .x \xB6
|
||||
{Includes} \xB6
|
||||
{SrcFiles}
|
||||
|
||||
|
216
thirdparty/freetype/builds/mac/FreeType.ppc_classic.make.txt
vendored
Normal file
216
thirdparty/freetype/builds/mac/FreeType.ppc_classic.make.txt
vendored
Normal file
|
@ -0,0 +1,216 @@
|
|||
# File: FreeType.ppc_classic.make
|
||||
# Target: FreeType.ppc_classic
|
||||
# Created: Thursday, October 27, 2005 07:42:43 PM
|
||||
|
||||
|
||||
MAKEFILE = FreeType.ppc_classic.make
|
||||
\xA5MondoBuild\xA5 = {MAKEFILE} # Make blank to avoid rebuilds when makefile is modified
|
||||
|
||||
ObjDir = :objs:
|
||||
Includes = \xB6
|
||||
-ansi strict \xB6
|
||||
-includes unix \xB6
|
||||
-i :include: \xB6
|
||||
-i :src: \xB6
|
||||
-i :include:freetype:config:
|
||||
|
||||
Sym-PPC = -sym off
|
||||
|
||||
PPCCOptions = \xB6
|
||||
-d FT_MACINTOSH=1 \xB6
|
||||
-d HAVE_FSSPEC=1 \xB6
|
||||
-d HAVE_FSREF=0 \xB6
|
||||
-d HAVE_QUICKDRAW_TOOLBOX=1 \xB6
|
||||
-d HAVE_QUICKDRAW_CARBON=0 \xB6
|
||||
-d HAVE_ATS=0 \xB6
|
||||
-d FT2_BUILD_LIBRARY \xB6
|
||||
-d FT_CONFIG_CONFIG_H="<ftconfig.h>" \xB6
|
||||
-d FT_CONFIG_MODULES_H="<ftmodule.h>" \xB6
|
||||
{Includes} {Sym-PPC}
|
||||
|
||||
|
||||
### Source Files ###
|
||||
|
||||
SrcFiles = \xB6
|
||||
:src:autofit:autofit.c \xB6
|
||||
:builds:mac:ftbase.c \xB6
|
||||
:src:base:ftbbox.c \xB6
|
||||
:src:base:ftbdf.c \xB6
|
||||
:src:base:ftbitmap.c \xB6
|
||||
:src:base:ftdebug.c \xB6
|
||||
:src:base:ftfntfmt.c \xB6
|
||||
:src:base:ftfstype.c \xB6
|
||||
:src:base:ftglyph.c \xB6
|
||||
:src:base:ftgxval.c \xB6
|
||||
:src:base:ftinit.c \xB6
|
||||
:src:base:ftmm.c \xB6
|
||||
:src:base:ftotval.c \xB6
|
||||
:src:base:ftpfr.c \xB6
|
||||
:src:base:ftstroke.c \xB6
|
||||
:src:base:ftsynth.c \xB6
|
||||
:src:base:ftsystem.c \xB6
|
||||
:src:base:fttype1.c \xB6
|
||||
:src:base:ftwinfnt.c \xB6
|
||||
:src:cache:ftcache.c \xB6
|
||||
:src:bdf:bdf.c \xB6
|
||||
:src:cff:cff.c \xB6
|
||||
:src:cid:type1cid.c \xB6
|
||||
:src:gxvalid:gxvalid.c \xB6
|
||||
:src:gzip:ftgzip.c \xB6
|
||||
:src:bzip2:ftbzip2.c \xB6
|
||||
:src:lzw:ftlzw.c \xB6
|
||||
:src:otvalid:otvalid.c \xB6
|
||||
:src:pcf:pcf.c \xB6
|
||||
:src:pfr:pfr.c \xB6
|
||||
:src:psaux:psaux.c \xB6
|
||||
:src:pshinter:pshinter.c \xB6
|
||||
:src:psnames:psmodule.c \xB6
|
||||
:src:raster:raster.c \xB6
|
||||
:src:sfnt:sfnt.c \xB6
|
||||
:src:smooth:smooth.c \xB6
|
||||
:src:truetype:truetype.c \xB6
|
||||
:src:type1:type1.c \xB6
|
||||
:src:type42:type42.c \xB6
|
||||
:src:winfonts:winfnt.c
|
||||
|
||||
|
||||
### Object Files ###
|
||||
|
||||
ObjFiles-PPC = \xB6
|
||||
"{ObjDir}autofit.c.x" \xB6
|
||||
"{ObjDir}ftbase.c.x" \xB6
|
||||
"{ObjDir}ftbbox.c.x" \xB6
|
||||
"{ObjDir}ftbdf.c.x" \xB6
|
||||
"{ObjDir}ftbitmap.c.x" \xB6
|
||||
"{ObjDir}ftdebug.c.x" \xB6
|
||||
"{ObjDir}ftfntfmt.c.x" \xB6
|
||||
"{ObjDir}ftfstype.c.x" \xB6
|
||||
"{ObjDir}ftglyph.c.x" \xB6
|
||||
"{ObjDir}ftgxval.c.x" \xB6
|
||||
"{ObjDir}ftinit.c.x" \xB6
|
||||
"{ObjDir}ftmm.c.x" \xB6
|
||||
"{ObjDir}ftotval.c.x" \xB6
|
||||
"{ObjDir}ftpfr.c.x" \xB6
|
||||
"{ObjDir}ftstroke.c.x" \xB6
|
||||
"{ObjDir}ftsynth.c.x" \xB6
|
||||
"{ObjDir}ftsystem.c.x" \xB6
|
||||
"{ObjDir}fttype1.c.x" \xB6
|
||||
"{ObjDir}ftwinfnt.c.x" \xB6
|
||||
"{ObjDir}ftcache.c.x" \xB6
|
||||
"{ObjDir}bdf.c.x" \xB6
|
||||
"{ObjDir}cff.c.x" \xB6
|
||||
"{ObjDir}type1cid.c.x" \xB6
|
||||
"{ObjDir}gxvalid.c.x" \xB6
|
||||
"{ObjDir}ftgzip.c.x" \xB6
|
||||
"{ObjDir}ftbzip2.c.x" \xB6
|
||||
"{ObjDir}ftlzw.c.x" \xB6
|
||||
"{ObjDir}otvalid.c.x" \xB6
|
||||
"{ObjDir}pcf.c.x" \xB6
|
||||
"{ObjDir}pfr.c.x" \xB6
|
||||
"{ObjDir}psaux.c.x" \xB6
|
||||
"{ObjDir}pshinter.c.x" \xB6
|
||||
"{ObjDir}psmodule.c.x" \xB6
|
||||
"{ObjDir}raster.c.x" \xB6
|
||||
"{ObjDir}sfnt.c.x" \xB6
|
||||
"{ObjDir}smooth.c.x" \xB6
|
||||
"{ObjDir}truetype.c.x" \xB6
|
||||
"{ObjDir}type1.c.x" \xB6
|
||||
"{ObjDir}type42.c.x" \xB6
|
||||
"{ObjDir}winfnt.c.x"
|
||||
|
||||
|
||||
### Libraries ###
|
||||
|
||||
LibFiles-PPC =
|
||||
|
||||
|
||||
### Default Rules ###
|
||||
|
||||
.c.x \xC4 .c {\xA5MondoBuild\xA5}
|
||||
{PPCC} {depDir}{default}.c -o {targDir}{default}.c.x {PPCCOptions}
|
||||
|
||||
|
||||
### Build Rules ###
|
||||
|
||||
:builds:mac:ftbase.c \xC4\xC4 :src:base:ftbase.c
|
||||
Duplicate :src:base:ftbase.c :builds:mac:ftbase.c
|
||||
|
||||
"{ObjDir}ftbase.c.x" \xC4\xC4 :builds:mac:ftbase.c
|
||||
{PPCC} :builds:mac:ftbase.c -o "{ObjDir}ftbase.c.x" \xB6
|
||||
-i :builds:mac: \xB6
|
||||
-i :src:base: \xB6
|
||||
{PPCCOptions}
|
||||
|
||||
FreeType.ppc_classic \xC4\xC4 FreeType.ppc_classic.o
|
||||
|
||||
FreeType.ppc_classic.o \xC4\xC4 {ObjFiles-PPC} {LibFiles-PPC} {\xA5MondoBuild\xA5}
|
||||
PPCLink \xB6
|
||||
-o {Targ} \xB6
|
||||
{ObjFiles-PPC} \xB6
|
||||
{LibFiles-PPC} \xB6
|
||||
{Sym-PPC} \xB6
|
||||
-mf -d \xB6
|
||||
-t 'XCOF' \xB6
|
||||
-c 'MPS ' \xB6
|
||||
-xm l
|
||||
|
||||
|
||||
|
||||
### Required Dependencies ###
|
||||
|
||||
"{ObjDir}autofit.c.x" \xC4 :src:autofit:autofit.c
|
||||
# "{ObjDir}ftbase.c.x" \xC4 :builds:mac:ftbase.c
|
||||
"{ObjDir}ftbbox.c.x" \xC4 :src:base:ftbbox.c
|
||||
"{ObjDir}ftbdf.c.x" \xC4 :src:base:ftbdf.c
|
||||
"{ObjDir}ftbitmap.c.x" \xC4 :src:base:ftbitmap.c
|
||||
"{ObjDir}ftdebug.c.x" \xC4 :src:base:ftdebug.c
|
||||
"{ObjDir}ftfntfmt.c.x" \xC4 :src:base:ftfntfmt.c
|
||||
"{ObjDir}ftfstype.c.x" \xC4 :src:base:ftfstype.c
|
||||
"{ObjDir}ftglyph.c.x" \xC4 :src:base:ftglyph.c
|
||||
"{ObjDir}ftgxval.c.x" \xC4 :src:base:ftgxval.c
|
||||
"{ObjDir}ftinit.c.x" \xC4 :src:base:ftinit.c
|
||||
"{ObjDir}ftmm.c.x" \xC4 :src:base:ftmm.c
|
||||
"{ObjDir}ftotval.c.x" \xC4 :src:base:ftotval.c
|
||||
"{ObjDir}ftpfr.c.x" \xC4 :src:base:ftpfr.c
|
||||
"{ObjDir}ftstroke.c.x" \xC4 :src:base:ftstroke.c
|
||||
"{ObjDir}ftsynth.c.x" \xC4 :src:base:ftsynth.c
|
||||
"{ObjDir}ftsystem.c.x" \xC4 :src:base:ftsystem.c
|
||||
"{ObjDir}fttype1.c.x" \xC4 :src:base:fttype1.c
|
||||
"{ObjDir}ftwinfnt.c.x" \xC4 :src:base:ftwinfnt.c
|
||||
"{ObjDir}ftcache.c.x" \xC4 :src:cache:ftcache.c
|
||||
"{ObjDir}bdf.c.x" \xC4 :src:bdf:bdf.c
|
||||
"{ObjDir}cff.c.x" \xC4 :src:cff:cff.c
|
||||
"{ObjDir}type1cid.c.x" \xC4 :src:cid:type1cid.c
|
||||
"{ObjDir}gxvalid.c.x" \xC4 :src:gxvalid:gxvalid.c
|
||||
"{ObjDir}ftgzip.c.x" \xC4 :src:gzip:ftgzip.c
|
||||
"{ObjDir}ftbzip2.c.x" \xC4 :src:bzip2:ftbzip2.c
|
||||
"{ObjDir}ftlzw.c.x" \xC4 :src:lzw:ftlzw.c
|
||||
"{ObjDir}otvalid.c.x" \xC4 :src:otvalid:otvalid.c
|
||||
"{ObjDir}pcf.c.x" \xC4 :src:pcf:pcf.c
|
||||
"{ObjDir}pfr.c.x" \xC4 :src:pfr:pfr.c
|
||||
"{ObjDir}psaux.c.x" \xC4 :src:psaux:psaux.c
|
||||
"{ObjDir}pshinter.c.x" \xC4 :src:pshinter:pshinter.c
|
||||
"{ObjDir}psmodule.c.x" \xC4 :src:psnames:psmodule.c
|
||||
"{ObjDir}raster.c.x" \xC4 :src:raster:raster.c
|
||||
"{ObjDir}sfnt.c.x" \xC4 :src:sfnt:sfnt.c
|
||||
"{ObjDir}smooth.c.x" \xC4 :src:smooth:smooth.c
|
||||
"{ObjDir}truetype.c.x" \xC4 :src:truetype:truetype.c
|
||||
"{ObjDir}type1.c.x" \xC4 :src:type1:type1.c
|
||||
"{ObjDir}type42.c.x" \xC4 :src:type42:type42.c
|
||||
"{ObjDir}winfnt.c.x" \xC4 :src:winfonts:winfnt.c
|
||||
|
||||
|
||||
|
||||
### Optional Dependencies ###
|
||||
### Build this target to generate "include file" dependencies. ###
|
||||
|
||||
Dependencies \xC4 $OutOfDate
|
||||
MakeDepend \xB6
|
||||
-append {MAKEFILE} \xB6
|
||||
-ignore "{CIncludes}" \xB6
|
||||
-objdir "{ObjDir}" \xB6
|
||||
-objext .x \xB6
|
||||
{Includes} \xB6
|
||||
{SrcFiles}
|
||||
|
||||
|
401
thirdparty/freetype/builds/mac/README
vendored
Normal file
401
thirdparty/freetype/builds/mac/README
vendored
Normal file
|
@ -0,0 +1,401 @@
|
|||
This folder contains
|
||||
|
||||
* Makefile skeletons for Apple MPW (Macintosh's Programmer's Workshop)
|
||||
|
||||
* Python script to generate MPW makefile from skeleton
|
||||
|
||||
* Metrowerks CodeWarrior 9.0 project file in XML format
|
||||
|
||||
------------------------------------------------------------
|
||||
|
||||
1. What is this
|
||||
---------------
|
||||
|
||||
Files in this directory are designed to build FreeType
|
||||
running on classic MacOS. To build FreeType running on
|
||||
Mac OS X, build as the system is UNIX.
|
||||
|
||||
However, Mac OS X is most useful to manipulate files in
|
||||
vanilla FreeType to fit classic MacOS.
|
||||
|
||||
The information about MacOS specific API is written in
|
||||
appendix of this document.
|
||||
|
||||
2. Requirement
|
||||
--------------
|
||||
|
||||
You can use MPW: a free-charged developer environment
|
||||
by Apple, or CodeWarrior: a commercial developer
|
||||
environment by Metrowerks. GCC for MPW and Symantec
|
||||
"Think C" are not tested at present.
|
||||
|
||||
|
||||
2-1. Apple MPW
|
||||
--------------
|
||||
|
||||
Following C compilers are tested:
|
||||
|
||||
m68k target: Apple SC 8.9.0d3e1
|
||||
ppc target: Apple MrC 5.0.0d3c1
|
||||
|
||||
The final MPW-GM (official release on 1999/Dec) is too
|
||||
old and cannot compile FreeType, because bundled C
|
||||
compilers cannot search header files in sub directories.
|
||||
Updating by the final MPW-PR (pre-release on 2001/Feb)
|
||||
is required.
|
||||
|
||||
Required files are downloadable from:
|
||||
|
||||
http://developer.apple.com/tools/mpw-tools/index.html
|
||||
|
||||
Also you can find documents how to update by MPW-PR.
|
||||
|
||||
Python is required to restore MPW makefiles from the
|
||||
skeletons. Python bundled to Mac OS X is enough. For
|
||||
classic MacOS, MacPython is available:
|
||||
|
||||
http://homepages.cwi.nl/~jack/macpython/
|
||||
|
||||
MPW requires all files are typed by resource fork.
|
||||
ResEdit bundled to MPW is enough. In Mac OS X,
|
||||
/Developer/Tools/SetFile of DevTool is useful to
|
||||
manipulate from commandline.
|
||||
|
||||
2-2. Metrowerks CodeWarrior
|
||||
---------------------------
|
||||
|
||||
XML project file is generated and tested by
|
||||
CodeWarrior 9.0. Older versions are not tested
|
||||
at all. At present, static library for ppc target
|
||||
is available in the project file.
|
||||
|
||||
|
||||
3. How to build
|
||||
---------------
|
||||
|
||||
3-1. Apple MPW
|
||||
--------------
|
||||
Detailed building procedure by Apple MPW is
|
||||
described in following.
|
||||
|
||||
3-1-1. Generate MPW makefiles from the skeletons
|
||||
------------------------------------------------
|
||||
|
||||
Here are 4 skeletons for following targets are
|
||||
included.
|
||||
|
||||
- FreeType.m68k_far.make.txt
|
||||
Ancient 32bit binary executable format for
|
||||
m68k MacOS: System 6, with 32bit addressing
|
||||
mode (far-pointer-model) So-called "Toolbox"
|
||||
API is used.
|
||||
|
||||
- FreeType.m68k_cfm.make.txt
|
||||
CFM binary executable format for m68k MacOS:
|
||||
System 7. So-called "Toolbox" API is used.
|
||||
|
||||
- FreeType.ppc_classic.make.txt
|
||||
CFM binary executable format for ppc MacOS:
|
||||
System 7, MacOS 8, MacOS 9. So-called "Toolbox"
|
||||
API is used.
|
||||
|
||||
- FreeType.ppc_carbon.make.txt
|
||||
CFM binary executable format for ppc MacOS:
|
||||
MacOS 9. Carbon API is used.
|
||||
|
||||
At present, static library is only supported,
|
||||
although targets except of m68k_far are capable
|
||||
to use shared library.
|
||||
|
||||
MPW makefile syntax uses 8bit characters. To keep
|
||||
from violating them during version control, here
|
||||
we store skeletons in pure ASCII format. You must
|
||||
generate MPW makefile by Python script ascii2mpw.py.
|
||||
|
||||
In Mac OS X terminal, you can convert as:
|
||||
|
||||
python builds/mac/ascii2mpw.py \
|
||||
< builds/mac/FreeType.m68k_far.make.txt \
|
||||
> FreeType.m68k_far.make
|
||||
|
||||
The skeletons are designed to use in the top
|
||||
directory where there are builds, include, src etc.
|
||||
You must name the generated MPW makefile by removing
|
||||
".txt" from source skeleton name.
|
||||
|
||||
3-1-2. Add resource forks to related files
|
||||
------------------------------------------
|
||||
|
||||
MPW's Make and C compilers cannot recognize files
|
||||
without resource fork. You have to add resource
|
||||
fork to the files that MPW uses. In Mac OS X
|
||||
terminal of the system, you can do as:
|
||||
|
||||
find . -name '*.[ch]' -exec \
|
||||
/Developer/Tools/SetFile -a l -c "MPS " -t TEXT \{\} \;
|
||||
|
||||
find . -name '*.make' -exec \
|
||||
/Developer/Tools/SetFile -a l -c "MPS " -t TEXT \{\} \;
|
||||
|
||||
|
||||
3-1-3. Open MPW shell and build
|
||||
-------------------------------
|
||||
|
||||
Open MPW shell and go to the top directory that
|
||||
FreeType sources are extracted (MPW makefile must
|
||||
be located in there), from "Set Directory" in
|
||||
"Directory" menu.
|
||||
|
||||
Choose "Build" from "Build" menu, and type the
|
||||
name of project by removing ".make" from MPW
|
||||
makefile, as: FreeType.m68k_far
|
||||
|
||||
If building is successfully finished, you can find
|
||||
built library in objs/ directory.
|
||||
|
||||
|
||||
3-2. Metrowerks CodeWarrior
|
||||
---------------------------
|
||||
|
||||
Detailed building procedure by Metrowerks
|
||||
CodeWarrior (CW) 9.0 is described in following.
|
||||
|
||||
3-2-1. Import XML project file
|
||||
------------------------------
|
||||
|
||||
CW XML project file is not ready for double-
|
||||
click. Start CodeWarrior IDE, and choose
|
||||
"Import project" in "File" menu. Choose XML
|
||||
project file: builds/mac/ftlib.prj.xml.
|
||||
In next, you will be asked where to save CW
|
||||
native project file: you must choose
|
||||
"builds/mac/ftlib.prj". The project file is
|
||||
designed with relative path from there. After
|
||||
CW native project file is generated, it is
|
||||
automatically loaded, small project window
|
||||
titled "ftlib.prj" is displayed.
|
||||
|
||||
3-2-2. Building
|
||||
---------------
|
||||
Choose "Make" from "Project" menu. If building
|
||||
is successfully finished, you can find built
|
||||
library at objs/FreeTypeLib.
|
||||
|
||||
4. TODO
|
||||
-------
|
||||
|
||||
4-1. All modules should be included
|
||||
-----------------------------------
|
||||
|
||||
At present, MPW makefiles and CW project file are
|
||||
just updated versions of these by Leonard. Some
|
||||
modules are added after the last maintenance, they
|
||||
are not included.
|
||||
|
||||
4-2. Working test with ftdemos
|
||||
------------------------------
|
||||
|
||||
At present, MPW makefiles and CW project file can
|
||||
build FreeType for classic MacOS. But their working
|
||||
behaviours are not tested at all. Building ftdemos
|
||||
for classic MacOS and working test is required.
|
||||
|
||||
4-3. Porting Jam onto MPW
|
||||
-------------------------
|
||||
|
||||
FreeType uses Jam (and FT-Jam) for unified cross-
|
||||
platform building tool. At present, Jam is not ported
|
||||
to MPW. To update classic MacOS support easily,
|
||||
building by Jam is expected on MPW.
|
||||
|
||||
|
||||
APPENDIX I
|
||||
----------
|
||||
|
||||
A-1. Framework dependencies
|
||||
---------------------------
|
||||
|
||||
src/base/ftmac.c adds two Mac-specific features to
|
||||
FreeType. These features are based on MacOS libraries.
|
||||
|
||||
* accessing resource-fork font
|
||||
The fonts for classic MacOS store their graphical data
|
||||
in resource forks which cannot be accessed via ANSI C
|
||||
functions. FreeType2 provides functions to handle such
|
||||
resource fork fonts, they are based on File Manager
|
||||
framework of MacOS. In addition, HFS and HFS+ file
|
||||
system driver of Linux is supported. Following
|
||||
functions are for this purpose.
|
||||
|
||||
FT_New_Face_From_Resource()
|
||||
FT_New_Face_From_FSSpec()
|
||||
FT_New_Face_From_FSRef()
|
||||
|
||||
* resolving font name to font file
|
||||
The font menu of MacOS application prefers font name
|
||||
written in FOND resource than sfnt resource. FreeType2
|
||||
provides functions to find font file by name in MacOS
|
||||
application, they are based on QuickDraw Font Manager
|
||||
and Apple Type Service framework of MacOS.
|
||||
|
||||
FT_GetFile_From_Mac_Name()
|
||||
FT_GetFile_From_Mac_ATS_Name()
|
||||
|
||||
Working functions for each MacOS are summarized as
|
||||
following.
|
||||
|
||||
upto MacOS 6:
|
||||
not tested (you have to obtain MPW 2.x)
|
||||
|
||||
MacOS 7.x, 8.x, 9.x (without CarbonLib):
|
||||
FT_GetFile_From_Mac_Name()
|
||||
FT_New_Face_From_Resource()
|
||||
FT_New_Face_From_FSSpec()
|
||||
|
||||
MacOS 9.x (with CarbonLib):
|
||||
FT_GetFile_From_Mac_Name()
|
||||
FT_New_Face_From_Resource()
|
||||
FT_New_Face_From_FSSpec()
|
||||
FT_New_Face_From_FSRef()
|
||||
|
||||
Mac OS X upto 10.4.x:
|
||||
FT_GetFile_From_Mac_Name() deprecated
|
||||
FT_New_Face_From_FSSpec() deprecated
|
||||
FT_GetFile_From_Mac_ATS_Name() deprecated?
|
||||
FT_New_Face_From_FSRef()
|
||||
|
||||
A-2. Deprecated Functions
|
||||
-------------------------
|
||||
|
||||
A-2-1. FileManager
|
||||
------------------
|
||||
|
||||
For convenience to write MacOS application, ftmac.c
|
||||
provides functions to specify a file by FSSpec and FSRef,
|
||||
because the file identification pathname had ever been
|
||||
unrecommended method in MacOS programming.
|
||||
|
||||
Toward to MacOS X 10.4 & 5, Carbon functions using FSSpec
|
||||
datatype is noticed as deprecated, and recommended to
|
||||
migrate to FSRef datatype. The big differences of FSRef
|
||||
against FSSpec are explained in Apple TechNotes 2078.
|
||||
|
||||
http://developer.apple.com/technotes/tn2002/tn2078.html
|
||||
|
||||
- filename length: the max length of file
|
||||
name of FSRef is 255 chars (it is limit of HFS+),
|
||||
that of FSSpec is 31 chars (it is limit of HFS).
|
||||
|
||||
- filename encoding: FSSpec is localized by
|
||||
legacy encoding for each language system,
|
||||
FSRef is Unicode enabled.
|
||||
|
||||
A-2-2. FontManager
|
||||
------------------
|
||||
|
||||
Following functions receive QuickDraw fontname:
|
||||
|
||||
FT_GetFile_From_Mac_Name()
|
||||
|
||||
QuickDraw is deprecated and replaced by Quartz
|
||||
since Mac OS X 10.4. They are still kept for
|
||||
backward compatibility. By undefinition of
|
||||
HAVE_QUICKDRAW in building, you can change these
|
||||
functions to return FT_Err_Unimplemented always.
|
||||
|
||||
Replacement functions are added for migration.
|
||||
|
||||
FT_GetFile_From_Mac_ATS_Name()
|
||||
|
||||
They are usable on Mac OS X only. On older systems,
|
||||
these functions return FT_Err_Unimplemented always.
|
||||
|
||||
The detailed incompatibilities and possibility
|
||||
of FontManager emulation without QuickDraw is
|
||||
explained in
|
||||
|
||||
http://www.gyve.org/~mpsuzuki/ats_benchmark.html
|
||||
|
||||
A-3. Framework Availabilities
|
||||
-----------------------------
|
||||
|
||||
The framework of MacOS are often revised, especially
|
||||
when new format of binary executable is introduced.
|
||||
Following table is the minimum version of frameworks
|
||||
to use functions used in FreeType2. The table is
|
||||
extracted from MPW header files for assembly language.
|
||||
|
||||
*** NOTE ***
|
||||
The conditional definition of available data type
|
||||
in MPW compiler is insufficient. You can compile
|
||||
program using FSRef data type for older systems
|
||||
(MacOS 7, 8) that don't know FSRef data type.
|
||||
|
||||
|
||||
+-------------------+-----------------------------+
|
||||
CPU | mc680x0 | PowerPC |
|
||||
+---------+---------+---------+---------+---------+
|
||||
Binary Executable Format | Classic | 68K-CFM | CFM | CFM | Mach-O |
|
||||
+---------+---------+---------+---------+---------+
|
||||
Framework API | Toolbox | Toolbox | Toolbox | Carbon | Carbon |
|
||||
+---------+---------+---------+---------+---------+
|
||||
|
||||
+---------+---------+---------+---------+---------+
|
||||
| ?(*) |Interface|Interface|CarbonLib|Mac OS X |
|
||||
| |Lib |Lib | | |
|
||||
* Files.h +---------+---------+---------+---------+---------+
|
||||
PBGetFCBInfoSync() | o | 7.1- | 7.1- | 1.0- | o |
|
||||
FSMakeFSSpec() | o | 7.1- | 7.1- | 1.0- | o |
|
||||
FSGetForkCBInfo() | o | (**) | 9.0- | 1.0- | o |
|
||||
FSpMakeFSRef() | o | (**) | 9.0- | 1.0- | o |
|
||||
FSGetCatalogInfo() | o | (**) | 9.0- | 1.0- | -10.3 |
|
||||
FSPathMakeRef() | x | x | x | 1.1- | -10.3 |
|
||||
+---------+---------+---------+---------+---------+
|
||||
|
||||
+---------+---------+---------+---------+---------+
|
||||
| ?(*) |Font |Font |CarbonLib|Mac OS X |
|
||||
| |Manager |Manager | | |
|
||||
* Fonts.h +---------+---------+---------+---------+---------+
|
||||
FMCreateFontFamilyIterator() | x | x | 9.0- | 1.0- | -10.3 |
|
||||
FMDisposeFontFamilyIterator() | x | x | 9.0- | 1.0- | -10.3 |
|
||||
FMGetNextFontFamily() | x | x | 9.0- | 1.0- | -10.3 |
|
||||
FMGetFontFamilyName() | x | x | 9.0- | 1.0- | -10.3 |
|
||||
FMCreateFontFamilyInstanceIterator() | x | x | 9.0- | 1.0- | -10.3 |
|
||||
FMDisposeFontFamilyInstanceIterator() | x | x | 9.0- | 1.0- | -10.3 |
|
||||
FMGetNextFontFamilyInstance() | x | x | 9.0- | 1.0- | -10.3 |
|
||||
+---------+---------+---------+---------+---------+
|
||||
|
||||
+---------+---------+---------+---------+---------+
|
||||
| - | - | - |CarbonLib|Mac OS X |
|
||||
* ATSFont.h (***) +---------+---------+---------+---------+---------+
|
||||
ATSFontFindFromName() | x | x | x | x | o |
|
||||
ATSFontGetFileSpecification() | x | x | x | x | o |
|
||||
+---------+---------+---------+---------+---------+
|
||||
|
||||
(*)
|
||||
In the "Classic": the original binary executable
|
||||
format, these framework functions are directly
|
||||
transformed to MacOS system call. Therefore, the
|
||||
exact availability should be checked by running
|
||||
system.
|
||||
|
||||
(**)
|
||||
InterfaceLib is bundled to MacOS and its version
|
||||
is usually equal to MacOS. There's no separate
|
||||
update for InterfaceLib. It is supposed that
|
||||
there's no InterfaceLib 9.x for m68k platforms.
|
||||
In fact, these functions are FSRef dependent.
|
||||
|
||||
(***)
|
||||
ATSUI framework is available on ATSUnicode 8.5 on
|
||||
ppc Toolbox CFM, CarbonLib 1.0 too. But its base:
|
||||
ATS font manager is not published in these versions.
|
||||
|
||||
------------------------------------------------------------
|
||||
Last update: 2013-Nov-03.
|
||||
|
||||
Currently maintained by
|
||||
suzuki toshiya, <mpsuzuki@hiroshima-u.ac.jp>
|
||||
Originally prepared by
|
||||
Leonard Rosenthol, <leonardr@lazerware.com>
|
||||
Just van Rossum, <just@letterror.com>
|
24
thirdparty/freetype/builds/mac/ascii2mpw.py
vendored
Executable file
24
thirdparty/freetype/builds/mac/ascii2mpw.py
vendored
Executable file
|
@ -0,0 +1,24 @@
|
|||
#!/usr/bin/env python
|
||||
import sys
|
||||
import string
|
||||
|
||||
if len( sys.argv ) == 1 :
|
||||
for asc_line in sys.stdin.readlines():
|
||||
mpw_line = string.replace(asc_line, "\\xA5", "\245")
|
||||
mpw_line = string.replace(mpw_line, "\\xB6", "\266")
|
||||
mpw_line = string.replace(mpw_line, "\\xC4", "\304")
|
||||
mpw_line = string.replace(mpw_line, "\\xC5", "\305")
|
||||
mpw_line = string.replace(mpw_line, "\\xFF", "\377")
|
||||
mpw_line = string.replace(mpw_line, "\n", "\r")
|
||||
mpw_line = string.replace(mpw_line, "\\n", "\n")
|
||||
sys.stdout.write(mpw_line)
|
||||
elif sys.argv[1] == "-r" :
|
||||
for mpw_line in sys.stdin.readlines():
|
||||
asc_line = string.replace(mpw_line, "\n", "\\n")
|
||||
asc_line = string.replace(asc_line, "\r", "\n")
|
||||
asc_line = string.replace(asc_line, "\245", "\\xA5")
|
||||
asc_line = string.replace(asc_line, "\266", "\\xB6")
|
||||
asc_line = string.replace(asc_line, "\304", "\\xC4")
|
||||
asc_line = string.replace(asc_line, "\305", "\\xC5")
|
||||
asc_line = string.replace(asc_line, "\377", "\\xFF")
|
||||
sys.stdout.write(asc_line)
|
36
thirdparty/freetype/builds/mac/freetype-Info.plist
vendored
Normal file
36
thirdparty/freetype/builds/mac/freetype-Info.plist
vendored
Normal file
|
@ -0,0 +1,36 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
|
||||
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
|
||||
<plist version="1.0">
|
||||
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>FreeType</string>
|
||||
|
||||
<key>CFBundleGetInfoString</key>
|
||||
<string>FreeType ${PROJECT_VERSION}</string>
|
||||
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
|
||||
<key>CFBundleName</key>
|
||||
<string>FreeType</string>
|
||||
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>${PROJECT_VERSION}</string>
|
||||
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
|
||||
<key>CFBundleVersion</key>
|
||||
<string>${PROJECT_VERSION}</string>
|
||||
</dict>
|
||||
|
||||
</plist>
|
1194
thirdparty/freetype/builds/mac/ftlib.prj.xml
vendored
Normal file
1194
thirdparty/freetype/builds/mac/ftlib.prj.xml
vendored
Normal file
File diff suppressed because it is too large
Load diff
1542
thirdparty/freetype/builds/mac/ftmac.c
vendored
Normal file
1542
thirdparty/freetype/builds/mac/ftmac.c
vendored
Normal file
File diff suppressed because it is too large
Load diff
79
thirdparty/freetype/builds/modules.mk
vendored
Normal file
79
thirdparty/freetype/builds/modules.mk
vendored
Normal file
|
@ -0,0 +1,79 @@
|
|||
#
|
||||
# FreeType 2 modules sub-Makefile
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# DO NOT INVOKE THIS MAKEFILE DIRECTLY! IT IS MEANT TO BE INCLUDED BY
|
||||
# OTHER MAKEFILES.
|
||||
|
||||
|
||||
# This file is in charge of handling the generation of the modules list
|
||||
# file.
|
||||
|
||||
|
||||
# Build the modules list.
|
||||
#
|
||||
$(FTMODULE_H): $(MODULES_CFG)
|
||||
$(FTMODULE_H_INIT)
|
||||
$(FTMODULE_H_CREATE)
|
||||
$(FTMODULE_H_DONE)
|
||||
|
||||
ifneq ($(findstring $(PLATFORM),dos windows os2),)
|
||||
OPEN_MODULE := @echo$(space)
|
||||
CLOSE_MODULE := >> $(subst /,$(SEP),$(FTMODULE_H))
|
||||
REMOVE_MODULE := @-$(DELETE) $(subst /,$(SEP),$(FTMODULE_H))
|
||||
else
|
||||
OPEN_MODULE := @echo "
|
||||
CLOSE_MODULE := " >> $(FTMODULE_H)
|
||||
REMOVE_MODULE := @-$(DELETE) $(FTMODULE_H)
|
||||
endif
|
||||
|
||||
|
||||
define FTMODULE_H_INIT
|
||||
$(REMOVE_MODULE)
|
||||
@-echo Generating modules list in $(FTMODULE_H)...
|
||||
$(OPEN_MODULE)/* This is a generated file. */$(CLOSE_MODULE)
|
||||
endef
|
||||
|
||||
# It is no mistake that the final closing parenthesis is on the
|
||||
# next line -- it produces proper newlines during the expansion
|
||||
# of `foreach'.
|
||||
#
|
||||
define FTMODULE_H_CREATE
|
||||
$(foreach COMMAND,$(FTMODULE_H_COMMANDS),$($(COMMAND))
|
||||
)
|
||||
endef
|
||||
|
||||
define FTMODULE_H_DONE
|
||||
$(OPEN_MODULE)/* EOF */$(CLOSE_MODULE)
|
||||
@echo done.
|
||||
endef
|
||||
|
||||
|
||||
# $(OPEN_DRIVER) & $(CLOSE_DRIVER) are used to specify a given font driver
|
||||
# in the `module.mk' rules file.
|
||||
#
|
||||
OPEN_DRIVER := $(OPEN_MODULE)FT_USE_MODULE(
|
||||
CLOSE_DRIVER := )$(CLOSE_MODULE)
|
||||
|
||||
ECHO_DRIVER := @echo "* module:$(space)
|
||||
ECHO_DRIVER_DESC := (
|
||||
ECHO_DRIVER_DONE := )"
|
||||
|
||||
# Each `module.mk' in the `src/*' subdirectories adds a variable with
|
||||
# commands to $(FTMODULE_H_COMMANDS). Note that we can't use SRC_DIR here.
|
||||
#
|
||||
-include $(patsubst %,$(TOP_DIR)/src/%/module.mk,$(MODULES))
|
||||
|
||||
|
||||
# EOF
|
1
thirdparty/freetype/builds/newline
vendored
Normal file
1
thirdparty/freetype/builds/newline
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
|
73
thirdparty/freetype/builds/os2/detect.mk
vendored
Normal file
73
thirdparty/freetype/builds/os2/detect.mk
vendored
Normal file
|
@ -0,0 +1,73 @@
|
|||
#
|
||||
# FreeType 2 configuration file to detect an OS/2 host platform.
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
.PHONY: setup
|
||||
|
||||
|
||||
ifeq ($(PLATFORM),ansi)
|
||||
|
||||
ifdef OS2_SHELL
|
||||
|
||||
PLATFORM := os2
|
||||
|
||||
endif # test OS2_SHELL
|
||||
endif
|
||||
|
||||
ifeq ($(PLATFORM),os2)
|
||||
|
||||
COPY := copy
|
||||
DELETE := del
|
||||
CAT := type
|
||||
SEP := $(BACKSLASH)
|
||||
|
||||
# gcc-emx by default
|
||||
CONFIG_FILE := os2-gcc.mk
|
||||
|
||||
# additionally, we provide hooks for various other compilers
|
||||
#
|
||||
ifneq ($(findstring visualage,$(MAKECMDGOALS)),) # Visual Age C++
|
||||
CONFIG_FILE := os2-icc.mk
|
||||
CC := icc
|
||||
visualage: setup
|
||||
.PHONY: visualage
|
||||
endif
|
||||
|
||||
ifneq ($(findstring watcom,$(MAKECMDGOALS)),) # Watcom C/C++
|
||||
CONFIG_FILE := os2-wat.mk
|
||||
CC := wcc386
|
||||
watcom: setup
|
||||
.PHONY: watcom
|
||||
endif
|
||||
|
||||
ifneq ($(findstring borlandc,$(MAKECMDGOALS)),) # Borland C++ 32-bit
|
||||
CONFIG_FILE := os2-bcc.mk
|
||||
CC := bcc32
|
||||
borlandc: setup
|
||||
.PHONY: borlandc
|
||||
endif
|
||||
|
||||
ifneq ($(findstring devel,$(MAKECMDGOALS)),) # development target
|
||||
CONFIG_FILE := os2-dev.mk
|
||||
CC := gcc
|
||||
devel: setup
|
||||
.PHONY: devel
|
||||
endif
|
||||
|
||||
setup: dos_setup
|
||||
|
||||
endif # test PLATFORM os2
|
||||
|
||||
|
||||
# EOF
|
44
thirdparty/freetype/builds/os2/os2-def.mk
vendored
Normal file
44
thirdparty/freetype/builds/os2/os2-def.mk
vendored
Normal file
|
@ -0,0 +1,44 @@
|
|||
#
|
||||
# FreeType 2 OS/2 specific definitions
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
DELETE := del
|
||||
CAT := type
|
||||
SEP := $(strip \ )
|
||||
BUILD_DIR := $(TOP_DIR)/builds/os2
|
||||
PLATFORM := os2
|
||||
|
||||
# The executable file extension (for tools), *with* leading dot.
|
||||
#
|
||||
E := .exe
|
||||
|
||||
# The directory where all library files are placed.
|
||||
#
|
||||
# By default, this is the same as $(OBJ_DIR); however, this can be changed
|
||||
# to suit particular needs.
|
||||
#
|
||||
LIB_DIR := $(OBJ_DIR)
|
||||
|
||||
# The name of the final library file. Note that the DOS-specific Makefile
|
||||
# uses a shorter (8.3) name.
|
||||
#
|
||||
LIBRARY := $(PROJECT)
|
||||
|
||||
|
||||
# The NO_OUTPUT macro is used to ignore the output of commands.
|
||||
#
|
||||
NO_OUTPUT = 2> nul
|
||||
|
||||
|
||||
# EOF
|
30
thirdparty/freetype/builds/os2/os2-dev.mk
vendored
Normal file
30
thirdparty/freetype/builds/os2/os2-dev.mk
vendored
Normal file
|
@ -0,0 +1,30 @@
|
|||
#
|
||||
# FreeType 2 configuration rules for OS/2 + GCC
|
||||
#
|
||||
# Development version without optimizations.
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
DEVEL_DIR := $(TOP_DIR)/devel
|
||||
|
||||
# include OS/2-specific definitions
|
||||
include $(TOP_DIR)/builds/os2/os2-def.mk
|
||||
|
||||
# include gcc-specific definitions
|
||||
include $(TOP_DIR)/builds/compiler/gcc-dev.mk
|
||||
|
||||
# include linking instructions
|
||||
include $(TOP_DIR)/builds/link_dos.mk
|
||||
|
||||
|
||||
# EOF
|
26
thirdparty/freetype/builds/os2/os2-gcc.mk
vendored
Normal file
26
thirdparty/freetype/builds/os2/os2-gcc.mk
vendored
Normal file
|
@ -0,0 +1,26 @@
|
|||
#
|
||||
# FreeType 2 configuration rules for the OS/2 + gcc
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# include OS/2-specific definitions
|
||||
include $(TOP_DIR)/builds/os2/os2-def.mk
|
||||
|
||||
# include gcc-specific definitions
|
||||
include $(TOP_DIR)/builds/compiler/gcc.mk
|
||||
|
||||
# include linking instructions
|
||||
include $(TOP_DIR)/builds/link_dos.mk
|
||||
|
||||
|
||||
# EOF
|
66
thirdparty/freetype/builds/symbian/bld.inf
vendored
Normal file
66
thirdparty/freetype/builds/symbian/bld.inf
vendored
Normal file
|
@ -0,0 +1,66 @@
|
|||
//
|
||||
// FreeType 2 project for the symbian platform
|
||||
//
|
||||
|
||||
// Copyright 2008-2015 by
|
||||
// David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
//
|
||||
// This file is part of the FreeType project, and may only be used, modified,
|
||||
// and distributed under the terms of the FreeType project license,
|
||||
// LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
// indicate that you have read the license and understand and accept it
|
||||
// fully.
|
||||
|
||||
PRJ_PLATFORMS
|
||||
DEFAULT
|
||||
|
||||
PRJ_MMPFILES
|
||||
freetype.mmp
|
||||
|
||||
PRJ_EXPORTS
|
||||
../../include/freetype/ft2build.h
|
||||
../../include/freetype/config/ftconfig.h config/ftconfig.h
|
||||
../../include/freetype/config/ftheader.h config/ftheader.h
|
||||
../../include/freetype/config/ftmodule.h config/ftmodule.h
|
||||
../../include/freetype/config/ftoption.h config/ftoption.h
|
||||
../../include/freetype/config/ftstdlib.h config/ftstdlib.h
|
||||
../../include/freetype/freetype.h freetype.h
|
||||
../../include/freetype/ftbbox.h ftbbox.h
|
||||
../../include/freetype/ftbdf.h ftbdf.h
|
||||
../../include/freetype/ftbitmap.h ftbitmap.h
|
||||
../../include/freetype/ftcache.h ftcache.h
|
||||
../../include/freetype/ftcid.h ftcid.h
|
||||
../../include/freetype/fterrdef.h fterrdef.h
|
||||
../../include/freetype/fterrors.h fterrors.h
|
||||
../../include/freetype/ftfntfmt.h ftfntfmt.h
|
||||
../../include/freetype/ftgasp.h ftgasp.h
|
||||
../../include/freetype/ftglyph.h ftglyph.h
|
||||
../../include/freetype/ftgxval.h ftgxval.h
|
||||
../../include/freetype/ftgzip.h ftgzip.h
|
||||
../../include/freetype/ftbzip2.h ftbzip2.h
|
||||
../../include/freetype/ftimage.h ftimage.h
|
||||
../../include/freetype/ftincrem.h ftincrem.h
|
||||
../../include/freetype/ftlcdfil.h ftlcdfil.h
|
||||
../../include/freetype/ftlist.h ftlist.h
|
||||
../../include/freetype/ftlzw.h ftlzw.h
|
||||
../../include/freetype/ftmac.h ftmac.h
|
||||
../../include/freetype/ftmm.h ftmm.h
|
||||
../../include/freetype/ftmodapi.h ftmodapi.h
|
||||
../../include/freetype/ftmoderr.h ftmoderr.h
|
||||
../../include/freetype/ftotval.h ftotval.h
|
||||
../../include/freetype/ftoutln.h ftoutln.h
|
||||
../../include/freetype/ftpfr.h ftpfr.h
|
||||
../../include/freetype/ftrender.h ftrender.h
|
||||
../../include/freetype/ftsizes.h ftsizes.h
|
||||
../../include/freetype/ftsnames.h ftsnames.h
|
||||
../../include/freetype/ftstroke.h ftstroke.h
|
||||
../../include/freetype/ftsynth.h ftsynth.h
|
||||
../../include/freetype/ftsystem.h ftsystem.h
|
||||
../../include/freetype/fttrigon.h fttrigon.h
|
||||
../../include/freetype/fttypes.h fttypes.h
|
||||
../../include/freetype/ftwinfnt.h ftwinfnt.h
|
||||
../../include/freetype/t1tables.h t1tables.h
|
||||
../../include/freetype/ttnameid.h ttnameid.h
|
||||
../../include/freetype/tttables.h tttables.h
|
||||
../../include/freetype/tttags.h tttags.h
|
||||
../../include/freetype/ttunpat.h ttunpat.h
|
148
thirdparty/freetype/builds/symbian/freetype.mmp
vendored
Normal file
148
thirdparty/freetype/builds/symbian/freetype.mmp
vendored
Normal file
|
@ -0,0 +1,148 @@
|
|||
//
|
||||
// FreeType 2 makefile for the symbian platform
|
||||
//
|
||||
|
||||
// Copyright 2008-2015 by
|
||||
// David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
//
|
||||
// This file is part of the FreeType project, and may only be used, modified,
|
||||
// and distributed under the terms of the FreeType project license,
|
||||
// LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
// indicate that you have read the license and understand and accept it
|
||||
// fully.
|
||||
|
||||
target freetype.lib
|
||||
targettype lib
|
||||
|
||||
macro NDEBUG
|
||||
macro FT2_BUILD_LIBRARY
|
||||
|
||||
sourcepath ..\..\src\autofit
|
||||
|
||||
source autofit.c
|
||||
|
||||
sourcepath ..\..\src\base
|
||||
|
||||
source ftbase.c
|
||||
source ftbbox.c
|
||||
source ftbdf.c
|
||||
source ftbitmap.c
|
||||
source ftcid.c
|
||||
source ftfntfmt.c
|
||||
source ftfstype.c
|
||||
source ftgasp.c
|
||||
source ftglyph.c
|
||||
source ftgxval.c
|
||||
source ftinit.c
|
||||
source ftlcdfil.c
|
||||
source ftmm.c
|
||||
source ftotval.c
|
||||
source ftpatent.c
|
||||
source ftpfr.c
|
||||
source ftstroke.c
|
||||
source ftsynth.c
|
||||
source ftsystem.c
|
||||
source fttype1.c
|
||||
source ftwinfnt.c
|
||||
|
||||
sourcepath ..\..\src\bdf
|
||||
|
||||
source bdf.c
|
||||
|
||||
sourcepath ..\..\src\cache
|
||||
|
||||
source ftcache.c
|
||||
|
||||
sourcepath ..\..\src\cff
|
||||
|
||||
source cff.c
|
||||
|
||||
sourcepath ..\..\src\cid
|
||||
|
||||
source type1cid.c
|
||||
|
||||
sourcepath ..\..\src\gzip
|
||||
|
||||
source ftgzip.c
|
||||
|
||||
sourcepath ..\..\src\bzip2
|
||||
|
||||
source ftbzip2.c
|
||||
|
||||
sourcepath ..\..\src\lzw
|
||||
|
||||
source ftlzw.c
|
||||
|
||||
sourcepath ..\..\src\pcf
|
||||
|
||||
source pcf.c
|
||||
|
||||
sourcepath ..\..\src\pfr
|
||||
|
||||
source pfr.c
|
||||
|
||||
sourcepath ..\..\src\psaux
|
||||
|
||||
source psaux.c
|
||||
|
||||
sourcepath ..\..\src\pshinter
|
||||
|
||||
source pshinter.c
|
||||
|
||||
sourcepath ..\..\src\psnames
|
||||
|
||||
source psmodule.c
|
||||
|
||||
sourcepath ..\..\src\raster
|
||||
|
||||
source raster.c
|
||||
|
||||
sourcepath ..\..\src\sfnt
|
||||
|
||||
source sfnt.c
|
||||
|
||||
sourcepath ..\..\src\smooth
|
||||
|
||||
source smooth.c
|
||||
|
||||
sourcepath ..\..\src\truetype
|
||||
|
||||
source truetype.c
|
||||
|
||||
sourcepath ..\..\src\type1
|
||||
|
||||
source type1.c
|
||||
|
||||
sourcepath ..\..\src\type42
|
||||
|
||||
source type42.c
|
||||
|
||||
sourcepath ..\..\src\winfonts
|
||||
|
||||
source winfnt.c
|
||||
|
||||
|
||||
systeminclude ..\..\include
|
||||
systeminclude \epoc32\include\stdapis
|
||||
userinclude ..\..\src\autofit
|
||||
userinclude ..\..\src\bdf
|
||||
userinclude ..\..\src\cache
|
||||
userinclude ..\..\src\cff
|
||||
userinclude ..\..\src\cid
|
||||
userinclude ..\..\src\gxvalid
|
||||
userinclude ..\..\src\gzip
|
||||
userinclude ..\..\src\bzip2
|
||||
userinclude ..\..\src\lzw
|
||||
userinclude ..\..\src\otvalid
|
||||
userinclude ..\..\src\pcf
|
||||
userinclude ..\..\src\pfr
|
||||
userinclude ..\..\src\psaux
|
||||
userinclude ..\..\src\pshinter
|
||||
userinclude ..\..\src\psnames
|
||||
userinclude ..\..\src\raster
|
||||
userinclude ..\..\src\sfnt
|
||||
userinclude ..\..\src\smooth
|
||||
userinclude ..\..\src\truetype
|
||||
userinclude ..\..\src\type1
|
||||
userinclude ..\..\src\type42
|
||||
userinclude ..\..\src\winfonts
|
276
thirdparty/freetype/builds/toplevel.mk
vendored
Normal file
276
thirdparty/freetype/builds/toplevel.mk
vendored
Normal file
|
@ -0,0 +1,276 @@
|
|||
#
|
||||
# FreeType build system -- top-level sub-Makefile
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# This file is designed for GNU Make, do not use it with another Make tool!
|
||||
#
|
||||
# It works as follows:
|
||||
#
|
||||
# - When invoked for the first time, this Makefile includes the rules found
|
||||
# in `PROJECT/builds/detect.mk'. They are in charge of detecting the
|
||||
# current platform.
|
||||
#
|
||||
# A summary of the detection is displayed, and the file `config.mk' is
|
||||
# created in the current directory.
|
||||
#
|
||||
# - When invoked later, this Makefile includes the rules found in
|
||||
# `config.mk'. This sub-Makefile defines some system-specific variables
|
||||
# (like compiler, compilation flags, object suffix, etc.), then includes
|
||||
# the rules found in `PROJECT/builds/PROJECT.mk', used to build the
|
||||
# library.
|
||||
#
|
||||
# See the comments in `builds/detect.mk' and `builds/PROJECT.mk' for more
|
||||
# details on host platform detection and library builds.
|
||||
|
||||
|
||||
# First of all, check whether we have `$(value ...)'. We do this by testing
|
||||
# for `$(eval ...)' which has been introduced in the same GNU make version.
|
||||
|
||||
eval_available :=
|
||||
$(eval eval_available := T)
|
||||
ifneq ($(eval_available),T)
|
||||
$(error FreeType's build system needs a Make program which supports $$(value))
|
||||
endif
|
||||
|
||||
|
||||
.PHONY: all dist distclean modules setup
|
||||
|
||||
|
||||
# The `space' variable is used to avoid trailing spaces in defining the
|
||||
# `T' variable later.
|
||||
#
|
||||
empty :=
|
||||
space := $(empty) $(empty)
|
||||
|
||||
|
||||
# The main configuration file, defining the `XXX_MODULES' variables. We
|
||||
# prefer a `modules.cfg' file in OBJ_DIR over TOP_DIR.
|
||||
#
|
||||
ifndef MODULES_CFG
|
||||
MODULES_CFG := $(TOP_DIR)/modules.cfg
|
||||
ifneq ($(wildcard $(OBJ_DIR)/modules.cfg),)
|
||||
MODULES_CFG := $(OBJ_DIR)/modules.cfg
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
# FTMODULE_H, as its name suggests, indicates where the FreeType module
|
||||
# class file resides.
|
||||
#
|
||||
FTMODULE_H ?= $(OBJ_DIR)/ftmodule.h
|
||||
|
||||
|
||||
include $(MODULES_CFG)
|
||||
|
||||
|
||||
# The list of modules we are using.
|
||||
#
|
||||
MODULES := $(FONT_MODULES) \
|
||||
$(HINTING_MODULES) \
|
||||
$(RASTER_MODULES) \
|
||||
$(AUX_MODULES)
|
||||
|
||||
|
||||
CONFIG_MK ?= config.mk
|
||||
|
||||
# If no configuration sub-makefile is present, or if `setup' is the target
|
||||
# to be built, run the auto-detection rules to figure out which
|
||||
# configuration rules file to use.
|
||||
#
|
||||
# Note that the configuration file is put in the current directory, which is
|
||||
# not necessarily $(TOP_DIR).
|
||||
|
||||
# If `config.mk' is not present, set `check_platform'.
|
||||
#
|
||||
ifeq ($(wildcard $(CONFIG_MK)),)
|
||||
check_platform := 1
|
||||
endif
|
||||
|
||||
# If `setup' is one of the targets requested, set `check_platform'.
|
||||
#
|
||||
ifneq ($(findstring setup,$(MAKECMDGOALS)),)
|
||||
check_platform := 1
|
||||
endif
|
||||
|
||||
# Include the automatic host platform detection rules when we need to
|
||||
# check the platform.
|
||||
#
|
||||
ifdef check_platform
|
||||
|
||||
all modules: setup
|
||||
|
||||
include $(TOP_DIR)/builds/detect.mk
|
||||
|
||||
# This rule makes sense for Unix only to remove files created by a run of
|
||||
# the configure script which hasn't been successful (so that no
|
||||
# `config.mk' has been created). It uses the built-in $(RM) command of
|
||||
# GNU make. Similarly, `nul' is created if e.g. `make setup windows' has
|
||||
# been erroneously used.
|
||||
#
|
||||
# Note: This test is duplicated in `builds/unix/detect.mk'.
|
||||
#
|
||||
is_unix := $(strip $(wildcard /sbin/init) \
|
||||
$(wildcard /usr/sbin/init) \
|
||||
$(wildcard /dev/null) \
|
||||
$(wildcard /hurd/auth))
|
||||
ifneq ($(is_unix),)
|
||||
|
||||
distclean:
|
||||
$(RM) builds/unix/config.cache
|
||||
$(RM) builds/unix/config.log
|
||||
$(RM) builds/unix/config.status
|
||||
$(RM) builds/unix/unix-def.mk
|
||||
$(RM) builds/unix/unix-cc.mk
|
||||
$(RM) builds/unix/freetype2.pc
|
||||
$(RM) nul
|
||||
|
||||
endif # test is_unix
|
||||
|
||||
# IMPORTANT:
|
||||
#
|
||||
# `setup' must be defined by the host platform detection rules to create
|
||||
# the `config.mk' file in the current directory.
|
||||
|
||||
else
|
||||
|
||||
# A configuration sub-Makefile is present -- simply run it.
|
||||
#
|
||||
all: single
|
||||
|
||||
BUILD_PROJECT := yes
|
||||
include $(CONFIG_MK)
|
||||
|
||||
endif # test check_platform
|
||||
|
||||
|
||||
# We always need the list of modules in ftmodule.h.
|
||||
#
|
||||
all setup: $(FTMODULE_H)
|
||||
|
||||
|
||||
# The `modules' target unconditionally rebuilds the module list.
|
||||
#
|
||||
modules:
|
||||
$(FTMODULE_H_INIT)
|
||||
$(FTMODULE_H_CREATE)
|
||||
$(FTMODULE_H_DONE)
|
||||
|
||||
include $(TOP_DIR)/builds/modules.mk
|
||||
|
||||
|
||||
# get FreeType version string, using a
|
||||
# poor man's `sed' emulation with make's built-in string functions
|
||||
#
|
||||
work := $(strip $(shell $(CAT) $(TOP_DIR)/include/freetype/freetype.h))
|
||||
work := $(subst |,x,$(work))
|
||||
work := $(subst $(space),|,$(work))
|
||||
work := $(subst \#define|FREETYPE_MAJOR|,$(space),$(work))
|
||||
work := $(word 2,$(work))
|
||||
major := $(subst |,$(space),$(work))
|
||||
major := $(firstword $(major))
|
||||
|
||||
work := $(subst \#define|FREETYPE_MINOR|,$(space),$(work))
|
||||
work := $(word 2,$(work))
|
||||
minor := $(subst |,$(space),$(work))
|
||||
minor := $(firstword $(minor))
|
||||
|
||||
work := $(subst \#define|FREETYPE_PATCH|,$(space),$(work))
|
||||
work := $(word 2,$(work))
|
||||
patch := $(subst |,$(space),$(work))
|
||||
patch := $(firstword $(patch))
|
||||
|
||||
ifneq ($(findstring x0x,x$(patch)x),)
|
||||
version := $(major).$(minor)
|
||||
winversion := $(major)$(minor)
|
||||
else
|
||||
version := $(major).$(minor).$(patch)
|
||||
winversion := $(major)$(minor)$(patch)
|
||||
endif
|
||||
|
||||
|
||||
# This target builds the tarballs.
|
||||
#
|
||||
# Not to be run by a normal user -- there are no attempts to make it
|
||||
# generic.
|
||||
|
||||
dist:
|
||||
-rm -rf tmp
|
||||
rm -f freetype-$(version).tar.gz
|
||||
rm -f freetype-$(version).tar.bz2
|
||||
rm -f ft$(winversion).zip
|
||||
|
||||
for d in `find . -wholename '*/.git' -prune \
|
||||
-o -type f \
|
||||
-o -print` ; do \
|
||||
mkdir -p tmp/$$d ; \
|
||||
done ;
|
||||
|
||||
currdir=`pwd` ; \
|
||||
for f in `find . -wholename '*/.git' -prune \
|
||||
-o -name .gitignore \
|
||||
-o -name .mailmap \
|
||||
-o -type d \
|
||||
-o -print` ; do \
|
||||
ln -s $$currdir/$$f tmp/$$f ; \
|
||||
done
|
||||
|
||||
@# Prevent generation of .pyc files. Python follows (soft) links if
|
||||
@# the link's directory is write protected, so we have temporarily
|
||||
@# disable write access here too.
|
||||
chmod -w src/tools/docmaker
|
||||
|
||||
cd tmp ; \
|
||||
$(MAKE) devel ; \
|
||||
$(MAKE) do-dist
|
||||
|
||||
chmod +w src/tools/docmaker
|
||||
|
||||
mv tmp freetype-$(version)
|
||||
|
||||
tar -H ustar -chf - freetype-$(version) \
|
||||
| gzip -9 -c > freetype-$(version).tar.gz
|
||||
tar -H ustar -chf - freetype-$(version) \
|
||||
| bzip2 -c > freetype-$(version).tar.bz2
|
||||
|
||||
@# Use CR/LF for zip files.
|
||||
zip -lr9 ft$(winversion).zip freetype-$(version)
|
||||
|
||||
rm -fr freetype-$(version)
|
||||
|
||||
|
||||
# The locations of the latest `config.guess' and `config.sub' versions (from
|
||||
# GNU `config' git repository), relative to the `tmp' directory used during
|
||||
# `make dist'.
|
||||
#
|
||||
CONFIG_GUESS = ~/git/config/config.guess
|
||||
CONFIG_SUB = ~/git/config/config.sub
|
||||
|
||||
|
||||
# Don't say `make do-dist'. Always use `make dist' instead.
|
||||
#
|
||||
.PHONY: do-dist
|
||||
|
||||
do-dist: distclean refdoc
|
||||
@# Without removing the files, `autoconf' and friends follow links.
|
||||
rm -f builds/unix/aclocal.m4
|
||||
rm -f builds/unix/configure.ac
|
||||
rm -f builds/unix/configure
|
||||
|
||||
sh autogen.sh
|
||||
rm -rf builds/unix/autom4te.cache
|
||||
|
||||
cp $(CONFIG_GUESS) builds/unix
|
||||
cp $(CONFIG_SUB) builds/unix
|
||||
|
||||
# EOF
|
9045
thirdparty/freetype/builds/unix/aclocal.m4
vendored
Normal file
9045
thirdparty/freetype/builds/unix/aclocal.m4
vendored
Normal file
File diff suppressed because it is too large
Load diff
1441
thirdparty/freetype/builds/unix/config.guess
vendored
Executable file
1441
thirdparty/freetype/builds/unix/config.guess
vendored
Executable file
File diff suppressed because it is too large
Load diff
1813
thirdparty/freetype/builds/unix/config.sub
vendored
Executable file
1813
thirdparty/freetype/builds/unix/config.sub
vendored
Executable file
File diff suppressed because it is too large
Load diff
16345
thirdparty/freetype/builds/unix/configure
vendored
Executable file
16345
thirdparty/freetype/builds/unix/configure
vendored
Executable file
File diff suppressed because it is too large
Load diff
1025
thirdparty/freetype/builds/unix/configure.ac
vendored
Normal file
1025
thirdparty/freetype/builds/unix/configure.ac
vendored
Normal file
File diff suppressed because it is too large
Load diff
1025
thirdparty/freetype/builds/unix/configure.raw
vendored
Normal file
1025
thirdparty/freetype/builds/unix/configure.raw
vendored
Normal file
File diff suppressed because it is too large
Load diff
93
thirdparty/freetype/builds/unix/detect.mk
vendored
Normal file
93
thirdparty/freetype/builds/unix/detect.mk
vendored
Normal file
|
@ -0,0 +1,93 @@
|
|||
#
|
||||
# FreeType 2 configuration file to detect a UNIX host platform.
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
.PHONY: setup
|
||||
|
||||
ifeq ($(PLATFORM),ansi)
|
||||
|
||||
# Note: this test is duplicated in "builds/toplevel.mk".
|
||||
#
|
||||
is_unix := $(strip $(wildcard /sbin/init) \
|
||||
$(wildcard /usr/sbin/init) \
|
||||
$(wildcard /dev/null) \
|
||||
$(wildcard /hurd/auth))
|
||||
ifneq ($(is_unix),)
|
||||
|
||||
PLATFORM := unix
|
||||
|
||||
endif # test is_unix
|
||||
endif # test PLATFORM ansi
|
||||
|
||||
ifeq ($(PLATFORM),unix)
|
||||
COPY := cp
|
||||
DELETE := rm -f
|
||||
CAT := cat
|
||||
|
||||
# If `devel' is the requested target, we use a special configuration
|
||||
# file named `unix-dev.mk'. It disables optimization and libtool.
|
||||
#
|
||||
ifneq ($(findstring devel,$(MAKECMDGOALS)),)
|
||||
CONFIG_FILE := unix-dev.mk
|
||||
CC := gcc
|
||||
devel: setup
|
||||
.PHONY: devel
|
||||
else
|
||||
|
||||
# If `lcc' is the requested target, we use a special configuration
|
||||
# file named `unix-lcc.mk'. It disables libtool for LCC.
|
||||
#
|
||||
ifneq ($(findstring lcc,$(MAKECMDGOALS)),)
|
||||
CONFIG_FILE := unix-lcc.mk
|
||||
CC := lcc
|
||||
lcc: setup
|
||||
.PHONY: lcc
|
||||
else
|
||||
|
||||
# If a Unix platform is detected, the configure script is called and
|
||||
# `unix-def.mk' together with `unix-cc.mk' is created.
|
||||
#
|
||||
# Arguments to `configure' should be in the CFG variable. Example:
|
||||
#
|
||||
# make CFG="--prefix=/usr --disable-static"
|
||||
#
|
||||
# If you need to set CFLAGS or LDFLAGS, do it here also.
|
||||
#
|
||||
# Feel free to add support for other platform specific compilers in
|
||||
# this directory (e.g. solaris.mk + changes here to detect the
|
||||
# platform).
|
||||
#
|
||||
CONFIG_FILE := unix.mk
|
||||
unix: setup
|
||||
must_configure := 1
|
||||
.PHONY: unix
|
||||
endif
|
||||
endif
|
||||
|
||||
have_Makefile := $(wildcard $(OBJ_DIR)/Makefile)
|
||||
|
||||
setup: std_setup
|
||||
ifdef must_configure
|
||||
ifneq ($(have_Makefile),)
|
||||
# we are building FT2 not in the src tree
|
||||
$(TOP_DIR)/builds/unix/configure $(value CFG)
|
||||
else
|
||||
cd builds/unix; \
|
||||
./configure $(value CFG)
|
||||
endif
|
||||
endif
|
||||
|
||||
endif # test PLATFORM unix
|
||||
|
||||
|
||||
# EOF
|
161
thirdparty/freetype/builds/unix/freetype-config.in
vendored
Normal file
161
thirdparty/freetype/builds/unix/freetype-config.in
vendored
Normal file
|
@ -0,0 +1,161 @@
|
|||
#! /bin/sh
|
||||
#
|
||||
# Copyright 2000-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
LC_ALL=C
|
||||
export LC_ALL
|
||||
|
||||
prefix="%prefix%"
|
||||
exec_prefix="%exec_prefix%"
|
||||
exec_prefix_set="no"
|
||||
includedir="%includedir%"
|
||||
libdir="%libdir%"
|
||||
|
||||
usage()
|
||||
{
|
||||
cat <<EOF
|
||||
Usage: freetype-config [OPTION]...
|
||||
Get FreeType compilation and linking information.
|
||||
|
||||
Options:
|
||||
--prefix display \`--prefix' value used for building the
|
||||
FreeType library
|
||||
--prefix=PREFIX override \`--prefix' value with PREFIX
|
||||
--exec-prefix display \`--exec-prefix' value used for building
|
||||
the FreeType library
|
||||
--exec-prefix=EPREFIX override \`--exec-prefix' value with EPREFIX
|
||||
--version display libtool version of the FreeType library
|
||||
--ftversion display FreeType version number
|
||||
--libs display flags for linking with the FreeType library
|
||||
--libtool display library name for linking with libtool
|
||||
--cflags display flags for compiling with the FreeType
|
||||
library
|
||||
--static make command line options display flags
|
||||
for static linking
|
||||
EOF
|
||||
exit $1
|
||||
}
|
||||
|
||||
if test $# -eq 0 ; then
|
||||
usage 1 1>&2
|
||||
fi
|
||||
|
||||
while test $# -gt 0 ; do
|
||||
case "$1" in
|
||||
-*=*)
|
||||
optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'`
|
||||
;;
|
||||
*)
|
||||
optarg=
|
||||
;;
|
||||
esac
|
||||
|
||||
case $1 in
|
||||
--prefix=*)
|
||||
prefix=$optarg
|
||||
local_prefix=yes
|
||||
;;
|
||||
--prefix)
|
||||
echo_prefix=yes
|
||||
;;
|
||||
--exec-prefix=*)
|
||||
exec_prefix=$optarg
|
||||
exec_prefix_set=yes
|
||||
local_prefix=yes
|
||||
;;
|
||||
--exec-prefix)
|
||||
echo_exec_prefix=yes
|
||||
;;
|
||||
--version)
|
||||
echo %ft_version%
|
||||
exit 0
|
||||
;;
|
||||
--ftversion)
|
||||
echo_ft_version=yes
|
||||
;;
|
||||
--cflags)
|
||||
echo_cflags=yes
|
||||
;;
|
||||
--libs)
|
||||
echo_libs=yes
|
||||
;;
|
||||
--libtool)
|
||||
echo_libtool=yes
|
||||
;;
|
||||
--static)
|
||||
show_static=yes
|
||||
;;
|
||||
*)
|
||||
usage 1 1>&2
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
if test "$local_prefix" = "yes" ; then
|
||||
if test "$exec_prefix_set" != "yes" ; then
|
||||
exec_prefix=$prefix
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "$echo_prefix" = "yes" ; then
|
||||
echo ${SYSROOT}$prefix
|
||||
fi
|
||||
|
||||
if test "$echo_exec_prefix" = "yes" ; then
|
||||
echo ${SYSROOT}$exec_prefix
|
||||
fi
|
||||
|
||||
if test "$exec_prefix_set" = "yes" ; then
|
||||
libdir=$exec_prefix/lib
|
||||
else
|
||||
if test "$local_prefix" = "yes" ; then
|
||||
includedir=$prefix/include
|
||||
libdir=$prefix/lib
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "$echo_ft_version" = "yes" ; then
|
||||
major=`grep define ${SYSROOT}$includedir/freetype2/freetype/freetype.h \
|
||||
| grep FREETYPE_MAJOR \
|
||||
| sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'`
|
||||
minor=`grep define ${SYSROOT}$includedir/freetype2/freetype/freetype.h \
|
||||
| grep FREETYPE_MINOR \
|
||||
| sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'`
|
||||
patch=`grep define ${SYSROOT}$includedir/freetype2/freetype/freetype.h \
|
||||
| grep FREETYPE_PATCH \
|
||||
| sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'`
|
||||
echo $major.$minor.$patch
|
||||
fi
|
||||
|
||||
if test "$echo_cflags" = "yes" ; then
|
||||
echo -I${SYSROOT}$includedir/freetype2
|
||||
fi
|
||||
|
||||
if test "$echo_libs" = "yes" ; then
|
||||
libs="-lfreetype"
|
||||
staticlibs="%LIBSSTATIC_CONFIG%"
|
||||
if test "$show_static" = "yes" ; then
|
||||
libs="$staticlibs"
|
||||
fi
|
||||
if test "${SYSROOT}$libdir" != "/usr/lib" &&
|
||||
test "${SYSROOT}$libdir" != "/usr/lib64"; then
|
||||
echo -L${SYSROOT}$libdir $libs
|
||||
else
|
||||
echo $libs
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "$echo_libtool" = "yes" ; then
|
||||
convlib="libfreetype.la"
|
||||
echo ${SYSROOT}$libdir/$convlib
|
||||
fi
|
||||
|
||||
# EOF
|
14
thirdparty/freetype/builds/unix/freetype2.in
vendored
Normal file
14
thirdparty/freetype/builds/unix/freetype2.in
vendored
Normal file
|
@ -0,0 +1,14 @@
|
|||
prefix=%prefix%
|
||||
exec_prefix=%exec_prefix%
|
||||
libdir=%libdir%
|
||||
includedir=%includedir%
|
||||
|
||||
Name: FreeType 2
|
||||
URL: http://freetype.org
|
||||
Description: A free, high-quality, and portable font engine.
|
||||
Version: %ft_version%
|
||||
Requires:
|
||||
Requires.private: %REQUIRES_PRIVATE%
|
||||
Libs: -L${libdir} -lfreetype
|
||||
Libs.private: %LIBS_PRIVATE%
|
||||
Cflags: -I${includedir}/freetype2
|
194
thirdparty/freetype/builds/unix/freetype2.m4
vendored
Normal file
194
thirdparty/freetype/builds/unix/freetype2.m4
vendored
Normal file
|
@ -0,0 +1,194 @@
|
|||
# Configure paths for FreeType2
|
||||
# Marcelo Magallon 2001-10-26, based on gtk.m4 by Owen Taylor
|
||||
#
|
||||
# Copyright 2001-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
#
|
||||
# As a special exception to the FreeType project license, this file may be
|
||||
# distributed as part of a program that contains a configuration script
|
||||
# generated by Autoconf, under the same distribution terms as the rest of
|
||||
# that program.
|
||||
#
|
||||
# serial 4
|
||||
|
||||
# AC_CHECK_FT2([MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
|
||||
# Test for FreeType 2, and define FT2_CFLAGS and FT2_LIBS.
|
||||
# MINIMUM-VERSION is what libtool reports; the default is `7.0.1' (this is
|
||||
# FreeType 2.0.4).
|
||||
#
|
||||
AC_DEFUN([AC_CHECK_FT2],
|
||||
[# Get the cflags and libraries from the freetype-config script
|
||||
#
|
||||
AC_ARG_WITH([ft-prefix],
|
||||
dnl don't quote AS_HELP_STRING!
|
||||
AS_HELP_STRING([--with-ft-prefix=PREFIX],
|
||||
[Prefix where FreeType is installed (optional)]),
|
||||
[ft_config_prefix="$withval"],
|
||||
[ft_config_prefix=""])
|
||||
|
||||
AC_ARG_WITH([ft-exec-prefix],
|
||||
dnl don't quote AS_HELP_STRING!
|
||||
AS_HELP_STRING([--with-ft-exec-prefix=PREFIX],
|
||||
[Exec prefix where FreeType is installed (optional)]),
|
||||
[ft_config_exec_prefix="$withval"],
|
||||
[ft_config_exec_prefix=""])
|
||||
|
||||
AC_ARG_ENABLE([freetypetest],
|
||||
dnl don't quote AS_HELP_STRING!
|
||||
AS_HELP_STRING([--disable-freetypetest],
|
||||
[Do not try to compile and run a test FreeType program]),
|
||||
[],
|
||||
[enable_fttest=yes])
|
||||
|
||||
if test x$ft_config_exec_prefix != x ; then
|
||||
ft_config_args="$ft_config_args --exec-prefix=$ft_config_exec_prefix"
|
||||
if test x${FT2_CONFIG+set} != xset ; then
|
||||
FT2_CONFIG=$ft_config_exec_prefix/bin/freetype-config
|
||||
fi
|
||||
fi
|
||||
|
||||
if test x$ft_config_prefix != x ; then
|
||||
ft_config_args="$ft_config_args --prefix=$ft_config_prefix"
|
||||
if test x${FT2_CONFIG+set} != xset ; then
|
||||
FT2_CONFIG=$ft_config_prefix/bin/freetype-config
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "x$FT2_CONFIG" = x ; then
|
||||
AC_PATH_TOOL([FT2_CONFIG], [freetype-config], [no])
|
||||
fi
|
||||
|
||||
min_ft_version=m4_if([$1], [], [7.0.1], [$1])
|
||||
AC_MSG_CHECKING([for FreeType -- version >= $min_ft_version])
|
||||
no_ft=""
|
||||
if test "$FT2_CONFIG" = "no" ; then
|
||||
no_ft=yes
|
||||
else
|
||||
FT2_CFLAGS=`$FT2_CONFIG $ft_config_args --cflags`
|
||||
FT2_LIBS=`$FT2_CONFIG $ft_config_args --libs`
|
||||
ft_config_major_version=`$FT2_CONFIG $ft_config_args --version | \
|
||||
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
|
||||
ft_config_minor_version=`$FT2_CONFIG $ft_config_args --version | \
|
||||
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
|
||||
ft_config_micro_version=`$FT2_CONFIG $ft_config_args --version | \
|
||||
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
|
||||
ft_min_major_version=`echo $min_ft_version | \
|
||||
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
|
||||
ft_min_minor_version=`echo $min_ft_version | \
|
||||
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
|
||||
ft_min_micro_version=`echo $min_ft_version | \
|
||||
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
|
||||
if test x$enable_fttest = xyes ; then
|
||||
ft_config_is_lt=""
|
||||
if test $ft_config_major_version -lt $ft_min_major_version ; then
|
||||
ft_config_is_lt=yes
|
||||
else
|
||||
if test $ft_config_major_version -eq $ft_min_major_version ; then
|
||||
if test $ft_config_minor_version -lt $ft_min_minor_version ; then
|
||||
ft_config_is_lt=yes
|
||||
else
|
||||
if test $ft_config_minor_version -eq $ft_min_minor_version ; then
|
||||
if test $ft_config_micro_version -lt $ft_min_micro_version ; then
|
||||
ft_config_is_lt=yes
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
if test x$ft_config_is_lt = xyes ; then
|
||||
no_ft=yes
|
||||
else
|
||||
ac_save_CFLAGS="$CFLAGS"
|
||||
ac_save_LIBS="$LIBS"
|
||||
CFLAGS="$CFLAGS $FT2_CFLAGS"
|
||||
LIBS="$FT2_LIBS $LIBS"
|
||||
|
||||
#
|
||||
# Sanity checks for the results of freetype-config to some extent.
|
||||
#
|
||||
AC_RUN_IFELSE([
|
||||
AC_LANG_SOURCE([[
|
||||
|
||||
#include <ft2build.h>
|
||||
#include FT_FREETYPE_H
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
int
|
||||
main()
|
||||
{
|
||||
FT_Library library;
|
||||
FT_Error error;
|
||||
|
||||
error = FT_Init_FreeType(&library);
|
||||
|
||||
if (error)
|
||||
return 1;
|
||||
else
|
||||
{
|
||||
FT_Done_FreeType(library);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
]])
|
||||
],
|
||||
[],
|
||||
[no_ft=yes],
|
||||
[echo $ECHO_N "cross compiling; assuming OK... $ECHO_C"])
|
||||
|
||||
CFLAGS="$ac_save_CFLAGS"
|
||||
LIBS="$ac_save_LIBS"
|
||||
fi # test $ft_config_version -lt $ft_min_version
|
||||
fi # test x$enable_fttest = xyes
|
||||
fi # test "$FT2_CONFIG" = "no"
|
||||
|
||||
if test x$no_ft = x ; then
|
||||
AC_MSG_RESULT([yes])
|
||||
m4_if([$2], [], [:], [$2])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
if test "$FT2_CONFIG" = "no" ; then
|
||||
AC_MSG_WARN([
|
||||
|
||||
The freetype-config script installed by FreeType 2 could not be found.
|
||||
If FreeType 2 was installed in PREFIX, make sure PREFIX/bin is in
|
||||
your path, or set the FT2_CONFIG environment variable to the
|
||||
full path to freetype-config.
|
||||
])
|
||||
else
|
||||
if test x$ft_config_is_lt = xyes ; then
|
||||
AC_MSG_WARN([
|
||||
|
||||
Your installed version of the FreeType 2 library is too old.
|
||||
If you have different versions of FreeType 2, make sure that
|
||||
correct values for --with-ft-prefix or --with-ft-exec-prefix
|
||||
are used, or set the FT2_CONFIG environment variable to the
|
||||
full path to freetype-config.
|
||||
])
|
||||
else
|
||||
AC_MSG_WARN([
|
||||
|
||||
The FreeType test program failed to run. If your system uses
|
||||
shared libraries and they are installed outside the normal
|
||||
system library path, make sure the variable LD_LIBRARY_PATH
|
||||
(or whatever is appropriate for your system) is correctly set.
|
||||
])
|
||||
fi
|
||||
fi
|
||||
|
||||
FT2_CFLAGS=""
|
||||
FT2_LIBS=""
|
||||
m4_if([$3], [], [:], [$3])
|
||||
fi
|
||||
|
||||
AC_SUBST([FT2_CFLAGS])
|
||||
AC_SUBST([FT2_LIBS])])
|
||||
|
||||
# end of freetype2.m4
|
32
thirdparty/freetype/builds/unix/ft-munmap.m4
vendored
Normal file
32
thirdparty/freetype/builds/unix/ft-munmap.m4
vendored
Normal file
|
@ -0,0 +1,32 @@
|
|||
## FreeType specific autoconf tests
|
||||
#
|
||||
# Copyright 2002-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
# serial 2
|
||||
|
||||
AC_DEFUN([FT_MUNMAP_PARAM],
|
||||
[AC_MSG_CHECKING([for munmap's first parameter type])
|
||||
AC_COMPILE_IFELSE([
|
||||
AC_LANG_SOURCE([[
|
||||
|
||||
#include <unistd.h>
|
||||
#include <sys/mman.h>
|
||||
int munmap(void *, size_t);
|
||||
|
||||
]])
|
||||
],
|
||||
[AC_MSG_RESULT([void *])
|
||||
AC_DEFINE([MUNMAP_USES_VOIDP],
|
||||
[],
|
||||
[Define to 1 if the first argument of munmap is of type void *])],
|
||||
[AC_MSG_RESULT([char *])])
|
||||
])
|
||||
|
||||
# end of ft-munmap.m4
|
497
thirdparty/freetype/builds/unix/ftconfig.in
vendored
Normal file
497
thirdparty/freetype/builds/unix/ftconfig.in
vendored
Normal file
|
@ -0,0 +1,497 @@
|
|||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftconfig.in */
|
||||
/* */
|
||||
/* UNIX-specific configuration file (specification only). */
|
||||
/* */
|
||||
/* Copyright 1996-2015 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* This header file contains a number of macro definitions that are used */
|
||||
/* by the rest of the engine. Most of the macros here are automatically */
|
||||
/* determined at compile time, and you should not need to change it to */
|
||||
/* port FreeType, except to compile the library with a non-ANSI */
|
||||
/* compiler. */
|
||||
/* */
|
||||
/* Note however that if some specific modifications are needed, we */
|
||||
/* advise you to place a modified copy in your build directory. */
|
||||
/* */
|
||||
/* The build directory is usually `builds/<system>', and contains */
|
||||
/* system-specific files that are always included first when building */
|
||||
/* the library. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
#ifndef __FTCONFIG_H__
|
||||
#define __FTCONFIG_H__
|
||||
|
||||
#include <ft2build.h>
|
||||
#include FT_CONFIG_OPTIONS_H
|
||||
#include FT_CONFIG_STANDARD_LIBRARY_H
|
||||
|
||||
|
||||
FT_BEGIN_HEADER
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* PLATFORM-SPECIFIC CONFIGURATION MACROS */
|
||||
/* */
|
||||
/* These macros can be toggled to suit a specific system. The current */
|
||||
/* ones are defaults used to compile FreeType in an ANSI C environment */
|
||||
/* (16bit compilers are also supported). Copy this file to your own */
|
||||
/* `builds/<system>' directory, and edit it to port the engine. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
#undef HAVE_UNISTD_H
|
||||
#undef HAVE_FCNTL_H
|
||||
#undef HAVE_STDINT_H
|
||||
|
||||
|
||||
/* There are systems (like the Texas Instruments 'C54x) where a `char' */
|
||||
/* has 16 bits. ANSI C says that sizeof(char) is always 1. Since an */
|
||||
/* `int' has 16 bits also for this system, sizeof(int) gives 1 which */
|
||||
/* is probably unexpected. */
|
||||
/* */
|
||||
/* `CHAR_BIT' (defined in limits.h) gives the number of bits in a */
|
||||
/* `char' type. */
|
||||
|
||||
#ifndef FT_CHAR_BIT
|
||||
#define FT_CHAR_BIT CHAR_BIT
|
||||
#endif
|
||||
|
||||
|
||||
#undef FT_USE_AUTOCONF_SIZEOF_TYPES
|
||||
#ifdef FT_USE_AUTOCONF_SIZEOF_TYPES
|
||||
|
||||
#undef SIZEOF_INT
|
||||
#undef SIZEOF_LONG
|
||||
#define FT_SIZEOF_INT SIZEOF_INT
|
||||
#define FT_SIZEOF_LONG SIZEOF_LONG
|
||||
|
||||
#else /* !FT_USE_AUTOCONF_SIZEOF_TYPES */
|
||||
|
||||
/* Following cpp computation of the bit length of int and long */
|
||||
/* is copied from default include/freetype/config/ftconfig.h. */
|
||||
/* If any improvement is required for this file, it should be */
|
||||
/* applied to the original header file for the builders that */
|
||||
/* do not use configure script. */
|
||||
|
||||
/* The size of an `int' type. */
|
||||
#if FT_UINT_MAX == 0xFFFFUL
|
||||
#define FT_SIZEOF_INT (16 / FT_CHAR_BIT)
|
||||
#elif FT_UINT_MAX == 0xFFFFFFFFUL
|
||||
#define FT_SIZEOF_INT (32 / FT_CHAR_BIT)
|
||||
#elif FT_UINT_MAX > 0xFFFFFFFFUL && FT_UINT_MAX == 0xFFFFFFFFFFFFFFFFUL
|
||||
#define FT_SIZEOF_INT (64 / FT_CHAR_BIT)
|
||||
#else
|
||||
#error "Unsupported size of `int' type!"
|
||||
#endif
|
||||
|
||||
/* The size of a `long' type. A five-byte `long' (as used e.g. on the */
|
||||
/* DM642) is recognized but avoided. */
|
||||
#if FT_ULONG_MAX == 0xFFFFFFFFUL
|
||||
#define FT_SIZEOF_LONG (32 / FT_CHAR_BIT)
|
||||
#elif FT_ULONG_MAX > 0xFFFFFFFFUL && FT_ULONG_MAX == 0xFFFFFFFFFFUL
|
||||
#define FT_SIZEOF_LONG (32 / FT_CHAR_BIT)
|
||||
#elif FT_ULONG_MAX > 0xFFFFFFFFUL && FT_ULONG_MAX == 0xFFFFFFFFFFFFFFFFUL
|
||||
#define FT_SIZEOF_LONG (64 / FT_CHAR_BIT)
|
||||
#else
|
||||
#error "Unsupported size of `long' type!"
|
||||
#endif
|
||||
|
||||
#endif /* !FT_USE_AUTOCONF_SIZEOF_TYPES */
|
||||
|
||||
|
||||
/* FT_UNUSED is a macro used to indicate that a given parameter is not */
|
||||
/* used -- this is only used to get rid of unpleasant compiler warnings */
|
||||
#ifndef FT_UNUSED
|
||||
#define FT_UNUSED( arg ) ( (arg) = (arg) )
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* AUTOMATIC CONFIGURATION MACROS */
|
||||
/* */
|
||||
/* These macros are computed from the ones defined above. Don't touch */
|
||||
/* their definition, unless you know precisely what you are doing. No */
|
||||
/* porter should need to mess with them. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Mac support */
|
||||
/* */
|
||||
/* This is the only necessary change, so it is defined here instead */
|
||||
/* providing a new configuration file. */
|
||||
/* */
|
||||
#if defined( __APPLE__ ) || ( defined( __MWERKS__ ) && defined( macintosh ) )
|
||||
/* no Carbon frameworks for 64bit 10.4.x */
|
||||
/* AvailabilityMacros.h is available since Mac OS X 10.2, */
|
||||
/* so guess the system version by maximum errno before inclusion */
|
||||
#include <errno.h>
|
||||
#ifdef ECANCELED /* defined since 10.2 */
|
||||
#include "AvailabilityMacros.h"
|
||||
#endif
|
||||
#if defined( __LP64__ ) && \
|
||||
( MAC_OS_X_VERSION_MIN_REQUIRED <= MAC_OS_X_VERSION_10_4 )
|
||||
/undef FT_MACINTOSH
|
||||
#endif
|
||||
|
||||
#elif defined( __SC__ ) || defined( __MRC__ )
|
||||
/* Classic MacOS compilers */
|
||||
#include "ConditionalMacros.h"
|
||||
#if TARGET_OS_MAC
|
||||
#define FT_MACINTOSH 1
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
/* Fix compiler warning with sgi compiler */
|
||||
#if defined( __sgi ) && !defined( __GNUC__ )
|
||||
#if defined( _COMPILER_VERSION ) && ( _COMPILER_VERSION >= 730 )
|
||||
#pragma set woff 3505
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Section> */
|
||||
/* basic_types */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Type> */
|
||||
/* FT_Int16 */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* A typedef for a 16bit signed integer type. */
|
||||
/* */
|
||||
typedef signed short FT_Int16;
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Type> */
|
||||
/* FT_UInt16 */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* A typedef for a 16bit unsigned integer type. */
|
||||
/* */
|
||||
typedef unsigned short FT_UInt16;
|
||||
|
||||
/* */
|
||||
|
||||
|
||||
/* this #if 0 ... #endif clause is for documentation purposes */
|
||||
#if 0
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Type> */
|
||||
/* FT_Int32 */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* A typedef for a 32bit signed integer type. The size depends on */
|
||||
/* the configuration. */
|
||||
/* */
|
||||
typedef signed XXX FT_Int32;
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Type> */
|
||||
/* FT_UInt32 */
|
||||
/* */
|
||||
/* A typedef for a 32bit unsigned integer type. The size depends on */
|
||||
/* the configuration. */
|
||||
/* */
|
||||
typedef unsigned XXX FT_UInt32;
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Type> */
|
||||
/* FT_Int64 */
|
||||
/* */
|
||||
/* A typedef for a 64bit signed integer type. The size depends on */
|
||||
/* the configuration. Only defined if there is real 64bit support; */
|
||||
/* otherwise, it gets emulated with a structure (if necessary). */
|
||||
/* */
|
||||
typedef signed XXX FT_Int64;
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Type> */
|
||||
/* FT_UInt64 */
|
||||
/* */
|
||||
/* A typedef for a 64bit unsigned integer type. The size depends on */
|
||||
/* the configuration. Only defined if there is real 64bit support; */
|
||||
/* otherwise, it gets emulated with a structure (if necessary). */
|
||||
/* */
|
||||
typedef unsigned XXX FT_UInt64;
|
||||
|
||||
/* */
|
||||
|
||||
#endif
|
||||
|
||||
#if FT_SIZEOF_INT == 4
|
||||
|
||||
typedef signed int FT_Int32;
|
||||
typedef unsigned int FT_UInt32;
|
||||
|
||||
#elif FT_SIZEOF_LONG == 4
|
||||
|
||||
typedef signed long FT_Int32;
|
||||
typedef unsigned long FT_UInt32;
|
||||
|
||||
#else
|
||||
#error "no 32bit type found -- please check your configuration files"
|
||||
#endif
|
||||
|
||||
|
||||
/* look up an integer type that is at least 32 bits */
|
||||
#if FT_SIZEOF_INT >= 4
|
||||
|
||||
typedef int FT_Fast;
|
||||
typedef unsigned int FT_UFast;
|
||||
|
||||
#elif FT_SIZEOF_LONG >= 4
|
||||
|
||||
typedef long FT_Fast;
|
||||
typedef unsigned long FT_UFast;
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
/* determine whether we have a 64-bit int type for platforms without */
|
||||
/* Autoconf */
|
||||
#if FT_SIZEOF_LONG == 8
|
||||
|
||||
/* FT_LONG64 must be defined if a 64-bit type is available */
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 long
|
||||
#define FT_UINT64 unsigned long
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* A 64-bit data type may create compilation problems if you compile */
|
||||
/* in strict ANSI mode. To avoid them, we disable other 64-bit data */
|
||||
/* types if __STDC__ is defined. You can however ignore this rule */
|
||||
/* by defining the FT_CONFIG_OPTION_FORCE_INT64 configuration macro. */
|
||||
/* */
|
||||
#elif !defined( __STDC__ ) || defined( FT_CONFIG_OPTION_FORCE_INT64 )
|
||||
|
||||
#if defined( _MSC_VER ) && _MSC_VER >= 900 /* Visual C++ (and Intel C++) */
|
||||
|
||||
/* this compiler provides the __int64 type */
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 __int64
|
||||
#define FT_UINT64 unsigned __int64
|
||||
|
||||
#elif defined( __BORLANDC__ ) /* Borland C++ */
|
||||
|
||||
/* XXXX: We should probably check the value of __BORLANDC__ in order */
|
||||
/* to test the compiler version. */
|
||||
|
||||
/* this compiler provides the __int64 type */
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 __int64
|
||||
#define FT_UINT64 unsigned __int64
|
||||
|
||||
#elif defined( __WATCOMC__ ) /* Watcom C++ */
|
||||
|
||||
/* Watcom doesn't provide 64-bit data types */
|
||||
|
||||
#elif defined( __MWERKS__ ) /* Metrowerks CodeWarrior */
|
||||
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 long long int
|
||||
#define FT_UINT64 unsigned long long int
|
||||
|
||||
#elif defined( __GNUC__ )
|
||||
|
||||
/* GCC provides the `long long' type */
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 long long int
|
||||
#define FT_UINT64 unsigned long long int
|
||||
|
||||
#endif /* _MSC_VER */
|
||||
|
||||
#endif /* FT_SIZEOF_LONG == 8 */
|
||||
|
||||
#ifdef FT_LONG64
|
||||
typedef FT_INT64 FT_Int64;
|
||||
typedef FT_UINT64 FT_UInt64;
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* miscellaneous */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
#define FT_BEGIN_STMNT do {
|
||||
#define FT_END_STMNT } while ( 0 )
|
||||
#define FT_DUMMY_STMNT FT_BEGIN_STMNT FT_END_STMNT
|
||||
|
||||
|
||||
/* typeof condition taken from gnulib's `intprops.h' header file */
|
||||
#if ( __GNUC__ >= 2 || \
|
||||
defined( __IBM__TYPEOF__ ) || \
|
||||
( __SUNPRO_C >= 0x5110 && !__STDC__ ) )
|
||||
#define FT_TYPEOF( type ) (__typeof__ (type))
|
||||
#else
|
||||
#define FT_TYPEOF( type ) /* empty */
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef FT_MAKE_OPTION_SINGLE_OBJECT
|
||||
|
||||
#define FT_LOCAL( x ) static x
|
||||
#define FT_LOCAL_DEF( x ) static x
|
||||
|
||||
#else
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_LOCAL( x ) extern "C" x
|
||||
#define FT_LOCAL_DEF( x ) extern "C" x
|
||||
#else
|
||||
#define FT_LOCAL( x ) extern x
|
||||
#define FT_LOCAL_DEF( x ) x
|
||||
#endif
|
||||
|
||||
#endif /* FT_MAKE_OPTION_SINGLE_OBJECT */
|
||||
|
||||
#define FT_LOCAL_ARRAY( x ) extern const x
|
||||
#define FT_LOCAL_ARRAY_DEF( x ) const x
|
||||
|
||||
|
||||
#ifndef FT_BASE
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_BASE( x ) extern "C" x
|
||||
#else
|
||||
#define FT_BASE( x ) extern x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_BASE */
|
||||
|
||||
|
||||
#ifndef FT_BASE_DEF
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_BASE_DEF( x ) x
|
||||
#else
|
||||
#define FT_BASE_DEF( x ) x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_BASE_DEF */
|
||||
|
||||
|
||||
#ifndef FT_EXPORT
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_EXPORT( x ) extern "C" x
|
||||
#else
|
||||
#define FT_EXPORT( x ) extern x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_EXPORT */
|
||||
|
||||
|
||||
#ifndef FT_EXPORT_DEF
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_EXPORT_DEF( x ) extern "C" x
|
||||
#else
|
||||
#define FT_EXPORT_DEF( x ) extern x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_EXPORT_DEF */
|
||||
|
||||
|
||||
#ifndef FT_EXPORT_VAR
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_EXPORT_VAR( x ) extern "C" x
|
||||
#else
|
||||
#define FT_EXPORT_VAR( x ) extern x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_EXPORT_VAR */
|
||||
|
||||
/* The following macros are needed to compile the library with a */
|
||||
/* C++ compiler and with 16bit compilers. */
|
||||
/* */
|
||||
|
||||
/* This is special. Within C++, you must specify `extern "C"' for */
|
||||
/* functions which are used via function pointers, and you also */
|
||||
/* must do that for structures which contain function pointers to */
|
||||
/* assure C linkage -- it's not possible to have (local) anonymous */
|
||||
/* functions which are accessed by (global) function pointers. */
|
||||
/* */
|
||||
/* */
|
||||
/* FT_CALLBACK_DEF is used to _define_ a callback function. */
|
||||
/* */
|
||||
/* FT_CALLBACK_TABLE is used to _declare_ a constant variable that */
|
||||
/* contains pointers to callback functions. */
|
||||
/* */
|
||||
/* FT_CALLBACK_TABLE_DEF is used to _define_ a constant variable */
|
||||
/* that contains pointers to callback functions. */
|
||||
/* */
|
||||
/* */
|
||||
/* Some 16bit compilers have to redefine these macros to insert */
|
||||
/* the infamous `_cdecl' or `__fastcall' declarations. */
|
||||
/* */
|
||||
#ifndef FT_CALLBACK_DEF
|
||||
#ifdef __cplusplus
|
||||
#define FT_CALLBACK_DEF( x ) extern "C" x
|
||||
#else
|
||||
#define FT_CALLBACK_DEF( x ) static x
|
||||
#endif
|
||||
#endif /* FT_CALLBACK_DEF */
|
||||
|
||||
#ifndef FT_CALLBACK_TABLE
|
||||
#ifdef __cplusplus
|
||||
#define FT_CALLBACK_TABLE extern "C"
|
||||
#define FT_CALLBACK_TABLE_DEF extern "C"
|
||||
#else
|
||||
#define FT_CALLBACK_TABLE extern
|
||||
#define FT_CALLBACK_TABLE_DEF /* nothing */
|
||||
#endif
|
||||
#endif /* FT_CALLBACK_TABLE */
|
||||
|
||||
|
||||
FT_END_HEADER
|
||||
|
||||
|
||||
#endif /* __FTCONFIG_H__ */
|
||||
|
||||
|
||||
/* END */
|
420
thirdparty/freetype/builds/unix/ftsystem.c
vendored
Normal file
420
thirdparty/freetype/builds/unix/ftsystem.c
vendored
Normal file
|
@ -0,0 +1,420 @@
|
|||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftsystem.c */
|
||||
/* */
|
||||
/* Unix-specific FreeType low-level system interface (body). */
|
||||
/* */
|
||||
/* Copyright 1996-2015 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
#include <ft2build.h>
|
||||
/* we use our special ftconfig.h file, not the standard one */
|
||||
#include <ftconfig.h>
|
||||
#include FT_INTERNAL_DEBUG_H
|
||||
#include FT_SYSTEM_H
|
||||
#include FT_ERRORS_H
|
||||
#include FT_TYPES_H
|
||||
#include FT_INTERNAL_STREAM_H
|
||||
|
||||
/* memory-mapping includes and definitions */
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include <sys/mman.h>
|
||||
#ifndef MAP_FILE
|
||||
#define MAP_FILE 0x00
|
||||
#endif
|
||||
|
||||
#ifdef MUNMAP_USES_VOIDP
|
||||
#define MUNMAP_ARG_CAST void *
|
||||
#else
|
||||
#define MUNMAP_ARG_CAST char *
|
||||
#endif
|
||||
|
||||
#ifdef NEED_MUNMAP_DECL
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#else
|
||||
extern
|
||||
#endif
|
||||
int
|
||||
munmap( char* addr,
|
||||
int len );
|
||||
|
||||
#define MUNMAP_ARG_CAST char *
|
||||
|
||||
#endif /* NEED_DECLARATION_MUNMAP */
|
||||
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
#ifdef HAVE_FCNTL_H
|
||||
#include <fcntl.h>
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <errno.h>
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* MEMORY MANAGEMENT INTERFACE */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Function> */
|
||||
/* ft_alloc */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* The memory allocation function. */
|
||||
/* */
|
||||
/* <Input> */
|
||||
/* memory :: A pointer to the memory object. */
|
||||
/* */
|
||||
/* size :: The requested size in bytes. */
|
||||
/* */
|
||||
/* <Return> */
|
||||
/* The address of newly allocated block. */
|
||||
/* */
|
||||
FT_CALLBACK_DEF( void* )
|
||||
ft_alloc( FT_Memory memory,
|
||||
long size )
|
||||
{
|
||||
FT_UNUSED( memory );
|
||||
|
||||
return malloc( size );
|
||||
}
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Function> */
|
||||
/* ft_realloc */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* The memory reallocation function. */
|
||||
/* */
|
||||
/* <Input> */
|
||||
/* memory :: A pointer to the memory object. */
|
||||
/* */
|
||||
/* cur_size :: The current size of the allocated memory block. */
|
||||
/* */
|
||||
/* new_size :: The newly requested size in bytes. */
|
||||
/* */
|
||||
/* block :: The current address of the block in memory. */
|
||||
/* */
|
||||
/* <Return> */
|
||||
/* The address of the reallocated memory block. */
|
||||
/* */
|
||||
FT_CALLBACK_DEF( void* )
|
||||
ft_realloc( FT_Memory memory,
|
||||
long cur_size,
|
||||
long new_size,
|
||||
void* block )
|
||||
{
|
||||
FT_UNUSED( memory );
|
||||
FT_UNUSED( cur_size );
|
||||
|
||||
return realloc( block, new_size );
|
||||
}
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Function> */
|
||||
/* ft_free */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* The memory release function. */
|
||||
/* */
|
||||
/* <Input> */
|
||||
/* memory :: A pointer to the memory object. */
|
||||
/* */
|
||||
/* block :: The address of block in memory to be freed. */
|
||||
/* */
|
||||
FT_CALLBACK_DEF( void )
|
||||
ft_free( FT_Memory memory,
|
||||
void* block )
|
||||
{
|
||||
FT_UNUSED( memory );
|
||||
|
||||
free( block );
|
||||
}
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* RESOURCE MANAGEMENT INTERFACE */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* The macro FT_COMPONENT is used in trace mode. It is an implicit */
|
||||
/* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log */
|
||||
/* messages during execution. */
|
||||
/* */
|
||||
#undef FT_COMPONENT
|
||||
#define FT_COMPONENT trace_io
|
||||
|
||||
/* We use the macro STREAM_FILE for convenience to extract the */
|
||||
/* system-specific stream handle from a given FreeType stream object */
|
||||
#define STREAM_FILE( stream ) ( (FILE*)stream->descriptor.pointer )
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Function> */
|
||||
/* ft_close_stream_by_munmap */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* The function to close a stream which is opened by mmap. */
|
||||
/* */
|
||||
/* <Input> */
|
||||
/* stream :: A pointer to the stream object. */
|
||||
/* */
|
||||
FT_CALLBACK_DEF( void )
|
||||
ft_close_stream_by_munmap( FT_Stream stream )
|
||||
{
|
||||
munmap( (MUNMAP_ARG_CAST)stream->descriptor.pointer, stream->size );
|
||||
|
||||
stream->descriptor.pointer = NULL;
|
||||
stream->size = 0;
|
||||
stream->base = 0;
|
||||
}
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Function> */
|
||||
/* ft_close_stream_by_free */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* The function to close a stream which is created by ft_alloc. */
|
||||
/* */
|
||||
/* <Input> */
|
||||
/* stream :: A pointer to the stream object. */
|
||||
/* */
|
||||
FT_CALLBACK_DEF( void )
|
||||
ft_close_stream_by_free( FT_Stream stream )
|
||||
{
|
||||
ft_free( NULL, stream->descriptor.pointer );
|
||||
|
||||
stream->descriptor.pointer = NULL;
|
||||
stream->size = 0;
|
||||
stream->base = 0;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftobjs.h */
|
||||
|
||||
FT_BASE_DEF( FT_Error )
|
||||
FT_Stream_Open( FT_Stream stream,
|
||||
const char* filepathname )
|
||||
{
|
||||
int file;
|
||||
struct stat stat_buf;
|
||||
|
||||
|
||||
if ( !stream )
|
||||
return FT_THROW( Invalid_Stream_Handle );
|
||||
|
||||
/* open the file */
|
||||
file = open( filepathname, O_RDONLY );
|
||||
if ( file < 0 )
|
||||
{
|
||||
FT_ERROR(( "FT_Stream_Open:" ));
|
||||
FT_ERROR(( " could not open `%s'\n", filepathname ));
|
||||
return FT_THROW( Cannot_Open_Resource );
|
||||
}
|
||||
|
||||
/* Here we ensure that a "fork" will _not_ duplicate */
|
||||
/* our opened input streams on Unix. This is critical */
|
||||
/* since it avoids some (possible) access control */
|
||||
/* issues and cleans up the kernel file table a bit. */
|
||||
/* */
|
||||
#ifdef F_SETFD
|
||||
#ifdef FD_CLOEXEC
|
||||
(void)fcntl( file, F_SETFD, FD_CLOEXEC );
|
||||
#else
|
||||
(void)fcntl( file, F_SETFD, 1 );
|
||||
#endif /* FD_CLOEXEC */
|
||||
#endif /* F_SETFD */
|
||||
|
||||
if ( fstat( file, &stat_buf ) < 0 )
|
||||
{
|
||||
FT_ERROR(( "FT_Stream_Open:" ));
|
||||
FT_ERROR(( " could not `fstat' file `%s'\n", filepathname ));
|
||||
goto Fail_Map;
|
||||
}
|
||||
|
||||
/* XXX: TODO -- real 64bit platform support */
|
||||
/* */
|
||||
/* `stream->size' is typedef'd to unsigned long (in `ftsystem.h'); */
|
||||
/* `stat_buf.st_size', however, is usually typedef'd to off_t */
|
||||
/* (in sys/stat.h). */
|
||||
/* On some platforms, the former is 32bit and the latter is 64bit. */
|
||||
/* To avoid overflow caused by fonts in huge files larger than */
|
||||
/* 2GB, do a test. Temporary fix proposed by Sean McBride. */
|
||||
/* */
|
||||
if ( stat_buf.st_size > LONG_MAX )
|
||||
{
|
||||
FT_ERROR(( "FT_Stream_Open: file is too big\n" ));
|
||||
goto Fail_Map;
|
||||
}
|
||||
else if ( stat_buf.st_size == 0 )
|
||||
{
|
||||
FT_ERROR(( "FT_Stream_Open: zero-length file\n" ));
|
||||
goto Fail_Map;
|
||||
}
|
||||
|
||||
/* This cast potentially truncates a 64bit to 32bit! */
|
||||
stream->size = (unsigned long)stat_buf.st_size;
|
||||
stream->pos = 0;
|
||||
stream->base = (unsigned char *)mmap( NULL,
|
||||
stream->size,
|
||||
PROT_READ,
|
||||
MAP_FILE | MAP_PRIVATE,
|
||||
file,
|
||||
0 );
|
||||
|
||||
/* on some RTOS, mmap might return 0 */
|
||||
if ( (long)stream->base != -1 && stream->base != NULL )
|
||||
stream->close = ft_close_stream_by_munmap;
|
||||
else
|
||||
{
|
||||
ssize_t total_read_count;
|
||||
|
||||
|
||||
FT_ERROR(( "FT_Stream_Open:" ));
|
||||
FT_ERROR(( " could not `mmap' file `%s'\n", filepathname ));
|
||||
|
||||
stream->base = (unsigned char*)ft_alloc( NULL, stream->size );
|
||||
|
||||
if ( !stream->base )
|
||||
{
|
||||
FT_ERROR(( "FT_Stream_Open:" ));
|
||||
FT_ERROR(( " could not `alloc' memory\n" ));
|
||||
goto Fail_Map;
|
||||
}
|
||||
|
||||
total_read_count = 0;
|
||||
do
|
||||
{
|
||||
ssize_t read_count;
|
||||
|
||||
|
||||
read_count = read( file,
|
||||
stream->base + total_read_count,
|
||||
stream->size - total_read_count );
|
||||
|
||||
if ( read_count <= 0 )
|
||||
{
|
||||
if ( read_count == -1 && errno == EINTR )
|
||||
continue;
|
||||
|
||||
FT_ERROR(( "FT_Stream_Open:" ));
|
||||
FT_ERROR(( " error while `read'ing file `%s'\n", filepathname ));
|
||||
goto Fail_Read;
|
||||
}
|
||||
|
||||
total_read_count += read_count;
|
||||
|
||||
} while ( (unsigned long)total_read_count != stream->size );
|
||||
|
||||
stream->close = ft_close_stream_by_free;
|
||||
}
|
||||
|
||||
close( file );
|
||||
|
||||
stream->descriptor.pointer = stream->base;
|
||||
stream->pathname.pointer = (char*)filepathname;
|
||||
|
||||
stream->read = 0;
|
||||
|
||||
FT_TRACE1(( "FT_Stream_Open:" ));
|
||||
FT_TRACE1(( " opened `%s' (%d bytes) successfully\n",
|
||||
filepathname, stream->size ));
|
||||
|
||||
return FT_Err_Ok;
|
||||
|
||||
Fail_Read:
|
||||
ft_free( NULL, stream->base );
|
||||
|
||||
Fail_Map:
|
||||
close( file );
|
||||
|
||||
stream->base = NULL;
|
||||
stream->size = 0;
|
||||
stream->pos = 0;
|
||||
|
||||
return FT_THROW( Cannot_Open_Stream );
|
||||
}
|
||||
|
||||
|
||||
#ifdef FT_DEBUG_MEMORY
|
||||
|
||||
extern FT_Int
|
||||
ft_mem_debug_init( FT_Memory memory );
|
||||
|
||||
extern void
|
||||
ft_mem_debug_done( FT_Memory memory );
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
/* documentation is in ftobjs.h */
|
||||
|
||||
FT_BASE_DEF( FT_Memory )
|
||||
FT_New_Memory( void )
|
||||
{
|
||||
FT_Memory memory;
|
||||
|
||||
|
||||
memory = (FT_Memory)malloc( sizeof ( *memory ) );
|
||||
if ( memory )
|
||||
{
|
||||
memory->user = 0;
|
||||
memory->alloc = ft_alloc;
|
||||
memory->realloc = ft_realloc;
|
||||
memory->free = ft_free;
|
||||
#ifdef FT_DEBUG_MEMORY
|
||||
ft_mem_debug_init( memory );
|
||||
#endif
|
||||
}
|
||||
|
||||
return memory;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftobjs.h */
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
FT_Done_Memory( FT_Memory memory )
|
||||
{
|
||||
#ifdef FT_DEBUG_MEMORY
|
||||
ft_mem_debug_done( memory );
|
||||
#endif
|
||||
memory->free( memory, memory );
|
||||
}
|
||||
|
||||
|
||||
/* END */
|
501
thirdparty/freetype/builds/unix/install-sh
vendored
Executable file
501
thirdparty/freetype/builds/unix/install-sh
vendored
Executable file
|
@ -0,0 +1,501 @@
|
|||
#!/bin/sh
|
||||
# install - install a program, script, or datafile
|
||||
|
||||
scriptversion=2013-12-25.23; # UTC
|
||||
|
||||
# This originates from X11R5 (mit/util/scripts/install.sh), which was
|
||||
# later released in X11R6 (xc/config/util/install.sh) with the
|
||||
# following copyright and license.
|
||||
#
|
||||
# Copyright (C) 1994 X Consortium
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to
|
||||
# deal in the Software without restriction, including without limitation the
|
||||
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
# sell copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in
|
||||
# all copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
|
||||
# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
#
|
||||
# Except as contained in this notice, the name of the X Consortium shall not
|
||||
# be used in advertising or otherwise to promote the sale, use or other deal-
|
||||
# ings in this Software without prior written authorization from the X Consor-
|
||||
# tium.
|
||||
#
|
||||
#
|
||||
# FSF changes to this file are in the public domain.
|
||||
#
|
||||
# Calling this script install-sh is preferred over install.sh, to prevent
|
||||
# 'make' implicit rules from creating a file called install from it
|
||||
# when there is no Makefile.
|
||||
#
|
||||
# This script is compatible with the BSD install script, but was written
|
||||
# from scratch.
|
||||
|
||||
tab=' '
|
||||
nl='
|
||||
'
|
||||
IFS=" $tab$nl"
|
||||
|
||||
# Set DOITPROG to "echo" to test this script.
|
||||
|
||||
doit=${DOITPROG-}
|
||||
doit_exec=${doit:-exec}
|
||||
|
||||
# Put in absolute file names if you don't have them in your path;
|
||||
# or use environment vars.
|
||||
|
||||
chgrpprog=${CHGRPPROG-chgrp}
|
||||
chmodprog=${CHMODPROG-chmod}
|
||||
chownprog=${CHOWNPROG-chown}
|
||||
cmpprog=${CMPPROG-cmp}
|
||||
cpprog=${CPPROG-cp}
|
||||
mkdirprog=${MKDIRPROG-mkdir}
|
||||
mvprog=${MVPROG-mv}
|
||||
rmprog=${RMPROG-rm}
|
||||
stripprog=${STRIPPROG-strip}
|
||||
|
||||
posix_mkdir=
|
||||
|
||||
# Desired mode of installed file.
|
||||
mode=0755
|
||||
|
||||
chgrpcmd=
|
||||
chmodcmd=$chmodprog
|
||||
chowncmd=
|
||||
mvcmd=$mvprog
|
||||
rmcmd="$rmprog -f"
|
||||
stripcmd=
|
||||
|
||||
src=
|
||||
dst=
|
||||
dir_arg=
|
||||
dst_arg=
|
||||
|
||||
copy_on_change=false
|
||||
is_target_a_directory=possibly
|
||||
|
||||
usage="\
|
||||
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
|
||||
or: $0 [OPTION]... SRCFILES... DIRECTORY
|
||||
or: $0 [OPTION]... -t DIRECTORY SRCFILES...
|
||||
or: $0 [OPTION]... -d DIRECTORIES...
|
||||
|
||||
In the 1st form, copy SRCFILE to DSTFILE.
|
||||
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
|
||||
In the 4th, create DIRECTORIES.
|
||||
|
||||
Options:
|
||||
--help display this help and exit.
|
||||
--version display version info and exit.
|
||||
|
||||
-c (ignored)
|
||||
-C install only if different (preserve the last data modification time)
|
||||
-d create directories instead of installing files.
|
||||
-g GROUP $chgrpprog installed files to GROUP.
|
||||
-m MODE $chmodprog installed files to MODE.
|
||||
-o USER $chownprog installed files to USER.
|
||||
-s $stripprog installed files.
|
||||
-t DIRECTORY install into DIRECTORY.
|
||||
-T report an error if DSTFILE is a directory.
|
||||
|
||||
Environment variables override the default commands:
|
||||
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
|
||||
RMPROG STRIPPROG
|
||||
"
|
||||
|
||||
while test $# -ne 0; do
|
||||
case $1 in
|
||||
-c) ;;
|
||||
|
||||
-C) copy_on_change=true;;
|
||||
|
||||
-d) dir_arg=true;;
|
||||
|
||||
-g) chgrpcmd="$chgrpprog $2"
|
||||
shift;;
|
||||
|
||||
--help) echo "$usage"; exit $?;;
|
||||
|
||||
-m) mode=$2
|
||||
case $mode in
|
||||
*' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)
|
||||
echo "$0: invalid mode: $mode" >&2
|
||||
exit 1;;
|
||||
esac
|
||||
shift;;
|
||||
|
||||
-o) chowncmd="$chownprog $2"
|
||||
shift;;
|
||||
|
||||
-s) stripcmd=$stripprog;;
|
||||
|
||||
-t)
|
||||
is_target_a_directory=always
|
||||
dst_arg=$2
|
||||
# Protect names problematic for 'test' and other utilities.
|
||||
case $dst_arg in
|
||||
-* | [=\(\)!]) dst_arg=./$dst_arg;;
|
||||
esac
|
||||
shift;;
|
||||
|
||||
-T) is_target_a_directory=never;;
|
||||
|
||||
--version) echo "$0 $scriptversion"; exit $?;;
|
||||
|
||||
--) shift
|
||||
break;;
|
||||
|
||||
-*) echo "$0: invalid option: $1" >&2
|
||||
exit 1;;
|
||||
|
||||
*) break;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
# We allow the use of options -d and -T together, by making -d
|
||||
# take the precedence; this is for compatibility with GNU install.
|
||||
|
||||
if test -n "$dir_arg"; then
|
||||
if test -n "$dst_arg"; then
|
||||
echo "$0: target directory not allowed when installing a directory." >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
|
||||
# When -d is used, all remaining arguments are directories to create.
|
||||
# When -t is used, the destination is already specified.
|
||||
# Otherwise, the last argument is the destination. Remove it from $@.
|
||||
for arg
|
||||
do
|
||||
if test -n "$dst_arg"; then
|
||||
# $@ is not empty: it contains at least $arg.
|
||||
set fnord "$@" "$dst_arg"
|
||||
shift # fnord
|
||||
fi
|
||||
shift # arg
|
||||
dst_arg=$arg
|
||||
# Protect names problematic for 'test' and other utilities.
|
||||
case $dst_arg in
|
||||
-* | [=\(\)!]) dst_arg=./$dst_arg;;
|
||||
esac
|
||||
done
|
||||
fi
|
||||
|
||||
if test $# -eq 0; then
|
||||
if test -z "$dir_arg"; then
|
||||
echo "$0: no input file specified." >&2
|
||||
exit 1
|
||||
fi
|
||||
# It's OK to call 'install-sh -d' without argument.
|
||||
# This can happen when creating conditional directories.
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if test -z "$dir_arg"; then
|
||||
if test $# -gt 1 || test "$is_target_a_directory" = always; then
|
||||
if test ! -d "$dst_arg"; then
|
||||
echo "$0: $dst_arg: Is not a directory." >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if test -z "$dir_arg"; then
|
||||
do_exit='(exit $ret); exit $ret'
|
||||
trap "ret=129; $do_exit" 1
|
||||
trap "ret=130; $do_exit" 2
|
||||
trap "ret=141; $do_exit" 13
|
||||
trap "ret=143; $do_exit" 15
|
||||
|
||||
# Set umask so as not to create temps with too-generous modes.
|
||||
# However, 'strip' requires both read and write access to temps.
|
||||
case $mode in
|
||||
# Optimize common cases.
|
||||
*644) cp_umask=133;;
|
||||
*755) cp_umask=22;;
|
||||
|
||||
*[0-7])
|
||||
if test -z "$stripcmd"; then
|
||||
u_plus_rw=
|
||||
else
|
||||
u_plus_rw='% 200'
|
||||
fi
|
||||
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
|
||||
*)
|
||||
if test -z "$stripcmd"; then
|
||||
u_plus_rw=
|
||||
else
|
||||
u_plus_rw=,u+rw
|
||||
fi
|
||||
cp_umask=$mode$u_plus_rw;;
|
||||
esac
|
||||
fi
|
||||
|
||||
for src
|
||||
do
|
||||
# Protect names problematic for 'test' and other utilities.
|
||||
case $src in
|
||||
-* | [=\(\)!]) src=./$src;;
|
||||
esac
|
||||
|
||||
if test -n "$dir_arg"; then
|
||||
dst=$src
|
||||
dstdir=$dst
|
||||
test -d "$dstdir"
|
||||
dstdir_status=$?
|
||||
else
|
||||
|
||||
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
|
||||
# might cause directories to be created, which would be especially bad
|
||||
# if $src (and thus $dsttmp) contains '*'.
|
||||
if test ! -f "$src" && test ! -d "$src"; then
|
||||
echo "$0: $src does not exist." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if test -z "$dst_arg"; then
|
||||
echo "$0: no destination specified." >&2
|
||||
exit 1
|
||||
fi
|
||||
dst=$dst_arg
|
||||
|
||||
# If destination is a directory, append the input filename; won't work
|
||||
# if double slashes aren't ignored.
|
||||
if test -d "$dst"; then
|
||||
if test "$is_target_a_directory" = never; then
|
||||
echo "$0: $dst_arg: Is a directory" >&2
|
||||
exit 1
|
||||
fi
|
||||
dstdir=$dst
|
||||
dst=$dstdir/`basename "$src"`
|
||||
dstdir_status=0
|
||||
else
|
||||
dstdir=`dirname "$dst"`
|
||||
test -d "$dstdir"
|
||||
dstdir_status=$?
|
||||
fi
|
||||
fi
|
||||
|
||||
obsolete_mkdir_used=false
|
||||
|
||||
if test $dstdir_status != 0; then
|
||||
case $posix_mkdir in
|
||||
'')
|
||||
# Create intermediate dirs using mode 755 as modified by the umask.
|
||||
# This is like FreeBSD 'install' as of 1997-10-28.
|
||||
umask=`umask`
|
||||
case $stripcmd.$umask in
|
||||
# Optimize common cases.
|
||||
*[2367][2367]) mkdir_umask=$umask;;
|
||||
.*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
|
||||
|
||||
*[0-7])
|
||||
mkdir_umask=`expr $umask + 22 \
|
||||
- $umask % 100 % 40 + $umask % 20 \
|
||||
- $umask % 10 % 4 + $umask % 2
|
||||
`;;
|
||||
*) mkdir_umask=$umask,go-w;;
|
||||
esac
|
||||
|
||||
# With -d, create the new directory with the user-specified mode.
|
||||
# Otherwise, rely on $mkdir_umask.
|
||||
if test -n "$dir_arg"; then
|
||||
mkdir_mode=-m$mode
|
||||
else
|
||||
mkdir_mode=
|
||||
fi
|
||||
|
||||
posix_mkdir=false
|
||||
case $umask in
|
||||
*[123567][0-7][0-7])
|
||||
# POSIX mkdir -p sets u+wx bits regardless of umask, which
|
||||
# is incompatible with FreeBSD 'install' when (umask & 300) != 0.
|
||||
;;
|
||||
*)
|
||||
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
|
||||
trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
|
||||
|
||||
if (umask $mkdir_umask &&
|
||||
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
|
||||
then
|
||||
if test -z "$dir_arg" || {
|
||||
# Check for POSIX incompatibilities with -m.
|
||||
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
|
||||
# other-writable bit of parent directory when it shouldn't.
|
||||
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
|
||||
ls_ld_tmpdir=`ls -ld "$tmpdir"`
|
||||
case $ls_ld_tmpdir in
|
||||
d????-?r-*) different_mode=700;;
|
||||
d????-?--*) different_mode=755;;
|
||||
*) false;;
|
||||
esac &&
|
||||
$mkdirprog -m$different_mode -p -- "$tmpdir" && {
|
||||
ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
|
||||
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
|
||||
}
|
||||
}
|
||||
then posix_mkdir=:
|
||||
fi
|
||||
rmdir "$tmpdir/d" "$tmpdir"
|
||||
else
|
||||
# Remove any dirs left behind by ancient mkdir implementations.
|
||||
rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
|
||||
fi
|
||||
trap '' 0;;
|
||||
esac;;
|
||||
esac
|
||||
|
||||
if
|
||||
$posix_mkdir && (
|
||||
umask $mkdir_umask &&
|
||||
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
|
||||
)
|
||||
then :
|
||||
else
|
||||
|
||||
# The umask is ridiculous, or mkdir does not conform to POSIX,
|
||||
# or it failed possibly due to a race condition. Create the
|
||||
# directory the slow way, step by step, checking for races as we go.
|
||||
|
||||
case $dstdir in
|
||||
/*) prefix='/';;
|
||||
[-=\(\)!]*) prefix='./';;
|
||||
*) prefix='';;
|
||||
esac
|
||||
|
||||
oIFS=$IFS
|
||||
IFS=/
|
||||
set -f
|
||||
set fnord $dstdir
|
||||
shift
|
||||
set +f
|
||||
IFS=$oIFS
|
||||
|
||||
prefixes=
|
||||
|
||||
for d
|
||||
do
|
||||
test X"$d" = X && continue
|
||||
|
||||
prefix=$prefix$d
|
||||
if test -d "$prefix"; then
|
||||
prefixes=
|
||||
else
|
||||
if $posix_mkdir; then
|
||||
(umask=$mkdir_umask &&
|
||||
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
|
||||
# Don't fail if two instances are running concurrently.
|
||||
test -d "$prefix" || exit 1
|
||||
else
|
||||
case $prefix in
|
||||
*\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
|
||||
*) qprefix=$prefix;;
|
||||
esac
|
||||
prefixes="$prefixes '$qprefix'"
|
||||
fi
|
||||
fi
|
||||
prefix=$prefix/
|
||||
done
|
||||
|
||||
if test -n "$prefixes"; then
|
||||
# Don't fail if two instances are running concurrently.
|
||||
(umask $mkdir_umask &&
|
||||
eval "\$doit_exec \$mkdirprog $prefixes") ||
|
||||
test -d "$dstdir" || exit 1
|
||||
obsolete_mkdir_used=true
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if test -n "$dir_arg"; then
|
||||
{ test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
|
||||
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
|
||||
{ test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
|
||||
test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
|
||||
else
|
||||
|
||||
# Make a couple of temp file names in the proper directory.
|
||||
dsttmp=$dstdir/_inst.$$_
|
||||
rmtmp=$dstdir/_rm.$$_
|
||||
|
||||
# Trap to clean up those temp files at exit.
|
||||
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
|
||||
|
||||
# Copy the file name to the temp name.
|
||||
(umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
|
||||
|
||||
# and set any options; do chmod last to preserve setuid bits.
|
||||
#
|
||||
# If any of these fail, we abort the whole thing. If we want to
|
||||
# ignore errors from any of these, just make sure not to ignore
|
||||
# errors from the above "$doit $cpprog $src $dsttmp" command.
|
||||
#
|
||||
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
|
||||
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
|
||||
{ test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
|
||||
{ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
|
||||
|
||||
# If -C, don't bother to copy if it wouldn't change the file.
|
||||
if $copy_on_change &&
|
||||
old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
|
||||
new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
|
||||
set -f &&
|
||||
set X $old && old=:$2:$4:$5:$6 &&
|
||||
set X $new && new=:$2:$4:$5:$6 &&
|
||||
set +f &&
|
||||
test "$old" = "$new" &&
|
||||
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
|
||||
then
|
||||
rm -f "$dsttmp"
|
||||
else
|
||||
# Rename the file to the real destination.
|
||||
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
|
||||
|
||||
# The rename failed, perhaps because mv can't rename something else
|
||||
# to itself, or perhaps because mv is so ancient that it does not
|
||||
# support -f.
|
||||
{
|
||||
# Now remove or move aside any old file at destination location.
|
||||
# We try this two ways since rm can't unlink itself on some
|
||||
# systems and the destination file might be busy for other
|
||||
# reasons. In this case, the final cleanup might fail but the new
|
||||
# file should still install successfully.
|
||||
{
|
||||
test ! -f "$dst" ||
|
||||
$doit $rmcmd -f "$dst" 2>/dev/null ||
|
||||
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
|
||||
{ $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
|
||||
} ||
|
||||
{ echo "$0: cannot unlink or rename $dst" >&2
|
||||
(exit 1); exit 1
|
||||
}
|
||||
} &&
|
||||
|
||||
# Now rename the file to the real destination.
|
||||
$doit $mvcmd "$dsttmp" "$dst"
|
||||
}
|
||||
fi || exit 1
|
||||
|
||||
trap '' 0
|
||||
fi
|
||||
done
|
||||
|
||||
# Local variables:
|
||||
# eval: (add-hook 'write-file-hooks 'time-stamp)
|
||||
# time-stamp-start: "scriptversion="
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-time-zone: "UTC"
|
||||
# time-stamp-end: "; # UTC"
|
||||
# End:
|
92
thirdparty/freetype/builds/unix/install.mk
vendored
Normal file
92
thirdparty/freetype/builds/unix/install.mk
vendored
Normal file
|
@ -0,0 +1,92 @@
|
|||
#
|
||||
# FreeType 2 installation instructions for Unix systems
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
# If you say
|
||||
#
|
||||
# make install DESTDIR=/tmp/somewhere/
|
||||
#
|
||||
# don't forget the final backslash (this command is mainly for package
|
||||
# maintainers).
|
||||
|
||||
|
||||
.PHONY: install uninstall check
|
||||
|
||||
# Unix installation and deinstallation targets.
|
||||
#
|
||||
# Note that we remove any data found in `$(includedir)/freetype2' before
|
||||
# installing new files to avoid interferences with files installed by
|
||||
# previous FreeType versions (which use slightly different locations).
|
||||
#
|
||||
install: $(PROJECT_LIBRARY)
|
||||
-$(DELDIR) $(DESTDIR)$(includedir)/freetype2
|
||||
$(MKINSTALLDIRS) $(DESTDIR)$(libdir) \
|
||||
$(DESTDIR)$(libdir)/pkgconfig \
|
||||
$(DESTDIR)$(includedir)/freetype2/freetype/config \
|
||||
$(DESTDIR)$(bindir) \
|
||||
$(DESTDIR)$(datadir)/aclocal \
|
||||
$(DESTDIR)$(mandir)/man1
|
||||
$(LIBTOOL) --mode=install $(INSTALL) \
|
||||
$(PROJECT_LIBRARY) $(DESTDIR)$(libdir)
|
||||
-for P in $(PUBLIC_H) ; do \
|
||||
$(INSTALL_DATA) \
|
||||
$$P $(DESTDIR)$(includedir)/freetype2/freetype ; \
|
||||
done
|
||||
-for P in $(CONFIG_H) ; do \
|
||||
$(INSTALL_DATA) \
|
||||
$$P $(DESTDIR)$(includedir)/freetype2/freetype/config ; \
|
||||
done
|
||||
$(INSTALL_DATA) $(TOP_DIR)/include/ft2build.h \
|
||||
$(DESTDIR)$(includedir)/freetype2/ft2build.h
|
||||
$(INSTALL_DATA) $(OBJ_BUILD)/ftconfig.h \
|
||||
$(DESTDIR)$(includedir)/freetype2/freetype/config/ftconfig.h
|
||||
$(INSTALL_DATA) $(OBJ_DIR)/ftmodule.h \
|
||||
$(DESTDIR)$(includedir)/freetype2/freetype/config/ftmodule.h
|
||||
$(INSTALL_SCRIPT) -m 755 $(OBJ_BUILD)/freetype-config \
|
||||
$(DESTDIR)$(bindir)/freetype-config
|
||||
$(INSTALL_SCRIPT) -m 644 $(BUILD_DIR)/freetype2.m4 \
|
||||
$(DESTDIR)$(datadir)/aclocal/freetype2.m4
|
||||
$(INSTALL_SCRIPT) -m 644 $(OBJ_BUILD)/freetype2.pc \
|
||||
$(DESTDIR)$(libdir)/pkgconfig/freetype2.pc
|
||||
$(INSTALL_DATA) $(TOP_DIR)/docs/freetype-config.1 \
|
||||
$(DESTDIR)$(mandir)/man1/freetype-config.1
|
||||
|
||||
|
||||
uninstall:
|
||||
-$(LIBTOOL) --mode=uninstall $(RM) $(DESTDIR)$(libdir)/$(LIBRARY).$A
|
||||
-$(DELDIR) $(DESTDIR)$(includedir)/freetype2
|
||||
-$(DELETE) $(DESTDIR)$(bindir)/freetype-config
|
||||
-$(DELETE) $(DESTDIR)$(datadir)/aclocal/freetype2.m4
|
||||
-$(DELETE) $(DESTDIR)$(libdir)/pkgconfig/freetype2.pc
|
||||
-$(DELETE) $(DESTDIR)$(mandir)/man1/freetype-config.1
|
||||
|
||||
|
||||
check:
|
||||
@echo There is no validation suite for this package.
|
||||
|
||||
|
||||
.PHONY: clean_project_unix distclean_project_unix
|
||||
|
||||
# Unix cleaning and distclean rules.
|
||||
#
|
||||
clean_project_unix:
|
||||
-$(DELETE) $(BASE_OBJECTS) $(OBJ_M) $(OBJ_S)
|
||||
-$(DELETE) $(patsubst %.$O,%.$(SO),$(BASE_OBJECTS) $(OBJ_M) $(OBJ_S)) \
|
||||
$(CLEAN)
|
||||
|
||||
distclean_project_unix: clean_project_unix
|
||||
-$(DELETE) $(PROJECT_LIBRARY)
|
||||
-$(DELDIR) $(OBJ_DIR)/.libs
|
||||
-$(DELETE) *.orig *~ core *.core $(DISTCLEAN)
|
||||
|
||||
# EOF
|
11147
thirdparty/freetype/builds/unix/ltmain.sh
vendored
Normal file
11147
thirdparty/freetype/builds/unix/ltmain.sh
vendored
Normal file
File diff suppressed because it is too large
Load diff
199
thirdparty/freetype/builds/unix/pkg.m4
vendored
Normal file
199
thirdparty/freetype/builds/unix/pkg.m4
vendored
Normal file
|
@ -0,0 +1,199 @@
|
|||
# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
|
||||
# serial 1 (pkg-config-0.24)
|
||||
#
|
||||
# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
# General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# As a special exception to the GNU General Public License, if you
|
||||
# distribute this file as part of a program that contains a
|
||||
# configuration script generated by Autoconf, you may include it under
|
||||
# the same distribution terms that you use for the rest of that program.
|
||||
|
||||
# PKG_PROG_PKG_CONFIG([MIN-VERSION])
|
||||
# ----------------------------------
|
||||
AC_DEFUN([PKG_PROG_PKG_CONFIG],
|
||||
[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
|
||||
m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
|
||||
m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
|
||||
AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
|
||||
AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
|
||||
AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
|
||||
|
||||
if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
|
||||
AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
|
||||
fi
|
||||
if test -n "$PKG_CONFIG"; then
|
||||
_pkg_min_version=m4_default([$1], [0.9.0])
|
||||
AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
|
||||
if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
PKG_CONFIG=""
|
||||
fi
|
||||
fi[]dnl
|
||||
])# PKG_PROG_PKG_CONFIG
|
||||
|
||||
# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
|
||||
#
|
||||
# Check to see whether a particular set of modules exists. Similar
|
||||
# to PKG_CHECK_MODULES(), but does not set variables or print errors.
|
||||
#
|
||||
# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
|
||||
# only at the first occurence in configure.ac, so if the first place
|
||||
# it's called might be skipped (such as if it is within an "if", you
|
||||
# have to call PKG_CHECK_EXISTS manually
|
||||
# --------------------------------------------------------------
|
||||
AC_DEFUN([PKG_CHECK_EXISTS],
|
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
|
||||
if test -n "$PKG_CONFIG" && \
|
||||
AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
|
||||
m4_default([$2], [:])
|
||||
m4_ifvaln([$3], [else
|
||||
$3])dnl
|
||||
fi])
|
||||
|
||||
# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
|
||||
# ---------------------------------------------
|
||||
m4_define([_PKG_CONFIG],
|
||||
[if test -n "$$1"; then
|
||||
pkg_cv_[]$1="$$1"
|
||||
elif test -n "$PKG_CONFIG"; then
|
||||
PKG_CHECK_EXISTS([$3],
|
||||
[pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
|
||||
test "x$?" != "x0" && pkg_failed=yes ],
|
||||
[pkg_failed=yes])
|
||||
else
|
||||
pkg_failed=untried
|
||||
fi[]dnl
|
||||
])# _PKG_CONFIG
|
||||
|
||||
# _PKG_SHORT_ERRORS_SUPPORTED
|
||||
# -----------------------------
|
||||
AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
|
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
|
||||
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
|
||||
_pkg_short_errors_supported=yes
|
||||
else
|
||||
_pkg_short_errors_supported=no
|
||||
fi[]dnl
|
||||
])# _PKG_SHORT_ERRORS_SUPPORTED
|
||||
|
||||
|
||||
# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
|
||||
# [ACTION-IF-NOT-FOUND])
|
||||
#
|
||||
#
|
||||
# Note that if there is a possibility the first call to
|
||||
# PKG_CHECK_MODULES might not happen, you should be sure to include an
|
||||
# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
|
||||
#
|
||||
#
|
||||
# --------------------------------------------------------------
|
||||
AC_DEFUN([PKG_CHECK_MODULES],
|
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
|
||||
AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
|
||||
AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
|
||||
|
||||
pkg_failed=no
|
||||
AC_MSG_CHECKING([for $1])
|
||||
|
||||
_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
|
||||
_PKG_CONFIG([$1][_LIBS], [libs], [$2])
|
||||
|
||||
m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
|
||||
and $1[]_LIBS to avoid the need to call pkg-config.
|
||||
See the pkg-config man page for more details.])
|
||||
|
||||
if test $pkg_failed = yes; then
|
||||
AC_MSG_RESULT([no])
|
||||
_PKG_SHORT_ERRORS_SUPPORTED
|
||||
if test $_pkg_short_errors_supported = yes; then
|
||||
$1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
|
||||
else
|
||||
$1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
|
||||
fi
|
||||
# Put the nasty error message in config.log where it belongs
|
||||
echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
|
||||
|
||||
m4_default([$4], [AC_MSG_ERROR(
|
||||
[Package requirements ($2) were not met:
|
||||
|
||||
$$1_PKG_ERRORS
|
||||
|
||||
Consider adjusting the PKG_CONFIG_PATH environment variable if you
|
||||
installed software in a non-standard prefix.
|
||||
|
||||
_PKG_TEXT])[]dnl
|
||||
])
|
||||
elif test $pkg_failed = untried; then
|
||||
AC_MSG_RESULT([no])
|
||||
m4_default([$4], [AC_MSG_FAILURE(
|
||||
[The pkg-config script could not be found or is too old. Make sure it
|
||||
is in your PATH or set the PKG_CONFIG environment variable to the full
|
||||
path to pkg-config.
|
||||
|
||||
_PKG_TEXT
|
||||
|
||||
To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
|
||||
])
|
||||
else
|
||||
$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
|
||||
$1[]_LIBS=$pkg_cv_[]$1[]_LIBS
|
||||
AC_MSG_RESULT([yes])
|
||||
$3
|
||||
fi[]dnl
|
||||
])# PKG_CHECK_MODULES
|
||||
|
||||
|
||||
# PKG_INSTALLDIR(DIRECTORY)
|
||||
# -------------------------
|
||||
# Substitutes the variable pkgconfigdir as the location where a module
|
||||
# should install pkg-config .pc files. By default the directory is
|
||||
# $libdir/pkgconfig, but the default can be changed by passing
|
||||
# DIRECTORY. The user can override through the --with-pkgconfigdir
|
||||
# parameter.
|
||||
AC_DEFUN([PKG_INSTALLDIR],
|
||||
[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
|
||||
m4_pushdef([pkg_description],
|
||||
[pkg-config installation directory @<:@]pkg_default[@:>@])
|
||||
AC_ARG_WITH([pkgconfigdir],
|
||||
[AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],,
|
||||
[with_pkgconfigdir=]pkg_default)
|
||||
AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
|
||||
m4_popdef([pkg_default])
|
||||
m4_popdef([pkg_description])
|
||||
]) dnl PKG_INSTALLDIR
|
||||
|
||||
|
||||
# PKG_NOARCH_INSTALLDIR(DIRECTORY)
|
||||
# -------------------------
|
||||
# Substitutes the variable noarch_pkgconfigdir as the location where a
|
||||
# module should install arch-independent pkg-config .pc files. By
|
||||
# default the directory is $datadir/pkgconfig, but the default can be
|
||||
# changed by passing DIRECTORY. The user can override through the
|
||||
# --with-noarch-pkgconfigdir parameter.
|
||||
AC_DEFUN([PKG_NOARCH_INSTALLDIR],
|
||||
[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
|
||||
m4_pushdef([pkg_description],
|
||||
[pkg-config arch-independent installation directory @<:@]pkg_default[@:>@])
|
||||
AC_ARG_WITH([noarch-pkgconfigdir],
|
||||
[AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],,
|
||||
[with_noarch_pkgconfigdir=]pkg_default)
|
||||
AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
|
||||
m4_popdef([pkg_default])
|
||||
m4_popdef([pkg_description])
|
||||
]) dnl PKG_NOARCH_INSTALLDIR
|
114
thirdparty/freetype/builds/unix/unix-cc.in
vendored
Normal file
114
thirdparty/freetype/builds/unix/unix-cc.in
vendored
Normal file
|
@ -0,0 +1,114 @@
|
|||
#
|
||||
# FreeType 2 template for Unix-specific compiler definitions
|
||||
#
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
CC := @CC@
|
||||
COMPILER_SEP := $(SEP)
|
||||
FT_LIBTOOL_DIR ?= $(BUILD_DIR)
|
||||
|
||||
LIBTOOL := $(FT_LIBTOOL_DIR)/libtool
|
||||
|
||||
|
||||
# The object file extension (for standard and static libraries). This can be
|
||||
# .o, .tco, .obj, etc., depending on the platform.
|
||||
#
|
||||
O := lo
|
||||
SO := o
|
||||
|
||||
|
||||
# The executable file extension. Although most Unix platforms use no
|
||||
# extension, we copy the extension detected by autoconf. Useful for cross
|
||||
# building on Unix systems for non-Unix systems.
|
||||
#
|
||||
E := @EXEEXT@
|
||||
|
||||
|
||||
# The library file extension (for standard and static libraries). This can
|
||||
# be .a, .lib, etc., depending on the platform.
|
||||
#
|
||||
A := la
|
||||
SA := a
|
||||
|
||||
|
||||
# The name of the final library file. Note that the DOS-specific Makefile
|
||||
# uses a shorter (8.3) name.
|
||||
#
|
||||
LIBRARY := lib$(PROJECT)
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := -I
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := -D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L := -l
|
||||
|
||||
|
||||
# Target flag.
|
||||
#
|
||||
T := -o$(space)
|
||||
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||
# ANSI compliance.
|
||||
#
|
||||
# We use our own FreeType configuration file.
|
||||
#
|
||||
CPPFLAGS := @CPPFLAGS@
|
||||
CFLAGS := -c @XX_CFLAGS@ @CFLAGS@ -DFT_CONFIG_CONFIG_H="<ftconfig.h>"
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
ANSIFLAGS := @XX_ANSIFLAGS@
|
||||
|
||||
# C compiler to use -- we use libtool!
|
||||
#
|
||||
#
|
||||
CCraw := $(CC)
|
||||
CC := $(LIBTOOL) --mode=compile $(CCraw)
|
||||
|
||||
# Linker flags.
|
||||
#
|
||||
LDFLAGS := @LDFLAGS@
|
||||
|
||||
|
||||
# export symbols
|
||||
#
|
||||
CCraw_build := @CC_BUILD@ # native CC of building system
|
||||
E_BUILD := @EXEEXT_BUILD@ # extension for exexutable on building system
|
||||
EXPORTS_LIST := $(OBJ_DIR)/ftexport.sym
|
||||
CCexe := $(CCraw_build) # used to compile `apinames' only
|
||||
|
||||
|
||||
# Library linking
|
||||
#
|
||||
LINK_LIBRARY = $(LIBTOOL) --mode=link $(CCraw) -o $@ $(OBJECTS_LIST) \
|
||||
-rpath $(libdir) -version-info $(version_info) \
|
||||
$(LDFLAGS) -no-undefined \
|
||||
# -export-symbols $(EXPORTS_LIST)
|
||||
|
||||
# EOF
|
148
thirdparty/freetype/builds/unix/unix-def.in
vendored
Normal file
148
thirdparty/freetype/builds/unix/unix-def.in
vendored
Normal file
|
@ -0,0 +1,148 @@
|
|||
#
|
||||
# FreeType 2 configuration rules templates for Unix + configure
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
SHELL := @SHELL@
|
||||
|
||||
TOP_DIR := $(shell cd $(TOP_DIR); pwd)
|
||||
|
||||
DELETE := rm -f
|
||||
DELDIR := rm -rf
|
||||
CAT := cat
|
||||
SEP := /
|
||||
|
||||
# this is used for `make distclean' and `make install'
|
||||
OBJ_BUILD ?= $(BUILD_DIR)
|
||||
|
||||
# don't use `:=' here since the path stuff will be included after this file
|
||||
#
|
||||
FTSYS_SRC = @FTSYS_SRC@
|
||||
|
||||
INSTALL := @INSTALL@
|
||||
INSTALL_DATA := @INSTALL_DATA@
|
||||
INSTALL_PROGRAM := @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT := @INSTALL_SCRIPT@
|
||||
MKINSTALLDIRS := @MKDIR_P@
|
||||
|
||||
CLEAN += $(OBJ_BUILD)/freetype-config \
|
||||
$(OBJ_BUILD)/freetype2.pc
|
||||
|
||||
DISTCLEAN += $(OBJ_BUILD)/config.cache \
|
||||
$(OBJ_BUILD)/config.log \
|
||||
$(OBJ_BUILD)/config.status \
|
||||
$(OBJ_BUILD)/unix-def.mk \
|
||||
$(OBJ_BUILD)/unix-cc.mk \
|
||||
$(OBJ_BUILD)/ftconfig.h \
|
||||
$(LIBTOOL) \
|
||||
$(OBJ_BUILD)/Makefile
|
||||
|
||||
|
||||
# Standard installation variables.
|
||||
#
|
||||
prefix := @prefix@
|
||||
exec_prefix := @exec_prefix@
|
||||
libdir := @libdir@
|
||||
bindir := @bindir@
|
||||
includedir := @includedir@
|
||||
datarootdir := @datarootdir@
|
||||
datadir := @datadir@
|
||||
mandir := @mandir@
|
||||
|
||||
version_info := @version_info@
|
||||
|
||||
# Variables needed for `freetype-config' and `freetype.pc'.
|
||||
#
|
||||
REQUIRES_PRIVATE := @REQUIRES_PRIVATE@
|
||||
LIBS_PRIVATE := @LIBS_PRIVATE@
|
||||
LIBSSTATIC_CONFIG := @LIBSSTATIC_CONFIG@
|
||||
build_libtool_libs := @build_libtool_libs@
|
||||
ft_version := @ft_version@
|
||||
|
||||
# The directory where all library files are placed.
|
||||
#
|
||||
# By default, this is the same as $(OBJ_DIR); however, this can be changed
|
||||
# to suit particular needs.
|
||||
#
|
||||
LIB_DIR := $(OBJ_DIR)
|
||||
|
||||
# The BASE_SRC macro lists all source files that should be included in
|
||||
# src/base/ftbase.c. When configure sets up CFLAGS to build ftmac.c,
|
||||
# ftmac.c should be added to BASE_SRC.
|
||||
ftmac_c := @ftmac_c@
|
||||
|
||||
# The SYSTEM_ZLIB macro is defined if the user wishes to link dynamically
|
||||
# with its system wide zlib. If SYSTEM_ZLIB is 'yes', the zlib part of the
|
||||
# ftgzip module is not compiled in.
|
||||
SYSTEM_ZLIB := @SYSTEM_ZLIB@
|
||||
|
||||
|
||||
# The NO_OUTPUT macro is appended to command lines in order to ignore
|
||||
# the output of some programs.
|
||||
#
|
||||
NO_OUTPUT := 2> /dev/null
|
||||
|
||||
|
||||
# To support calls like
|
||||
#
|
||||
# configure --includedir='${libdir}'/freetype2/include
|
||||
#
|
||||
# we generate `freetype-config' and `freetype.pc' at compile time so that
|
||||
# those variables are properly expanded.
|
||||
|
||||
$(OBJ_BUILD)/freetype-config: $(TOP_DIR)/builds/unix/freetype-config.in
|
||||
rm -f $@ $@.tmp
|
||||
sed -e 's|%LIBSSTATIC_CONFIG%|$(LIBSSTATIC_CONFIG)|' \
|
||||
-e 's|%build_libtool_libs%|$(build_libtool_libs)|' \
|
||||
-e 's|%exec_prefix%|$(exec_prefix)|' \
|
||||
-e 's|%ft_version%|$(ft_version)|' \
|
||||
-e 's|%includedir%|$(includedir)|' \
|
||||
-e 's|%libdir%|$(libdir)|' \
|
||||
-e 's|%prefix%|$(prefix)|' \
|
||||
$< \
|
||||
> $@.tmp
|
||||
chmod +x $@.tmp
|
||||
chmod a-w $@.tmp
|
||||
mv $@.tmp $@
|
||||
|
||||
# To support directory names with spaces (as might easily happen on Windows
|
||||
# platforms), the right solution would be to surround the pkg-variables in
|
||||
# `freetype2.pc' with double quotes. However, doing so ironically disables
|
||||
# the prefix override mechanism especially written for Windows. This is a
|
||||
# bug in pkg-config version 0.28 and earlier.
|
||||
#
|
||||
# For this reason, we escape spaces with backslashes.
|
||||
|
||||
exec_prefix_x := $(subst $(space),\\$(space),$(exec_prefix))
|
||||
includedir_x := $(subst $(space),\\$(space),$(includedir))
|
||||
libdir_x := $(subst $(space),\\$(space),$(libdir))
|
||||
prefix_x := $(subst $(space),\\$(space),$(prefix))
|
||||
|
||||
$(OBJ_BUILD)/freetype2.pc: $(TOP_DIR)/builds/unix/freetype2.in
|
||||
rm -f $@ $@.tmp
|
||||
sed -e 's|%REQUIRES_PRIVATE%|$(REQUIRES_PRIVATE)|' \
|
||||
-e 's|%LIBS_PRIVATE%|$(LIBS_PRIVATE)|' \
|
||||
-e 's|%build_libtool_libs%|$(build_libtool_libs)|' \
|
||||
-e 's|%exec_prefix%|$(exec_prefix_x)|' \
|
||||
-e 's|%ft_version%|$(ft_version)|' \
|
||||
-e 's|%includedir%|$(includedir_x)|' \
|
||||
-e 's|%libdir%|$(libdir_x)|' \
|
||||
-e 's|%prefix%|$(prefix_x)|' \
|
||||
$< \
|
||||
> $@.tmp
|
||||
chmod a-w $@.tmp
|
||||
mv $@.tmp $@
|
||||
|
||||
all: $(OBJ_BUILD)/freetype-config \
|
||||
$(OBJ_BUILD)/freetype2.pc
|
||||
|
||||
# EOF
|
26
thirdparty/freetype/builds/unix/unix-dev.mk
vendored
Normal file
26
thirdparty/freetype/builds/unix/unix-dev.mk
vendored
Normal file
|
@ -0,0 +1,26 @@
|
|||
#
|
||||
# FreeType 2 Configuration rules for Unix + GCC
|
||||
#
|
||||
# Development version without optimizations & libtool
|
||||
# and no installation.
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
DEVEL_DIR := $(TOP_DIR)/devel
|
||||
|
||||
include $(TOP_DIR)/builds/unix/unixddef.mk
|
||||
include $(TOP_DIR)/builds/compiler/gcc-dev.mk
|
||||
include $(TOP_DIR)/builds/link_std.mk
|
||||
|
||||
|
||||
# EOF
|
24
thirdparty/freetype/builds/unix/unix-lcc.mk
vendored
Normal file
24
thirdparty/freetype/builds/unix/unix-lcc.mk
vendored
Normal file
|
@ -0,0 +1,24 @@
|
|||
#
|
||||
# FreeType 2 Configuration rules for Unix + LCC
|
||||
#
|
||||
# Development version without optimizations & libtool
|
||||
# and no installation.
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
include $(TOP_DIR)/builds/unix/unixddef.mk
|
||||
include $(TOP_DIR)/builds/compiler/unix-lcc.mk
|
||||
include $(TOP_DIR)/builds/link_std.mk
|
||||
|
||||
|
||||
# EOF
|
62
thirdparty/freetype/builds/unix/unix.mk
vendored
Normal file
62
thirdparty/freetype/builds/unix/unix.mk
vendored
Normal file
|
@ -0,0 +1,62 @@
|
|||
#
|
||||
# FreeType 2 configuration rules for UNIX platforms
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
# We need these declarations here since unix-def.mk is a generated file.
|
||||
BUILD_DIR := $(TOP_DIR)/builds/unix
|
||||
PLATFORM := unix
|
||||
|
||||
have_mk := $(wildcard $(OBJ_DIR)/unix-def.mk)
|
||||
ifneq ($(have_mk),)
|
||||
# We are building FreeType 2 not in the src tree.
|
||||
include $(OBJ_DIR)/unix-def.mk
|
||||
include $(OBJ_DIR)/unix-cc.mk
|
||||
else
|
||||
include $(BUILD_DIR)/unix-def.mk
|
||||
include $(BUILD_DIR)/unix-cc.mk
|
||||
endif
|
||||
|
||||
ifdef BUILD_PROJECT
|
||||
|
||||
.PHONY: clean_project distclean_project
|
||||
|
||||
# Now include the main sub-makefile. It contains all the rules used to
|
||||
# build the library with the previous variables defined.
|
||||
#
|
||||
include $(TOP_DIR)/builds/$(PROJECT).mk
|
||||
|
||||
|
||||
# The cleanup targets.
|
||||
#
|
||||
clean_project: clean_project_unix
|
||||
distclean_project: distclean_project_unix
|
||||
|
||||
|
||||
# This final rule is used to link all object files into a single library.
|
||||
# It is part of the system-specific sub-Makefile because not all
|
||||
# librarians accept a simple syntax like
|
||||
#
|
||||
# librarian library_file {list of object files}
|
||||
#
|
||||
$(PROJECT_LIBRARY): $(OBJECTS_LIST)
|
||||
ifdef CLEAN_LIBRARY
|
||||
-$(CLEAN_LIBRARY) $(NO_OUTPUT)
|
||||
endif
|
||||
$(LINK_LIBRARY)
|
||||
|
||||
include $(TOP_DIR)/builds/unix/install.mk
|
||||
|
||||
endif
|
||||
|
||||
|
||||
# EOF
|
45
thirdparty/freetype/builds/unix/unixddef.mk
vendored
Normal file
45
thirdparty/freetype/builds/unix/unixddef.mk
vendored
Normal file
|
@ -0,0 +1,45 @@
|
|||
#
|
||||
# FreeType 2 configuration rules templates for
|
||||
# development under Unix with no configure script (gcc only)
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
TOP_DIR := $(shell cd $(TOP_DIR); pwd)
|
||||
OBJ_DIR := $(shell cd $(OBJ_DIR); pwd)
|
||||
|
||||
PLATFORM := unix
|
||||
|
||||
DELETE := rm -f
|
||||
CAT := cat
|
||||
SEP := /
|
||||
|
||||
# we use a special devel ftoption.h
|
||||
DEVEL_DIR := $(TOP_DIR)/devel
|
||||
|
||||
|
||||
# library file name
|
||||
#
|
||||
LIBRARY := lib$(PROJECT)
|
||||
|
||||
|
||||
# The directory where all library files are placed.
|
||||
#
|
||||
# By default, this is the same as $(OBJ_DIR); however, this can be changed
|
||||
# to suit particular needs.
|
||||
#
|
||||
LIB_DIR := $(OBJ_DIR)
|
||||
|
||||
|
||||
NO_OUTPUT := 2> /dev/null
|
||||
|
||||
# EOF
|
440
thirdparty/freetype/builds/vms/ftconfig.h
vendored
Normal file
440
thirdparty/freetype/builds/vms/ftconfig.h
vendored
Normal file
|
@ -0,0 +1,440 @@
|
|||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftconfig.h */
|
||||
/* */
|
||||
/* VMS-specific configuration file (specification only). */
|
||||
/* */
|
||||
/* Copyright 1996-2015 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* This header file contains a number of macro definitions that are used */
|
||||
/* by the rest of the engine. Most of the macros here are automatically */
|
||||
/* determined at compile time, and you should not need to change it to */
|
||||
/* port FreeType, except to compile the library with a non-ANSI */
|
||||
/* compiler. */
|
||||
/* */
|
||||
/* Note however that if some specific modifications are needed, we */
|
||||
/* advise you to place a modified copy in your build directory. */
|
||||
/* */
|
||||
/* The build directory is usually `builds/<system>', and contains */
|
||||
/* system-specific files that are always included first when building */
|
||||
/* the library. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
#ifndef __FTCONFIG_H__
|
||||
#define __FTCONFIG_H__
|
||||
|
||||
#include <ft2build.h>
|
||||
#include FT_CONFIG_OPTIONS_H
|
||||
#include FT_CONFIG_STANDARD_LIBRARY_H
|
||||
|
||||
|
||||
FT_BEGIN_HEADER
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* PLATFORM-SPECIFIC CONFIGURATION MACROS */
|
||||
/* */
|
||||
/* These macros can be toggled to suit a specific system. The current */
|
||||
/* ones are defaults used to compile FreeType in an ANSI C environment */
|
||||
/* (16bit compilers are also supported). Copy this file to your own */
|
||||
/* `builds/<system>' directory, and edit it to port the engine. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
#define HAVE_UNISTD_H 1
|
||||
#define HAVE_FCNTL_H 1
|
||||
|
||||
#define SIZEOF_INT 4
|
||||
#define SIZEOF_LONG 4
|
||||
|
||||
#define FT_SIZEOF_INT 4
|
||||
#define FT_SIZEOF_LONG 4
|
||||
|
||||
#define FT_CHAR_BIT 8
|
||||
|
||||
|
||||
/* FT_UNUSED is a macro used to indicate that a given parameter is not */
|
||||
/* used -- this is only used to get rid of unpleasant compiler warnings */
|
||||
#ifndef FT_UNUSED
|
||||
#define FT_UNUSED( arg ) ( (arg) = (arg) )
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* AUTOMATIC CONFIGURATION MACROS */
|
||||
/* */
|
||||
/* These macros are computed from the ones defined above. Don't touch */
|
||||
/* their definition, unless you know precisely what you are doing. No */
|
||||
/* porter should need to mess with them. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Mac support */
|
||||
/* */
|
||||
/* This is the only necessary change, so it is defined here instead */
|
||||
/* providing a new configuration file. */
|
||||
/* */
|
||||
#if defined( __APPLE__ ) || ( defined( __MWERKS__ ) && defined( macintosh ) )
|
||||
/* no Carbon frameworks for 64bit 10.4.x */
|
||||
/* AvailabilityMacros.h is available since Mac OS X 10.2, */
|
||||
/* so guess the system version by maximum errno before inclusion */
|
||||
#include <errno.h>
|
||||
#ifdef ECANCELED /* defined since 10.2 */
|
||||
#include "AvailabilityMacros.h"
|
||||
#endif
|
||||
#if defined( __LP64__ ) && \
|
||||
( MAC_OS_X_VERSION_MIN_REQUIRED <= MAC_OS_X_VERSION_10_4 )
|
||||
#undef FT_MACINTOSH
|
||||
#endif
|
||||
|
||||
#elif defined( __SC__ ) || defined( __MRC__ )
|
||||
/* Classic MacOS compilers */
|
||||
#include "ConditionalMacros.h"
|
||||
#if TARGET_OS_MAC
|
||||
#define FT_MACINTOSH 1
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Section> */
|
||||
/* basic_types */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Type> */
|
||||
/* FT_Int16 */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* A typedef for a 16bit signed integer type. */
|
||||
/* */
|
||||
typedef signed short FT_Int16;
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Type> */
|
||||
/* FT_UInt16 */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* A typedef for a 16bit unsigned integer type. */
|
||||
/* */
|
||||
typedef unsigned short FT_UInt16;
|
||||
|
||||
/* */
|
||||
|
||||
|
||||
/* this #if 0 ... #endif clause is for documentation purposes */
|
||||
#if 0
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Type> */
|
||||
/* FT_Int32 */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* A typedef for a 32bit signed integer type. The size depends on */
|
||||
/* the configuration. */
|
||||
/* */
|
||||
typedef signed XXX FT_Int32;
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Type> */
|
||||
/* FT_UInt32 */
|
||||
/* */
|
||||
/* A typedef for a 32bit unsigned integer type. The size depends on */
|
||||
/* the configuration. */
|
||||
/* */
|
||||
typedef unsigned XXX FT_UInt32;
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Type> */
|
||||
/* FT_Int64 */
|
||||
/* */
|
||||
/* A typedef for a 64bit signed integer type. The size depends on */
|
||||
/* the configuration. Only defined if there is real 64bit support; */
|
||||
/* otherwise, it gets emulated with a structure (if necessary). */
|
||||
/* */
|
||||
typedef signed XXX FT_Int64;
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Type> */
|
||||
/* FT_UInt64 */
|
||||
/* */
|
||||
/* A typedef for a 64bit unsigned integer type. The size depends on */
|
||||
/* the configuration. Only defined if there is real 64bit support; */
|
||||
/* otherwise, it gets emulated with a structure (if necessary). */
|
||||
/* */
|
||||
typedef unsigned XXX FT_UInt64;
|
||||
|
||||
/* */
|
||||
|
||||
#endif
|
||||
|
||||
#if FT_SIZEOF_INT == (32 / FT_CHAR_BIT)
|
||||
|
||||
typedef signed int FT_Int32;
|
||||
typedef unsigned int FT_UInt32;
|
||||
|
||||
#elif FT_SIZEOF_LONG == (32 / FT_CHAR_BIT)
|
||||
|
||||
typedef signed long FT_Int32;
|
||||
typedef unsigned long FT_UInt32;
|
||||
|
||||
#else
|
||||
#error "no 32bit type found -- please check your configuration files"
|
||||
#endif
|
||||
|
||||
|
||||
/* look up an integer type that is at least 32 bits */
|
||||
#if FT_SIZEOF_INT >= (32 / FT_CHAR_BIT)
|
||||
|
||||
typedef int FT_Fast;
|
||||
typedef unsigned int FT_UFast;
|
||||
|
||||
#elif FT_SIZEOF_LONG >= (32 / FT_CHAR_BIT)
|
||||
|
||||
typedef long FT_Fast;
|
||||
typedef unsigned long FT_UFast;
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
/* determine whether we have a 64-bit int type for platforms without */
|
||||
/* Autoconf */
|
||||
#if FT_SIZEOF_LONG == (64 / FT_CHAR_BIT)
|
||||
|
||||
/* FT_LONG64 must be defined if a 64-bit type is available */
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 long
|
||||
#define FT_UINT64 unsigned long
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* A 64-bit data type may create compilation problems if you compile */
|
||||
/* in strict ANSI mode. To avoid them, we disable other 64-bit data */
|
||||
/* types if __STDC__ is defined. You can however ignore this rule */
|
||||
/* by defining the FT_CONFIG_OPTION_FORCE_INT64 configuration macro. */
|
||||
/* */
|
||||
#elif !defined( __STDC__ ) || defined( FT_CONFIG_OPTION_FORCE_INT64 )
|
||||
|
||||
#if defined( _MSC_VER ) && _MSC_VER >= 900 /* Visual C++ (and Intel C++) */
|
||||
|
||||
/* this compiler provides the __int64 type */
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 __int64
|
||||
#define FT_UINT64 unsigned __int64
|
||||
|
||||
#elif defined( __BORLANDC__ ) /* Borland C++ */
|
||||
|
||||
/* XXXX: We should probably check the value of __BORLANDC__ in order */
|
||||
/* to test the compiler version. */
|
||||
|
||||
/* this compiler provides the __int64 type */
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 __int64
|
||||
#define FT_UINT64 unsigned __int64
|
||||
|
||||
#elif defined( __WATCOMC__ ) /* Watcom C++ */
|
||||
|
||||
/* Watcom doesn't provide 64-bit data types */
|
||||
|
||||
#elif defined( __MWERKS__ ) /* Metrowerks CodeWarrior */
|
||||
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 long long int
|
||||
#define FT_UINT64 unsigned long long int
|
||||
|
||||
#elif defined( __GNUC__ )
|
||||
|
||||
/* GCC provides the `long long' type */
|
||||
#define FT_LONG64
|
||||
#define FT_INT64 long long int
|
||||
#define FT_UINT64 unsigned long long int
|
||||
|
||||
#endif /* _MSC_VER */
|
||||
|
||||
#endif /* FT_SIZEOF_LONG == (64 / FT_CHAR_BIT) */
|
||||
|
||||
#ifdef FT_LONG64
|
||||
typedef FT_INT64 FT_Int64;
|
||||
typedef FT_UINT64 FT_UInt64;
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* miscellaneous */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
#define FT_BEGIN_STMNT do {
|
||||
#define FT_END_STMNT } while ( 0 )
|
||||
#define FT_DUMMY_STMNT FT_BEGIN_STMNT FT_END_STMNT
|
||||
|
||||
|
||||
/* typeof condition taken from gnulib's `intprops.h' header file */
|
||||
#if ( __GNUC__ >= 2 || \
|
||||
defined( __IBM__TYPEOF__ ) || \
|
||||
( __SUNPRO_C >= 0x5110 && !__STDC__ ) )
|
||||
#define FT_TYPEOF( type ) (__typeof__ (type))
|
||||
#else
|
||||
#define FT_TYPEOF( type ) /* empty */
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef FT_MAKE_OPTION_SINGLE_OBJECT
|
||||
|
||||
#define FT_LOCAL( x ) static x
|
||||
#define FT_LOCAL_DEF( x ) static x
|
||||
|
||||
#else
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_LOCAL( x ) extern "C" x
|
||||
#define FT_LOCAL_DEF( x ) extern "C" x
|
||||
#else
|
||||
#define FT_LOCAL( x ) extern x
|
||||
#define FT_LOCAL_DEF( x ) x
|
||||
#endif
|
||||
|
||||
#endif /* FT_MAKE_OPTION_SINGLE_OBJECT */
|
||||
|
||||
#define FT_LOCAL_ARRAY( x ) extern const x
|
||||
#define FT_LOCAL_ARRAY_DEF( x ) const x
|
||||
|
||||
|
||||
#ifndef FT_BASE
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_BASE( x ) extern "C" x
|
||||
#else
|
||||
#define FT_BASE( x ) extern x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_BASE */
|
||||
|
||||
|
||||
#ifndef FT_BASE_DEF
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_BASE_DEF( x ) x
|
||||
#else
|
||||
#define FT_BASE_DEF( x ) x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_BASE_DEF */
|
||||
|
||||
|
||||
#ifndef FT_EXPORT
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_EXPORT( x ) extern "C" x
|
||||
#else
|
||||
#define FT_EXPORT( x ) extern x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_EXPORT */
|
||||
|
||||
|
||||
#ifndef FT_EXPORT_DEF
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_EXPORT_DEF( x ) extern "C" x
|
||||
#else
|
||||
#define FT_EXPORT_DEF( x ) extern x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_EXPORT_DEF */
|
||||
|
||||
|
||||
#ifndef FT_EXPORT_VAR
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define FT_EXPORT_VAR( x ) extern "C" x
|
||||
#else
|
||||
#define FT_EXPORT_VAR( x ) extern x
|
||||
#endif
|
||||
|
||||
#endif /* !FT_EXPORT_VAR */
|
||||
|
||||
/* The following macros are needed to compile the library with a */
|
||||
/* C++ compiler and with 16bit compilers. */
|
||||
/* */
|
||||
|
||||
/* This is special. Within C++, you must specify `extern "C"' for */
|
||||
/* functions which are used via function pointers, and you also */
|
||||
/* must do that for structures which contain function pointers to */
|
||||
/* assure C linkage -- it's not possible to have (local) anonymous */
|
||||
/* functions which are accessed by (global) function pointers. */
|
||||
/* */
|
||||
/* */
|
||||
/* FT_CALLBACK_DEF is used to _define_ a callback function. */
|
||||
/* */
|
||||
/* FT_CALLBACK_TABLE is used to _declare_ a constant variable that */
|
||||
/* contains pointers to callback functions. */
|
||||
/* */
|
||||
/* FT_CALLBACK_TABLE_DEF is used to _define_ a constant variable */
|
||||
/* that contains pointers to callback functions. */
|
||||
/* */
|
||||
/* */
|
||||
/* Some 16bit compilers have to redefine these macros to insert */
|
||||
/* the infamous `_cdecl' or `__fastcall' declarations. */
|
||||
/* */
|
||||
#ifndef FT_CALLBACK_DEF
|
||||
#ifdef __cplusplus
|
||||
#define FT_CALLBACK_DEF( x ) extern "C" x
|
||||
#else
|
||||
#define FT_CALLBACK_DEF( x ) static x
|
||||
#endif
|
||||
#endif /* FT_CALLBACK_DEF */
|
||||
|
||||
#ifndef FT_CALLBACK_TABLE
|
||||
#ifdef __cplusplus
|
||||
#define FT_CALLBACK_TABLE extern "C"
|
||||
#define FT_CALLBACK_TABLE_DEF extern "C"
|
||||
#else
|
||||
#define FT_CALLBACK_TABLE extern
|
||||
#define FT_CALLBACK_TABLE_DEF /* nothing */
|
||||
#endif
|
||||
#endif /* FT_CALLBACK_TABLE */
|
||||
|
||||
|
||||
FT_END_HEADER
|
||||
|
||||
|
||||
#endif /* __FTCONFIG_H__ */
|
||||
|
||||
|
||||
/* END */
|
328
thirdparty/freetype/builds/vms/ftsystem.c
vendored
Normal file
328
thirdparty/freetype/builds/vms/ftsystem.c
vendored
Normal file
|
@ -0,0 +1,328 @@
|
|||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftsystem.c */
|
||||
/* */
|
||||
/* VMS-specific FreeType low-level system interface (body). */
|
||||
/* */
|
||||
/* Copyright 1996-2015 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
#include <ft2build.h>
|
||||
/* we use our special ftconfig.h file, not the standard one */
|
||||
#include <ftconfig.h>
|
||||
#include FT_INTERNAL_DEBUG_H
|
||||
#include FT_SYSTEM_H
|
||||
#include FT_ERRORS_H
|
||||
#include FT_TYPES_H
|
||||
#include FT_INTERNAL_OBJECTS_H
|
||||
|
||||
/* memory-mapping includes and definitions */
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include <sys/mman.h>
|
||||
#ifndef MAP_FILE
|
||||
#define MAP_FILE 0x00
|
||||
#endif
|
||||
|
||||
#ifdef MUNMAP_USES_VOIDP
|
||||
#define MUNMAP_ARG_CAST void *
|
||||
#else
|
||||
#define MUNMAP_ARG_CAST char *
|
||||
#endif
|
||||
|
||||
#ifdef NEED_MUNMAP_DECL
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#else
|
||||
extern
|
||||
#endif
|
||||
int
|
||||
munmap( char* addr,
|
||||
int len );
|
||||
|
||||
#define MUNMAP_ARG_CAST char *
|
||||
|
||||
#endif /* NEED_DECLARATION_MUNMAP */
|
||||
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
#ifdef HAVE_FCNTL_H
|
||||
#include <fcntl.h>
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* MEMORY MANAGEMENT INTERFACE */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Function> */
|
||||
/* ft_alloc */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* The memory allocation function. */
|
||||
/* */
|
||||
/* <Input> */
|
||||
/* memory :: A pointer to the memory object. */
|
||||
/* */
|
||||
/* size :: The requested size in bytes. */
|
||||
/* */
|
||||
/* <Return> */
|
||||
/* The address of newly allocated block. */
|
||||
/* */
|
||||
FT_CALLBACK_DEF( void* )
|
||||
ft_alloc( FT_Memory memory,
|
||||
long size )
|
||||
{
|
||||
FT_UNUSED( memory );
|
||||
|
||||
return malloc( size );
|
||||
}
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Function> */
|
||||
/* ft_realloc */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* The memory reallocation function. */
|
||||
/* */
|
||||
/* <Input> */
|
||||
/* memory :: A pointer to the memory object. */
|
||||
/* */
|
||||
/* cur_size :: The current size of the allocated memory block. */
|
||||
/* */
|
||||
/* new_size :: The newly requested size in bytes. */
|
||||
/* */
|
||||
/* block :: The current address of the block in memory. */
|
||||
/* */
|
||||
/* <Return> */
|
||||
/* The address of the reallocated memory block. */
|
||||
/* */
|
||||
FT_CALLBACK_DEF( void* )
|
||||
ft_realloc( FT_Memory memory,
|
||||
long cur_size,
|
||||
long new_size,
|
||||
void* block )
|
||||
{
|
||||
FT_UNUSED( memory );
|
||||
FT_UNUSED( cur_size );
|
||||
|
||||
return realloc( block, new_size );
|
||||
}
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Function> */
|
||||
/* ft_free */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* The memory release function. */
|
||||
/* */
|
||||
/* <Input> */
|
||||
/* memory :: A pointer to the memory object. */
|
||||
/* */
|
||||
/* block :: The address of block in memory to be freed. */
|
||||
/* */
|
||||
FT_CALLBACK_DEF( void )
|
||||
ft_free( FT_Memory memory,
|
||||
void* block )
|
||||
{
|
||||
FT_UNUSED( memory );
|
||||
|
||||
free( block );
|
||||
}
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* RESOURCE MANAGEMENT INTERFACE */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* The macro FT_COMPONENT is used in trace mode. It is an implicit */
|
||||
/* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log */
|
||||
/* messages during execution. */
|
||||
/* */
|
||||
#undef FT_COMPONENT
|
||||
#define FT_COMPONENT trace_io
|
||||
|
||||
/* We use the macro STREAM_FILE for convenience to extract the */
|
||||
/* system-specific stream handle from a given FreeType stream object */
|
||||
#define STREAM_FILE( stream ) ( (FILE*)stream->descriptor.pointer )
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Function> */
|
||||
/* ft_close_stream */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* The function to close a stream. */
|
||||
/* */
|
||||
/* <Input> */
|
||||
/* stream :: A pointer to the stream object. */
|
||||
/* */
|
||||
FT_CALLBACK_DEF( void )
|
||||
ft_close_stream( FT_Stream stream )
|
||||
{
|
||||
munmap( (MUNMAP_ARG_CAST)stream->descriptor.pointer, stream->size );
|
||||
|
||||
stream->descriptor.pointer = NULL;
|
||||
stream->size = 0;
|
||||
stream->base = 0;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftobjs.h */
|
||||
|
||||
FT_BASE_DEF( FT_Error )
|
||||
FT_Stream_Open( FT_Stream stream,
|
||||
const char* filepathname )
|
||||
{
|
||||
int file;
|
||||
struct stat stat_buf;
|
||||
|
||||
|
||||
if ( !stream )
|
||||
return FT_THROW( Invalid_Stream_Handle );
|
||||
|
||||
/* open the file */
|
||||
file = open( filepathname, O_RDONLY );
|
||||
if ( file < 0 )
|
||||
{
|
||||
FT_ERROR(( "FT_Stream_Open:" ));
|
||||
FT_ERROR(( " could not open `%s'\n", filepathname ));
|
||||
return FT_THROW( Cannot_Open_Resource );
|
||||
}
|
||||
|
||||
if ( fstat( file, &stat_buf ) < 0 )
|
||||
{
|
||||
FT_ERROR(( "FT_Stream_Open:" ));
|
||||
FT_ERROR(( " could not `fstat' file `%s'\n", filepathname ));
|
||||
goto Fail_Map;
|
||||
}
|
||||
|
||||
stream->size = stat_buf.st_size;
|
||||
if ( !stream->size )
|
||||
{
|
||||
FT_ERROR(( "FT_Stream_Open:" ));
|
||||
FT_ERROR(( " opened `%s' but zero-sized\n", filepathname ));
|
||||
goto Fail_Map;
|
||||
}
|
||||
|
||||
stream->pos = 0;
|
||||
stream->base = (unsigned char *)mmap( NULL,
|
||||
stream->size,
|
||||
PROT_READ,
|
||||
MAP_FILE | MAP_PRIVATE,
|
||||
file,
|
||||
0 );
|
||||
|
||||
if ( (long)stream->base == -1 )
|
||||
{
|
||||
FT_ERROR(( "FT_Stream_Open:" ));
|
||||
FT_ERROR(( " could not `mmap' file `%s'\n", filepathname ));
|
||||
goto Fail_Map;
|
||||
}
|
||||
|
||||
close( file );
|
||||
|
||||
stream->descriptor.pointer = stream->base;
|
||||
stream->pathname.pointer = (char*)filepathname;
|
||||
|
||||
stream->close = ft_close_stream;
|
||||
stream->read = 0;
|
||||
|
||||
FT_TRACE1(( "FT_Stream_Open:" ));
|
||||
FT_TRACE1(( " opened `%s' (%d bytes) successfully\n",
|
||||
filepathname, stream->size ));
|
||||
|
||||
return FT_Err_Ok;
|
||||
|
||||
Fail_Map:
|
||||
close( file );
|
||||
|
||||
stream->base = NULL;
|
||||
stream->size = 0;
|
||||
stream->pos = 0;
|
||||
|
||||
return FT_THROW( Cannot_Open_Stream );
|
||||
}
|
||||
|
||||
|
||||
#ifdef FT_DEBUG_MEMORY
|
||||
|
||||
extern FT_Int
|
||||
ft_mem_debug_init( FT_Memory memory );
|
||||
|
||||
extern void
|
||||
ft_mem_debug_done( FT_Memory memory );
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
/* documentation is in ftobjs.h */
|
||||
|
||||
FT_BASE_DEF( FT_Memory )
|
||||
FT_New_Memory( void )
|
||||
{
|
||||
FT_Memory memory;
|
||||
|
||||
|
||||
memory = (FT_Memory)malloc( sizeof ( *memory ) );
|
||||
if ( memory )
|
||||
{
|
||||
memory->user = 0;
|
||||
memory->alloc = ft_alloc;
|
||||
memory->realloc = ft_realloc;
|
||||
memory->free = ft_free;
|
||||
#ifdef FT_DEBUG_MEMORY
|
||||
ft_mem_debug_init( memory );
|
||||
#endif
|
||||
}
|
||||
|
||||
return memory;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftobjs.h */
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
FT_Done_Memory( FT_Memory memory )
|
||||
{
|
||||
#ifdef FT_DEBUG_MEMORY
|
||||
ft_mem_debug_done( memory );
|
||||
#endif
|
||||
memory->free( memory, memory );
|
||||
}
|
||||
|
||||
|
||||
/* END */
|
255
thirdparty/freetype/builds/wince/ftdebug.c
vendored
Normal file
255
thirdparty/freetype/builds/wince/ftdebug.c
vendored
Normal file
|
@ -0,0 +1,255 @@
|
|||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftdebug.c */
|
||||
/* */
|
||||
/* Debugging and logging component for WinCE (body). */
|
||||
/* */
|
||||
/* Copyright 1996-2015 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* This component contains various macros and functions used to ease the */
|
||||
/* debugging of the FreeType engine. Its main purpose is in assertion */
|
||||
/* checking, tracing, and error detection. */
|
||||
/* */
|
||||
/* There are now three debugging modes: */
|
||||
/* */
|
||||
/* - trace mode */
|
||||
/* */
|
||||
/* Error and trace messages are sent to the log file (which can be the */
|
||||
/* standard error output). */
|
||||
/* */
|
||||
/* - error mode */
|
||||
/* */
|
||||
/* Only error messages are generated. */
|
||||
/* */
|
||||
/* - release mode: */
|
||||
/* */
|
||||
/* No error message is sent or generated. The code is free from any */
|
||||
/* debugging parts. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
#include <ft2build.h>
|
||||
#include FT_INTERNAL_DEBUG_H
|
||||
|
||||
|
||||
#ifdef FT_DEBUG_LEVEL_ERROR
|
||||
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include <windows.h>
|
||||
|
||||
|
||||
void
|
||||
OutputDebugStringEx( const char* str )
|
||||
{
|
||||
static WCHAR buf[8192];
|
||||
|
||||
|
||||
int sz = MultiByteToWideChar( CP_ACP, 0, str, -1, buf,
|
||||
sizeof ( buf ) / sizeof ( *buf ) );
|
||||
if ( !sz )
|
||||
lstrcpyW( buf, L"OutputDebugStringEx: MultiByteToWideChar failed" );
|
||||
|
||||
OutputDebugStringW( buf );
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
FT_Message( const char* fmt,
|
||||
... )
|
||||
{
|
||||
static char buf[8192];
|
||||
va_list ap;
|
||||
|
||||
|
||||
va_start( ap, fmt );
|
||||
vprintf( fmt, ap );
|
||||
/* send the string to the debugger as well */
|
||||
vsprintf( buf, fmt, ap );
|
||||
OutputDebugStringEx( buf );
|
||||
va_end( ap );
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
FT_Panic( const char* fmt,
|
||||
... )
|
||||
{
|
||||
static char buf[8192];
|
||||
va_list ap;
|
||||
|
||||
|
||||
va_start( ap, fmt );
|
||||
vsprintf( buf, fmt, ap );
|
||||
OutputDebugStringEx( buf );
|
||||
va_end( ap );
|
||||
|
||||
exit( EXIT_FAILURE );
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftdebug.h */
|
||||
|
||||
FT_BASE_DEF( int )
|
||||
FT_Throw( FT_Error error,
|
||||
int line,
|
||||
const char* file )
|
||||
{
|
||||
FT_UNUSED( error );
|
||||
FT_UNUSED( line );
|
||||
FT_UNUSED( file );
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#ifdef FT_DEBUG_LEVEL_TRACE
|
||||
|
||||
|
||||
/* array of trace levels, initialized to 0 */
|
||||
int ft_trace_levels[trace_count];
|
||||
|
||||
/* define array of trace toggle names */
|
||||
#define FT_TRACE_DEF( x ) #x ,
|
||||
|
||||
static const char* ft_trace_toggles[trace_count + 1] =
|
||||
{
|
||||
#include FT_INTERNAL_TRACE_H
|
||||
NULL
|
||||
};
|
||||
|
||||
#undef FT_TRACE_DEF
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Initialize the tracing sub-system. This is done by retrieving the */
|
||||
/* value of the "FT2_DEBUG" environment variable. It must be a list of */
|
||||
/* toggles, separated by spaces, `;' or `,'. Example: */
|
||||
/* */
|
||||
/* "any:3 memory:6 stream:5" */
|
||||
/* */
|
||||
/* This will request that all levels be set to 3, except the trace level */
|
||||
/* for the memory and stream components which are set to 6 and 5, */
|
||||
/* respectively. */
|
||||
/* */
|
||||
/* See the file `include/freetype/internal/fttrace.h' for details of the */
|
||||
/* available toggle names. */
|
||||
/* */
|
||||
/* The level must be between 0 and 6; 0 means quiet (except for serious */
|
||||
/* runtime errors), and 6 means _very_ verbose. */
|
||||
/* */
|
||||
FT_BASE_DEF( void )
|
||||
ft_debug_init( void )
|
||||
{
|
||||
/* Windows Mobile doesn't have environment API: */
|
||||
/* GetEnvironmentStrings, GetEnvironmentVariable, getenv. */
|
||||
/* */
|
||||
/* FIXME!!! How to set debug mode? */
|
||||
|
||||
/* const char* ft2_debug = getenv( "FT2_DEBUG" ); */
|
||||
|
||||
const char* ft2_debug = 0;
|
||||
|
||||
|
||||
if ( ft2_debug )
|
||||
{
|
||||
const char* p = ft2_debug;
|
||||
const char* q;
|
||||
|
||||
|
||||
for ( ; *p; p++ )
|
||||
{
|
||||
/* skip leading whitespace and separators */
|
||||
if ( *p == ' ' || *p == '\t' || *p == ',' || *p == ';' || *p == '=' )
|
||||
continue;
|
||||
|
||||
/* read toggle name, followed by ':' */
|
||||
q = p;
|
||||
while ( *p && *p != ':' )
|
||||
p++;
|
||||
|
||||
if ( !*p )
|
||||
break;
|
||||
|
||||
if ( *p == ':' && p > q )
|
||||
{
|
||||
int n, i, len = (int)( p - q );
|
||||
int level = -1, found = -1;
|
||||
|
||||
|
||||
for ( n = 0; n < trace_count; n++ )
|
||||
{
|
||||
const char* toggle = ft_trace_toggles[n];
|
||||
|
||||
|
||||
for ( i = 0; i < len; i++ )
|
||||
{
|
||||
if ( toggle[i] != q[i] )
|
||||
break;
|
||||
}
|
||||
|
||||
if ( i == len && toggle[i] == 0 )
|
||||
{
|
||||
found = n;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* read level */
|
||||
p++;
|
||||
if ( *p )
|
||||
{
|
||||
level = *p - '0';
|
||||
if ( level < 0 || level > 7 )
|
||||
level = -1;
|
||||
}
|
||||
|
||||
if ( found >= 0 && level >= 0 )
|
||||
{
|
||||
if ( found == trace_any )
|
||||
{
|
||||
/* special case for "any" */
|
||||
for ( n = 0; n < trace_count; n++ )
|
||||
ft_trace_levels[n] = level;
|
||||
}
|
||||
else
|
||||
ft_trace_levels[found] = level;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#else /* !FT_DEBUG_LEVEL_TRACE */
|
||||
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
ft_debug_init( void )
|
||||
{
|
||||
/* nothing */
|
||||
}
|
||||
|
||||
|
||||
#endif /* !FT_DEBUG_LEVEL_TRACE */
|
||||
|
||||
#endif /* FT_DEBUG_LEVEL_ERROR */
|
||||
|
||||
|
||||
/* END */
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue