Browse Source

Merge branch 'release/0.0.0'

parent
commit
458a527b2a
100 changed files with 88487 additions and 0 deletions
  1. 71
    0
      .gitignore
  2. 48
    0
      CMakeLists.txt
  3. 67
    0
      README.md
  4. 253
    0
      lib/freetype/CMakeLists.txt
  5. 5159
    0
      lib/freetype/ChangeLog
  6. 2613
    0
      lib/freetype/ChangeLog.20
  7. 9439
    0
      lib/freetype/ChangeLog.21
  8. 2837
    0
      lib/freetype/ChangeLog.22
  9. 7948
    0
      lib/freetype/ChangeLog.23
  10. 6360
    0
      lib/freetype/ChangeLog.24
  11. 204
    0
      lib/freetype/Jamfile
  12. 71
    0
      lib/freetype/Jamrules
  13. 34
    0
      lib/freetype/Makefile
  14. 83
    0
      lib/freetype/README
  15. 50
    0
      lib/freetype/README.git
  16. 166
    0
      lib/freetype/autogen.sh
  17. 109
    0
      lib/freetype/builds/amiga/README
  18. 55
    0
      lib/freetype/builds/amiga/include/config/ftconfig.h
  19. 160
    0
      lib/freetype/builds/amiga/include/config/ftmodule.h
  20. 299
    0
      lib/freetype/builds/amiga/makefile
  21. 303
    0
      lib/freetype/builds/amiga/makefile.os4
  22. 303
    0
      lib/freetype/builds/amiga/smakefile
  23. 297
    0
      lib/freetype/builds/amiga/src/base/ftdebug.c
  24. 530
    0
      lib/freetype/builds/amiga/src/base/ftsystem.c
  25. 74
    0
      lib/freetype/builds/ansi/ansi-def.mk
  26. 21
    0
      lib/freetype/builds/ansi/ansi.mk
  27. 20
    0
      lib/freetype/builds/atari/ATARI.H
  28. 37
    0
      lib/freetype/builds/atari/FNames.SIC
  29. 32
    0
      lib/freetype/builds/atari/FREETYPE.PRJ
  30. 51
    0
      lib/freetype/builds/atari/README.TXT
  31. 181
    0
      lib/freetype/builds/atari/deflinejoiner.awk
  32. 40
    0
      lib/freetype/builds/atari/gen-purec-patch.sh
  33. 76
    0
      lib/freetype/builds/beos/beos-def.mk
  34. 19
    0
      lib/freetype/builds/beos/beos.mk
  35. 41
    0
      lib/freetype/builds/beos/detect.mk
  36. 275
    0
      lib/freetype/builds/cmake/iOS.cmake
  37. 80
    0
      lib/freetype/builds/compiler/ansi-cc.mk
  38. 86
    0
      lib/freetype/builds/compiler/bcc-dev.mk
  39. 86
    0
      lib/freetype/builds/compiler/bcc.mk
  40. 77
    0
      lib/freetype/builds/compiler/emx.mk
  41. 95
    0
      lib/freetype/builds/compiler/gcc-dev.mk
  42. 77
    0
      lib/freetype/builds/compiler/gcc.mk
  43. 85
    0
      lib/freetype/builds/compiler/intelc.mk
  44. 83
    0
      lib/freetype/builds/compiler/unix-lcc.mk
  45. 76
    0
      lib/freetype/builds/compiler/visualage.mk
  46. 82
    0
      lib/freetype/builds/compiler/visualc.mk
  47. 81
    0
      lib/freetype/builds/compiler/watcom.mk
  48. 81
    0
      lib/freetype/builds/compiler/win-lcc.mk
  49. 154
    0
      lib/freetype/builds/detect.mk
  50. 142
    0
      lib/freetype/builds/dos/detect.mk
  51. 45
    0
      lib/freetype/builds/dos/dos-def.mk
  52. 21
    0
      lib/freetype/builds/dos/dos-emx.mk
  53. 21
    0
      lib/freetype/builds/dos/dos-gcc.mk
  54. 20
    0
      lib/freetype/builds/dos/dos-wat.mk
  55. 76
    0
      lib/freetype/builds/exports.mk
  56. 365
    0
      lib/freetype/builds/freetype.mk
  57. 42
    0
      lib/freetype/builds/link_dos.mk
  58. 42
    0
      lib/freetype/builds/link_std.mk
  59. 212
    0
      lib/freetype/builds/mac/FreeType.m68k_cfm.make.txt
  60. 211
    0
      lib/freetype/builds/mac/FreeType.m68k_far.make.txt
  61. 215
    0
      lib/freetype/builds/mac/FreeType.ppc_carbon.make.txt
  62. 216
    0
      lib/freetype/builds/mac/FreeType.ppc_classic.make.txt
  63. 401
    0
      lib/freetype/builds/mac/README
  64. 24
    0
      lib/freetype/builds/mac/ascii2mpw.py
  65. 36
    0
      lib/freetype/builds/mac/freetype-Info.plist
  66. 1194
    0
      lib/freetype/builds/mac/ftlib.prj.xml
  67. 1542
    0
      lib/freetype/builds/mac/ftmac.c
  68. 79
    0
      lib/freetype/builds/modules.mk
  69. 1
    0
      lib/freetype/builds/newline
  70. 73
    0
      lib/freetype/builds/os2/detect.mk
  71. 44
    0
      lib/freetype/builds/os2/os2-def.mk
  72. 30
    0
      lib/freetype/builds/os2/os2-dev.mk
  73. 26
    0
      lib/freetype/builds/os2/os2-gcc.mk
  74. 66
    0
      lib/freetype/builds/symbian/bld.inf
  75. 147
    0
      lib/freetype/builds/symbian/freetype.mmp
  76. 258
    0
      lib/freetype/builds/toplevel.mk
  77. 8605
    0
      lib/freetype/builds/unix/aclocal.m4
  78. 1421
    0
      lib/freetype/builds/unix/config.guess
  79. 1807
    0
      lib/freetype/builds/unix/config.sub
  80. 15857
    0
      lib/freetype/builds/unix/configure
  81. 1021
    0
      lib/freetype/builds/unix/configure.ac
  82. 1021
    0
      lib/freetype/builds/unix/configure.raw
  83. 93
    0
      lib/freetype/builds/unix/detect.mk
  84. 163
    0
      lib/freetype/builds/unix/freetype-config.in
  85. 14
    0
      lib/freetype/builds/unix/freetype2.in
  86. 194
    0
      lib/freetype/builds/unix/freetype2.m4
  87. 32
    0
      lib/freetype/builds/unix/ft-munmap.m4
  88. 480
    0
      lib/freetype/builds/unix/ftconfig.in
  89. 420
    0
      lib/freetype/builds/unix/ftsystem.c
  90. 480
    0
      lib/freetype/builds/unix/install-sh
  91. 97
    0
      lib/freetype/builds/unix/install.mk
  92. 11030
    0
      lib/freetype/builds/unix/ltmain.sh
  93. 161
    0
      lib/freetype/builds/unix/mkinstalldirs
  94. 199
    0
      lib/freetype/builds/unix/pkg.m4
  95. 114
    0
      lib/freetype/builds/unix/unix-cc.in
  96. 148
    0
      lib/freetype/builds/unix/unix-def.in
  97. 26
    0
      lib/freetype/builds/unix/unix-dev.mk
  98. 24
    0
      lib/freetype/builds/unix/unix-lcc.mk
  99. 62
    0
      lib/freetype/builds/unix/unix.mk
  100. 0
    0
      lib/freetype/builds/unix/unixddef.mk

+ 71
- 0
.gitignore View File

@@ -0,0 +1,71 @@
1
+build/
2
+debug/
3
+
4
+# Created by https://www.gitignore.io
5
+
6
+### C++ ###
7
+# Compiled Object files
8
+*.slo
9
+*.lo
10
+*.o
11
+*.obj
12
+
13
+# Precompiled Headers
14
+*.gch
15
+*.pch
16
+
17
+# Compiled Dynamic libraries
18
+*.so
19
+*.dylib
20
+*.dll
21
+
22
+# Fortran module files
23
+*.mod
24
+
25
+# Compiled Static libraries
26
+*.lai
27
+*.la
28
+*.a
29
+*.lib
30
+
31
+# Executables
32
+*.exe
33
+*.out
34
+*.app
35
+
36
+# Created by https://www.gitignore.io
37
+
38
+### Emacs ###
39
+# -*- mode: gitignore; -*-
40
+*~
41
+\#*\#
42
+/.emacs.desktop
43
+/.emacs.desktop.lock
44
+*.elc
45
+auto-save-list
46
+tramp
47
+.\#*
48
+
49
+# Org-mode
50
+.org-id-locations
51
+*_archive
52
+
53
+# flymake-mode
54
+*_flymake.*
55
+
56
+# eshell files
57
+/eshell/history
58
+/eshell/lastdir
59
+
60
+# elpa packages
61
+/elpa/
62
+
63
+# reftex files
64
+*.rel
65
+
66
+# AUCTeX auto folder
67
+/auto/
68
+
69
+# cask packages
70
+.cask/
71
+

+ 48
- 0
CMakeLists.txt View File

