pkginclude_HEADERS = gvc.h gvcext.h gvplugin.h gvcjob.h \
gvcommon.h gvplugin_render.h gvplugin_layout.h gvconfig.h \
gvplugin_textlayout.h gvplugin_device.h gvplugin_loadimage.h \
- dot_builtins.c demand_loading.c no_demand_loading.c
+ demand_loading.c no_demand_loading.c
noinst_HEADERS = gvcint.h gvcproc.h gvio.h
noinst_LTLIBRARIES = libgvc_C.la
-lib_LTLIBRARIES = libgvc.la libgvc_builtins.la
-pkgconfig_DATA = libgvc.pc libgvc_builtins.pc
+lib_LTLIBRARIES = libgvc.la
+pkgconfig_DATA = libgvc.pc
man_MANS = gvc.3
pdf_DATA = gvc.3.pdf
libgvc_C_la_LIBADD += $(top_builddir)/lib/ortho/libortho_C.la
libgvc_C_la_DEPENDENCIES += $(top_builddir)/lib/ortho/libortho_C.la
endif
-#For use with plugins.
-# so it is linked with an empty table of builtins.
+
libgvc_la_LDFLAGS = -version-info $(VERSION_INFO) -no-undefined
-libgvc_la_SOURCES = $(libgvc_C_la_SOURCES) no_builtins.c demand_loading.c
+libgvc_la_SOURCES = $(libgvc_C_la_SOURCES) demand_loading.c
libgvc_la_LIBADD = $(libgvc_C_la_LIBADD) \
$(top_builddir)/lib/cdt/libcdt.la \
$(top_builddir)/lib/$(GRAPH)/lib$(GRAPH).la \
$(EXPAT_LIBS) $(Z_LIBS) $(MATH_LIBS)
libgvc_la_DEPENDENCIES = $(libgvc_C_la_DEPENDENCIES)
-#For use without plugins.
-# so it needs to be linked with a preset table of builtins, e.g. dot_builtins.c,
-# with either demand_loading.c or no_demand_loading.c,
-# and with the plugins themselves, e.g.
-# -lgvplugin_dot_layout -lgvplugin_neato_layout -lgvplugin_gd -lgvplugin_pangocairo
-libgvc_builtins_la_LDFLAGS = -version-info $(VERSION_INFO)
-libgvc_builtins_la_SOURCES = $(libgvc_C_la_SOURCES)
-libgvc_builtins_la_LIBADD = $(libgvc_la_LIBADD)
-libgvc_builtins_la_DEPENDENCIES = $(libgvc_la_DEPENDENCIES)
-
gvc.3.pdf: $(srcdir)/gvc.3
- @GROFF@ -Tps -man $(srcdir)/gvc.3 | @PS2PDF@ - - > gvc.3.pdf
#endif
#include "gvc.h"
-#include "builddate.h"
#include "const.h"
#include "gvcjob.h"
#include "gvcint.h"
#include "gvcproc.h"
#include "gvconfig.h"
-static char *LibInfo[] = {
- "libgvc", /* Program */
- VERSION, /* Version */
- BUILDDATE /* Build Date */
-};
-
GVC_t *gvContext(const lt_symlist_t *builtins)
{
GVC_t *gvc;
#else
agattr(NULL, AGNODE, "label", NODENAME_ESC);
#endif
- gvc = gvNEWcontext(LibInfo, gvUsername(), builtins);
+ gvc = gvNEWcontext(builtins);
gvconfig(gvc, FALSE); /* configure for available plugins and codegens */
return gvc;
}
}
char **gvcInfo(GVC_t* gvc) { return gvc->common.info; }
-char *gvcUsername(GVC_t* gvc) { return gvc->common.user; }
char *gvcVersion(GVC_t* gvc) { return gvc->common.info[1]; }
char *gvcBuildDate(GVC_t* gvc) { return gvc->common.info[2]; }
extern void gvToggle(int);
/* set up a graphviz context */
-extern GVC_t *gvNEWcontext(char **info, char *user, const lt_symlist_t *builtins);
-extern char *gvUsername(void);
+extern GVC_t *gvNEWcontext(const lt_symlist_t *builtins);
/* set up a graphviz context - alternative */
/* (wraps the above two functions using info built into libgvc) */
extern char **gvcInfo(GVC_t*);
extern char *gvcVersion(GVC_t*);
extern char *gvcBuildDate(GVC_t*);
-extern char *gvcUsername(GVC_t*);
/* parse command line args - minimally argv[0] sets layout engine */
extern int gvParseArgs(GVC_t *gvc, int argc, char **argv);
#endif
typedef struct GVCOMMON_s {
- char *user;
char **info;
char *cmdname;
int verbose;
const lt_symlist_t *s;
const char *name;
+ if (gvc->common.builtins == NULL) return;
+
for (s = gvc->common.builtins; (name = s->name); s++)
if (name[0] == 'g' && strstr(name, "_LTX_library"))
gvconfig_plugin_install_from_library(gvc, NULL,
#include <stdlib.h>
+#include "builddate.h"
#include "types.h"
#include "gvplugin.h"
#include "gvcjob.h"
/* from common/globals.c */
extern int graphviz_errors;
-GVC_t *gvNEWcontext(char **info, char *user, const lt_symlist_t *builtins)
+static char *LibInfo[] = {
+ "graphviz", /* Program */
+ VERSION, /* Version */
+ BUILDDATE /* Build Date */
+};
+
+GVC_t *gvNEWcontext(const lt_symlist_t *builtins)
{
GVC_t *gvc = zmalloc(sizeof(GVC_t));
if (gvc) {
- gvc->common.info = info;
- gvc->common.user = user;
+ gvc->common.info = LibInfo;
gvc->common.errorfn = agerrorf;
gvc->common.builtins = builtins;
}
if (cg && cg->begin_job)
cg->begin_job(job->output_file, gvc->g,
gvc->common.lib,
- gvc->common.user,
gvc->common.info,
job->pagesArraySize);
}
+++ /dev/null
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@/@PACKAGE@
-plugins=@GVPLUGIN_VERSION@
-
-Name: libgvc_builtins
-Description: The GraphVizContext library
-Version: @VERSION@
-Libs: -L${libdir} -lgvc_builtins
-Cflags: -I${includedir}
gvputs(job, "#FIG 3.2\n");
gvprintf(job, "# Generated by %s version %s (%s)\n",
job->common->info[0], job->common->info[1], job->common->info[2]);
- gvprintf(job, "# For: %s\n", job->common->user);
gvprintf(job, "# Title: %s\n", agnameof(obj->u.g));
gvprintf(job, "# Pages: %d\n", job->pagesArraySize.x * job->pagesArraySize.y);
gvputs(job, "Portrait\n"); /* orientation */
gvputs(job, "#FIG 3.2\n");
gvprintf(job, "# Generated by %s version %s (%s)\n",
job->common->info[0], job->common->info[1], job->common->info[2]);
- gvprintf(job, "# For: %s\n", job->common->user);
gvprintf(job, "# Title: %s\n", obj->u.g->name);
gvprintf(job, "# Pages: %d\n", job->pagesArraySize.x * job->pagesArraySize.y);
gvputs(job, "Portrait\n"); /* orientation */
{
int i;
- gvprintf(job, "# For: %s\n", job->common->user);
gvprintf(job, "# Title: %s\n", job->obj->u.g->name);
gvprintf(job, "# Pages: %d\n",
job->pagesArraySize.x * job->pagesArraySize.y);
gvputs(job, "#FIG 3.2\n");
gvprintf(job, "# Generated by %s version %s (%s)\n",
job->common->info[0], job->common->info[1], job->common->info[2]);
- gvprintf(job, "# For: %s\n", job->common->user);
gvprintf(job, "# Title: %s\n", obj->u.g->name);
gvprintf(job, "# Pages: %d\n", job->pagesArraySize.x * job->pagesArraySize.y);
gvputs(job, "Portrait\n"); /* orientation */
gvprintf(job, "%s Creator: %s version %s (%s)\n",
EscComment, job->common->info[0], job->common->info[1], job->common->info[2]);
- gvprintf(job, "%s For: %s\n", EscComment, job->common->user);
gvprintf(job, "%s Title: %s\n", EscComment, obj->u.g->name);
gvprintf(job,
"%s save point size and font\n.nr .S \\n(.s\n.nr DF \\n(.f\n",
gvputs(job, "\n");
gvprintf(job, "%%%%Creator: %s version %s (%s)\n",
job->common->info[0], job->common->info[1], job->common->info[2]);
- gvprintf(job, "%%%%For: %s\n", job->common->user);
}
static void psgen_end_job(GVJ_t * job)
gvputs(job, xml_string(job->common->info[1]));
gvputs(job, " (");
gvputs(job, xml_string(job->common->info[2]));
- /* We have absolutely no idea what character set the username
- * may be in. To be conservative, we only output the username
- * if it is all ascii. Since SVG output is UTF-8, we could check
- * if the string appears to be in this format and allow it.
- */
- if (isAscii (job->common->user)) {
- gvputs(job, ")\n For user: ");
- gvputs(job, xml_string(job->common->user));
- }
- else
- gvputs(job, ")\n");
+ gvputs(job, ")\n");
gvputs(job, " -->\n");
}
gvputs(job, tkgen_string(job->common->info[1]));
gvputs(job, " (");
gvputs(job, tkgen_string(job->common->info[2]));
- gvputs(job, ")\n# For user: ");
- gvputs(job, tkgen_string(job->common->user));
- gvputs(job, "\n");
+ gvputs(job, ")\n");
}
static void tkgen_begin_graph(GVJ_t * job)
gvputs(job, xml_string(job->common->info[1]));
gvputs(job, " (");
gvputs(job, xml_string(job->common->info[2]));
- gvputs(job, ")\n For user: ");
- gvputs(job, xml_string(job->common->user));
+ gvputs(job, ")\n");
gvputs(job, " -->\n");
}
gvputs(job, "#FIG 3.2\n");
gvprintf(job, "# Generated by %s version %s (%s)\n",
job->common->info[0], job->common->info[1], job->common->info[2]);
- gvprintf(job, "# For: %s\n", job->common->user);
gvprintf(job, "# Title: %s\n", obj->u.g->name);
gvprintf(job, "# Pages: %d\n", job->pagesArraySize.x * job->pagesArraySize.y);
gvputs(job, "Portrait\n"); /* orientation */
// gvputs(job, "%!PS-Adobe-3.0 EPSF-3.0\n");
gvprintf(job, "%%%%Creator: %s version %s (%s)\n",
job->common->info[0], job->common->info[1], job->common->info[2]);
- gvprintf(job, "%%%%For: %s\n", job->common->user);
}
static void lasi_end_job(GVJ_t * job)
/* create the auxiliary info for PDF content, author and title */
CFStringRef auxiliaryKeys[] = {
kCGPDFContextCreator,
- kCGPDFContextAuthor,
kCGPDFContextTitle
};
CFStringRef auxiliaryValues[] = {
CFStringCreateWithFormat(kCFAllocatorDefault, NULL, CFSTR("%s %s"), job->common->info[0], job->common->info[1]),
- CFStringCreateWithBytesNoCopy(kCFAllocatorDefault, (const UInt8 *)job->common->user, strlen(job->common->user), kCFStringEncodingUTF8, false, kCFAllocatorNull),
job->obj->type == ROOTGRAPH_OBJTYPE ?
CFStringCreateWithBytesNoCopy(kCFAllocatorDefault, (const UInt8 *)job->obj->u.g->name, strlen(job->obj->u.g->name), kCFStringEncodingUTF8, false, kCFAllocatorNull)
: CFSTR("")
LIBS = -lc
-BASESOURCES = gv.cpp gv.i
+BASESOURCES = gv.cpp gv.i no_builtins.c
BASELIBS = $(top_builddir)/lib/gvc/libgvc.la \
$(top_builddir)/lib/$(GRAPH)/lib$(GRAPH).la \
$(top_builddir)/lib/cdt/libcdt.la
* AT&T Research, Florham Park NJ *
**********************************************************/
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
+#include "gvplugin.h"
-#include "gvcext.h"
lt_symlist_t lt_preloaded_symbols[] = { { 0, 0 } };
GDTCLFT = $(top_srcdir)/tclpkg/gdtclft/gdtclft.c
endif
-libtcldot_la_SOURCES = tcldot.c $(CODEGENS) $(GDTCLFT)
+libtcldot_la_SOURCES = tcldot.c no_builtins.c $(CODEGENS) $(GDTCLFT)
libtcldot_la_LDFLAGS = -no-undefined
libtcldot_la_LIBADD = $(top_builddir)/tclpkg/tclhandle/libtclhandle_C.la \
libtcldot_la_LIBADD += $(LIBGEN_LIBS) $(ICONV_LIBS) $(MATH_LIBS)
libtcldot_builtin_la_SOURCES = \
- tcldot.c $(CODEGENS) $(GDTCLFT) \
- $(top_srcdir)/lib/gvc/dot_builtins.c \
+ tcldot.c tcldot_builtins.c $(CODEGENS) $(GDTCLFT) \
$(top_srcdir)/lib/gvc/no_demand_loading.c
libtcldot_builtin_la_LDFLAGS =