# Ruby Installer # # Douglas Thrift # # $Id$ ifeq ($(OS),Windows_NT) BASE := $(CURDIR) CP := C:\cygwin\bin\cp.exe GEMS_INSTALL := gems-install.cmd RM_F := del /F /A RM_RF := rmdir /Q /S TOUCH := touch.cmd else BASE := Z:$(CURDIR) CP := cp GEMS_INSTALL := ./gems-install.sh RM_F := rm -f RM_RF := rm -rf TOUCH := touch endif RUBY_ZIP := $(lastword $(wildcard ruby-*-i386-mswin32.zip)) RUBY_VERSION := $(patsubst ruby-%-i386-mswin32.zip,%,$(RUBY_ZIP)) GEMS_ZIP := $(lastword $(wildcard rubygems-*.zip)) GEMS_VERSION := $(patsubst rubygems-%.zip,%,$(GEMS_ZIP)) GEMS_DIR := rubygems-$(GEMS_VERSION) INSTALLER := ruby-$(RUBY_VERSION)-rubygems-$(GEMS_VERSION).exe .PHONY: all clean all: $(INSTALLER) .gems: $(GEMS_ZIP) .ruby-install -$(RM_RF) $(GEMS_DIR) unzip $(GEMS_ZIP) $(TOUCH) $@ .gems-install: .gems $(GEMS_INSTALL) $(GEMS_DIR) $(TOUCH) $@ .ruby: $(RUBY_ZIP) -$(RM_RF) ruby unzip $(RUBY_ZIP) -d ruby $(TOUCH) $@ .ruby-install: ruby/bin/libeay32.dll ruby/bin/ssleay32.dll ruby/bin/zlib.dll $(TOUCH) $@ $(INSTALLER): .gems-install echo $(BASE) ruby/bin/%.dll: %.dll .ruby $(CP) $< $@ ruby/bin/zlib.dll: zlib1.dll .ruby $(CP) $< $@ clean: -$(RM_F) .gems* .ruby* $(INSTALLER) -$(RM_RF) ruby $(GEMS_DIR)