1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-25 04:43:33 +00:00

vcg - a visualization tool for compiler graphs

Submitted by:	Philippe Charnier <charnier@lirmm.fr>
This commit is contained in:
Jeffrey Hsu 1995-02-19 09:25:45 +00:00
parent 3f47621e58
commit 3df7b21931
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=1008
25 changed files with 2540 additions and 0 deletions

15
graphics/vcg/Makefile Normal file
View File

@ -0,0 +1,15 @@
# New ports collection makefile for: vcg
# Version required: 1.30.r3.17
DISTNAME= vcg.1.30
DISTFILES= vcg.1.30.r3.17.tgz
MASTER_SITES= ftp://ftp.cs.uni-sb.de/pub/graphics/vcg/
pre-patch:
@mkdir -p ${WRKSRC}/preconf/X11ccFreeBSD
@cp ${FILESDIR}/conf ${WRKSRC}/preconf/X11ccFreeBSD
@cp ${FILESDIR}/demo.csh ${WRKSRC}/preconf/X11ccFreeBSD
@cp ${FILESDIR}/globals.h ${WRKSRC}/preconf/X11ccFreeBSD
@cp ${FILESDIR}/tMakefile ${WRKSRC}/preconf/X11ccFreeBSD
.include <bsd.port.mk>

1
graphics/vcg/distinfo Normal file
View File

@ -0,0 +1 @@
MD5 (vcg.1.30.r3.17.tgz) = 283faf1a2cc163d5c0e4977b8ec1f658

38
graphics/vcg/files/conf Normal file
View File

@ -0,0 +1,38 @@
ADDINCLUDEPATHNAME|-I/usr/X11R6/include/
ADDLIBPATHNAME|-L/usr/X11R6/lib/
ADDLIBSNAME|-lXext -lX11 -lm
ALIGNMENTNAME|8
ANSINAME|#undef ANSI_C
BIGLTEXNAME|not_available
BINPATHNAME|/usr/X11R6/bin
BISONNAME|not_available
BLOCKSIZENAME|1048576
CATNAME|/bin/cat
CCLINKNAME|cc
CCNAME|cc
CFLAGSNAME|-c -O2
CLEARNAME|/usr/bin/clear
CLINKFLAGSNAME|-o
FGREPNAME|/usr/bin/fgrep
FIGTODEVNAME|fig2dev
FIGTOPSTOTEXNAME|fig2ps2tex
FLEXNAME|not_needed
FONTALIASNAME|-*-courier-*-*-*--14-*-*-*-*-*-*-*
INPUTFOCUSNAME|#define NOINPUTFOCUS
INSTALLBINNAME|/bin/install -c -s -m 755 dummy $(BINDIR)/dummy
INSTALLDIRNAME|/bin/mkdir -p
INSTALLMANNAME|/bin/install -c -m 644 dummy $(MANDIR)/dummy
LATEXNAME|latex
LNNAME|/bin/ln
MAKEDEPENDNAME|makedepend
MAKENAME|make
MANEXTNAME|l
MANPATHNAME|/usr/X11R6/man/manl
MVNAME|/bin/mv
RMNAME|/bin/rm
SEDNAME|/usr/bin/sed
SLEEPNAME|/bin/sleep
TOUCHNAME|/usr/bin/touch
VCGNAME|xvcg
WCNAME|/usr/bin/wc
WINDOWSYSTEMNAME|#define X11

