1
0
Fork 0
mirror of https://github.com/AquariaOSE/Aquaria.git synced 2025-07-05 15:34:48 +00:00

update libogg, libvorbis, minihttp + enable /MP for vs2008 debug builds.

This commit is contained in:
fgenesis 2017-01-13 13:06:31 +01:00
parent 6f4474df36
commit bb7cb7df71
849 changed files with 150371 additions and 75476 deletions

View file

@ -154,9 +154,10 @@ void ModDL::GetModlist(const std::string& url, bool allowChaining, bool first)
} }
else else
{ {
std::string host, dummy_file; std::string host, dummy_file, dummy_protocol;
int dummy_port; int dummy_port;
minihttp::SplitURI(url, host, dummy_file, dummy_port); bool dummy_useSSL;
minihttp::SplitURI(url, dummy_protocol, host, dummy_file, dummy_port, dummy_useSSL);
stringToLower(host); stringToLower(host);
if(knownServers.find(host) != knownServers.end()) if(knownServers.find(host) != knownServers.end())
{ {

View file

@ -87,7 +87,7 @@ protected:
notifyRequests.push(RequestDataHolder(data)); notifyRequests.push(RequestDataHolder(data));
} }
virtual void _OnRecv(char *buf, unsigned int size) virtual void _OnRecv(void *buf, unsigned int size)
{ {
if(!size) if(!size)
return; return;
@ -196,7 +196,7 @@ static HttpDumpSocket *th_CreateSocket()
static bool th_DoSendRequest(RequestData *rq) static bool th_DoSendRequest(RequestData *rq)
{ {
Request get; Request get;
SplitURI(rq->url, get.host, get.resource, get.port); SplitURI(rq->url, get.protocol, get.host, get.resource, get.port, get.useSSL);
if(get.port < 0) if(get.port < 0)
get.port = 80; get.port = 80;
@ -206,7 +206,7 @@ static bool th_DoSendRequest(RequestData *rq)
HttpDumpSocket *sock = th_CreateSocket(); HttpDumpSocket *sock = th_CreateSocket();
get.user = rq; get.user = rq;
return sock->SendGet(get, false); return sock->SendRequest(get, false);
} }
static int _NetworkWorkerThread(void *) static int _NetworkWorkerThread(void *)

View file

@ -46,8 +46,8 @@ SET(FREETYPE2DIR ${EXTLIBDIR}/freetype2)
SET(FREETYPE2SRCDIR ${FREETYPE2DIR}/src) SET(FREETYPE2SRCDIR ${FREETYPE2DIR}/src)
SET(LUADIR ${EXTLIBDIR}/lua-5.1.4) SET(LUADIR ${EXTLIBDIR}/lua-5.1.4)
SET(LUASRCDIR ${LUADIR}/src) SET(LUASRCDIR ${LUADIR}/src)
SET(LIBOGGDIR ${EXTLIBDIR}/libogg-1.3.0) SET(LIBOGGDIR ${EXTLIBDIR}/libogg)
SET(LIBVORBISDIR ${EXTLIBDIR}/libvorbis-1.3.3) SET(LIBVORBISDIR ${EXTLIBDIR}/libvorbis)
SET(ZLIBDIR ${EXTLIBDIR}/glpng/zlib) SET(ZLIBDIR ${EXTLIBDIR}/glpng/zlib)
SET(PNGDIR ${EXTLIBDIR}/glpng/png) SET(PNGDIR ${EXTLIBDIR}/glpng/png)
@ -618,7 +618,6 @@ SET(FREETYPE2_SRCS
${FREETYPE2SRCDIR}/base/ftsynth.c ${FREETYPE2SRCDIR}/base/ftsynth.c
${FREETYPE2SRCDIR}/base/fttype1.c ${FREETYPE2SRCDIR}/base/fttype1.c
${FREETYPE2SRCDIR}/base/ftwinfnt.c ${FREETYPE2SRCDIR}/base/ftwinfnt.c
${FREETYPE2SRCDIR}/base/ftxf86.c
${FREETYPE2SRCDIR}/truetype/truetype.c ${FREETYPE2SRCDIR}/truetype/truetype.c
${FREETYPE2SRCDIR}/type1/type1.c ${FREETYPE2SRCDIR}/type1/type1.c
${FREETYPE2SRCDIR}/cff/cff.c ${FREETYPE2SRCDIR}/cff/cff.c

View file

@ -0,0 +1,452 @@
# CMakeLists.txt
#
# Copyright 2013-2016 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 -D IOS_PLATFORM=OS -G Xcode <path-to-freetype2-src-dir>
#
# or
#
# cmake -D IOS_PLATFORM=SIMULATOR -G Xcode <path-to-freetype2-src-dir>
#
# 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.
#
# . If you want to disable the automatic generation of the distribution
# targets, add the `-D FREETYPE_NO_DIST=true' command line argument.
#
# . Set the `WITH_ZLIB', `WITH_BZip2', `WITH_PNG', and `WITH_HarfBuzz'
# CMake variables to `ON' or `OFF' to force or skip using a dependency.
# Leave a variable undefined (which is the default) to use the dependency
# only if it is available. Example:
#
# cmake ... -DWITH_ZLIB=ON -DWITH_HarfBuzz=OFF ...
#
# . Installation of FreeType can be controlled with the CMake variables
# `SKIP_INSTALL_HEADERS', `SKIP_INSTALL_LIBRARIES', and `SKIP_INSTALL_ALL'
# (this is compatible with the same CMake variables in zlib's CMake
# support).
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
${CMAKE_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 ()
project(freetype)
if (WIN32 AND NOT MINGW AND BUILD_SHARED_LIBS)
message(FATAL_ERROR "Building shared libraries on Windows needs MinGW")
endif ()
# 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/cmake)
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 "7")
set(VERSION_PATCH "0")
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
foreach (d ZLIB BZip2 PNG HarfBuzz)
string(TOUPPER "${d}" D)
if (DEFINED WITH_${d} OR DEFINED WITH_${D})
if (WITH_${d} OR WITH_${D})
find_package(${d} QUIET REQUIRED)
endif ()
else ()
find_package(${d} QUIET)
endif ()
if (${d}_FOUND OR ${D}_FOUND)
message(STATUS "Building with ${d}")
endif ()
endforeach ()
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-new"
"${FTCONFIG_H}")
else ()
file(READ "${PROJECT_SOURCE_DIR}/include/freetype/config/ftconfig.h"
FTCONFIG_H)
file(WRITE "${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h-new"
"${FTCONFIG_H}")
endif ()
execute_process(COMMAND ${CMAKE_COMMAND} -E copy_if_different
"${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h-new"
"${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h")
# Create the options file
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-new"
"${FTOPTION_H}")
execute_process(COMMAND ${CMAKE_COMMAND} -E copy_if_different
"${PROJECT_BINARY_DIR}/include/freetype/config/ftoption.h-new"
"${PROJECT_BINARY_DIR}/include/freetype/config/ftoption.h")
# Specify library include directories
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 ()
set(CMAKE_DEBUG_POSTFIX d)
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 (NOT CMAKE_VERSION VERSION_LESS 2.8.11)
target_include_directories(freetype
PUBLIC $<INSTALL_INTERFACE:include/freetype2>)
endif ()
if (CMAKE_VERSION VERSION_LESS 2.8.12)
set(MAYBE_PRIVATE "")
else ()
set(MAYBE_PRIVATE "PRIVATE")
endif ()
if (ZLIB_FOUND)
target_link_libraries(freetype ${MAYBE_PRIVATE} ${ZLIB_LIBRARIES})
include_directories(${ZLIB_INCLUDE_DIRS})
endif ()
if (BZIP2_FOUND)
target_link_libraries(freetype ${MAYBE_PRIVATE} ${BZIP2_LIBRARIES})
include_directories(${BZIP2_INCLUDE_DIR}) # not BZIP2_INCLUDE_DIRS
endif ()
if (PNG_FOUND)
add_definitions(${PNG_DEFINITIONS})
target_link_libraries(freetype ${MAYBE_PRIVATE} ${PNG_LIBRARIES})
include_directories(${PNG_INCLUDE_DIRS})
endif ()
if (HARFBUZZ_FOUND)
target_link_libraries(freetype ${MAYBE_PRIVATE} ${HARFBUZZ_LIBRARIES})
include_directories(${HARFBUZZ_INCLUDE_DIRS})
endif ()
# Installations
# Note the trailing slash in the argument to the `DIRECTORY' directive
if (NOT SKIP_INSTALL_HEADERS AND NOT SKIP_INSTALL_ALL)
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
)
endif ()
if (NOT SKIP_INSTALL_LIBRARIES AND NOT SKIP_INSTALL_ALL)
install(TARGETS freetype
EXPORT freetype-targets
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib
FRAMEWORK DESTINATION Library/Frameworks
)
install(EXPORT freetype-targets
DESTINATION lib/cmake/freetype
FILE freetype-config.cmake
)
endif ()
# 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 if FREETYPE_DIST is set (which is the default)
if (NOT DEFINED FREETYPE_NO_DIST)
add_custom_target(dist COMMAND ${CMAKE_MAKE_PROGRAM} package_source)
endif ()
# eof

File diff suppressed because it is too large Load diff

View file

@ -330,7 +330,7 @@
2001-12-22 Francesco Zappa Nardelli <Francesco.Zappa.Nardelli@ens.fr> 2001-12-22 Francesco Zappa Nardelli <Francesco.Zappa.Nardelli@ens.fr>
* src/pfc/pcfread.c (pcf_load_font): Handle property `POINT_SIZE' * src/pcf/pcfread.c (pcf_load_font): Handle property `POINT_SIZE'
and fix incorrect computation of `available_sizes'. and fix incorrect computation of `available_sizes'.
2001-12-22 David Turner <david@freetype.org> 2001-12-22 David Turner <david@freetype.org>
@ -412,7 +412,7 @@
* src/cff/cffgload.h: Updated. * src/cff/cffgload.h: Updated.
* src/cff/cffobjs.c: Include FT_INTERNAL_POSTSCRIPT_HINTS_H. * src/cff/cffobjs.c: Include FT_INTERNAL_POSTSCRIPT_HINTS_H.
(CFF_Size_Get_Globals_Funcs, CFF_Size_Done, CFF_Size_Init, (CFF_Size_Get_Globals_Funcs, CFF_Size_Done, CFF_Size_Init,
CFF_Size_Reset, CFF_GlyphSlot_Done, CFF_GLyphSlot_Init): New CFF_Size_Reset, CFF_GlyphSlot_Done, CFF_GlyphSlot_Init): New
functions. functions.
(CFF_Init_Face): Renamed to ... (CFF_Init_Face): Renamed to ...
(CFF_Face_Init): This. (CFF_Face_Init): This.
@ -1056,7 +1056,7 @@
2001-08-30 Anthony Feik <afeick@hotmail.com> 2001-08-30 Anthony Feik <afeick@hotmail.com>
* src/type1/t1afm.c (T1_Read_Afm): Now correctly sets the flag * src/type1/t1afm.c (T1_Read_AFM): Now correctly sets the flag
FT_FACE_FLAG_KERNING when appropriate for Type1 + AFM files. FT_FACE_FLAG_KERNING when appropriate for Type1 + AFM files.
2001-08-25 Werner Lemberg <wl@gnu.org> 2001-08-25 Werner Lemberg <wl@gnu.org>
@ -1176,7 +1176,7 @@
* include/freetype/internal/psaux.h (PS_Table): Use FT_Offset for * include/freetype/internal/psaux.h (PS_Table): Use FT_Offset for
`cursor' and `capacity'. `cursor' and `capacity'.
* src/psaux/psobjc.c (reallocate_t1_table): Use FT_Long for second * src/psaux/psobjs.c (reallocate_t1_table): Use FT_Long for second
parameter. parameter.
(PS_Table_Add): Use FT_Offset for `new_size'. (PS_Table_Add): Use FT_Offset for `new_size'.
@ -1710,7 +1710,7 @@
`FT_Err_*' with `CFF_Err_*'. `FT_Err_*' with `CFF_Err_*'.
* src/cid/cidparse.c: Replaced `FT_Err_*' with `T1_Err_*'. * src/cid/cidparse.c: Replaced `FT_Err_*' with `T1_Err_*'.
* src/psaux/psobjs.c, src/psaux/t1decode.c: Ditto. * src/psaux/psobjs.c, src/psaux/t1decode.c: Ditto.
* src/sfnt/sfobcs.c, src/sfnt/ttload.c: Replaced `FT_Err_*' with * src/sfnt/sfobjs.c, src/sfnt/ttload.c: Replaced `FT_Err_*' with
`TT_Err_*'. `TT_Err_*'.
* src/truetype/ttgload.c, src/truetype/ttobjs.c: Ditto. * src/truetype/ttgload.c, src/truetype/ttobjs.c: Ditto.
* src/type1/t1gload.c, src/type1/t1load.c, src/type1/t1objs.c, * src/type1/t1gload.c, src/type1/t1load.c, src/type1/t1objs.c,
@ -1730,7 +1730,7 @@
* src/cff/cffobjs.c (CFF_Init_Face, CFF_Done_Face): Use * src/cff/cffobjs.c (CFF_Init_Face, CFF_Done_Face): Use
FT_LOCAL_DEF. FT_LOCAL_DEF.
* src/cid/cidobjs.c (CID_Done_Driver): Ditto. * src/cid/cidobjs.c (CID_Done_Driver): Ditto.
* src/trutype/ttobjs.c (TT_Init_Face, TT_Done_Face, TT_Init_Size): * src/truetype/ttobjs.c (TT_Init_Face, TT_Done_Face, TT_Init_Size):
Ditto. Ditto.
* src/type1/t1objs.c (T1_Done_Driver): Ditto. * src/type1/t1objs.c (T1_Done_Driver): Ditto.
* src/pcf/pcfdriver.c (PCF_Done_Face): Ditto. * src/pcf/pcfdriver.c (PCF_Done_Face): Ditto.
@ -1759,7 +1759,7 @@
2001-03-20 Werner Lemberg <wl@gnu.org> 2001-03-20 Werner Lemberg <wl@gnu.org>
* builds/win32/detekt.mk: Fix .PHONY target for Intel compiler. * builds/win32/detect.mk: Fix .PHONY target for Intel compiler.
2001-03-20 David Turner <david.turner@freetype.org> 2001-03-20 David Turner <david.turner@freetype.org>
@ -2338,7 +2338,7 @@
2000-12-06 Werner Lemberg <wl@gnu.org> 2000-12-06 Werner Lemberg <wl@gnu.org>
* builds/module.mk: Replaced `xxx #' with `xxx$(space). * builds/module.mk: Replaced `xxx #' with `xxx$(space).
* builds/os2/detekt.mk, builds/win32/detekt.mk: Moved comment to * builds/os2/detect.mk, builds/win32/detect.mk: Moved comment to
avoid trailing spaces in variable. avoid trailing spaces in variable.
* builds/freetype.mk: Use $(D) instead of $D to make statement more * builds/freetype.mk: Use $(D) instead of $D to make statement more
readable. readable.
@ -2412,7 +2412,7 @@
* builds/unix/detect.mk (.PHONY): Adding `devel', `unix', `lcc', * builds/unix/detect.mk (.PHONY): Adding `devel', `unix', `lcc',
`setup'. `setup'.
2000-11-30 David Turner <david.turner@freetype.ogr> 2000-11-30 David Turner <david.turner@freetype.org>
* INSTALL: Slightly updated the quick starter documentation to * INSTALL: Slightly updated the quick starter documentation to
include IDE compilation, prevent against BSD Make, and specify `make include IDE compilation, prevent against BSD Make, and specify `make
@ -2597,7 +2597,7 @@
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
Copyright 2000, 2001, 2002, 2007 by Copyright 2000-2016 by
David Turner, Robert Wilhelm, and Werner Lemberg. David Turner, Robert Wilhelm, and Werner Lemberg.
This file is part of the FreeType project, and may only be used, modified, This file is part of the FreeType project, and may only be used, modified,

View file

@ -327,7 +327,7 @@
Blaskey <listtarget@danbala.com>). Blaskey <listtarget@danbala.com>).
* src/sfnt/ttcmap.h (TT_CMap): Add member `unsorted'. * src/sfnt/ttcmap.h (TT_CMap): Add member `unsorted'.
* src/sfnt/ttcmac.c: Use SFNT_Err_Ok where appropriate. * src/sfnt/ttcmap.c: Use SFNT_Err_Ok where appropriate.
(tt_cmap0_validate, tt_cmap2_validate, tt_cmap6_validate, (tt_cmap0_validate, tt_cmap2_validate, tt_cmap6_validate,
tt_cmap8_validate, tt_cmap10_validate, tt_cmap12_validate): Use tt_cmap8_validate, tt_cmap10_validate, tt_cmap12_validate): Use
@ -571,7 +571,7 @@
doing anything else. This avoids unnecessary heap allocations doing anything else. This avoids unnecessary heap allocations
(400KByte of heap memory for the LZW decoder). (400KByte of heap memory for the LZW decoder).
* src/gzip/ftgzip.c (FT_Stream_OpenGZip): Ditto for the gzip * src/gzip/ftgzip.c (FT_Stream_OpenGzip): Ditto for the gzip
decoder, although the code savings are smaller. decoder, although the code savings are smaller.
* docs/CHANGES: Updated. * docs/CHANGES: Updated.
@ -756,7 +756,7 @@
(AF_AxisHintsRec): Add `max_segments' and `max_edges'. (AF_AxisHintsRec): Add `max_segments' and `max_edges'.
(af_axis_hints_new_segment, af_axis_hints_new_edge): New prototypes. (af_axis_hints_new_segment, af_axis_hints_new_edge): New prototypes.
* src/autofit/aflatin.c (af_latin_metricsc_scale): Don't call * src/autofit/aflatin.c (af_latin_metrics_scale): Don't call
AF_SCALER_EQUAL_SCALES. AF_SCALER_EQUAL_SCALES.
(af_latin_hints_compute_segments): Change return type to FT_Error. (af_latin_hints_compute_segments): Change return type to FT_Error.
Update all callers. Update all callers.
@ -1014,7 +1014,7 @@
t42_parse_charstrings, t42_parse_dict): Check parser error value t42_parse_charstrings, t42_parse_dict): Check parser error value
after call to T1_Skip_PS_Token (where necessary). after call to T1_Skip_PS_Token (where necessary).
* src/psaux/psobjc.c (skip_string, ps_parser_skip_PS_token, * src/psaux/psobjs.c (skip_string, ps_parser_skip_PS_token,
ps_tobytes): Add error messages. ps_tobytes): Add error messages.
2005-02-12 Werner Lemberg <wl@gnu.org> 2005-02-12 Werner Lemberg <wl@gnu.org>
@ -1112,7 +1112,7 @@
but return them as-is. but return them as-is.
* docs/CHANGES: Mention new bitmap API. * docs/CHANGES: Mention new bitmap API.
* include/freetype/ftchapter.s: Updated. * include/freetype/ftchapters.h: Updated.
2004-12-11 Robert Clark <freetype@ratty.org.uk> 2004-12-11 Robert Clark <freetype@ratty.org.uk>
@ -1159,7 +1159,7 @@
(ah_test_extremum, ah_get_orientation): Removed. (ah_test_extremum, ah_get_orientation): Removed.
(ah_outline_load): Use FT_Outline_Get_Orientation. (ah_outline_load): Use FT_Outline_Get_Orientation.
* src/base/ftsynth.c (ft_test_extrama, ft_get_orientation): Removed. * src/base/ftsynth.c (ft_test_extrema, ft_get_orientation): Removed.
(FT_GlyphSlot_Embolden): Use FT_Outline_Get_Orientation. (FT_GlyphSlot_Embolden): Use FT_Outline_Get_Orientation.
2004-11-23 Fernando Papa <fpapa@netgate.com.uy> 2004-11-23 Fernando Papa <fpapa@netgate.com.uy>
@ -1829,7 +1829,7 @@
2004-08-05 David Turner <david@freetype.org> 2004-08-05 David Turner <david@freetype.org>
`Activate' gray-scale specifing hinting within the TrueType `Activate' gray-scale specifying hinting within the TrueType
bytecode interpreter. This is an experimental feature which bytecode interpreter. This is an experimental feature which
should probably be made optional. should probably be made optional.
@ -1839,7 +1839,7 @@
(TT_Load_Glyph): Here. (TT_Load_Glyph): Here.
Set `grayscale' flag except for `FT_LOAD_TARGET_MONO'. Set `grayscale' flag except for `FT_LOAD_TARGET_MONO'.
* src/truetyep/ttinterp.c (Ins_GETINFO): Return MS rasterizer * src/truetype/ttinterp.c (Ins_GETINFO): Return MS rasterizer
version 1.7. version 1.7.
Return rotation and stretching info only if glyph is rotated or Return rotation and stretching info only if glyph is rotated or
stretched, respectively. stretched, respectively.
@ -1868,7 +1868,7 @@
(LITTLE_ENDIAN_USHORT, LITTLE_ENDIAN_UINT): New macros. (LITTLE_ENDIAN_USHORT, LITTLE_ENDIAN_UINT): New macros.
(T1_Read_PFM): New function. (T1_Read_PFM): New function.
(T1_Read_Metrics): New higher-level function to be used instead of (T1_Read_Metrics): New higher-level function to be used instead of
T1Read_AFM. T1_Read_AFM.
Update all callers. Update all callers.
2004-07-31 Werner Lemberg <wl@gnu.org> 2004-07-31 Werner Lemberg <wl@gnu.org>
@ -2048,7 +2048,7 @@
pcf_get_metrics, pcf_get_bitmaps, pcf_get_encodings): Improve pcf_get_metrics, pcf_get_bitmaps, pcf_get_encodings): Improve
debugging messages. debugging messages.
* src/pcf/pcfdrivr.c (FT_COMPOMENT): Move up. * src/pcf/pcfdrivr.c (FT_COMPONENT): Move up.
(PCF_Face_Init): Simplify code. (PCF_Face_Init): Simplify code.
* src/bdf/bdfdrivr.h (BDF_FaceRec): New element `default_glyph'. * src/bdf/bdfdrivr.h (BDF_FaceRec): New element `default_glyph'.
@ -2116,7 +2116,7 @@
* include/freetype/cache/ftcmru.h (FTC_MruNode_CompareFunc): Change * include/freetype/cache/ftcmru.h (FTC_MruNode_CompareFunc): Change
return type to FT_Bool. return type to FT_Bool.
* src/cache/ftbasic.c (ftc_basic_family_compare): Change return * src/cache/ftcbasic.c (ftc_basic_family_compare): Change return
type to FT_Bool. type to FT_Bool.
* src/cache/ftccache.c (FTC_Cache_Init, ftc_cache_init): Make * src/cache/ftccache.c (FTC_Cache_Init, ftc_cache_init): Make
@ -2153,7 +2153,7 @@
* docs/CHANGES: Updated. * docs/CHANGES: Updated.
2004-06-04 David Chester <davidchester@gmx.net> 2004-06-04 David Chester <davidchester@qmx.net>
Improve inter-letter spacing for autohinted glyphs. Improve inter-letter spacing for autohinted glyphs.
@ -2289,7 +2289,7 @@
* src/cff/cffgload.h (CFF_Builder): Remove `error'. * src/cff/cffgload.h (CFF_Builder): Remove `error'.
* src/cff/cffgload.c (cff_decoder_parse_charstrings): Replace * src/cff/cffgload.c (cff_decoder_parse_charstrings): Replace
`Memory_Error' with `Fail' und update all users. `Memory_Error' with `Fail' and update all users.
2004-05-11 Werner Lemberg <wl@gnu.org> 2004-05-11 Werner Lemberg <wl@gnu.org>
@ -2899,7 +2899,7 @@
Improve MacOS fond support. Provide a new API Improve MacOS fond support. Provide a new API
`FT_New_Face_From_FSSpec' similar to `FT_New_Face'. `FT_New_Face_From_FSSpec' similar to `FT_New_Face'.
* src/base/ftmac.c [__MWERKS__]: Include FSp_fpopen.h. * src/base/ftmac.c [__MWERKS__]: Include FSp_fopen.h.
STREAM_FILE [__MWERKS__]: New macro. STREAM_FILE [__MWERKS__]: New macro.
(ft_FSp_stream_close, ft_FSp_stream_io) [__MWERKS__]: New functions. (ft_FSp_stream_close, ft_FSp_stream_io) [__MWERKS__]: New functions.
(file_spec_from_path) [__MWERKS__]: Updated #if statement. (file_spec_from_path) [__MWERKS__]: Updated #if statement.
@ -3331,7 +3331,7 @@
* src/cff/cffdrivr.c (cff_get_cmap_info): Call sfnt module's TT CMap * src/cff/cffdrivr.c (cff_get_cmap_info): Call sfnt module's TT CMap
Info service function if the cmap comes from sfnt. Return 0 if the Info service function if the cmap comes from sfnt. Return 0 if the
cmap is sythesized in cff module. cmap is synthesized in cff module.
2004-01-20 David Turner <david@freetype.org> 2004-01-20 David Turner <david@freetype.org>
@ -3460,7 +3460,7 @@
2003-12-25 Werner Lemberg <wl@gnu.org> 2003-12-25 Werner Lemberg <wl@gnu.org>
* src/base/fttrigon.c, src/base/ftgloadr.c: Inlude * src/base/fttrigon.c, src/base/ftgloadr.c: Include
FT_INTERNAL_OBJECTS_H. FT_INTERNAL_OBJECTS_H.
* src/base/ftstroke.c (FT_Outline_GetInsideBorder, * src/base/ftstroke.c (FT_Outline_GetInsideBorder,
@ -3539,7 +3539,7 @@
src/cache/ftcsbits.c, src/cache/ftcsbits.c,
src/cache/ftccmap.c, src/cache/ftccmap.c,
src/cache/ftcbasic.c (added), src/cache/ftcbasic.c (added),
src/cache/ftclru.c (removed): src/cache/ftlru.c (removed):
*Complete* rewrite of the cache sub-system to `solve' the *Complete* rewrite of the cache sub-system to `solve' the
following points: following points:
@ -4010,7 +4010,7 @@
* src/cff/cffload.h, src/cff/cffobjs.h, src/cff/cffparse.h: Don't * src/cff/cffload.h, src/cff/cffobjs.h, src/cff/cffparse.h: Don't
include FT_INTERNAL_CFF_TYPES_H but cfftypes.h directly. include FT_INTERNAL_CFF_TYPES_H but cfftypes.h directly.
* src/cif/cidriver.c: Include FT_SERVICE_POSTSCRIPT_INFO_H. * src/cid/cidriver.c: Include FT_SERVICE_POSTSCRIPT_INFO_H.
(cid_ps_get_font_info): New function. (cid_ps_get_font_info): New function.
(cid_service_ps_info): New service. (cid_service_ps_info): New service.
(cid_services): Updated. (cid_services): Updated.
@ -4119,7 +4119,7 @@
(fnt_cmap_class_rec, fnt_cmap_class), src/bdf/bdflib.c (empty, (fnt_cmap_class_rec, fnt_cmap_class), src/bdf/bdflib.c (empty,
_num_bdf_properties), src/gzip/infutil.c (inflate_mask), _num_bdf_properties), src/gzip/infutil.c (inflate_mask),
src/gzip/inffixed.h (fixed_bl, fixed_bd, fixed_tl, fixed_td), src/gzip/inffixed.h (fixed_bl, fixed_bd, fixed_tl, fixed_td),
src/gzip/inftrees.h (inflate_trees_fixed), srf/gzip/inftrees.c src/gzip/inftrees.h (inflate_trees_fixed), src/gzip/inftrees.c
(inflate_trees_fixed): Decorate with more `const' to avoid (inflate_trees_fixed): Decorate with more `const' to avoid
writable global variables which are disallowed on ARM. writable global variables which are disallowed on ARM.
@ -4659,7 +4659,7 @@
* src/type42/t42drivr.c: Include FT_SERVICE_XFREE86_NAME_H, * src/type42/t42drivr.c: Include FT_SERVICE_XFREE86_NAME_H,
FT_SERVICE_GLYPH_DICT_H, and FT_SERVICE_POSTSCRIPT_NAME_H. FT_SERVICE_GLYPH_DICT_H, and FT_SERVICE_POSTSCRIPT_NAME_H.
(t42_service_glyph_dict, t42_service_ps_name): New strucures (t42_service_glyph_dict, t42_service_ps_name): New structures
providing Type 42 services. providing Type 42 services.
(t42_services): New services list. (t42_services): New services list.
(T42_Get_Interface): Use `ft_service_list_lookup'. (T42_Get_Interface): Use `ft_service_list_lookup'.
@ -4683,7 +4683,7 @@
(gindex,gindex). (gindex,gindex).
* src/base/ftpfr.c (ft_pfr_check): Fix serious typo. * src/base/ftpfr.c (ft_pfr_check): Fix serious typo.
* src/pfr/prfload.c: Remove dead code. * src/pfr/pfrload.c: Remove dead code.
(pfr_get_gindex, pfr_compare_kern_pairs, pfr_sort_kerning_pairs): (pfr_get_gindex, pfr_compare_kern_pairs, pfr_sort_kerning_pairs):
New functions. New functions.
(pfr_phy_font_done): Free `kern_pairs'. (pfr_phy_font_done): Free `kern_pairs'.
@ -5116,7 +5116,7 @@
ft_glyph_bbox_subpixels, ft_glyph_bbox_gridfit, ft_glyph_bbox_subpixels, ft_glyph_bbox_gridfit,
ft_glyph_bbox_truncate, ft_glyph_bbox_pixels): Replaced with ft_glyph_bbox_truncate, ft_glyph_bbox_pixels): Replaced with
FT_GLYPH_BBOX_UNSCALED, FT_GLYPH_BBOX_SUBPIXELS, FT_GLYPH_BBOX_UNSCALED, FT_GLYPH_BBOX_SUBPIXELS,
FT_GLYPH_BBIX_GRIDFIT, FT_GLYPH_BBOX_TRUNCATE, FT_GLYPH_BBOX_PIXELS. FT_GLYPH_BBOX_GRIDFIT, FT_GLYPH_BBOX_TRUNCATE, FT_GLYPH_BBOX_PIXELS.
The lowercase variants are now (deprecated aliases) to the uppercase The lowercase variants are now (deprecated aliases) to the uppercase
versions. versions.
Updated all other files. Updated all other files.
@ -5346,7 +5346,7 @@
* src/cff/cffload (cff_subfont_load): Fix default values of * src/cff/cffload (cff_subfont_load): Fix default values of
expansion_factor and blue_scale. expansion_factor and blue_scale.
* src/cif/cidtoken.h, src/type1/t1tokens.h: Use T1_FIELD_FIXED_1000 * src/cid/cidtoken.h, src/type1/t1tokens.h: Use T1_FIELD_FIXED_1000
for blue_scale. for blue_scale.
* src/pshinter/pshglob.c (psh_globals_new): Fix default value of * src/pshinter/pshglob.c (psh_globals_new): Fix default value of
@ -5569,7 +5569,7 @@
* src/bdf/bdfdrivr.c (BDF_Face_Init), src/pcf/pcfdriver.c * src/bdf/bdfdrivr.c (BDF_Face_Init), src/pcf/pcfdriver.c
(PCF_Face_Init): Test for charset registry case-insensitively. (PCF_Face_Init): Test for charset registry case-insensitively.
* src/gzip/ftgzip.c (ft_gzip_fil_io): Revert change from yesterday; * src/gzip/ftgzip.c (ft_gzip_file_io): Revert change from yesterday;
it has already been fixed differently. it has already been fixed differently.
* src/truetype/ttinterp.c (DO_SFVTL): Add missing braces around * src/truetype/ttinterp.c (DO_SFVTL): Add missing braces around
@ -5706,7 +5706,7 @@
(ah_outline_compute_edges): Scale `edge_distance_threshold' down (ah_outline_compute_edges): Scale `edge_distance_threshold' down
after rounding instead of scaling comparison value in loop. after rounding instead of scaling comparison value in loop.
* src/autohint/ahhint.c (ah_hinter_align_stong_points): Provide * src/autohint/ahhint.c (ah_hinter_align_strong_points): Provide
alternative code which runs faster. alternative code which runs faster.
Handle `before->scale == 0'. Handle `before->scale == 0'.
@ -5960,7 +5960,7 @@
2003-03-27 David Turner <david@freetype.org> 2003-03-27 David Turner <david@freetype.org>
* README: Udpated. * README: Updated.
* README.UNX: Removed (now replaced by docs/INSTALL.UNX). * README.UNX: Removed (now replaced by docs/INSTALL.UNX).
@ -6260,7 +6260,7 @@
Adding a new API `FT_Get_BDF_Property' to retrieve the BDF Adding a new API `FT_Get_BDF_Property' to retrieve the BDF
properties of a given PCF or BDF font. properties of a given PCF or BDF font.
* include/freetype/ftbdf.h (FT_PropertyType): New enumeration. * include/freetype/ftbdf.h (BDF_PropertyType): New enumeration.
(BDF_Property, BDF_PropertyRec): New structure. (BDF_Property, BDF_PropertyRec): New structure.
FT_Get_BDF_Property): New function. FT_Get_BDF_Property): New function.
* include/freetype/internal/bdftypes.h: Include FT_BDF_H. * include/freetype/internal/bdftypes.h: Include FT_BDF_H.
@ -6275,7 +6275,7 @@
(bdf_driver_class): Use `bdf_driver_requester'. (bdf_driver_class): Use `bdf_driver_requester'.
* src/pcf/pcfdrivr.c: Include FT_BDF_H. * src/pcf/pcfdrivr.c: Include FT_BDF_H.
(pcf_get_bdf_property, pdc_driver_requester): New functions (pcf_get_bdf_property, pcf_driver_requester): New functions
(pcf_driver_class): Use `pcf_driver_requester'. (pcf_driver_class): Use `pcf_driver_requester'.
* src/pcf/pcfread.c: Include `pcfread.h'. * src/pcf/pcfread.c: Include `pcfread.h'.
@ -6547,7 +6547,7 @@
2002-11-07 David Turner <david@freetype.org> 2002-11-07 David Turner <david@freetype.org>
* src/cache/ftcsbit.c (ftc_sbit_node_load): Fixed a small bug that * src/cache/ftcsbits.c (ftc_sbit_node_load): Fixed a small bug that
caused problems with embedded bitmaps. caused problems with embedded bitmaps.
* src/otlayout/otlayout.h, src/otlyaout/otlconf.h, * src/otlayout/otlayout.h, src/otlyaout/otlconf.h,
@ -6608,7 +6608,7 @@
2002-11-01 David Turner <david@freetype.org> 2002-11-01 David Turner <david@freetype.org>
Added PFR-specific public API. Fixed the kerning retrievel routine Added PFR-specific public API. Fixed the kerning retrieval routine
(it returned invalid values when the outline and metrics resolution (it returned invalid values when the outline and metrics resolution
differ). differ).
@ -6695,7 +6695,7 @@
* src/pfr/pfrgload.c: Include `pfrsbit.h'. * src/pfr/pfrgload.c: Include `pfrsbit.h'.
* src/pfr/pfrload.c (pfr_extra_item_load_kerning_pairs): Rewritten. * src/pfr/pfrload.c (pfr_extra_item_load_kerning_pairs): Rewritten.
(pfr_phy_font_done, pfr_phy_font_load): Updated. (pfr_phy_font_done, pfr_phy_font_load): Updated.
* src/pfr/pfrobks.c: Include `pfrsbit.h'. * src/pfr/pfrobjs.c: Include `pfrsbit.h'.
(pfr_face_init): Handle kerning and embedded bitmaps. (pfr_face_init): Handle kerning and embedded bitmaps.
(pfr_slot_load): Load embedded bitmaps. (pfr_slot_load): Load embedded bitmaps.
(PFR_KERN_INDEX): Removed. (PFR_KERN_INDEX): Removed.
@ -6973,7 +6973,7 @@
* src/pshinter/pshalgo2.c (psh2_glyph_find_strong_points), * src/pshinter/pshalgo2.c (psh2_glyph_find_strong_points),
src/pshinter/pshalgo3.c (psh3_glyph_find_strong_points): Adding fix src/pshinter/pshalgo3.c (psh3_glyph_find_strong_points): Adding fix
to prevent seg fault when hints are provided in an empty glyph. to prevent segfault when hints are provided in an empty glyph.
* src/cache/ftccache.i (GEN_CACHE_LOOKUP) [FT_DEBUG_LEVEL_ERROR]: * src/cache/ftccache.i (GEN_CACHE_LOOKUP) [FT_DEBUG_LEVEL_ERROR]:
Removed conditional code. This fixes a bug that prevented Removed conditional code. This fixes a bug that prevented
@ -7032,7 +7032,7 @@
(FTC_Image_Cache_Lookup): This function. (FTC_Image_Cache_Lookup): This function.
(ftc_image_family_init): Updated. (ftc_image_family_init): Updated.
* src/cache/ftcsbit.c (FTC_SBitQueryRec, FTC_SBitFamilyRec): * src/cache/ftcsbits.c (FTC_SBitQueryRec, FTC_SBitFamilyRec):
Updated. Updated.
(ftc_sbit_node_load): Updated. (ftc_sbit_node_load): Updated.
Moved code to convert type flags to load flags to... Moved code to convert type flags to load flags to...
@ -7155,7 +7155,7 @@
to ... to ...
(FT_Glyph_{Init,Done,Transform,GetBBox,Copy,Prepare}Func): This. (FT_Glyph_{Init,Done,Transform,GetBBox,Copy,Prepare}Func): This.
(FTRenderer_{render,transform,getCBox,setMode}): Renamed to ... (FTRenderer_{render,transform,getCBox,setMode}): Renamed to ...
(FT_Renderer_{RenderFunc,TransformFunc,GetCBoxFunc,SeteModeFunc}): (FT_Renderer_{RenderFunc,TransformFunc,GetCBoxFunc,SetModeFunc}):
This. This.
Updated all affected code. Updated all affected code.
@ -7556,7 +7556,7 @@
Get glyph offset. Get glyph offset.
* src/truetype/ttobjs.c (TT_Face_Init) * src/truetype/ttobjs.c (TT_Face_Init)
[FT_CONFIG_OPTION_INCOREMENTAL]: Added the incremental loading [FT_CONFIG_OPTION_INCREMENTAL]: Added the incremental loading
system for the TrueType driver. system for the TrueType driver.
* src/cid/cidgload.c (cid_load_glyph) * src/cid/cidgload.c (cid_load_glyph)
@ -7897,7 +7897,7 @@
2002-06-21 Sven Neumann <sven@convergence.de> 2002-06-21 Sven Neumann <sven@convergence.de>
* src/prf/pfrtypes.h (PFR_KernPair): New structure. * src/pfr/pfrtypes.h (PFR_KernPair): New structure.
(PFR_PhyFont): Use it. (PFR_PhyFont): Use it.
(PFR_KernFlags): New enumeration. (PFR_KernFlags): New enumeration.
* src/pfr/pfrload.c (pfr_extra_item_load_kerning_pairs): New * src/pfr/pfrload.c (pfr_extra_item_load_kerning_pairs): New
@ -8245,7 +8245,7 @@
`fttype1.c' in src/base. `fttype1.c' in src/base.
* src/pshinter/pshglob.c (psh_blues_scale_zones): Fixed a bug that * src/pshinter/pshglob.c (psh_blues_scale_zones): Fixed a bug that
prevented family blue zones substitution from hapenning correctly. prevented family blue zones substitution from happening correctly.
* include/freetype/ftbdf.h FT_Get_BDF_Charset_ID): Adding * include/freetype/ftbdf.h FT_Get_BDF_Charset_ID): Adding
documentation comment. documentation comment.
@ -8622,7 +8622,7 @@
2002-04-19 Werner Lemberg <wl@gnu.org> 2002-04-19 Werner Lemberg <wl@gnu.org>
* src/pfr/pfrload.c (pfr_extra_items_farse): Fix debug message. * src/pfr/pfrload.c (pfr_extra_items_parse): Fix debug message.
(pfr_phy_font_load): s/size/Size/ for local variable to avoid (pfr_phy_font_load): s/size/Size/ for local variable to avoid
compiler warning. compiler warning.
* src/pfr/pfrobjs.c (pfr_face_init): Fix debug message. * src/pfr/pfrobjs.c (pfr_face_init): Fix debug message.
@ -8676,7 +8676,7 @@
2002-04-16 Francesco Zappa Nardelli <Francesco.Zappa.Nardelli@ens.fr> 2002-04-16 Francesco Zappa Nardelli <Francesco.Zappa.Nardelli@ens.fr>
* src/pcf/pcfread (pcf_get_accell): Fix parsing of accelerator * src/pcf/pcfread.c (pcf_get_accel): Fix parsing of accelerator
tables. tables.
2002-04-15 David Turner <david@freetype.org> 2002-04-15 David Turner <david@freetype.org>
@ -8716,7 +8716,7 @@
src/cache/ftcimage.c, src/cache/ftcsbits.c, src/cache/ftcimage.c, src/cache/ftcsbits.c,
src/cff/cffdriver.c, src/cff/cffload.c, src/cff/cffobjs.c, src/cff/cffdrivr.c, src/cff/cffload.c, src/cff/cffobjs.c,
src/cid/cidload.c, src/cid/cidparse.c, src/cid/cidriver.c, src/cid/cidload.c, src/cid/cidparse.c, src/cid/cidriver.c,
@ -9068,7 +9068,7 @@
* include/freetype/internal/psaux.h, src/cid/cidload.c, * include/freetype/internal/psaux.h, src/cid/cidload.c,
src/cidtoken.h, src/psaux/psobjs.c, src/psaux/psobjs.h, src/cidtoken.h, src/psaux/psobjs.c, src/psaux/psobjs.h,
src/psaux/t1decode.c, stc/type1/t1load.c, src/type1/t1tokens.h: src/psaux/t1decode.c, src/type1/t1load.c, src/type1/t1tokens.h:
Updated common PostScript type definitions. Updated common PostScript type definitions.
Renamed all enumeration values like to uppercase variants: Renamed all enumeration values like to uppercase variants:
@ -9076,7 +9076,7 @@
t1_field_cid_info => T1_FIELD_LOCATION_CID_INFO t1_field_cid_info => T1_FIELD_LOCATION_CID_INFO
etc. etc.
* include/freetype/internal/psglobals.h: Removed. * include/freetype/internal/psglobal.h: Removed.
* include/freetype/internal/pshints.h, src/pshinter/pshglob.h: * include/freetype/internal/pshints.h, src/pshinter/pshglob.h:
Updated. Updated.
@ -9423,7 +9423,7 @@
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
Copyright 2002, 2003, 2004, 2005, 2007, 2008 by Copyright 2002-2016 by
David Turner, Robert Wilhelm, and Werner Lemberg. David Turner, Robert Wilhelm, and Werner Lemberg.
This file is part of the FreeType project, and may only be used, modified, This file is part of the FreeType project, and may only be used, modified,

View file

@ -260,7 +260,7 @@
2006-04-26 Werner Lemberg <wl@gnu.org> 2006-04-26 Werner Lemberg <wl@gnu.org>
* src/psaux/psobjs.c (shift_elements): Don't use FT_Long but * src/psaux/psobjs.c (shift_elements): Don't use FT_Long but
FT_PtrDiff for `delta'. Reported by Céline PILLET FT_PtrDist for `delta'. Reported by Céline PILLET
<Celine.Pillet@Tagginfo.com>. <Celine.Pillet@Tagginfo.com>.
2006-04-21 David Turner <david@freetype.org> 2006-04-21 David Turner <david@freetype.org>
@ -360,7 +360,7 @@
* include/freetype/internal/ftgloadr.h (FT_SUBGLYPH_FLAGS_*): Moved * include/freetype/internal/ftgloadr.h (FT_SUBGLYPH_FLAGS_*): Moved
to... to...
* include/freetype/freetype.h (FT_SUBGLYPH_FLAGS_*): Here. * include/freetype/freetype.h (FT_SUBGLYPH_FLAGS_*): Here.
(FT_Get_SybGlyph_Info): New declaration. (FT_Get_SubGlyph_Info): New declaration.
* src/base/ftobjs.c (FT_Get_SubGlyph_Info): New function. * src/base/ftobjs.c (FT_Get_SubGlyph_Info): New function.
@ -387,10 +387,10 @@
(FTC_INode_Weight): Commented out. (FTC_INode_Weight): Commented out.
* src/cache/ftcimage.h: Updated. * src/cache/ftcimage.h: Updated.
* src/cache/ftmanag.c (FTC_Manager_Compress, * src/cache/ftcmanag.c (FTC_Manager_Compress,
FTC_Manager_RegisterCache, FTC_Manager_FlushN): FTC_Manager_RegisterCache, FTC_Manager_FlushN):
s/FT_EXPORT/FT_LOCAL/. s/FT_EXPORT/FT_LOCAL/.
* src/cache/ftmanag.h: Updated. * src/cache/ftcmanag.h: Updated.
* src/cache/ftcsbits.c (FTC_SNode_Free, FTC_SNode_New, * src/cache/ftcsbits.c (FTC_SNode_Free, FTC_SNode_New,
FTC_SNode_Compare): s/FT_EXPORT/FT_LOCAL/. FTC_SNode_Compare): s/FT_EXPORT/FT_LOCAL/.
@ -934,7 +934,7 @@
* include/freetype/freetype.h (FT_GlyphSlotRec): Improve * include/freetype/freetype.h (FT_GlyphSlotRec): Improve
documentation of `outline' field. documentation of `outline' field.
* src/sfnt/sfobjc.s: Inckude FT_INTERNAL_DEBUG_H. * src/sfnt/sfobjs.c: Include FT_INTERNAL_DEBUG_H.
* src/sfnt/sfdriver.c: Include ttmtx.h. * src/sfnt/sfdriver.c: Include ttmtx.h.
* src/autofit/afcjk.c: Include aftypes.h and aflatin.h. * src/autofit/afcjk.c: Include aftypes.h and aflatin.h.
@ -1630,8 +1630,8 @@
* include/freetype/internal/t1types.h (T1_FaceRec): Updated. * include/freetype/internal/t1types.h (T1_FaceRec): Updated.
* src/psaux/t1cmap.h (T1_CmapStdRec): Updated. * src/psaux/t1cmap.h (T1_CMapStdRec): Updated.
(T1_CmapUnicode, T1_CmapUnicodeRec): Removed. (T1_CMapUnicode, T1_CMapUnicodeRec): Removed.
* src/psaux/t1cmap.c (t1_get_glyph_name): New callback function. * src/psaux/t1cmap.c (t1_get_glyph_name): New callback function.
(t1_cmap_unicode_init, t1_cmap_unicode_done, (t1_cmap_unicode_init, t1_cmap_unicode_done,
@ -1781,7 +1781,7 @@
Note that this doesn't force auto-hinting for all fonts, however. Note that this doesn't force auto-hinting for all fonts, however.
* src/autofit/afhints.c (af_glyph_hints_reload): Don't set * src/autofit/afhints.c (af_glyph_hints_reload): Don't set
scaler_fiags here but... scaler_flags here but...
(af_glyph_hints_rescale): Here. (af_glyph_hints_rescale): Here.
* src/autofit/aflatin.c (af_latin_hints_init): Disable horizontal * src/autofit/aflatin.c (af_latin_hints_init): Disable horizontal
@ -1813,7 +1813,7 @@
[TT_CONFIG_OPTION_BDF]: New structure. [TT_CONFIG_OPTION_BDF]: New structure.
(TT_FaceRec) [TT_CONFIG_OPTION_BDF]: New member `bdf'. (TT_FaceRec) [TT_CONFIG_OPTION_BDF]: New member `bdf'.
* include/freetype/ttags.h (TTAG_BDF): New macro. * include/freetype/tttags.h (TTAG_BDF): New macro.
* src/sfnt/Jamfile (_sources): Add ttbdf. * src/sfnt/Jamfile (_sources): Add ttbdf.
@ -1835,7 +1835,7 @@
2005-12-07 Werner Lemberg <wl@gnu.org> 2005-12-07 Werner Lemberg <wl@gnu.org>
* src/sfnt/sfobjc.c (sfnt_init_face): Move tag check to... * src/sfnt/sfobjs.c (sfnt_init_face): Move tag check to...
* src/sfnt/ttload.c (sfnt_init): Here, before handling TTCs. * src/sfnt/ttload.c (sfnt_init): Here, before handling TTCs.
2005-12-06 Chia-I Wu <b90201047@ntu.edu.tw> 2005-12-06 Chia-I Wu <b90201047@ntu.edu.tw>
@ -1962,7 +1962,7 @@
* docs/CHANGES: Mention scaling bug. * docs/CHANGES: Mention scaling bug.
2005-11-18 susuzki toshiya <mpsuzuki@hiroshima-u.ac.jp> 2005-11-18 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
* include/freetype/ftgxval.h, src/base/ftgxval.c * include/freetype/ftgxval.h, src/base/ftgxval.c
(FT_TrueTypeGX_Free, FT_ClassicKern_Free): New functions to free (FT_TrueTypeGX_Free, FT_ClassicKern_Free): New functions to free
@ -2311,7 +2311,7 @@
CJK font). A SING Glyphlet Font is an OpenType font that contains CJK font). A SING Glyphlet Font is an OpenType font that contains
the outline(s), either in a `glyf' or `CFF' table, for a glyph; the outline(s), either in a `glyf' or `CFF' table, for a glyph;
`cmap', `BASE', and `GSUB' tables are present with the same format `cmap', `BASE', and `GSUB' tables are present with the same format
and functionaliy as a regular OpenType font; there are no `name', and functionality as a regular OpenType font; there are no `name',
`head', `OS/2', and `post' tables; there are two new tables, `SING' `head', `OS/2', and `post' tables; there are two new tables, `SING'
which contains details about the glyphlet, and `META' which contains which contains details about the glyphlet, and `META' which contains
metadata. metadata.
@ -2320,7 +2320,7 @@
http://www.adobe.com/products/indesign/sing_gaiji.html http://www.adobe.com/products/indesign/sing_gaiji.html
* include/freetype/ttags.h (TTAG_SING, TTAG_META): New macros for * include/freetype/tttags.h (TTAG_SING, TTAG_META): New macros for
the OpenType tables `SING' and `META'. These two tables are used in the OpenType tables `SING' and `META'. These two tables are used in
SING Glyphlet Format fonts. SING Glyphlet Format fonts.
@ -2371,7 +2371,7 @@
(gxv_kern_subtable_fmt1_valueTable_load, (gxv_kern_subtable_fmt1_valueTable_load,
gxv_kern_subtable_fmt1_subtable_setup, gxv_kern_subtable_fmt1_subtable_setup,
gxv_kern_subtable_fmt1_entry_validate): Fix C++ compiler errors. gxv_kern_subtable_fmt1_entry_validate): Fix C++ compiler errors.
(gxv_kern_coverage_validate): Use KERN_DIALECT_UNKWOWN. (gxv_kern_coverage_validate): Use KERN_DIALECT_UNKNOWN.
Improve trace message. Improve trace message.
(gxv_kern_validate_generic): Fix C++ compiler error. (gxv_kern_validate_generic): Fix C++ compiler error.
Improve trace message. Improve trace message.
@ -2821,7 +2821,7 @@
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
Copyright 2005, 2006, 2007, 2008 by Copyright 2005-2016 by
David Turner, Robert Wilhelm, and Werner Lemberg. David Turner, Robert Wilhelm, and Werner Lemberg.
This file is part of the FreeType project, and may only be used, modified, This file is part of the FreeType project, and may only be used, modified,

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,6 +1,6 @@
# FreeType 2 top Jamfile. # FreeType 2 top Jamfile.
# #
# Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 by # Copyright 2001-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -73,19 +73,20 @@ FT2_BUILD_INCLUDE ?= ;
FT2_COMPONENTS ?= autofit # auto-fitter FT2_COMPONENTS ?= autofit # auto-fitter
base # base component (public APIs) base # base component (public APIs)
bdf # BDF font driver bdf # BDF font driver
bzip2 # support for bzip2-compressed PCF font
cache # cache sub-system cache # cache sub-system
cff # CFF/CEF font driver cff # CFF/CEF font driver
cid # PostScript CID-keyed font driver cid # PostScript CID-keyed font driver
gzip # support for gzip-compressed files gzip # support for gzip-compressed PCF font
lzw # support for LZW-compressed files lzw # support for LZW-compressed PCF font
pcf # PCF font driver pcf # PCF font driver
pfr # PFR/TrueDoc font driver pfr # PFR/TrueDoc font driver
psaux # common PostScript routines module psaux # common PostScript routines module
pshinter # PostScript hinter module pshinter # PostScript hinter module
psnames # PostScript names handling psnames # PostScript names handling
raster # monochrome rasterizer raster # monochrome rasterizer
smooth # anti-aliased rasterizer
sfnt # SFNT-based format support routines sfnt # SFNT-based format support routines
smooth # anti-aliased rasterizer
truetype # TrueType font driver truetype # TrueType font driver
type1 # PostScript Type 1 font driver type1 # PostScript Type 1 font driver
type42 # PostScript Type 42 (embedded TrueType) driver type42 # PostScript Type 42 (embedded TrueType) driver
@ -120,17 +121,16 @@ if $(DEBUG_HINTER)
} }
# We need `freetype2/include' in the current include path in order to # We need `include' in the current include path in order to
# compile any part of FreeType 2. # compile any part of FreeType 2.
#: updating documentation for upcoming release #
HDRS += $(FT2_INCLUDE) ; HDRS += $(FT2_INCLUDE) ;
# We need to #define FT2_BUILD_LIBRARY so that our sources find the # We need to #define FT2_BUILD_LIBRARY so that our sources find the
# internal headers # internal headers
# #
DEFINES += FT2_BUILD_LIBRARY ; CCFLAGS += -DFT2_BUILD_LIBRARY ;
# Uncomment the following line if you want to build individual source files # Uncomment the following line if you want to build individual source files
# for each FreeType 2 module. This is only useful during development, and # for each FreeType 2 module. This is only useful during development, and
@ -139,12 +139,13 @@ DEFINES += FT2_BUILD_LIBRARY ;
# FT2_MULTI = true ; # FT2_MULTI = true ;
# The file <freetype/config/ftheader.h> is used to define macros that are # The files `ftheader.h', `internal.h', and `ftserv.h' are used to define
# later used in #include statements. It needs to be parsed in order to # macros that are later used in #include statements. They need to be parsed
# record these definitions. # in order to record these definitions.
# #
HDRMACRO [ FT2_SubDir include freetype config ftheader.h ] ; HDRMACRO [ FT2_SubDir $(FT2_INCLUDE_DIR) freetype config ftheader.h ] ;
HDRMACRO [ FT2_SubDir include freetype internal internal.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 # Now include the Jamfile in `freetype2/src', used to drive the compilation
@ -152,7 +153,7 @@ HDRMACRO [ FT2_SubDir include freetype internal internal.h ] ;
# #
SubInclude FT2_TOP $(FT2_SRC_DIR) ; SubInclude FT2_TOP $(FT2_SRC_DIR) ;
# Handle the generation of the `ftexport.sym' file which contain the list # Handle the generation of the `ftexport.sym' file, which contains the list
# of exported symbols. This can be used on Unix by libtool. # of exported symbols. This can be used on Unix by libtool.
# #
SubInclude FT2_TOP $(FT2_SRC_DIR) tools ; SubInclude FT2_TOP $(FT2_SRC_DIR) tools ;
@ -160,7 +161,20 @@ SubInclude FT2_TOP $(FT2_SRC_DIR) tools ;
rule GenExportSymbols rule GenExportSymbols
{ {
local apinames = apinames$(SUFEXE) ; local apinames = apinames$(SUFEXE) ;
local headers = [ Glob $(2) : *.h ] ; local aheader ;
local headers ;
for aheader in [ Glob $(2) : *.h ]
{
switch $(aheader)
{
case */ftmac.h :
if ( $(MAC) || $(OS) = MACOSX ) {
headers += $(aheader) ;
}
case *.h : headers += $(aheader) ;
}
}
LOCATE on $(1) = $(ALL_LOCATE_TARGET) ; LOCATE on $(1) = $(ALL_LOCATE_TARGET) ;
@ -176,7 +190,7 @@ actions GenExportSymbols1 bind APINAMES
$(APINAMES) $(2) > $(1) $(APINAMES) $(2) > $(1)
} }
GenExportSymbols ftexport.sym : include/freetype include/freetype/cache ; GenExportSymbols ftexport.sym : include/freetype ;
# Test files (hinter debugging). Only used by FreeType developers. # Test files (hinter debugging). Only used by FreeType developers.
# #
@ -194,7 +208,12 @@ rule RefDoc
actions RefDoc actions RefDoc
{ {
python $(FT2_SRC)/tools/docmaker/docmaker.py --prefix=ft2 --title=FreeType-2.3.9 --output=$(DOC_DIR) $(FT2_INCLUDE)/freetype/*.h $(FT2_INCLUDE)/freetype/config/*.h python $(FT2_SRC)/tools/docmaker/docmaker.py
--prefix=ft2
--title=FreeType-2.7
--output=$(DOC_DIR)
$(FT2_INCLUDE)/freetype/*.h
$(FT2_INCLUDE)/freetype/config/*.h
} }
RefDoc refdoc ; RefDoc refdoc ;

View file

@ -1,6 +1,6 @@
# FreeType 2 JamRules. # FreeType 2 JamRules.
# #
# Copyright 2001, 2002, 2003 by # Copyright 2001-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2002, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -1,24 +1,22 @@
Special notes to Unix users FreeType 2.7
=========================== ============
Please read the file `docs/UPGRADE.UNIX'. It contains important Homepage: http://www.freetype.org
information regarding the installation of FreeType on Unix systems,
especially GNU based operating systems like GNU/Linux.
FreeType 2's library is called `libfreetype', FreeType 1's library FreeType is a freely available software library to render fonts.
is called `libttf'. They are *not* compatible!
It is written in C, designed to be small, efficient, highly
FreeType 2.3.9 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 Please read the docs/CHANGES file, it contains IMPORTANT
INFORMATION. INFORMATION.
Read the files `docs/INSTALL' for installation instructions. 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 The FreeType 2 API reference is located in `docs/reference'; use the
file `ft2-doc.html' as the top entry point. Additional file `ft2-toc.html' as the top entry point. Additional
documentation is available as a separate package from our sites. Go documentation is available as a separate package from our sites. Go
to to
@ -26,23 +24,45 @@
and download one of the following files. and download one of the following files.
freetype-doc-2.3.9.tar.bz2 freetype-doc-2.7.tar.bz2
freetype-doc-2.3.9.tar.gz freetype-doc-2.7.tar.gz
ftdoc239.zip ftdoc27.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 Bugs
==== ====
Please report bugs by e-mail to `freetype-devel@nongnu.org'. Don't Please submit bug reports at
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'.
Alternatively, you may submit a bug report at
https://savannah.nongnu.org/bugs/?group=freetype 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! Enjoy!
@ -51,7 +71,7 @@
---------------------------------------------------------------------- ----------------------------------------------------------------------
Copyright 2006, 2007, 2008, 2009 by Copyright 2006-2016 by
David Turner, Robert Wilhelm, and Werner Lemberg. David Turner, Robert Wilhelm, and Werner Lemberg.
This file is part of the FreeType project, and may only be used, This file is part of the FreeType project, and may only be used,

View file

@ -1,4 +1,4 @@
The CVS archive doesn't contain pre-built configuration scripts for The git archive doesn't contain pre-built configuration scripts for
UNIXish platforms. To generate them say UNIXish platforms. To generate them say
sh autogen.sh sh autogen.sh
@ -31,9 +31,13 @@ configure script is necessary at all; saying
should work on all platforms which have GNU make (or makepp). 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, 2006, 2007, 2008 by Copyright 2005-2016 by
David Turner, Robert Wilhelm, and Werner Lemberg. David Turner, Robert Wilhelm, and Werner Lemberg.
This file is part of the FreeType project, and may only be used, This file is part of the FreeType project, and may only be used,
@ -43,4 +47,4 @@ this file you indicate that you have read the license and understand
and accept it fully. and accept it fully.
--- end of README.CVS --- --- end of README.git ---

View file

@ -1,6 +1,6 @@
#!/bin/sh #!/bin/sh
# Copyright 2005, 2006, 2007, 2008, 2009 by # Copyright 2005-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -95,10 +95,11 @@ compare_to_minimum_version ()
check_tool_version () check_tool_version ()
{ {
field=$5 field=$5
# assume the output of "[TOOL] --version" is "toolname (GNU toolname foo bar) version"
if test "$field"x = x; then if test "$field"x = x; then
field=4 # default to 4 for all GNU autotools field=3 # default to 3 for all GNU autotools, after filtering enclosed string
fi fi
version=`$1 --version | head -1 | cut -d ' ' -f $field` version=`$1 --version | head -1 | sed 's/([^)]*)/()/g' | cut -d ' ' -f $field`
version_check=`compare_to_minimum_version $version $4` version_check=`compare_to_minimum_version $version $4`
if test "$version_check"x = 0x; then if test "$version_check"x = 0x; then
echo "ERROR: Your version of the \`$2' tool is too old." echo "ERROR: Your version of the \`$2' tool is too old."
@ -117,9 +118,12 @@ fi
# On MacOS X, the GNU libtool is named `glibtool'. # On MacOS X, the GNU libtool is named `glibtool'.
HOSTOS=`uname` HOSTOS=`uname`
LIBTOOLIZE=libtoolize if test "$LIBTOOLIZE"x != x; then
if test "$HOSTOS"x = Darwinx; then :
elif test "$HOSTOS"x = Darwinx; then
LIBTOOLIZE=glibtoolize LIBTOOLIZE=glibtoolize
else
LIBTOOLIZE=libtoolize
fi fi
if test "$ACLOCAL"x = x; then if test "$ACLOCAL"x = x; then
@ -152,7 +156,6 @@ run aclocal -I . --force
run $LIBTOOLIZE --force --copy --install run $LIBTOOLIZE --force --copy --install
run autoconf --force run autoconf --force
chmod +x mkinstalldirs
chmod +x install-sh chmod +x install-sh
cd ../.. cd ../..

View file

@ -1,7 +1,7 @@
README for the builds/amiga subdirectory. README for the builds/amiga subdirectory.
Copyright 2005 by Copyright 2005-2016 by
Werner Lemberg and Detlef Würkner. Werner Lemberg and Detlef Würkner.
This file is part of the FreeType project, and may only be used, modified, This file is part of the FreeType project, and may only be used, modified,
@ -71,8 +71,8 @@ directory. The results are:
To use in your own programs: To use in your own programs:
- Insert the #define and #include statements from top of - Insert the #define and #include statements from top of
include/freetype/config/ftmodule.h in your source code and uncomment include/freetype/config/ftmodule.h in your source code and
the #define statements for the FreeType2 modules you need. uncomment the #define statements for the FreeType2 modules you need.
- You can use either PARAMETERS=REGISTER or PARAMETERS=STACK for - You can use either PARAMETERS=REGISTER or PARAMETERS=STACK for
calling the FreeType2 functions, because the link library and the calling the FreeType2 functions, because the link library and the
@ -101,8 +101,8 @@ To adapt to other compilers:
useful for the src directory). useful for the src directory).
- An example of how to replace/workaround a problematic include file - An example of how to replace/workaround a problematic include file
is include/config/ftconfig.h; it changes a #define that would is include/freetype/config/ftconfig.h; it changes a #define that
prevent SAS/C from generating XDEF's where it should do that and would prevent SAS/C from generating XDEF's where it should do that and
then includes the standard FreeType2 include file. then includes the standard FreeType2 include file.
Local Variables: Local Variables:

View file

@ -4,7 +4,7 @@
/* */ /* */
/* Amiga-specific configuration file (specification only). */ /* Amiga-specific configuration file (specification only). */
/* */ /* */
/* Copyright 2005, 2006, 2007 by */ /* Copyright 2005-2016 by */
/* Werner Lemberg and Detlef Würkner. */ /* Werner Lemberg and Detlef Würkner. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */

View file

@ -4,7 +4,7 @@
/* */ /* */
/* Amiga-specific FreeType module selection. */ /* Amiga-specific FreeType module selection. */
/* */ /* */
/* Copyright 2005 by */ /* Copyright 2005-2016 by */
/* Werner Lemberg and Detlef Würkner. */ /* Werner Lemberg and Detlef Würkner. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */

View file

@ -5,7 +5,7 @@
# #
# Copyright 2005, 2006, 2007, 2009 by # Copyright 2005-2016 by
# Werner Lemberg and Detlef Würkner. # Werner Lemberg and Detlef Würkner.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -96,6 +96,9 @@ ftbitmap.ppc.o: $(FTSRC)/base/ftbitmap.c
ftcid.ppc.o: $(FTSRC)/base/ftcid.c ftcid.ppc.o: $(FTSRC)/base/ftcid.c
$(CC) -c $(CFLAGS) -o $@ $< $(CC) -c $(CFLAGS) -o $@ $<
ftfntfmt.ppc.o: $(FTSRC)/base/ftfntfmt.c
$(CC) -c $(CFLAGS) -o $@ $<
ftfstype.ppc.o: $(FTSRC)/base/ftfstype.c ftfstype.ppc.o: $(FTSRC)/base/ftfstype.c
$(CC) -c $(CFLAGS) -o $@ $< $(CC) -c $(CFLAGS) -o $@ $<
@ -135,9 +138,6 @@ fttype1.ppc.o: $(FTSRC)/base/fttype1.c
ftwinfnt.ppc.o: $(FTSRC)/base/ftwinfnt.c ftwinfnt.ppc.o: $(FTSRC)/base/ftwinfnt.c
$(CC) -c $(CFLAGS) -o $@ $< $(CC) -c $(CFLAGS) -o $@ $<
ftxf86.ppc.o: $(FTSRC)/base/ftxf86.c
$(CC) -c $(CFLAGS) -o $@ $<
# #
# FreeType2 library autofitting module # FreeType2 library autofitting module
# #
@ -234,6 +234,11 @@ pcf.ppc.o: $(FTSRC)/pcf/pcf.c
gzip.ppc.o: $(FTSRC)/gzip/ftgzip.c gzip.ppc.o: $(FTSRC)/gzip/ftgzip.c
$(CC) -c $(CFLAGS) -o $@ $< $(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 # FreeType2 library compress support for compressed PCF bitmap fonts
# #
@ -265,10 +270,10 @@ otvalid.ppc.o: $(FTSRC)/otvalid/otvalid.c
$(CC) -c $(CFLAGS) -o $@ $< $(CC) -c $(CFLAGS) -o $@ $<
BASEPPC = ftbase.ppc.o ftbbox.ppc.o ftbdf.ppc.o ftbitmap.ppc.o ftcid.ppc.o \ BASEPPC = ftbase.ppc.o ftbbox.ppc.o ftbdf.ppc.o ftbitmap.ppc.o ftcid.ppc.o \
ftfstype.ppc.o ftgasp.ppc.o ftglyph.ppc.o ftgxval.ppc.o \ ftfntfmt.ppc.oftfstype.ppc.o ftgasp.ppc.o ftglyph.ppc.o \
ftlcdfil.ppc.o ftmm.ppc.o ftotval.ppc.o ftpatent.ppc.o ftpfr.ppc.o \ ftgxval.ppc.o ftlcdfil.ppc.o ftmm.ppc.o ftotval.ppc.o \
ftstroke.ppc.o ftsynth.ppc.o fttype1.ppc.o ftwinfnt.ppc.o \ ftpatent.ppc.o ftpfr.ppc.o ftstroke.ppc.o ftsynth.ppc.o \
ftxf86.ppc.o fttype1.ppc.o ftwinfnt.ppc.o
DEBUGPPC = ftdebug.ppc.o ftdebugpure.ppc.o DEBUGPPC = ftdebug.ppc.o ftdebugpure.ppc.o
@ -285,8 +290,8 @@ RASTERPPC = raster.ppc.o smooth.ppc.o
FONTDPPC = cff.ppc.o type1.ppc.o type42.ppc.o type1cid.ppc.o truetype.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 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 lzw.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 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 -@ ($(RANLIB) $@ || true) >/dev/null 2>&1
#Local Variables: #Local Variables:

View file

@ -1,297 +0,0 @@
#
# Makefile for FreeType2 link library using gcc 4.0.3 from the
# AmigaOS4 SDK
#
# Copyright 2005, 2006, 2007, 2009 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
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
ftxf86.ppc.o: FT:src/base/ftxf86.c
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftxf86.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 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 \
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 \
ftxf86.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:

View file

@ -3,7 +3,7 @@
# #
# Copyright 2005,2006, 2007, 2009 by # Copyright 2005-2016 by
# Werner Lemberg and Detlef Würkner. # Werner Lemberg and Detlef Würkner.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -42,9 +42,9 @@
# (and either ftdebug.o or ftdebugpure.o if you enabled FT_DEBUG_LEVEL_ERROR or # (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). # FT_DEBUG_LEVEL_TRACE in include/freetype/config/ftoption.h).
OBJBASE = ftbase.o ftbbox.o ftbdf.o ftbitmap.o ftcid.o ftfstype.o ftgasp.o \ OBJBASE = ftbase.o ftbbox.o ftbdf.o ftbitmap.o ftcid.o ftfntfmt.o ftfstype.o \
ftglyph.o ftgxval.o ftlcdfil.o ftmm.o ftotval.o ftpatent.o ftpfr.o \ ftgasp.o ftglyph.o ftgxval.o ftlcdfil.o ftmm.o ftotval.o \
ftstroke.o ftsynth.o fttype1.o ftwinfnt.o ftxf86.o ftpatent.o ftpfr.o ftstroke.o ftsynth.o fttype1.o ftwinfnt.o
OBJSYSTEM = ftsystem.o ftsystempure.o OBJSYSTEM = ftsystem.o ftsystempure.o
@ -98,8 +98,8 @@ assign:
# uses separate object modules in lib to make for easier debugging # uses separate object modules in lib to make for easier debugging
# also, can make smaller programs if entire engine is not used # 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 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 oml $@ r $(OBJBASE) $(OBJAFIT) $(OBJOTV) $(OBJPS) $(OBJRASTER) $(OBJSFNT) $(OBJCACHE) $(OBJFONTD) lzw.o gzip.o bzip2.o
clean: clean:
-delete \#?.o -delete \#?.o
@ -133,6 +133,8 @@ ftbitmap.o: $(CORE)base/ftbitmap.c
sc $(SCFLAGS) objname=$@ $< sc $(SCFLAGS) objname=$@ $<
ftcid.o: $(CORE)base/ftcid.c ftcid.o: $(CORE)base/ftcid.c
sc $(SCFLAGS) objname=$@ $< sc $(SCFLAGS) objname=$@ $<
ftfntfmt.o: $(CORE)base/ftfntfmt.c
sc $(SCFLAGS) objname=$@ $<
ftfstype.o: $(CORE)base/ftfstype.c ftfstype.o: $(CORE)base/ftfstype.c
sc $(SCFLAGS) objname=$@ $< sc $(SCFLAGS) objname=$@ $<
ftgasp.o: $(CORE)base/ftgasp.c ftgasp.o: $(CORE)base/ftgasp.c
@ -159,8 +161,6 @@ fttype1.o: $(CORE)base/fttype1.c
sc $(SCFLAGS) objname=$@ $< sc $(SCFLAGS) objname=$@ $<
ftwinfnt.o: $(CORE)base/ftwinfnt.c ftwinfnt.o: $(CORE)base/ftwinfnt.c
sc $(SCFLAGS) objname=$@ $< sc $(SCFLAGS) objname=$@ $<
ftxf86.o: $(CORE)base/ftxf86.c
sc $(SCFLAGS) objname=$@ $<
# #
# freetype library autofitter module # freetype library autofitter module
@ -262,6 +262,12 @@ pcf.o: $(CORE)pcf/pcf.c
gzip.o: $(CORE)gzip/ftgzip.c gzip.o: $(CORE)gzip/ftgzip.c
sc $(SCFLAGS) define FAR objname=$@ $< 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 # freetype library compress support for compressed PCF bitmap fonts
# #

View file

@ -2,9 +2,9 @@
/* */ /* */
/* ftdebug.c */ /* ftdebug.c */
/* */ /* */
/* Debugging and logging component (body). */ /* Debugging and logging component for amiga (body). */
/* */ /* */
/* Copyright 1996-2001, 2002, 2004, 2005 by */ /* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, Werner Lemberg and Detlef Würkner. */ /* David Turner, Robert Wilhelm, Werner Lemberg and Detlef Würkner. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -41,7 +41,7 @@
/*************************************************************************/ /*************************************************************************/
/* /*
* Based on the default ftdebug.c, * Based on the default ftdebug.c,
* replaced vprintf() with KVPrintF(), * replaced vprintf() with KVPrintF(),
* commented out exit(), * commented out exit(),
@ -59,9 +59,9 @@
#include <clib/debug_protos.h> #include <clib/debug_protos.h>
#ifndef __amigaos4__ #ifndef __amigaos4__
extern struct Library *DOSBase; extern struct Library *DOSBase;
#else #else
extern struct DOSIFace *IDOS; extern struct DOSIFace *IDOS;
#endif #endif
@ -75,13 +75,13 @@ extern struct DOSIFace *IDOS;
/* documentation is in ftdebug.h */ /* documentation is in ftdebug.h */
FT_BASE_DEF( void ) FT_BASE_DEF( void )
FT_Message( const char* fmt, ... ) FT_Message( const char* fmt,
... )
{ {
va_list ap; va_list ap;
va_start( ap, fmt ); va_start( ap, fmt );
/* vprintf( fmt, ap ); */
KVPrintF( fmt, ap ); KVPrintF( fmt, ap );
va_end( ap ); va_end( ap );
} }
@ -90,19 +90,34 @@ extern struct DOSIFace *IDOS;
/* documentation is in ftdebug.h */ /* documentation is in ftdebug.h */
FT_BASE_DEF( void ) FT_BASE_DEF( void )
FT_Panic( const char* fmt, ... ) FT_Panic( const char* fmt,
... )
{ {
va_list ap; va_list ap;
va_start( ap, fmt ); va_start( ap, fmt );
/* vprintf( fmt, ap ); */
KVPrintF( fmt, ap ); KVPrintF( fmt, ap );
va_end( ap ); va_end( ap );
/* exit( EXIT_FAILURE ); */ /* 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 */ #endif /* FT_DEBUG_LEVEL_ERROR */
@ -161,7 +176,7 @@ extern struct DOSIFace *IDOS;
/* the memory and stream components which are set to 7 and 5, */ /* the memory and stream components which are set to 7 and 5, */
/* respectively. */ /* respectively. */
/* */ /* */
/* See the file <include/freetype/internal/fttrace.h> for details of the */ /* See the file `include/freetype/internal/fttrace.h' for details of the */
/* available toggle names. */ /* available toggle names. */
/* */ /* */
/* The level must be between 0 and 7; 0 means quiet (except for serious */ /* The level must be between 0 and 7; 0 means quiet (except for serious */
@ -193,6 +208,9 @@ extern struct DOSIFace *IDOS;
while ( *p && *p != ':' ) while ( *p && *p != ':' )
p++; p++;
if ( !*p )
break;
if ( *p == ':' && p > q ) if ( *p == ':' && p > q )
{ {
FT_Int n, i, len = (FT_Int)( p - q ); FT_Int n, i, len = (FT_Int)( p - q );
@ -221,7 +239,7 @@ extern struct DOSIFace *IDOS;
p++; p++;
if ( *p ) if ( *p )
{ {
level = *p++ - '0'; level = *p - '0';
if ( level < 0 || level > 7 ) if ( level < 0 || level > 7 )
level = -1; level = -1;
} }
@ -277,4 +295,3 @@ coding: latin-1
End: End:
*/ */
/* END */ /* END */

View file

@ -4,7 +4,7 @@
/* */ /* */
/* Amiga-specific FreeType low-level system interface (body). */ /* Amiga-specific FreeType low-level system interface (body). */
/* */ /* */
/* Copyright 1996-2001, 2002, 2005, 2006, 2007 by */ /* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, Werner Lemberg and Detlef Würkner. */ /* David Turner, Robert Wilhelm, Werner Lemberg and Detlef Würkner. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -386,7 +386,7 @@ Free_VecPooled( APTR poolHeader,
if ( !stream ) if ( !stream )
return FT_Err_Invalid_Stream_Handle; return FT_THROW( Invalid_Stream_Handle );
#ifdef __amigaos4__ #ifdef __amigaos4__
sysfile = AllocMem ( sizeof (struct SysFile ), MEMF_SHARED ); sysfile = AllocMem ( sizeof (struct SysFile ), MEMF_SHARED );
@ -398,7 +398,7 @@ Free_VecPooled( APTR poolHeader,
FT_ERROR(( "FT_Stream_Open:" )); FT_ERROR(( "FT_Stream_Open:" ));
FT_ERROR(( " could not open `%s'\n", filepathname )); FT_ERROR(( " could not open `%s'\n", filepathname ));
return FT_Err_Cannot_Open_Resource; return FT_THROW( Cannot_Open_Resource );
} }
sysfile->file = Open( (STRPTR)filepathname, MODE_OLDFILE ); sysfile->file = Open( (STRPTR)filepathname, MODE_OLDFILE );
if ( !sysfile->file ) if ( !sysfile->file )
@ -407,7 +407,7 @@ Free_VecPooled( APTR poolHeader,
FT_ERROR(( "FT_Stream_Open:" )); FT_ERROR(( "FT_Stream_Open:" ));
FT_ERROR(( " could not open `%s'\n", filepathname )); FT_ERROR(( " could not open `%s'\n", filepathname ));
return FT_Err_Cannot_Open_Resource; return FT_THROW( Cannot_Open_Resource );
} }
fib = AllocDosObject( DOS_FIB, NULL ); fib = AllocDosObject( DOS_FIB, NULL );
@ -418,7 +418,7 @@ Free_VecPooled( APTR poolHeader,
FT_ERROR(( "FT_Stream_Open:" )); FT_ERROR(( "FT_Stream_Open:" ));
FT_ERROR(( " could not open `%s'\n", filepathname )); FT_ERROR(( " could not open `%s'\n", filepathname ));
return FT_Err_Cannot_Open_Resource; return FT_THROW( Cannot_Open_Resource );
} }
if ( !( ExamineFH( sysfile->file, fib ) ) ) if ( !( ExamineFH( sysfile->file, fib ) ) )
{ {
@ -428,7 +428,7 @@ Free_VecPooled( APTR poolHeader,
FT_ERROR(( "FT_Stream_Open:" )); FT_ERROR(( "FT_Stream_Open:" ));
FT_ERROR(( " could not open `%s'\n", filepathname )); FT_ERROR(( " could not open `%s'\n", filepathname ));
return FT_Err_Cannot_Open_Resource; return FT_THROW( Cannot_Open_Resource );
} }
stream->size = fib->fib_Size; stream->size = fib->fib_Size;
FreeDosObject( DOS_FIB, fib ); FreeDosObject( DOS_FIB, fib );
@ -442,6 +442,14 @@ Free_VecPooled( APTR poolHeader,
stream->read = ft_amiga_stream_io; stream->read = ft_amiga_stream_io;
stream->close = ft_amiga_stream_close; 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(( "FT_Stream_Open:" ));
FT_TRACE1(( " opened `%s' (%ld bytes) successfully\n", FT_TRACE1(( " opened `%s' (%ld bytes) successfully\n",
filepathname, stream->size )); filepathname, stream->size ));
@ -520,4 +528,3 @@ coding: latin-1
End: End:
*/ */
/* END */ /* END */

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -1,3 +1,7 @@
#if defined( GXVALID_H_ )
#pragma warn -aus /* too many unevaluated variables in gxvalid */
#endif
#ifndef ATARI_H #ifndef ATARI_H
#define ATARI_H #define ATARI_H

View file

@ -18,8 +18,8 @@ To compile FreeType 2 as a library the following changes must be applied:
- The file `freetype2/include/Ft2build.h' must be patched as follows to - The file `freetype2/include/Ft2build.h' must be patched as follows to
include ATARI.H: include ATARI.H:
#ifndef __FT2_BUILD_GENERIC_H__ #ifndef FT2_BUILD_GENERIC_H_
#define __FT2_BUILD_GENERIC_H__ #define FT2_BUILD_GENERIC_H_
#include "ATARI.H" #include "ATARI.H"
@ -43,8 +43,8 @@ ge
- In der Datei freetype2/include/Ft2build.h muss zu Beginn - In der Datei freetype2/include/Ft2build.h muss zu Beginn
ein #include "ATARI.H" wie folgt eingef<65>gt werden: ein #include "ATARI.H" wie folgt eingef<65>gt werden:
#ifndef __FT2_BUILD_GENERIC_H__ #ifndef FT2_BUILD_GENERIC_H_
#define __FT2_BUILD_GENERIC_H__ #define FT2_BUILD_GENERIC_H_
#include "ATARI.H" #include "ATARI.H"

View 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()
}
}

View 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

View file

@ -5,7 +5,7 @@
# #
# Copyright 1996-2000, 2003, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -2,7 +2,7 @@
# FreeType 2 configuration rules for a BeOS system # FreeType 2 configuration rules for a BeOS system
# #
# Copyright 1996-2000, 2002, 2005 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -0,0 +1,72 @@
# 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")
if (HarfBuzz_FIND_REQUIRED)
set(_HARFBUZZ_REQUIRED REQUIRED)
else ()
set(_HARFBUZZ_REQUIRED "")
endif ()
pkg_check_modules(PC_HARFBUZZ_ICU harfbuzz-icu>=0.9.18 ${_HARFBUZZ_REQUIRED})
find_library(HARFBUZZ_ICU_LIBRARIES NAMES harfbuzz-icu
HINTS ${PC_HARFBUZZ_ICU_LIBRARY_DIRS} ${PC_HARFBUZZ_ICU_LIBDIR}
)
if (HARFBUZZ_ICU_LIBRARIES)
list(APPEND HARFBUZZ_LIBRARIES "${HARFBUZZ_ICU_LIBRARIES}")
endif ()
set(_HARFBUZZ_EXTRA_REQUIRED_VAR "HARFBUZZ_ICU_LIBRARIES")
else ()
set(_HARFBUZZ_EXTRA_REQUIRED_VAR "")
endif ()
include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(HarfBuzz DEFAULT_MSG HARFBUZZ_INCLUDE_DIRS
HARFBUZZ_LIBRARIES ${_HARFBUZZ_EXTRA_REQUIRED_VAR})
mark_as_advanced(
HARFBUZZ_ICU_LIBRARIES
HARFBUZZ_INCLUDE_DIRS
HARFBUZZ_LIBRARIES
)

View file

@ -0,0 +1,270 @@
# iOS.cmake
#
# Copyright 2014-2016 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)
# 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

View file

@ -0,0 +1,157 @@
#!/bin/sh -e
# Copyright 2015-2016 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 script tests the CMake build. Simply run
#
# builds/cmake/testbuild.sh
#
# or
#
# BUILD_SHARED_LIBS=1 builds/cmake/testbuild.sh
#
# The script:
#
# - builds the main CMakeLists.txt
# - builds and runs a small test app in a separate build tree so
# the config-module is tested, too
#
# Options (environment variables):
#
# - The variable BUILD_SHARED_LIBS will be forwarded to the CMake project
# that builds the library.
#
# prepare temporary dir
cd `dirname $0`/../..
ftdir=`pwd`
tmpdir=/tmp/freetype-cmake-testbuild
rm -rf $tmpdir
mkdir -p $tmpdir
# build and install freetype
if test -n "$BUILD_SHARED_LIBS"; then
bsl=-DBUILD_SHARED_LIBS=$BUILD_SHARED_LIBS
else
bsl=-UBUILD_SHARED_LIBS
fi
build_opts="-DWITH_ZLIB=0 \
-DWITH_BZip2=0 \
-DWITH_PNG=0 \
-DWITH_HarfBuzz=0 \
$bsl \
-DCMAKE_INSTALL_PREFIX=$tmpdir/out"
(set -x; cmake -H$ftdir \
-B$tmpdir/ftb \
-DCMAKE_BUILD_TYPE=Debug \
$build_opts)
(set -x; cmake --build $tmpdir/ftb \
--config Debug \
--target install)
(set -x; cmake $tmpdir/ftb \
-DCMAKE_BUILD_TYPE=Release)
(set -x; cmake --build $tmpdir/ftb \
--config Release \
--target install \
--clean-first)
# create test project CMakeLists.txt
cat >$tmpdir/CMakeLists.txt << END
cmake_minimum_required(VERSION 2.6)
project(freetype-cmake-testbuild)
find_package(Freetype REQUIRED CONFIG)
add_executable(freetype-cmake-test main.c)
target_link_libraries(freetype-cmake-test freetype)
enable_testing()
add_test(freetype-cmake-test freetype-cmake-test)
END
# create test project main.c
cat >$tmpdir/main.c << END
#include <stdio.h>
#include <stdlib.h>
#include <ft2build.h>
#include FT_FREETYPE_H
FT_Library library;
int main(int argc,
char*argv[])
{
FT_Error error;
FT_Int major = 0;
FT_Int minor = 0;
FT_Int patch = 0;
error = FT_Init_FreeType(&library);
if (error)
return EXIT_FAILURE;
FT_Library_Version(library, &major, &minor, &patch);
if (major != FREETYPE_MAJOR
|| minor != FREETYPE_MINOR
|| patch != FREETYPE_PATCH)
return EXIT_FAILURE;
printf("FT_Library_Version: %d.%d.%d\n", major, minor, patch);
error = FT_Done_FreeType(library);
if (error)
return EXIT_FAILURE;
return EXIT_SUCCESS;
}
END
# build and test
mkdir -p $tmpdir/tb
cd $tmpdir/tb
LD_LIBRARY_PATH=$tmpdir/out/lib:$LD_LIBRARY_PATH
DYLD_LIBRARY_PATH=$tmpdir/out/lib:$DYLD_LIBRARY_PATH
export LD_LIBRARY_PATH
export DYLD_LIBRARY_PATH
(set -x; cmake $tmpdir \
-DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_PREFIX_PATH=$tmpdir/out)
(set -x; cmake --build . \
--config Debug)
(set -x; ctest -V -C Debug)
(set -x; cmake . \
-DCMAKE_BUILD_TYPE=Release)
(set -x; cmake --build . \
--config Release \
--clean-first)
(set -x; ctest -V -C Release)
rm -rf $tmpdir
# EOF

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -53,6 +53,7 @@ L :=
# Target flag -- no trailing space. # Target flag -- no trailing space.
# #
T := -o T := -o
TE := -e
# C flags # C flags
@ -72,7 +73,14 @@ ANSIFLAGS := -A
# Library linking # Library linking
# #
CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY)) CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
LINK_LIBRARY = tlib /u $(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST:%=+%)) 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 # EOF

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -53,6 +53,7 @@ L :=
# Target flag -- no trailing space. # Target flag -- no trailing space.
# #
T := -o T := -o
TE := -e
# C flags # C flags
@ -72,7 +73,14 @@ ANSIFLAGS := -A
# Library linking # Library linking
# #
CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY)) CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
LINK_LIBRARY = tlib /u $(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST:%=+%)) 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 # EOF

View file

@ -3,7 +3,7 @@
# #
# Copyright 2003, 2006 by # Copyright 2003-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2004, 2005, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2005, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -61,7 +61,7 @@ T := -o$(space)
# Use the ANSIFLAGS variable to define the compiler flags used to enfore # Use the ANSIFLAGS variable to define the compiler flags used to enfore
# ANSI compliance. # ANSI compliance.
# #
CFLAGS ?= -c -g -O6 -Wall CFLAGS ?= -c -g -O3 -Wall
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant. # ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
# #

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2005, 2006, 2008 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2001, 2002, 2003, 2006, 2008 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -17,8 +17,8 @@
# the following variables: # the following variables:
# #
# BUILD_DIR The configuration and system-specific directory. Usually # BUILD_DIR The configuration and system-specific directory. Usually
# `freetype/builds/$(PLATFORM)' but can be different for # `builds/$(PLATFORM)' but can be different for custom builds
# custom builds of the library. # of the library.
# #
# The following variables must be defined in system specific `detect.mk' # The following variables must be defined in system specific `detect.mk'
# files: # files:
@ -124,7 +124,7 @@ std_setup:
@echo "\`$(CONFIG_MK)' from this directory then read the INSTALL file for help." @echo "\`$(CONFIG_MK)' from this directory then read the INSTALL file for help."
@echo "" @echo ""
@echo "Otherwise, simply type \`$(MAKE)' again to build the library," @echo "Otherwise, simply type \`$(MAKE)' again to build the library,"
@echo "or \`$(MAKE) refdoc' to build the API reference (the latter needs python)." @echo "or \`$(MAKE) refdoc' to build the API reference (this needs python >= 2.6)."
@echo "" @echo ""
@$(COPY) $(CONFIG_RULES) $(CONFIG_MK) @$(COPY) $(CONFIG_RULES) $(CONFIG_MK)
@ -146,7 +146,7 @@ dos_setup:
@echo '$(CONFIG_MK)' from this directory then read the INSTALL file for help. @echo '$(CONFIG_MK)' from this directory then read the INSTALL file for help.
@type builds$(SEP)newline @type builds$(SEP)newline
@echo Otherwise, simply type 'make' again to build the library. @echo Otherwise, simply type 'make' again to build the library.
@echo or 'make refdoc' to build the API reference (the latter needs python). @echo or 'make refdoc' to build the API reference (this needs python >= 2.6).
@type builds$(SEP)newline @type builds$(SEP)newline
@$(COPY) $(subst /,$(SEP),$(CONFIG_RULES) $(CONFIG_MK)) > nul @$(COPY) $(subst /,$(SEP),$(CONFIG_RULES) $(CONFIG_MK)) > nul

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2004, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -45,12 +45,12 @@ ifeq ($(PLATFORM),ansi)
endif endif
# We also try to recognize Dos 7.x without Windows 9X launched. # We also try to recognize Dos 7.x without Windows 9X launched.
# See builds/win32/detect.mk for explanations about the logic. # See builds/windows/detect.mk for explanations about the logic.
# #
ifeq ($(is_dos),) ifeq ($(is_dos),)
ifdef winbootdir ifdef winbootdir
#ifneq ($(OS),Windows_NT) #ifneq ($(OS),Windows_NT)
# If win32 is available, do not trigger this test. # If windows is available, do not trigger this test.
ifndef windir ifndef windir
is_dos := $(findstring Windows,$(strip $(shell ver))) is_dos := $(findstring Windows,$(strip $(shell ver)))
endif endif
@ -124,7 +124,7 @@ ifeq ($(PLATFORM),dos)
CAT := type CAT := type
# Setting COPY is a bit trickier. We can be running DJGPP on some # Setting COPY is a bit trickier. We can be running DJGPP on some
# Windows NT derivatives, like XP. See builds/win32/detect.mk for # Windows NT derivatives, like XP. See builds/windows/detect.mk for
# explanations why we need hacking here. # explanations why we need hacking here.
# #
ifeq ($(OS),Windows_NT) ifeq ($(OS),Windows_NT)

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2005, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 2003 by # Copyright 2003-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 2003 by # Copyright 2003-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 2005, 2006 by # Copyright 2005-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -40,18 +40,22 @@ ifneq ($(EXPORTS_LIST),)
endif endif
# The list of public headers we're going to parse. # The list of public headers we're going to parse.
PUBLIC_HEADERS := $(wildcard $(PUBLIC_DIR)/*.h) PUBLIC_HEADERS := $(filter-out $(PUBLIC_DIR)/ftmac.h, \
$(wildcard $(PUBLIC_DIR)/*.h))
ifneq ($(ftmac_c),)
PUBLIC_HEADERS += $(PUBLIC_DIR)/ftmac.h
endif
# The `apinames' source and executable. We use $E_BUILD as the host # The `apinames' source and executable. We use $E_BUILD as the host
# executable suffix, which *includes* the final dot. # executable suffix, which *includes* the final dot.
# #
# Note that $(APINAMES_OPTIONS) is empty, except for Windows compilers. # Note that $(APINAMES_OPTIONS) is empty, except for Windows compilers.
# #
APINAMES_SRC := $(TOP_DIR)/src/tools/apinames.c APINAMES_SRC := $(subst /,$(SEP),$(TOP_DIR)/src/tools/apinames.c)
APINAMES_EXE := $(OBJ_DIR)/apinames$(E_BUILD) APINAMES_EXE := $(subst /,$(SEP),$(OBJ_DIR)/apinames$(E_BUILD))
$(APINAMES_EXE): $(APINAMES_SRC) $(APINAMES_EXE): $(APINAMES_SRC)
$(CCexe) $(TE)$@ $< $(CCexe) $(CCexe_CFLAGS) $(TE)$@ $< $(CCexe_LDFLAGS)
.PHONY: symbols_list .PHONY: symbols_list

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2001, 2002, 2003, 2004, 2005, 2006, 2008 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -116,8 +116,8 @@ PROJECT_LIBRARY := $(LIB_DIR)/$(LIBRARY).$A
# IMPORTANT NOTE: The architecture-dependent directory must ALWAYS be placed # IMPORTANT NOTE: The architecture-dependent directory must ALWAYS be placed
# before the standard include list. Porters are then able to # before the standard include list. Porters are then able to
# put their own version of some of the FreeType components # put their own version of some of the FreeType components
# in the `freetype/builds/<system>' directory, as these # in the `builds/<system>' directory, as these files will
# files will override the default sources. # override the default sources.
# #
INCLUDES := $(subst /,$(COMPILER_SEP),$(OBJ_DIR) \ INCLUDES := $(subst /,$(COMPILER_SEP),$(OBJ_DIR) \
$(DEVEL_DIR) \ $(DEVEL_DIR) \
@ -126,6 +126,14 @@ INCLUDES := $(subst /,$(COMPILER_SEP),$(OBJ_DIR) \
INCLUDE_FLAGS := $(INCLUDES:%=$I%) 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 # C flags used for the compilation of an object file. This must include at
# least the paths for the `base' and `builds/<system>' directories; # least the paths for the `base' and `builds/<system>' directories;
@ -147,14 +155,13 @@ ifneq ($(wildcard $(OBJ_DIR)/ftoption.h),)
FTOPTION_FLAG := $DFT_CONFIG_OPTIONS_H="<ftoption.h>" FTOPTION_FLAG := $DFT_CONFIG_OPTIONS_H="<ftoption.h>"
endif endif
# `CPPFLAGS' might be specified by the user in the environment.
#
FT_CFLAGS = $(CPPFLAGS) \ FT_CFLAGS = $(CPPFLAGS) \
$(INCLUDE_FLAGS) \
$(CFLAGS) \ $(CFLAGS) \
$DFT2_BUILD_LIBRARY \ $DFT2_BUILD_LIBRARY \
$DFT_CONFIG_MODULES_H="<ftmodule.h>" \ $DFT_CONFIG_MODULES_H="<ftmodule.h>" \
$(FTOPTION_FLAG) $(FTOPTION_FLAG)
FT_CC = $(CC) $(FT_CFLAGS)
FT_COMPILE = $(CC) $(ANSIFLAGS) $(FT_CFLAGS)
# Include the `exports' rules file. # Include the `exports' rules file.
@ -178,7 +185,7 @@ PUBLIC_H := $(wildcard $(PUBLIC_DIR)/*.h)
INTERNAL_H := $(wildcard $(INTERNAL_DIR)/*.h) \ INTERNAL_H := $(wildcard $(INTERNAL_DIR)/*.h) \
$(wildcard $(SERVICES_DIR)/*.h) $(wildcard $(SERVICES_DIR)/*.h)
CONFIG_H := $(wildcard $(CONFIG_DIR)/*.h) \ CONFIG_H := $(wildcard $(CONFIG_DIR)/*.h) \
$(wildcard $(BUILD_DIR)/freetype/config/*.h) \ $(wildcard $(BUILD_DIR)/config/*.h) \
$(FTMODULE_H) \ $(FTMODULE_H) \
$(FTOPTION_H) $(FTOPTION_H)
DEVEL_H := $(wildcard $(TOP_DIR)/devel/*.h) DEVEL_H := $(wildcard $(TOP_DIR)/devel/*.h)
@ -186,6 +193,8 @@ DEVEL_H := $(wildcard $(TOP_DIR)/devel/*.h)
FREETYPE_H := $(PUBLIC_H) $(INTERNAL_H) $(CONFIG_H) $(DEVEL_H) FREETYPE_H := $(PUBLIC_H) $(INTERNAL_H) $(CONFIG_H) $(DEVEL_H)
FT_COMPILE := $(CC) $(ANSIFLAGS) $(INCLUDE_FLAGS) $(FT_CFLAGS)
# ftsystem component # ftsystem component
# #
FTSYS_SRC ?= $(BASE_DIR)/ftsystem.c FTSYS_SRC ?= $(BASE_DIR)/ftsystem.c
@ -261,48 +270,17 @@ objects: $(OBJECTS_LIST)
library: $(PROJECT_LIBRARY) library: $(PROJECT_LIBRARY)
dll: $(PROJECT_LIBRARY) exported_symbols
.c.$O: # Option `-B' disables generation of .pyc files (available since python 2.6)
$(FT_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<)
ifneq ($(findstring refdoc,$(MAKECMDGOALS)),)
# poor man's `sed' emulation with make's built-in string functions
work := $(strip $(shell $(CAT) $(PUBLIC_DIR)/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))
version := $(major).$(minor).$(patch)
endif
# We write-protect the docmaker directory to suppress generation
# of .pyc files.
# #
refdoc: refdoc:
-chmod -w $(SRC_DIR)/tools/docmaker python -B $(SRC_DIR)/tools/docmaker/docmaker.py \
python $(SRC_DIR)/tools/docmaker/docmaker.py \
--prefix=ft2 \ --prefix=ft2 \
--title=FreeType-$(version) \ --title=FreeType-$(version) \
--output=$(DOC_DIR) \ --output=$(DOC_DIR) \
$(PUBLIC_DIR)/*.h \ $(PUBLIC_DIR)/*.h \
$(PUBLIC_DIR)/config/*.h \ $(PUBLIC_DIR)/config/*.h \
$(PUBLIC_DIR)/cache/*.h $(PUBLIC_DIR)/cache/*.h
-chmod +w $(SRC_DIR)/tools/docmaker
.PHONY: clean_project_std distclean_project_std .PHONY: clean_project_std distclean_project_std

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -17,6 +17,7 @@ Includes = \xB6
Sym-68K = -sym off Sym-68K = -sym off
COptions = \xB6 COptions = \xB6
-d FT_MACINTOSH=1 \xB6
-d HAVE_FSSPEC=1 \xB6 -d HAVE_FSSPEC=1 \xB6
-d HAVE_FSREF=0 \xB6 -d HAVE_FSREF=0 \xB6
-d HAVE_QUICKDRAW_TOOLBOX=1 \xB6 -d HAVE_QUICKDRAW_TOOLBOX=1 \xB6
@ -37,6 +38,7 @@ SrcFiles = \xB6
:src:base:ftbdf.c \xB6 :src:base:ftbdf.c \xB6
:src:base:ftbitmap.c \xB6 :src:base:ftbitmap.c \xB6
:src:base:ftdebug.c \xB6 :src:base:ftdebug.c \xB6
:src:base:ftfntfmt.c \xB6
:src:base:ftfstype.c \xB6 :src:base:ftfstype.c \xB6
:src:base:ftglyph.c \xB6 :src:base:ftglyph.c \xB6
:src:base:ftgxval.c \xB6 :src:base:ftgxval.c \xB6
@ -49,13 +51,13 @@ SrcFiles = \xB6
:src:base:ftsystem.c \xB6 :src:base:ftsystem.c \xB6
:src:base:fttype1.c \xB6 :src:base:fttype1.c \xB6
:src:base:ftwinfnt.c \xB6 :src:base:ftwinfnt.c \xB6
:src:base:ftxf86.c \xB6
:src:cache:ftcache.c \xB6 :src:cache:ftcache.c \xB6
:src:bdf:bdf.c \xB6 :src:bdf:bdf.c \xB6
:src:cff:cff.c \xB6 :src:cff:cff.c \xB6
:src:cid:type1cid.c \xB6 :src:cid:type1cid.c \xB6
# :src:gxvalid:gxvalid.c \xB6 # :src:gxvalid:gxvalid.c \xB6
:src:gzip:ftgzip.c \xB6 :src:gzip:ftgzip.c \xB6
:src:bzip2:ftbzip2.c \xB6
:src:lzw:ftlzw.c \xB6 :src:lzw:ftlzw.c \xB6
:src:otvalid:otvalid.c \xB6 :src:otvalid:otvalid.c \xB6
:src:pcf:pcf.c \xB6 :src:pcf:pcf.c \xB6
@ -81,6 +83,7 @@ ObjFiles-68K = \xB6
"{ObjDir}ftbdf.c.o" \xB6 "{ObjDir}ftbdf.c.o" \xB6
"{ObjDir}ftbitmap.c.o" \xB6 "{ObjDir}ftbitmap.c.o" \xB6
"{ObjDir}ftdebug.c.o" \xB6 "{ObjDir}ftdebug.c.o" \xB6
"{ObjDir}ftfntfmt.c.o" \xB6
"{ObjDir}ftfstype.c.o" \xB6 "{ObjDir}ftfstype.c.o" \xB6
"{ObjDir}ftglyph.c.o" \xB6 "{ObjDir}ftglyph.c.o" \xB6
"{ObjDir}ftgxval.c.o" \xB6 "{ObjDir}ftgxval.c.o" \xB6
@ -93,13 +96,13 @@ ObjFiles-68K = \xB6
"{ObjDir}ftsystem.c.o" \xB6 "{ObjDir}ftsystem.c.o" \xB6
"{ObjDir}fttype1.c.o" \xB6 "{ObjDir}fttype1.c.o" \xB6
"{ObjDir}ftwinfnt.c.o" \xB6 "{ObjDir}ftwinfnt.c.o" \xB6
"{ObjDir}ftxf86.c.o" \xB6
"{ObjDir}ftcache.c.o" \xB6 "{ObjDir}ftcache.c.o" \xB6
"{ObjDir}bdf.c.o" \xB6 "{ObjDir}bdf.c.o" \xB6
"{ObjDir}cff.c.o" \xB6 "{ObjDir}cff.c.o" \xB6
"{ObjDir}type1cid.c.o" \xB6 "{ObjDir}type1cid.c.o" \xB6
# "{ObjDir}gxvalid.c.o" \xB6 # "{ObjDir}gxvalid.c.o" \xB6
"{ObjDir}ftgzip.c.o" \xB6 "{ObjDir}ftgzip.c.o" \xB6
"{ObjDir}ftbzip2.c.o" \xB6
"{ObjDir}ftlzw.c.o" \xB6 "{ObjDir}ftlzw.c.o" \xB6
"{ObjDir}otvalid.c.o" \xB6 "{ObjDir}otvalid.c.o" \xB6
"{ObjDir}pcf.c.o" \xB6 "{ObjDir}pcf.c.o" \xB6
@ -158,6 +161,7 @@ FreeType.m68k_cfm.o \xC4\xC4 {ObjFiles-68K} {LibFiles-68K} {\xA5MondoBuild\xA5
"{ObjDir}ftbdf.c.o" \xC4 :src:base:ftbdf.c "{ObjDir}ftbdf.c.o" \xC4 :src:base:ftbdf.c
"{ObjDir}ftbitmap.c.o" \xC4 :src:base:ftbitmap.c "{ObjDir}ftbitmap.c.o" \xC4 :src:base:ftbitmap.c
"{ObjDir}ftdebug.c.o" \xC4 :src:base:ftdebug.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}ftfstype.c.o" \xC4 :src:base:ftfstype.c
"{ObjDir}ftglyph.c.o" \xC4 :src:base:ftglyph.c "{ObjDir}ftglyph.c.o" \xC4 :src:base:ftglyph.c
"{ObjDir}ftgxval.c.o" \xC4 :src:base:ftgxval.c "{ObjDir}ftgxval.c.o" \xC4 :src:base:ftgxval.c
@ -170,13 +174,13 @@ FreeType.m68k_cfm.o \xC4\xC4 {ObjFiles-68K} {LibFiles-68K} {\xA5MondoBuild\xA5
"{ObjDir}ftsystem.c.o" \xC4 :src:base:ftsystem.c "{ObjDir}ftsystem.c.o" \xC4 :src:base:ftsystem.c
"{ObjDir}fttype1.c.o" \xC4 :src:base:fttype1.c "{ObjDir}fttype1.c.o" \xC4 :src:base:fttype1.c
"{ObjDir}ftwinfnt.c.o" \xC4 :src:base:ftwinfnt.c "{ObjDir}ftwinfnt.c.o" \xC4 :src:base:ftwinfnt.c
"{ObjDir}ftxf86.c.o" \xC4 :src:base:ftxf86.c
"{ObjDir}ftcache.c.o" \xC4 :src:cache:ftcache.c "{ObjDir}ftcache.c.o" \xC4 :src:cache:ftcache.c
"{ObjDir}bdf.c.o" \xC4 :src:bdf:bdf.c "{ObjDir}bdf.c.o" \xC4 :src:bdf:bdf.c
"{ObjDir}cff.c.o" \xC4 :src:cff:cff.c "{ObjDir}cff.c.o" \xC4 :src:cff:cff.c
"{ObjDir}type1cid.c.o" \xC4 :src:cid:type1cid.c "{ObjDir}type1cid.c.o" \xC4 :src:cid:type1cid.c
# "{ObjDir}gxvalid.c.o" \xC4 :src:gxvalid:gxvalid.c # "{ObjDir}gxvalid.c.o" \xC4 :src:gxvalid:gxvalid.c
"{ObjDir}ftgzip.c.o" \xC4 :src:gzip:ftgzip.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}ftlzw.c.o" \xC4 :src:lzw:ftlzw.c
"{ObjDir}otvalid.c.o" \xC4 :src:otvalid:otvalid.c "{ObjDir}otvalid.c.o" \xC4 :src:otvalid:otvalid.c
"{ObjDir}pcf.c.o" \xC4 :src:pcf:pcf.c "{ObjDir}pcf.c.o" \xC4 :src:pcf:pcf.c

View file

@ -16,6 +16,7 @@ Includes = \xB6
Sym-68K = -sym off Sym-68K = -sym off
COptions = \xB6 COptions = \xB6
-d FT_MACINTOSH=1 \xB6
-d HAVE_FSSPEC=1 \xB6 -d HAVE_FSSPEC=1 \xB6
-d HAVE_FSREF=0 \xB6 -d HAVE_FSREF=0 \xB6
-d HAVE_QUICKDRAW_TOOLBOX=1 \xB6 -d HAVE_QUICKDRAW_TOOLBOX=1 \xB6
@ -36,6 +37,7 @@ SrcFiles = \xB6
:src:base:ftbdf.c \xB6 :src:base:ftbdf.c \xB6
:src:base:ftbitmap.c \xB6 :src:base:ftbitmap.c \xB6
:src:base:ftdebug.c \xB6 :src:base:ftdebug.c \xB6
:src:base:ftfntfmt.c \xB6
:src:base:ftfstype.c \xB6 :src:base:ftfstype.c \xB6
:src:base:ftglyph.c \xB6 :src:base:ftglyph.c \xB6
:src:base:ftgxval.c \xB6 :src:base:ftgxval.c \xB6
@ -48,13 +50,13 @@ SrcFiles = \xB6
:src:base:ftsystem.c \xB6 :src:base:ftsystem.c \xB6
:src:base:fttype1.c \xB6 :src:base:fttype1.c \xB6
:src:base:ftwinfnt.c \xB6 :src:base:ftwinfnt.c \xB6
:src:base:ftxf86.c \xB6
:src:cache:ftcache.c \xB6 :src:cache:ftcache.c \xB6
:src:bdf:bdf.c \xB6 :src:bdf:bdf.c \xB6
:src:cff:cff.c \xB6 :src:cff:cff.c \xB6
:src:cid:type1cid.c \xB6 :src:cid:type1cid.c \xB6
:src:gxvalid:gxvalid.c \xB6 :src:gxvalid:gxvalid.c \xB6
:src:gzip:ftgzip.c \xB6 :src:gzip:ftgzip.c \xB6
:src:bzip2:ftbzip2.c \xB6
:src:lzw:ftlzw.c \xB6 :src:lzw:ftlzw.c \xB6
:src:otvalid:otvalid.c \xB6 :src:otvalid:otvalid.c \xB6
:src:pcf:pcf.c \xB6 :src:pcf:pcf.c \xB6
@ -80,6 +82,7 @@ ObjFiles-68K = \xB6
"{ObjDir}ftbdf.c.o" \xB6 "{ObjDir}ftbdf.c.o" \xB6
"{ObjDir}ftbitmap.c.o" \xB6 "{ObjDir}ftbitmap.c.o" \xB6
"{ObjDir}ftdebug.c.o" \xB6 "{ObjDir}ftdebug.c.o" \xB6
"{ObjDir}ftfntfmt.c.o" \xB6
"{ObjDir}ftfstype.c.o" \xB6 "{ObjDir}ftfstype.c.o" \xB6
"{ObjDir}ftglyph.c.o" \xB6 "{ObjDir}ftglyph.c.o" \xB6
"{ObjDir}ftgxval.c.o" \xB6 "{ObjDir}ftgxval.c.o" \xB6
@ -92,13 +95,13 @@ ObjFiles-68K = \xB6
"{ObjDir}ftsystem.c.o" \xB6 "{ObjDir}ftsystem.c.o" \xB6
"{ObjDir}fttype1.c.o" \xB6 "{ObjDir}fttype1.c.o" \xB6
"{ObjDir}ftwinfnt.c.o" \xB6 "{ObjDir}ftwinfnt.c.o" \xB6
"{ObjDir}ftxf86.c.o" \xB6
"{ObjDir}ftcache.c.o" \xB6 "{ObjDir}ftcache.c.o" \xB6
"{ObjDir}bdf.c.o" \xB6 "{ObjDir}bdf.c.o" \xB6
"{ObjDir}cff.c.o" \xB6 "{ObjDir}cff.c.o" \xB6
"{ObjDir}type1cid.c.o" \xB6 "{ObjDir}type1cid.c.o" \xB6
"{ObjDir}gxvalid.c.o" \xB6 "{ObjDir}gxvalid.c.o" \xB6
"{ObjDir}ftgzip.c.o" \xB6 "{ObjDir}ftgzip.c.o" \xB6
"{ObjDir}ftbzip2.c.o" \xB6
"{ObjDir}ftlzw.c.o" \xB6 "{ObjDir}ftlzw.c.o" \xB6
"{ObjDir}otvalid.c.o" \xB6 "{ObjDir}otvalid.c.o" \xB6
"{ObjDir}pcf.c.o" \xB6 "{ObjDir}pcf.c.o" \xB6
@ -157,6 +160,7 @@ FreeType.m68k_far.o \xC4\xC4 {ObjFiles-68K} {LibFiles-68K} {\xA5MondoBuild\xA5
"{ObjDir}ftbdf.c.o" \xC4 :src:base:ftbdf.c "{ObjDir}ftbdf.c.o" \xC4 :src:base:ftbdf.c
"{ObjDir}ftbitmap.c.o" \xC4 :src:base:ftbitmap.c "{ObjDir}ftbitmap.c.o" \xC4 :src:base:ftbitmap.c
"{ObjDir}ftdebug.c.o" \xC4 :src:base:ftdebug.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}ftfstype.c.o" \xC4 :src:base:ftfstype.c
"{ObjDir}ftglyph.c.o" \xC4 :src:base:ftglyph.c "{ObjDir}ftglyph.c.o" \xC4 :src:base:ftglyph.c
"{ObjDir}ftgxval.c.o" \xC4 :src:base:ftgxval.c "{ObjDir}ftgxval.c.o" \xC4 :src:base:ftgxval.c
@ -169,13 +173,13 @@ FreeType.m68k_far.o \xC4\xC4 {ObjFiles-68K} {LibFiles-68K} {\xA5MondoBuild\xA5
"{ObjDir}ftsystem.c.o" \xC4 :src:base:ftsystem.c "{ObjDir}ftsystem.c.o" \xC4 :src:base:ftsystem.c
"{ObjDir}fttype1.c.o" \xC4 :src:base:fttype1.c "{ObjDir}fttype1.c.o" \xC4 :src:base:fttype1.c
"{ObjDir}ftwinfnt.c.o" \xC4 :src:base:ftwinfnt.c "{ObjDir}ftwinfnt.c.o" \xC4 :src:base:ftwinfnt.c
"{ObjDir}ftxf86.c.o" \xC4 :src:base:ftxf86.c
"{ObjDir}ftcache.c.o" \xC4 :src:cache:ftcache.c "{ObjDir}ftcache.c.o" \xC4 :src:cache:ftcache.c
"{ObjDir}bdf.c.o" \xC4 :src:bdf:bdf.c "{ObjDir}bdf.c.o" \xC4 :src:bdf:bdf.c
"{ObjDir}cff.c.o" \xC4 :src:cff:cff.c "{ObjDir}cff.c.o" \xC4 :src:cff:cff.c
"{ObjDir}type1cid.c.o" \xC4 :src:cid:type1cid.c "{ObjDir}type1cid.c.o" \xC4 :src:cid:type1cid.c
"{ObjDir}gxvalid.c.o" \xC4 :src:gxvalid:gxvalid.c "{ObjDir}gxvalid.c.o" \xC4 :src:gxvalid:gxvalid.c
"{ObjDir}ftgzip.c.o" \xC4 :src:gzip:ftgzip.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}ftlzw.c.o" \xC4 :src:lzw:ftlzw.c
"{ObjDir}otvalid.c.o" \xC4 :src:otvalid:otvalid.c "{ObjDir}otvalid.c.o" \xC4 :src:otvalid:otvalid.c
"{ObjDir}pcf.c.o" \xC4 :src:pcf:pcf.c "{ObjDir}pcf.c.o" \xC4 :src:pcf:pcf.c

View file

@ -17,6 +17,7 @@ Includes = \xB6
Sym-PPC = -sym off Sym-PPC = -sym off
PPCCOptions = \xB6 PPCCOptions = \xB6
-d FT_MACINTOSH=1 \xB6
-d HAVE_FSSPEC=1 \xB6 -d HAVE_FSSPEC=1 \xB6
-d HAVE_FSREF=1 \xB6 -d HAVE_FSREF=1 \xB6
-d HAVE_QUICKDRAW_TOOLBOX=1 \xB6 -d HAVE_QUICKDRAW_TOOLBOX=1 \xB6
@ -37,6 +38,7 @@ SrcFiles = \xB6
:src:base:ftbdf.c \xB6 :src:base:ftbdf.c \xB6
:src:base:ftbitmap.c \xB6 :src:base:ftbitmap.c \xB6
:src:base:ftdebug.c \xB6 :src:base:ftdebug.c \xB6
:src:base:ftfntfmt.c \xB6
:src:base:ftfstype.c \xB6 :src:base:ftfstype.c \xB6
:src:base:ftglyph.c \xB6 :src:base:ftglyph.c \xB6
:src:base:ftgxval.c \xB6 :src:base:ftgxval.c \xB6
@ -49,13 +51,13 @@ SrcFiles = \xB6
:src:base:ftsystem.c \xB6 :src:base:ftsystem.c \xB6
:src:base:fttype1.c \xB6 :src:base:fttype1.c \xB6
:src:base:ftwinfnt.c \xB6 :src:base:ftwinfnt.c \xB6
:src:base:ftxf86.c \xB6
:src:cache:ftcache.c \xB6 :src:cache:ftcache.c \xB6
:src:bdf:bdf.c \xB6 :src:bdf:bdf.c \xB6
:src:cff:cff.c \xB6 :src:cff:cff.c \xB6
:src:cid:type1cid.c \xB6 :src:cid:type1cid.c \xB6
:src:gxvalid:gxvalid.c \xB6 :src:gxvalid:gxvalid.c \xB6
:src:gzip:ftgzip.c \xB6 :src:gzip:ftgzip.c \xB6
:src:bzip2:ftbzip2.c \xB6
:src:lzw:ftlzw.c \xB6 :src:lzw:ftlzw.c \xB6
:src:otvalid:otvalid.c \xB6 :src:otvalid:otvalid.c \xB6
:src:pcf:pcf.c \xB6 :src:pcf:pcf.c \xB6
@ -81,6 +83,7 @@ ObjFiles-PPC = \xB6
"{ObjDir}ftbdf.c.x" \xB6 "{ObjDir}ftbdf.c.x" \xB6
"{ObjDir}ftbitmap.c.x" \xB6 "{ObjDir}ftbitmap.c.x" \xB6
"{ObjDir}ftdebug.c.x" \xB6 "{ObjDir}ftdebug.c.x" \xB6
"{ObjDir}ftfntfmt.c.x" \xB6
"{ObjDir}ftfstype.c.x" \xB6 "{ObjDir}ftfstype.c.x" \xB6
"{ObjDir}ftglyph.c.x" \xB6 "{ObjDir}ftglyph.c.x" \xB6
"{ObjDir}ftgxval.c.x" \xB6 "{ObjDir}ftgxval.c.x" \xB6
@ -93,13 +96,13 @@ ObjFiles-PPC = \xB6
"{ObjDir}ftsystem.c.x" \xB6 "{ObjDir}ftsystem.c.x" \xB6
"{ObjDir}fttype1.c.x" \xB6 "{ObjDir}fttype1.c.x" \xB6
"{ObjDir}ftwinfnt.c.x" \xB6 "{ObjDir}ftwinfnt.c.x" \xB6
"{ObjDir}ftxf86.c.x" \xB6
"{ObjDir}ftcache.c.x" \xB6 "{ObjDir}ftcache.c.x" \xB6
"{ObjDir}bdf.c.x" \xB6 "{ObjDir}bdf.c.x" \xB6
"{ObjDir}cff.c.x" \xB6 "{ObjDir}cff.c.x" \xB6
"{ObjDir}type1cid.c.x" \xB6 "{ObjDir}type1cid.c.x" \xB6
"{ObjDir}gxvalid.c.x" \xB6 "{ObjDir}gxvalid.c.x" \xB6
"{ObjDir}ftgzip.c.x" \xB6 "{ObjDir}ftgzip.c.x" \xB6
"{ObjDir}ftbzip2.c.x" \xB6
"{ObjDir}ftlzw.c.x" \xB6 "{ObjDir}ftlzw.c.x" \xB6
"{ObjDir}otvalid.c.x" \xB6 "{ObjDir}otvalid.c.x" \xB6
"{ObjDir}pcf.c.x" \xB6 "{ObjDir}pcf.c.x" \xB6
@ -161,6 +164,7 @@ FreeType.ppc_carbon.o \xC4\xC4 {ObjFiles-PPC} {LibFiles-PPC} {\xA5MondoBuild\x
"{ObjDir}ftbdf.c.x" \xC4 :src:base:ftbdf.c "{ObjDir}ftbdf.c.x" \xC4 :src:base:ftbdf.c
"{ObjDir}ftbitmap.c.x" \xC4 :src:base:ftbitmap.c "{ObjDir}ftbitmap.c.x" \xC4 :src:base:ftbitmap.c
"{ObjDir}ftdebug.c.x" \xC4 :src:base:ftdebug.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}ftfstype.c.x" \xC4 :src:base:ftfstype.c
"{ObjDir}ftglyph.c.x" \xC4 :src:base:ftglyph.c "{ObjDir}ftglyph.c.x" \xC4 :src:base:ftglyph.c
"{ObjDir}ftgxval.c.x" \xC4 :src:base:ftgxval.c "{ObjDir}ftgxval.c.x" \xC4 :src:base:ftgxval.c
@ -173,13 +177,13 @@ FreeType.ppc_carbon.o \xC4\xC4 {ObjFiles-PPC} {LibFiles-PPC} {\xA5MondoBuild\x
"{ObjDir}ftsystem.c.x" \xC4 :src:base:ftsystem.c "{ObjDir}ftsystem.c.x" \xC4 :src:base:ftsystem.c
"{ObjDir}fttype1.c.x" \xC4 :src:base:fttype1.c "{ObjDir}fttype1.c.x" \xC4 :src:base:fttype1.c
"{ObjDir}ftwinfnt.c.x" \xC4 :src:base:ftwinfnt.c "{ObjDir}ftwinfnt.c.x" \xC4 :src:base:ftwinfnt.c
"{ObjDir}ftxf86.c.x" \xC4 :src:base:ftxf86.c
"{ObjDir}ftcache.c.x" \xC4 :src:cache:ftcache.c "{ObjDir}ftcache.c.x" \xC4 :src:cache:ftcache.c
"{ObjDir}bdf.c.x" \xC4 :src:bdf:bdf.c "{ObjDir}bdf.c.x" \xC4 :src:bdf:bdf.c
"{ObjDir}cff.c.x" \xC4 :src:cff:cff.c "{ObjDir}cff.c.x" \xC4 :src:cff:cff.c
"{ObjDir}type1cid.c.x" \xC4 :src:cid:type1cid.c "{ObjDir}type1cid.c.x" \xC4 :src:cid:type1cid.c
"{ObjDir}gxvalid.c.x" \xC4 :src:gxvalid:gxvalid.c "{ObjDir}gxvalid.c.x" \xC4 :src:gxvalid:gxvalid.c
"{ObjDir}ftgzip.c.x" \xC4 :src:gzip:ftgzip.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}ftlzw.c.x" \xC4 :src:lzw:ftlzw.c
"{ObjDir}otvalid.c.x" \xC4 :src:otvalid:otvalid.c "{ObjDir}otvalid.c.x" \xC4 :src:otvalid:otvalid.c
"{ObjDir}pcf.c.x" \xC4 :src:pcf:pcf.c "{ObjDir}pcf.c.x" \xC4 :src:pcf:pcf.c

View file

@ -17,6 +17,7 @@ Includes = \xB6
Sym-PPC = -sym off Sym-PPC = -sym off
PPCCOptions = \xB6 PPCCOptions = \xB6
-d FT_MACINTOSH=1 \xB6
-d HAVE_FSSPEC=1 \xB6 -d HAVE_FSSPEC=1 \xB6
-d HAVE_FSREF=0 \xB6 -d HAVE_FSREF=0 \xB6
-d HAVE_QUICKDRAW_TOOLBOX=1 \xB6 -d HAVE_QUICKDRAW_TOOLBOX=1 \xB6
@ -37,6 +38,7 @@ SrcFiles = \xB6
:src:base:ftbdf.c \xB6 :src:base:ftbdf.c \xB6
:src:base:ftbitmap.c \xB6 :src:base:ftbitmap.c \xB6
:src:base:ftdebug.c \xB6 :src:base:ftdebug.c \xB6
:src:base:ftfntfmt.c \xB6
:src:base:ftfstype.c \xB6 :src:base:ftfstype.c \xB6
:src:base:ftglyph.c \xB6 :src:base:ftglyph.c \xB6
:src:base:ftgxval.c \xB6 :src:base:ftgxval.c \xB6
@ -49,13 +51,13 @@ SrcFiles = \xB6
:src:base:ftsystem.c \xB6 :src:base:ftsystem.c \xB6
:src:base:fttype1.c \xB6 :src:base:fttype1.c \xB6
:src:base:ftwinfnt.c \xB6 :src:base:ftwinfnt.c \xB6
:src:base:ftxf86.c \xB6
:src:cache:ftcache.c \xB6 :src:cache:ftcache.c \xB6
:src:bdf:bdf.c \xB6 :src:bdf:bdf.c \xB6
:src:cff:cff.c \xB6 :src:cff:cff.c \xB6
:src:cid:type1cid.c \xB6 :src:cid:type1cid.c \xB6
:src:gxvalid:gxvalid.c \xB6 :src:gxvalid:gxvalid.c \xB6
:src:gzip:ftgzip.c \xB6 :src:gzip:ftgzip.c \xB6
:src:bzip2:ftbzip2.c \xB6
:src:lzw:ftlzw.c \xB6 :src:lzw:ftlzw.c \xB6
:src:otvalid:otvalid.c \xB6 :src:otvalid:otvalid.c \xB6
:src:pcf:pcf.c \xB6 :src:pcf:pcf.c \xB6
@ -81,6 +83,7 @@ ObjFiles-PPC = \xB6
"{ObjDir}ftbdf.c.x" \xB6 "{ObjDir}ftbdf.c.x" \xB6
"{ObjDir}ftbitmap.c.x" \xB6 "{ObjDir}ftbitmap.c.x" \xB6
"{ObjDir}ftdebug.c.x" \xB6 "{ObjDir}ftdebug.c.x" \xB6
"{ObjDir}ftfntfmt.c.x" \xB6
"{ObjDir}ftfstype.c.x" \xB6 "{ObjDir}ftfstype.c.x" \xB6
"{ObjDir}ftglyph.c.x" \xB6 "{ObjDir}ftglyph.c.x" \xB6
"{ObjDir}ftgxval.c.x" \xB6 "{ObjDir}ftgxval.c.x" \xB6
@ -93,13 +96,13 @@ ObjFiles-PPC = \xB6
"{ObjDir}ftsystem.c.x" \xB6 "{ObjDir}ftsystem.c.x" \xB6
"{ObjDir}fttype1.c.x" \xB6 "{ObjDir}fttype1.c.x" \xB6
"{ObjDir}ftwinfnt.c.x" \xB6 "{ObjDir}ftwinfnt.c.x" \xB6
"{ObjDir}ftxf86.c.x" \xB6
"{ObjDir}ftcache.c.x" \xB6 "{ObjDir}ftcache.c.x" \xB6
"{ObjDir}bdf.c.x" \xB6 "{ObjDir}bdf.c.x" \xB6
"{ObjDir}cff.c.x" \xB6 "{ObjDir}cff.c.x" \xB6
"{ObjDir}type1cid.c.x" \xB6 "{ObjDir}type1cid.c.x" \xB6
"{ObjDir}gxvalid.c.x" \xB6 "{ObjDir}gxvalid.c.x" \xB6
"{ObjDir}ftgzip.c.x" \xB6 "{ObjDir}ftgzip.c.x" \xB6
"{ObjDir}ftbzip2.c.x" \xB6
"{ObjDir}ftlzw.c.x" \xB6 "{ObjDir}ftlzw.c.x" \xB6
"{ObjDir}otvalid.c.x" \xB6 "{ObjDir}otvalid.c.x" \xB6
"{ObjDir}pcf.c.x" \xB6 "{ObjDir}pcf.c.x" \xB6
@ -161,6 +164,7 @@ FreeType.ppc_classic.o \xC4\xC4 {ObjFiles-PPC} {LibFiles-PPC} {\xA5MondoBuild\
"{ObjDir}ftbdf.c.x" \xC4 :src:base:ftbdf.c "{ObjDir}ftbdf.c.x" \xC4 :src:base:ftbdf.c
"{ObjDir}ftbitmap.c.x" \xC4 :src:base:ftbitmap.c "{ObjDir}ftbitmap.c.x" \xC4 :src:base:ftbitmap.c
"{ObjDir}ftdebug.c.x" \xC4 :src:base:ftdebug.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}ftfstype.c.x" \xC4 :src:base:ftfstype.c
"{ObjDir}ftglyph.c.x" \xC4 :src:base:ftglyph.c "{ObjDir}ftglyph.c.x" \xC4 :src:base:ftglyph.c
"{ObjDir}ftgxval.c.x" \xC4 :src:base:ftgxval.c "{ObjDir}ftgxval.c.x" \xC4 :src:base:ftgxval.c
@ -173,13 +177,13 @@ FreeType.ppc_classic.o \xC4\xC4 {ObjFiles-PPC} {LibFiles-PPC} {\xA5MondoBuild\
"{ObjDir}ftsystem.c.x" \xC4 :src:base:ftsystem.c "{ObjDir}ftsystem.c.x" \xC4 :src:base:ftsystem.c
"{ObjDir}fttype1.c.x" \xC4 :src:base:fttype1.c "{ObjDir}fttype1.c.x" \xC4 :src:base:fttype1.c
"{ObjDir}ftwinfnt.c.x" \xC4 :src:base:ftwinfnt.c "{ObjDir}ftwinfnt.c.x" \xC4 :src:base:ftwinfnt.c
"{ObjDir}ftxf86.c.x" \xC4 :src:base:ftxf86.c
"{ObjDir}ftcache.c.x" \xC4 :src:cache:ftcache.c "{ObjDir}ftcache.c.x" \xC4 :src:cache:ftcache.c
"{ObjDir}bdf.c.x" \xC4 :src:bdf:bdf.c "{ObjDir}bdf.c.x" \xC4 :src:bdf:bdf.c
"{ObjDir}cff.c.x" \xC4 :src:cff:cff.c "{ObjDir}cff.c.x" \xC4 :src:cff:cff.c
"{ObjDir}type1cid.c.x" \xC4 :src:cid:type1cid.c "{ObjDir}type1cid.c.x" \xC4 :src:cid:type1cid.c
"{ObjDir}gxvalid.c.x" \xC4 :src:gxvalid:gxvalid.c "{ObjDir}gxvalid.c.x" \xC4 :src:gxvalid:gxvalid.c
"{ObjDir}ftgzip.c.x" \xC4 :src:gzip:ftgzip.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}ftlzw.c.x" \xC4 :src:lzw:ftlzw.c
"{ObjDir}otvalid.c.x" \xC4 :src:otvalid:otvalid.c "{ObjDir}otvalid.c.x" \xC4 :src:otvalid:otvalid.c
"{ObjDir}pcf.c.x" \xC4 :src:pcf:pcf.c "{ObjDir}pcf.c.x" \xC4 :src:pcf:pcf.c

View file

@ -1,8 +1,8 @@
This folder contains This folder contains
* Makefile skeltons for Apple MPW (Macintosh's Programmers Workshop) * Makefile skeletons for Apple MPW (Macintosh's Programmer's Workshop)
* Python script to generate MPW makefile from skelton * Python script to generate MPW makefile from skeleton
* Metrowerks CodeWarrior 9.0 project file in XML format * Metrowerks CodeWarrior 9.0 project file in XML format
@ -51,7 +51,7 @@ environment by Metrowerks. GCC for MPW and Symantec
Also you can find documents how to update by MPW-PR. Also you can find documents how to update by MPW-PR.
Python is required to restore MPW makefiles from the Python is required to restore MPW makefiles from the
skeltons. Python bundled to Mac OS X is enough. For skeletons. Python bundled to Mac OS X is enough. For
classic MacOS, MacPython is available: classic MacOS, MacPython is available:
http://homepages.cwi.nl/~jack/macpython/ http://homepages.cwi.nl/~jack/macpython/
@ -78,10 +78,10 @@ environment by Metrowerks. GCC for MPW and Symantec
Detailed building procedure by Apple MPW is Detailed building procedure by Apple MPW is
described in following. described in following.
3-1-1. Generate MPW makefiles from the skeltons 3-1-1. Generate MPW makefiles from the skeletons
------------------------------------------------ ------------------------------------------------
Here are 4 skeltons for following targets are Here are 4 skeletons for following targets are
included. included.
- FreeType.m68k_far.make.txt - FreeType.m68k_far.make.txt
@ -99,7 +99,7 @@ environment by Metrowerks. GCC for MPW and Symantec
System 7, MacOS 8, MacOS 9. So-called "Toolbox" System 7, MacOS 8, MacOS 9. So-called "Toolbox"
API is used. API is used.
- FreeType.ppc_classic.make.txt - FreeType.ppc_carbon.make.txt
CFM binary executable format for ppc MacOS: CFM binary executable format for ppc MacOS:
MacOS 9. Carbon API is used. MacOS 9. Carbon API is used.
@ -109,7 +109,7 @@ environment by Metrowerks. GCC for MPW and Symantec
MPW makefile syntax uses 8bit characters. To keep MPW makefile syntax uses 8bit characters. To keep
from violating them during version control, here from violating them during version control, here
we store skeltons in pure ASCII format. You must we store skeletons in pure ASCII format. You must
generate MPW makefile by Python script ascii2mpw.py. generate MPW makefile by Python script ascii2mpw.py.
In Mac OS X terminal, you can convert as: In Mac OS X terminal, you can convert as:
@ -118,10 +118,10 @@ environment by Metrowerks. GCC for MPW and Symantec
< builds/mac/FreeType.m68k_far.make.txt \ < builds/mac/FreeType.m68k_far.make.txt \
> FreeType.m68k_far.make > FreeType.m68k_far.make
The skeltons are designed to use in the top The skeletons are designed to use in the top
directory where there are builds, include, src etc. directory where there are builds, include, src etc.
You must name the generated MPW makefile by removing You must name the generated MPW makefile by removing
".txt" from source skelton name. ".txt" from source skeleton name.
3-1-2. Add resource forks to related files 3-1-2. Add resource forks to related files
------------------------------------------ ------------------------------------------
@ -392,12 +392,10 @@ ATSFontGetFileSpecification() | x | x | x | x |
ATS font manager is not published in these versions. ATS font manager is not published in these versions.
------------------------------------------------------------ ------------------------------------------------------------
Last update: 2007-Feb-01, by Alexei Podtelezhnikov. Last update: 2013-Nov-03.
Currently maintained by Currently maintained by
suzuki toshiya, <mpsuzuki@hiroshima-u.ac.jp> suzuki toshiya, <mpsuzuki@hiroshima-u.ac.jp>
Originally prepared by Originally prepared by
Leonard Rosenthol, <leonardr@lazerware.com> Leonard Rosenthol, <leonardr@lazerware.com>
Just van Rossum, <just@letterror.com> Just van Rossum, <just@letterror.com>
This directory is now actively maintained as part of the FreeType Project.

View 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>

View file

@ -5,7 +5,7 @@
/* Mac FOND support. Written by just@letterror.com. */ /* Mac FOND support. Written by just@letterror.com. */
/* Heavily Fixed by mpsuzuki, George Williams and Sean McBride */ /* Heavily Fixed by mpsuzuki, George Williams and Sean McBride */
/* */ /* */
/* Copyright 1996-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 by */ /* Copyright 1996-2016 by */
/* Just van Rossum, David Turner, Robert Wilhelm, and Werner Lemberg. */ /* Just van Rossum, David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -171,6 +171,7 @@ typedef short ResourceIndex;
#define PREFER_LWFN 1 #define PREFER_LWFN 1
#endif #endif
#ifdef FT_MACINTOSH
#if !HAVE_QUICKDRAW_CARBON /* QuickDraw is deprecated since Mac OS X 10.4 */ #if !HAVE_QUICKDRAW_CARBON /* QuickDraw is deprecated since Mac OS X 10.4 */
@ -183,7 +184,7 @@ typedef short ResourceIndex;
FT_UNUSED( pathSpec ); FT_UNUSED( pathSpec );
FT_UNUSED( face_index ); FT_UNUSED( face_index );
return FT_Err_Unimplemented_Feature; return FT_THROW( Unimplemented_Feature );
} }
#else #else
@ -203,6 +204,9 @@ typedef short ResourceIndex;
FMFontFamily family = 0; FMFontFamily family = 0;
if ( !fontName || !face_index )
return FT_THROW( Invalid_Argument );
*face_index = 0; *face_index = 0;
while ( status == 0 && !the_font ) while ( status == 0 && !the_font )
{ {
@ -269,7 +273,7 @@ typedef short ResourceIndex;
return FT_Err_Ok; return FT_Err_Ok;
} }
else else
return FT_Err_Unknown_File_Format; return FT_THROW( Unknown_File_Format );
} }
#endif /* HAVE_QUICKDRAW_CARBON */ #endif /* HAVE_QUICKDRAW_CARBON */
@ -322,10 +326,10 @@ typedef short ResourceIndex;
CFRelease( cf_fontName ); CFRelease( cf_fontName );
if ( ats_font_id == 0 || ats_font_id == 0xFFFFFFFFUL ) if ( ats_font_id == 0 || ats_font_id == 0xFFFFFFFFUL )
return FT_Err_Unknown_File_Format; return FT_THROW( Unknown_File_Format );
if ( noErr != FT_ATSFontGetFileReference( ats_font_id, ats_font_ref ) ) if ( noErr != FT_ATSFontGetFileReference( ats_font_id, ats_font_ref ) )
return FT_Err_Unknown_File_Format; return FT_THROW( Unknown_File_Format );
/* face_index calculation by searching preceding fontIDs */ /* face_index calculation by searching preceding fontIDs */
/* with same FSRef */ /* with same FSRef */
@ -364,7 +368,7 @@ typedef short ResourceIndex;
FT_UNUSED( maxPathSize ); FT_UNUSED( maxPathSize );
FT_UNUSED( face_index ); FT_UNUSED( face_index );
return FT_Err_Unimplemented_Feature; return FT_THROW( Unimplemented_Feature );
} }
#else #else
@ -380,11 +384,11 @@ typedef short ResourceIndex;
err = FT_GetFileRef_From_Mac_ATS_Name( fontName, &ref, face_index ); err = FT_GetFileRef_From_Mac_ATS_Name( fontName, &ref, face_index );
if ( FT_Err_Ok != err ) if ( err )
return err; return err;
if ( noErr != FSRefMakePath( &ref, path, maxPathSize ) ) if ( noErr != FSRefMakePath( &ref, path, maxPathSize ) )
return FT_Err_Unknown_File_Format; return FT_THROW( Unknown_File_Format );
return FT_Err_Ok; return FT_Err_Ok;
} }
@ -403,7 +407,7 @@ typedef short ResourceIndex;
FT_UNUSED( pathSpec ); FT_UNUSED( pathSpec );
FT_UNUSED( face_index ); FT_UNUSED( face_index );
return FT_Err_Unimplemented_Feature; return FT_THROW( Unimplemented_Feature );
} }
#else #else
@ -419,12 +423,12 @@ typedef short ResourceIndex;
err = FT_GetFileRef_From_Mac_ATS_Name( fontName, &ref, face_index ); err = FT_GetFileRef_From_Mac_ATS_Name( fontName, &ref, face_index );
if ( FT_Err_Ok != err ) if ( err )
return err; return err;
if ( noErr != FSGetCatalogInfo( &ref, kFSCatInfoNone, NULL, NULL, if ( noErr != FSGetCatalogInfo( &ref, kFSCatInfoNone, NULL, NULL,
pathSpec, NULL ) ) pathSpec, NULL ) )
return FT_Err_Unknown_File_Format; return FT_THROW( Unknown_File_Format );
return FT_Err_Ok; return FT_Err_Ok;
} }
@ -579,7 +583,7 @@ typedef short ResourceIndex;
if ( noErr != FSPathMakeRef( pathname, &ref, FALSE ) ) if ( noErr != FSPathMakeRef( pathname, &ref, FALSE ) )
return FT_Err_Cannot_Open_Resource; return FT_THROW( Cannot_Open_Resource );
/* at present, no support for dfont format */ /* at present, no support for dfont format */
err = FSOpenResourceFile( &ref, 0, NULL, fsRdPerm, res ); err = FSOpenResourceFile( &ref, 0, NULL, fsRdPerm, res );
@ -597,7 +601,7 @@ typedef short ResourceIndex;
if ( noErr != FT_FSPathMakeSpec( pathname, &spec, FALSE ) ) if ( noErr != FT_FSPathMakeSpec( pathname, &spec, FALSE ) )
return FT_Err_Cannot_Open_Resource; return FT_THROW( Cannot_Open_Resource );
/* at present, no support for dfont format without FSRef */ /* at present, no support for dfont format without FSRef */
/* (see above), try original resource-fork font */ /* (see above), try original resource-fork font */
@ -695,11 +699,9 @@ typedef short ResourceIndex;
count_faces_scalable( char* fond_data ) count_faces_scalable( char* fond_data )
{ {
AsscEntry* assoc; AsscEntry* assoc;
FamRec* fond;
short i, face, face_all; short i, face, face_all;
fond = (FamRec*)fond_data;
face_all = EndianS16_BtoN( *( (short *)( fond_data + face_all = EndianS16_BtoN( *( (short *)( fond_data +
sizeof ( FamRec ) ) ) ) + 1; sizeof ( FamRec ) ) ) ) + 1;
assoc = (AsscEntry*)( fond_data + sizeof ( FamRec ) + 2 ); assoc = (AsscEntry*)( fond_data + sizeof ( FamRec ) + 2 );
@ -846,17 +848,17 @@ typedef short ResourceIndex;
/* We should not extract parent directory by string manipulation. */ /* We should not extract parent directory by string manipulation. */
if ( noErr != FSPathMakeRef( path_fond, &ref, FALSE ) ) if ( noErr != FSPathMakeRef( path_fond, &ref, FALSE ) )
return FT_Err_Invalid_Argument; return FT_THROW( Invalid_Argument );
if ( noErr != FSGetCatalogInfo( &ref, kFSCatInfoNone, if ( noErr != FSGetCatalogInfo( &ref, kFSCatInfoNone,
NULL, NULL, NULL, &par_ref ) ) NULL, NULL, NULL, &par_ref ) )
return FT_Err_Invalid_Argument; return FT_THROW( Invalid_Argument );
if ( noErr != FSRefMakePath( &par_ref, path_lwfn, path_size ) ) if ( noErr != FSRefMakePath( &par_ref, path_lwfn, path_size ) )
return FT_Err_Invalid_Argument; return FT_THROW( Invalid_Argument );
if ( ft_strlen( (char *)path_lwfn ) + 1 + base_lwfn[0] > path_size ) if ( ft_strlen( (char *)path_lwfn ) + 1 + base_lwfn[0] > path_size )
return FT_Err_Invalid_Argument; return FT_THROW( Invalid_Argument );
/* now we have absolute dirname in path_lwfn */ /* now we have absolute dirname in path_lwfn */
if ( path_lwfn[0] == '/' ) if ( path_lwfn[0] == '/' )
@ -869,11 +871,11 @@ typedef short ResourceIndex;
path_lwfn[dirname_len + base_lwfn[0]] = '\0'; path_lwfn[dirname_len + base_lwfn[0]] = '\0';
if ( noErr != FSPathMakeRef( path_lwfn, &ref, FALSE ) ) if ( noErr != FSPathMakeRef( path_lwfn, &ref, FALSE ) )
return FT_Err_Cannot_Open_Resource; return FT_THROW( Cannot_Open_Resource );
if ( noErr != FSGetCatalogInfo( &ref, kFSCatInfoNone, if ( noErr != FSGetCatalogInfo( &ref, kFSCatInfoNone,
NULL, NULL, NULL, NULL ) ) NULL, NULL, NULL, NULL ) )
return FT_Err_Cannot_Open_Resource; return FT_THROW( Cannot_Open_Resource );
return FT_Err_Ok; return FT_Err_Ok;
@ -885,7 +887,7 @@ typedef short ResourceIndex;
/* pathname for FSSpec is always HFS format */ /* pathname for FSSpec is always HFS format */
if ( ft_strlen( (char *)path_fond ) > path_size ) if ( ft_strlen( (char *)path_fond ) > path_size )
return FT_Err_Invalid_Argument; return FT_THROW( Invalid_Argument );
ft_strcpy( (char *)path_lwfn, (char *)path_fond ); ft_strcpy( (char *)path_lwfn, (char *)path_fond );
@ -894,7 +896,7 @@ typedef short ResourceIndex;
i--; i--;
if ( i + 1 + base_lwfn[0] > path_size ) if ( i + 1 + base_lwfn[0] > path_size )
return FT_Err_Invalid_Argument; return FT_THROW( Invalid_Argument );
if ( ':' == path_lwfn[i] ) if ( ':' == path_lwfn[i] )
{ {
@ -908,7 +910,7 @@ typedef short ResourceIndex;
} }
if ( noErr != FT_FSPathMakeSpec( path_lwfn, &spec, FALSE ) ) if ( noErr != FT_FSPathMakeSpec( path_lwfn, &spec, FALSE ) )
return FT_Err_Cannot_Open_Resource; return FT_THROW( Cannot_Open_Resource );
return FT_Err_Ok; return FT_Err_Ok;
@ -1002,7 +1004,7 @@ typedef short ResourceIndex;
/* detect integer overflows */ /* detect integer overflows */
if ( total_size < old_total_size ) if ( total_size < old_total_size )
{ {
error = FT_Err_Array_Too_Large; error = FT_ERR( Array_Too_Large );
goto Error; goto Error;
} }
@ -1087,7 +1089,7 @@ typedef short ResourceIndex;
if ( noErr != FT_FSPathMakeRes( pathname, &res ) ) if ( noErr != FT_FSPathMakeRes( pathname, &res ) )
return FT_Err_Cannot_Open_Resource; return FT_THROW( Cannot_Open_Resource );
pfb_data = NULL; pfb_data = NULL;
pfb_size = 0; pfb_size = 0;
@ -1122,7 +1124,7 @@ typedef short ResourceIndex;
sfnt = GetResource( TTAG_sfnt, sfnt_id ); sfnt = GetResource( TTAG_sfnt, sfnt_id );
if ( sfnt == NULL ) if ( sfnt == NULL )
return FT_Err_Invalid_Handle; return FT_THROW( Invalid_Handle );
sfnt_size = (FT_ULong)GetHandleSize( sfnt ); sfnt_size = (FT_ULong)GetHandleSize( sfnt );
if ( FT_ALLOC( sfnt_data, (FT_Long)sfnt_size ) ) if ( FT_ALLOC( sfnt_data, (FT_Long)sfnt_size ) )
@ -1181,23 +1183,26 @@ typedef short ResourceIndex;
FT_Long face_index, FT_Long face_index,
FT_Face* aface ) FT_Face* aface )
{ {
FT_Error error = FT_Err_Cannot_Open_Resource; FT_Error error = FT_ERR( Cannot_Open_Resource );
ResFileRefNum res_ref; ResFileRefNum res_ref;
ResourceIndex res_index; ResourceIndex res_index;
Handle fond; Handle fond;
short num_faces_in_res, num_faces_in_fond; short num_faces_in_res;
if ( noErr != FT_FSPathMakeRes( pathname, &res_ref ) ) if ( noErr != FT_FSPathMakeRes( pathname, &res_ref ) )
return FT_Err_Cannot_Open_Resource; return FT_THROW( Cannot_Open_Resource );
UseResFile( res_ref ); UseResFile( res_ref );
if ( ResError() ) if ( ResError() )
return FT_Err_Cannot_Open_Resource; return FT_THROW( Cannot_Open_Resource );
num_faces_in_res = 0; num_faces_in_res = 0;
for ( res_index = 1; ; ++res_index ) for ( res_index = 1; ; ++res_index )
{ {
short num_faces_in_fond;
fond = Get1IndResource( TTAG_FOND, res_index ); fond = Get1IndResource( TTAG_FOND, res_index );
if ( ResError() ) if ( ResError() )
break; break;
@ -1236,9 +1241,12 @@ typedef short ResourceIndex;
FT_Error error = FT_Err_Ok; FT_Error error = FT_Err_Ok;
/* test for valid `aface' and `library' delayed to */
/* `FT_New_Face_From_XXX' */
GetResInfo( fond, &fond_id, &fond_type, fond_name ); GetResInfo( fond, &fond_id, &fond_type, fond_name );
if ( ResError() != noErr || fond_type != TTAG_FOND ) if ( ResError() != noErr || fond_type != TTAG_FOND )
return FT_Err_Invalid_File_Format; return FT_THROW( Invalid_File_Format );
HLock( fond ); HLock( fond );
parse_fond( *fond, &have_sfnt, &sfnt_id, lwfn_file_name, face_index ); parse_fond( *fond, &have_sfnt, &sfnt_id, lwfn_file_name, face_index );
@ -1321,7 +1329,7 @@ typedef short ResourceIndex;
face_index, face_index,
aface ); aface );
else else
error = FT_Err_Unknown_File_Format; error = FT_ERR( Unknown_File_Format );
found_no_lwfn_file: found_no_lwfn_file:
if ( have_sfnt && FT_Err_Ok != error ) if ( have_sfnt && FT_Err_Ok != error )
@ -1388,9 +1396,8 @@ typedef short ResourceIndex;
/* test for valid `library' and `aface' delayed to FT_Open_Face() */ /* test for valid `library' and `aface' delayed to FT_Open_Face() */
if ( !pathname ) if ( !pathname )
return FT_Err_Invalid_Argument; return FT_THROW( Invalid_Argument );
error = FT_Err_Ok;
*aface = NULL; *aface = NULL;
/* try resourcefork based font: LWFN, FFIL */ /* try resourcefork based font: LWFN, FFIL */
@ -1431,7 +1438,7 @@ typedef short ResourceIndex;
FT_UNUSED( face_index ); FT_UNUSED( face_index );
FT_UNUSED( aface ); FT_UNUSED( aface );
return FT_Err_Unimplemented_Feature; return FT_THROW( Unimplemented_Feature );
#else #else
@ -1441,12 +1448,14 @@ typedef short ResourceIndex;
UInt8 pathname[PATH_MAX]; UInt8 pathname[PATH_MAX];
/* test for valid `library' and `aface' delayed to `FT_Open_Face' */
if ( !ref ) if ( !ref )
return FT_Err_Invalid_Argument; return FT_THROW( Invalid_Argument );
err = FSRefMakePath( ref, pathname, sizeof ( pathname ) ); err = FSRefMakePath( ref, pathname, sizeof ( pathname ) );
if ( err ) if ( err )
error = FT_Err_Cannot_Open_Resource; error = FT_ERR( Cannot_Open_Resource );
error = FT_New_Face_From_Resource( library, pathname, face_index, aface ); error = FT_New_Face_From_Resource( library, pathname, face_index, aface );
if ( error != 0 || *aface != NULL ) if ( error != 0 || *aface != NULL )
@ -1486,7 +1495,7 @@ typedef short ResourceIndex;
if ( !spec || FSpMakeFSRef( spec, &ref ) != noErr ) if ( !spec || FSpMakeFSRef( spec, &ref ) != noErr )
return FT_Err_Invalid_Argument; return FT_THROW( Invalid_Argument );
else else
return FT_New_Face_From_FSRef( library, &ref, face_index, aface ); return FT_New_Face_From_FSRef( library, &ref, face_index, aface );
@ -1499,11 +1508,11 @@ typedef short ResourceIndex;
if ( !spec ) if ( !spec )
return FT_Err_Invalid_Argument; return FT_THROW( Invalid_Argument );
err = FT_FSpMakePath( spec, pathname, sizeof ( pathname ) ); err = FT_FSpMakePath( spec, pathname, sizeof ( pathname ) );
if ( err ) if ( err )
error = FT_Err_Cannot_Open_Resource; error = FT_ERR( Cannot_Open_Resource );
error = FT_New_Face_From_Resource( library, pathname, face_index, aface ); error = FT_New_Face_From_Resource( library, pathname, face_index, aface );
if ( error != 0 || *aface != NULL ) if ( error != 0 || *aface != NULL )
@ -1521,12 +1530,13 @@ typedef short ResourceIndex;
FT_UNUSED( face_index ); FT_UNUSED( face_index );
FT_UNUSED( aface ); FT_UNUSED( aface );
return FT_Err_Unimplemented_Feature; return FT_THROW( Unimplemented_Feature );
#endif /* HAVE_FSREF, HAVE_FSSPEC */ #endif /* HAVE_FSREF, HAVE_FSSPEC */
} }
#endif /* FT_MACINTOSH */
/* END */ /* END */

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2006, 2008 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -28,7 +28,7 @@ $(FTMODULE_H): $(MODULES_CFG)
$(FTMODULE_H_CREATE) $(FTMODULE_H_CREATE)
$(FTMODULE_H_DONE) $(FTMODULE_H_DONE)
ifneq ($(findstring $(PLATFORM),dos win32 win16 os2),) ifneq ($(findstring $(PLATFORM),dos windows os2),)
OPEN_MODULE := @echo$(space) OPEN_MODULE := @echo$(space)
CLOSE_MODULE := >> $(subst /,$(SEP),$(FTMODULE_H)) CLOSE_MODULE := >> $(subst /,$(SEP),$(FTMODULE_H))
REMOVE_MODULE := @-$(DELETE) $(subst /,$(SEP),$(FTMODULE_H)) REMOVE_MODULE := @-$(DELETE) $(subst /,$(SEP),$(FTMODULE_H))

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2005, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -5,7 +5,7 @@
# #
# Copyright 1996-2000, 2003, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -2,7 +2,7 @@
// FreeType 2 project for the symbian platform // FreeType 2 project for the symbian platform
// //
// Copyright 2008, 2009 by // Copyright 2008-2016 by
// David Turner, Robert Wilhelm, and Werner Lemberg. // David Turner, Robert Wilhelm, and Werner Lemberg.
// //
// This file is part of the FreeType project, and may only be used, modified, // This file is part of the FreeType project, and may only be used, modified,
@ -18,48 +18,49 @@ PRJ_MMPFILES
freetype.mmp freetype.mmp
PRJ_EXPORTS PRJ_EXPORTS
../../include/ft2build.h ../../include/freetype/ft2build.h
../../include/freetype/config/ftconfig.h freetype/config/ftconfig.h ../../include/freetype/config/ftconfig.h config/ftconfig.h
../../include/freetype/config/ftheader.h freetype/config/ftheader.h ../../include/freetype/config/ftheader.h config/ftheader.h
../../include/freetype/config/ftmodule.h freetype/config/ftmodule.h ../../include/freetype/config/ftmodule.h config/ftmodule.h
../../include/freetype/config/ftoption.h freetype/config/ftoption.h ../../include/freetype/config/ftoption.h config/ftoption.h
../../include/freetype/config/ftstdlib.h freetype/config/ftstdlib.h ../../include/freetype/config/ftstdlib.h config/ftstdlib.h
../../include/freetype/freetype.h freetype/freetype.h ../../include/freetype/freetype.h freetype.h
../../include/freetype/ftbbox.h freetype/ftbbox.h ../../include/freetype/ftbbox.h ftbbox.h
../../include/freetype/ftbdf.h freetype/ftbdf.h ../../include/freetype/ftbdf.h ftbdf.h
../../include/freetype/ftbitmap.h freetype/ftbitmap.h ../../include/freetype/ftbitmap.h ftbitmap.h
../../include/freetype/ftcache.h freetype/ftcache.h ../../include/freetype/ftcache.h ftcache.h
../../include/freetype/ftcid.h freetype/ftcid.h ../../include/freetype/ftcid.h ftcid.h
../../include/freetype/fterrdef.h freetype/fterrdef.h ../../include/freetype/fterrdef.h fterrdef.h
../../include/freetype/fterrors.h freetype/fterrors.h ../../include/freetype/fterrors.h fterrors.h
../../include/freetype/ftgasp.h freetype/ftgasp.h ../../include/freetype/ftfntfmt.h ftfntfmt.h
../../include/freetype/ftglyph.h freetype/ftglyph.h ../../include/freetype/ftgasp.h ftgasp.h
../../include/freetype/ftgxval.h freetype/ftgxval.h ../../include/freetype/ftglyph.h ftglyph.h
../../include/freetype/ftgzip.h freetype/ftgzip.h ../../include/freetype/ftgxval.h ftgxval.h
../../include/freetype/ftimage.h freetype/ftimage.h ../../include/freetype/ftgzip.h ftgzip.h
../../include/freetype/ftincrem.h freetype/ftincrem.h ../../include/freetype/ftbzip2.h ftbzip2.h
../../include/freetype/ftlcdfil.h freetype/ftlcdfil.h ../../include/freetype/ftimage.h ftimage.h
../../include/freetype/ftlist.h freetype/ftlist.h ../../include/freetype/ftincrem.h ftincrem.h
../../include/freetype/ftlzw.h freetype/ftlzw.h ../../include/freetype/ftlcdfil.h ftlcdfil.h
../../include/freetype/ftmac.h freetype/ftmac.h ../../include/freetype/ftlist.h ftlist.h
../../include/freetype/ftmm.h freetype/ftmm.h ../../include/freetype/ftlzw.h ftlzw.h
../../include/freetype/ftmodapi.h freetype/ftmodapi.h ../../include/freetype/ftmac.h ftmac.h
../../include/freetype/ftmoderr.h freetype/ftmoderr.h ../../include/freetype/ftmm.h ftmm.h
../../include/freetype/ftotval.h freetype/ftotval.h ../../include/freetype/ftmodapi.h ftmodapi.h
../../include/freetype/ftoutln.h freetype/ftoutln.h ../../include/freetype/ftmoderr.h ftmoderr.h
../../include/freetype/ftpfr.h freetype/ftpfr.h ../../include/freetype/ftotval.h ftotval.h
../../include/freetype/ftrender.h freetype/ftrender.h ../../include/freetype/ftoutln.h ftoutln.h
../../include/freetype/ftsizes.h freetype/ftsizes.h ../../include/freetype/ftpfr.h ftpfr.h
../../include/freetype/ftsnames.h freetype/ftsnames.h ../../include/freetype/ftrender.h ftrender.h
../../include/freetype/ftstroke.h freetype/ftstroke.h ../../include/freetype/ftsizes.h ftsizes.h
../../include/freetype/ftsynth.h freetype/ftsynth.h ../../include/freetype/ftsnames.h ftsnames.h
../../include/freetype/ftsystem.h freetype/ftsystem.h ../../include/freetype/ftstroke.h ftstroke.h
../../include/freetype/fttrigon.h freetype/fttrigon.h ../../include/freetype/ftsynth.h ftsynth.h
../../include/freetype/fttypes.h freetype/fttypes.h ../../include/freetype/ftsystem.h ftsystem.h
../../include/freetype/ftwinfnt.h freetype/ftwinfnt.h ../../include/freetype/fttrigon.h fttrigon.h
../../include/freetype/ftxf86.h freetype/ftxf86.h ../../include/freetype/fttypes.h fttypes.h
../../include/freetype/t1tables.h freetype/t1tables.h ../../include/freetype/ftwinfnt.h ftwinfnt.h
../../include/freetype/ttnameid.h freetype/ttnameid.h ../../include/freetype/t1tables.h t1tables.h
../../include/freetype/tttables.h freetype/tttables.h ../../include/freetype/ttnameid.h ttnameid.h
../../include/freetype/tttags.h freetype/tttags.h ../../include/freetype/tttables.h tttables.h
../../include/freetype/ttunpat.h freetype/ttunpat.h ../../include/freetype/tttags.h tttags.h
../../include/freetype/ttunpat.h ttunpat.h

View file

@ -2,7 +2,7 @@
// FreeType 2 makefile for the symbian platform // FreeType 2 makefile for the symbian platform
// //
// Copyright 2008, 2009 by // Copyright 2008-2016 by
// David Turner, Robert Wilhelm, and Werner Lemberg. // David Turner, Robert Wilhelm, and Werner Lemberg.
// //
// This file is part of the FreeType project, and may only be used, modified, // This file is part of the FreeType project, and may only be used, modified,
@ -28,6 +28,7 @@ source ftbbox.c
source ftbdf.c source ftbdf.c
source ftbitmap.c source ftbitmap.c
source ftcid.c source ftcid.c
source ftfntfmt.c
source ftfstype.c source ftfstype.c
source ftgasp.c source ftgasp.c
source ftglyph.c source ftglyph.c
@ -64,6 +65,10 @@ sourcepath ..\..\src\gzip
source ftgzip.c source ftgzip.c
sourcepath ..\..\src\bzip2
source ftbzip2.c
sourcepath ..\..\src\lzw sourcepath ..\..\src\lzw
source ftlzw.c source ftlzw.c
@ -126,6 +131,7 @@ userinclude ..\..\src\cff
userinclude ..\..\src\cid userinclude ..\..\src\cid
userinclude ..\..\src\gxvalid userinclude ..\..\src\gxvalid
userinclude ..\..\src\gzip userinclude ..\..\src\gzip
userinclude ..\..\src\bzip2
userinclude ..\..\src\lzw userinclude ..\..\src\lzw
userinclude ..\..\src\otvalid userinclude ..\..\src\otvalid
userinclude ..\..\src\pcf userinclude ..\..\src\pcf

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2001, 2003, 2006, 2008, 2009 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -112,16 +112,17 @@ ifdef check_platform
include $(TOP_DIR)/builds/detect.mk include $(TOP_DIR)/builds/detect.mk
# This rule makes sense for Unix only to remove files created by a run # This rule makes sense for Unix only to remove files created by a run of
# of the configure script which hasn't been successful (so that no # the configure script which hasn't been successful (so that no
# `config.mk' has been created). It uses the built-in $(RM) command of # `config.mk' has been created). It uses the built-in $(RM) command of
# GNU make. Similarly, `nul' is created if e.g. `make setup win32' has # GNU make. Similarly, `nul' is created if e.g. `make setup windows' has
# been erroneously used. # been erroneously used.
# #
# Note: This test is duplicated in `builds/unix/detect.mk'. # Note: This test is duplicated in `builds/unix/detect.mk'.
# #
is_unix := $(strip $(wildcard /sbin/init) \ is_unix := $(strip $(wildcard /sbin/init) \
$(wildcard /usr/sbin/init) \ $(wildcard /usr/sbin/init) \
$(wildcard /dev/null) \
$(wildcard /hurd/auth)) $(wildcard /hurd/auth))
ifneq ($(is_unix),) ifneq ($(is_unix),)
@ -168,38 +169,57 @@ modules:
include $(TOP_DIR)/builds/modules.mk 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. # This target builds the tarballs.
# #
# Not to be run by a normal user -- there are no attempts to make it # Not to be run by a normal user -- there are no attempts to make it
# generic. # generic.
# we check for `dist', not `distclean'
ifneq ($(findstring distx,$(MAKECMDGOALS)x),)
FT_H := include/freetype/freetype.h
major := $(shell sed -n 's/.*FREETYPE_MAJOR.*\([0-9]\+\)/\1/p' < $(FT_H))
minor := $(shell sed -n 's/.*FREETYPE_MINOR.*\([0-9]\+\)/\1/p' < $(FT_H))
patch := $(shell sed -n 's/.*FREETYPE_PATCH.*\([0-9]\+\)/\1/p' < $(FT_H))
version := $(major).$(minor).$(patch)
winversion := $(major)$(minor)$(patch)
endif
dist: dist:
-rm -rf tmp -rm -rf tmp
rm -f freetype-$(version).tar.gz rm -f freetype-$(version).tar.gz
rm -f freetype-$(version).tar.bz2 rm -f freetype-$(version).tar.bz2
rm -f ft$(winversion).zip rm -f ft$(winversion).zip
for d in `find . -wholename '*/CVS' -prune \ for d in `find . -wholename '*/.git' -prune \
-o -type f \ -o -type f \
-o -print` ; do \ -o -print` ; do \
mkdir -p tmp/$$d ; \ mkdir -p tmp/$$d ; \
done ; done ;
currdir=`pwd` ; \ currdir=`pwd` ; \
for f in `find . -wholename '*/CVS' -prune \ for f in `find . -wholename '*/.git' -prune \
-o -name .cvsignore \ -o -name .gitignore \
-o -name .mailmap \
-o -type d \ -o -type d \
-o -print` ; do \ -o -print` ; do \
ln -s $$currdir/$$f tmp/$$f ; \ ln -s $$currdir/$$f tmp/$$f ; \
@ -218,9 +238,9 @@ dist:
mv tmp freetype-$(version) mv tmp freetype-$(version)
tar cfh - freetype-$(version) \ tar -H ustar -chf - freetype-$(version) \
| gzip -9 -c > freetype-$(version).tar.gz | gzip -9 -c > freetype-$(version).tar.gz
tar cfh - freetype-$(version) \ tar -H ustar -chf - freetype-$(version) \
| bzip2 -c > freetype-$(version).tar.bz2 | bzip2 -c > freetype-$(version).tar.bz2
@# Use CR/LF for zip files. @# Use CR/LF for zip files.
@ -230,7 +250,8 @@ dist:
# The locations of the latest `config.guess' and `config.sub' versions (from # The locations of the latest `config.guess' and `config.sub' versions (from
# GNU `config' CVS), relative to the `tmp' directory used during `make dist'. # GNU `config' git repository), relative to the `tmp' directory used during
# `make dist'.
# #
CONFIG_GUESS = ~/git/config/config.guess CONFIG_GUESS = ~/git/config/config.guess
CONFIG_SUB = ~/git/config/config.sub CONFIG_SUB = ~/git/config/config.sub

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,602 +0,0 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by FreeType configure 2.3.9, which was
generated by GNU Autoconf 2.63. Invocation command line was
$ ./configure
## --------- ##
## Platform. ##
## --------- ##
hostname = andre
uname -m = x86_64
uname -r = 2.6.28-14-generic
uname -s = Linux
uname -v = #47-Ubuntu SMP Sat Jul 25 01:19:55 UTC 2009
/usr/bin/uname -p = unknown
/bin/uname -X = unknown
/bin/arch = unknown
/usr/bin/arch -k = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo = unknown
/bin/machine = unknown
/usr/bin/oslevel = unknown
/bin/universe = unknown
PATH: /usr/local/sbin
PATH: /usr/local/bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /sbin
PATH: /bin
PATH: /usr/games
PATH: /home/icculus/bin
PATH: /home/icculus/bin
## ----------- ##
## Core tests. ##
## ----------- ##
configure:2072: checking build system type
configure:2090: result: x86_64-unknown-linux-gnu
configure:2112: checking host system type
configure:2127: result: x86_64-unknown-linux-gnu
configure:2201: checking for gcc
configure:2217: found /usr/bin/gcc
configure:2228: result: gcc
configure:2460: checking for C compiler version
configure:2468: gcc --version >&5
gcc (Ubuntu 4.3.3-5ubuntu4) 4.3.3
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
configure:2472: $? = 0
configure:2479: gcc -v >&5
Using built-in specs.
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.3.3-5ubuntu4' --with-bugurl=file:///usr/share/doc/gcc-4.3/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/include/c++/4.3 --program-suffix=-4.3 --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-mpfr --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 4.3.3 (Ubuntu 4.3.3-5ubuntu4)
configure:2483: $? = 0
configure:2490: gcc -V >&5
gcc: '-V' option must have argument
configure:2494: $? = 1
configure:2517: checking for C compiler default output file name
configure:2539: gcc conftest.c >&5
configure:2543: $? = 0
configure:2581: result: a.out
configure:2600: checking whether the C compiler works
configure:2610: ./a.out
configure:2614: $? = 0
configure:2633: result: yes
configure:2640: checking whether we are cross compiling
configure:2642: result: no
configure:2645: checking for suffix of executables
configure:2652: gcc -o conftest conftest.c >&5
configure:2656: $? = 0
configure:2682: result:
configure:2688: checking for suffix of object files
configure:2714: gcc -c conftest.c >&5
configure:2718: $? = 0
configure:2743: result: o
configure:2747: checking whether we are using the GNU C compiler
configure:2776: gcc -c conftest.c >&5
configure:2783: $? = 0
configure:2800: result: yes
configure:2809: checking whether gcc accepts -g
configure:2839: gcc -c -g conftest.c >&5
configure:2846: $? = 0
configure:2947: result: yes
configure:2964: checking for gcc option to accept ISO C89
configure:3038: gcc -c -g -O2 conftest.c >&5
configure:3045: $? = 0
configure:3068: result: none needed
configure:3091: checking how to run the C preprocessor
configure:3131: gcc -E conftest.c
configure:3138: $? = 0
configure:3169: gcc -E conftest.c
conftest.c:8:28: error: ac_nonexistent.h: No such file or directory
configure:3176: $? = 1
configure: failed program was:
| /* confdefs.h. */
| #define PACKAGE_NAME "FreeType"
| #define PACKAGE_TARNAME "freetype"
| #define PACKAGE_VERSION "2.3.9"
| #define PACKAGE_STRING "FreeType 2.3.9"
| #define PACKAGE_BUGREPORT "freetype@nongnu.org"
| /* end confdefs.h. */
| #include <ac_nonexistent.h>
configure:3209: result: gcc -E
configure:3238: gcc -E conftest.c
configure:3245: $? = 0
configure:3276: gcc -E conftest.c
conftest.c:8:28: error: ac_nonexistent.h: No such file or directory
configure:3283: $? = 1
configure: failed program was:
| /* confdefs.h. */
| #define PACKAGE_NAME "FreeType"
| #define PACKAGE_TARNAME "freetype"
| #define PACKAGE_VERSION "2.3.9"
| #define PACKAGE_STRING "FreeType 2.3.9"
| #define PACKAGE_BUGREPORT "freetype@nongnu.org"
| /* end confdefs.h. */
| #include <ac_nonexistent.h>
configure:3517: checking for rm
configure:3533: found /bin/rm
configure:3544: result: rm -f
configure:3554: checking for rmdir
configure:3570: found /bin/rmdir
configure:3581: result: rmdir
configure:3609: checking for a BSD-compatible install
configure:3677: result: /usr/bin/install -c
configure:3700: checking for grep that handles long lines and -e
configure:3760: result: /bin/grep
configure:3765: checking for egrep
configure:3829: result: /bin/grep -E
configure:3834: checking for ANSI C header files
configure:3864: gcc -c -g -O2 conftest.c >&5
configure:3871: $? = 0
configure:3970: gcc -o conftest -g -O2 conftest.c >&5
configure:3974: $? = 0
configure:3980: ./conftest
configure:3984: $? = 0
configure:4002: result: yes
configure:4026: checking for sys/types.h
configure:4047: gcc -c -g -O2 conftest.c >&5
configure:4054: $? = 0
configure:4071: result: yes
configure:4026: checking for sys/stat.h
configure:4047: gcc -c -g -O2 conftest.c >&5
configure:4054: $? = 0
configure:4071: result: yes
configure:4026: checking for stdlib.h
configure:4047: gcc -c -g -O2 conftest.c >&5
configure:4054: $? = 0
configure:4071: result: yes
configure:4026: checking for string.h
configure:4047: gcc -c -g -O2 conftest.c >&5
configure:4054: $? = 0
configure:4071: result: yes
configure:4026: checking for memory.h
configure:4047: gcc -c -g -O2 conftest.c >&5
configure:4054: $? = 0
configure:4071: result: yes
configure:4026: checking for strings.h
configure:4047: gcc -c -g -O2 conftest.c >&5
configure:4054: $? = 0
configure:4071: result: yes
configure:4026: checking for inttypes.h
configure:4047: gcc -c -g -O2 conftest.c >&5
configure:4054: $? = 0
configure:4071: result: yes
configure:4026: checking for stdint.h
configure:4047: gcc -c -g -O2 conftest.c >&5
configure:4054: $? = 0
configure:4071: result: yes
configure:4026: checking for unistd.h
configure:4047: gcc -c -g -O2 conftest.c >&5
configure:4054: $? = 0
configure:4071: result: yes
configure:4102: checking fcntl.h usability
configure:4119: gcc -c -g -O2 conftest.c >&5
configure:4126: $? = 0
configure:4140: result: yes
configure:4144: checking fcntl.h presence
configure:4159: gcc -E conftest.c
configure:4166: $? = 0
configure:4180: result: yes
configure:4213: checking for fcntl.h
configure:4222: result: yes
configure:4091: checking for unistd.h
configure:4098: result: yes
configure:4241: checking for an ANSI C-conforming const
configure:4316: gcc -c -g -O2 conftest.c >&5
configure:4323: $? = 0
configure:4338: result: yes
configure:4352: checking size of int
configure:4657: gcc -o conftest -g -O2 conftest.c >&5
configure:4661: $? = 0
configure:4667: ./conftest
configure:4671: $? = 0
configure:4697: result: 4
configure:4711: checking size of long
configure:5016: gcc -o conftest -g -O2 conftest.c >&5
configure:5020: $? = 0
configure:5026: ./conftest
configure:5030: $? = 0
configure:5056: result: 8
configure:5070: checking cpp computation of bit length in ftconfig.in works
configure:5121: result: yes
configure:5152: checking for stdlib.h
configure:5159: result: yes
configure:5152: checking for unistd.h
configure:5159: result: yes
configure:5302: checking for getpagesize
configure:5358: gcc -o conftest -g -O2 conftest.c >&5
configure:5365: $? = 0
configure:5387: result: yes
configure:5399: checking for working mmap
configure:5546: gcc -o conftest -g -O2 conftest.c >&5
configure:5550: $? = 0
configure:5556: ./conftest
configure:5560: $? = 0
configure:5577: result: yes
configure:5593: checking whether munmap is declared
configure:5630: gcc -c -g -O2 conftest.c >&5
configure:5637: $? = 0
configure:5652: result: yes
configure:5671: checking for munmap's first parameter type
configure:5695: gcc -c -g -O2 conftest.c >&5
configure:5702: $? = 0
configure:5707: result: void *
configure:5732: checking for memcpy
configure:5788: gcc -o conftest -g -O2 conftest.c >&5
conftest.c:51: warning: conflicting types for built-in function 'memcpy'
configure:5795: $? = 0
configure:5817: result: yes
configure:5732: checking for memmove
configure:5788: gcc -o conftest -g -O2 conftest.c >&5
conftest.c:52: warning: conflicting types for built-in function 'memmove'
configure:5795: $? = 0
configure:5817: result: yes
configure:5841: checking for gzsetparams in -lz
configure:5876: gcc -o conftest -g -O2 conftest.c -lz >&5
configure:5883: $? = 0
configure:5904: result: yes
configure:5917: checking zlib.h usability
configure:5934: gcc -c -g -O2 conftest.c >&5
configure:5941: $? = 0
configure:5955: result: yes
configure:5959: checking zlib.h presence
configure:5974: gcc -E conftest.c
configure:5981: $? = 0
configure:5995: result: yes
configure:6028: checking for zlib.h
configure:6035: result: yes
configure:6057: checking whether CFLAGS includes -isysroot option
configure:6081: result: no
configure:6873: checking for a sed that does not truncate output
configure:6939: result: /bin/sed
configure:6957: checking for fgrep
configure:7021: result: /bin/grep -F
configure:7056: checking for ld used by gcc
configure:7123: result: /usr/bin/ld
configure:7132: checking if the linker (/usr/bin/ld) is GNU ld
configure:7147: result: yes
configure:7159: checking for BSD- or MS-compatible name lister (nm)
configure:7208: result: /usr/bin/nm -B
configure:7326: checking the name lister (/usr/bin/nm -B) interface
configure:7333: gcc -c -g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB conftest.c >&5
configure:7336: /usr/bin/nm -B "conftest.o"
configure:7339: output
0000000000000000 B some_variable
configure:7346: result: BSD nm
configure:7349: checking whether ln -s works
configure:7353: result: yes
configure:7361: checking the maximum length of command line arguments
configure:7481: result: 3458764513820540925
configure:7498: checking whether the shell understands some XSI constructs
configure:7508: result: yes
configure:7512: checking whether the shell understands "+="
configure:7518: result: yes
configure:7553: checking for /usr/bin/ld option to reload object files
configure:7560: result: -r
configure:7629: checking for objdump
configure:7645: found /usr/bin/objdump
configure:7656: result: objdump
configure:7685: checking how to recognize dependent libraries
configure:7881: result: pass_all
configure:7941: checking for ar
configure:7957: found /usr/bin/ar
configure:7968: result: ar
configure:8046: checking for strip
configure:8062: found /usr/bin/strip
configure:8073: result: strip
configure:8145: checking for ranlib
configure:8161: found /usr/bin/ranlib
configure:8172: result: ranlib
configure:8262: checking command to parse /usr/bin/nm -B output from gcc object
configure:8380: gcc -c -g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB conftest.c >&5
configure:8383: $? = 0
configure:8387: /usr/bin/nm -B conftest.o \| sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' \> conftest.nm
configure:8390: $? = 0
configure:8444: gcc -o conftest -g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB -lz conftest.c conftstm.o >&5
configure:8447: $? = 0
configure:8485: result: ok
configure:8580: gcc -c -g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB conftest.c >&5
configure:8583: $? = 0
configure:9350: checking for dlfcn.h
configure:9371: gcc -c -g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB conftest.c >&5
configure:9378: $? = 0
configure:9395: result: yes
configure:9879: checking for objdir
configure:9894: result: .libs
configure:10186: checking if gcc supports -fno-rtti -fno-exceptions
configure:10204: gcc -c -g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB -fno-rtti -fno-exceptions conftest.c >&5
cc1: warning: command line option "-fno-rtti" is valid for C++/ObjC++ but not for C
configure:10208: $? = 0
configure:10221: result: no
configure:10241: checking for gcc option to produce PIC
configure:10513: result: -fPIC -DPIC
configure:10525: checking if gcc PIC flag -fPIC -DPIC works
configure:10543: gcc -c -g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB -fPIC -DPIC -DPIC conftest.c >&5
configure:10547: $? = 0
configure:10560: result: yes
configure:10584: checking if gcc static flag -static works
configure:10612: result: yes
configure:10627: checking if gcc supports -c -o file.o
configure:10648: gcc -c -g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB -o out/conftest2.o conftest.c >&5
configure:10652: $? = 0
configure:10674: result: yes
configure:10682: checking if gcc supports -c -o file.o
configure:10729: result: yes
configure:10762: checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries
configure:11836: result: yes
configure:11873: checking whether -lc should be explicitly linked in
configure:11878: gcc -c -g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB conftest.c >&5
configure:11881: $? = 0
configure:11896: gcc -shared conftest.o -v -Wl,-soname -Wl,conftest -o conftest 2\>\&1 \| /bin/grep -lc \>/dev/null 2\>\&1
configure:11899: $? = 0
configure:11911: result: no
configure:12075: checking dynamic linker characteristics
configure:12518: gcc -o conftest -g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB -lz -Wl,-rpath -Wl,/foo conftest.c >&5
configure:12525: $? = 0
configure:12758: result: GNU/Linux ld.so
configure:12860: checking how to hardcode library paths into programs
configure:12885: result: immediate
configure:13718: checking whether stripping libraries is possible
configure:13723: result: yes
configure:13758: checking if libtool supports shared libraries
configure:13760: result: yes
configure:13763: checking whether to build shared libraries
configure:13784: result: yes
configure:13787: checking whether to build static libraries
configure:13791: result: yes
configure:13952: creating ./config.status
## ---------------------- ##
## Running config.status. ##
## ---------------------- ##
This file was extended by FreeType config.status 2.3.9, which was
generated by GNU Autoconf 2.63. Invocation command line was
CONFIG_FILES =
CONFIG_HEADERS =
CONFIG_LINKS =
CONFIG_COMMANDS =
$ ./config.status
on andre
config.status:982: creating unix-cc.mk
config.status:982: creating unix-def.mk
config.status:982: creating freetype-config
config.status:982: creating freetype2.pc
config.status:982: creating ftconfig.h
config.status:1216: executing libtool commands
## ---------------- ##
## Cache variables. ##
## ---------------- ##
ac_cv_build=x86_64-unknown-linux-gnu
ac_cv_c_compiler_gnu=yes
ac_cv_c_const=yes
ac_cv_env_CC_set=
ac_cv_env_CC_value=
ac_cv_env_CFLAGS_set=
ac_cv_env_CFLAGS_value=
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_LDFLAGS_set=
ac_cv_env_LDFLAGS_value=
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_build_alias_set=
ac_cv_env_build_alias_value=
ac_cv_env_host_alias_set=
ac_cv_env_host_alias_value=
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_func_getpagesize=yes
ac_cv_func_memcpy=yes
ac_cv_func_memmove=yes
ac_cv_func_mmap_fixed_mapped=yes
ac_cv_have_decl_munmap=yes
ac_cv_header_dlfcn_h=yes
ac_cv_header_fcntl_h=yes
ac_cv_header_inttypes_h=yes
ac_cv_header_memory_h=yes
ac_cv_header_stdc=yes
ac_cv_header_stdint_h=yes
ac_cv_header_stdlib_h=yes
ac_cv_header_string_h=yes
ac_cv_header_strings_h=yes
ac_cv_header_sys_stat_h=yes
ac_cv_header_sys_types_h=yes
ac_cv_header_unistd_h=yes
ac_cv_header_zlib_h=yes
ac_cv_host=x86_64-unknown-linux-gnu
ac_cv_lib_z_gzsetparams=yes
ac_cv_objext=o
ac_cv_path_EGREP='/bin/grep -E'
ac_cv_path_FGREP='/bin/grep -F'
ac_cv_path_GREP=/bin/grep
ac_cv_path_SED=/bin/sed
ac_cv_path_install='/usr/bin/install -c'
ac_cv_prog_CPP='gcc -E'
ac_cv_prog_RMDIR=rmdir
ac_cv_prog_RMF='rm -f'
ac_cv_prog_ac_ct_AR=ar
ac_cv_prog_ac_ct_CC=gcc
ac_cv_prog_ac_ct_OBJDUMP=objdump
ac_cv_prog_ac_ct_RANLIB=ranlib
ac_cv_prog_ac_ct_STRIP=strip
ac_cv_prog_cc_c89=
ac_cv_prog_cc_g=yes
ac_cv_sizeof_int=4
ac_cv_sizeof_long=8
lt_cv_deplibs_check_method=pass_all
lt_cv_file_magic_cmd='$MAGIC_CMD'
lt_cv_file_magic_test_file=
lt_cv_ld_reload_flag=-r
lt_cv_nm_interface='BSD nm'
lt_cv_objdir=.libs
lt_cv_path_LD=/usr/bin/ld
lt_cv_path_NM='/usr/bin/nm -B'
lt_cv_prog_compiler_c_o=yes
lt_cv_prog_compiler_pic_works=yes
lt_cv_prog_compiler_rtti_exceptions=no
lt_cv_prog_compiler_static_works=yes
lt_cv_prog_gnu_ld=yes
lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\'''
lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\'''
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\'''
lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\'''
lt_cv_sys_max_cmd_len=3458764513820540925
## ----------------- ##
## Output variables. ##
## ----------------- ##
AR='ar'
AS='as'
CC='gcc'
CC_BUILD='gcc'
CFLAGS='-g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB'
CPP='gcc -E'
CPPFLAGS=''
DEFS='-DHAVE_CONFIG_H'
DLLTOOL='dlltool'
DSYMUTIL=''
DUMPBIN=''
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP='/bin/grep -E'
EXEEXT=''
EXEEXT_BUILD=''
FGREP='/bin/grep -F'
FT2_EXTRA_LIBS=''
FTSYS_SRC='$(BUILD_DIR)/ftsystem.c'
GREP='/bin/grep'
INSTALL_DATA='${INSTALL} -m 644'
INSTALL_PROGRAM='${INSTALL}'
INSTALL_SCRIPT='${INSTALL}'
LD='/usr/bin/ld -m elf_x86_64'
LDFLAGS=' -lz'
LIBOBJS=''
LIBS=''
LIBTOOL='$(SHELL) $(top_builddir)/libtool'
LIBZ='-lz'
LIPO=''
LN_S='ln -s'
LTLIBOBJS=''
NM='/usr/bin/nm -B'
NMEDIT=''
OBJDUMP='objdump'
OBJEXT='o'
OTOOL64=''
OTOOL=''
PACKAGE_BUGREPORT='freetype@nongnu.org'
PACKAGE_NAME='FreeType'
PACKAGE_STRING='FreeType 2.3.9'
PACKAGE_TARNAME='freetype'
PACKAGE_VERSION='2.3.9'
PATH_SEPARATOR=':'
RANLIB='ranlib'
RMDIR='rmdir'
RMF='rm -f'
SED='/bin/sed'
SHELL='/bin/bash'
STRIP='strip'
SYSTEM_ZLIB='yes'
XX_ANSIFLAGS='-pedantic -ansi'
XX_CFLAGS='-Wall'
ac_ct_CC='gcc'
ac_ct_DUMPBIN=''
bindir='${exec_prefix}/bin'
build='x86_64-unknown-linux-gnu'
build_alias=''
build_cpu='x86_64'
build_libtool_libs=''
build_os='linux-gnu'
build_vendor='unknown'
datadir='${datarootdir}'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
dvidir='${docdir}'
exec_prefix='${prefix}'
ft_version='9.20.3'
ftmac_c=''
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
host='x86_64-unknown-linux-gnu'
host_alias=''
host_cpu='x86_64'
host_os='linux-gnu'
host_vendor='unknown'
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
lt_ECHO='echo'
mandir='${datarootdir}/man'
oldincludedir='/usr/include'
pdfdir='${docdir}'
prefix='/usr/local'
program_transform_name='s,x,x,'
psdir='${docdir}'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target_alias=''
version_info='9:20:3'
wl='-Wl,'
## ----------- ##
## confdefs.h. ##
## ----------- ##
#define PACKAGE_NAME "FreeType"
#define PACKAGE_TARNAME "freetype"
#define PACKAGE_VERSION "2.3.9"
#define PACKAGE_STRING "FreeType 2.3.9"
#define PACKAGE_BUGREPORT "freetype@nongnu.org"
#define STDC_HEADERS 1
#define HAVE_SYS_TYPES_H 1
#define HAVE_SYS_STAT_H 1
#define HAVE_STDLIB_H 1
#define HAVE_STRING_H 1
#define HAVE_MEMORY_H 1
#define HAVE_STRINGS_H 1
#define HAVE_INTTYPES_H 1
#define HAVE_STDINT_H 1
#define HAVE_UNISTD_H 1
#define HAVE_FCNTL_H 1
#define HAVE_UNISTD_H 1
#define SIZEOF_INT 4
#define SIZEOF_LONG 8
#define HAVE_STDLIB_H 1
#define HAVE_UNISTD_H 1
#define HAVE_GETPAGESIZE 1
#define HAVE_MMAP 1
#define HAVE_DECL_MUNMAP 1
#define MUNMAP_USES_VOIDP /**/
#define HAVE_MEMCPY 1
#define HAVE_MEMMOVE 1
#define HAVE_DLFCN_H 1
#define LT_OBJDIR ".libs/"
configure: exit 0

File diff suppressed because it is too large Load diff

View file

@ -1,44 +1,40 @@
#! /bin/sh #! /bin/sh
# Configuration validation subroutine script. # Configuration validation subroutine script.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # Copyright 1992-2016 Free Software Foundation, Inc.
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
# Free Software Foundation, Inc.
timestamp='2009-02-03' timestamp='2016-08-25'
# This file is (in principle) common to ALL GNU software. # This file is free software; you can redistribute it and/or modify it
# The presence of a machine in this file suggests that SOME GNU software # under the terms of the GNU General Public License as published by
# can handle that machine. It does not imply ALL GNU software can. # the Free Software Foundation; either version 3 of the License, or
#
# This file 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. # (at your option) any later version.
# #
# This program is distributed in the hope that it will be useful, # This program is distributed in the hope that it will be useful, but
# but WITHOUT ANY WARRANTY; without even the implied warranty of # WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# GNU General Public License for more details. # General Public License for more details.
# #
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software # along with this program; if not, see <http://www.gnu.org/licenses/>.
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
# 02110-1301, USA.
# #
# As a special exception to the GNU General Public License, if you # As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a # distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under # configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program. # the same distribution terms that you use for the rest of that
# program. This Exception is an additional permission under section 7
# of the GNU General Public License, version 3 ("GPLv3").
# Please send patches to <config-patches@gnu.org>. Submit a context # Please send patches to <config-patches@gnu.org>.
# diff and a properly formatted ChangeLog entry.
# #
# Configuration subroutine to validate and canonicalize a configuration type. # Configuration subroutine to validate and canonicalize a configuration type.
# Supply the specified configuration type as an argument. # Supply the specified configuration type as an argument.
# If it is invalid, we print an error message on stderr and exit with code 1. # If it is invalid, we print an error message on stderr and exit with code 1.
# Otherwise, we print the canonical config type on stdout and succeed. # Otherwise, we print the canonical config type on stdout and succeed.
# You can get the latest version of this script from:
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
# This file is supposed to be the same for all GNU packages # This file is supposed to be the same for all GNU packages
# and recognize all the CPU types, system types and aliases # and recognize all the CPU types, system types and aliases
# that are meaningful with *any* GNU software. # that are meaningful with *any* GNU software.
@ -57,8 +53,7 @@ timestamp='2009-02-03'
me=`echo "$0" | sed -e 's,.*/,,'` me=`echo "$0" | sed -e 's,.*/,,'`
usage="\ usage="\
Usage: $0 [OPTION] CPU-MFR-OPSYS Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
$0 [OPTION] ALIAS
Canonicalize a configuration name. Canonicalize a configuration name.
@ -72,8 +67,7 @@ Report bugs and patches to <config-patches@gnu.org>."
version="\ version="\
GNU config.sub ($timestamp) GNU config.sub ($timestamp)
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, Copyright 1992-2016 Free Software Foundation, Inc.
2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@ -120,13 +114,18 @@ esac
# Here we must recognize all the valid KERNEL-OS combinations. # Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in case $maybe_os in
nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \
kopensolaris*-gnu* | \ kopensolaris*-gnu* | \
storm-chaos* | os2-emx* | rtmk-nova*) storm-chaos* | os2-emx* | rtmk-nova*)
os=-$maybe_os os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;; ;;
android-linux)
os=-linux-android
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
;;
*) *)
basic_machine=`echo $1 | sed 's/-[^-]*$//'` basic_machine=`echo $1 | sed 's/-[^-]*$//'`
if [ $basic_machine != $1 ] if [ $basic_machine != $1 ]
@ -149,10 +148,13 @@ case $os in
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-apple | -axis | -knuth | -cray) -apple | -axis | -knuth | -cray | -microblaze*)
os= os=
basic_machine=$1 basic_machine=$1
;; ;;
-bluegene*)
os=-cnk
;;
-sim | -cisco | -oki | -wec | -winbond) -sim | -cisco | -oki | -wec | -winbond)
os= os=
basic_machine=$1 basic_machine=$1
@ -215,6 +217,12 @@ case $os in
-isc*) -isc*)
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;; ;;
-lynx*178)
os=-lynxos178
;;
-lynx*5)
os=-lynxos5
;;
-lynx*) -lynx*)
os=-lynxos os=-lynxos
;; ;;
@ -239,20 +247,29 @@ case $basic_machine in
# Some are omitted here because they have special meanings below. # Some are omitted here because they have special meanings below.
1750a | 580 \ 1750a | 580 \
| a29k \ | a29k \
| aarch64 | aarch64_be \
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| am33_2.0 \ | am33_2.0 \
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ | arc | arceb \
| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
| avr | avr32 \
| ba \
| be32 | be64 \
| bfin \ | bfin \
| c4x | clipper \ | c4x | c8051 | clipper \
| d10v | d30v | dlx | dsp16xx \ | d10v | d30v | dlx | dsp16xx \
| fido | fr30 | frv \ | e2k | epiphany \
| fido | fr30 | frv | ft32 \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| hexagon \
| i370 | i860 | i960 | ia64 \ | i370 | i860 | i960 | ia64 \
| ip2k | iq2000 \ | ip2k | iq2000 \
| k1om \
| le32 | le64 \
| lm32 \ | lm32 \
| m32c | m32r | m32rle | m68000 | m68k | m88k \ | m32c | m32r | m32rle | m68000 | m68k | m88k \
| maxq | mb | microblaze | mcore | mep | metag \ | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
| mips | mipsbe | mipseb | mipsel | mipsle \ | mips | mipsbe | mipseb | mipsel | mipsle \
| mips16 \ | mips16 \
| mips64 | mips64el \ | mips64 | mips64el \
@ -266,35 +283,55 @@ case $basic_machine in
| mips64vr5900 | mips64vr5900el \ | mips64vr5900 | mips64vr5900el \
| mipsisa32 | mipsisa32el \ | mipsisa32 | mipsisa32el \
| mipsisa32r2 | mipsisa32r2el \ | mipsisa32r2 | mipsisa32r2el \
| mipsisa32r6 | mipsisa32r6el \
| mipsisa64 | mipsisa64el \ | mipsisa64 | mipsisa64el \
| mipsisa64r2 | mipsisa64r2el \ | mipsisa64r2 | mipsisa64r2el \
| mipsisa64r6 | mipsisa64r6el \
| mipsisa64sb1 | mipsisa64sb1el \ | mipsisa64sb1 | mipsisa64sb1el \
| mipsisa64sr71k | mipsisa64sr71kel \ | mipsisa64sr71k | mipsisa64sr71kel \
| mipsr5900 | mipsr5900el \
| mipstx39 | mipstx39el \ | mipstx39 | mipstx39el \
| mn10200 | mn10300 \ | mn10200 | mn10300 \
| moxie \
| mt \ | mt \
| msp430 \ | msp430 \
| nios | nios2 \ | nds32 | nds32le | nds32be \
| nios | nios2 | nios2eb | nios2el \
| ns16k | ns32k \ | ns16k | ns32k \
| or32 \ | open8 | or1k | or1knd | or32 \
| pdp10 | pdp11 | pj | pjl \ | pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ | powerpc | powerpc64 | powerpc64le | powerpcle \
| pyramid \ | pyramid \
| riscv32 | riscv64 \
| rl78 | rx \
| score \ | score \
| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
| sh64 | sh64le \ | sh64 | sh64le \
| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
| sparcv8 | sparcv9 | sparcv9b | sparcv9v \ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
| spu | strongarm \ | spu \
| tahoe | thumb | tic4x | tic80 | tron \ | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
| v850 | v850e \ | ubicom32 \
| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
| visium \
| we32k \ | we32k \
| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ | x86 | xc16x | xstormy16 | xtensa \
| z8k | z80) | z8k | z80)
basic_machine=$basic_machine-unknown basic_machine=$basic_machine-unknown
;; ;;
m6811 | m68hc11 | m6812 | m68hc12) c54x)
# Motorola 68HC11/12. basic_machine=tic54x-unknown
;;
c55x)
basic_machine=tic55x-unknown
;;
c6x)
basic_machine=tic6x-unknown
;;
leon|leon[3-9])
basic_machine=sparc-$basic_machine
;;
m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
basic_machine=$basic_machine-unknown basic_machine=$basic_machine-unknown
os=-none os=-none
;; ;;
@ -304,6 +341,21 @@ case $basic_machine in
basic_machine=mt-unknown basic_machine=mt-unknown
;; ;;
strongarm | thumb | xscale)
basic_machine=arm-unknown
;;
xgate)
basic_machine=$basic_machine-unknown
os=-none
;;
xscaleeb)
basic_machine=armeb-unknown
;;
xscaleel)
basic_machine=armel-unknown
;;
# We use `pc' rather than `unknown' # We use `pc' rather than `unknown'
# because (1) that's what they normally are, and # because (1) that's what they normally are, and
# (2) the word "unknown" tends to confuse beginning users. # (2) the word "unknown" tends to confuse beginning users.
@ -318,25 +370,32 @@ case $basic_machine in
# Recognize the basic CPU types with company name. # Recognize the basic CPU types with company name.
580-* \ 580-* \
| a29k-* \ | a29k-* \
| aarch64-* | aarch64_be-* \
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
| avr-* | avr32-* \ | avr-* | avr32-* \
| ba-* \
| be32-* | be64-* \
| bfin-* | bs2000-* \ | bfin-* | bs2000-* \
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* \
| clipper-* | craynv-* | cydra-* \ | c8051-* | clipper-* | craynv-* | cydra-* \
| d10v-* | d30v-* | dlx-* \ | d10v-* | d30v-* | dlx-* \
| elxsi-* \ | e2k-* | elxsi-* \
| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
| h8300-* | h8500-* \ | h8300-* | h8500-* \
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
| hexagon-* \
| i*86-* | i860-* | i960-* | ia64-* \ | i*86-* | i860-* | i960-* | ia64-* \
| ip2k-* | iq2000-* \ | ip2k-* | iq2000-* \
| k1om-* \
| le32-* | le64-* \
| lm32-* \ | lm32-* \
| m32c-* | m32r-* | m32rle-* \ | m32c-* | m32r-* | m32rle-* \
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
| microblaze-* | microblazeel-* \
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
| mips16-* \ | mips16-* \
| mips64-* | mips64el-* \ | mips64-* | mips64el-* \
@ -350,32 +409,43 @@ case $basic_machine in
| mips64vr5900-* | mips64vr5900el-* \ | mips64vr5900-* | mips64vr5900el-* \
| mipsisa32-* | mipsisa32el-* \ | mipsisa32-* | mipsisa32el-* \
| mipsisa32r2-* | mipsisa32r2el-* \ | mipsisa32r2-* | mipsisa32r2el-* \
| mipsisa32r6-* | mipsisa32r6el-* \
| mipsisa64-* | mipsisa64el-* \ | mipsisa64-* | mipsisa64el-* \
| mipsisa64r2-* | mipsisa64r2el-* \ | mipsisa64r2-* | mipsisa64r2el-* \
| mipsisa64r6-* | mipsisa64r6el-* \
| mipsisa64sb1-* | mipsisa64sb1el-* \ | mipsisa64sb1-* | mipsisa64sb1el-* \
| mipsisa64sr71k-* | mipsisa64sr71kel-* \ | mipsisa64sr71k-* | mipsisa64sr71kel-* \
| mipsr5900-* | mipsr5900el-* \
| mipstx39-* | mipstx39el-* \ | mipstx39-* | mipstx39el-* \
| mmix-* \ | mmix-* \
| mt-* \ | mt-* \
| msp430-* \ | msp430-* \
| nios-* | nios2-* \ | nds32-* | nds32le-* | nds32be-* \
| nios-* | nios2-* | nios2eb-* | nios2el-* \
| none-* | np1-* | ns16k-* | ns32k-* \ | none-* | np1-* | ns16k-* | ns32k-* \
| open8-* \
| or1k*-* \
| orion-* \ | orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
| pyramid-* \ | pyramid-* \
| romp-* | rs6000-* \ | riscv32-* | riscv64-* \
| rl78-* | romp-* | rs6000-* | rx-* \
| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
| sparclite-* \ | sparclite-* \
| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
| tahoe-* | thumb-* \ | tahoe-* \
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
| tile*-* \
| tron-* \ | tron-* \
| v850-* | v850e-* | vax-* \ | ubicom32-* \
| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
| vax-* \
| visium-* \
| we32k-* \ | we32k-* \
| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ | x86-* | x86_64-* | xc16x-* | xps100-* \
| xstormy16-* | xtensa*-* \ | xstormy16-* | xtensa*-* \
| ymp-* \ | ymp-* \
| z8k-* | z80-*) | z8k-* | z80-*)
@ -450,6 +520,9 @@ case $basic_machine in
basic_machine=i386-pc basic_machine=i386-pc
os=-aros os=-aros
;; ;;
asmjs)
basic_machine=asmjs-unknown
;;
aux) aux)
basic_machine=m68k-apple basic_machine=m68k-apple
os=-aux os=-aux
@ -466,6 +539,19 @@ case $basic_machine in
basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
os=-linux os=-linux
;; ;;
bluegene*)
basic_machine=powerpc-ibm
os=-cnk
;;
c54x-*)
basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
c55x-*)
basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
c6x-*)
basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
c90) c90)
basic_machine=c90-cray basic_machine=c90-cray
os=-unicos os=-unicos
@ -502,7 +588,7 @@ case $basic_machine in
basic_machine=craynv-cray basic_machine=craynv-cray
os=-unicosmp os=-unicosmp
;; ;;
cr16) cr16 | cr16-*)
basic_machine=cr16-unknown basic_machine=cr16-unknown
os=-elf os=-elf
;; ;;
@ -557,6 +643,14 @@ case $basic_machine in
basic_machine=m68k-bull basic_machine=m68k-bull
os=-sysv3 os=-sysv3
;; ;;
e500v[12])
basic_machine=powerpc-unknown
os=$os"spe"
;;
e500v[12]-*)
basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
os=$os"spe"
;;
ebmon29k) ebmon29k)
basic_machine=a29k-amd basic_machine=a29k-amd
os=-ebmon os=-ebmon
@ -660,7 +754,6 @@ case $basic_machine in
i370-ibm* | ibm*) i370-ibm* | ibm*)
basic_machine=i370-ibm basic_machine=i370-ibm
;; ;;
# I'm not sure what "Sysv32" means. Should this be sysv3.2?
i*86v32) i*86v32)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv32 os=-sysv32
@ -699,6 +792,9 @@ case $basic_machine in
basic_machine=m68k-isi basic_machine=m68k-isi
os=-sysv os=-sysv
;; ;;
leon-*|leon[3-9]-*)
basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
;;
m68knommu) m68knommu)
basic_machine=m68k-unknown basic_machine=m68k-unknown
os=-linux os=-linux
@ -718,8 +814,15 @@ case $basic_machine in
basic_machine=ns32k-utek basic_machine=ns32k-utek
os=-sysv os=-sysv
;; ;;
microblaze*)
basic_machine=microblaze-xilinx
;;
mingw64)
basic_machine=x86_64-pc
os=-mingw64
;;
mingw32) mingw32)
basic_machine=i386-pc basic_machine=i686-pc
os=-mingw32 os=-mingw32
;; ;;
mingw32ce) mingw32ce)
@ -747,6 +850,10 @@ case $basic_machine in
basic_machine=powerpc-unknown basic_machine=powerpc-unknown
os=-morphos os=-morphos
;; ;;
moxiebox)
basic_machine=moxie-unknown
os=-moxiebox
;;
msdos) msdos)
basic_machine=i386-pc basic_machine=i386-pc
os=-msdos os=-msdos
@ -754,10 +861,18 @@ case $basic_machine in
ms1-*) ms1-*)
basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
;; ;;
msys)
basic_machine=i686-pc
os=-msys
;;
mvs) mvs)
basic_machine=i370-ibm basic_machine=i370-ibm
os=-mvs os=-mvs
;; ;;
nacl)
basic_machine=le32-unknown
os=-nacl
;;
ncr3000) ncr3000)
basic_machine=i486-ncr basic_machine=i486-ncr
os=-sysv4 os=-sysv4
@ -822,6 +937,12 @@ case $basic_machine in
np1) np1)
basic_machine=np1-gould basic_machine=np1-gould
;; ;;
neo-tandem)
basic_machine=neo-tandem
;;
nse-tandem)
basic_machine=nse-tandem
;;
nsr-tandem) nsr-tandem)
basic_machine=nsr-tandem basic_machine=nsr-tandem
;; ;;
@ -904,11 +1025,12 @@ case $basic_machine in
;; ;;
power) basic_machine=power-ibm power) basic_machine=power-ibm
;; ;;
ppc) basic_machine=powerpc-unknown ppc | ppcbe) basic_machine=powerpc-unknown
;; ;;
ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` ppc-* | ppcbe-*)
basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
;; ;;
ppcle | powerpclittle | ppc-le | powerpc-little) ppcle | powerpclittle)
basic_machine=powerpcle-unknown basic_machine=powerpcle-unknown
;; ;;
ppcle-* | powerpclittle-*) ppcle-* | powerpclittle-*)
@ -918,7 +1040,7 @@ case $basic_machine in
;; ;;
ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
;; ;;
ppc64le | powerpc64little | ppc64-le | powerpc64-little) ppc64le | powerpc64little)
basic_machine=powerpc64le-unknown basic_machine=powerpc64le-unknown
;; ;;
ppc64le-* | powerpc64little-*) ppc64le-* | powerpc64little-*)
@ -931,7 +1053,11 @@ case $basic_machine in
basic_machine=i586-unknown basic_machine=i586-unknown
os=-pw32 os=-pw32
;; ;;
rdos) rdos | rdos64)
basic_machine=x86_64-pc
os=-rdos
;;
rdos32)
basic_machine=i386-pc basic_machine=i386-pc
os=-rdos os=-rdos
;; ;;
@ -1000,6 +1126,9 @@ case $basic_machine in
basic_machine=i860-stratus basic_machine=i860-stratus
os=-sysv4 os=-sysv4
;; ;;
strongarm-* | thumb-*)
basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
sun2) sun2)
basic_machine=m68000-sun basic_machine=m68000-sun
;; ;;
@ -1056,20 +1185,8 @@ case $basic_machine in
basic_machine=t90-cray basic_machine=t90-cray
os=-unicos os=-unicos
;; ;;
tic54x | c54x*)
basic_machine=tic54x-unknown
os=-coff
;;
tic55x | c55x*)
basic_machine=tic55x-unknown
os=-coff
;;
tic6x | c6x*)
basic_machine=tic6x-unknown
os=-coff
;;
tile*) tile*)
basic_machine=tile-unknown basic_machine=$basic_machine-unknown
os=-linux-gnu os=-linux-gnu
;; ;;
tx39) tx39)
@ -1139,6 +1256,9 @@ case $basic_machine in
xps | xps100) xps | xps100)
basic_machine=xps100-honeywell basic_machine=xps100-honeywell
;; ;;
xscale-* | xscalee[bl]-*)
basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
;;
ymp) ymp)
basic_machine=ymp-cray basic_machine=ymp-cray
os=-unicos os=-unicos
@ -1239,6 +1359,9 @@ case $os in
# First match some system type aliases # First match some system type aliases
# that might get confused with valid system types. # that might get confused with valid system types.
# -solaris* is a basic system type, with this one exception. # -solaris* is a basic system type, with this one exception.
-auroraux)
os=-auroraux
;;
-solaris1 | -solaris1.*) -solaris1 | -solaris1.*)
os=`echo $os | sed -e 's|solaris1|sunos4|'` os=`echo $os | sed -e 's|solaris1|sunos4|'`
;; ;;
@ -1259,30 +1382,32 @@ case $os in
# Each alternative MUST END IN A *, to match a version number. # Each alternative MUST END IN A *, to match a version number.
# -sysv* is not here because it comes later, after sysvr4. # -sysv* is not here because it comes later, after sysvr4.
-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
| -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
| -kopensolaris* \ | -sym* | -kopensolaris* | -plan9* \
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
| -aos* | -aros* \ | -aos* | -aros* | -cloudabi* | -sortix* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
| -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
| -openbsd* | -solidbsd* \ | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
| -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -chorusos* | -chorusrdb* | -cegcc* \ | -chorusos* | -chorusrdb* | -cegcc* \
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
| -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
| -uxpv* | -beos* | -mpeix* | -udk* \ | -linux-newlib* | -linux-musl* | -linux-uclibc* \
| -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
| -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
| -skyos* | -haiku* | -rdos* | -toppers* | -drops*) | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
| -onefs* | -tirtos* | -phoenix*)
# Remember, each alternative MUST END IN *, to match a version number. # Remember, each alternative MUST END IN *, to match a version number.
;; ;;
-qnx*) -qnx*)
@ -1406,15 +1531,16 @@ case $os in
-aros*) -aros*)
os=-aros os=-aros
;; ;;
-kaos*)
os=-kaos
;;
-zvmoe) -zvmoe)
os=-zvmoe os=-zvmoe
;; ;;
-dicos*) -dicos*)
os=-dicos os=-dicos
;; ;;
-nacl*)
;;
-ios)
;;
-none) -none)
;; ;;
*) *)
@ -1455,6 +1581,21 @@ case $basic_machine in
c4x-* | tic4x-*) c4x-* | tic4x-*)
os=-coff os=-coff
;; ;;
c8051-*)
os=-elf
;;
hexagon-*)
os=-elf
;;
tic54x-*)
os=-coff
;;
tic55x-*)
os=-coff
;;
tic6x-*)
os=-coff
;;
# This must come before the *-dec entry. # This must come before the *-dec entry.
pdp10-*) pdp10-*)
os=-tops20 os=-tops20
@ -1473,9 +1614,6 @@ case $basic_machine in
;; ;;
m68000-sun) m68000-sun)
os=-sunos3 os=-sunos3
# This also exists in the configure program, but was not the
# default.
# os=-sunos4
;; ;;
m68*-cisco) m68*-cisco)
os=-aout os=-aout
@ -1612,7 +1750,7 @@ case $basic_machine in
-sunos*) -sunos*)
vendor=sun vendor=sun
;; ;;
-aix*) -cnk*|-aix*)
vendor=ibm vendor=ibm
;; ;;
-beos*) -beos*)

File diff suppressed because it is too large Load diff

View file

@ -2,7 +2,7 @@
# #
# Process this file with autoconf to produce a configure script. # Process this file with autoconf to produce a configure script.
# #
# Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 by # Copyright 2001-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -11,13 +11,13 @@
# indicate that you have read the license and understand and accept it # indicate that you have read the license and understand and accept it
# fully. # fully.
AC_INIT([FreeType], [2.3.9], [freetype@nongnu.org], [freetype]) AC_INIT([FreeType], [2.7], [freetype@nongnu.org], [freetype])
AC_CONFIG_SRCDIR([ftconfig.in]) AC_CONFIG_SRCDIR([ftconfig.in])
# Don't forget to update docs/VERSION.DLL! # Don't forget to update `docs/VERSIONS.TXT'!
version_info='9:20:3' version_info='18:6:12'
AC_SUBST([version_info]) AC_SUBST([version_info])
ft_version=`echo $version_info | tr : .` ft_version=`echo $version_info | tr : .`
AC_SUBST([ft_version]) AC_SUBST([ft_version])
@ -34,6 +34,10 @@ AC_PROG_CC
AC_PROG_CPP AC_PROG_CPP
AC_SUBST(EXEEXT) AC_SUBST(EXEEXT)
PKG_PROG_PKG_CONFIG([0.24])
LT_INIT(win32-dll)
# checks for native programs to generate building tool # checks for native programs to generate building tool
@ -52,62 +56,41 @@ if test ${cross_compiling} = yes; then
EXEEXT_BUILD="" EXEEXT_BUILD=""
elif test -x a_out.exe -o -x conftest.exe; then elif test -x a_out.exe -o -x conftest.exe; then
EXEEXT_BUILD=".exe" EXEEXT_BUILD=".exe"
elif test -x conftest.* ; then elif test -x conftest.*; then
EXEEXT_BUILD=`echo conftest.* | sed -n '1s/^.*\.//g'` EXEEXT_BUILD=`echo conftest.* | sed -n '1s/^.*\././'`
fi fi
rm -f a.* b.* a_out.exe conftest.*
AC_MSG_RESULT($EXEEXT_BUILD) AC_MSG_RESULT($EXEEXT_BUILD)
else else
CC_BUILD=${CC} CC_BUILD=${CC}
EXEEXT_BUILD=${EXEEXT} EXEEXT_BUILD=${EXEEXT}
fi fi
if test ! -z ${EXEEXT_BUILD}; then
EXEEXT_BUILD=."${EXEEXT_BUILD}"
fi
AC_SUBST(CC_BUILD) AC_SUBST(CC_BUILD)
AC_SUBST(EXEEXT_BUILD) AC_SUBST(EXEEXT_BUILD)
# Since these files will be eventually called from another directory (namely
# get compiler flags right # from the top level) we make the path of the scripts absolute.
#
if test "x$CC" = xgcc; then # This small code snippet has been taken from automake's `ylwrap' script.
XX_CFLAGS="-Wall"
XX_ANSIFLAGS="-pedantic -ansi"
else
case "$host" in
*-dec-osf*)
CFLAGS=
XX_CFLAGS="-std1 -g3"
XX_ANSIFLAGS=
;;
*)
XX_CFLAGS=
XX_ANSIFLAGS=
;;
esac
fi
AC_SUBST([XX_CFLAGS])
AC_SUBST([XX_ANSIFLAGS])
# auxiliary programs
AC_CHECK_PROG([RMF], [rm], [rm -f])
AC_CHECK_PROG([RMDIR], [rmdir], [rmdir])
# Since this file will be finally moved to another directory we make
# the path of the install script absolute. This small code snippet has
# been taken from automake's `ylwrap' script.
AC_PROG_INSTALL AC_PROG_INSTALL
case "$INSTALL" in case "$INSTALL" in
/*) [[\\/]]* | ?:[[\\/]]*)
;;
*[[\\/]]*)
INSTALL="`pwd`/$INSTALL"
;;
esac
AC_PROG_MKDIR_P
case "$MKDIR_P" in
[[\\/]]* | ?:[[\\/]]*)
;;
*[[\\/]]*)
MKDIR_P="`pwd`/$MKDIR_P"
;; ;;
*/*)
INSTALL="`pwd`/$INSTALL" ;;
esac esac
@ -126,11 +109,17 @@ AC_CHECK_SIZEOF([long])
# check whether cpp computation of size of int and long in ftconfig.in works # check whether cpp computation of size of int and long in ftconfig.in works
AC_MSG_CHECKING([cpp computation of bit length in ftconfig.in works]) AC_MSG_CHECKING([whether cpp computation of bit length in ftconfig.in works])
orig_CPPFLAGS="${CPPFLAGS}" orig_CPPFLAGS="${CPPFLAGS}"
CPPFLAGS="-I${srcdir} -I. ${CPPFLAGS}" CPPFLAGS="-I${srcdir} -I. ${CPPFLAGS}"
ac_clean_files="ft2build.h ftoption.h ftstdlib.h"
touch ft2build.h ftoption.h ftstdlib.h ac_clean_files=
for f in ft2build.h ftoption.h ftstdlib.h; do
if test ! -f $f; then
ac_clean_files="$ac_clean_files $f"
touch $f
fi
done
cat > conftest.c <<\_ACEOF cat > conftest.c <<\_ACEOF
#include <limits.h> #include <limits.h>
@ -149,7 +138,7 @@ echo >> conftest.c "#endif"
${CPP} ${CPPFLAGS} conftest.c | ${GREP} ac_cpp_ft > conftest.sh ${CPP} ${CPPFLAGS} conftest.c | ${GREP} ac_cpp_ft > conftest.sh
eval `cat conftest.sh` eval `cat conftest.sh`
${RMF} conftest.c conftest.sh confft2build.h ftoption.h ftstdlib.h rm -f conftest.* $ac_clean_files
if test x != "x${ac_cpp_ft_sizeof_int}" \ if test x != "x${ac_cpp_ft_sizeof_int}" \
-a x != x"${ac_cpp_ft_sizeof_long}"; then -a x != x"${ac_cpp_ft_sizeof_long}"; then
@ -182,7 +171,8 @@ case :${ft_use_autoconf_sizeof_types}:${enable_biarch_config}: in
esac esac
if test x"${ft_use_autoconf_sizeof_types}" = xyes; then if test x"${ft_use_autoconf_sizeof_types}" = xyes; then
AC_DEFINE([FT_USE_AUTOCONF_SIZEOF_TYPES]) AC_DEFINE([FT_USE_AUTOCONF_SIZEOF_TYPES], [],
[Define if autoconf sizeof types should be used.])
fi fi
CPPFLAGS="${orig_CPPFLAGS}" CPPFLAGS="${orig_CPPFLAGS}"
@ -190,10 +180,19 @@ CPPFLAGS="${orig_CPPFLAGS}"
# checks for library functions # checks for library functions
AC_SYS_LARGEFILE
# Here we check whether we can use our mmap file component. # Here we check whether we can use our mmap file component.
AC_FUNC_MMAP AC_ARG_ENABLE([mmap],
if test "$ac_cv_func_mmap_fixed_mapped" != yes; then AS_HELP_STRING([--disable-mmap],
[do not check mmap() and do not use]),
[enable_mmap="no"],[enable_mmap="yes"])
if test "x${enable_mmap}" != "xno"; then
AC_FUNC_MMAP
fi
if test "x${enable_mmap}" = "xno" \
-o "$ac_cv_func_mmap_fixed_mapped" != "yes"; then
FTSYS_SRC='$(BASE_DIR)/ftsystem.c' FTSYS_SRC='$(BASE_DIR)/ftsystem.c'
else else
FTSYS_SRC='$(BUILD_DIR)/ftsystem.c' FTSYS_SRC='$(BUILD_DIR)/ftsystem.c'
@ -217,61 +216,356 @@ AC_SUBST([FTSYS_SRC])
AC_CHECK_FUNCS([memcpy memmove]) AC_CHECK_FUNCS([memcpy memmove])
# check for system zlib # get compiler flags right
#
# don't quote AS_HELP_STRING! # We try to make the compiler work for C89-strict source. Even if the
AC_ARG_WITH([zlib], # C compiler is gcc and C89 flags are available, some system headers
AS_HELP_STRING([--without-zlib], # (e.g., Android Bionic libc) are broken in C89 mode. We have to check
[use internal zlib instead of system-wide])) # whether the compilation finishes successfully.
if test x$with_zlib != xno && test -z "$LIBZ"; then #
AC_CHECK_LIB([z], [gzsetparams], [AC_CHECK_HEADER([zlib.h], [LIBZ='-lz'])]) # Due to bugs in mingwrt 4.0.3 we don't use `-ansi' for MinGW.
fi #
if test x$with_zlib != xno && test -n "$LIBZ"; then # To avoid zillions of
CFLAGS="$CFLAGS -DFT_CONFIG_OPTION_SYSTEM_ZLIB" #
LDFLAGS="$LDFLAGS $LIBZ" # ISO C90 does not support 'long long'
SYSTEM_ZLIB=yes #
fi # warnings, we disable `-pedantic' for gcc version < 4.6.
#
if test "x$GCC" = xyes; then
# check Apple's `-isysroot' option and duplicate it to LDFLAGS if required -- XX_CFLAGS="-Wall"
# Apple TechNote 2137 recommends to include it in CFLAGS but not in LDFLAGS case "$host" in
*-*-mingw*)
AC_MSG_CHECKING([whether CFLAGS includes -isysroot option]) XX_ANSIFLAGS="-pedantic"
case "$CFLAGS" in ;;
*sysroot* ) *-*-aix*)
AC_MSG_RESULT([yes]) XX_ANSIFLAGS="-pedantic"
AC_MSG_CHECKING([whether LDFLAGS includes -isysroot option])
case "$LDFLAGS" in
*sysroot* )
AC_MSG_RESULT([yes])
;; ;;
*) *)
AC_MSG_RESULT([no]) GCC_VERSION=`$CC -dumpversion`
isysroot_dir=`echo ${CFLAGS} | tr '\t' ' ' | sed 's/^.*-isysroot *//;s/ .*//'` GCC_MAJOR=`echo "$GCC_VERSION" | sed 's/\([[^.]][[^.]]*\).*/\1/'`
AC_MSG_WARN(-isysroot ${isysroot_dir} is added to LDFLAGS) GCC_MINOR=`echo "$GCC_VERSION" | sed 's/[[^.]][[^.]]*.\([[^.]][[^.]]*\).*/\1/'`
LDFLAGS="-isysroot ${isysroot_dir} ${LDFLAGS}"
XX_PEDANTIC=-pedantic
if test $GCC_MAJOR -lt 4; then
XX_PEDANTIC=
else
if test $GCC_MAJOR -eq 4 -a $GCC_MINOR -lt 6; then
XX_PEDANTIC=
fi
fi
XX_ANSIFLAGS=""
for a in $XX_PEDANTIC -ansi
do
AC_MSG_CHECKING([gcc compiler flag ${a} to assure ANSI C works correctly])
orig_CFLAGS="${CFLAGS}"
CFLAGS="${CFLAGS} ${XX_ANSIFLAGS} ${a}"
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([
#include <stdio.h>
],
[
{
puts( "" );
return 0;
}
])],
[AC_MSG_RESULT([ok, add it to XX_ANSIFLAGS])
XX_ANSIFLAGS="${XX_ANSIFLAGS} ${a}"
],
[AC_MSG_RESULT([no])])
CFLAGS="${orig_CFLAGS}"
done
;; ;;
esac esac
else
case "$host" in
*-dec-osf*)
CFLAGS=
XX_CFLAGS="-std1 -g3"
XX_ANSIFLAGS=
;; ;;
*) *)
XX_CFLAGS=
XX_ANSIFLAGS=
;;
esac
fi
AC_SUBST([XX_CFLAGS])
AC_SUBST([XX_ANSIFLAGS])
# All library tests below try `pkg-config' first. If that fails, a function
# from the library is tested in the traditional autoconf way (zlib, bzip2),
# or a config script is called (libpng).
#
# The `xxx_reqpriv' variables are for the `Requires.private' field in
# `freetype2.pc'. The `xxx_libspriv' variables are for the `Libs.private'
# field in `freetype2.pc' if pkg-config doesn't find a proper .pc file.
#
# The `xxx_libsstaticconf' variables are for the `freetype-config' script.
#
# Note that a call to PKG_CHECK_MODULES(XXX, ...) sets and creates the
# output variables `XXX_CFLAGS' and `XXX_LIBS'. In case one or both are set
# for a library by the user, no entry for this library is added to
# `Requires.private'. Instead, it gets added to `Libs.private'
# check for system zlib
AC_ARG_WITH([zlib],
[AS_HELP_STRING([--with-zlib=@<:@yes|no|auto@:>@],
[use system zlib instead of internal library @<:@default=auto@:>@])],
[], [with_zlib=auto])
have_zlib=no
if test x"$with_zlib" = xyes -o x"$with_zlib" = xauto; then
zlib_pkg="zlib"
have_zlib_pkg=no
if test x"$ZLIB_CFLAGS" = x -a x"$ZLIB_LIBS" = x; then
PKG_CHECK_EXISTS([$zlib_pkg], [have_zlib_pkg=yes])
fi
PKG_CHECK_MODULES([ZLIB], [$zlib_pkg],
[have_zlib="yes (pkg-config)"], [:])
if test $have_zlib_pkg = yes; then
# we have zlib.pc
zlib_reqpriv="$zlib_pkg"
zlib_libspriv=
zlib_libsstaticconf=`$PKG_CONFIG --static --libs "$zlib_pkg"`
else
zlib_reqpriv=
if test "$have_zlib" != no; then
# ZLIB_CFLAGS and ZLIB_LIBS are set by the user
zlib_libspriv="$ZLIB_LIBS"
zlib_libsstaticconf="$ZLIB_LIBS"
have_zlib="yes (ZLIB_CFLAGS and ZLIB_LIBS)"
else
# fall back to standard autoconf test
AC_CHECK_LIB([z],
[gzsetparams],
[AC_CHECK_HEADER([zlib.h],
[have_zlib="yes (autoconf test)"
zlib_libspriv="-lz"
zlib_libsstaticconf="$zlib_libspriv"
ZLIB_LIBS="$zlib_libspriv"])])
fi
fi
fi
if test x"$with_zlib" = xyes -a "$have_zlib" = no; then
AC_MSG_ERROR([external zlib support requested but library not found])
fi
# check for system libbz2
AC_ARG_WITH([bzip2],
[AS_HELP_STRING([--with-bzip2=@<:@yes|no|auto@:>@],
[support bzip2 compressed fonts @<:@default=auto@:>@])],
[], [with_bzip2=auto])
have_bzip2=no
if test x"$with_bzip2" = xyes -o x"$with_bzip2" = xauto; then
bzip2_pkg="bzip2"
have_bzip2_pkg=no
if test x"$BZIP2_CFLAGS" = x -a x"$BZIP2_LIBS" = x; then
PKG_CHECK_EXISTS([$bzip2_pkg], [have_bzip2_pkg=yes])
fi
PKG_CHECK_MODULES([BZIP2], [$bzip2_pkg],
[have_bzip2="yes (pkg-config)"], [:])
if test $have_bzip2_pkg = yes; then
# we have bzip2.pc
bzip2_reqpriv="$bzip2_pkg"
bzip2_libspriv=
bzip2_libsstaticconf=`$PKG_CONFIG --static --libs "$bzip2_pkg"`
else
bzip2_reqpriv=
if test "$have_bzip2" != no; then
# BZIP2_CFLAGS and BZIP2_LIBS are set by the user
bzip2_libspriv="$BZIP2_LIBS"
bzip2_libsstaticconf="$BZIP2_LIBS"
have_bzip2="yes (BZIP2_CFLAGS and BZIP2_LIBS)"
else
# fall back to standard autoconf test
AC_CHECK_LIB([bz2],
[BZ2_bzDecompress],
[AC_CHECK_HEADER([bzlib.h],
[have_bzip2="yes (autoconf test)"
bzip2_libspriv="-lbz2"
bzip2_libsstaticconf="$bzip2_libspriv"
BZIP2_LIBS="$bzip2_libspriv"])])
fi
fi
fi
if test x"$with_bzip2" = xyes -a "$have_bzip2" = no; then
AC_MSG_ERROR([bzip2 support requested but library not found])
fi
# check for system libpng
AC_ARG_WITH([png],
[AS_HELP_STRING([--with-png=@<:@yes|no|auto@:>@],
[support png compressed OpenType embedded bitmaps @<:@default=auto@:>@])],
[], [with_png=auto])
have_libpng=no
if test x"$with_png" = xyes -o x"$with_png" = xauto; then
libpng_pkg="libpng"
have_libpng_pkg=no
if test x"$LIBPNG_CFLAGS" = x -a x"$LIBPNG_LIBS" = x; then
PKG_CHECK_EXISTS([$libpng_pkg], [have_libpng_pkg=yes])
fi
PKG_CHECK_MODULES([LIBPNG], [$libpng_pkg],
[have_libpng="yes (pkg-config)"], [:])
if test $have_libpng_pkg = yes; then
# we have libpng.pc
libpng_reqpriv="$libpng_pkg"
libpng_libspriv=
libpng_libsstaticconf=`$PKG_CONFIG --static --libs "$libpng_pkg"`
else
libpng_reqpriv=
if test "$have_libpng" != no; then
# LIBPNG_CFLAGS and LIBPNG_LIBS are set by the user
libpng_libspriv="$LIBPNG_LIBS"
libpng_libsstaticconf="$LIBPNG_LIBS"
have_libpng="yes (LIBPNG_CFLAGS and LIBPNG_LIBS)"
else
# fall back to config script.
AC_MSG_CHECKING([for libpng-config])
if which libpng-config > /dev/null 2>&1; then
LIBPNG_CFLAGS=`libpng-config --cflags`
LIBPNG_LIBS=`libpng-config --ldflags`
libpng_libspriv=`libpng-config --static --ldflags`
libpng_libsstaticconf="$libpng_libspriv"
have_libpng="yes (libpng-config)"
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no]) AC_MSG_RESULT([no])
fi
fi
fi
fi
if test x"$with_png" = xyes -a "$have_libpng" = no; then
AC_MSG_ERROR([libpng support requested but library not found])
fi
# check for system libharfbuzz
AC_ARG_WITH([harfbuzz],
[AS_HELP_STRING([--with-harfbuzz=@<:@yes|no|auto@:>@],
[improve auto-hinting of OpenType fonts @<:@default=auto@:>@])],
[], [with_harfbuzz=auto])
have_harfbuzz=no
if test x"$with_harfbuzz" = xyes -o x"$with_harfbuzz" = xauto; then
harfbuzz_pkg="harfbuzz >= 0.9.21"
have_harfbuzz_pkg=no
if test x"$HARFBUZZ_CFLAGS" = x -a x"$HARFBUZZ_LIBS" = x; then
PKG_CHECK_EXISTS([$harfbuzz_pkg], [have_harfbuzz_pkg=yes])
fi
PKG_CHECK_MODULES([HARFBUZZ], [$harfbuzz_pkg],
[have_harfbuzz="yes (pkg-config)"], [:])
if test $have_harfbuzz_pkg = yes; then
# we have harfbuzz.pc
harfbuzz_reqpriv="$harfbuzz_pkg"
harfbuzz_libspriv=
harfbuzz_libsstaticconf=`$PKG_CONFIG --static --libs "$harfbuzz_pkg"`
else
harfbuzz_reqpriv=
if test "$have_harfbuzz" != no; then
# HARFBUZZ_CFLAGS and HARFBUZZ_LIBS are set by the user
harfbuzz_libspriv="$HARFBUZZ_LIBS"
harfbuzz_libsstaticconf="$HARFBUZZ_LIBS"
have_harfbuzz="yes (HARFBUZZ_CFLAGS and HARFBUZZ_LIBS)"
else
# since HarfBuzz is quite a new library we don't fall back to a
# different test; additionally, it has too many dependencies
:
fi
fi
fi
if test x"$with_harfbuzz" = xyes -a "$have_harfbuzz" = no; then
AC_MSG_ERROR([harfbuzz support requested but library not found])
fi
# Some options handling SDKs/archs in CFLAGS should be copied
# to LDFLAGS. Apple TechNote 2137 recommends to include these
# options in CFLAGS but not in LDFLAGS.
save_config_args=$*
set dummy ${CFLAGS}
i=1
while test $i -le $#
do
c=$1
case "${c}" in
-isysroot|-arch) # options taking 1 argument
a=$2
AC_MSG_CHECKING([whether CFLAGS and LDFLAGS share ${c} ${a}])
if expr " ${LDFLAGS} " : ".* ${c} *${a}.*" > /dev/null
then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, copy to LDFLAGS])
LDFLAGS="${LDFLAGS} ${c} ${a}"
fi
shift 1
;; ;;
esac -m32|-m64|-march=*|-mcpu=*) # options taking no argument
AC_MSG_CHECKING([whether CFLAGS and LDFLAGS share ${c}])
if expr " ${LDFLAGS} " : ".* ${c} *${a}.*" > /dev/null
then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, copy to LDFLAGS])
LDFLAGS="${LDFLAGS} ${c}"
fi
;;
# *)
# AC_MSG_RESULT([${c} is not copied to LDFLAGS])
# ;;
esac
shift 1
done
set ${save_config_args}
# Whether to use Mac OS resource-based fonts. # Whether to use Mac OS resource-based fonts.
ftmac_c="" # src/base/ftmac.c should not be included in makefiles by default ftmac_c="" # src/base/ftmac.c should not be included in makefiles by default
# don't quote AS_HELP_STRING!
AC_ARG_WITH([old-mac-fonts], AC_ARG_WITH([old-mac-fonts],
AS_HELP_STRING([--with-old-mac-fonts], AS_HELP_STRING([--with-old-mac-fonts],
[allow Mac resource-based fonts to be used])) [allow Mac resource-based fonts to be used]))
if test x$with_old_mac_fonts = xyes; then if test x$with_old_mac_fonts = xyes; then
orig_LDFLAGS="${LDFLAGS}" orig_LDFLAGS="${LDFLAGS}"
AC_MSG_CHECKING([CoreServices & ApplicationServices of Mac OS X]) AC_MSG_CHECKING([CoreServices & ApplicationServices of Mac OS X])
FT2_EXTRA_LIBS="-Wl,-framework,CoreServices -Wl,-framework,ApplicationServices" ft2_extra_libs="-Wl,-framework,CoreServices -Wl,-framework,ApplicationServices"
LDFLAGS="$LDFLAGS $FT2_EXTRA_LIBS" LDFLAGS="$LDFLAGS $ft2_extra_libs"
AC_LINK_IFELSE([ AC_LINK_IFELSE([
AC_LANG_PROGRAM([ AC_LANG_PROGRAM([
@ -294,8 +588,8 @@ if test x$with_old_mac_fonts = xyes; then
])], ])],
[AC_MSG_RESULT([ok]) [AC_MSG_RESULT([ok])
ftmac_c='ftmac.c' ftmac_c='ftmac.c'
AC_MSG_CHECKING([OS_INLINE macro is ANSI compatible]) AC_MSG_CHECKING([whether OS_INLINE macro is ANSI compatible])
orig_CFLAGS="$CFLAGS" orig_CFLAGS="$CFLAGS -DFT_MACINTOSH"
CFLAGS="$CFLAGS $XX_CFLAGS $XX_ANSIFLAGS" CFLAGS="$CFLAGS $XX_CFLAGS $XX_ANSIFLAGS"
AC_COMPILE_IFELSE([ AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([ AC_LANG_PROGRAM([
@ -357,7 +651,7 @@ if test x$with_old_mac_fonts = xyes; then
CFLAGS="$CFLAGS -DHAVE_TYPE_RESOURCE_INDEX=0" CFLAGS="$CFLAGS -DHAVE_TYPE_RESOURCE_INDEX=0"
])], ])],
[AC_MSG_RESULT([not found]) [AC_MSG_RESULT([not found])
FT2_EXTRA_LIBS="" ft2_extra_libs=""
LDFLAGS="${orig_LDFLAGS}" LDFLAGS="${orig_LDFLAGS}"
CFLAGS="$CFLAGS -DDARWIN_NO_CARBON"]) CFLAGS="$CFLAGS -DDARWIN_NO_CARBON"])
else else
@ -366,12 +660,13 @@ else
dnl AC_MSG_WARN([host system is MacOS but configured to build without Carbon]) dnl AC_MSG_WARN([host system is MacOS but configured to build without Carbon])
CFLAGS="$CFLAGS -DDARWIN_NO_CARBON" CFLAGS="$CFLAGS -DDARWIN_NO_CARBON"
;; ;;
*) ;; *)
;;
esac esac
fi fi
# Whether to use FileManager which is deprecated since Mac OS X 10.4. # Whether to use FileManager, which is deprecated since Mac OS X 10.4.
AC_ARG_WITH([fsspec], AC_ARG_WITH([fsspec],
AS_HELP_STRING([--with-fsspec], AS_HELP_STRING([--with-fsspec],
@ -480,7 +775,7 @@ elif test x$with_old_mac_fonts = xyes -a x$with_fsref != x; then
fi fi
# Whether to use QuickDraw API in ToolBox which is deprecated since # Whether to use QuickDraw API in ToolBox, which is deprecated since
# Mac OS X 10.4. # Mac OS X 10.4.
AC_ARG_WITH([quickdraw-toolbox], AC_ARG_WITH([quickdraw-toolbox],
@ -522,7 +817,7 @@ elif test x$with_old_mac_fonts = xyes -a x$with_quickdraw_toolbox != x; then
fi fi
# Whether to use QuickDraw API in Carbon which is deprecated since # Whether to use QuickDraw API in Carbon, which is deprecated since
# Mac OS X 10.4. # Mac OS X 10.4.
AC_ARG_WITH([quickdraw-carbon], AC_ARG_WITH([quickdraw-carbon],
@ -576,13 +871,12 @@ fi
# Whether to use AppleTypeService since Mac OS X. # Whether to use AppleTypeService since Mac OS X.
# don't quote AS_HELP_STRING!
AC_ARG_WITH([ats], AC_ARG_WITH([ats],
AS_HELP_STRING([--with-ats], AS_HELP_STRING([--with-ats],
[use AppleTypeService, if available (default=yes)])) [use AppleTypeService, if available (default=yes)]))
if test x$with_ats = xno; then if test x$with_ats = xno; then
CFLAGS="$CFLAGS -DHAVE_ATS=0" CFLAGS="$CFLAGS -DHAVE_ATS=0"
elif test x$with_old_mac_fonts = xyes -a x$with_ats != x ; then elif test x$with_old_mac_fonts = xyes -a x$with_ats != x; then
AC_MSG_CHECKING([AppleTypeService functions]) AC_MSG_CHECKING([AppleTypeService functions])
AC_LINK_IFELSE([ AC_LINK_IFELSE([
AC_LANG_PROGRAM([ AC_LANG_PROGRAM([
@ -627,21 +921,82 @@ case "$CFLAGS" in
esac esac
# entries in Requires.private are separated by commas;
REQUIRES_PRIVATE="$zlib_reqpriv, \
$bzip2_reqpriv, \
$libpng_reqpriv, \
$harfbuzz_reqpriv"
# beautify
REQUIRES_PRIVATE=`echo "$REQUIRES_PRIVATE" \
| sed -e 's/^ *//' \
-e 's/ *$//' \
-e 's/, */,/g' \
-e 's/,,*/,/g' \
-e 's/^,*//' \
-e 's/,*$//' \
-e 's/,/, /g'`
LIBS_PRIVATE="$zlib_libspriv \
$bzip2_libspriv \
$libpng_libspriv \
$harfbuzz_libspriv \
$ft2_extra_libs"
# beautify
LIBS_PRIVATE=`echo "$LIBS_PRIVATE" \
| sed -e 's/^ *//' \
-e 's/ *$//' \
-e 's/ */ /g'`
LIBSSTATIC_CONFIG="-lfreetype \
$zlib_libsstaticconf \
$bzip2_libsstaticconf \
$libpng_libsstaticconf \
$harfbuzz_libsstaticconf \
$ft2_extra_libs"
# remove -L/usr/lib and -L/usr/lib64 since `freetype-config' adds them later
# on if necessary; also beautify
LIBSSTATIC_CONFIG=`echo "$LIBSSTATIC_CONFIG" \
| sed -e 's|-L */usr/lib64/* | |g' \
-e 's|-L */usr/lib/* | |g' \
-e 's/^ *//' \
-e 's/ *$//' \
-e 's/ */ /g'`
AC_SUBST([ftmac_c]) AC_SUBST([ftmac_c])
AC_SUBST([LIBZ]) AC_SUBST([REQUIRES_PRIVATE])
AC_SUBST([CFLAGS]) AC_SUBST([LIBS_PRIVATE])
AC_SUBST([LDFLAGS]) AC_SUBST([LIBSSTATIC_CONFIG])
AC_SUBST([FT2_EXTRA_LIBS])
AC_SUBST([SYSTEM_ZLIB])
LT_INIT(win32-dll)
AC_SUBST([hardcode_libdir_flag_spec]) AC_SUBST([hardcode_libdir_flag_spec])
AC_SUBST([wl]) AC_SUBST([wl])
AC_SUBST([build_libtool_libs]) AC_SUBST([build_libtool_libs])
# changing LDFLAGS value should only be done after
# lt_cv_prog_compiler_static_works test
if test "$have_zlib" != no; then
CFLAGS="$CFLAGS $ZLIB_CFLAGS -DFT_CONFIG_OPTION_SYSTEM_ZLIB"
LDFLAGS="$LDFLAGS $ZLIB_LIBS"
fi
if test "$have_bzip2" != no; then
CFLAGS="$CFLAGS $BZIP2_CFLAGS -DFT_CONFIG_OPTION_USE_BZIP2"
LDFLAGS="$LDFLAGS $BZIP2_LIBS"
fi
if test "$have_libpng" != no; then
CFLAGS="$CFLAGS $LIBPNG_CFLAGS -DFT_CONFIG_OPTION_USE_PNG"
LDFLAGS="$LDFLAGS $LIBPNG_LIBS"
fi
if test "$have_harfbuzz" != no; then
CFLAGS="$CFLAGS $HARFBUZZ_CFLAGS -DFT_CONFIG_OPTION_USE_HARFBUZZ"
LDFLAGS="$LDFLAGS $HARFBUZZ_LIBS"
fi
AC_SUBST([CFLAGS])
AC_SUBST([LDFLAGS])
# configuration file -- stay in 8.3 limit # configuration file -- stay in 8.3 limit
# #
# since #undef doesn't survive in configuration header files we replace # since #undef doesn't survive in configuration header files we replace
@ -656,9 +1011,7 @@ AC_CONFIG_HEADERS([ftconfig.h:ftconfig.in],
# and `builds/unix/unix-cc.mk' that will be used by the build system # and `builds/unix/unix-cc.mk' that will be used by the build system
# #
AC_CONFIG_FILES([unix-cc.mk:unix-cc.in AC_CONFIG_FILES([unix-cc.mk:unix-cc.in
unix-def.mk:unix-def.in unix-def.mk:unix-def.in])
freetype-config
freetype2.pc:freetype2.in])
# re-generate the Jamfile to use libtool now # re-generate the Jamfile to use libtool now
# #
@ -666,4 +1019,13 @@ AC_CONFIG_FILES([unix-cc.mk:unix-cc.in
AC_OUTPUT AC_OUTPUT
AC_MSG_NOTICE([
Library configuration:
external zlib: $have_zlib
bzip2: $have_bzip2
libpng: $have_libpng
harfbuzz: $have_harfbuzz
])
# end of configure.raw # end of configure.raw

View file

@ -2,7 +2,7 @@
# #
# Process this file with autoconf to produce a configure script. # Process this file with autoconf to produce a configure script.
# #
# Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 by # Copyright 2001-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -15,9 +15,9 @@ AC_INIT([FreeType], [@VERSION@], [freetype@nongnu.org], [freetype])
AC_CONFIG_SRCDIR([ftconfig.in]) AC_CONFIG_SRCDIR([ftconfig.in])
# Don't forget to update docs/VERSION.DLL! # Don't forget to update `docs/VERSIONS.TXT'!
version_info='9:20:3' version_info='18:6:12'
AC_SUBST([version_info]) AC_SUBST([version_info])
ft_version=`echo $version_info | tr : .` ft_version=`echo $version_info | tr : .`
AC_SUBST([ft_version]) AC_SUBST([ft_version])
@ -34,6 +34,10 @@ AC_PROG_CC
AC_PROG_CPP AC_PROG_CPP
AC_SUBST(EXEEXT) AC_SUBST(EXEEXT)
PKG_PROG_PKG_CONFIG([0.24])
LT_INIT(win32-dll)
# checks for native programs to generate building tool # checks for native programs to generate building tool
@ -52,62 +56,41 @@ if test ${cross_compiling} = yes; then
EXEEXT_BUILD="" EXEEXT_BUILD=""
elif test -x a_out.exe -o -x conftest.exe; then elif test -x a_out.exe -o -x conftest.exe; then
EXEEXT_BUILD=".exe" EXEEXT_BUILD=".exe"
elif test -x conftest.* ; then elif test -x conftest.*; then
EXEEXT_BUILD=`echo conftest.* | sed -n '1s/^.*\.//g'` EXEEXT_BUILD=`echo conftest.* | sed -n '1s/^.*\././'`
fi fi
rm -f a.* b.* a_out.exe conftest.*
AC_MSG_RESULT($EXEEXT_BUILD) AC_MSG_RESULT($EXEEXT_BUILD)
else else
CC_BUILD=${CC} CC_BUILD=${CC}
EXEEXT_BUILD=${EXEEXT} EXEEXT_BUILD=${EXEEXT}
fi fi
if test ! -z ${EXEEXT_BUILD}; then
EXEEXT_BUILD=."${EXEEXT_BUILD}"
fi
AC_SUBST(CC_BUILD) AC_SUBST(CC_BUILD)
AC_SUBST(EXEEXT_BUILD) AC_SUBST(EXEEXT_BUILD)
# Since these files will be eventually called from another directory (namely
# get compiler flags right # from the top level) we make the path of the scripts absolute.
#
if test "x$CC" = xgcc; then # This small code snippet has been taken from automake's `ylwrap' script.
XX_CFLAGS="-Wall"
XX_ANSIFLAGS="-pedantic -ansi"
else
case "$host" in
*-dec-osf*)
CFLAGS=
XX_CFLAGS="-std1 -g3"
XX_ANSIFLAGS=
;;
*)
XX_CFLAGS=
XX_ANSIFLAGS=
;;
esac
fi
AC_SUBST([XX_CFLAGS])
AC_SUBST([XX_ANSIFLAGS])
# auxiliary programs
AC_CHECK_PROG([RMF], [rm], [rm -f])
AC_CHECK_PROG([RMDIR], [rmdir], [rmdir])
# Since this file will be finally moved to another directory we make
# the path of the install script absolute. This small code snippet has
# been taken from automake's `ylwrap' script.
AC_PROG_INSTALL AC_PROG_INSTALL
case "$INSTALL" in case "$INSTALL" in
/*) [[\\/]]* | ?:[[\\/]]*)
;;
*[[\\/]]*)
INSTALL="`pwd`/$INSTALL"
;;
esac
AC_PROG_MKDIR_P
case "$MKDIR_P" in
[[\\/]]* | ?:[[\\/]]*)
;;
*[[\\/]]*)
MKDIR_P="`pwd`/$MKDIR_P"
;; ;;
*/*)
INSTALL="`pwd`/$INSTALL" ;;
esac esac
@ -126,11 +109,17 @@ AC_CHECK_SIZEOF([long])
# check whether cpp computation of size of int and long in ftconfig.in works # check whether cpp computation of size of int and long in ftconfig.in works
AC_MSG_CHECKING([cpp computation of bit length in ftconfig.in works]) AC_MSG_CHECKING([whether cpp computation of bit length in ftconfig.in works])
orig_CPPFLAGS="${CPPFLAGS}" orig_CPPFLAGS="${CPPFLAGS}"
CPPFLAGS="-I${srcdir} -I. ${CPPFLAGS}" CPPFLAGS="-I${srcdir} -I. ${CPPFLAGS}"
ac_clean_files="ft2build.h ftoption.h ftstdlib.h"
touch ft2build.h ftoption.h ftstdlib.h ac_clean_files=
for f in ft2build.h ftoption.h ftstdlib.h; do
if test ! -f $f; then
ac_clean_files="$ac_clean_files $f"
touch $f
fi
done
cat > conftest.c <<\_ACEOF cat > conftest.c <<\_ACEOF
#include <limits.h> #include <limits.h>
@ -149,7 +138,7 @@ echo >> conftest.c "#endif"
${CPP} ${CPPFLAGS} conftest.c | ${GREP} ac_cpp_ft > conftest.sh ${CPP} ${CPPFLAGS} conftest.c | ${GREP} ac_cpp_ft > conftest.sh
eval `cat conftest.sh` eval `cat conftest.sh`
${RMF} conftest.c conftest.sh confft2build.h ftoption.h ftstdlib.h rm -f conftest.* $ac_clean_files
if test x != "x${ac_cpp_ft_sizeof_int}" \ if test x != "x${ac_cpp_ft_sizeof_int}" \
-a x != x"${ac_cpp_ft_sizeof_long}"; then -a x != x"${ac_cpp_ft_sizeof_long}"; then
@ -182,7 +171,8 @@ case :${ft_use_autoconf_sizeof_types}:${enable_biarch_config}: in
esac esac
if test x"${ft_use_autoconf_sizeof_types}" = xyes; then if test x"${ft_use_autoconf_sizeof_types}" = xyes; then
AC_DEFINE([FT_USE_AUTOCONF_SIZEOF_TYPES]) AC_DEFINE([FT_USE_AUTOCONF_SIZEOF_TYPES], [],
[Define if autoconf sizeof types should be used.])
fi fi
CPPFLAGS="${orig_CPPFLAGS}" CPPFLAGS="${orig_CPPFLAGS}"
@ -190,10 +180,19 @@ CPPFLAGS="${orig_CPPFLAGS}"
# checks for library functions # checks for library functions
AC_SYS_LARGEFILE
# Here we check whether we can use our mmap file component. # Here we check whether we can use our mmap file component.
AC_FUNC_MMAP AC_ARG_ENABLE([mmap],
if test "$ac_cv_func_mmap_fixed_mapped" != yes; then AS_HELP_STRING([--disable-mmap],
[do not check mmap() and do not use]),
[enable_mmap="no"],[enable_mmap="yes"])
if test "x${enable_mmap}" != "xno"; then
AC_FUNC_MMAP
fi
if test "x${enable_mmap}" = "xno" \
-o "$ac_cv_func_mmap_fixed_mapped" != "yes"; then
FTSYS_SRC='$(BASE_DIR)/ftsystem.c' FTSYS_SRC='$(BASE_DIR)/ftsystem.c'
else else
FTSYS_SRC='$(BUILD_DIR)/ftsystem.c' FTSYS_SRC='$(BUILD_DIR)/ftsystem.c'
@ -217,61 +216,356 @@ AC_SUBST([FTSYS_SRC])
AC_CHECK_FUNCS([memcpy memmove]) AC_CHECK_FUNCS([memcpy memmove])
# check for system zlib # get compiler flags right
#
# don't quote AS_HELP_STRING! # We try to make the compiler work for C89-strict source. Even if the
AC_ARG_WITH([zlib], # C compiler is gcc and C89 flags are available, some system headers
AS_HELP_STRING([--without-zlib], # (e.g., Android Bionic libc) are broken in C89 mode. We have to check
[use internal zlib instead of system-wide])) # whether the compilation finishes successfully.
if test x$with_zlib != xno && test -z "$LIBZ"; then #
AC_CHECK_LIB([z], [gzsetparams], [AC_CHECK_HEADER([zlib.h], [LIBZ='-lz'])]) # Due to bugs in mingwrt 4.0.3 we don't use `-ansi' for MinGW.
fi #
if test x$with_zlib != xno && test -n "$LIBZ"; then # To avoid zillions of
CFLAGS="$CFLAGS -DFT_CONFIG_OPTION_SYSTEM_ZLIB" #
LDFLAGS="$LDFLAGS $LIBZ" # ISO C90 does not support 'long long'
SYSTEM_ZLIB=yes #
fi # warnings, we disable `-pedantic' for gcc version < 4.6.
#
if test "x$GCC" = xyes; then
# check Apple's `-isysroot' option and duplicate it to LDFLAGS if required -- XX_CFLAGS="-Wall"
# Apple TechNote 2137 recommends to include it in CFLAGS but not in LDFLAGS case "$host" in
*-*-mingw*)
AC_MSG_CHECKING([whether CFLAGS includes -isysroot option]) XX_ANSIFLAGS="-pedantic"
case "$CFLAGS" in ;;
*sysroot* ) *-*-aix*)
AC_MSG_RESULT([yes]) XX_ANSIFLAGS="-pedantic"
AC_MSG_CHECKING([whether LDFLAGS includes -isysroot option])
case "$LDFLAGS" in
*sysroot* )
AC_MSG_RESULT([yes])
;; ;;
*) *)
AC_MSG_RESULT([no]) GCC_VERSION=`$CC -dumpversion`
isysroot_dir=`echo ${CFLAGS} | tr '\t' ' ' | sed 's/^.*-isysroot *//;s/ .*//'` GCC_MAJOR=`echo "$GCC_VERSION" | sed 's/\([[^.]][[^.]]*\).*/\1/'`
AC_MSG_WARN(-isysroot ${isysroot_dir} is added to LDFLAGS) GCC_MINOR=`echo "$GCC_VERSION" | sed 's/[[^.]][[^.]]*.\([[^.]][[^.]]*\).*/\1/'`
LDFLAGS="-isysroot ${isysroot_dir} ${LDFLAGS}"
XX_PEDANTIC=-pedantic
if test $GCC_MAJOR -lt 4; then
XX_PEDANTIC=
else
if test $GCC_MAJOR -eq 4 -a $GCC_MINOR -lt 6; then
XX_PEDANTIC=
fi
fi
XX_ANSIFLAGS=""
for a in $XX_PEDANTIC -ansi
do
AC_MSG_CHECKING([gcc compiler flag ${a} to assure ANSI C works correctly])
orig_CFLAGS="${CFLAGS}"
CFLAGS="${CFLAGS} ${XX_ANSIFLAGS} ${a}"
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([
#include <stdio.h>
],
[
{
puts( "" );
return 0;
}
])],
[AC_MSG_RESULT([ok, add it to XX_ANSIFLAGS])
XX_ANSIFLAGS="${XX_ANSIFLAGS} ${a}"
],
[AC_MSG_RESULT([no])])
CFLAGS="${orig_CFLAGS}"
done
;; ;;
esac esac
else
case "$host" in
*-dec-osf*)
CFLAGS=
XX_CFLAGS="-std1 -g3"
XX_ANSIFLAGS=
;; ;;
*) *)
XX_CFLAGS=
XX_ANSIFLAGS=
;;
esac
fi
AC_SUBST([XX_CFLAGS])
AC_SUBST([XX_ANSIFLAGS])
# All library tests below try `pkg-config' first. If that fails, a function
# from the library is tested in the traditional autoconf way (zlib, bzip2),
# or a config script is called (libpng).
#
# The `xxx_reqpriv' variables are for the `Requires.private' field in
# `freetype2.pc'. The `xxx_libspriv' variables are for the `Libs.private'
# field in `freetype2.pc' if pkg-config doesn't find a proper .pc file.
#
# The `xxx_libsstaticconf' variables are for the `freetype-config' script.
#
# Note that a call to PKG_CHECK_MODULES(XXX, ...) sets and creates the
# output variables `XXX_CFLAGS' and `XXX_LIBS'. In case one or both are set
# for a library by the user, no entry for this library is added to
# `Requires.private'. Instead, it gets added to `Libs.private'
# check for system zlib
AC_ARG_WITH([zlib],
[AS_HELP_STRING([--with-zlib=@<:@yes|no|auto@:>@],
[use system zlib instead of internal library @<:@default=auto@:>@])],
[], [with_zlib=auto])
have_zlib=no
if test x"$with_zlib" = xyes -o x"$with_zlib" = xauto; then
zlib_pkg="zlib"
have_zlib_pkg=no
if test x"$ZLIB_CFLAGS" = x -a x"$ZLIB_LIBS" = x; then
PKG_CHECK_EXISTS([$zlib_pkg], [have_zlib_pkg=yes])
fi
PKG_CHECK_MODULES([ZLIB], [$zlib_pkg],
[have_zlib="yes (pkg-config)"], [:])
if test $have_zlib_pkg = yes; then
# we have zlib.pc
zlib_reqpriv="$zlib_pkg"
zlib_libspriv=
zlib_libsstaticconf=`$PKG_CONFIG --static --libs "$zlib_pkg"`
else
zlib_reqpriv=
if test "$have_zlib" != no; then
# ZLIB_CFLAGS and ZLIB_LIBS are set by the user
zlib_libspriv="$ZLIB_LIBS"
zlib_libsstaticconf="$ZLIB_LIBS"
have_zlib="yes (ZLIB_CFLAGS and ZLIB_LIBS)"
else
# fall back to standard autoconf test
AC_CHECK_LIB([z],
[gzsetparams],
[AC_CHECK_HEADER([zlib.h],
[have_zlib="yes (autoconf test)"
zlib_libspriv="-lz"
zlib_libsstaticconf="$zlib_libspriv"
ZLIB_LIBS="$zlib_libspriv"])])
fi
fi
fi
if test x"$with_zlib" = xyes -a "$have_zlib" = no; then
AC_MSG_ERROR([external zlib support requested but library not found])
fi
# check for system libbz2
AC_ARG_WITH([bzip2],
[AS_HELP_STRING([--with-bzip2=@<:@yes|no|auto@:>@],
[support bzip2 compressed fonts @<:@default=auto@:>@])],
[], [with_bzip2=auto])
have_bzip2=no
if test x"$with_bzip2" = xyes -o x"$with_bzip2" = xauto; then
bzip2_pkg="bzip2"
have_bzip2_pkg=no
if test x"$BZIP2_CFLAGS" = x -a x"$BZIP2_LIBS" = x; then
PKG_CHECK_EXISTS([$bzip2_pkg], [have_bzip2_pkg=yes])
fi
PKG_CHECK_MODULES([BZIP2], [$bzip2_pkg],
[have_bzip2="yes (pkg-config)"], [:])
if test $have_bzip2_pkg = yes; then
# we have bzip2.pc
bzip2_reqpriv="$bzip2_pkg"
bzip2_libspriv=
bzip2_libsstaticconf=`$PKG_CONFIG --static --libs "$bzip2_pkg"`
else
bzip2_reqpriv=
if test "$have_bzip2" != no; then
# BZIP2_CFLAGS and BZIP2_LIBS are set by the user
bzip2_libspriv="$BZIP2_LIBS"
bzip2_libsstaticconf="$BZIP2_LIBS"
have_bzip2="yes (BZIP2_CFLAGS and BZIP2_LIBS)"
else
# fall back to standard autoconf test
AC_CHECK_LIB([bz2],
[BZ2_bzDecompress],
[AC_CHECK_HEADER([bzlib.h],
[have_bzip2="yes (autoconf test)"
bzip2_libspriv="-lbz2"
bzip2_libsstaticconf="$bzip2_libspriv"
BZIP2_LIBS="$bzip2_libspriv"])])
fi
fi
fi
if test x"$with_bzip2" = xyes -a "$have_bzip2" = no; then
AC_MSG_ERROR([bzip2 support requested but library not found])
fi
# check for system libpng
AC_ARG_WITH([png],
[AS_HELP_STRING([--with-png=@<:@yes|no|auto@:>@],
[support png compressed OpenType embedded bitmaps @<:@default=auto@:>@])],
[], [with_png=auto])
have_libpng=no
if test x"$with_png" = xyes -o x"$with_png" = xauto; then
libpng_pkg="libpng"
have_libpng_pkg=no
if test x"$LIBPNG_CFLAGS" = x -a x"$LIBPNG_LIBS" = x; then
PKG_CHECK_EXISTS([$libpng_pkg], [have_libpng_pkg=yes])
fi
PKG_CHECK_MODULES([LIBPNG], [$libpng_pkg],
[have_libpng="yes (pkg-config)"], [:])
if test $have_libpng_pkg = yes; then
# we have libpng.pc
libpng_reqpriv="$libpng_pkg"
libpng_libspriv=
libpng_libsstaticconf=`$PKG_CONFIG --static --libs "$libpng_pkg"`
else
libpng_reqpriv=
if test "$have_libpng" != no; then
# LIBPNG_CFLAGS and LIBPNG_LIBS are set by the user
libpng_libspriv="$LIBPNG_LIBS"
libpng_libsstaticconf="$LIBPNG_LIBS"
have_libpng="yes (LIBPNG_CFLAGS and LIBPNG_LIBS)"
else
# fall back to config script.
AC_MSG_CHECKING([for libpng-config])
if which libpng-config > /dev/null 2>&1; then
LIBPNG_CFLAGS=`libpng-config --cflags`
LIBPNG_LIBS=`libpng-config --ldflags`
libpng_libspriv=`libpng-config --static --ldflags`
libpng_libsstaticconf="$libpng_libspriv"
have_libpng="yes (libpng-config)"
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no]) AC_MSG_RESULT([no])
fi
fi
fi
fi
if test x"$with_png" = xyes -a "$have_libpng" = no; then
AC_MSG_ERROR([libpng support requested but library not found])
fi
# check for system libharfbuzz
AC_ARG_WITH([harfbuzz],
[AS_HELP_STRING([--with-harfbuzz=@<:@yes|no|auto@:>@],
[improve auto-hinting of OpenType fonts @<:@default=auto@:>@])],
[], [with_harfbuzz=auto])
have_harfbuzz=no
if test x"$with_harfbuzz" = xyes -o x"$with_harfbuzz" = xauto; then
harfbuzz_pkg="harfbuzz >= 0.9.21"
have_harfbuzz_pkg=no
if test x"$HARFBUZZ_CFLAGS" = x -a x"$HARFBUZZ_LIBS" = x; then
PKG_CHECK_EXISTS([$harfbuzz_pkg], [have_harfbuzz_pkg=yes])
fi
PKG_CHECK_MODULES([HARFBUZZ], [$harfbuzz_pkg],
[have_harfbuzz="yes (pkg-config)"], [:])
if test $have_harfbuzz_pkg = yes; then
# we have harfbuzz.pc
harfbuzz_reqpriv="$harfbuzz_pkg"
harfbuzz_libspriv=
harfbuzz_libsstaticconf=`$PKG_CONFIG --static --libs "$harfbuzz_pkg"`
else
harfbuzz_reqpriv=
if test "$have_harfbuzz" != no; then
# HARFBUZZ_CFLAGS and HARFBUZZ_LIBS are set by the user
harfbuzz_libspriv="$HARFBUZZ_LIBS"
harfbuzz_libsstaticconf="$HARFBUZZ_LIBS"
have_harfbuzz="yes (HARFBUZZ_CFLAGS and HARFBUZZ_LIBS)"
else
# since HarfBuzz is quite a new library we don't fall back to a
# different test; additionally, it has too many dependencies
:
fi
fi
fi
if test x"$with_harfbuzz" = xyes -a "$have_harfbuzz" = no; then
AC_MSG_ERROR([harfbuzz support requested but library not found])
fi
# Some options handling SDKs/archs in CFLAGS should be copied
# to LDFLAGS. Apple TechNote 2137 recommends to include these
# options in CFLAGS but not in LDFLAGS.
save_config_args=$*
set dummy ${CFLAGS}
i=1
while test $i -le $#
do
c=$1
case "${c}" in
-isysroot|-arch) # options taking 1 argument
a=$2
AC_MSG_CHECKING([whether CFLAGS and LDFLAGS share ${c} ${a}])
if expr " ${LDFLAGS} " : ".* ${c} *${a}.*" > /dev/null
then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, copy to LDFLAGS])
LDFLAGS="${LDFLAGS} ${c} ${a}"
fi
shift 1
;; ;;
esac -m32|-m64|-march=*|-mcpu=*) # options taking no argument
AC_MSG_CHECKING([whether CFLAGS and LDFLAGS share ${c}])
if expr " ${LDFLAGS} " : ".* ${c} *${a}.*" > /dev/null
then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, copy to LDFLAGS])
LDFLAGS="${LDFLAGS} ${c}"
fi
;;
# *)
# AC_MSG_RESULT([${c} is not copied to LDFLAGS])
# ;;
esac
shift 1
done
set ${save_config_args}
# Whether to use Mac OS resource-based fonts. # Whether to use Mac OS resource-based fonts.
ftmac_c="" # src/base/ftmac.c should not be included in makefiles by default ftmac_c="" # src/base/ftmac.c should not be included in makefiles by default
# don't quote AS_HELP_STRING!
AC_ARG_WITH([old-mac-fonts], AC_ARG_WITH([old-mac-fonts],
AS_HELP_STRING([--with-old-mac-fonts], AS_HELP_STRING([--with-old-mac-fonts],
[allow Mac resource-based fonts to be used])) [allow Mac resource-based fonts to be used]))
if test x$with_old_mac_fonts = xyes; then if test x$with_old_mac_fonts = xyes; then
orig_LDFLAGS="${LDFLAGS}" orig_LDFLAGS="${LDFLAGS}"
AC_MSG_CHECKING([CoreServices & ApplicationServices of Mac OS X]) AC_MSG_CHECKING([CoreServices & ApplicationServices of Mac OS X])
FT2_EXTRA_LIBS="-Wl,-framework,CoreServices -Wl,-framework,ApplicationServices" ft2_extra_libs="-Wl,-framework,CoreServices -Wl,-framework,ApplicationServices"
LDFLAGS="$LDFLAGS $FT2_EXTRA_LIBS" LDFLAGS="$LDFLAGS $ft2_extra_libs"
AC_LINK_IFELSE([ AC_LINK_IFELSE([
AC_LANG_PROGRAM([ AC_LANG_PROGRAM([
@ -294,8 +588,8 @@ if test x$with_old_mac_fonts = xyes; then
])], ])],
[AC_MSG_RESULT([ok]) [AC_MSG_RESULT([ok])
ftmac_c='ftmac.c' ftmac_c='ftmac.c'
AC_MSG_CHECKING([OS_INLINE macro is ANSI compatible]) AC_MSG_CHECKING([whether OS_INLINE macro is ANSI compatible])
orig_CFLAGS="$CFLAGS" orig_CFLAGS="$CFLAGS -DFT_MACINTOSH"
CFLAGS="$CFLAGS $XX_CFLAGS $XX_ANSIFLAGS" CFLAGS="$CFLAGS $XX_CFLAGS $XX_ANSIFLAGS"
AC_COMPILE_IFELSE([ AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([ AC_LANG_PROGRAM([
@ -357,7 +651,7 @@ if test x$with_old_mac_fonts = xyes; then
CFLAGS="$CFLAGS -DHAVE_TYPE_RESOURCE_INDEX=0" CFLAGS="$CFLAGS -DHAVE_TYPE_RESOURCE_INDEX=0"
])], ])],
[AC_MSG_RESULT([not found]) [AC_MSG_RESULT([not found])
FT2_EXTRA_LIBS="" ft2_extra_libs=""
LDFLAGS="${orig_LDFLAGS}" LDFLAGS="${orig_LDFLAGS}"
CFLAGS="$CFLAGS -DDARWIN_NO_CARBON"]) CFLAGS="$CFLAGS -DDARWIN_NO_CARBON"])
else else
@ -366,12 +660,13 @@ else
dnl AC_MSG_WARN([host system is MacOS but configured to build without Carbon]) dnl AC_MSG_WARN([host system is MacOS but configured to build without Carbon])
CFLAGS="$CFLAGS -DDARWIN_NO_CARBON" CFLAGS="$CFLAGS -DDARWIN_NO_CARBON"
;; ;;
*) ;; *)
;;
esac esac
fi fi
# Whether to use FileManager which is deprecated since Mac OS X 10.4. # Whether to use FileManager, which is deprecated since Mac OS X 10.4.
AC_ARG_WITH([fsspec], AC_ARG_WITH([fsspec],
AS_HELP_STRING([--with-fsspec], AS_HELP_STRING([--with-fsspec],
@ -480,7 +775,7 @@ elif test x$with_old_mac_fonts = xyes -a x$with_fsref != x; then
fi fi
# Whether to use QuickDraw API in ToolBox which is deprecated since # Whether to use QuickDraw API in ToolBox, which is deprecated since
# Mac OS X 10.4. # Mac OS X 10.4.
AC_ARG_WITH([quickdraw-toolbox], AC_ARG_WITH([quickdraw-toolbox],
@ -522,7 +817,7 @@ elif test x$with_old_mac_fonts = xyes -a x$with_quickdraw_toolbox != x; then
fi fi
# Whether to use QuickDraw API in Carbon which is deprecated since # Whether to use QuickDraw API in Carbon, which is deprecated since
# Mac OS X 10.4. # Mac OS X 10.4.
AC_ARG_WITH([quickdraw-carbon], AC_ARG_WITH([quickdraw-carbon],
@ -576,13 +871,12 @@ fi
# Whether to use AppleTypeService since Mac OS X. # Whether to use AppleTypeService since Mac OS X.
# don't quote AS_HELP_STRING!
AC_ARG_WITH([ats], AC_ARG_WITH([ats],
AS_HELP_STRING([--with-ats], AS_HELP_STRING([--with-ats],
[use AppleTypeService, if available (default=yes)])) [use AppleTypeService, if available (default=yes)]))
if test x$with_ats = xno; then if test x$with_ats = xno; then
CFLAGS="$CFLAGS -DHAVE_ATS=0" CFLAGS="$CFLAGS -DHAVE_ATS=0"
elif test x$with_old_mac_fonts = xyes -a x$with_ats != x ; then elif test x$with_old_mac_fonts = xyes -a x$with_ats != x; then
AC_MSG_CHECKING([AppleTypeService functions]) AC_MSG_CHECKING([AppleTypeService functions])
AC_LINK_IFELSE([ AC_LINK_IFELSE([
AC_LANG_PROGRAM([ AC_LANG_PROGRAM([
@ -627,21 +921,82 @@ case "$CFLAGS" in
esac esac
# entries in Requires.private are separated by commas;
REQUIRES_PRIVATE="$zlib_reqpriv, \
$bzip2_reqpriv, \
$libpng_reqpriv, \
$harfbuzz_reqpriv"
# beautify
REQUIRES_PRIVATE=`echo "$REQUIRES_PRIVATE" \
| sed -e 's/^ *//' \
-e 's/ *$//' \
-e 's/, */,/g' \
-e 's/,,*/,/g' \
-e 's/^,*//' \
-e 's/,*$//' \
-e 's/,/, /g'`
LIBS_PRIVATE="$zlib_libspriv \
$bzip2_libspriv \
$libpng_libspriv \
$harfbuzz_libspriv \
$ft2_extra_libs"
# beautify
LIBS_PRIVATE=`echo "$LIBS_PRIVATE" \
| sed -e 's/^ *//' \
-e 's/ *$//' \
-e 's/ */ /g'`
LIBSSTATIC_CONFIG="-lfreetype \
$zlib_libsstaticconf \
$bzip2_libsstaticconf \
$libpng_libsstaticconf \
$harfbuzz_libsstaticconf \
$ft2_extra_libs"
# remove -L/usr/lib and -L/usr/lib64 since `freetype-config' adds them later
# on if necessary; also beautify
LIBSSTATIC_CONFIG=`echo "$LIBSSTATIC_CONFIG" \
| sed -e 's|-L */usr/lib64/* | |g' \
-e 's|-L */usr/lib/* | |g' \
-e 's/^ *//' \
-e 's/ *$//' \
-e 's/ */ /g'`
AC_SUBST([ftmac_c]) AC_SUBST([ftmac_c])
AC_SUBST([LIBZ]) AC_SUBST([REQUIRES_PRIVATE])
AC_SUBST([CFLAGS]) AC_SUBST([LIBS_PRIVATE])
AC_SUBST([LDFLAGS]) AC_SUBST([LIBSSTATIC_CONFIG])
AC_SUBST([FT2_EXTRA_LIBS])
AC_SUBST([SYSTEM_ZLIB])
LT_INIT(win32-dll)
AC_SUBST([hardcode_libdir_flag_spec]) AC_SUBST([hardcode_libdir_flag_spec])
AC_SUBST([wl]) AC_SUBST([wl])
AC_SUBST([build_libtool_libs]) AC_SUBST([build_libtool_libs])
# changing LDFLAGS value should only be done after
# lt_cv_prog_compiler_static_works test
if test "$have_zlib" != no; then
CFLAGS="$CFLAGS $ZLIB_CFLAGS -DFT_CONFIG_OPTION_SYSTEM_ZLIB"
LDFLAGS="$LDFLAGS $ZLIB_LIBS"
fi
if test "$have_bzip2" != no; then
CFLAGS="$CFLAGS $BZIP2_CFLAGS -DFT_CONFIG_OPTION_USE_BZIP2"
LDFLAGS="$LDFLAGS $BZIP2_LIBS"
fi
if test "$have_libpng" != no; then
CFLAGS="$CFLAGS $LIBPNG_CFLAGS -DFT_CONFIG_OPTION_USE_PNG"
LDFLAGS="$LDFLAGS $LIBPNG_LIBS"
fi
if test "$have_harfbuzz" != no; then
CFLAGS="$CFLAGS $HARFBUZZ_CFLAGS -DFT_CONFIG_OPTION_USE_HARFBUZZ"
LDFLAGS="$LDFLAGS $HARFBUZZ_LIBS"
fi
AC_SUBST([CFLAGS])
AC_SUBST([LDFLAGS])
# configuration file -- stay in 8.3 limit # configuration file -- stay in 8.3 limit
# #
# since #undef doesn't survive in configuration header files we replace # since #undef doesn't survive in configuration header files we replace
@ -656,9 +1011,7 @@ AC_CONFIG_HEADERS([ftconfig.h:ftconfig.in],
# and `builds/unix/unix-cc.mk' that will be used by the build system # and `builds/unix/unix-cc.mk' that will be used by the build system
# #
AC_CONFIG_FILES([unix-cc.mk:unix-cc.in AC_CONFIG_FILES([unix-cc.mk:unix-cc.in
unix-def.mk:unix-def.in unix-def.mk:unix-def.in])
freetype-config
freetype2.pc:freetype2.in])
# re-generate the Jamfile to use libtool now # re-generate the Jamfile to use libtool now
# #
@ -666,4 +1019,13 @@ AC_CONFIG_FILES([unix-cc.mk:unix-cc.in
AC_OUTPUT AC_OUTPUT
AC_MSG_NOTICE([
Library configuration:
external zlib: $have_zlib
bzip2: $have_bzip2
libpng: $have_libpng
harfbuzz: $have_harfbuzz
])
# end of configure.raw # end of configure.raw

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2002, 2003, 2004, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -20,6 +20,7 @@ ifeq ($(PLATFORM),ansi)
# #
is_unix := $(strip $(wildcard /sbin/init) \ is_unix := $(strip $(wildcard /sbin/init) \
$(wildcard /usr/sbin/init) \ $(wildcard /usr/sbin/init) \
$(wildcard /dev/null) \
$(wildcard /hurd/auth)) $(wildcard /hurd/auth))
ifneq ($(is_unix),) ifneq ($(is_unix),)
@ -81,7 +82,8 @@ ifeq ($(PLATFORM),unix)
# we are building FT2 not in the src tree # we are building FT2 not in the src tree
$(TOP_DIR)/builds/unix/configure $(value CFG) $(TOP_DIR)/builds/unix/configure $(value CFG)
else else
cd builds/unix; ./configure $(value CFG) cd builds/unix; \
./configure $(value CFG)
endif endif
endif endif

View file

@ -1,160 +0,0 @@
#! /bin/sh
#
# Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2008, 2009 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.
prefix=/usr/local
exec_prefix=${prefix}
exec_prefix_set=no
includedir=${prefix}/include
libdir=${exec_prefix}/lib
enable_shared=
wl=-Wl,
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$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
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 9.20.3
exit 0
;;
--ftversion)
echo_ft_version=yes
;;
--cflags)
echo_cflags=yes
;;
--libs)
echo_libs=yes
;;
--libtool)
echo_libtool=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 $prefix
fi
if test "$echo_exec_prefix" = "yes" ; then
echo $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 $includedir/freetype2/freetype/freetype.h \
| grep FREETYPE_MAJOR \
| sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'`
minor=`grep define $includedir/freetype2/freetype/freetype.h \
| grep FREETYPE_MINOR \
| sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'`
patch=`grep define $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
cflags="-I$includedir/freetype2"
if test "$includedir" != "/usr/include" ; then
echo $cflags -I$includedir
else
echo $cflags
fi
fi
if test "$echo_libs" = "yes" ; then
rpath=
if test "$enable_shared" = "yes" ; then
eval "rpath=\"$hardcode_libdir_flag_spec\""
fi
libs="-lfreetype -lz "
if test "$libdir" != "/usr/lib" && test "$libdir" != "/usr/lib64"; then
echo -L$libdir $rpath $libs
else
echo $libs
fi
fi
if test "$echo_libtool" = "yes" ; then
convlib="libfreetype.la"
echo $libdir/$convlib
fi
# EOF

View file

@ -1,6 +1,6 @@
#! /bin/sh #! /bin/sh
# #
# Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2008, 2009 by # Copyright 2000-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -9,14 +9,14 @@
# indicate that you have read the license and understand and accept it # indicate that you have read the license and understand and accept it
# fully. # fully.
prefix=@prefix@ LC_ALL=C
exec_prefix=@exec_prefix@ export LC_ALL
exec_prefix_set=no
includedir=@includedir@ prefix="%prefix%"
libdir=@libdir@ exec_prefix="%exec_prefix%"
enable_shared=@build_libtool_libs@ exec_prefix_set="no"
wl=@wl@ includedir="%includedir%"
hardcode_libdir_flag_spec='@hardcode_libdir_flag_spec@' libdir="%libdir%"
usage() usage()
{ {
@ -37,6 +37,8 @@ Options:
--libtool display library name for linking with libtool --libtool display library name for linking with libtool
--cflags display flags for compiling with the FreeType --cflags display flags for compiling with the FreeType
library library
--static make command line options display flags
for static linking
EOF EOF
exit $1 exit $1
} }
@ -72,7 +74,7 @@ while test $# -gt 0 ; do
echo_exec_prefix=yes echo_exec_prefix=yes
;; ;;
--version) --version)
echo @ft_version@ echo %ft_version%
exit 0 exit 0
;; ;;
--ftversion) --ftversion)
@ -87,6 +89,9 @@ while test $# -gt 0 ; do
--libtool) --libtool)
echo_libtool=yes echo_libtool=yes
;; ;;
--static)
show_static=yes
;;
*) *)
usage 1 1>&2 usage 1 1>&2
;; ;;
@ -101,11 +106,11 @@ if test "$local_prefix" = "yes" ; then
fi fi
if test "$echo_prefix" = "yes" ; then if test "$echo_prefix" = "yes" ; then
echo $prefix echo ${SYSROOT}$prefix
fi fi
if test "$echo_exec_prefix" = "yes" ; then if test "$echo_exec_prefix" = "yes" ; then
echo $exec_prefix echo ${SYSROOT}$exec_prefix
fi fi
if test "$exec_prefix_set" = "yes" ; then if test "$exec_prefix_set" = "yes" ; then
@ -118,35 +123,31 @@ else
fi fi
if test "$echo_ft_version" = "yes" ; then if test "$echo_ft_version" = "yes" ; then
major=`grep define $includedir/freetype2/freetype/freetype.h \ major=`grep define ${SYSROOT}$includedir/freetype2/freetype/freetype.h \
| grep FREETYPE_MAJOR \ | grep FREETYPE_MAJOR \
| sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'` | sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'`
minor=`grep define $includedir/freetype2/freetype/freetype.h \ minor=`grep define ${SYSROOT}$includedir/freetype2/freetype/freetype.h \
| grep FREETYPE_MINOR \ | grep FREETYPE_MINOR \
| sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'` | sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'`
patch=`grep define $includedir/freetype2/freetype/freetype.h \ patch=`grep define ${SYSROOT}$includedir/freetype2/freetype/freetype.h \
| grep FREETYPE_PATCH \ | grep FREETYPE_PATCH \
| sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'` | sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'`
echo $major.$minor.$patch echo $major.$minor.$patch
fi fi
if test "$echo_cflags" = "yes" ; then if test "$echo_cflags" = "yes" ; then
cflags="-I$includedir/freetype2" echo -I${SYSROOT}$includedir/freetype2
if test "$includedir" != "/usr/include" ; then
echo $cflags -I$includedir
else
echo $cflags
fi
fi fi
if test "$echo_libs" = "yes" ; then if test "$echo_libs" = "yes" ; then
rpath= libs="-lfreetype"
if test "$enable_shared" = "yes" ; then staticlibs="%LIBSSTATIC_CONFIG%"
eval "rpath=\"$hardcode_libdir_flag_spec\"" if test "$show_static" = "yes" ; then
libs="$staticlibs"
fi fi
libs="-lfreetype @LIBZ@ @FT2_EXTRA_LIBS@" if test "${SYSROOT}$libdir" != "/usr/lib" &&
if test "$libdir" != "/usr/lib" && test "$libdir" != "/usr/lib64"; then test "${SYSROOT}$libdir" != "/usr/lib64"; then
echo -L$libdir $rpath $libs echo -L${SYSROOT}$libdir $libs
else else
echo $libs echo $libs
fi fi
@ -154,7 +155,7 @@ fi
if test "$echo_libtool" = "yes" ; then if test "$echo_libtool" = "yes" ; then
convlib="libfreetype.la" convlib="libfreetype.la"
echo $libdir/$convlib echo ${SYSROOT}$libdir/$convlib
fi fi
# EOF # EOF

View file

@ -1,12 +1,14 @@
prefix=@prefix@ prefix=%prefix%
exec_prefix=@exec_prefix@ exec_prefix=%exec_prefix%
libdir=@libdir@ libdir=%libdir%
includedir=@includedir@ includedir=%includedir%
Name: FreeType 2 Name: FreeType 2
URL: http://freetype.org
Description: A free, high-quality, and portable font engine. Description: A free, high-quality, and portable font engine.
Version: @ft_version@ Version: %ft_version%
Requires: Requires:
Requires.private: %REQUIRES_PRIVATE%
Libs: -L${libdir} -lfreetype Libs: -L${libdir} -lfreetype
Libs.private: @LIBZ@ @FT2_EXTRA_LIBS@ Libs.private: %LIBS_PRIVATE%
Cflags: -I${includedir}/freetype2 -I${includedir} Cflags: -I${includedir}/freetype2

View file

@ -1,7 +1,7 @@
# Configure paths for FreeType2 # Configure paths for FreeType2
# Marcelo Magallon 2001-10-26, based on gtk.m4 by Owen Taylor # Marcelo Magallon 2001-10-26, based on gtk.m4 by Owen Taylor
# #
# Copyright 2001, 2003, 2007 by # Copyright 2001-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -15,7 +15,7 @@
# generated by Autoconf, under the same distribution terms as the rest of # generated by Autoconf, under the same distribution terms as the rest of
# that program. # that program.
# #
# serial 2 # serial 4
# AC_CHECK_FT2([MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) # AC_CHECK_FT2([MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
# Test for FreeType 2, and define FT2_CFLAGS and FT2_LIBS. # Test for FreeType 2, and define FT2_CFLAGS and FT2_LIBS.
@ -60,7 +60,9 @@ AC_DEFUN([AC_CHECK_FT2],
fi fi
fi fi
AC_PATH_PROG([FT2_CONFIG], [freetype-config], [no]) 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]) min_ft_version=m4_if([$1], [], [7.0.1], [$1])
AC_MSG_CHECKING([for FreeType -- version >= $min_ft_version]) AC_MSG_CHECKING([for FreeType -- version >= $min_ft_version])

View file

@ -1,12 +0,0 @@
prefix=/usr/local
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: FreeType 2
Description: A free, high-quality, and portable font engine.
Version: 9.20.3
Requires:
Libs: -L${libdir} -lfreetype
Libs.private: -lz
Cflags: -I${includedir}/freetype2 -I${includedir}

View file

@ -1,6 +1,6 @@
## FreeType specific autoconf tests ## FreeType specific autoconf tests
# #
# Copyright 2002, 2003, 2004 by # Copyright 2002-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,

View file

@ -1,61 +0,0 @@
/***************************************************************************/
/* */
/* ft2build.h */
/* */
/* Build macros of the FreeType 2 library. */
/* */
/* Copyright 1996-2001, 2003, 2006 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 is a Unix-specific version of <ft2build.h> that should be used */
/* exclusively *after* installation of the library. */
/* */
/* It assumes that `/usr/local/include/freetype2' (or whatever is */
/* returned by the `freetype-config --cflags' or `pkg-config --cflags' */
/* command) is in your compilation include path. */
/* */
/* We don't need to do anything special in this release. However, for */
/* a future FreeType 2 release, the following installation changes will */
/* be performed: */
/* */
/* - The contents of `freetype-2.x/include/freetype' will be installed */
/* to `/usr/local/include/freetype2' instead of */
/* `/usr/local/include/freetype2/freetype'. */
/* */
/* - This file will #include <freetype2/config/ftheader.h>, instead */
/* of <freetype/config/ftheader.h>. */
/* */
/* - The contents of `ftheader.h' will be processed with `sed' to */
/* replace all `<freetype/xxx>' with `<freetype2/xxx>'. */
/* */
/* - Adding `/usr/local/include/freetype2' to your compilation include */
/* path will not be necessary anymore. */
/* */
/* These changes will be transparent to client applications which use */
/* freetype-config (or pkg-config). No modifications will be necessary */
/* to compile with the new scheme. */
/* */
/*************************************************************************/
#ifndef __FT2_BUILD_UNIX_H__
#define __FT2_BUILD_UNIX_H__
/* `<prefix>/include/freetype2' must be in your current inclusion path */
#include <freetype/config/ftheader.h>
#endif /* __FT2_BUILD_UNIX_H__ */
/* END */

View file

@ -1,477 +0,0 @@
/* ftconfig.h. Generated from ftconfig.in by configure. */
/***************************************************************************/
/* */
/* ftconfig.in */
/* */
/* UNIX-specific configuration file (specification only). */
/* */
/* Copyright 1996-2001, 2002, 2003, 2004, 2006, 2007, 2008, 2009 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 `freetype/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 */
/* `freetype/builds/<system>' directory, and edit it to port the engine. */
/* */
/*************************************************************************/
#define HAVE_UNISTD_H 1
#define HAVE_FCNTL_H 1
#define HAVE_STDINT_H 1
/* 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
#define SIZEOF_INT 4
#define SIZEOF_LONG 8
#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 */
/* does 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 */
/* Preferred alignment of data */
#define FT_ALIGNMENT 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( DARWIN_NO_CARBON ) ) || \
( defined( __MWERKS__ ) && defined( macintosh ) )
/* no Carbon frameworks for 64bit 10.4.x */
#include "AvailabilityMacros.h"
#if defined( __LP64__ ) && \
( MAC_OS_X_VERSION_MIN_REQUIRED <= MAC_OS_X_VERSION_10_4 )
#define DARWIN_NO_CARBON 1
#else
#define FT_MACINTOSH 1
#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
/*************************************************************************/
/* */
/* IntN types */
/* */
/* Used to guarantee the size of some specific integers. */
/* */
typedef signed short FT_Int16;
typedef unsigned short FT_UInt16;
#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
#elif defined( _MSC_VER ) && _MSC_VER >= 900 /* Visual C++ (and Intel C++) */
/* this compiler provides the __int64 type */
#define FT_LONG64
#define FT_INT64 __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
#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
#elif defined( __GNUC__ )
/* GCC provides the `long long' type */
#define FT_LONG64
#define FT_INT64 long long int
#endif /* FT_SIZEOF_LONG == 8 */
/*************************************************************************/
/* */
/* A 64-bit data type will create compilation problems if you compile */
/* in strict ANSI mode. To avoid them, we disable its use if __STDC__ */
/* is defined. You can however ignore this rule by defining the */
/* FT_CONFIG_OPTION_FORCE_INT64 configuration macro. */
/* */
#if defined( FT_LONG64 ) && !defined( FT_CONFIG_OPTION_FORCE_INT64 )
#ifdef __STDC__
/* Undefine the 64-bit macros in strict ANSI compilation mode. */
/* Since `#undef' doesn't survive in configuration header files */
/* we use the postprocessing facility of AC_CONFIG_HEADERS to */
/* replace the leading `/' with `#'. */
#undef FT_LONG64
#undef FT_INT64
#endif /* __STDC__ */
#endif /* FT_LONG64 && !FT_CONFIG_OPTION_FORCE_INT64 */
#define FT_BEGIN_STMNT do {
#define FT_END_STMNT } while ( 0 )
#define FT_DUMMY_STMNT FT_BEGIN_STMNT FT_END_STMNT
#ifndef FT_CONFIG_OPTION_NO_ASSEMBLER
/* Provide assembler fragments for performance-critical functions. */
/* These must be defined `static __inline__' with GCC. */
#ifdef __GNUC__
#if defined( __arm__ ) && !defined( __thumb__ )
#define FT_MULFIX_ASSEMBLER FT_MulFix_arm
static __inline__ FT_Int32
FT_MulFix_arm( FT_Int32 a,
FT_Int32 b )
{
register FT_Int32 t, t2;
asm __volatile__ (
"smull %1, %2, %4, %3\n\t" /* (lo=%1,hi=%2) = a*b */
"mov %0, %2, asr #31\n\t" /* %0 = (hi >> 31) */
"add %0, %0, #0x8000\n\t" /* %0 += 0x8000 */
"adds %1, %1, %0\n\t" /* %1 += %0 */
"adc %2, %2, #0\n\t" /* %2 += carry */
"mov %0, %1, lsr #16\n\t" /* %0 = %1 >> 16 */
"orr %0, %0, %2, lsl #16\n\t" /* %0 |= %2 << 16 */
: "=r"(a), "=&r"(t2), "=&r"(t)
: "r"(a), "r"(b) );
return a;
}
#endif /* __arm__ && !__thumb__ */
#if defined( i386 )
#define FT_MULFIX_ASSEMBLER FT_MulFix_i386
static __inline__ FT_Int32
FT_MulFix_i386( FT_Int32 a,
FT_Int32 b )
{
register FT_Int32 result;
__asm__ __volatile__ (
"imul %%edx\n"
"movl %%edx, %%ecx\n"
"sarl $31, %%ecx\n"
"addl $0x8000, %%ecx\n"
"addl %%ecx, %%eax\n"
"adcl $0, %%edx\n"
"shrl $16, %%eax\n"
"shll $16, %%edx\n"
"addl %%edx, %%eax\n"
: "=a"(result), "+d"(b)
: "a"(a)
: "%ecx" );
return result;
}
#endif /* i386 */
#endif /* __GNUC__ */
#endif /* !FT_CONFIG_OPTION_NO_ASSEMBLER */
#ifdef FT_CONFIG_OPTION_INLINE_MULFIX
#ifdef FT_MULFIX_ASSEMBLER
#define FT_MULFIX_INLINED FT_MULFIX_ASSEMBLER
#endif
#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 */
#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 */

View file

@ -4,7 +4,7 @@
/* */ /* */
/* UNIX-specific configuration file (specification only). */ /* UNIX-specific configuration file (specification only). */
/* */ /* */
/* Copyright 1996-2001, 2002, 2003, 2004, 2006, 2007, 2008, 2009 by */ /* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -27,15 +27,15 @@
/* Note however that if some specific modifications are needed, we */ /* Note however that if some specific modifications are needed, we */
/* advise you to place a modified copy in your build directory. */ /* advise you to place a modified copy in your build directory. */
/* */ /* */
/* The build directory is usually `freetype/builds/<system>', and */ /* The build directory is usually `builds/<system>', and contains */
/* contains system-specific files that are always included first when */ /* system-specific files that are always included first when building */
/* building the library. */ /* the library. */
/* */ /* */
/*************************************************************************/ /*************************************************************************/
#ifndef __FTCONFIG_H__ #ifndef FTCONFIG_H_
#define __FTCONFIG_H__ #define FTCONFIG_H_
#include <ft2build.h> #include <ft2build.h>
#include FT_CONFIG_OPTIONS_H #include FT_CONFIG_OPTIONS_H
@ -52,7 +52,7 @@ FT_BEGIN_HEADER
/* These macros can be toggled to suit a specific system. The current */ /* These macros can be toggled to suit a specific system. The current */
/* ones are defaults used to compile FreeType in an ANSI C environment */ /* ones are defaults used to compile FreeType in an ANSI C environment */
/* (16bit compilers are also supported). Copy this file to your own */ /* (16bit compilers are also supported). Copy this file to your own */
/* `freetype/builds/<system>' directory, and edit it to port the engine. */ /* `builds/<system>' directory, and edit it to port the engine. */
/* */ /* */
/*************************************************************************/ /*************************************************************************/
@ -89,7 +89,7 @@ FT_BEGIN_HEADER
/* is copied from default include/freetype/config/ftconfig.h. */ /* is copied from default include/freetype/config/ftconfig.h. */
/* If any improvement is required for this file, it should be */ /* If any improvement is required for this file, it should be */
/* applied to the original header file for the builders that */ /* applied to the original header file for the builders that */
/* does not use configure script. */ /* do not use configure script. */
/* The size of an `int' type. */ /* The size of an `int' type. */
#if FT_UINT_MAX == 0xFFFFUL #if FT_UINT_MAX == 0xFFFFUL
@ -117,10 +117,6 @@ FT_BEGIN_HEADER
#endif /* !FT_USE_AUTOCONF_SIZEOF_TYPES */ #endif /* !FT_USE_AUTOCONF_SIZEOF_TYPES */
/* Preferred alignment of data */
#define FT_ALIGNMENT 8
/* FT_UNUSED is a macro used to indicate that a given parameter is not */ /* 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 */ /* used -- this is only used to get rid of unpleasant compiler warnings */
#ifndef FT_UNUSED #ifndef FT_UNUSED
@ -146,15 +142,17 @@ FT_BEGIN_HEADER
/* This is the only necessary change, so it is defined here instead */ /* This is the only necessary change, so it is defined here instead */
/* providing a new configuration file. */ /* providing a new configuration file. */
/* */ /* */
#if ( defined( __APPLE__ ) && !defined( DARWIN_NO_CARBON ) ) || \ #if defined( __APPLE__ ) || ( defined( __MWERKS__ ) && defined( macintosh ) )
( defined( __MWERKS__ ) && defined( macintosh ) )
/* no Carbon frameworks for 64bit 10.4.x */ /* 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" #include "AvailabilityMacros.h"
#endif
#if defined( __LP64__ ) && \ #if defined( __LP64__ ) && \
( MAC_OS_X_VERSION_MIN_REQUIRED <= MAC_OS_X_VERSION_10_4 ) ( MAC_OS_X_VERSION_MIN_REQUIRED <= MAC_OS_X_VERSION_10_4 )
#define DARWIN_NO_CARBON 1 /undef FT_MACINTOSH
#else
#define FT_MACINTOSH 1
#endif #endif
#elif defined( __SC__ ) || defined( __MRC__ ) #elif defined( __SC__ ) || defined( __MRC__ )
@ -177,13 +175,89 @@ FT_BEGIN_HEADER
/*************************************************************************/ /*************************************************************************/
/* */ /* */
/* IntN types */ /* <Section> */
/* basic_types */
/* */ /* */
/* Used to guarantee the size of some specific integers. */ /*************************************************************************/
/*************************************************************************/
/* */
/* <Type> */
/* FT_Int16 */
/* */
/* <Description> */
/* A typedef for a 16bit signed integer type. */
/* */ /* */
typedef signed short FT_Int16; typedef signed short FT_Int16;
/*************************************************************************/
/* */
/* <Type> */
/* FT_UInt16 */
/* */
/* <Description> */
/* A typedef for a 16bit unsigned integer type. */
/* */
typedef unsigned short FT_UInt16; 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 #if FT_SIZEOF_INT == 4
typedef signed int FT_Int32; typedef signed int FT_Int32;
@ -220,12 +294,29 @@ FT_BEGIN_HEADER
/* FT_LONG64 must be defined if a 64-bit type is available */ /* FT_LONG64 must be defined if a 64-bit type is available */
#define FT_LONG64 #define FT_LONG64
#define FT_INT64 long #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( __STDC_VERSION__ ) && __STDC_VERSION__ >= 199901L
#define FT_LONG64
#define FT_INT64 long long int
#define FT_UINT64 unsigned long long int
#elif defined( _MSC_VER ) && _MSC_VER >= 900 /* Visual C++ (and Intel C++) */ #elif defined( _MSC_VER ) && _MSC_VER >= 900 /* Visual C++ (and Intel C++) */
/* this compiler provides the __int64 type */ /* this compiler provides the __int64 type */
#define FT_LONG64 #define FT_LONG64
#define FT_INT64 __int64 #define FT_INT64 __int64
#define FT_UINT64 unsigned __int64
#elif defined( __BORLANDC__ ) /* Borland C++ */ #elif defined( __BORLANDC__ ) /* Borland C++ */
@ -235,6 +326,7 @@ FT_BEGIN_HEADER
/* this compiler provides the __int64 type */ /* this compiler provides the __int64 type */
#define FT_LONG64 #define FT_LONG64
#define FT_INT64 __int64 #define FT_INT64 __int64
#define FT_UINT64 unsigned __int64
#elif defined( __WATCOMC__ ) /* Watcom C++ */ #elif defined( __WATCOMC__ ) /* Watcom C++ */
@ -244,37 +336,30 @@ FT_BEGIN_HEADER
#define FT_LONG64 #define FT_LONG64
#define FT_INT64 long long int #define FT_INT64 long long int
#define FT_UINT64 unsigned long long int
#elif defined( __GNUC__ ) #elif defined( __GNUC__ )
/* GCC provides the `long long' type */ /* GCC provides the `long long' type */
#define FT_LONG64 #define FT_LONG64
#define FT_INT64 long long int #define FT_INT64 long long int
#define FT_UINT64 unsigned long long int
#endif /* __STDC_VERSION__ >= 199901L */
#endif /* FT_SIZEOF_LONG == 8 */ #endif /* FT_SIZEOF_LONG == 8 */
#ifdef FT_LONG64
typedef FT_INT64 FT_Int64;
typedef FT_UINT64 FT_UInt64;
#endif
/*************************************************************************/ /*************************************************************************/
/* */ /* */
/* A 64-bit data type will create compilation problems if you compile */ /* miscellaneous */
/* in strict ANSI mode. To avoid them, we disable its use if __STDC__ */
/* is defined. You can however ignore this rule by defining the */
/* FT_CONFIG_OPTION_FORCE_INT64 configuration macro. */
/* */ /* */
#if defined( FT_LONG64 ) && !defined( FT_CONFIG_OPTION_FORCE_INT64 ) /*************************************************************************/
#ifdef __STDC__
/* Undefine the 64-bit macros in strict ANSI compilation mode. */
/* Since `#undef' doesn't survive in configuration header files */
/* we use the postprocessing facility of AC_CONFIG_HEADERS to */
/* replace the leading `/' with `#'. */
/undef FT_LONG64
/undef FT_INT64
#endif /* __STDC__ */
#endif /* FT_LONG64 && !FT_CONFIG_OPTION_FORCE_INT64 */
#define FT_BEGIN_STMNT do { #define FT_BEGIN_STMNT do {
@ -282,74 +367,13 @@ FT_BEGIN_HEADER
#define FT_DUMMY_STMNT FT_BEGIN_STMNT FT_END_STMNT #define FT_DUMMY_STMNT FT_BEGIN_STMNT FT_END_STMNT
#ifndef FT_CONFIG_OPTION_NO_ASSEMBLER /* typeof condition taken from gnulib's `intprops.h' header file */
/* Provide assembler fragments for performance-critical functions. */ #if ( __GNUC__ >= 2 || \
/* These must be defined `static __inline__' with GCC. */ defined( __IBM__TYPEOF__ ) || \
( __SUNPRO_C >= 0x5110 && !__STDC__ ) )
#ifdef __GNUC__ #define FT_TYPEOF( type ) (__typeof__ (type))
#else
#if defined( __arm__ ) && !defined( __thumb__ ) #define FT_TYPEOF( type ) /* empty */
#define FT_MULFIX_ASSEMBLER FT_MulFix_arm
static __inline__ FT_Int32
FT_MulFix_arm( FT_Int32 a,
FT_Int32 b )
{
register FT_Int32 t, t2;
asm __volatile__ (
"smull %1, %2, %4, %3\n\t" /* (lo=%1,hi=%2) = a*b */
"mov %0, %2, asr #31\n\t" /* %0 = (hi >> 31) */
"add %0, %0, #0x8000\n\t" /* %0 += 0x8000 */
"adds %1, %1, %0\n\t" /* %1 += %0 */
"adc %2, %2, #0\n\t" /* %2 += carry */
"mov %0, %1, lsr #16\n\t" /* %0 = %1 >> 16 */
"orr %0, %0, %2, lsl #16\n\t" /* %0 |= %2 << 16 */
: "=r"(a), "=&r"(t2), "=&r"(t)
: "r"(a), "r"(b) );
return a;
}
#endif /* __arm__ && !__thumb__ */
#if defined( i386 )
#define FT_MULFIX_ASSEMBLER FT_MulFix_i386
static __inline__ FT_Int32
FT_MulFix_i386( FT_Int32 a,
FT_Int32 b )
{
register FT_Int32 result;
__asm__ __volatile__ (
"imul %%edx\n"
"movl %%edx, %%ecx\n"
"sarl $31, %%ecx\n"
"addl $0x8000, %%ecx\n"
"addl %%ecx, %%eax\n"
"adcl $0, %%edx\n"
"shrl $16, %%eax\n"
"shll $16, %%edx\n"
"addl %%edx, %%eax\n"
: "=a"(result), "+d"(b)
: "a"(a)
: "%ecx" );
return result;
}
#endif /* i386 */
#endif /* __GNUC__ */
#endif /* !FT_CONFIG_OPTION_NO_ASSEMBLER */
#ifdef FT_CONFIG_OPTION_INLINE_MULFIX
#ifdef FT_MULFIX_ASSEMBLER
#define FT_MULFIX_INLINED FT_MULFIX_ASSEMBLER
#endif
#endif #endif
@ -370,6 +394,9 @@ FT_BEGIN_HEADER
#endif /* FT_MAKE_OPTION_SINGLE_OBJECT */ #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 #ifndef FT_BASE
@ -470,7 +497,7 @@ FT_BEGIN_HEADER
FT_END_HEADER FT_END_HEADER
#endif /* __FTCONFIG_H__ */ #endif /* FTCONFIG_H_ */
/* END */ /* END */

View file

@ -4,7 +4,7 @@
/* */ /* */
/* Unix-specific FreeType low-level system interface (body). */ /* Unix-specific FreeType low-level system interface (body). */
/* */ /* */
/* Copyright 1996-2001, 2002, 2004, 2005, 2006, 2007, 2008 by */ /* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -235,7 +235,7 @@
if ( !stream ) if ( !stream )
return FT_Err_Invalid_Stream_Handle; return FT_THROW( Invalid_Stream_Handle );
/* open the file */ /* open the file */
file = open( filepathname, O_RDONLY ); file = open( filepathname, O_RDONLY );
@ -243,7 +243,7 @@
{ {
FT_ERROR(( "FT_Stream_Open:" )); FT_ERROR(( "FT_Stream_Open:" ));
FT_ERROR(( " could not open `%s'\n", filepathname )); FT_ERROR(( " could not open `%s'\n", filepathname ));
return FT_Err_Cannot_Open_Resource; return FT_THROW( Cannot_Open_Resource );
} }
/* Here we ensure that a "fork" will _not_ duplicate */ /* Here we ensure that a "fork" will _not_ duplicate */
@ -268,9 +268,9 @@
/* XXX: TODO -- real 64bit platform support */ /* XXX: TODO -- real 64bit platform support */
/* */ /* */
/* `stream->size' is typedef'd to unsigned long (in */ /* `stream->size' is typedef'd to unsigned long (in `ftsystem.h'); */
/* freetype/ftsystem.h); `stat_buf.st_size', however, is usually */ /* `stat_buf.st_size', however, is usually typedef'd to off_t */
/* typedef'd to off_t (in sys/stat.h). */ /* (in sys/stat.h). */
/* On some platforms, the former is 32bit and the latter is 64bit. */ /* On some platforms, the former is 32bit and the latter is 64bit. */
/* To avoid overflow caused by fonts in huge files larger than */ /* To avoid overflow caused by fonts in huge files larger than */
/* 2GB, do a test. Temporary fix proposed by Sean McBride. */ /* 2GB, do a test. Temporary fix proposed by Sean McBride. */
@ -317,7 +317,8 @@
} }
total_read_count = 0; total_read_count = 0;
do { do
{
ssize_t read_count; ssize_t read_count;
@ -365,7 +366,7 @@
stream->size = 0; stream->size = 0;
stream->pos = 0; stream->pos = 0;
return FT_Err_Cannot_Open_Stream; return FT_THROW( Cannot_Open_Stream );
} }
@ -417,4 +418,3 @@
/* END */ /* END */

View file

@ -1,7 +1,7 @@
#!/bin/sh #!/bin/sh
# install - install a program, script, or datafile # install - install a program, script, or datafile
scriptversion=2006-12-25.00 scriptversion=2013-12-25.23; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was # This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the # later released in X11R6 (xc/config/util/install.sh) with the
@ -35,25 +35,21 @@ scriptversion=2006-12-25.00
# FSF changes to this file are in the public domain. # FSF changes to this file are in the public domain.
# #
# Calling this script install-sh is preferred over install.sh, to prevent # Calling this script install-sh is preferred over install.sh, to prevent
# `make' implicit rules from creating a file called install from it # 'make' implicit rules from creating a file called install from it
# when there is no Makefile. # when there is no Makefile.
# #
# This script is compatible with the BSD install script, but was written # This script is compatible with the BSD install script, but was written
# from scratch. # from scratch.
tab=' '
nl=' nl='
' '
IFS=" "" $nl" IFS=" $tab$nl"
# set DOITPROG to echo to test this script # Set DOITPROG to "echo" to test this script.
# Don't use :- since 4.3BSD and earlier shells don't like it.
doit=${DOITPROG-} doit=${DOITPROG-}
if test -z "$doit"; then doit_exec=${doit:-exec}
doit_exec=exec
else
doit_exec=$doit
fi
# Put in absolute file names if you don't have them in your path; # Put in absolute file names if you don't have them in your path;
# or use environment vars. # or use environment vars.
@ -68,17 +64,6 @@ mvprog=${MVPROG-mv}
rmprog=${RMPROG-rm} rmprog=${RMPROG-rm}
stripprog=${STRIPPROG-strip} stripprog=${STRIPPROG-strip}
posix_glob='?'
initialize_posix_glob='
test "$posix_glob" != "?" || {
if (set -f) 2>/dev/null; then
posix_glob=
else
posix_glob=:
fi
}
'
posix_mkdir= posix_mkdir=
# Desired mode of installed file. # Desired mode of installed file.
@ -97,7 +82,7 @@ dir_arg=
dst_arg= dst_arg=
copy_on_change=false copy_on_change=false
no_target_directory= is_target_a_directory=possibly
usage="\ usage="\
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
@ -143,8 +128,7 @@ while test $# -ne 0; do
-m) mode=$2 -m) mode=$2
case $mode in case $mode in
*' '* | *' '* | *' *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)
'* | *'*'* | *'?'* | *'['*)
echo "$0: invalid mode: $mode" >&2 echo "$0: invalid mode: $mode" >&2
exit 1;; exit 1;;
esac esac
@ -155,10 +139,16 @@ while test $# -ne 0; do
-s) stripcmd=$stripprog;; -s) stripcmd=$stripprog;;
-t) dst_arg=$2 -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;; shift;;
-T) no_target_directory=true;; -T) is_target_a_directory=never;;
--version) echo "$0 $scriptversion"; exit $?;; --version) echo "$0 $scriptversion"; exit $?;;
@ -173,6 +163,16 @@ while test $# -ne 0; do
shift shift
done 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 if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
# When -d is used, all remaining arguments are directories to create. # When -d is used, all remaining arguments are directories to create.
# When -t is used, the destination is already specified. # When -t is used, the destination is already specified.
@ -186,6 +186,10 @@ if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
fi fi
shift # arg shift # arg
dst_arg=$arg dst_arg=$arg
# Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
done done
fi fi
@ -194,13 +198,26 @@ if test $# -eq 0; then
echo "$0: no input file specified." >&2 echo "$0: no input file specified." >&2
exit 1 exit 1
fi fi
# It's OK to call `install-sh -d' without argument. # It's OK to call 'install-sh -d' without argument.
# This can happen when creating conditional directories. # This can happen when creating conditional directories.
exit 0 exit 0
fi fi
if test -z "$dir_arg"; then if test -z "$dir_arg"; then
trap '(exit $?); exit' 1 2 13 15 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. # Set umask so as not to create temps with too-generous modes.
# However, 'strip' requires both read and write access to temps. # However, 'strip' requires both read and write access to temps.
@ -228,9 +245,9 @@ fi
for src for src
do do
# Protect names starting with `-'. # Protect names problematic for 'test' and other utilities.
case $src in case $src in
-*) src=./$src;; -* | [=\(\)!]) src=./$src;;
esac esac
if test -n "$dir_arg"; then if test -n "$dir_arg"; then
@ -252,17 +269,12 @@ do
echo "$0: no destination specified." >&2 echo "$0: no destination specified." >&2
exit 1 exit 1
fi fi
dst=$dst_arg dst=$dst_arg
# Protect names starting with `-'.
case $dst in
-*) dst=./$dst;;
esac
# If destination is a directory, append the input filename; won't work # If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored. # if double slashes aren't ignored.
if test -d "$dst"; then if test -d "$dst"; then
if test -n "$no_target_directory"; then if test "$is_target_a_directory" = never; then
echo "$0: $dst_arg: Is a directory" >&2 echo "$0: $dst_arg: Is a directory" >&2
exit 1 exit 1
fi fi
@ -270,33 +282,7 @@ do
dst=$dstdir/`basename "$src"` dst=$dstdir/`basename "$src"`
dstdir_status=0 dstdir_status=0
else else
# Prefer dirname, but fall back on a substitute if dirname fails. dstdir=`dirname "$dst"`
dstdir=`
(dirname "$dst") 2>/dev/null ||
expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$dst" : 'X\(//\)[^/]' \| \
X"$dst" : 'X\(//\)$' \| \
X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
echo X"$dst" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
}
/^X\(\/\/\)[^/].*/{
s//\1/
q
}
/^X\(\/\/\)$/{
s//\1/
q
}
/^X\(\/\).*/{
s//\1/
q
}
s/.*/./; q'
`
test -d "$dstdir" test -d "$dstdir"
dstdir_status=$? dstdir_status=$?
fi fi
@ -347,7 +333,7 @@ do
if test -z "$dir_arg" || { if test -z "$dir_arg" || {
# Check for POSIX incompatibilities with -m. # Check for POSIX incompatibilities with -m.
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
# other-writeable bit of parent directory when it shouldn't. # other-writable bit of parent directory when it shouldn't.
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory. # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
ls_ld_tmpdir=`ls -ld "$tmpdir"` ls_ld_tmpdir=`ls -ld "$tmpdir"`
case $ls_ld_tmpdir in case $ls_ld_tmpdir in
@ -385,25 +371,23 @@ do
case $dstdir in case $dstdir in
/*) prefix='/';; /*) prefix='/';;
-*) prefix='./';; [-=\(\)!]*) prefix='./';;
*) prefix='';; *) prefix='';;
esac esac
eval "$initialize_posix_glob"
oIFS=$IFS oIFS=$IFS
IFS=/ IFS=/
$posix_glob set -f set -f
set fnord $dstdir set fnord $dstdir
shift shift
$posix_glob set +f set +f
IFS=$oIFS IFS=$oIFS
prefixes= prefixes=
for d for d
do do
test -z "$d" && continue test X"$d" = X && continue
prefix=$prefix$d prefix=$prefix$d
if test -d "$prefix"; then if test -d "$prefix"; then
@ -467,13 +451,10 @@ do
if $copy_on_change && if $copy_on_change &&
old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
set -f &&
eval "$initialize_posix_glob" &&
$posix_glob set -f &&
set X $old && old=:$2:$4:$5:$6 && set X $old && old=:$2:$4:$5:$6 &&
set X $new && new=:$2:$4:$5:$6 && set X $new && new=:$2:$4:$5:$6 &&
$posix_glob set +f && set +f &&
test "$old" = "$new" && test "$old" = "$new" &&
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
then then
@ -515,5 +496,6 @@ done
# eval: (add-hook 'write-file-hooks 'time-stamp) # eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion=" # time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-end: "$" # time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End: # End:

View file

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2002, 2003, 2006 by # Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -24,16 +24,21 @@
# Unix installation and deinstallation targets. # Unix installation and deinstallation targets.
# #
# Note that we no longer install internal headers, and we remove any # Note that we remove any data found in `$(includedir)/freetype2' before
# `internal' subdirectory found in `$(includedir)/freetype2/freetype'. # installing new files to avoid interferences with files installed by
# previous FreeType versions (which use slightly different locations).
#
# We also remove `$(includedir)/ft2build.h' for the same reason.
# #
install: $(PROJECT_LIBRARY) install: $(PROJECT_LIBRARY)
-$(DELDIR) $(DESTDIR)$(includedir)/freetype2
-$(DELETE) $(DESTDIR)$(includedir)/ft2build.h
$(MKINSTALLDIRS) $(DESTDIR)$(libdir) \ $(MKINSTALLDIRS) $(DESTDIR)$(libdir) \
$(DESTDIR)$(libdir)/pkgconfig \ $(DESTDIR)$(libdir)/pkgconfig \
$(DESTDIR)$(includedir)/freetype2/freetype/config \ $(DESTDIR)$(includedir)/freetype2/freetype/config \
$(DESTDIR)$(includedir)/freetype2/freetype/cache \
$(DESTDIR)$(bindir) \ $(DESTDIR)$(bindir) \
$(DESTDIR)$(datadir)/aclocal $(DESTDIR)$(datadir)/aclocal \
$(DESTDIR)$(mandir)/man1
$(LIBTOOL) --mode=install $(INSTALL) \ $(LIBTOOL) --mode=install $(INSTALL) \
$(PROJECT_LIBRARY) $(DESTDIR)$(libdir) $(PROJECT_LIBRARY) $(DESTDIR)$(libdir)
-for P in $(PUBLIC_H) ; do \ -for P in $(PUBLIC_H) ; do \
@ -44,12 +49,8 @@ install: $(PROJECT_LIBRARY)
$(INSTALL_DATA) \ $(INSTALL_DATA) \
$$P $(DESTDIR)$(includedir)/freetype2/freetype/config ; \ $$P $(DESTDIR)$(includedir)/freetype2/freetype/config ; \
done done
-$(DELETE) $(DESTDIR)$(includedir)/freetype2/freetype/cache/* $(INSTALL_DATA) $(TOP_DIR)/include/ft2build.h \
-$(DELDIR) $(DESTDIR)$(includedir)/freetype2/freetype/cache $(DESTDIR)$(includedir)/freetype2/ft2build.h
-$(DELETE) $(DESTDIR)$(includedir)/freetype2/freetype/internal/*
-$(DELDIR) $(DESTDIR)$(includedir)/freetype2/freetype/internal
$(INSTALL_DATA) $(BUILD_DIR)/ft2unix.h \
$(DESTDIR)$(includedir)/ft2build.h
$(INSTALL_DATA) $(OBJ_BUILD)/ftconfig.h \ $(INSTALL_DATA) $(OBJ_BUILD)/ftconfig.h \
$(DESTDIR)$(includedir)/freetype2/freetype/config/ftconfig.h $(DESTDIR)$(includedir)/freetype2/freetype/config/ftconfig.h
$(INSTALL_DATA) $(OBJ_DIR)/ftmodule.h \ $(INSTALL_DATA) $(OBJ_DIR)/ftmodule.h \
@ -60,19 +61,17 @@ install: $(PROJECT_LIBRARY)
$(DESTDIR)$(datadir)/aclocal/freetype2.m4 $(DESTDIR)$(datadir)/aclocal/freetype2.m4
$(INSTALL_SCRIPT) -m 644 $(OBJ_BUILD)/freetype2.pc \ $(INSTALL_SCRIPT) -m 644 $(OBJ_BUILD)/freetype2.pc \
$(DESTDIR)$(libdir)/pkgconfig/freetype2.pc $(DESTDIR)$(libdir)/pkgconfig/freetype2.pc
$(INSTALL_DATA) $(TOP_DIR)/docs/freetype-config.1 \
$(DESTDIR)$(mandir)/man1/freetype-config.1
uninstall: uninstall:
-$(LIBTOOL) --mode=uninstall $(RM) $(DESTDIR)$(libdir)/$(LIBRARY).$A -$(LIBTOOL) --mode=uninstall $(RM) $(DESTDIR)$(libdir)/$(LIBRARY).$A
-$(DELETE) $(DESTDIR)$(includedir)/freetype2/freetype/config/*
-$(DELDIR) $(DESTDIR)$(includedir)/freetype2/freetype/config
-$(DELETE) $(DESTDIR)$(includedir)/freetype2/freetype/*
-$(DELDIR) $(DESTDIR)$(includedir)/freetype2/freetype
-$(DELDIR) $(DESTDIR)$(includedir)/freetype2 -$(DELDIR) $(DESTDIR)$(includedir)/freetype2
-$(DELETE) $(DESTDIR)$(includedir)/ft2build.h
-$(DELETE) $(DESTDIR)$(bindir)/freetype-config -$(DELETE) $(DESTDIR)$(bindir)/freetype-config
-$(DELETE) $(DESTDIR)$(datadir)/aclocal/freetype2.m4 -$(DELETE) $(DESTDIR)$(datadir)/aclocal/freetype2.m4
-$(DELETE) $(DESTDIR)$(libdir)/pkgconfig/freetype2.pc -$(DELETE) $(DESTDIR)$(libdir)/pkgconfig/freetype2.pc
-$(DELETE) $(DESTDIR)$(mandir)/man1/freetype-config.1
check: check:
@ -90,7 +89,6 @@ clean_project_unix:
distclean_project_unix: clean_project_unix distclean_project_unix: clean_project_unix
-$(DELETE) $(PROJECT_LIBRARY) -$(DELETE) $(PROJECT_LIBRARY)
-$(DELETE) $(OBJ_DIR)/.libs/*
-$(DELDIR) $(OBJ_DIR)/.libs -$(DELDIR) $(OBJ_DIR)/.libs
-$(DELETE) *.orig *~ core *.core $(DISTCLEAN) -$(DELETE) *.orig *~ core *.core $(DISTCLEAN)

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,161 +0,0 @@
#! /bin/sh
# mkinstalldirs --- make directory hierarchy
scriptversion=2006-05-11.19
# Original author: Noah Friedman <friedman@prep.ai.mit.edu>
# Created: 1993-05-16
# Public domain.
#
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
nl='
'
IFS=" "" $nl"
errstatus=0
dirmode=
usage="\
Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ...
Create each directory DIR (with mode MODE, if specified), including all
leading file name components.
Report bugs to <bug-automake@gnu.org>."
# process command line arguments
while test $# -gt 0 ; do
case $1 in
-h | --help | --h*) # -h for help
echo "$usage"
exit $?
;;
-m) # -m PERM arg
shift
test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
dirmode=$1
shift
;;
--version)
echo "$0 $scriptversion"
exit $?
;;
--) # stop option processing
shift
break
;;
-*) # unknown option
echo "$usage" 1>&2
exit 1
;;
*) # first non-opt arg
break
;;
esac
done
for file
do
if test -d "$file"; then
shift
else
break
fi
done
case $# in
0) exit 0 ;;
esac
# Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and
# mkdir -p a/c at the same time, both will detect that a is missing,
# one will create a, then the other will try to create a and die with
# a "File exists" error. This is a problem when calling mkinstalldirs
# from a parallel make. We use --version in the probe to restrict
# ourselves to GNU mkdir, which is thread-safe.
case $dirmode in
'')
if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
echo "mkdir -p -- $*"
exec mkdir -p -- "$@"
else
# On NextStep and OpenStep, the `mkdir' command does not
# recognize any option. It will interpret all options as
# directories to create, and then abort because `.' already
# exists.
test -d ./-p && rmdir ./-p
test -d ./--version && rmdir ./--version
fi
;;
*)
if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 &&
test ! -d ./--version; then
echo "mkdir -m $dirmode -p -- $*"
exec mkdir -m "$dirmode" -p -- "$@"
else
# Clean up after NextStep and OpenStep mkdir.
for d in ./-m ./-p ./--version "./$dirmode";
do
test -d $d && rmdir $d
done
fi
;;
esac
for file
do
case $file in
/*) pathcomp=/ ;;
*) pathcomp= ;;
esac
oIFS=$IFS
IFS=/
set fnord $file
shift
IFS=$oIFS
for d
do
test "x$d" = x && continue
pathcomp=$pathcomp$d
case $pathcomp in
-*) pathcomp=./$pathcomp ;;
esac
if test ! -d "$pathcomp"; then
echo "mkdir $pathcomp"
mkdir "$pathcomp" || lasterr=$?
if test ! -d "$pathcomp"; then
errstatus=$lasterr
else
if test ! -z "$dirmode"; then
echo "chmod $dirmode $pathcomp"
lasterr=
chmod "$dirmode" "$pathcomp" || lasterr=$?
if test ! -z "$lasterr"; then
errstatus=$lasterr
fi
fi
fi
fi
pathcomp=$pathcomp/
done
done
exit $errstatus
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-end: "$"
# End:

View 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

Some files were not shown because too many files have changed in this diff Show more