# $Id$ ARIA2_VER ?=0.9.0 ARIA2_DIR ?=aria2-${ARIA2_VER} ARIA2_BZ2 ?=${ARIA2_DIR}.tar.bz2 ARIA2_URL ?=http://umn.dl.sourceforge.net/sourceforge/aria2/${ARIA2_BZ2} WGET?=wget -N SU?= ARIA2_WIN32_PATCH=aria2-${ARIA2_VER}-win32.patch ARIA2_WIN32_PATCH_URL=http://smithii.com/files/${ARIA2_WIN32_PATCH} OSNAME:=$(shell uname | tr '[A-Z]' '[a-z]' | perl -ne '/([a-z]+)/ && print $$1;') # libcrypto requires -lgdi32 # libcares requires -lws2_32 # libssl requires -lcrypto ifeq ('$(OSNAME)', 'mingw') CONFIGURE_OPTS?=CPPFLAGS="-I/usr/local/include" LDFLAGS="-L/usr/local/lib" LIBS="-lcrypto -lgdi32 -lssl -lws2_32" endif ifeq ('$(OSNAME)', 'cygwin') CONFIGURE_OPTS?= endif ARIA2_WIN32_ZIP=aria2-${ARIA2_VER}-win32-$(OSNAME).zip ARIA2_TAR_TOUCH=${ARIA2_DIR}/.tar.touch ARIA2_PATCH_TOUCH=${ARIA2_DIR}/.patch.touch ARIA2_RECONF_TOUCH=${ARIA2_DIR}/.reconf.touch ARIA2_CONFIGURE_TOUCH=${ARIA2_DIR}/.configure-$(OSNAME).touch ARIA2_MAKE_TOUCH=${ARIA2_DIR}/.make-$(OSNAME).touch ARIA2_TEST_TOUCH=${ARIA2_DIR}/.test-$(OSNAME).touch ARIA2_INSTALL_TOUCH=${ARIA2_DIR}/.install-$(OSNAME).touch all: make ${ARIA2_BZ2}: ${WGET} ${ARIA2_URL} wget: ${ARIA2_BZ2} ${ARIA2_TAR_TOUCH}: ${ARIA2_BZ2} tar xjvf $< touch $@ untar: ${ARIA2_TAR_TOUCH} ${ARIA2_WIN32_PATCH}: ${WGET} ${ARIA2_WIN32_PATCH_URL} ${ARIA2_PATCH_TOUCH}: ${ARIA2_TAR_TOUCH} ${ARIA2_WIN32_PATCH} #cd ${ARIA2_DIR} && \ # patch -p1 <../${ARIA2_WIN32_PATCH} touch $@ patch: ${ARIA2_PATCH_TOUCH} ${ARIA2_RECONF_TOUCH}: ${ARIA2_PATCH_TOUCH} #cd ${ARIA2_DIR} && \ # ./reconf touch $@ reconf: ${ARIA2_RECONF_TOUCH} ${ARIA2_CONFIGURE_TOUCH}: ${ARIA2_RECONF_TOUCH} #cd ${ARIA2_DIR} && \ # $(CONFIGURE_OPTS) ./configure touch $@ configure: ${ARIA2_CONFIGURE_TOUCH} ${ARIA2_MAKE_TOUCH}: ${ARIA2_CONFIGURE_TOUCH} #cd ${ARIA2_DIR} && \ # make touch $@ make: ${ARIA2_MAKE_TOUCH} ${ARIA2_TEST_TOUCH}: ${ARIA2_MAKE_TOUCH} #cd ${ARIA2_DIR}/test && \ # make check touch $@ test: ${ARIA2_TEST_TOUCH} ${ARIA2_INSTALL_TOUCH}: ${ARIA2_MAKE_TOUCH} cd ${ARIA2_DIR} && \ ${SU} make install touch $@ install: ${ARIA2_INSTALL_TOUCH} ${ARIA2_WIN32_ZIP}: ${ARIA2_MAKE_TOUCH} rm -f $@ cd ${ARIA2_DIR} &&\ zip -9j ../$@ src/aria2c.exe ../${ARIA2_WIN32_PATCH} ../aria2/README-win32.txt ../aria2.mak ifeq ('$(OSNAME)', 'mingw') cd ${ARIA2_DIR} &&\ zip -9j ../$@ /usr/local/bin/libxml2-2.dll endif ifeq ('$(OSNAME)', 'cygwin') cd ${ARIA2_DIR} &&\ zip -j9 ../$@ `cygcheck src/aria2c.exe | grep -i \.dll | grep -i \\cyg | tr -d ' \r' | sort -u` endif dist: ${ARIA2_WIN32_ZIP} clean: rm -fr \ ${ARIA2_DIR}/*.touch cd ${ARIA2_DIR} && \ make clean distclean: clean cd ${ARIA2_DIR} && \ make distclean realclean: rm -fr \ ${ARIA2_DIR} .PHONY: all wget untar patch reconf configure make test install dist clean distclean realclean