1453
graphics/vcg/files/demo.csh Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,417 @@
/* SCCS-info %W% %E% */
/*--------------------------------------------------------------------*/
/* */
/* VCG : Visualization of Compiler Graphs */
/* -------------------------------------- */
/* */
/* file: globals.h */
/* version: 1.00.00 */
/* creation: 1.4.1993 */
/* author: I. Lemke (...-Version 0.99.99) */
/* G. Sander (Version 1.00.00-...) */
/* Universitaet des Saarlandes, 66041 Saarbruecken */
/* ESPRIT Project #5399 Compare */
/* description: Global definitions and setup */
/* status: in work */
/* */
/*--------------------------------------------------------------------*/
/* $Id: globals.h.tpl,v 3.7 1994/11/23 14:50:47 sander Exp sander $ */
/*
* Copyright (C) 1993--1995 by Georg Sander, Iris Lemke, and
* the Compare Consortium
*
* This program and documentation is free software; you can redistribute
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* The software is available per anonymous ftp at ftp.cs.uni-sb.de.
* Contact sander@cs.uni-sb.de for additional information.
*/
/* $Log: globals.h.tpl,v $
# Revision 3.7 1994/11/23 14:50:47 sander
# #include <limits.h> added to get MAX_INT and MIN_INT.
#
# Revision 3.6 1994/08/08 16:01:47 sander
# Attributes xraster, xlraster, yraster added.
#
# Revision 3.5 1994/08/02 15:36:12 sander
# CHECKNODE option added to allow tracing of properties
# of one single node. For debugging only.
#
# Revision 3.4 1994/06/07 14:09:59 sander
# Splines implemented.
# HP-UX, Linux, AIX, Sun-Os, IRIX compatibility tested.
# The tool is now ready to be distributed.
#
# Revision 3.3 1994/05/16 08:56:03 sander
# shape attribute (boxes, rhombs, ellipses, triangles) added.
#
# Revision 3.2 1994/03/02 11:48:54 sander
# Layoutalgoritms mindepthslow, maxdepthslow, minindegree, ... mandegree
# added.
# Anchors and nearedges are not anymore allowed to be intermixed.
# Escapes in strings are now allowed.
#
# Revision 3.1 1994/03/01 10:59:55 sander
# Copyright and Gnu Licence message added.
# Problem with "nearedges: no" and "selfloops" solved.
#
# Revision 1.2 1994/01/21 19:43:42 sander
# New started with release 1.2 from the scratch.
# Old and useless comments removed.
#
*
*/
/* This file contains the setup of the tool for the C compiler.
* It is included into every other C file.
* Please adapt corresponding to your configuration.
*/
#ifndef GLOBALS_H
#define GLOBALS_H
/*------------- Please change according to your configuration --------*/
/* Ansi C compiler or K&R C compiler ?
* Mainly, this causes to use prototypes or not. Note that the Suntool
* include files on some systems are Non-Ansi and may cause confusion.
* See the corresponding comments in the Makefile.
* Ansi C compiler set __STDC__, but Non-Ansi compilers may set this, too.
* Thus we use our own flag ANSI_C.
*/
/* #ifdef __STDC__==1
* #define ANSI_C
* #endif
*/
/* #define ANSI_C */
/* #undef ANSI_C */
#define ANSI_C
/* The Gnu CC sometimes does not have a standard library.
* In this case, the include files might be wrong.
* To get fewer messages on -Wall, define NO_STDINCLUDES
* with Gnu CC.
*/
#undef NO_STDINCLUDES
/* User Signals available or not ?
* Unix provides signals SIGUSR1 and SIGUSR2 (30, 31), which are used
* to control animations from external. If signal() or free signals are
* not available (e.g. on Non-Unix systems), then undefine USR_SIGNAL.
*/
#define USR_SIGNAL
/* #undef USR_SIGNAL */
/* Good quicksort available or not ?
* If there exist a good randomized quicksort `qsort' in the library,
* please use it. But if the quicksort in the library is slow, or not
* randomized, define OWN_QUICKSORT. We often have to sort presorted
* arrays.
* Note: If OWN_QUICKSORT is defined, not all calls of `qsort' are
* exchanged, but only the critical ones.
*/
/* #undef OWN_QUICKSORT */
#define OWN_QUICKSORT
/* Window system Sunview or X11 ?
* Sunview is fast, but does not support remote window displaying.
* X11 (R5) is a little bit slower, but supports remote display.
* Do not define both !!!
*/
/* #define SUNVIEW */
/* #undef X11 */
/* #undef SUNVIEW */
/* #define X11 */
#define X11
/* Required alignment for structs (power of 2). IALIGN is the appropriate
* bit mask to generate the alignment. Because we use floats in structs,
* mostly an alignment of 8 is appropriate.
*/
#ifndef ALIGN
/* #define ALIGN 8 */
#define ALIGN 8
#endif
#ifndef IALIGN
#define IALIGN (ALIGN-1)
#endif
/* Memory block size for memory allocation in bytes. The allocation
* mechanism allocates blocks of this size, and dynamically increases
* the number of blocks, if more memory is necessary.
* Do not set the blocksize too small. For instance the tool does not
* work with blockssize less than 1 KB. Propose for good performance:
* 256 KB minimal.
*/
/* Blocks of 1 Megabyte */
/* #define MEMBLOCKSIZE 1048576 */
#define MEMBLOCKSIZE 1048576
/* The default font for X11. Not needed at the Sunview installation.
* Please insert an appropriate font of about 14 to 17 dot size.
*/
#ifdef X11
#define VCG_DEFAULT_FONT "-*-courier-*-*-*--14-*-*-*-*-*-*-*"
#endif
/* Whether the input focus grab is actively or not.
* If NOINPUTFOCUS, the VCG tool does not grab actively the input
* focus. Depending on the window manager, this may cause that
* the keypresses are ignored afterwards, unless the mouse pointer
* is once moved out of the window and back into it.
* On the other side, some installations cause a fatal error or
* strange behaviour, if the VCG tool actively grabs the input
* focus.
* The conservative definement is #define NOINPUTFOCUS.
*/
#ifdef X11
#define NOINPUTFOCUS
#endif
/* Debugging On or Off ?
* We have three kinds of debugging:
* a) Behaviour tracing: a lot of messages nearly on every
* function entry are produced if DEBUG is switched on.
* b) Assertion checking: only if an assertion fails, an
* appropriate message is produced.
* c) Node tracing: This is basically the same as the behaviour
* tracing. At each function entry, the status of a node
* will be printed. This happens if CHECKNODE is defined.
* See step0 for the selection of the node to be traced.
* Behaviour or node tracing is only needed in very serious cases.
* The macros "debuggingmessage" can be redefined to do some special
* tests on every entry.
* Assertion checking can always be done, because it is silent
* as long as no error occurs. But it consumes runtime.
* This all can also be defined in the head of a module before
* #include "globals.h", to debug only this module.
*/
/* for internal debugging */
#undef DEBUG
#undef CHECKNODE
/* for assertion checking at runtime */
#define CHECK_ASSERTIONS
/*
* If you prefer the system assert.h, then define ASSERT_AVAIL.
*/
/* #define ASSERT_AVAIL */
#undef ASSERT_AVAIL
/* Check and printout the timing of phases.
* If CHECK_TIMING is defined, time measurement is done at some
* critical points. This is only for me, to fine tune the
* preformance. (GS)
*/
#undef CHECK_TIMING
/*---------------------------- End of Changes ------------------------*/
/* Maximal and minimal positive integer */
#include <limits.h>
#ifndef MAXINT
#ifdef INT_MAX
#define MAXINT INT_MAX
#else
#define MAXINT 32767
#endif
#endif
#ifndef MININT
#ifdef INT_MIN
#define MININT INT_MIN
#else
#define MININT -32767
#endif
#endif
#ifndef MAXLONG
#ifdef LONG_MAX
#define MAXLONG LONG_MAX
#else
#define MAXLONG 32767
#endif
#endif
#ifndef MINLONG
#ifdef LONG_MIN
#define MINLONG LONG_MIN
#else
#define MINLONG -32767
#endif
#endif
/* Prototype support */
#ifdef ANSI_C
#define _PP(x) x
#else
#define _PP(x) ()
#endif
#ifndef NULL
#define NULL 0
#endif
/* Aix CC and OSF does not understand const's */
#ifdef OSF
#define const
#endif
#ifdef AIXCC
#define const
#endif
/* Default Window system is X11 */
#ifdef SUNVIEW
#ifdef X11
#undef SUNVIEW
#endif
#else
#ifndef X11
#define X11
#endif
#endif
#ifdef X11
#define FAST_X11_DRAWING
#endif
/* Debugging messages */
#ifdef DEBUG
#define debugmessage(a,b) {FPRINTF(stderr,"Debug: %s %s\n",a,b);}
#else
#define debugmessage(a,b) /**/
#endif
#ifdef CHECKNODE
#define DEBUG
#undef debugmessage
#define debugmessage(a,b) { \
FPRINTF(stderr,"Debug: %s %s &",a,b); \
if (debug_checknode) \
FPRINTF(stderr,"Checknode: |%s|\n",NTITLE(debug_checknode)); \
FPRINTF(stderr,"\n"); \
}
#endif
/* Assertions */
#ifndef CHECK_ASSERTIONS
#define NDEBUG
#endif
#ifdef DEBUG
#undef NDEBUG
#endif
#ifdef ASSERT_AVAIL
#include <assert.h>
#else
# ifndef NDEBUG
# define assert(ex) {if (!(ex)) {\
FPRINTF(stderr,"Assertion failed: file \"%s\", line %d\n",\
__FILE__, __LINE__); \
FPRINTF(stderr,"This is a bug! Please contact sander@cs.uni-sb.de !\n");\
exit(1);}}
# else
# define assert(ex)
# endif
# endif
/* To make lint happy */
#define PRINTF (void)printf
#define FPRINTF (void)fprintf
#define SPRINTF (void)sprintf
#define FCLOSE (void)fclose
#define FFLUSH (void)fflush
#define FREE (void)free
/* To make ANSI C compiler with -Wall more happy */
#ifdef ANSI_C
#ifdef NO_STDINCLUDES
int fprintf(FILE *stream, const char *format, ...);
int printf(const char *format, ...);
int scanf(const char *format, ...);
int atoi(char *x);
double atof(char *x);
int islower(int s);
int isupper(int s);
int tolower(int s);
int toupper(int s);
void bcopy(void *b1,void *b2,int length);
int fputs(const char *s, FILE *stream);
size_t fwrite(const void *ptr, size_t s, size_t n, FILE *stream);
int fclose(FILE *stream);
FILE *fopen(const char *filename, const char *mode);
void system(char *string);
int fflush(FILE *stream);
int getppid(void);
#ifdef X11
char *getwd(char pn[]);
#endif
int fgetc(FILE *stream);
#endif
#endif
#define gstoint(x) ((int)(x))
#ifdef HPUX
#define alloca(x) (malloc(x))
#define getwd(h) (getcwd(h,MAXPATHLEN-1))
#endif
#ifdef VMS
#define alloca(x) (malloc(x))
#endif
/*--------------------------------------------------------------------*/
#endif /* GLOBALS_H */

