
#"WOL", an integrated circuit layout tool,
#   Copyright (C) 1983, 1990 California Institute of Technology.
#   Author: Massimo Sivilotti
#   Thanks to: Glenn Gribble, Marty Sirkin, Sylvie Rychebusch
#	      Maryann Mayer, Carver Mead, Rick Koshi, Torre Lande
#   Maintainer: John Lazzaro
#   Maintainers's address: lazzaro@hobiecat.cs.caltech.edu;
#                          CB 425/ CU Boulder/Boulder CO 91125. 
#			  Send questions, bug fixes, to this address.
#
#This program is free software; you can redistribute it and/or modify
#it under the terms of the GNU General Public License as published by
#the Free Software Foundation (Version 1, 1989).
#
#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; see the file COPYING.  If not, write to
#the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 
#

LOCINC = ../psys/include


##
## If X isn't in the include path (the case for many MachTen and Linux 
## installations) change XINCLUDEDIR to reflect this:
##
## XINCLUDEDIR = /usr/X11R6/include
##
## or maybe
##
## XINCLUDEDIR = /usr/X11/include
##
## or some other directory, depending on your installation. Use the
## first one for OS X.
##

XINCLUDEDIR = .

##
## If X isn't in the library path (the case for many MachTen and Linux 
## installations) change LIBX11 to reflect this:
##
## LIBX11 = -L/usr/X11/lib -lX11
##
## or maybe
##
##  LIBX11 = -lX11 -L/usr/X11R6/lib
##
## depending on your installation. Use the second one for OS X.
##

LIBX11 = -lX11



LIBP2C = ../psys/src/libp2c.a

##
## (1) Library additions
## ---------------------
##
## on some systems, -ldl must be added to the following line

OTHERLIBS= -lm


##
##  (2) Choosing your compiler
##  ---------------------------
##
## For Sun SPARC, HP series 300/400, and Apple,  gcc is recommended, 
## most 2.XX and 1.XX work well.
##
## For DEC MIPS-based Ultrix, a "stable" gcc 2.X.X is recommended
##
## For HP series 700/800 (extra-cost) ANSI cc is recommended (see below for
##  options). HP's non-ANSI cc will not work, and gcc presently has some
##  problems with <varargs.h>. For version 8.05 (and earlier) of HP ANSI cc
##  you will need a patch tape from HP to fix compiler bugs; alternatively,
##  you can get around the problem by compile the file math.c 
##  with the gcc 2.XX compiler. 
##
## For IBM RS/6000, xlc is recommended (see below for options)
##
## For Linux & FreeBSD, gcc 2.X.X is recommended (see below for options)
##
## For SGI machines, cc is recommended.
##
##
## For AmigaOS, ADE (Amiga Development Enviroment) with gcc is recommended.
##

CHIPMUNKCC = gcc -O3
CC = $(CHIPMUNKCC) 

LIBDIR = `pwd`/
WOLPL = $(LIBDIR)
BINDIR = ../bin


##
## (3) Adding appropriate flags
## -----------------------------
##
## for HP series 800 (using cc), add these flags to CHIPMUNKFLAGS
##  -w -Aa -D_HPUX_SOURCE -DF_OK=0
##
## for IBM RS/6000 (using xlc) add these flags 
##  -DBSD=0
##
## for Apple OS/X, add these flags 
##  -DBSD -Dlinux -Dfreebsd
##
## for Apple AU/X, add this flag 
##  -Daux
##
## for linux gcc 2.3.3 using xfree1.1 Xserver, add these flags 
## 
##
## -DBSD -Dlinux -DF_OK=0 
##
## also add the flag
##
## -m486 
##
## if you are running on a 486-compatable CPU. For maximum speed, try the
## flags -fomit-frame-pointer -O6; however, the former flag will make it
## difficult for you to track down any bugs that occur while using the
## tools, and the latter will expose you to possible optimizer bugs. However,
## our alpha-testers have reported no problems using these two flags.
##
##
## For freeBSD, add the following flags 
##
##  -DBSD -Dfreebsd -Dlinux -DF_OK=0 -m486 
##
## for SGI add these flags 
##
##   -ansi 
##
## AmigaOS: if you are using X shared library with ADE, see notes below. 
## To increase speed, try to add -O2 and, based on your CPU, one of these
##
##   -m68020              : for 68020
##   -m68020 -m68881      : for 68020+6888x
##   -m68030              : for 68030
##   -m68030 -m68881      : for 68030+6888x
##   -m68040              : for 68040
##   -m68040 -Wa,-m68060  : for 68060
##
##

CHIPMUNKFLAGS =

CFLAGS= $(CHIPMUNKFLAGS) -I$(LOCINC) -I$(XINCLUDEDIR) -DWOLLIBDIR=\"$(WOLPL)\"

LDFLAGS= $(LIBP2C)  $(LIBX11) $(OTHERLIBS)

OBJ =               	\
         cell_stuff.o	\
         core.o		\
	 ext_defs.o	\
	 hpgl.o 	\
	 layer_stuff.o	\
	 mess_stuff.o	\
	 name_stuff.o	\
	 tab_stuff.o	\
         timing.o	\
	 wol_asm.o	\
         wol_cif.o	\
	 wol_cmd.o	\
	 wol_drc.o 	\
	 wol_gr_1.o	\
	 wol_gr_2.o	\
	 wol_header.o	\
	 wol_init.o	\
	 wol_menu.o	\
	 wol_options.o	\
         wol_route.o	\
	 wol_xtract.o	\
         wolmain.o


wol: $(OBJ) 
	$(CC) $(CFLAGS) $(OBJ) $(LDFLAGS) -o wol

# The following permits you to link properly with AmigaOS and 
# X shared libraries used in ADE
  
#wol: $(OBJ)
#	prelink $(LIBX11)
#	$(CC) -Tshared.x -Wa,-s $(CFLAGS) $(OBJ) $(LDFLAGS) -o wol
#	postlink wol
#	rm shared.x xlibs.c xlibs.o
  

install: wol 
	cp wol $(BINDIR)
	cp fixcify $(BINDIR)

clean:
	-rm -f *.o wol



## The following part of the Makefile is for making a tar file of the
## original parts of the wol distribution. Most users have no need for it.

VERSION = 1.14

dist:
	rm -rf wol
	mkdir wol
	cp COPYING Makefile README wol/
	cp *.c *.h *.wol  drc.rules wol/
	cp fixcify wol/
	cp -R wolman wol/

tardist:
	tar cvf wol.tar wol 
	rm -f wol.tar.gz
	gzip wol.tar

create: dist tardist 








