summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnurag Thakur <anurag105csec21@bpitindia.edu.in>2021-10-29 10:00:59 +0530
committerAnurag Thakur <anurag105csec21@bpitindia.edu.in>2022-10-04 03:16:11 +0530
commitdee8855a9cec4f90ef8686738f2ebf39b22b1542 (patch)
tree6252cdd417f321ec14855b272d8e967fe3fc126a
parent9b40ce9cbc08f0c4c66159252490d48f33313edd (diff)
downloadfreetype2-dee8855a9cec4f90ef8686738f2ebf39b22b1542.tar.gz
Compilation fix attempt #1
-rw-r--r--builds/amiga/include/config/ftmodule.h9
-rw-r--r--include/freetype/config/ftmodule.h3
-rw-r--r--modules.cfg1
-rw-r--r--src/dense/dense.c3
-rw-r--r--src/dense/ftdense.c6
-rw-r--r--src/dense/module.mk23
-rw-r--r--src/dense/rules.mk73
7 files changed, 113 insertions, 5 deletions
diff --git a/builds/amiga/include/config/ftmodule.h b/builds/amiga/include/config/ftmodule.h
index 73e86d5b6..50087554f 100644
--- a/builds/amiga/include/config/ftmodule.h
+++ b/builds/amiga/include/config/ftmodule.h
@@ -4,8 +4,13 @@
/* */
/* Amiga-specific FreeType module selection. */
/* */
+<<<<<<< HEAD
/* Copyright (C) 2005-2022 by */
/* Werner Lemberg and Detlef Würkner. */
+=======
+/* Copyright (C) 2005-2021 by */
+/* Werner Lemberg and Detlef W�rkner. */
+>>>>>>> d9fdb2202 (Compilation fix attempt #1)
/* */
/* This file is part of the FreeType project, and may only be used, */
/* modified, and distributed under the terms of the FreeType project */
@@ -135,6 +140,10 @@ FT_USE_MODULE( FT_Renderer_Class, ft_raster1_renderer_class )
FT_USE_MODULE( FT_Module_Class, sfnt_module_class )
#endif
+#ifdef FT_USE_DENSE
+FT_USE_MODULE( FT_Renderer_Class, ft_dense_renderer_class )
+#endif
+
#ifdef FT_USE_SMOOTH
FT_USE_MODULE( FT_Renderer_Class, ft_smooth_renderer_class )
#endif
diff --git a/include/freetype/config/ftmodule.h b/include/freetype/config/ftmodule.h
index 992d48de2..3b692aa28 100644
--- a/include/freetype/config/ftmodule.h
+++ b/include/freetype/config/ftmodule.h
@@ -24,12 +24,11 @@ FT_USE_MODULE( FT_Module_Class, psaux_module_class )
FT_USE_MODULE( FT_Module_Class, psnames_module_class )
FT_USE_MODULE( FT_Module_Class, pshinter_module_class )
FT_USE_MODULE( FT_Module_Class, sfnt_module_class )
+FT_USE_MODULE( FT_Renderer_Class, ft_dense_renderer_class )
FT_USE_MODULE( FT_Renderer_Class, ft_smooth_renderer_class )
FT_USE_MODULE( FT_Renderer_Class, ft_raster1_renderer_class )
FT_USE_MODULE( FT_Renderer_Class, ft_sdf_renderer_class )
FT_USE_MODULE( FT_Renderer_Class, ft_bitmap_sdf_renderer_class )
FT_USE_MODULE( FT_Renderer_Class, ft_svg_renderer_class )
-FT_USE_MODULE( FT_Renderer_Class, ft_dense_renderer_class )
-
/* EOF */
diff --git a/modules.cfg b/modules.cfg
index aded92e5e..986b46fd3 100644
--- a/modules.cfg
+++ b/modules.cfg
@@ -93,6 +93,7 @@ HINTING_MODULES += pshinter
#### raster modules -- at least one is required for vector font formats
####
+RASTER_MODULES += dense
# Anti-aliasing rasterizer.
RASTER_MODULES += smooth
diff --git a/src/dense/dense.c b/src/dense/dense.c
index 6893aa715..4377264f2 100644
--- a/src/dense/dense.c
+++ b/src/dense/dense.c
@@ -1,3 +1,6 @@
/** For building a single object of the entire module */
+#define FT_MAKE_OPTION_SINGLE_OBJECT
+#include "ftdense.c"
+#include "ftdenserend.c"
/* END */ \ No newline at end of file
diff --git a/src/dense/ftdense.c b/src/dense/ftdense.c
index f2df0517e..5ff511a77 100644
--- a/src/dense/ftdense.c
+++ b/src/dense/ftdense.c
@@ -49,7 +49,7 @@ dense_line_to( const FT_Vector* to, RasterFP* aRasterFP )
void
RasterFP_DrawLine( RasterFP* aRasterFP, RasterFP_Point aP0, RasterFP_Point aP1 )
{
- assert( aRasterFP );
+ // assert( aRasterFP );
if ( aP0.m_y == aP1.m_y )
return;
@@ -221,7 +221,7 @@ RasterFP_DrawQuadratic( RasterFP* aRasterFP,
RasterFP_Point aP1,
RasterFP_Point aP2 )
{
- assert( aRasterFP );
+ // assert( aRasterFP );
/*
Calculate devsq as the square of four times the
@@ -297,7 +297,7 @@ RasterFP_DrawCubic( RasterFP* aRasterFP,
RasterFP_Point aP2,
RasterFP_Point aP3 )
{
- assert( aRasterFP );
+ // assert( aRasterFP );
float devx = aP0.m_x - aP1.m_x - aP1.m_x + aP2.m_x;
float devy = aP0.m_y - aP1.m_y - aP1.m_y + aP2.m_y;
diff --git a/src/dense/module.mk b/src/dense/module.mk
new file mode 100644
index 000000000..cf6b9cfac
--- /dev/null
+++ b/src/dense/module.mk
@@ -0,0 +1,23 @@
+#
+# FreeType 2 smooth renderer module definition
+#
+
+
+# Copyright (C) 1996-2021 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.
+
+
+FTMODULE_H_COMMANDS += DENSE_RENDERER
+
+define DENSE_RENDERER
+$(OPEN_DRIVER) FT_Renderer_Class, ft_dense_renderer_class $(CLOSE_DRIVER)
+$(ECHO_DRIVER)dense $(ECHO_DRIVER_DESC)anti-aliased dense renderer$(ECHO_DRIVER_DONE)
+endef
+
+# EOF
diff --git a/src/dense/rules.mk b/src/dense/rules.mk
new file mode 100644
index 000000000..005116873
--- /dev/null
+++ b/src/dense/rules.mk
@@ -0,0 +1,73 @@
+#
+# FreeType 2 DENSE renderer module build rules
+#
+
+
+# Copyright (C) 1996-2021 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.
+
+
+# DENSE driver directory
+#
+DENSE_DIR := $(SRC_DIR)/dense
+
+
+# compilation flags for the driver
+#
+DENSE_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(DENSE_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
+
+
+# DENSE driver sources (i.e., C files)
+#
+DENSE_DRV_SRC := $(DENSE_DIR)/ftdense.c \
+ $(DENSE_DIR)/ftdenserend.c
+
+
+# DENSE driver headers
+#
+DENSE_DRV_H := $(DENSE_DRV_SRC:%c=%h) \
+ $(DENSE_DIR)/ftdenseerrs.h
+
+
+# DENSE driver object(s)
+#
+# DENSE_DRV_OBJ_M is used during `multi' builds.
+# DENSE_DRV_OBJ_S is used during `single' builds.
+#
+DENSE_DRV_OBJ_M := $(DENSE_DRV_SRC:$(DENSE_DIR)/%.c=$(OBJ_DIR)/%.$O)
+DENSE_DRV_OBJ_S := $(OBJ_DIR)/dense.$O
+
+# DENSE driver source file for single build
+#
+DENSE_DRV_SRC_S := $(DENSE_DIR)/dense.c
+
+
+# DENSE driver - single object
+#
+$(DENSE_DRV_OBJ_S): $(DENSE_DRV_SRC_S) $(DENSE_DRV_SRC) \
+ $(FREETYPE_H) $(DENSE_DRV_H)
+ $(DENSE_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $(DENSE_DRV_SRC_S))
+
+
+# DENSE driver - multiple objects
+#
+$(OBJ_DIR)/%.$O: $(DENSE_DIR)/%.c $(FREETYPE_H) $(DENSE_DRV_H)
+ $(DENSE_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<)
+
+
+# update main driver object lists
+#
+DRV_OBJS_S += $(DENSE_DRV_OBJ_S)
+DRV_OBJS_M += $(DENSE_DRV_OBJ_M)
+
+
+# EOF