View File

@ -0,0 +1,11 @@
--- 1.1 1995/02/18 16:56:11
+++ demo/Makefile 1995/02/18 16:57:11
@@ -124,7 +124,7 @@
# Generated Other - Files
GOFILES = animfile1.vcg animfile2.vcg rbtree.vcg
-
+
# Object - Files
OFILES = animation1.o animation2.o pbmrot90.o pbmshift.o vcgdemomaker.o \
animation3.o vcgcount.o pbm2hp.o

View File

@ -0,0 +1,20 @@
--- 1.1 1995/02/18 16:57:50
+++ doc/Makefile 1995/02/18 16:58:35
@@ -72,7 +72,7 @@
# RCS Version control stuff
-
+
$(SOURCES):
$(CHECKOUT) $@
@@ -87,7 +87,7 @@
clean:
$(RM) -f *.aux *.toc *.log *.lof *.lot *.spell tmp* core
-
+
veryclean: clean
$(RM) -f *.dvi

View File

@ -0,0 +1,20 @@
--- 1.1 1995/02/18 17:07:16
+++ src/preconf/y.tab.c 1995/02/18 17:20:13
@@ -446,7 +446,7 @@
#ifndef YY_MALLOC_DECL
#define YY_MALLOC_DECL
-#include <malloc.h>
+#include <stdlib.h>
#endif
#undef YYVALGLOBAL
@@ -5815,7 +5815,7 @@
#include <stdio.h>
-#include <malloc.h>
+#include <stdlib.h>
#ifdef ANSI_C
#include <stdarg.h>
#else

