* src/autofit/{rules.mk,module.mk,afangles.h}: adding missing files * src/autofit/afloader.c: fixing small bug that could crash the engine with certain fonts.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125
diff --git a/ChangeLog b/ChangeLog
index 82d7a8b..c198795 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2005-03-01 David Turner <david@freetype.org>
+ * src/autofit/{rules.mk,module.mk,afangles.h}: adding missing files
+
+ * src/autofit/afloader.c: fixing small bug that could crash the engine
+ with certain fonts.
+
* src/autofit/{afhints.h,afhints.c,aflatin.h,aflatin.c,afloader.c}:
various bug-fixes and drastic heap usage reduction improvements.
diff --git a/src/autofit/afangles.h b/src/autofit/afangles.h
new file mode 100644
index 0000000..593b40c
--- /dev/null
+++ b/src/autofit/afangles.h
@@ -0,0 +1,3 @@
+/* this is a dummy file. used to please the build system. It is never
+ * included by the auto-fitter sources
+ */
diff --git a/src/autofit/afloader.c b/src/autofit/afloader.c
index c03a9f3..b88d29d 100644
--- a/src/autofit/afloader.c
+++ b/src/autofit/afloader.c
@@ -167,7 +167,7 @@
axis->num_edges - 1; /* rightmost edge */
- if ( edge2 > edge1 )
+ if ( axis->num_edges > 1 )
{
old_advance = loader->pp2.x;
old_rsb = old_advance - edge2->opos;
diff --git a/src/autofit/module.mk b/src/autofit/module.mk
new file mode 100644
index 0000000..fca165f
--- /dev/null
+++ b/src/autofit/module.mk
@@ -0,0 +1,12 @@
+#
+# FreeType 2 auto-fitter module definition
+#
+
+
+make_module_list: add_autofit_module
+
+add_autofit_module:
+ $(OPEN_DRIVER)autofit_module_class$(CLOSE_DRIVER)
+ $(ECHO_DRIVER)autofit $(ECHO_DRIVER_DESC)automatic hinting module$(ECHO_DRIVER_DONE)
+
+# EOF
diff --git a/src/autofit/rules.mk b/src/autofit/rules.mk
new file mode 100644
index 0000000..1d65e6f
--- /dev/null
+++ b/src/autofit/rules.mk
@@ -0,0 +1,64 @@
+#
+# FreeType 2 auto-fitter module configuration rules
+#
+
+
+# AUTO driver directory
+#
+AUTOF_DIR := $(SRC_DIR)/autofit
+
+
+# compilation flags for the driver
+#
+AUTOF_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(AUTOF_DIR))
+
+
+# AUTO driver sources (i.e., C files)
+#
+AUTOF_DRV_SRC := $(AUTOF_DIR)/afangles.c \
+ $(AUTOF_DIR)/afdummy.c \
+ $(AUTOF_DIR)/afglobal.c \
+ $(AUTOF_DIR)/afhints.c \
+ $(AUTOF_DIR)/afhints.c \
+ $(AUTOF_DIR)/afloader.c \
+ $(AUTOF_DIR)/afmodule.c
+
+# AUTO driver headers
+#
+AUTOF_DRV_H := $(AUTOF_DRV_SRC:%c=%h) \
+ $(AUTOF_DIR)/aftypes.h
+
+
+# AUTO driver object(s)
+#
+# AUTOF_DRV_OBJ_M is used during `multi' builds.
+# AUTOF_DRV_OBJ_S is used during `single' builds.
+#
+AUTOF_DRV_OBJ_M := $(AUTOF_DRV_SRC:$(AUTOF_DIR)/%.c=$(OBJ_DIR)/%.$O)
+AUTOF_DRV_OBJ_S := $(OBJ_DIR)/autofit.$O
+
+# AUTO driver source file for single build
+#
+AUTOF_DRV_SRC_S := $(AUTOF_DIR)/autofit.c
+
+
+# AUTO driver - single object
+#
+$(AUTOF_DRV_OBJ_S): $(AUTOF_DRV_SRC_S) $(AUTOF_DRV_SRC) \
+ $(FREETYPE_H) $(AUTOF_DRV_H)
+ $(AUTOF_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $(AUTOF_DRV_SRC_S))
+
+
+# AUTO driver - multiple objects
+#
+$(OBJ_DIR)/%.$O: $(AUTOF_DIR)/%.c $(FREETYPE_H) $(AUTOF_DRV_H)
+ $(AUTOF_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<)
+
+
+# update main driver object lists
+#
+DRV_OBJS_S += $(AUTOF_DRV_OBJ_S)
+DRV_OBJS_M += $(AUTOF_DRV_OBJ_M)
+
+
+# EOF