###################################################################
#                                                                 #
#          Copyright (c) 1991-1992  by J.Nishimoto                #
#                                                                 #
#                      H  c  a  d  3  D                           #
#                                                                 #
#  Permission to use,copy,modify,and distribute this software.    #
#                                                                 #
#  Makefile                                                       #
#                                                                 #
#                                                                 #
###################################################################

######################################################################
#                    Configuration section.                         ##
######################################################################

# HCADIR is Hcad3D directory.
HCADIR        = /ua/nisimoto/Hcad3D

# PRINT_COM is the command for printing of Postscript file.
PRINT_COMMAND       = lpr

# PRINT_OPTION is the option for printing.
PRINT_OPTION        = 

LDFLAGS	      = -lm -lX11

LINKER	      = cc

PRINT	      = lpr

###################################################################################
##              Don't change anything below here !!!!!!!!!!!!                    ## 
###################################################################################


DEST	      = .

EXTHDRS	      = $(HCADIR)/image/cursor.bm

HDRS	      = $(HCADIR)/source/Hcad.h \
		$(HCADIR)/source/Hcadvar.h \
		$(HCADIR)/source/Hcadext.h

COMFLAGS      = -I$(HCADIR)

LIBS	      =

MAKEFILE      = Makefile

PRINT_COM     = \"$(PRINT_COMMAND)\ $(PRINT_OPTION)\"
OBJS	      =  $(HCADIR)/source/Hcad3d.o \
		$(HCADIR)/source/Hcad_sub.o \
		$(HCADIR)/source/connect.o \
		$(HCADIR)/source/data_menu.o \
		$(HCADIR)/source/demo_menu.o \
		$(HCADIR)/source/file_menu.o \
		$(HCADIR)/source/help_menu.o \
		$(HCADIR)/source/main_draw.o \
		$(HCADIR)/source/menubar.o \
		$(HCADIR)/source/print_menu.o \
		$(HCADIR)/source/setting_menu.o \
		$(HCADIR)/source/select_menu.o \
		$(HCADIR)/source/sub_draw.o


PROGRAM	      = $(HCADIR)/bin/Hcad3D


SRCS	      = $(HCADIR)/source/Hcad3d.c \
		$(HCADIR)/source/Hcad_sub.c \
		$(HCADIR)/source/connect.c \
		$(HCADIR)/source/data_menu.c \
		$(HCADIR)/source/demo_menu.c \
		$(HCADIR)/source/file_menu.c \
		$(HCADIR)/source/help_menu.c \
		$(HCADIR)/source/main_draw.c \
		$(HCADIR)/source/menubar.c \
		$(HCADIR)/source/print_menu.c \
		$(HCADIR)/source/setting_menu.c \
		$(HCADIR)/source/select_menu.c \
		$(HCADIR)/source/sub_draw.c

all:		$(PROGRAM)

$(PROGRAM):     $(OBJS) $(LIBS)
		@echo -n "Making Hcad3D $(PROGRAM) ... "
		@$(LINKER) $(OBJS) $(LDFLAGS) -o $(PROGRAM)
		@echo "done"

clean:;		@rm -f $(OBJS)

depend:;	@mkmf -f $(MAKEFILE) PROGRAM=$(PROGRAM) DEST=$(DEST)

index:;		@ctags -wx $(HDRS) $(SRCS)

install:	$(PROGRAM)
		@echo Installing $(PROGRAM) in $(DEST)
		@install -s $(PROGRAM) $(DEST)

print:;		@$(PRINT) $(HDRS) $(SRCS)

program:        $(PROGRAM)

tags:           $(HDRS) $(SRCS); @ctags $(HDRS) $(SRCS)

update:		$(DEST)/$(PROGRAM)

$(DEST)/$(PROGRAM): $(SRCS) $(LIBS) $(HDRS) $(EXTHDRS)
		@make -f $(MAKEFILE) DEST=$(DEST) install

###
$(HCADIR)/source/Hcad3d.o:		$(HCADIR)/source/Hcad3d.c $(HDRS) 
	cc -c -DHCAD_PATH=\"$(HCADIR)\" -DPRINT_COM=$(PRINT_COM) $(COMFLAGS) $(HCADIR)/source/Hcad3d.c
	@mv -f Hcad3d.o $(HCADIR)/source 
$(HCADIR)/source/Hcad_sub.o: 	$(HCADIR)/source/Hcad_sub.c  $(HDRS)
	cc -c $(COMFLAGS) $(HCADIR)/source/Hcad_sub.c  
	@mv -f Hcad_sub.o $(HCADIR)/source
$(HCADIR)/source/connect.o:	$(HCADIR)/source/connect.c   $(HDRS)
	cc -c $(COMFLAGS) $(HCADIR)/source/connect.c  
	@mv -f connect.o $(HCADIR)/source
$(HCADIR)/source/data_menu.o:	$(HCADIR)/source/data_menu.c $(HDRS)
	cc -c $(COMFLAGS) $(HCADIR)/source/data_menu.c  
	@mv -f data_menu.o $(HCADIR)/source
$(HCADIR)/source/demo_menu.o: 	$(HCADIR)/source/demo_menu.c $(HDRS)
	cc -c $(COMFLAGS) $(HCADIR)/source/demo_menu.c  
	@mv -f demo_menu.o $(HCADIR)/source
$(HCADIR)/source/file_menu.o: 	$(HCADIR)/source/file_menu.c $(HDRS)
	cc -c $(COMFLAGS) $(HCADIR)/source/file_menu.c  
	@mv -f file_menu.o $(HCADIR)/source
$(HCADIR)/source/help_menu.o:	$(HCADIR)/source/help_menu.c $(HDRS)
	cc -c $(COMFLAGS) $(HCADIR)/source/help_menu.c  
	@mv -f help_menu.o $(HCADIR)/source
$(HCADIR)/source/main_draw.o:	$(HCADIR)/source/main_draw.c $(HDRS)
	cc -c $(COMFLAGS) $(HCADIR)/source/main_draw.c  
	@mv -f main_draw.o $(HCADIR)/source
$(HCADIR)/source/menubar.o:	$(HCADIR)/source/menubar.c   $(HDRS)
	cc -c $(COMFLAGS) $(HCADIR)/source/menubar.c  
	@mv -f menubar.o $(HCADIR)/source
$(HCADIR)/source/print_menu.o:	$(HCADIR)/source/print_menu.c $(HDRS)
	cc -c $(COMFLAGS) $(HCADIR)/source/print_menu.c  
	@mv -f print_menu.o $(HCADIR)/source
$(HCADIR)/source/setting_menu.o: $(HCADIR)/source/setting_menu.c $(HDRS)
	cc -c $(COMFLAGS) $(HCADIR)/source/setting_menu.c  
	@mv -f setting_menu.o $(HCADIR)/source
$(HCADIR)/source/select_menu.o: $(HCADIR)/source/select_menu.c $(HDRS)
	cc -c $(COMFLAGS) $(HCADIR)/source/select_menu.c  
	@mv -f select_menu.o $(HCADIR)/source
$(HCADIR)/source/sub_draw.o:	$(HCADIR)/source/sub_draw.c $(HDRS)
	cc -c $(COMFLAGS) $(HCADIR)/source/sub_draw.c  
	@mv -f sub_draw.o $(HCADIR)/source