View File

@ -0,0 +1,20 @@
--- 1.1 1995/02/18 17:09:45
+++ src/preconf/lex.yy.c 1995/02/18 17:21:39
@@ -1665,7 +1665,7 @@
#ifndef YY_MALLOC_DECL
#define YY_MALLOC_DECL
-#include <malloc.h>
+#include <stdlib.h>
#endif
#undef YYVALGLOBAL
@@ -5256,7 +5256,7 @@
#include <stdio.h>
#include <string.h>
-#include <malloc.h>
+#include <stdlib.h>
/* Global Variables */
/*------------------*/

View File

@ -0,0 +1,11 @@
--- 1.1 1995/02/18 16:51:08
+++ src/Makefile 1995/02/18 16:55:50
@@ -189,7 +189,7 @@
# Generated Other - Files
GOFILES = grammar.l grammar.y
-
+
# Object - Files
OFILES = y.tab.o lex.yy.o main.o options.o alloc.o step0.o folding.o \
step1.o step2.o step3.o step4.o prepare.o draw.o \

View File

@ -0,0 +1,11 @@
--- 1.1 1995/02/18 17:44:23
+++ src/main.c 1995/02/18 17:44:52
@@ -147,7 +147,7 @@
#ifdef X11
-#include <X11/Xos.h>
+/*#include <X11/Xos.h>*/
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/cursorfont.h>

