#
# Rubiks Cube, using MR
#
# UNIX
#

MR =		../mr
GBM =		../../gbm

VIEW =		-DVIEWXWIN

ifdef AIXxlC
CPP =		xlC
CPPFLAGS =	-DAIX
LFLAGS =
XOPTS =
else
ifdef AIX
CPP =		g++
CPPFLAGS =	-DAIX
LFLAGS =
XOPTS =
else
ifdef HP
CPP =		aCC
CPPFLAGS =	-DHP
LFLAGS =
XOPTS =
else
ifdef SUN
CPP =		g++
CPPFLAGS =	-DSUN -Wno-deprecated
LFLAGS =	-lrt
XOPTS =		-L/usr/X11/lib -lX11
else
ifdef SUNcc
CPP =		CC
CPPFLAGS =	-DSUN -w
LFLAGS =	-xildoff -lrt
XOPTS =		-L/usr/X11/lib -lX11
else
ifdef MACOSX
CPP =		g++
CPPFLAGS =	-DMACOSX -Wno-deprecated
LFLAGS =
XOPTS =		-L/opt/X11/lib -lX11
else
ifdef MINGW
VIEW =		-DVIEWWIN
CPP =		g++
CPPFLAGS =	-DMINGW -Wno-deprecated
LFLAGS =
XOPTS =		-luser32 -lgdi32
else
CPP =		g++
CPPFLAGS =	-DLINUX -Wno-deprecated
LFLAGS =
XOPTS =		-L/usr/X11R6/lib -lX11
endif
endif
endif
endif
endif
endif
endif

.C.o:
		$(CPP) -DUNIX $(VIEW) $(CPPFLAGS) -I$(MR) -I$(GBM) -O -c $*.C

# Tracer

cube:		cube.o $(MR)/mr.a $(GBM)/gbm.a $(GBM)/gbmerr.a
		$(CPP) $(LFLAGS) -o cube cube.o $(MR)/mr.a $(GBM)/gbm.a $(GBM)/gbmerr.a $(XOPTS)

cube.o:		cube.C $(MR)/mr.h

# Clean

clean:
		@rm -f *.o

#

package:
		zip -q -r cube.zip *
		zip -q -d cube.zip cube *.bak *.o

website:	package
		mv *.zip /pub/mr
		cp *.htm /pub/mr

#

IDIR =		/usr/local/bin

install:
		cp cube $(IDIR)
		chmod 755 $(IDIR)/cube