@@ -0,0 +1,48 @@
1
+cmake_minimum_required(VERSION 2.8)
2
+
3
+if(APPLE)
4
+  set(ENV{PKG_CONFIG_PATH} ${CMAKE_SOURCE_DIR}/pkgconfig)
5
+endif()
6
+
7
+PROJECT( oncgl )
8
+
9
+if(UNIX)
10
+  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -std=c++11")
11
+  set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g -std=c++11")
12
+  set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -std=c++11")
13
+endif()
14
+
15
+# adding dir contraining a cmakelists file
16
+add_subdirectory(lib/glfw)
17
+add_subdirectory(lib/soil)
18
+add_subdirectory(lib/glew)
19
+add_subdirectory(lib/freetype)
20
+
21
+include_directories(.)
22
+include_directories(src/)
23
+include_directories(lib/glew/include)
24
+include_directories(lib/glm)
25
+include_directories(lib/glfw/include)
26
+include_directories(lib/soil/inc)
27
+include_directories(lib/freetype/include)
28
+
29
+include_directories(${Assimp_SOURCE_DIR}/include)
30
+include_directories(${Assimp_SOURCE_DIR}/code)
31
+
32
+link_directories(${Assimp_BINARY_DIR})
33
+link_directories(${Assimp_BINARY_DIR}/lib/)
34
+
35
+FILE(GLOB_RECURSE oncgl_SRCS
36
+
37
+  lib/glew/src/glew.c
38
+
39
+  src/*.h
40
+  src/*.cc
41
+  )
42
+
43
+ADD_EXECUTABLE(oncgl ${oncgl_SRCS})
44
+
45
+target_link_libraries(oncgl glfw ${GLFW_LIBRARIES})
46
+target_link_libraries(oncgl soil)
47
+target_link_libraries(oncgl freetype)
48
+target_link_libraries(oncgl assimp)

+ 67
- 0
README.md View File

@@ -1,2 +1,69 @@
1 1
 # oncgl
2 2
 Some OpenGL experiments
3
+
4
+This is just a small experiment I wrote for a computergraphics course at my university.
5
+It is based on the following tutorials: 
6
+
7
+* http://ogldev.atspace.co.uk/
8
+* http://www.tomdalling.com/blog/category/modern-opengl/
9
+* http://learnopengl.com/
10
+
11
+I also used this project to lern C++.
12
+If you find any bug or improvement for my code please leave an issue.
13
+
14
+# Git Instructions
15
+
16
+This repository uses [git-flow](http://danielkummer.github.io/git-flow-cheatsheet/). Please make sure to always work in feature branches.
17
+
18
+## Setup
19
+
20
+1. Clone the repo
21
+2. `cd` into repo directory
22
+3. Run `git-flow init` accepting all default values
23
+
24
+## Working with git-flow
25
+
26
+1. Start a new feature with `git-flow feature start FEATURE_NAME` (this creates a new branch)
27
+2. Hack on your feature
28
+3. Finish your feature with `git-flow feature stop FEATURE_NAME` (this merges the branch into `develop`)
29
+
30
+# Dependencies
31
+
32
+This project includes all required libraries except assimp. You need to install assimp yourself.
33
+On Linux you should find assimp in your package manager.
34
+OS X users can install assimp using [homebrew](https://github.com/Homebrew/homebrew).
35
+Since I don't really care about windows I don't know how to install assimp on windows and I won't give instructions on how to build and run this project on windows machines.
36
+
37
+You also need cmake and gcc or clang to compile the project.
38
+OS X users also have to install pkg-config from homebrew.
39
+
40
+# Build Instructions
41
+
42
+To build the project run the following:
43
+
44
+```
45
+cd /path/to/repository
46
+mkdir build
47
+cd build
48
+cmake ..
49
+make
50
+```
51
+
52
+If you run the executable anywhere else but /build (like /build/release) make sure to adjust the path in /src/misc/constants.h and rebuild the project.
53
+
54
+# Code guidelines
55
+
56
+The code is formatted according to [google c++ style guide](https://google-styleguide.googlecode.com/svn/trunk/cppguide.html#General_Naming_Rules)
57
+
58
+# DONE
59
+
60
+* Loading models using assimp
61
+* Deferred shading
62
+* Render fonts
63
+
64
+# TODO
65
+
66
+* Add shadows
67
+* Work on performance
68
+* Read material-coefficients like shininess from objects
69
+* Use object colors if there is no texture

+ 253
- 0
lib/freetype/CMakeLists.txt View File

@@ -0,0 +1,253 @@
1
+# CMakeLists.txt
2
+#
3
+# Copyright 2013, 2014 by
4
+# David Turner, Robert Wilhelm, and Werner Lemberg.
5
+#
6
+# Written by John Cary <cary@txcorp.com>
7
+#
8
+# This file is part of the FreeType project, and may only be used, modified,
9
+# and distributed under the terms of the FreeType project license,
10
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
11
+# indicate that you have read the license and understand and accept it
12
+# fully.
13
+#
14
+#
15
+# Say
16
+#
17
+#   cmake CMakeLists.txt
18
+#
19
+# to create a Makefile that builds a static version of the library.
20
+#
21
+# For a dynamic library, use
22
+#
23
+#   cmake CMakeLists.txt -DBUILD_SHARED_LIBS:BOOL=true
24
+#
25
+# For a framework on OS X, use
26
+#
27
+#   cmake CMakeLists.txt -DBUILD_FRAMEWORK:BOOL=true -G Xcode
28
+#
29
+# instead.
30
+#
31
+# For an iOS static library, use
32
+#
33
+#   cmake CMakeLists.txt -DIOS_PLATFORM=OS -G Xcode
34
+#
35
+# or
36
+#
37
+#   cmake CMakeLists.txt -DIOS_PLATFORM=SIMULATOR -G Xcode
38
+#
39
+# Please refer to the cmake manual for further options, in particular, how
40
+# to modify compilation and linking parameters.
41
+#
42
+# Some notes.
43
+#
44
+# . `cmake' will overwrite FreeType's original (top-level) `Makefile' file.
45
+#
46
+# . You can use `cmake' directly on a freshly cloned FreeType git
47
+#   repository.
48
+#
49
+# . `CMakeLists.txt'  is provided as-is since it is not used by the
50
+#   developer team.
51
+
52
+
53
+cmake_minimum_required(VERSION 2.6)
54
+
55
+# CMAKE_TOOLCHAIN_FILE must be set before `project' is called, which
56
+# configures the base build environment and references the toolchain file
57
+if (APPLE)
58
+  if (DEFINED IOS_PLATFORM)
59
+    if (NOT "${IOS_PLATFORM}" STREQUAL "OS"
60
+        AND NOT "${IOS_PLATFORM}" STREQUAL "SIMULATOR")
61
+      message(FATAL_ERROR
62
+        "IOS_PLATFORM must be set to either OS or SIMULATOR")
63
+    endif ()
64
+    if (NOT "${CMAKE_GENERATOR}" STREQUAL "Xcode")
65
+      message(AUTHOR_WARNING
66
+        "You should use Xcode generator with IOS_PLATFORM enabled to get Universal builds.")
67
+    endif ()
68
+    if (BUILD_SHARED_LIBS)
69
+      message(FATAL_ERROR
70
+        "BUILD_SHARED_LIBS can not be on with IOS_PLATFORM enabled")
71
+    endif ()
72
+    if (BUILD_FRAMEWORK)
73
+      message(FATAL_ERROR
74
+        "BUILD_FRAMEWORK can not be on with IOS_PLATFORM enabled")
75
+    endif ()
76
+
77
+    # iOS only uses static libraries
78
+    set(BUILD_SHARED_LIBS OFF)
79
+
80
+    set(CMAKE_TOOLCHAIN_FILE
81
+      ${PROJECT_SOURCE_DIR}/builds/cmake/iOS.cmake)
82
+  endif ()
83
+else ()
84
+  if (DEFINED IOS_PLATFORM)
85
+    message(FATAL_ERROR "IOS_PLATFORM is not supported on this platform")
86
+  endif ()
87
+endif ()
88
+
89
+project(freetype)
90
+
91
+if (BUILD_FRAMEWORK)
92
+  if (NOT "${CMAKE_GENERATOR}" STREQUAL "Xcode")
93
+    message(FATAL_ERROR
94
+      "You should use Xcode generator with BUILD_FRAMEWORK enabled")
95
+  endif ()
96
+  set(CMAKE_OSX_ARCHITECTURES "$(ARCHS_STANDARD_32_64_BIT)")
97
+  set(BUILD_SHARED_LIBS ON)
98
+endif ()
99
+
100
+set(VERSION_MAJOR "2")
101
+set(VERSION_MINOR "5")
102
+set(VERSION_PATCH "5")
103
+set(PROJECT_VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH})
104
+
105
+# Compiler definitions for building the library
106
+add_definitions(-DFT2_BUILD_LIBRARY)
107
+
108
+# Specify library include directories
109
+include_directories("${PROJECT_SOURCE_DIR}/include")
110
+
111
+# Create the configuration file
112
+message(STATUS "Creating directory, ${PROJECT_BINARY_DIR}/include/freetype2.")
113
+file(MAKE_DIRECTORY ${PROJECT_BINARY_DIR}/include/freetype2)
114
+
115
+# For the auto-generated ftconfig.h file
116
+include_directories(BEFORE "${PROJECT_BINARY_DIR}/include/freetype2")
117
+message(STATUS "Creating ${PROJECT_BINARY_DIR}/include/freetype2/ftconfig.h.")
118
+execute_process(
119
+  COMMAND sed -e "s/FT_CONFIG_OPTIONS_H/<ftoption.h>/" -e "s/FT_CONFIG_STANDARD_LIBRARY_H/<ftstdlib.h>/" -e "s?/undef ?#undef ?"
120
+  INPUT_FILE ${PROJECT_SOURCE_DIR}/builds/unix/ftconfig.in
121
+  OUTPUT_FILE ${PROJECT_BINARY_DIR}/include/freetype2/ftconfig.h
122
+)
123
+
124
+file(GLOB PUBLIC_HEADERS "include/*.h")
125
+file(GLOB PUBLIC_CONFIG_HEADERS "include/config/*.h")
126
+file(GLOB PRIVATE_HEADERS "include/internal/*.h")
127
+
128
+set(BASE_SRCS
129
+  src/autofit/autofit.c
130
+  src/base/ftadvanc.c
131
+  src/base/ftbbox.c
132
+  src/base/ftbdf.c
133
+  src/base/ftbitmap.c
134
+  src/base/ftcalc.c
135
+  src/base/ftcid.c
136
+  src/base/ftdbgmem.c
137
+  src/base/ftdebug.c
138
+  src/base/ftfstype.c
139
+  src/base/ftgasp.c
140
+  src/base/ftgloadr.c
141
+  src/base/ftglyph.c
142
+  src/base/ftgxval.c
143
+  src/base/ftinit.c
144
+  src/base/ftlcdfil.c
145
+  src/base/ftmm.c
146
+  src/base/ftobjs.c
147
+  src/base/ftotval.c
148
+  src/base/ftoutln.c
149
+  src/base/ftpatent.c
150
+  src/base/ftpfr.c
151
+  src/base/ftrfork.c
152
+  src/base/ftsnames.c
153
+  src/base/ftstream.c
154
+  src/base/ftstroke.c
155
+  src/base/ftsynth.c
156
+  src/base/ftsystem.c
157
+  src/base/fttrigon.c
158
+  src/base/fttype1.c
159
+  src/base/ftutil.c
160
+  src/base/ftwinfnt.c
161
+  src/base/ftxf86.c
162
+  src/bdf/bdf.c
163
+  src/bzip2/ftbzip2.c
164
+  src/cache/ftcache.c
165
+  src/cff/cff.c
166
+  src/cid/type1cid.c
167
+  src/gzip/ftgzip.c
168
+  src/lzw/ftlzw.c
169
+  src/pcf/pcf.c
170
+  src/pfr/pfr.c
171
+  src/psaux/psaux.c
172
+  src/pshinter/pshinter.c
173
+  src/psnames/psmodule.c
174
+  src/raster/raster.c
175
+  src/sfnt/sfnt.c
176
+  src/smooth/smooth.c
177
+  src/truetype/truetype.c
178
+  src/type1/type1.c
179
+  src/type42/type42.c
180
+  src/winfonts/winfnt.c
181
+)
182
+
183
+include_directories("src/truetype")
184
+include_directories("src/sfnt")
185
+include_directories("src/autofit")
186
+include_directories("src/smooth")
187
+include_directories("src/raster")
188
+include_directories("src/psaux")
189
+include_directories("src/psnames")
190
+
191
+if (BUILD_FRAMEWORK)
192
+  set(BASE_SRCS
193
+    ${BASE_SRCS}
194
+    builds/mac/freetype-Info.plist
195
+  )
196
+endif ()
197
+
198
+add_library(freetype
199
+  ${PUBLIC_HEADERS}
200
+  ${PUBLIC_CONFIG_HEADERS}
201
+  ${PRIVATE_HEADERS}
202
+  ${BASE_SRCS}
203
+)
204
+
205
+if (BUILD_FRAMEWORK)
206
+  set_property(SOURCE ${PUBLIC_CONFIG_HEADERS}
207
+    PROPERTY MACOSX_PACKAGE_LOCATION Headers/config
208
+  )
209
+  set_target_properties(freetype PROPERTIES
210
+    FRAMEWORK TRUE
211
+    MACOSX_FRAMEWORK_INFO_PLIST builds/mac/freetype-Info.plist
212
+    PUBLIC_HEADER "${PUBLIC_HEADERS}"
213
+    XCODE_ATTRIBUTE_INSTALL_PATH "@rpath"
214
+  )
215
+endif ()
216
+
217
+# Installations
218
+# Note the trailing slash in the argument to the `DIRECTORY' directive
219
+install(DIRECTORY ${PROJECT_SOURCE_DIR}/include/
220
+  DESTINATION include/freetype2
221
+  PATTERN "internal" EXCLUDE
222
+)
223
+install(TARGETS freetype
224
+  RUNTIME DESTINATION bin
225
+  LIBRARY DESTINATION lib
226
+  ARCHIVE DESTINATION lib
227
+  FRAMEWORK DESTINATION Library/Frameworks
228
+)
229
+
230
+# Packaging
231
+# CPack version numbers for release tarball name.
232
+set(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR})
233
+set(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR})
234
+set(CPACK_PACKAGE_VERSION_PATCH ${VERSION_PATCH}})
235
+if (NOT DEFINED CPACK_PACKAGE_DESCRIPTION_SUMMARY)
236
+  set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${CMAKE_PROJECT_NAME}")
237
+endif ()
238
+if (NOT DEFINED CPACK_SOURCE_PACKAGE_FILE_NAME)
239
+  set(CPACK_SOURCE_PACKAGE_FILE_NAME
240
+    "${CMAKE_PROJECT_NAME}-${PROJECT_VERSION}-r${PROJECT_REV}"
241
+    CACHE INTERNAL "tarball basename"
242
+  )
243
+endif ()
244
+set(CPACK_SOURCE_GENERATOR TGZ)
245
+set(CPACK_SOURCE_IGNORE_FILES
246
+  "/CVS/;/.svn/;.swp$;.#;/#;/build/;/serial/;/ser/;/parallel/;/par/;~;/preconfig.out;/autom4te.cache/;/.config")
247
+set(CPACK_GENERATOR TGZ)
248
+include(CPack)
249
+
250
+# add make dist target
251
+add_custom_target(dist COMMAND ${CMAKE_MAKE_PROGRAM} package_source)
252
+
253
+# eof

+ 5159
- 0
lib/freetype/ChangeLog
File diff suppressed because it is too large
View File


+ 2613
- 0
lib/freetype/ChangeLog.20
File diff suppressed because it is too large
View File


+ 9439
- 0
lib/freetype/ChangeLog.21
File diff suppressed because it is too large
View File


+ 2837
- 0
lib/freetype/ChangeLog.22
File diff suppressed because it is too large
View File


+ 7948
- 0
lib/freetype/ChangeLog.23
File diff suppressed because it is too large
View File


+ 6360
- 0
lib/freetype/ChangeLog.24
File diff suppressed because it is too large
View File


+ 204
- 0
lib/freetype/Jamfile View File

@@ -0,0 +1,204 @@
1
+# FreeType 2 top Jamfile.
2
+#
3
+# Copyright 2001-2014 by
4
+# David Turner, Robert Wilhelm, and Werner Lemberg.
5
+#
6
+# This file is part of the FreeType project, and may only be used, modified,
7
+# and distributed under the terms of the FreeType project license,
8
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
9
+# indicate that you have read the license and understand and accept it
10
+# fully.
11
+
12
+
13
+# The HDRMACRO is already defined in FTJam and is used to add
14
+# the content of certain macros to the list of included header
15
+# files.
16
+#
17
+# We can compile FreeType 2 with classic Jam however thanks to
18
+# the following code
19
+#
20
+if ! $(JAM_TOOLSET)
21
+{
22
+  rule HDRMACRO
23
+  {
24
+    # nothing
25
+  }
26
+}
27
+
28
+
29
+# We need to invoke a SubDir rule if the FT2 source directory top is not the
30
+# current directory.  This allows us to build FreeType 2 as part of a larger
31
+# project easily.
32
+#
33
+if $(FT2_TOP) != $(DOT)
34
+{
35
+  SubDir  FT2_TOP ;
36
+}
37
+
38
+
39
+# The following macros define the include directory, the source directory,
40
+# and the final library name (without library extensions).  They can be
41
+# replaced by other definitions when the library is compiled as part of
42
+# a larger project.
43
+#
44
+
45
+# Name of FreeType include directory during compilation.
46
+# This is relative to FT2_TOP.
47
+#
48
+FT2_INCLUDE_DIR ?= include ;
49
+
50
+# Name of FreeType source directory during compilation.
51
+# This is relative to FT2_TOP.
52
+#
53
+FT2_SRC_DIR ?= src ;
54
+
55
+# Name of final library, without extension.
56
+#
57
+FT2_LIB ?= $(LIBPREFIX)freetype ;
58
+
59
+
60
+# Define FT2_BUILD_INCLUDE to point to your build-specific directory.
61
+# This is prepended to FT2_INCLUDE_DIR.  It can be used to specify
62
+# the location of a custom <ft2build.h> which will point to custom
63
+# versions of `ftmodule.h' and `ftoption.h', for example.
64
+#
65
+FT2_BUILD_INCLUDE ?= ;
66
+
67
+# The list of modules to compile on any given build of the library.
68
+# By default, this will contain _all_ modules defined in FT2_SRC_DIR.
69
+#
70
+# IMPORTANT: You'll need to change the content of `ftmodule.h' as well
71
+#            if you modify this list or provide your own.
72
+#
73
+FT2_COMPONENTS ?= autofit    # auto-fitter
74
+                  base       # base component (public APIs)
75
+                  bdf        # BDF font driver
76
+                  cache      # cache sub-system
77
+                  cff        # CFF/CEF font driver
78
+                  cid        # PostScript CID-keyed font driver
79
+                  pcf        # PCF font driver
80
+                  bzip2      # support for bzip2-compressed PCF font
81
+                  gzip       # support for gzip-compressed PCF font
82
+                  lzw        # support for LZW-compressed PCF font
83
+                  pfr        # PFR/TrueDoc font driver
84
+                  psaux      # common PostScript routines module
85
+                  pshinter   # PostScript hinter module
86
+                  psnames    # PostScript names handling
87
+                  raster     # monochrome rasterizer
88
+                  smooth     # anti-aliased rasterizer
89
+                  sfnt       # SFNT-based format support routines
90
+                  truetype   # TrueType font driver
91
+                  type1      # PostScript Type 1 font driver
92
+                  type42     # PostScript Type 42 (embedded TrueType) driver
93
+                  winfonts   # Windows FON/FNT font driver
94
+                  ;
95
+
96
+
97
+# Don't touch.
98
+#
99
+FT2_INCLUDE  = $(FT2_BUILD_INCLUDE)
100
+               [ FT2_SubDir $(FT2_INCLUDE_DIR) ] ;
101
+
102
+FT2_SRC      = [ FT2_SubDir $(FT2_SRC_DIR) ] ;
103
+
104
+# Location of API Reference Documentation
105
+#
106
+if $(DOC_DIR)
107
+{
108
+  DOC_DIR = $(DOCDIR:T) ;
109
+}
110
+else
111
+{
112
+  DOC_DIR = docs/reference ;
113
+}
114
+
115
+
116
+# Only used by FreeType developers.
117
+#
118
+if $(DEBUG_HINTER)
119
+{
120
+  CCFLAGS += -DDEBUG_HINTER ;
121
+}
122
+
123
+
124
+# We need `freetype2/include' in the current include path in order to
125
+# compile any part of FreeType 2.
126
+#: updating documentation for upcoming release
127
+
128
+HDRS += $(FT2_INCLUDE) ;
129
+
130
+
131
+# We need to #define FT2_BUILD_LIBRARY so that our sources find the
132
+# internal headers
133
+#
134
+DEFINES += FT2_BUILD_LIBRARY ;
135
+
136
+# Uncomment the following line if you want to build individual source files
137
+# for each FreeType 2 module.  This is only useful during development, and
138
+# is better defined as an environment variable anyway!
139
+#
140
+# FT2_MULTI = true ;
141
+
142
+
143
+# The file <config/ftheader.h> is used to define macros that are later used
144
+# in #include statements.  It needs to be parsed in order to record these
145
+# definitions.
146
+#
147
+HDRMACRO  [ FT2_SubDir  include freetype config ftheader.h ] ;
148
+HDRMACRO  [ FT2_SubDir  include freetype internal internal.h ] ;
149
+
150
+
151
+# Now include the Jamfile in `freetype2/src', used to drive the compilation
152
+# of each FreeType 2 component and/or module.
153
+#
154
+SubInclude  FT2_TOP $(FT2_SRC_DIR) ;
155
+
156
+# Handle the generation of the `ftexport.sym' file which contain the list
157
+# of exported symbols.  This can be used on Unix by libtool.
158
+#
159
+SubInclude FT2_TOP $(FT2_SRC_DIR) tools ;
160
+
161
+rule GenExportSymbols
162
+{
163
+  local  apinames = apinames$(SUFEXE) ;
164
+  local  headers  = [ Glob $(2) : *.h ] ;
165
+
166
+  LOCATE on $(1) = $(ALL_LOCATE_TARGET) ;
167
+
168
+  APINAMES on $(1) = apinames$(SUFEXE) ;
169
+
170
+  Depends            $(1) : $(apinames) $(headers) ;
171
+  GenExportSymbols1  $(1) : $(headers) ;
172
+  Clean              clean : $(1) ;
173
+}
174
+
175
+actions GenExportSymbols1 bind APINAMES
176
+{
177
+  $(APINAMES) $(2) > $(1)
178
+}
179
+
180
+GenExportSymbols  ftexport.sym : include include/cache ;
181
+
182
+# Test files (hinter debugging).  Only used by FreeType developers.
183
+#
184
+if $(DEBUG_HINTER)
185
+{
186
+  SubInclude FT2_TOP tests ;
187
+}
188
+
189
+rule RefDoc
190
+{
191
+  Depends  $1 : all ;
192
+  NotFile  $1 ;
193
+  Always   $1 ;
194
+}
195
+
196
+actions RefDoc
197
+{
198
+  python $(FT2_SRC)/tools/docmaker/docmaker.py --prefix=ft2 --title=FreeType-2.5.5 --output=$(DOC_DIR) $(FT2_INCLUDE)/*.h $(FT2_INCLUDE)/config/*.h
199
+}
200
+
201
+RefDoc  refdoc ;
202
+
203
+
204
+# end of top Jamfile

+ 71
- 0
lib/freetype/Jamrules View File

@@ -0,0 +1,71 @@
1
+# FreeType 2 JamRules.
2
+#
3
+# Copyright 2001, 2002, 2003 by
4
+# David Turner, Robert Wilhelm, and Werner Lemberg.
5
+#
6
+# This file is part of the FreeType project, and may only be used, modified,
7
+# and distributed under the terms of the FreeType project license,
8
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
9
+# indicate that you have read the license and understand and accept it
10
+# fully.
11
+
12
+
13
+# This file contains the Jam rules needed to build the FreeType 2 library.
14
+# It is shared by all Jamfiles and is included only once in the build
15
+# process.
16
+#
17
+
18
+
19
+# Call SubDirHdrs on a list of directories.
20
+#
21
+rule AddSubDirHdrs
22
+{
23
+  local x ;
24
+
25
+  for x in $(<)
26
+  {
27
+    SubDirHdrs $(x) ;
28
+  }
29
+}
30
+
31
+
32
+# Determine prefix of library file.  We must use "libxxxxx" on Unix systems,
33
+# while all other simply use the real name.
34
+#
35
+if $(UNIX)
36
+{
37
+  LIBPREFIX ?= lib ;
38
+}
39
+else
40
+{
41
+  LIBPREFIX ?= "" ;
42
+}
43
+
44
+# FT2_TOP contains the location of the FreeType source directory.  You can
45
+# set it to a specific value if you want to compile the library as part of a
46
+# larger project.
47
+#
48
+FT2_TOP ?= $(DOT) ;
49
+
50
+# Define a new rule used to declare a sub directory of the Nirvana source
51
+# tree.
52
+#
53
+rule FT2_SubDir
54
+{
55
+  if $(FT2_TOP) = $(DOT)
56
+  {
57
+    return [ FDirName  $(<) ] ;
58
+  }
59
+  else
60
+  {
61
+    return [ FDirName  $(FT2_TOP) $(<) ] ;
62
+  }
63
+}
64
+
65
+# We also set ALL_LOCATE_TARGET in order to place all object and library
66
+# files in "objs".
67
+#
68
+ALL_LOCATE_TARGET ?= [ FT2_SubDir  objs ] ;
69
+
70
+
71
+# end of Jamrules

+ 34
- 0
lib/freetype/Makefile View File

@@ -0,0 +1,34 @@
1
+#
2
+# FreeType 2 build system -- top-level Makefile
3
+#
4
+
5
+
6
+# Copyright 1996-2000, 2002, 2006 by
7
+# David Turner, Robert Wilhelm, and Werner Lemberg.
8
+#
9
+# This file is part of the FreeType project, and may only be used, modified,
10
+# and distributed under the terms of the FreeType project license,
11
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
12
+# indicate that you have read the license and understand and accept it
13
+# fully.
14
+
15
+
16
+# Project names
17
+#
18
+PROJECT       := freetype
19
+PROJECT_TITLE := FreeType
20
+
21
+# The variable TOP_DIR holds the path to the topmost directory in the project
22
+# engine source hierarchy.  If it is not defined, default it to `.'.
23
+#
24
+TOP_DIR ?= .
25
+
26
+# The variable OBJ_DIR gives the location where object files and the
27
+# FreeType library are built.
28
+#
29
+OBJ_DIR ?= $(TOP_DIR)/objs
30
+
31
+
32
+include $(TOP_DIR)/builds/toplevel.mk
33
+
34
+# EOF

+ 83
- 0
lib/freetype/README View File

@@ -0,0 +1,83 @@
1
+  FreeType 2.5.5
2
+  ==============
3
+
4
+  Homepage: http://www.freetype.org
5
+
6
+  FreeType is a freely available software library to render fonts.
7
+
8
+  It  is  written  in  C,  designed to  be  small,  efficient,  highly
9
+  customizable, and  portable while capable of  producing high-quality
10
+  output  (glyph  images) of  most  vector  and bitmap  font  formats.
11
+
12
+  Please   read   the  docs/CHANGES   file,   it  contains   IMPORTANT
13
+  INFORMATION.
14
+
15
+  Read the  files `docs/INSTALL*'  for installation  instructions; see
16
+  the file `docs/LICENSE.TXT' for the available licenses.
17
+
18
+  The FreeType 2 API reference is located in `docs/reference'; use the
19
+  file   `ft2-toc.html'   as   the   top  entry   point.    Additional
20
+  documentation is available as a separate package from our sites.  Go
21
+  to
22
+
23
+    http://download.savannah.gnu.org/releases/freetype/
24
+
25
+  and download one of the following files.
26
+
27
+    freetype-doc-2.5.5.tar.bz2
28
+    freetype-doc-2.5.5.tar.gz
29
+    ftdoc255.zip
30
+
31
+  To view the documentation online, go to
32
+
33
+    http://www.freetype.org/freetype2/documentation.html
34
+
35
+
36
+  Mailing Lists
37
+  =============
38
+
39
+  The preferred way  of communication with the FreeType  team is using
40
+  e-mail lists.
41
+
42
+    general use and discussion:      freetype@nongnu.org
43
+    engine internals, porting, etc.: freetype-devel@nongnu.org
44
+    announcements:                   freetype-announce@nongnu.org
45
+
46
+  The lists are moderated; see
47
+
48
+    http://www.freetype.org/contact.html
49
+
50
+  how to subscribe.
51
+
52
+
53
+  Bugs
54
+  ====
55
+
56
+  Please submit bug reports at
57
+
58
+    https://savannah.nongnu.org/bugs/?group=freetype
59
+
60
+  Alternatively,    you   might    report    bugs    by   e-mail    to
61
+  `freetype-devel@nongnu.org'.   Don't  forget   to  send  a  detailed
62
+  explanation of the problem --  there is nothing worse than receiving
63
+  a terse message that only says `it doesn't work'.
64
+
65
+
66
+  Enjoy!
67
+
68
+
69
+    The FreeType Team
70
+
71
+----------------------------------------------------------------------
72
+
73
+Copyright 2006-2014 by
74
+David Turner, Robert Wilhelm, and Werner Lemberg.
75
+
76
+This  file is  part of  the FreeType  project, and  may only  be used,
77
+modified,  and distributed  under the  terms of  the  FreeType project
78
+license,  LICENSE.TXT.  By  continuing to  use, modify,  or distribute
79
+this file you  indicate that you have read  the license and understand
80
+and accept it fully.
81
+
82
+
83
+--- end of README ---

+ 50
- 0
lib/freetype/README.git View File

@@ -0,0 +1,50 @@
1
+The git  archive doesn't  contain pre-built configuration  scripts for
2
+UNIXish platforms.  To generate them say
3
+
4
+  sh autogen.sh
5
+
6
+which in turn depends on the following packages:
7
+
8
+  automake (1.10.1)
9
+  libtool (2.2.4)
10
+  autoconf (2.62)
11
+
12
+The versions given  in parentheses are known to  work.  Newer versions
13
+should work too, of course.   Note that autogen.sh also sets up proper
14
+file permissions for the `configure' and auxiliary scripts.
15
+
16
+The autogen.sh script  now checks the version of  above three packages
17
+whether they match the numbers  above.  Otherwise it will complain and
18
+suggest either upgrading or using  an environment variable to point to
19
+a more recent version of the required tool(s).
20
+
21
+Note that  `aclocal' is provided  by the `automake' package  on Linux,
22
+and that `libtoolize' is called `glibtoolize' on Darwin (OS X).
23
+
24
+
25
+For static builds which  don't use platform specific optimizations, no
26
+configure script is necessary at all; saying
27
+
28
+  make setup ansi
29
+  make
30
+
31
+should work on all platforms which have GNU make (or makepp).
32
+
33
+
34
+Similarly, a  build with  `cmake' can  be done  directly from  the git
35
+repository.
36
+
37
+
38
+----------------------------------------------------------------------
39
+
40
+Copyright 2005-2010, 2013 by
41
+David Turner, Robert Wilhelm, and Werner Lemberg.
42
+
43
+This  file is  part of  the FreeType  project, and  may only  be used,
44
+modified,  and distributed  under the  terms of  the  FreeType project
45
+license,  LICENSE.TXT.  By  continuing to  use, modify,  or distribute
46
+this file you  indicate that you have read  the license and understand
47
+and accept it fully.
48
+
49
+
50
+--- end of README.git ---

+ 166
- 0
lib/freetype/autogen.sh View File

@@ -0,0 +1,166 @@
1
+#!/bin/sh
2
+
3
+# Copyright 2005-2010, 2013 by
4
+# David Turner, Robert Wilhelm, and Werner Lemberg.
5
+#
6
+# This file is part of the FreeType project, and may only be used, modified,
7
+# and distributed under the terms of the FreeType project license,
8
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
9
+# indicate that you have read the license and understand and accept it
10
+# fully.
11
+
12
+run ()
13
+{
14
+  echo "running \`$*'"
15
+  eval $*
16
+
17
+  if test $? != 0 ; then
18
+    echo "error while running \`$*'"
19
+    exit 1
20
+  fi
21
+}
22
+
23
+get_major_version ()
24
+{
25
+  echo $1 | sed -e 's/\([0-9][0-9]*\)\..*/\1/g'
26
+}
27
+
28
+get_minor_version ()
29
+{
30
+  echo $1 | sed -e 's/[0-9][0-9]*\.\([0-9][0-9]*\).*/\1/g'
31
+}
32
+
33
+get_patch_version ()
34
+{
35
+  # tricky: some version numbers don't include a patch
36
+  # separated with a point, but something like 1.4-p6
37
+  patch=`echo $1 | sed -e 's/[0-9][0-9]*\.[0-9][0-9]*\.\([0-9][0-9]*\).*/\1/g'`
38
+  if test "$patch" = "$1"; then
39
+    patch=`echo $1 | sed -e 's/[0-9][0-9]*\.[0-9][0-9]*\-p\([0-9][0-9]*\).*/\1/g'`
40
+    # if there isn't any patch number, default to 0
41
+    if test "$patch" = "$1"; then
42
+      patch=0
43
+    fi
44
+  fi
45
+  echo $patch
46
+}
47
+
48
+# $1: version to check
49
+# $2: minimum version
50
+
51
+compare_to_minimum_version ()
52
+{
53
+  MAJOR1=`get_major_version $1`
54
+  MAJOR2=`get_major_version $2`
55
+  if test $MAJOR1 -lt $MAJOR2; then
56
+    echo 0
57
+    return
58
+  else
59
+    if test $MAJOR1 -gt $MAJOR2; then
60
+      echo 1
61
+      return
62
+    fi
63
+  fi
64
+
65
+  MINOR1=`get_minor_version $1`
66
+  MINOR2=`get_minor_version $2`
67
+  if test $MINOR1 -lt $MINOR2; then
68
+    echo 0
69
+    return
70
+  else
71
+    if test $MINOR1 -gt $MINOR2; then
72
+      echo 1
73
+      return
74
+    fi
75
+  fi
76
+
77
+  PATCH1=`get_patch_version $1`
78
+  PATCH2=`get_patch_version $2`
79
+  if test $PATCH1 -lt $PATCH2; then
80
+    echo 0
81
+  else
82
+    echo 1
83
+  fi
84
+}
85
+
86
+# check the version of a given tool against a minimum version number
87
+#
88
+# $1: tool path
89
+# $2: tool usual name (e.g. `aclocal')
90
+# $3: tool variable  (e.g. `ACLOCAL')
91
+# $4: minimum version to check against
92
+# $5: option field index used to extract the tool version from the
93
+#     output of --version
94
+
95
+check_tool_version ()
96
+{
97
+  field=$5
98
+  # assume the output of "[TOOL] --version" is "toolname (GNU toolname foo bar) version"
99
+  if test "$field"x = x; then
100
+    field=3  # default to 3 for all GNU autotools, after filtering enclosed string
101
+  fi
102
+  version=`$1 --version | head -1 | sed 's/([^)]*)/()/g' | cut -d ' ' -f $field`
103
+  version_check=`compare_to_minimum_version $version $4`
104
+  if test "$version_check"x = 0x; then
105
+    echo "ERROR: Your version of the \`$2' tool is too old."
106
+    echo "       Minimum version $4 is required (yours is version $version)."
107
+    echo "       Please upgrade or use the $3 variable to point to a more recent one."
108
+    echo ""
109
+    exit 1
110
+  fi
111
+}
112
+
113
+if test ! -f ./builds/unix/configure.raw; then
114
+  echo "You must be in the same directory as \`autogen.sh'."
115
+  echo "Bootstrapping doesn't work if srcdir != builddir."
116
+  exit 1
117
+fi
118
+
119
+# On MacOS X, the GNU libtool is named `glibtool'.
120
+HOSTOS=`uname`
121
+if test "$LIBTOOLIZE"x != x; then
122
+  :
123
+elif test "$HOSTOS"x = Darwinx; then
124
+  LIBTOOLIZE=glibtoolize
125
+else
126
+  LIBTOOLIZE=libtoolize
127
+fi
128
+
129
+if test "$ACLOCAL"x = x; then
130
+  ACLOCAL=aclocal
131
+fi
132
+
133
+if test "$AUTOCONF"x = x; then
134
+  AUTOCONF=autoconf
135
+fi
136
+
137
+check_tool_version $ACLOCAL    aclocal    ACLOCAL    1.10.1
138
+check_tool_version $LIBTOOLIZE libtoolize LIBTOOLIZE 2.2.4
139
+check_tool_version $AUTOCONF   autoconf   AUTOCONF   2.62
140
+
141
+# This sets freetype_major, freetype_minor, and freetype_patch.
142
+eval `sed -nf version.sed include/freetype.h`
143
+
144
+# We set freetype-patch to an empty value if it is zero.
145
+if test "$freetype_patch" = ".0"; then
146
+  freetype_patch=
147
+fi
148
+
149
+cd builds/unix
150
+
151
+echo "generating \`configure.ac'"
152
+sed -e "s;@VERSION@;$freetype_major$freetype_minor$freetype_patch;" \
153
+  < configure.raw > configure.ac
154
+
155
+run aclocal -I . --force
156
+run $LIBTOOLIZE --force --copy --install
157
+run autoconf --force
158
+
159
+chmod +x mkinstalldirs
160
+chmod +x install-sh
161
+
162
+cd ../..
163
+
164
+chmod +x ./configure
165
+
166
+# EOF