View File

@ -0,0 +1,11 @@
--- 1.1 1995/02/18 17:48:32
+++ src/X11dev.c 1995/02/18 17:48:52
@@ -181,7 +181,7 @@
#ifdef X11
-#include <X11/Xos.h>
+/*#include <X11/Xos.h>*/
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/cursorfont.h>

View File

@ -0,0 +1,11 @@
--- 1.1 1995/02/18 17:48:53
+++ src/X11devcl.c 1995/02/18 17:49:10
@@ -115,7 +115,7 @@
#ifdef X11
-#include <X11/Xos.h>
+/*#include <X11/Xos.h>*/
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/cursorfont.h>

View File

@ -0,0 +1,11 @@
--- 1.1 1995/02/18 17:49:10
+++ src/X11devfe.c 1995/02/18 17:49:26
@@ -85,7 +85,7 @@
#ifdef X11
-#include <X11/Xos.h>
+/*#include <X11/Xos.h>*/
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/cursorfont.h>

View File

@ -0,0 +1,20 @@
--- 1.1 1995/02/18 17:49:27
+++ src/X11devfs.c 1995/02/18 18:03:42
@@ -107,7 +107,7 @@
#ifdef X11
-#include <X11/Xos.h>
+/*#include <X11/Xos.h>*/
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/cursorfont.h>
@@ -128,7 +128,7 @@
#else
#include <sys/types.h>
#include <sys/stat.h>
-#include <sys/param.h>
+/*#include <sys/param.h> */
#include <dirent.h>
#include <grp.h>
#include <pwd.h>

View File

@ -0,0 +1,11 @@
--- 1.1 1995/02/18 17:49:42
+++ src/X11devla.c 1995/02/18 17:49:58
@@ -122,7 +122,7 @@
#ifdef X11
-#include <X11/Xos.h>
+/*#include <X11/Xos.h>*/
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/cursorfont.h>

View File

@ -0,0 +1,11 @@
--- 1.1 1995/02/18 17:49:58
+++ src/X11devpb.c 1995/02/18 17:50:16
@@ -115,7 +115,7 @@
#ifdef X11
-#include <X11/Xos.h>
+/*#include <X11/Xos.h>*/
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/cursorfont.h>

View File

@ -0,0 +1,11 @@
--- 1.1 1995/02/18 17:50:17
+++ src/X11devst.c 1995/02/18 17:50:33
@@ -68,7 +68,7 @@
#ifdef X11
-#include <X11/Xos.h>
+/*#include <X11/Xos.h>*/
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/cursorfont.h>

View File

@ -0,0 +1,11 @@
--- 1.1 1995/02/18 17:50:34
+++ src/X11devti.c 1995/02/18 17:50:48
@@ -111,7 +111,7 @@
#ifdef X11
-#include <X11/Xos.h>
+/*#include <X11/Xos.h>*/
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/cursorfont.h>

View File

@ -0,0 +1,11 @@
--- 1.1 1995/02/18 17:50:49
+++ src/X11devvw.c 1995/02/18 17:51:04
@@ -87,7 +87,7 @@
#ifdef X11
-#include <X11/Xos.h>
+/*#include <X11/Xos.h>*/
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/cursorfont.h>

View File

@ -0,0 +1,20 @@
--- 1.1 1995/02/18 16:48:19
+++ Makefile 1995/02/18 17:12:05
@@ -31,7 +31,7 @@
#all: stamp-all
-all: xvcg_gcc xvcg
+all: xvcg_cc xvcg
configure: stamp-config
@@ -236,7 +236,7 @@
@echo " make xvcg_c89_noxmkmf"
@echo " make vcg_gcc"
@echo " make vcg_cc"
-
+
compare: preconf xcompare xvcg install
/bin/rm $(PROJECTHOME)/../bin/vcg
ln -s $(PROJECTHOME)/../bin/xvcg $(PROJECTHOME)/../bin/vcg

