To compile DGD, you will have to set HOST in src/Makefile to the proper value:

NETBSD		NetBSD.  This is the default.
BSD386		FreeBSD or 386BSD.
LINUX		Linux.  Copy src/host/Makefile.sysv to src/host/Makefile.
SUNOS4		SunOS 4.x.
SOLARIS		SunOS 5.x.  Copy src/host/Makefile.sysv to src/host/Makefile,
		and in src/Makefile also set LIBS to -lsocket -lnsl
DECALPHA	DEC Alpha.  Copy src/host/Makefile.sysv to src/host/Makefile.
BEOS		BeOS.  Set LDFLAGS to -lbe -ltracker, and copy
		src/host/Makefile.beos to src/host/Makefile.
WIN32		Windows NT or Windows 95.  Follow the instructions in
		src/host/pc/README.
MACOS		Mac System 6 to 9.  Follow the instructions in
		src/host/mac/README.
GENERIC_BSD	BSD Unix.
GENERIC_SYSV	SYSV Unix.  Copy src/host/Makefile.sysv to src/host/Makefile.

For other platforms, you can either try to use the closest of the above, or
add your own host support to the src/host.h file.  There are some systems
which are not supported directly yet, but for which porting is easy:

NeXT	use GENERIC_BSD, but in src/host/Makefile replace dirent.* by direct.*
ULTRIX	use GENERIC_BSD
AIX	use GENERIC_SYSV, but compile with -DHOST_WITH_UNSIGNED_CHAR (AIX
	characters are unsigned), also add #include <sys/select.h> to
	src/host/unix/connect.c

Things may become more difficult if you want to port DGD to a different
type of host.  If you want to do your own port and you need some advice,
contact me.

In general, platforms must meet the following requirements:

 - shorts should be 2 bytes wide
 - integers should be 4 bytes wide
 - longs should be at least as wide as pointers
 - all pointer types must be equally wide
 - two's complement should be used to represent negative numbers
 - the value of NULL must be 0.

For each port, one should only have to modify src/host.h, the makefiles and
files in the src/host directory.
