summaryrefslogtreecommitdiff
path: root/base/gstext.h
diff options
context:
space:
mode:
authorRobin Watts <robin.watts@artifex.com>2018-12-17 11:18:07 +0000
committerRobin Watts <robin.watts@artifex.com>2019-01-07 19:42:24 +0000
commite91b67894a28c518b34e0daf75d79715c4aa16e4 (patch)
treee057e05b39777354949d3a2752a5743a86462604 /base/gstext.h
parent763a5f4c3bf94cd7cc3d9fcdcde3d7cac4f38796 (diff)
downloadghostpdl-e91b67894a28c518b34e0daf75d79715c4aa16e4.tar.gz
Remove some blah_DEFINED cruft.
Now we properly "include what we use" let's sanitise the horrid blah_DEFINED ifdeffery (i.e. kill it where possible). Also, we update the .c dependencies in the base/psi makefiles to be correct. Unfortunately, this new correct set of dependencies causes nmake to soil itself and die with an out of memory error. After much experimentation, I've come to the conclusion that this is because it copes poorly with given the same file as a dependency multiple times. Sadly, our style of declaring dependencies in the following style: foo_h=$(BLAH)/foo.h $(std_h) bar_h=$(BLAH)/bar.h $(foo_h) $(std_h) baz_h=$(BLAH)/baz.h $(foo_h) $(std_h) means that a .obj file that depends on $(foo_h) $(bar_h) and $(baz_h) ends up depending on foo.h twice, and std.h three times. I have therefore changed the style of dependencies used to be more standard. We still define: foo_h=$(BLAH)/foo.h so each .obj file rule can depend on $(foo_h) etc as required, but the dependencies between each .h file are expressed in normal rules at the end of the file in a dedicated "# Dependencies" section that we can now autogenerate.
Diffstat (limited to 'base/gstext.h')
-rw-r--r--base/gstext.h30
1 files changed, 4 insertions, 26 deletions
diff --git a/base/gstext.h b/base/gstext.h
index d5364dc67..1dc7cbf61 100644
--- a/base/gstext.h
+++ b/base/gstext.h
@@ -21,7 +21,10 @@
#include "gsccode.h"
#include "gscpm.h"
-#include "gsgstate.h"
+#include "gsdevice.h"
+#include "gsfont.h"
+#include "gsdcolor.h"
+#include "gxpath.h"
/*
* Note that text display must return information to the generic code:
@@ -142,32 +145,7 @@ int gs_text_replaced_width(const gs_text_params_t *text, uint index,
* Define the abstract type for the structure that tracks the state of text
* processing.
*/
-#ifndef gs_text_enum_DEFINED
-# define gs_text_enum_DEFINED
typedef struct gs_text_enum_s gs_text_enum_t;
-#endif
-
-/* Abstract types */
-#ifndef gx_device_DEFINED
-# define gx_device_DEFINED
-typedef struct gx_device_s gx_device;
-#endif
-#ifndef gx_device_color_DEFINED
-# define gx_device_color_DEFINED
-typedef struct gx_device_color_s gx_device_color;
-#endif
-#ifndef gs_font_DEFINED
-# define gs_font_DEFINED
-typedef struct gs_font_s gs_font;
-#endif
-#ifndef gx_path_DEFINED
-# define gx_path_DEFINED
-typedef struct gx_path_s gx_path;
-#endif
-#ifndef gx_clip_path_DEFINED
-# define gx_clip_path_DEFINED
-typedef struct gx_clip_path_s gx_clip_path;
-#endif
/*
* Define the driver procedure for text. This procedure must allocate