View File

@ -0,0 +1,372 @@
# SCCS-info %W% %E%
#
# /*--------------------------------------------------------------------*/
# /* */
# /* VCG : Visualization of Compiler Graphs */
# /* -------------------------------------- */
# /* */
# /* file: tMakefile.tpl */
# /* version: 1.00.00 */
# /* creation: 1.4.1993 */
# /* author: I. Lemke (...-Version 0.99.99) */
# /* G. Sander (Version 1.00.00-...) */
# /* Universitaet des Saarlandes, W-66041 Saarbruecken */
# /* ESPRIT Project #5399 Compare */
# /* description: Top level Makefile */
# /* status: in work */
# /* */
# /*--------------------------------------------------------------------*/
#
# $Id$
#
# $Log$
#
#========================= CHANGE AREA =========================
# Please update the change area according to your system.
# NOTE: you must also adapt the file src/globals.h and demo/demo.csh
# accordingly.
SHELL = /bin/sh
# where the binaries go
# BINDIR = /usr/local/bin/
# BINDIR = /RW/esprit/users/sander/PUBLIC/CMD/
BINDIR = /usr/X11R6/bin
# where the manual pages go
# MANDIR = /usr/local/man/manl/
# MANDIR = /RW/esprit/users/sander/PUBLIC/MAN/
MANDIR = /usr/X11R6/man/manl
# what the manual extension is
MANEXT = l
# how the VCG tool should be called
# For the Sunview version I use the name vcg.
# For the X11 version I prefer the name xvcg.
# VCGTOOL = vcg
# VCGTOOL = xvcg
VCGTOOL = xvcg
# Note: you can test the tool before it is installed.
# Thus we need the path of the tool for the tests.
# It may also be the path of the tool after installation.
# Then use
VCGCALL = $(BINDIR)/$(VCGTOOL)
#
# Used during the demoanimations:
# where the vcg is during the tests.
# Please enter the absolute path to the VCG-tool.
# VCGCALL = /usr/local/bin/vcg
# VCGCALL = /RW/esprit/users/sander/PUBLIC/CMD/$(VCGTOOL)
#-------------------------- Flags ------------------------------
# Flags for the C compiler
# Important: Do not use -Dlint with gcc. This causes confusion
# during linking (!!!), e.g. some undefined messages.
#CFLAGS = -O -finline-functions
#CFLAGS = -O -finline-functions -DDRAWLIB_TOO_LARGE
#CFLAGS = -g -finline-functions -Wall
#
# Do not use -O -finline-functions for FreeBSD, or you really have a lot
# of swap for compiling drawstr.c.
CFLAGS = -c -O2 -pipe
# Flags for debugging
DFLAGS =
# Flags for the C linker
#CLINKFLAGS = -Bstatic -o
CLINKFLAGS = -o
# Include directories
# If you use gcc, it may happen that not all ANSI header files
# are on the right place. Example: we often have problems to
# find stdarg.h. Look for this file and add the directory here,
# e.g.:
# INCLUDES = /usr/local/include/gnuansi/
#
# For Sunview, this should be enough, because on Suns, Sunview
# is normally installed in standard directories:
# INCLUDES =
#
# For X11, it depends where it is installed. Look for Xlib.h,
# Xproto.h or Xutil.h.
# For instance, if you find /usr/local/X11/include/X11/Xlib.h
# then please use
# INCLUDES = -I/usr/local/X11/include/
# INCLUDES = -I/RW/esprit/X11R5/include/
INCLUDES = -I/usr/X11R6/include/
# Library directories
# For Sunview, this should be enough, because on Suns, Sunview
# is normally installed in standard directories:
# LIBPATH =
#
# For X11, it depends where it is installed. Look for libX.a,
# or libX11.so.<version_number>, or libXext.a, etc.
# For instance, if you find /usr/local/X11/lib/libX11.a
# then please use
# LIBPATH = -L/usr/local/X11/lib/
# LIBPATH = -L/RW/esprit/X11R5/lib/
LIBPATH = -L/usr/X11R6/lib/
# Libraries
# Libraries for SunView
# LIBRARIES = -lsuntool -lsunwindow -lpixrect -lm
#
# Libraries for X11
# LIBRARIES = -lXext -lX11 -lm
LIBRARIES = -lXext -lX11 -lm
#-------------------------- Tools ------------------------------
# C compiler
# CC = gcc -pipe
CC = cc
# C linker
# CCLINK = gcc -static
CCLINK = cc
# If you use gcc and the sun driver, you need the normal sun
# preprocessor because of incompatibilities of the system libraries
CPP = $(CC) -E
# If you dont need a special preprocessor, change the .c.o rule or
# define this:
#CPP = cat
# Install software. You can use /bin/cp instead of /bin/install.
# I prefer that binaries are stripped.
# For directories:
# INSTALLDIR = /bin/install -d -m 755
INSTALLDIR = /bin/mkdir -p
# For binary files:
# Assume that you want to install s file called dummy.
# INSTALL = /bin/install -s -m 755 dummy $(BINDIR)/dummy
INSTALL = /usr/bin/install -c -s -m 755 dummy $(BINDIR)/dummy
# For manual pages:
# Assume that you want to install s file called dummy.
# INSTALLMAN = /bin/install -m 644 dummy $(MANDIR)/dummy
INSTALLMAN = /usr/bin/install -c -m 644 dummy $(MANDIR)/dummy
# To make the documentation
LATEX = latex
# To make the short documentation using big-latex
BIGLATEX = not_available
# For the pictures, we need some transfig-tools.
# If the files doc/foldpath.tex, doc/foldpath.ps,
# doc/foldtree.tex, doc/foldtree.ps, doc/hideedge.tex,
# doc/hideedge.ps, doc/window.tex, doc/window.ps
# are available, we do not need this.
#
TRANSFIGTEX = fig2ps2tex
TRANSFIGPS = fig2dev
# The tools CHECKOUT, CHECKEDIT and CHECKIN are not needed unless
# you want to develop, change or maintain the VCG tool sources
# under control of RCS.
# RCS check out shellscript (normally not needed)
CHECKOUT = co
# RCS check edit shellscript (normally not needed)
CHECKEDIT = ce
# RCS check in shellscript (normally not needed)
CHECKIN = ci
# parser pregenerator. If the files src/grammar.y and src/grammar.l
# are available, you don't need this.
PARSEGEN = parsegen
# lex-compatible scanner generator
LEX = not_needed
# yacc-compatible parser generator. Currently, it does not work
# with yacc because some bison features are used directly.
YACC = not_needed
# Make
# MAKE = make
MAKE = make
# MakeDepend (should understand the -f option)
# DEPEND = makedepend
DEPEND = makedepend
# Streameditor
# SED = /bin/sed
SED = /usr/bin/sed
# Move File
# MV = /bin/mv
MV = /bin/mv
# Link Files (or Copy them)
# LN = /bin/ln -s
LN = /bin/ln
# Remove File
# RM = /bin/rm
RM = /bin/rm
# Change directory
CD = cd
# Touch file
# TOUCH = touch
TOUCH = /usr/bin/touch
#==================== END OF CHANGE AREA ======================
#-------------------------- Files ------------------------------
# Directories
DIRECTORIES = src man demo doc expl
# The tarfiles of subdirectories, to make a distribution
SUBTARFILES = src/vcg.tar man/manpages.tar demo/demo.tar doc/doc.tar \
expl/expl.tar
# These files are generated, but included into a distribution.
# They are in the directory preconf.
GEN_DISTFILES = tMakefile src/globals.h demo/demo.csh
# Directories where we have something to make
MAKEDIRS = src demo man doc
# Directories where we have something to install
INSTDIRS = src demo man doc
#-------------------------- Rules ------------------------------
MAKEARGUS = \
SHELL="$(SHELL)" \
BINDIR="$(BINDIR)" \
MANDIR="$(MANDIR)" \
MANEXT="$(MANEXT)" \
VCGTOOL="$(VCGTOOL)" \
VCGCALL="$(VCGCALL)" \
CFLAGS="$(CFLAGS)" \
CLINKFLAGS="$(CLINKFLAGS)" \
DFLAGS="$(DFLAGS)" \
INCLUDES="$(INCLUDES)" \
LIBPATH="$(LIBPATH)" \
LIBRARIES="$(LIBRARIES)" \
CC="$(CC)" \
CCLINK="$(CCLINK)" \
CPP="$(CPP)" \
LATEX="$(LATEX)" \
BIGLATEX="$(BIGLATEX)" \
TRANSFIGTEX="$(TRANSFIGTEX)" \
TRANSFIGPS="$(TRANSFIGPS)" \
INSTALLDIR="$(INSTALLDIR)" \
INSTALL="$(INSTALL)" \
INSTALLMAN="$(INSTALLMAN)" \
CHECKOUT="$(CHECKOUT)" \
CHECKEDIT="$(CHECKEDIT)" \
CHECKIN="$(CHECKIN)" \
PARSEGEN="$(PARSEGEN)" \
LEX="$(LEX)" \
YACC="$(YACC)" \
MAKE="$(MAKE)" \
DEPEND="$(DEPEND)" \
SED="$(SED)" \
MV="$(MV)" \
LN="$(LN)" \
RM="$(RM)" \
CD="$(CD)" \
TOUCH="$(TOUCH)"
all: stamp-src stamp-demo stamp-doc stamp-shortdoc
stamp-src: src
($(CD) src; $(MAKE) $(MAKEARGUS))
$(TOUCH) stamp-src
stamp-demo: demo
($(CD) demo; $(MAKE) $(MAKEARGUS))
$(TOUCH) stamp-demo
stamp-doc: doc
($(CD) doc; $(MAKE) $(MAKEARGUS))
$(TOUCH) stamp-doc
stamp-shortdoc: doc
($(CD) doc; $(MAKE) $(MAKEARGUS) short)
$(TOUCH) stamp-shortdoc
demonstration: test
documentation: doc
shortdocu: stamp-shortdoc
install: stamp-src stamp-demo
for i in $(INSTDIRS) ;\
do \
($(CD) $$i; $(MAKE) $(MAKEARGUS) install); \
done
test: stamp-src stamp-demo
($(CD) demo; csh demo.csh);
clean:
for i in $(MAKEDIRS) ;\
do \
($(CD) $$i; $(MAKE) RM="$(RM)" clean); \
done
$(RM) -f stamp-* core
veryclean:
for i in $(MAKEDIRS) ;\
do \
($(CD) $$i; $(MAKE) RM="$(RM)" veryclean); \
done
$(RM) -f stamp-* core
targetclean:
for i in $(MAKEDIRS) ;\
do \
($(CD) $$i; $(MAKE) RM="$(RM)" targetclean); \
done
$(RM) -f stamp-* core
distclean:
for i in $(MAKEDIRS) ;\
do \
($(CD) $$i; $(MAKE) RM="$(RM)" distclean); \
done
$(RM) -f stamp-* core
depend:
for i in $(MAKEDIRS) ;\
do \
($(CD) $$i; $(MAKE) $(MAKEARGUS) depend); \
done
tar: tMakefile Makefile $(DIRECTORIES)
for i in $(DIRECTORIES) ;\
do \
($(CD) $$i; $(MAKE) $(MAKEARGUS) dist); \
done
tar -cf vcgcomplete.tar README README.SYS COPYING \
demotrue config tMakefile.tpl Makefile preconf $(SUBTARFILES)
dist: tar
# DO NOT DELETE THIS LINE -- make depend depends on it.

1
graphics/vcg/pkg-comment Normal file
View File

@ -0,0 +1 @@
A Visualization Tool for compiler graphs

10
graphics/vcg/pkg-descr Normal file
View File

@ -0,0 +1,10 @@
The VCG tool reads a textual and readable specification of a
graph and visualizes the graph. If not all positions of
nodes are fixed, the tool layouts the graph using several
heuristics as reducing the number of crossings, minimizing
the size of edges, centering of nodes. The specification
language of the VCG tool is nearly compatible to GRL, the
language of the edge tool, but contains many extensions. The
VCG tool allows folding of dynamically or statically speci-
fied regions of the graph. It uses colors and runs on
X11. (An older version runs on Sunview).

12
graphics/vcg/pkg-plist Normal file
View File

@ -0,0 +1,12 @@
@cwd /usr/X11R6
bin/xvcg
bin/pbmrot90
bin/pbmshift
bin/pbm2hp
bin/vcgdemomaker
man/manl/pbmrot90.l
man/manl/pbmshift.l
man/manl/pbm2hp.l
man/manl/vcgdemomaker.l
man/manl/vcg.l
man/manl/xvcg.l