#//This comes from Grail-3.3.5
#	This code $(CP)right (c) by the Grail project.
#	Commercial use requires written consent.
#	January 1995
#
#  Last modfied to add new filters in 3.4.3
#
#


EXT=

make_unix:
		$(CC) $(CCFLAGS) grail.cpp -lm -lstdc++
		cp grail.out $(BIN)char.out

make_dos:
		$(CC) $(CCFLAGS) grail.cpp
		copy grail.exe $(BIN)char.out

install:
		$(CP) $(BIN)char.out $(I_BIN)fcmenum$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fcmexec$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fcmmin$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fcmtofm$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmcomp$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmcment$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmcat$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmcatsize$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmcatrsize$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmcatmsize$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmcross$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmdeterm$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmenum$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmenum2$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmexec$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmmin$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmminrev$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmmindis$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmorder$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmplus$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmreach$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmrenum$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmrevers$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmsuff$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmpref$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmdis$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmshuffle$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmshuffleq$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmstar$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmstats$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmtofcm$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)nfmtofcm$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmtofcm2$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmtore$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmtofl$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmunion$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmunionsize$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmunionrsize$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmunionmsize$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)dfaunion$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)iscomp$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)isdeterm$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)isomorph$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)isuniv$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)recat$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)remin$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)restar$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)retofm$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)reunion$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)isempty$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmisempty$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)isnull$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)flappend$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)flexec$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)flfilter$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fllq$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)flprepen$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)flprod$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)flrevers$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)flrq$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)flsubclose$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fltofcm$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fltofm$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fltofmmn$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fltore$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)flunion$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)retofl$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmtoafa$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)afatofm$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)afaexec$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)afacomp$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)afaunion$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)afainter$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)litafa$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmsize$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)afasize$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)afareverse$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)afastar$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)afacaten$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmtofcm0$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fcmtofm0$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmreduce$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmuseful$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)nfatodfa$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)nfatodfca$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmadmatrix$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fmpermutation$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)flsimset$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fcmcomp$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fleqset$(EXT)
#		$(CP) $(BIN)char.out $(I_BIN)fmfastgap$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)inttofl$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)fltoint$(EXT)
		$(CP) $(BIN)char.out $(I_BIN)inputTest$(EXT)

clean_UNIX:
		@rm -rf *.o core ptrepository test.o tempinc *.out *.exe *.lnk *.tmp *.obj *..c .pure

clean_DOS:
		@del /F /Q *.o core ptrepository test.o tempinc *.out *.exe *.lnk *.tmp *.obj *..c .pure