+ 109
- 0
lib/freetype/builds/amiga/README View File

@@ -0,0 +1,109 @@
1
+
2
+README for the builds/amiga subdirectory.
3
+
4
+Copyright 2005, 2013 by
5
+Werner Lemberg and Detlef Würkner.
6
+
7
+This file is part of the FreeType project, and may only be used, modified,
8
+and distributed under the terms of the FreeType project license,
9
+LICENSE.TXT.  By continuing to use, modify, or distribute this file you
10
+indicate that you have read the license and understand and accept it
11
+fully.
12
+
13
+
14
+The makefile.os4 is for the AmigaOS4 SDK.  To use it, type
15
+"make -f makefile.os4", it produces a link library libft2_ppc.a.
16
+
17
+The makefile is for ppc-morphos-gcc-2.95.3-bin.tgz (gcc 2.95.3 hosted on
18
+68k-Amiga producing MorphOS-PPC-binaries from http://www.morphos.de).
19
+To use it, type "make assign", then "make"; it produces a link library
20
+libft2_ppc.a.
21
+
22
+The smakefile is a makefile for Amiga SAS/C 6.58 (no longer available,
23
+latest sold version was 6.50, updates can be found in Aminet).  It is
24
+based on the version found in the sourcecode of ttf.library 0.83b for
25
+FreeType 1.3.1 from Richard Griffith (ragriffi@sprynet.com,
26
+http://ragriffi.home.sprynet.com).
27
+
28
+You will also need the latest include files and amiga.lib from the
29
+Amiga web site (http://www.amiga.com/3.9/download/NDK3.9.lha) for
30
+AmigaOS 3.9; the generated code should work under AmigaOS 2.04 and up.
31
+
32
+To use it, call "smake assign" and then "smake" from the builds/amiga
33
+directory.  The results are:
34
+
35
+- A link library "ft2_680x0.lib" (where x depends on the setting of
36
+  the CPU entry in the smakefile) containing all FreeType2 parts
37
+  except of the init code, debugging code, and the system interface
38
+  code.
39
+
40
+- ftsystem.o, an object module containing the standard version of the
41
+  system interface code which uses fopen() fclose() fread() fseek()
42
+  ftell() malloc() realloc() and free() from lib:sc.lib (not pure).
43
+
44
+- ftsystempure.o, an object module containing the pure version of the
45
+  system interface code which uses Open() Close() Read() Seek()
46
+  ExamineFH() AsmAllocPooled() AsmFreePooled() etc.  This version can
47
+  be used in both normal programs and in Amiga run-time shared system
48
+  librarys (can be linked with lib:libinit.o, no copying of DATA and
49
+  BSS hunks for each OpenLibrary() necessary).  Source code is in
50
+  src/base/ftsystem.c.
51
+
52
+- ftdebug.o, an object module containing the standard version of the
53
+  debugging code which uses vprintf() and exit() (not pure).
54
+  Debugging can be turned on in FT:include/config/ftoption.h and with
55
+  FT_SetTraceLevel().
56
+
57
+- ftdebugpure.o, an object module containing the pure version of the
58
+  debugging code which uses KVPrintf() from lib:debug.lib and no
59
+  exit().  For debugging of Amiga run-time shared system libraries.
60
+  Source code is in src/base/ftdebug.c.
61
+
62
+- NO ftinit.o.  Because linking with a link library should result in
63
+  linking only the needed object modules in it, but standard
64
+  ftsystem.o would force ALL FreeType2 modules to be linked to your
65
+  program, I decided to use a different scheme: You must #include
66
+  FT:src/base/ftinit.c in your sourcecode and specify with #define
67
+  statements which modules you need.  See include/config/ftmodule.h.
68
+
69
+
70
+To use in your own programs:
71
+
72
+- Insert the #define and #include statements from top of
73
+  include/config/ftmodule.h in your source code and uncomment the
74
+  #define statements for the FreeType2 modules you need.
75
+
76
+- You can use either PARAMETERS=REGISTER or PARAMETERS=STACK for
77
+  calling the FreeType2 functions, because the link library and the
78
+  object files are compiled with PARAMETERS=BOTH.
79
+
80
+- "smake assign" (assign "FT:" to the FreeType2 main directory).
81
+
82
+- Compile your program.
83
+
84
+- Link with either ftsystem.o or ftsystempure.o, if debugging enabled
85
+  with either ftdebug.o or (ftdebugpure.o and lib:debug.lib), and with
86
+  ft2_680x0.lib as link library.
87
+
88
+
89
+To adapt to other compilers:
90
+
91
+- The standard ANSI C maximum length of 31 significant characters in
92
+  identifiers is not enough for FreeType2.  Check if your compiler has
93
+  a minimum length of 40 significant characters or can be switched to
94
+  it.  "idlen=40" is the option for SAS/C.  Setting #define
95
+  HAVE_LIMIT_ON_IDENTS in an include file may also work (not tested).
96
+
97
+- Make sure that the include directory in builds/amiga is searched
98
+  before the normal FreeType2 include directory, so you are able to
99
+  replace problematic include files with your own version (same may be
100
+  useful for the src directory).
101
+
102
+- An example of how to replace/workaround a problematic include file
103
+  is include/config/ftconfig.h; it changes a #define that would
104
+  prevent SAS/C from generating XDEF's where it should do that and
105
+  then includes the standard FreeType2 include file.
106
+
107
+Local Variables:
108
+coding: latin-1
109
+End:

+ 55
- 0
lib/freetype/builds/amiga/include/config/ftconfig.h View File

@@ -0,0 +1,55 @@
1
+/***************************************************************************/
2
+/*                                                                         */
3
+/*  ftconfig.h                                                             */
4
+/*                                                                         */
5
+/*    Amiga-specific configuration file (specification only).              */
6
+/*                                                                         */
7
+/*  Copyright 2005-2007, 2013 by                                           */
8
+/*  Werner Lemberg and Detlef Würkner.                                     */
9
+/*                                                                         */
10
+/*  This file is part of the FreeType project, and may only be used,       */
11
+/*  modified, and distributed under the terms of the FreeType project      */
12
+/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
13
+/*  this file you indicate that you have read the license and              */
14
+/*  understand and accept it fully.                                        */
15
+/*                                                                         */
16
+/***************************************************************************/
17
+
18
+/*
19
+ * This is an example how to override the default FreeType2 header files
20
+ * with Amiga-specific changes. When the compiler searches this directory
21
+ * before the default directory, we can do some modifications.
22
+ *
23
+ * Here we must change FT_EXPORT_DEF so that SAS/C does
24
+ * generate the needed XDEFs.
25
+ */
26
+
27
+#if 0
28
+#define FT_EXPORT_DEF( x )  extern  x
29
+#endif
30
+
31
+#undef FT_EXPORT_DEF
32
+#define FT_EXPORT_DEF( x )  x
33
+
34
+/* Now include the original file */
35
+#ifndef __MORPHOS__
36
+#ifdef __SASC
37
+#include "FT:include/config/ftconfig.h"
38
+#else
39
+#include "/FT/include/config/ftconfig.h"
40
+#endif
41
+#else
42
+/* We must define that, it seems that
43
+ * lib/gcc-lib/ppc-morphos/2.95.3/include/syslimits.h is missing in
44
+ * ppc-morphos-gcc-2.95.3-bin.tgz (gcc for 68k producing MorphOS PPC elf
45
+ * binaries from http://www.morphos.de)
46
+ */
47
+#define _LIBC_LIMITS_H_
48
+#include "/FT/include/config/ftconfig.h"
49
+#endif
50
+
51
+/*
52
+Local Variables:
53
+coding: latin-1
54
+End:
55
+*/

+ 160
- 0
lib/freetype/builds/amiga/include/config/ftmodule.h View File

@@ -0,0 +1,160 @@
1
+/***************************************************************************/
2
+/*                                                                         */
3
+/*  ftmodule.h                                                             */
4
+/*                                                                         */
5
+/*    Amiga-specific FreeType module selection.                            */
6
+/*                                                                         */
7
+/*  Copyright 2005 by                                                      */
8
+/*  Werner Lemberg and Detlef Würkner.                                     */
9
+/*                                                                         */
10
+/*  This file is part of the FreeType project, and may only be used,       */
11
+/*  modified, and distributed under the terms of the FreeType project      */
12
+/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
13
+/*  this file you indicate that you have read the license and              */
14
+/*  understand and accept it fully.                                        */
15
+/*                                                                         */
16
+/***************************************************************************/
17
+
18
+/*
19
+ * To avoid that all your programs include all FreeType modules,
20
+ * you copy the following piece of source code into your own
21
+ * source file and specify which modules you really need in your
22
+ * application by uncommenting the appropriate lines.
23
+ */
24
+/*
25
+//#define FT_USE_AUTOFIT // autofitter
26
+//#define FT_USE_RASTER  // monochrome rasterizer
27
+//#define FT_USE_SMOOTH  // anti-aliasing rasterizer
28
+//#define FT_USE_TT      // truetype font driver
29
+//#define FT_USE_T1      // type1 font driver
30
+//#define FT_USE_T42     // type42 font driver
31
+//#define FT_USE_T1CID   // cid-keyed type1 font driver  // no cmap support
32
+//#define FT_USE_CFF     // opentype font driver
33
+//#define FT_USE_BDF     // bdf bitmap font driver
34
+//#define FT_USE_PCF     // pcf bitmap font driver
35
+//#define FT_USE_PFR     // pfr font driver
36
+//#define FT_USE_WINFNT  // windows .fnt|.fon bitmap font driver
37
+//#define FT_USE_OTV     // opentype validator
38
+//#define FT_USE_GXV     // truetype gx validator
39
+#include "FT:src/base/ftinit.c"
40
+*/
41
+
42
+/* Make sure that the needed support modules are built in.
43
+ * Dependencies can be found by searching for FT_Get_Module.
44
+ */
45
+
46
+#ifdef FT_USE_T42
47
+#define FT_USE_TT
48
+#endif
49
+
50
+#ifdef FT_USE_TT
51
+#define FT_USE_SFNT
52
+#endif
53
+
54
+#ifdef FT_USE_CFF
55
+#define FT_USE_SFNT
56
+#define FT_USE_PSHINT
57
+#define FT_USE_PSNAMES
58
+#endif
59
+
60
+#ifdef FT_USE_T1
61
+#define FT_USE_PSAUX
62
+#define FT_USE_PSHINT
63
+#define FT_USE_PSNAMES
64
+#endif
65
+
66
+#ifdef FT_USE_T1CID
67
+#define FT_USE_PSAUX
68
+#define FT_USE_PSHINT
69
+#define FT_USE_PSNAMES
70
+#endif
71
+
72
+#ifdef FT_USE_PSAUX
73
+#define FT_USE_PSNAMES
74
+#endif
75
+
76
+#ifdef FT_USE_SFNT
77
+#define FT_USE_PSNAMES
78
+#endif
79
+
80
+/* Now include the modules */
81
+
82
+#ifdef FT_USE_AUTOFIT
83
+FT_USE_MODULE( FT_Module_Class, autofit_module_class )
84
+#endif
85
+
86
+#ifdef FT_USE_TT
87
+FT_USE_MODULE( FT_Driver_ClassRec, tt_driver_class )
88
+#endif
89
+
90
+#ifdef FT_USE_T1
91
+FT_USE_MODULE( FT_Driver_ClassRec, t1_driver_class )
92
+#endif
93
+
94
+#ifdef FT_USE_CFF
95
+FT_USE_MODULE( FT_Driver_ClassRec, cff_driver_class )
96
+#endif
97
+
98
+#ifdef FT_USE_T1CID
99
+FT_USE_MODULE( FT_Driver_ClassRec, t1cid_driver_class )
100
+#endif
101
+
102
+#ifdef FT_USE_PFR
103
+FT_USE_MODULE( FT_Driver_ClassRec, pfr_driver_class )
104
+#endif
105
+
106
+#ifdef FT_USE_T42
107
+FT_USE_MODULE( FT_Driver_ClassRec, t42_driver_class )
108
+#endif
109
+
110
+#ifdef FT_USE_WINFNT
111
+FT_USE_MODULE( FT_Driver_ClassRec, winfnt_driver_class )
112
+#endif
113
+
114
+#ifdef FT_USE_PCF
115
+FT_USE_MODULE( FT_Driver_ClassRec, pcf_driver_class )
116
+#endif
117
+
118
+#ifdef FT_USE_PSAUX
119
+FT_USE_MODULE( FT_Module_Class, psaux_module_class )
120
+#endif
121
+
122
+#ifdef FT_USE_PSNAMES
123
+FT_USE_MODULE( FT_Module_Class, psnames_module_class )
124
+#endif
125
+
126
+#ifdef FT_USE_PSHINT
127
+FT_USE_MODULE( FT_Module_Class, pshinter_module_class )
128
+#endif
129
+
130
+#ifdef FT_USE_RASTER
131
+FT_USE_MODULE( FT_Renderer_Class, ft_raster1_renderer_class )
132
+#endif
133
+
134
+#ifdef FT_USE_SFNT
135
+FT_USE_MODULE( FT_Module_Class, sfnt_module_class )
136
+#endif
137
+
138
+#ifdef FT_USE_SMOOTH
139
+FT_USE_MODULE( FT_Renderer_Class, ft_smooth_renderer_class )
140
+FT_USE_MODULE( FT_Renderer_Class, ft_smooth_lcd_renderer_class )
141
+FT_USE_MODULE( FT_Renderer_Class, ft_smooth_lcdv_renderer_class )
142
+#endif
143
+
144
+#ifdef FT_USE_OTV
145
+FT_USE_MODULE( FT_Module_Class, otv_module_class )
146
+#endif
147
+
148
+#ifdef FT_USE_BDF
149
+FT_USE_MODULE( FT_Driver_ClassRec, bdf_driver_class )
150
+#endif
151
+
152
+#ifdef FT_USE_GXV
153
+FT_USE_MODULE( FT_Module_Class, gxv_module_class )
154
+#endif
155
+
156
+/*
157
+Local Variables:
158
+coding: latin-1
159
+End:
160
+*/

+ 299
- 0
lib/freetype/builds/amiga/makefile View File

@@ -0,0 +1,299 @@
1
+#
2
+# Makefile for FreeType2 link library using ppc-morphos-gcc-2.95.3-bin.tgz
3
+# (gcc 2.95.3 hosted on 68k-Amiga producing MorphOS-PPC-binaries from
4
+# http://www.morphos.de)
5
+#
6
+
7
+
8
+# Copyright 2005-2007, 2009, 2013 by
9
+# Werner Lemberg and Detlef Würkner.
10
+#
11
+# This file is part of the FreeType project, and may only be used, modified,
12
+# and distributed under the terms of the FreeType project license,
13
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
14
+# indicate that you have read the license and understand and accept it
15
+# fully.
16
+
17
+
18
+#
19
+# to build from the builds/amiga directory call
20
+#
21
+#  make assign
22
+#  make
23
+#
24
+# Your programs source code should start with this
25
+# (uncomment the parts you do not need to keep the program small):
26
+# ---8<---
27
+#define FT_USE_AUTOFIT // autofitter
28
+#define FT_USE_RASTER  // monochrome rasterizer
29
+#define FT_USE_SMOOTH  // anti-aliasing rasterizer
30
+#define FT_USE_TT      // truetype font driver
31
+#define FT_USE_T1      // type1 font driver
32
+#define FT_USE_T42     // type42 font driver
33
+#define FT_USE_T1CID   // cid-keyed type1 font driver
34
+#define FT_USE_CFF     // opentype font driver
35
+#define FT_USE_BDF     // bdf bitmap font driver
36
+#define FT_USE_PCF     // pcf bitmap font driver
37
+#define FT_USE_PFR     // pfr font driver
38
+#define FT_USE_WINFNT  // windows .fnt|.fon bitmap font driver
39
+#define FT_USE_OTV     // opentype validator
40
+#define FT_USE_GXV     // truetype gx validator
41
+#include "FT:src/base/ftinit.c"
42
+# ---8<---
43
+#
44
+# link your programs with libft2_ppc.a and either ftsystem.ppc.o or ftsystempure.ppc.o
45
+# (and either ftdebug.ppc.o or ftdebugpure.ppc.o if you enabled FT_DEBUG_LEVEL_ERROR or
46
+# FT_DEBUG_LEVEL_TRACE in include/config/ftoption.h).
47
+
48
+all:	libft2_ppc.a ftsystem.ppc.o ftsystempure.ppc.o
49
+
50
+assign:
51
+	assign FT: //
52
+
53
+FTSRC = /FT/src
54
+
55
+CC =     ppc-morphos-gcc
56
+AR =     ppc-morphos-ar rc
57
+RANLIB = ppc-morphos-ranlib
58
+LD =     ppc-morphos-ld
59
+CFLAGS = -DFT2_BUILD_LIBRARY -O2 -I/emu/emulinclude/includegcc -I/emu/include -Iinclude -I$(FTSRC) -I/FT/include
60
+
61
+#
62
+# FreeType2 library base
63
+#
64
+ftbase.ppc.o: $(FTSRC)/base/ftbase.c
65
+	$(CC) -c $(CFLAGS) -o $@ $<
66
+
67
+ftinit.ppc.o: $(FTSRC)/base/ftinit.c
68
+	$(CC) -c $(CFLAGS) -o $@ $<
69
+
70
+ftsystem.ppc.o: $(FTSRC)/base/ftsystem.c
71
+	$(CC) -c $(CFLAGS) -o $@ $<
72
+
73
+# pure version for use in run-time library etc
74
+ftsystempure.ppc.o: src/base/ftsystem.c
75
+	$(CC) -c $(CFLAGS) -o $@ $<
76
+
77
+ftdebug.ppc.o: $(FTSRC)/base/ftdebug.c
78
+	$(CC) -c $(CFLAGS) -o $@ $<
79
+
80
+# pure version for use in run-time library etc
81
+ftdebugpure.ppc.o: src/base/ftdebug.c
82
+	$(CC) -c $(CFLAGS) -o $@ $<
83
+
84
+#
85
+# FreeType2 library base extensions
86
+#
87
+ftbbox.ppc.o: $(FTSRC)/base/ftbbox.c
88
+	$(CC) -c $(CFLAGS) -o $@ $<
89
+
90
+ftbdf.ppc.o: $(FTSRC)/base/ftbdf.c
91
+	$(CC) -c $(CFLAGS) -o $@ $<
92
+
93
+ftbitmap.ppc.o: $(FTSRC)/base/ftbitmap.c
94
+	$(CC) -c $(CFLAGS) -o $@ $<
95
+
96
+ftcid.ppc.o: $(FTSRC)/base/ftcid.c
97
+	$(CC) -c $(CFLAGS) -o $@ $<
98
+
99
+ftfstype.ppc.o: $(FTSRC)/base/ftfstype.c
100
+	$(CC) -c $(CFLAGS) -o $@ $<
101
+
102
+ftgasp.ppc.o: $(FTSRC)/base/ftgasp.c
103
+	$(CC) -c $(CFLAGS) -o $@ $<
104
+
105
+ftglyph.ppc.o: $(FTSRC)/base/ftglyph.c
106
+	$(CC) -c $(CFLAGS) -o $@ $<
107
+
108
+ftgxval.ppc.o: $(FTSRC)/base/ftgxval.c
109
+	$(CC) -c $(CFLAGS) -o $@ $<
110
+
111
+ftlcdfil.ppc.o: $(FTSRC)/base/ftlcdfil.c
112
+	$(CC) -c $(CFLAGS) -o $@ $<
113
+
114
+ftmm.ppc.o: $(FTSRC)/base/ftmm.c
115
+	$(CC) -c $(CFLAGS) -o $@ $<
116
+
117
+ftotval.ppc.o: $(FTSRC)/base/ftotval.c
118
+	$(CC) -c $(CFLAGS) -o $@ $<
119
+
120
+ftpatent.ppc.o: $(FTSRC)/base/ftpatent.c
121
+	$(CC) -c $(CFLAGS) -o $@ $<
122
+
123
+ftpfr.ppc.o: $(FTSRC)/base/ftpfr.c
124
+	$(CC) -c $(CFLAGS) -o $@ $<
125
+
126
+ftstroke.ppc.o: $(FTSRC)/base/ftstroke.c
127
+	$(CC) -c $(CFLAGS) -o $@ $<
128
+
129
+ftsynth.ppc.o: $(FTSRC)/base/ftsynth.c
130
+	$(CC) -c $(CFLAGS) -o $@ $<
131
+
132
+fttype1.ppc.o: $(FTSRC)/base/fttype1.c
133
+	$(CC) -c $(CFLAGS) -o $@ $<
134
+
135
+ftwinfnt.ppc.o: $(FTSRC)/base/ftwinfnt.c
136
+	$(CC) -c $(CFLAGS) -o $@ $<
137
+
138
+ftxf86.ppc.o: $(FTSRC)/base/ftxf86.c
139
+	$(CC) -c $(CFLAGS) -o $@ $<
140
+
141
+#
142
+# FreeType2 library autofitting module
143
+#
144
+autofit.ppc.o: $(FTSRC)/autofit/autofit.c
145
+	$(CC) -c $(CFLAGS) -o $@ $<
146
+
147
+#
148
+# FreeType2 library postscript hinting module
149
+#
150
+pshinter.ppc.o: $(FTSRC)/pshinter/pshinter.c
151
+	$(CC) -c $(CFLAGS) -o $@ $<
152
+
153
+#
154
+# FreeType2 library PS support module
155
+#
156
+psaux.ppc.o: $(FTSRC)/psaux/psaux.c
157
+	$(CC) -c $(CFLAGS) -o $@ $<
158
+
159
+#
160
+# FreeType2 library PS glyph names module
161
+#
162
+psnames.ppc.o: $(FTSRC)/psnames/psnames.c
163
+	$(CC) -c $(CFLAGS) -o $@ $<
164
+
165
+#
166
+# FreeType2 library monochrome raster module
167
+#
168
+raster.ppc.o: $(FTSRC)/raster/raster.c
169
+	$(CC) -c $(CFLAGS) -o $@ $<
170
+
171
+#
172
+# FreeType2 library anti-aliasing raster module
173
+#
174
+smooth.ppc.o: $(FTSRC)/smooth/smooth.c
175
+	$(CC) -c $(CFLAGS) -o $@ $<
176
+
177
+#
178
+# FreeType2 library 'sfnt' module
179
+#
180
+sfnt.ppc.o: $(FTSRC)/sfnt/sfnt.c
181
+	$(CC) -c $(CFLAGS) -o $@ $<
182
+
183
+#
184
+# FreeType2 library glyph and image caching system
185
+#
186
+ftcache.ppc.o: $(FTSRC)/cache/ftcache.c
187
+	$(CC) -c $(CFLAGS) -o $@ $<
188
+
189
+#
190
+# FreeType2 library OpenType font driver
191
+#
192
+cff.ppc.o: $(FTSRC)/cff/cff.c
193
+	$(CC) -c $(CFLAGS) -o $@ $<
194
+
195
+#
196
+# FreeType2 library TrueType font driver
197
+#
198
+truetype.ppc.o: $(FTSRC)/truetype/truetype.c
199
+	$(CC) -c $(CFLAGS) -o $@ $<
200
+
201
+#
202
+# FreeType2 library Type1 font driver
203
+#
204
+type1.ppc.o: $(FTSRC)/type1/type1.c
205
+	$(CC) -c $(CFLAGS) -o $@ $<
206
+
207
+#
208
+# FreeType2 library Type42 font driver
209
+#
210
+type42.ppc.o: $(FTSRC)/type42/type42.c
211
+	$(CC) -c $(CFLAGS) -o $@ $<
212
+
213
+#
214
+# FreeType2 library CID-keyed Type1 font driver
215
+#
216
+type1cid.ppc.o: $(FTSRC)/cid/type1cid.c
217
+	$(CC) -c $(CFLAGS) -o $@ $<
218
+
219
+#
220
+# FreeType2 library BDF bitmap font driver
221
+#
222
+bdf.ppc.o: $(FTSRC)/bdf/bdf.c
223
+	$(CC) -c $(CFLAGS) -o $@ $<
224
+
225
+#
226
+# FreeType2 library PCF bitmap font driver
227
+#
228
+pcf.ppc.o: $(FTSRC)/pcf/pcf.c
229
+	$(CC) -c $(CFLAGS) -o $@ $<
230
+
231
+#
232
+# FreeType2 library gzip support for compressed PCF bitmap fonts
233
+#
234
+gzip.ppc.o: $(FTSRC)/gzip/ftgzip.c
235
+	$(CC) -c $(CFLAGS) -o $@ $<
236
+
237
+# FreeType2 library bzip2 support for compressed PCF bitmap fonts
238
+#
239
+bzip2.ppc.o: $(FTSRC)/bzip2/ftbzip2.c
240
+	$(CC) -c $(CFLAGS) -o $@ $<
241
+
242
+#
243
+# FreeType2 library compress support for compressed PCF bitmap fonts
244
+#
245
+lzw.ppc.o: $(FTSRC)/lzw/ftlzw.c
246
+	$(CC) -c $(CFLAGS) -o $@ $<
247
+
248
+#
249
+# FreeType2 library PFR font driver
250
+#
251
+pfr.ppc.o: $(FTSRC)/pfr/pfr.c
252
+	$(CC) -c $(CFLAGS) -o $@ $<
253
+
254
+#
255
+# FreeType2 library Windows FNT/FON bitmap font driver
256
+#
257
+winfnt.ppc.o: $(FTSRC)/winfonts/winfnt.c
258
+	$(CC) -c $(CFLAGS) -o $@ $<
259
+
260
+#
261
+# FreeType2 library TrueTypeGX Validator
262
+#
263
+gxvalid.ppc.o: $(FTSRC)/gxvalid/gxvalid.c
264
+	$(CC) -c $(CFLAGS) -o $@ $<
265
+
266
+#
267
+# FreeType2 library OpenType validator
268
+#
269
+otvalid.ppc.o: $(FTSRC)/otvalid/otvalid.c
270
+	$(CC) -c $(CFLAGS) -o $@ $<
271
+
272
+BASEPPC = ftbase.ppc.o ftbbox.ppc.o ftbdf.ppc.o ftbitmap.ppc.o ftcid.ppc.o   \
273
+	  ftfstype.ppc.o ftgasp.ppc.o ftglyph.ppc.o ftgxval.ppc.o            \
274
+	  ftlcdfil.ppc.o ftmm.ppc.o ftotval.ppc.o ftpatent.ppc.o ftpfr.ppc.o \
275
+	  ftstroke.ppc.o ftsynth.ppc.o fttype1.ppc.o ftwinfnt.ppc.o          \
276
+	  ftxf86.ppc.o
277
+
278
+DEBUGPPC = ftdebug.ppc.o ftdebugpure.ppc.o
279
+
280
+AFITPPC = autofit.ppc.o
281
+
282
+GXVPPC = gxvalid.ppc.o
283
+
284
+OTVPPC = otvalid.ppc.o
285
+
286
+PSPPC = psaux.ppc.o psnames.ppc.o pshinter.ppc.o
287
+
288
+RASTERPPC = raster.ppc.o smooth.ppc.o
289
+
290
+FONTDPPC = cff.ppc.o type1.ppc.o type42.ppc.o type1cid.ppc.o truetype.ppc.o\
291
+	   bdf.ppc.o pcf.ppc.o pfr.ppc.o winfnt.ppc.o
292
+
293
+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
294
+	$(AR) $@ $(BASEPPC) $(AFITPPC) $(GXVPPC) $(OTVPPC) $(PSPPC) $(RASTERPPC) sfnt.ppc.o ftcache.ppc.o $(FONTDPPC) gzip.ppc.o bzip2.ppc.o lzw.ppc.o
295
+	-@ ($(RANLIB) $@ || true) >/dev/null 2>&1
296
+
297
+#Local Variables:
298
+#coding: latin-1
299
+#End:

+ 303
- 0
lib/freetype/builds/amiga/makefile.os4 View File

@@ -0,0 +1,303 @@
1
+#
2
+# Makefile for FreeType2 link library using gcc 4.0.3 from the
3
+# AmigaOS4 SDK
4
+#
5
+
6
+
7
+# Copyright 2005-2007, 2009, 2013 by
8
+# Werner Lemberg and Detlef Würkner.
9
+#
10
+# This file is part of the FreeType project, and may only be used, modified,
11
+# and distributed under the terms of the FreeType project license,
12
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
13
+# indicate that you have read the license and understand and accept it
14
+# fully.
15
+
16
+
17
+# to build from the builds/amiga directory call
18
+#
19
+#  make -f makefile.os4
20
+#
21
+# Your programs source code should start with this
22
+# (uncomment the parts you do not need to keep the program small):
23
+# ---8<---
24
+#define FT_USE_AUTOFIT // autofitter
25
+#define FT_USE_RASTER  // monochrome rasterizer
26
+#define FT_USE_SMOOTH  // anti-aliasing rasterizer
27
+#define FT_USE_TT      // truetype font driver
28
+#define FT_USE_T1      // type1 font driver
29
+#define FT_USE_T42     // type42 font driver
30
+#define FT_USE_T1CID   // cid-keyed type1 font driver
31
+#define FT_USE_CFF     // opentype font driver
32
+#define FT_USE_BDF     // bdf bitmap font driver
33
+#define FT_USE_PCF     // pcf bitmap font driver
34
+#define FT_USE_PFR     // pfr font driver
35
+#define FT_USE_WINFNT  // windows .fnt|.fon bitmap font driver
36
+#define FT_USE_OTV     // opentype validator
37
+#define FT_USE_GXV     // truetype gx validator
38
+#include "FT:src/base/ftinit.c"
39
+# ---8<---
40
+#
41
+# link your programs with libft2_ppc.a and either ftsystem.ppc.o or ftsystempure.ppc.o
42
+# (and either ftdebug.ppc.o or ftdebugpure.ppc.o if you enabled FT_DEBUG_LEVEL_ERROR or
43
+# FT_DEBUG_LEVEL_TRACE in include/config/ftoption.h).
44
+
45
+all:	assign libft2_ppc.a ftsystem.ppc.o ftsystempure.ppc.o
46
+
47
+assign:
48
+	assign FT: //
49
+
50
+CC =     ppc-amigaos-gcc
51
+AR =     ppc-amigaos-ar
52
+RANLIB = ppc-amigaos-ranlib
53
+
54
+DIRFLAGS  = -Iinclude -I/FT/src -I/FT/include -I/SDK/include
55
+
56
+WARNINGS = -Wall -W -Wundef -Wpointer-arith -Wbad-function-cast \
57
+	   -Waggregate-return -Wwrite-strings -Wshadow
58
+
59
+OPTIONS  = -DFT2_BUILD_LIBRARY -DNDEBUG -fno-builtin
60
+OPTIMIZE = -O2 -fomit-frame-pointer -fstrength-reduce -finline-functions
61
+
62
+CFLAGS   = -mcrt=clib2 $(DIRFLAGS) $(WARNINGS) $(FT2FLAGS) $(OPTIONS) $(OPTIMIZE)
63
+
64
+#
65
+# FreeType2 library base
66
+#
67
+ftbase.ppc.o: FT:src/base/ftbase.c
68
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftbase.c
69
+
70
+ftinit.ppc.o: FT:src/base/ftinit.c
71
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftinit.c
72
+
73
+ftsystem.ppc.o: FT:src/base/ftsystem.c
74
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftsystem.c
75
+
76
+# pure version for use in run-time library etc
77
+ftsystempure.ppc.o: src/base/ftsystem.c
78
+	$(CC) -c $(CFLAGS) -o $@ src/base/ftsystem.c
79
+
80
+#
81
+# FreeType2 library base extensions
82
+#
83
+ftbbox.ppc.o: FT:src/base/ftbbox.c
84
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftbbox.c
85
+
86
+ftbdf.ppc.o: FT:src/base/ftbdf.c
87
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftbdf.c
88
+
89
+ftbitmap.ppc.o: FT:src/base/ftbitmap.c
90
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftbitmap.c
91
+
92
+ftcid.ppc.o: FT:src/base/ftcid.c
93
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftcid.c
94
+
95
+ftdebug.ppc.o: FT:src/base/ftdebug.c
96
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftdebug.c
97
+
98
+# pure version for use in run-time library etc
99
+ftdebugpure.ppc.o: src/base/ftdebug.c
100
+	$(CC) -c $(CFLAGS) -o $@ src/base/ftdebug.c
101
+
102
+ftfstype.ppc.o: FT:src/base/ftfstype.c
103
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftfstype.c
104
+
105
+ftgasp.ppc.o: FT:src/base/ftgasp.c
106
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftgasp.c
107
+
108
+ftglyph.ppc.o: FT:src/base/ftglyph.c
109
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftglyph.c
110
+
111
+ftgxval.ppc.o: FT:src/base/ftgxval.c
112
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftgxval.c
113
+
114
+ftlcdfil.ppc.o: FT:src/base/ftlcdfil.c
115
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftlcdfil.c
116
+
117
+ftmm.ppc.o: FT:src/base/ftmm.c
118
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftmm.c
119
+
120
+ftotval.ppc.o: FT:src/base/ftotval.c
121
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftotval.c
122
+
123
+ftpatent.ppc.o: FT:src/base/ftpatent.c
124
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftpatent.c
125
+
126
+ftpfr.ppc.o: FT:src/base/ftpfr.c
127
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftpfr.c
128
+
129
+ftstroke.ppc.o: FT:src/base/ftstroke.c
130
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftstroke.c
131
+
132
+ftsynth.ppc.o: FT:src/base/ftsynth.c
133
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftsynth.c
134
+
135
+fttype1.ppc.o: FT:src/base/fttype1.c
136
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/fttype1.c
137
+
138
+ftwinfnt.ppc.o: FT:src/base/ftwinfnt.c
139
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftwinfnt.c
140
+
141
+ftxf86.ppc.o: FT:src/base/ftxf86.c
142
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftxf86.c
143
+
144
+#
145
+# FreeType2 library autofitting module
146
+#
147
+autofit.ppc.o: FT:src/autofit/autofit.c
148
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/autofit/autofit.c
149
+
150
+#
151
+# FreeType2 library postscript hinting module
152
+#
153
+pshinter.ppc.o: FT:src/pshinter/pshinter.c
154
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/pshinter/pshinter.c
155
+
156
+#
157
+# FreeType2 library PS support module
158
+#
159
+psaux.ppc.o: FT:src/psaux/psaux.c
160
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/psaux/psaux.c
161
+
162
+#
163
+# FreeType2 library PS glyph names module
164
+#
165
+psnames.ppc.o: FT:src/psnames/psnames.c
166
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/psnames/psnames.c
167
+
168
+#
169
+# FreeType2 library monochrome raster module
170
+#
171
+raster.ppc.o: FT:src/raster/raster.c
172
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/raster/raster.c
173
+
174
+#
175
+# FreeType2 library anti-aliasing raster module
176
+#
177
+smooth.ppc.o: FT:src/smooth/smooth.c
178
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/smooth/smooth.c
179
+
180
+#
181
+# FreeType2 library 'sfnt' module
182
+#
183
+sfnt.ppc.o: FT:src/sfnt/sfnt.c
184
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/sfnt/sfnt.c
185
+
186
+#
187
+# FreeType2 library glyph and image caching system
188
+#
189
+ftcache.ppc.o: FT:src/cache/ftcache.c
190
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/cache/ftcache.c
191
+
192
+#
193
+# FreeType2 library OpenType font driver
194
+#
195
+cff.ppc.o: FT:src/cff/cff.c
196
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/cff/cff.c
197
+
198
+#
199
+# FreeType2 library TrueType font driver
200
+#
201
+truetype.ppc.o: FT:src/truetype/truetype.c
202
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/truetype/truetype.c
203
+
204
+#
205
+# FreeType2 library Type1 font driver
206
+#
207
+type1.ppc.o: FT:src/type1/type1.c
208
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/type1/type1.c
209
+
210
+#
211
+# FreeType2 library Type42 font driver
212
+#
213
+type42.ppc.o: FT:src/type42/type42.c
214
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/type42/type42.c
215
+
216
+#
217
+# FreeType2 library CID-keyed Type1 font driver
218
+#
219
+type1cid.ppc.o: FT:src/cid/type1cid.c
220
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/cid/type1cid.c
221
+
222
+#
223
+# FreeType2 library BDF bitmap font driver
224
+#
225
+bdf.ppc.o: FT:src/bdf/bdf.c
226
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/bdf/bdf.c
227
+
228
+#
229
+# FreeType2 library PCF bitmap font driver
230
+#
231
+pcf.ppc.o: FT:src/pcf/pcf.c
232
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/pcf/pcf.c
233
+
234
+#
235
+# FreeType2 library gzip support for compressed PCF bitmap fonts
236
+#
237
+gzip.ppc.o: FT:src/gzip/ftgzip.c
238
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/gzip/ftgzip.c
239
+
240
+#
241
+# FreeType2 library bzip2 support for compressed PCF bitmap fonts
242
+#
243
+bzip2.ppc.o: FT:src/bzip2/ftbzip2.c
244
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/bzip2/ftbzip2.c
245
+
246
+#
247
+# FreeType2 library compress support for compressed PCF bitmap fonts
248
+#
249
+lzw.ppc.o: FT:src/lzw/ftlzw.c
250
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/lzw/ftlzw.c
251
+
252
+#
253
+# FreeType2 library PFR font driver
254
+#
255
+pfr.ppc.o: FT:src/pfr/pfr.c
256
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/pfr/pfr.c
257
+
258
+#
259
+# FreeType2 library Windows FNT/FON bitmap font driver
260
+#
261
+winfnt.ppc.o: FT:src/winfonts/winfnt.c
262
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/winfonts/winfnt.c
263
+
264
+#
265
+# FreeType2 library TrueTypeGX Validator
266
+#
267
+gxvalid.ppc.o: FT:src/gxvalid/gxvalid.c
268
+	$(CC) -c $(CFLAGS) -Wno-aggregate-return -o $@ /FT/src/gxvalid/gxvalid.c
269
+
270
+#
271
+# FreeType2 library OpenType validator
272
+#
273
+otvalid.ppc.o: FT:src/otvalid/otvalid.c
274
+	$(CC) -c $(CFLAGS) -o $@ /FT/src/otvalid/otvalid.c
275
+
276
+BASE = ftbase.ppc.o ftbbox.ppc.o ftbdf.ppc.o ftbitmap.ppc.o ftcid.ppc.o   \
277
+       ftfstype.ppc.o ftgasp.ppc.o ftglyph.ppc.o ftgxval.ppc.o            \
278
+       ftlcdfil.ppc.o ftmm.ppc.o ftotval.ppc.o ftpatent.ppc.o ftpfr.ppc.o \
279
+       ftstroke.ppc.o ftsynth.ppc.o fttype1.ppc.o ftwinfnt.ppc.o          \
280
+       ftxf86.ppc.o
281
+
282
+DEBUG = ftdebug.ppc.o ftdebugpure.ppc.o
283
+
284
+AFIT = autofit.ppc.o
285
+
286
+GXV = gxvalid.ppc.o
287
+
288
+OTV = otvalid.ppc.o
289
+
290
+PS = psaux.ppc.o psnames.ppc.o pshinter.ppc.o
291
+
292
+RASTER = raster.ppc.o smooth.ppc.o
293
+
294
+FONTD = cff.ppc.o type1.ppc.o type42.ppc.o type1cid.ppc.o truetype.ppc.o\
295
+	bdf.ppc.o pcf.ppc.o pfr.ppc.o winfnt.ppc.o
296
+
297
+libft2_ppc.a:      $(BASE) $(AFIT) $(GXV) $(OTV) $(PS) $(RASTER) sfnt.ppc.o ftcache.ppc.o $(FONTD) gzip.ppc.o lzw.ppc.o
298
+	$(AR) r $@ $(BASE) $(AFIT) $(GXV) $(OTV) $(PS) $(RASTER) sfnt.ppc.o ftcache.ppc.o $(FONTD) gzip.ppc.o lzw.ppc.o
299
+	$(RANLIB) $@
300
+
301
+#Local Variables:
302
+#coding: latin-1
303
+#End:

+ 303
- 0
lib/freetype/builds/amiga/smakefile View File

@@ -0,0 +1,303 @@
1
+#
2
+# Makefile for FreeType2 link library using Amiga SAS/C 6.58
3
+#
4
+
5
+
6
+# Copyright 2005-2007, 2009, 2013 by
7
+# Werner Lemberg and Detlef Würkner.
8
+#
9
+# This file is part of the FreeType project, and may only be used, modified,
10
+# and distributed under the terms of the FreeType project license,
11
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
12
+# indicate that you have read the license and understand and accept it
13
+# fully.
14
+
15
+
16
+# to build from the builds/amiga directory call
17
+#
18
+#  smake assign
19
+#  smake
20
+#
21
+# Your programs source code should start with this
22
+# (uncomment the parts you do not need to keep the program small):
23
+# ---8<---
24
+#define FT_USE_AUTOFIT // autofitter
25
+#define FT_USE_RASTER  // monochrome rasterizer
26
+#define FT_USE_SMOOTH  // anti-aliasing rasterizer
27
+#define FT_USE_TT      // truetype font driver
28
+#define FT_USE_T1      // type1 font driver
29
+#define FT_USE_T42     // type42 font driver
30
+#define FT_USE_T1CID   // cid-keyed type1 font driver
31
+#define FT_USE_CFF     // opentype font driver
32
+#define FT_USE_BDF     // bdf bitmap font driver
33
+#define FT_USE_PCF     // pcf bitmap font driver
34
+#define FT_USE_PFR     // pfr font driver
35
+#define FT_USE_WINFNT  // windows .fnt|.fon bitmap font driver
36
+#define FT_USE_OTV     // opentype validator
37
+#define FT_USE_GXV     // truetype gx validator
38
+#include "FT:src/base/ftinit.c"
39
+# ---8<---
40
+#
41
+# link your programs with ft2_680x0.lib and either ftsystem.o or ftsystempure.o
42
+# (and either ftdebug.o or ftdebugpure.o if you enabled FT_DEBUG_LEVEL_ERROR or
43
+# FT_DEBUG_LEVEL_TRACE in include/config/ftoption.h).
44
+
45
+OBJBASE = ftbase.o ftbbox.o ftbdf.o ftbitmap.o ftcid.o ftfstype.o ftgasp.o   \
46
+	  ftglyph.o ftgxval.o ftlcdfil.o ftmm.o ftotval.o ftpatent.o ftpfr.o \
47
+	  ftstroke.o ftsynth.o fttype1.o ftwinfnt.o ftxf86.o
48
+
49
+OBJSYSTEM = ftsystem.o ftsystempure.o
50
+
51
+OBJDEBUG = ftdebug.o ftdebugpure.o
52
+
53
+OBJAFIT = autofit.o
54
+
55
+OBJGXV = gxvalid.o
56
+
57
+OBJOTV = otvalid.o
58
+
59
+OBJPS = psaux.o psnames.o pshinter.o
60
+
61
+OBJRASTER = raster.o smooth.o
62
+
63
+OBJSFNT = sfnt.o
64
+
65
+OBJCACHE = ftcache.o
66
+
67
+OBJFONTD = cff.o type1.o type42.o type1cid.o\
68
+	   truetype.o winfnt.o bdf.o pcf.o pfr.o
69
+
70
+CORE = FT:src/
71
+
72
+CPU       = 68000
73
+#CPU      = 68020
74
+#CPU      = 68030
75
+#CPU      = 68040
76
+#CPU      = 68060
77
+
78
+OPTIMIZER = optinlocal
79
+
80
+SCFLAGS = optimize opttime optsched strmerge data=faronly idlen=50 cpu=$(CPU)\
81
+	  idir=include/ idir=$(CORE) idir=FT:include/ nostackcheck nochkabort\
82
+	  noicons ignore=79,85,110,306 parameters=both define=FT2_BUILD_LIBRARY
83
+
84
+LIB  = ft2_$(CPU).lib
85
+
86
+# sample linker options
87
+OPTS = link lib=$(LIB),lib:sc.lib,lib:amiga.lib,lib:debug.lib\
88
+       smallcode smalldata noicons utillib
89
+
90
+# sample program entry
91
+#myprog: myprog.c ftsystem.o $(LIB)
92
+#	sc $< programname=$@ ftsystem.o $(SCFLAGS) $(OPTS)
93
+
94
+all:	$(LIB) $(OBJSYSTEM) $(OBJDEBUG)
95
+
96
+assign:
97
+	assign FT: //
98
+
99
+# uses separate object modules in lib to make for easier debugging
100
+# also, can make smaller programs if entire engine is not used
101
+ft2_$(CPU).lib:  $(OBJBASE) $(OBJAFIT) $(OBJOTV) $(OBJPS) $(OBJRASTER) $(OBJSFNT) $(OBJCACHE) $(OBJFONTD) lzw.o gzip.o bzip2.o
102
+	oml $@ r $(OBJBASE) $(OBJAFIT) $(OBJOTV) $(OBJPS) $(OBJRASTER) $(OBJSFNT) $(OBJCACHE) $(OBJFONTD) lzw.o gzip.o bzip2.o
103
+
104
+clean:
105
+	-delete \#?.o
106
+
107
+realclean: clean
108
+	-delete ft2$(CPU).lib
109
+
110
+#
111
+# freetype library base
112
+#
113
+ftbase.o: $(CORE)base/ftbase.c
114
+	sc $(SCFLAGS) objname=$@ $<
115
+ftinit.o: $(CORE)base/ftinit.c
116
+	sc $(SCFLAGS) objname=$@ $<
117
+ftsystem.o: $(CORE)base/ftsystem.c
118
+	sc $(SCFLAGS) objname=$@ $<
119
+ftsystempure.o: src/base/ftsystem.c	## pure version for use in run-time library etc
120
+	sc $(SCFLAGS) objname=$@ $<
121
+ftdebug.o: $(CORE)base/ftdebug.c
122
+	sc $(SCFLAGS) objname=$@ $<
123
+ftdebugpure.o: src/base/ftdebug.c	## pure version for use in run-time library etc
124
+	sc $(SCFLAGS) objname=$@ $<
125
+#
126
+# freetype library base extensions
127
+#
128
+ftbbox.o: $(CORE)base/ftbbox.c
129
+	sc $(SCFLAGS) objname=$@ $<
130
+ftbdf.o: $(CORE)base/ftbdf.c
131
+	sc $(SCFLAGS) objname=$@ $<
132
+ftbitmap.o: $(CORE)base/ftbitmap.c
133
+	sc $(SCFLAGS) objname=$@ $<
134
+ftcid.o: $(CORE)base/ftcid.c
135
+	sc $(SCFLAGS) objname=$@ $<
136
+ftfstype.o: $(CORE)base/ftfstype.c
137
+	sc $(SCFLAGS) objname=$@ $<
138
+ftgasp.o: $(CORE)base/ftgasp.c
139
+	sc $(SCFLAGS) objname=$@ $<
140
+ftglyph.o: $(CORE)base/ftglyph.c
141
+	sc $(SCFLAGS) objname=$@ $<
142
+ftgxval.o: $(CORE)base/ftgxval.c
143
+	sc $(SCFLAGS) objname=$@ $<
144
+ftlcdfil.o: $(CORE)base/ftlcdfil.c
145
+	sc $(SCFLAGS) objname=$@ $<
146
+ftmm.o: $(CORE)base/ftmm.c
147
+	sc $(SCFLAGS) objname=$@ $<
148
+ftotval.o: $(CORE)base/ftotval.c
149
+	sc $(SCFLAGS) objname=$@ $<
150
+ftpatent.o: $(CORE)base/ftpatent.c
151
+	sc $(SCFLAGS) objname=$@ $<
152
+ftpfr.o: $(CORE)base/ftpfr.c
153
+	sc $(SCFLAGS) objname=$@ $<
154
+ftstroke.o: $(CORE)base/ftstroke.c
155
+	sc $(SCFLAGS) objname=$@ $<
156
+ftsynth.o: $(CORE)base/ftsynth.c
157
+	sc $(SCFLAGS) objname=$@ $<
158
+fttype1.o: $(CORE)base/fttype1.c
159
+	sc $(SCFLAGS) objname=$@ $<
160
+ftwinfnt.o: $(CORE)base/ftwinfnt.c
161
+	sc $(SCFLAGS) objname=$@ $<
162
+ftxf86.o: $(CORE)base/ftxf86.c
163
+	sc $(SCFLAGS) objname=$@ $<
164
+
165
+#
166
+# freetype library autofitter module
167
+#
168
+autofit.o: $(CORE)autofit/autofit.c
169
+	sc $(SCFLAGS) objname=$@ $<
170
+
171
+#
172
+# freetype library PS hinting module
173
+#
174
+pshinter.o: $(CORE)pshinter/pshinter.c
175
+	sc $(SCFLAGS) objname=$@ $<
176
+#
177
+# freetype library PS support module
178
+#
179
+psaux.o: $(CORE)psaux/psaux.c
180
+	sc $(SCFLAGS) objname=$@ $<
181
+
182
+#
183
+# freetype library PS glyph names module
184
+#
185
+psnames.o: $(CORE)psnames/psnames.c
186
+	sc $(SCFLAGS) code=far objname=$@ $<
187
+
188
+#
189
+# freetype library monochrome raster module
190
+#
191
+raster.o: $(CORE)raster/raster.c
192
+	sc $(SCFLAGS) objname=$@ $<
193
+
194
+#
195
+# freetype library anti-aliasing raster module
196
+#
197
+smooth.o: $(CORE)smooth/smooth.c
198
+	sc $(SCFLAGS) objname=$@ $<
199
+
200
+#
201
+# freetype library 'sfnt' module
202
+#
203
+sfnt.o: $(CORE)sfnt/sfnt.c
204
+	sc $(SCFLAGS) objname=$@ $<
205
+
206
+#
207
+# freetype library glyph and image caching system (still experimental)
208
+#
209
+ftcache.o: $(CORE)cache/ftcache.c
210
+	sc $(SCFLAGS) objname=$@ $<
211
+
212
+#
213
+# freetype library OpenType font driver
214
+#
215
+cff.o: $(CORE)cff/cff.c
216
+	sc $(SCFLAGS) objname=$@ $<
217
+
218
+#
219
+# freetype library TrueType font driver
220
+#
221
+truetype.o: $(CORE)truetype/truetype.c
222
+	sc $(SCFLAGS) objname=$@ $<
223
+
224
+#
225
+# freetype library Type1 font driver
226
+#
227
+type1.o: $(CORE)type1/type1.c
228
+	sc $(SCFLAGS) objname=$@ $<
229
+
230
+#
231
+# FreeType2 library Type42 font driver
232
+#
233
+type42.o: $(CORE)type42/type42.c
234
+	sc $(SCFLAGS) objname=$@ $<
235
+
236
+#
237
+# freetype library CID-keyed Type1 font driver
238
+#
239
+type1cid.o: $(CORE)cid/type1cid.c
240
+	sc $(SCFLAGS) objname=$@ $<
241
+#
242
+# freetype library CID-keyed Type1 font driver extensions
243
+#
244
+#cidafm.o: $(CORE)cid/cidafm.c
245
+#	sc $(SCFLAGS) objname=$@ $<
246
+
247
+#
248
+# freetype library BDF bitmap font driver
249
+#
250
+bdf.o: $(CORE)bdf/bdf.c
251
+	sc $(SCFLAGS) objname=$@ $<
252
+
253
+#
254
+# freetype library PCF bitmap font driver
255
+#
256
+pcf.o: $(CORE)pcf/pcf.c
257
+	sc $(SCFLAGS) objname=$@ $<
258
+
259
+#
260
+# freetype library gzip support for compressed PCF bitmap fonts
261
+#
262
+gzip.o: $(CORE)gzip/ftgzip.c
263
+	sc $(SCFLAGS) define FAR objname=$@ $<
264
+
265
+#
266
+# freetype library bzip2 support for compressed PCF bitmap fonts
267
+#
268
+bzip2.o: $(CORE)bzip2/ftbzip2.c
269
+	sc $(SCFLAGS) define FAR objname=$@ $<
270
+
271
+#
272
+# freetype library compress support for compressed PCF bitmap fonts
273
+#
274
+lzw.o: $(CORE)lzw/ftlzw.c
275
+	sc $(SCFLAGS) objname=$@ $<
276
+
277
+#
278
+# freetype library PFR font driver
279
+#
280
+pfr.o: $(CORE)pfr/pfr.c
281
+	sc $(SCFLAGS) objname=$@ $<
282
+
283
+#
284
+# freetype library Windows FNT/FON bitmap font driver
285
+#
286
+winfnt.o: $(CORE)winfonts/winfnt.c
287
+	sc $(SCFLAGS) objname=$@ $<
288
+
289
+#
290
+# freetype library TrueTypeGX validator
291
+#
292
+gxvalid.o: $(CORE)gxvalid/gxvalid.c
293
+	sc $(SCFLAGS) objname=$@ $<
294
+
295
+#
296
+# freetype library OpenType validator
297
+#
298
+otvalid.o: $(CORE)otvalid/otvalid.c
299
+	sc $(SCFLAGS) objname=$@ $<
300
+
301
+#Local Variables:
302
+#coding: latin-1
303
+#End:

+ 297
- 0
lib/freetype/builds/amiga/src/base/ftdebug.c View File

@@ -0,0 +1,297 @@
1
+/***************************************************************************/
2
+/*                                                                         */
3
+/*  ftdebug.c                                                              */
4
+/*                                                                         */
5
+/*    Debugging and logging component for amiga (body).                    */
6
+/*                                                                         */
7
+/*  Copyright 1996-2002, 2004, 2005, 2013 by                               */
8
+/*  David Turner, Robert Wilhelm, Werner Lemberg and Detlef Würkner.       */
9
+/*                                                                         */
10
+/*  This file is part of the FreeType project, and may only be used,       */
11
+/*  modified, and distributed under the terms of the FreeType project      */
12
+/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
13
+/*  this file you indicate that you have read the license and              */
14
+/*  understand and accept it fully.                                        */
15
+/*                                                                         */
16
+/***************************************************************************/
17
+
18
+
19
+  /*************************************************************************/
20
+  /*                                                                       */
21
+  /* This component contains various macros and functions used to ease the */
22
+  /* debugging of the FreeType engine.  Its main purpose is in assertion   */
23
+  /* checking, tracing, and error detection.                               */
24
+  /*                                                                       */
25
+  /* There are now three debugging modes:                                  */
26
+  /*                                                                       */
27
+  /* - trace mode                                                          */
28
+  /*                                                                       */
29
+  /*   Error and trace messages are sent to the log file (which can be the */
30
+  /*   standard error output).                                             */
31
+  /*                                                                       */
32
+  /* - error mode                                                          */
33
+  /*                                                                       */
34
+  /*   Only error messages are generated.                                  */
35
+  /*                                                                       */
36
+  /* - release mode:                                                       */
37
+  /*                                                                       */
38
+  /*   No error message is sent or generated.  The code is free from any   */
39
+  /*   debugging parts.                                                    */
40
+  /*                                                                       */
41
+  /*************************************************************************/
42
+
43
+
44
+  /*
45
+   * Based on the default ftdebug.c,
46
+   * replaced vprintf() with KVPrintF(),
47
+   * commented out exit(),
48
+   * replaced getenv() with GetVar().
49
+   */
50
+
51
+#include <exec/types.h>
52
+#include <utility/tagitem.h>
53
+#include <dos/exall.h>
54
+#include <dos/var.h>
55
+#define __NOLIBBASE__
56
+#define __NOLOBALIFACE__
57
+#define __USE_INLINE__
58
+#include <proto/dos.h>
59
+#include <clib/debug_protos.h>
60
+
61
+#ifndef __amigaos4__
62
+  extern struct Library *DOSBase;
63
+#else
64
+  extern struct DOSIFace *IDOS;
65
+#endif
66
+
67
+
68
+#include <ft2build.h>
69
+#include FT_FREETYPE_H
70
+#include FT_INTERNAL_DEBUG_H
71
+
72
+
73
+#if defined( FT_DEBUG_LEVEL_ERROR )
74
+
75
+  /* documentation is in ftdebug.h */
76
+
77
+  FT_BASE_DEF( void )
78
+  FT_Message( const char*  fmt,
79
+              ... )
80
+  {
81
+    va_list  ap;
82
+
83
+
84
+    va_start( ap, fmt );
85
+    KVPrintF( fmt, ap );
86
+    va_end( ap );
87
+  }
88
+
89
+
90
+  /* documentation is in ftdebug.h */
91
+
92
+  FT_BASE_DEF( void )
93
+  FT_Panic( const char*  fmt,
94
+            ... )
95
+  {
96
+    va_list  ap;
97
+
98
+
99
+    va_start( ap, fmt );
100
+    KVPrintF( fmt, ap );
101
+    va_end( ap );
102
+
103
+/*  exit( EXIT_FAILURE ); */
104
+  }
105
+
106
+
107
+  /* documentation is in ftdebug.h */
108
+
109
+  FT_BASE_DEF( int )
110
+  FT_Throw( FT_Error     error,
111
+            int          line,
112
+            const char*  file )
113
+  {
114
+    FT_UNUSED( error );
115
+    FT_UNUSED( line );
116
+    FT_UNUSED( file );
117
+
118
+    return 0;
119
+  }
120
+
121
+#endif /* FT_DEBUG_LEVEL_ERROR */
122
+
123
+
124
+
125
+#ifdef FT_DEBUG_LEVEL_TRACE
126
+
127
+  /* array of trace levels, initialized to 0 */
128
+  int  ft_trace_levels[trace_count];
129
+
130
+
131
+  /* define array of trace toggle names */
132
+#define FT_TRACE_DEF( x )  #x ,
133
+
134
+  static const char*  ft_trace_toggles[trace_count + 1] =
135
+  {
136
+#include FT_INTERNAL_TRACE_H
137
+    NULL
138
+  };
139
+
140
+#undef FT_TRACE_DEF
141
+
142
+
143
+  /* documentation is in ftdebug.h */
144
+
145
+  FT_BASE_DEF( FT_Int )
146
+  FT_Trace_Get_Count( void )
147
+  {
148
+    return trace_count;
149
+  }
150
+
151
+
152
+  /* documentation is in ftdebug.h */
153
+
154
+  FT_BASE_DEF( const char * )
155
+  FT_Trace_Get_Name( FT_Int  idx )
156
+  {
157
+    int  max = FT_Trace_Get_Count();
158
+
159
+
160
+    if ( idx < max )
161
+      return ft_trace_toggles[idx];
162
+    else
163
+      return NULL;
164
+  }
165
+
166
+
167
+  /*************************************************************************/
168
+  /*                                                                       */
169
+  /* Initialize the tracing sub-system.  This is done by retrieving the    */
170
+  /* value of the `FT2_DEBUG' environment variable.  It must be a list of  */
171
+  /* toggles, separated by spaces, `;', or `,'.  Example:                  */
172
+  /*                                                                       */
173
+  /*    export FT2_DEBUG="any:3 memory:7 stream:5"                         */
174
+  /*                                                                       */
175
+  /* This requests that all levels be set to 3, except the trace level for */
176
+  /* the memory and stream components which are set to 7 and 5,            */
177
+  /* respectively.                                                         */
178
+  /*                                                                       */
179
+  /* See the file <include/internal/fttrace.h> for details of the          */
180
+  /* available toggle names.                                               */
181
+  /*                                                                       */
182
+  /* The level must be between 0 and 7; 0 means quiet (except for serious  */
183
+  /* runtime errors), and 7 means _very_ verbose.                          */
184
+  /*                                                                       */
185
+  FT_BASE_DEF( void )
186
+  ft_debug_init( void )
187
+  {
188
+/*  const char*  ft2_debug = getenv( "FT2_DEBUG" ); */
189
+    char         buf[256];
190
+    const char*  ft2_debug = &buf[0];
191
+
192
+
193
+/*  if ( ft2_debug ) */
194
+    if ( GetVar( "FT2_DEBUG", (STRPTR)ft2_debug, 256, LV_VAR ) > 0 )
195
+    {
196
+      const char*  p = ft2_debug;
197
+      const char*  q;
198
+
199
+
200
+      for ( ; *p; p++ )
201
+      {
202
+        /* skip leading whitespace and separators */
203
+        if ( *p == ' ' || *p == '\t' || *p == ',' || *p == ';' || *p == '=' )
204
+          continue;
205
+
206
+        /* read toggle name, followed by ':' */
207
+        q = p;
208
+        while ( *p && *p != ':' )
209
+          p++;
210
+
211
+        if ( !*p )
212
+          break;
213
+
214
+        if ( *p == ':' && p > q )
215
+        {
216
+          FT_Int  n, i, len = (FT_Int)( p - q );
217
+          FT_Int  level = -1, found = -1;
218
+
219
+
220
+          for ( n = 0; n < trace_count; n++ )
221
+          {
222
+            const char*  toggle = ft_trace_toggles[n];
223
+
224
+
225
+            for ( i = 0; i < len; i++ )
226
+            {
227
+              if ( toggle[i] != q[i] )
228
+                break;
229
+            }
230
+
231
+            if ( i == len && toggle[i] == 0 )
232
+            {
233
+              found = n;
234
+              break;
235
+            }
236
+          }
237
+
238
+          /* read level */