#
# Project Home:
# ============
# https://invisible-island.net/ncurses/announce.html
#
# Downloads:
# =========
# ftp://invisible-island.net/ncurses/
# ftp://ftp.gnu.org/pub/gnu/ncurses/
#
url = https://invisible-island.net/archives/ncurses
version = 6.5
pkgname = ncurses
downloads = downloads
suffix = tar.gz
tarballs = $(addprefix $(downloads)/, $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(version))))
sha1s = $(addsuffix .sha1sum, $(tarballs))
dates = 20240504 20240511 20240518 20240519 20240525 20240601 20240608 20240615
dates += 20240622 20240629 20240706 20240713 20240720 20240727 20240810 20240817
dates += 20240824 20240831 20240914 20240922 20240928 20241006 20241019 20241026
dates += 20241102 20241109 20241123 20241130 20241207 20241214 20241221 20241228
dates += 20250104 20250111 20250118 20250125 20250201 20250208 20250215 20250216
dates += 20250222
psuffix = patch.gz
patches = $(addprefix $(downloads)/, $(addsuffix .$(psuffix), $(addprefix $(pkgname)-$(version)-, $(dates))))
psha1s = $(addsuffix .sha1sum, $(patches))
date = $(shell echo $(dates) | tr ' ' '\n' | tail -1)
lsuffix = tar.xz
latest = $(pkgname)-$(version)-$(date).$(lsuffix)
lsha1s = $(addsuffix .sha1sum, $(latest))
all: $(tarballs) $(sha1s) $(patches) $(psha1s) $(latest) $(lsha1s)
.PHONY: downloads_clean
$(tarballs):
@echo -e "\n======= Downloading source tarballs =======\n"
@mkdir -p $(CURDIR)/downloads
@for tarball in $(tarballs) ; do \
tarball=`basename $$tarball` ; \
wget -N $(url)/$$tarball ; \
mv $$tarball $(downloads)/ ; \
done
$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
@for tarball in $< ; do \
echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
sha1sum --binary $$tarball > $$tarball.sha1sum ; \
done
$(patches):
@echo -e "\n======= Downloading patches for $(pkgname)-$(version) =======\n"
@for patch in $(patches) ; do \
patch=`basename $$patch` ; \
wget -N $(url)/$(version)/$$patch ; \
mv $$patch $(downloads)/ ; \
done
$(psha1s): %.$(psuffix).sha1sum : %.$(psuffix)
@for tarball in $< ; do \
echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
sha1sum --binary $$tarball > $$tarball.sha1sum ; \
done
$(latest): $(sha1s) $(psha1s)
@echo -e "\n======= Create patched $(latest) tarball =======\n"
@for tarball in $(pkgname)-$(version).$(suffix) ; do \
( cd $(downloads) ; \
tar -xzf $$tarball ; \
( cd $(pkgname)-$(version) ; \
patches="$(addsuffix .$(psuffix), $(addprefix ../$(pkgname)-$(version)-, $(dates)))" ; \
for patch in `echo $${patches} | sort` ; do \
echo "" ; \
echo "#" ; \
echo "# apply: $$patch" ; \
echo "#" ; \
zcat $$patch | patch -p1 ; \
done ; \
) ; \
mv $(pkgname)-$(version) $(pkgname)-$(version)-$(date) ; \
tar -cJf $(latest) $(pkgname)-$(version)-$(date) ; \
mv $(latest) .. ; \
rm -rf $(pkgname)-$(version)-$(date) ; \
) ; \
done
@rm -rf $(downloads)
$(lsha1s): %.$(lsuffix).sha1sum : %.$(lsuffix)
@for tarball in $< ; do \
echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
sha1sum --binary $$tarball > $$tarball.sha1sum ; \
done
downloads_clean:
@rm -rf $(downloads) *.$(lsuffix) *.sha1sum