DIR=icarus
ICARUS_SOURCE=verilog-20090923
ICARUS_SOURCE_TGZ=$(ICARUS_SOURCE).tar.gz
EXPAND_DIR=$(DIR)/$(ICARUS_SOURCE)

#CPU_TYPE=i686
CPU_TYPE=nocona

.PRECIOUS : $(foreach X, $(DIR), $(X)/makefile $(X)/makefile.depend)

all : $(EXPAND_DIR)/ivl.exe

install : all
	(cd $(EXPAND_DIR) && $(MAKE) install 2>&1 | tee install.log)

clean :
	-rm -rf $(DIR)

$(DIR) :
	mkdir $@

$(EXPAND_DIR)/ivl.exe : $(EXPAND_DIR)/Makefile
	(cd $(EXPAND_DIR) && $(MAKE) 2>&1 | tee make.log)

$(EXPAND_DIR)/Makefile : $(EXPAND_DIR)/configure
	(cd $(EXPAND_DIR) && CPPFLAGS="-march=$(CPU_TYPE) -I/usr/local/include" LDFLAGS="-L/usr/local/lib" ./configure --prefix=/usr/local)

$(EXPAND_DIR)/configure : $(EXPAND_DIR)

$(EXPAND_DIR) : $(ICARUS_SOURCE_TGZ) $(DIR)
	(cd $(DIR) && tar zxf ../$<)
	touch $@
