freetype-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[freetype2] gsoc-anurag-2022-final 15ad393e4 05/32: Compilation fix atte


From: Werner Lemberg
Subject: [freetype2] gsoc-anurag-2022-final 15ad393e4 05/32: Compilation fix attempt #1
Date: Sun, 13 Nov 2022 23:49:22 -0500 (EST)

branch: gsoc-anurag-2022-final
commit 15ad393e441008c52a9c50131a538b910b97d468
Author: Anurag Thakur <anurag105csec21@bpitindia.edu.in>
Commit: Anurag Thakur <anurag105csec21@bpitindia.edu.in>

    Compilation fix attempt #1
---
 builds/amiga/include/config/ftmodule.h |  9 +++++
 include/freetype/config/ftmodule.h     |  3 +-
 modules.cfg                            |  1 +
 src/dense/dense.c                      |  3 ++
 src/dense/ftdense.c                    |  6 +--
 src/dense/module.mk                    | 23 +++++++++++
 src/dense/rules.mk                     | 73 ++++++++++++++++++++++++++++++++++
 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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]