shell-makefile-template/Makefile
2023-09-27 14:02:00 +02:00

49 lines
1.7 KiB
Makefile

include options.mk
help:
@echo "${NAME} help"
@echo
@echo "make install Install ${NAME}."
@echo "make uninstall Uninstall ${NAME}."
@echo "make clean: Remove tarballs."
@echo "make docs Create documentation for ${NAME}."
@echo "make dist Create distro package for ${NAME}."
@echo "make pkg_arch Create Arch package ${NAME}."
install: clean
cp ${NAME} ${PREFIX}${DESTDIR}/bin
chmod +x ${PREFIX}${DESTDIR}/bin/${NAME}
uninstall:
rm -rf ~/.config/${NAME}
rm -f ${PREFIX}${DESTDIR}/bin/${NAME}
clean:
rm -f *.tar* *zst* *${NAME}-${VER}.PKGBUILD
docs: clean
printf "%% ${NAME}(1) ${VER} | ${DESC}\n" > .man.md
cat ${NAME}.md >> .man.md
pandoc --standalone --to man .man.md -o ${NAME}.1
rm -f .man.md
dist: docs
mkdir -p ${NAME}-${VER}
cp ${NAME} README.md LICENSE Makefile *.mk ${NAME}-${VER}
[ -f "PKGBUILD" ] && cp -f PKGBUILD ${NAME}-${VER} || :
tar -cf ${NAME}-${VER}.tar ${NAME}-${VER}
gzip ${NAME}-${VER}.tar
rm -rf ${NAME}-${VER}.tar ${NAME}-${VER}
md5sum ${NAME}-${VER}.tar.gz | cut -d ' ' -f 1 > ${NAME}-${VER}.tar.gz.md5
sha256sum ${NAME}-${VER}.tar.gz | cut -d ' ' -f 1 > ${NAME}-${VER}.tar.gz.sha256
gpg --detach-sign --yes --local-user $$(whoami) ${NAME}-${VER}.tar.gz || :
pkg_arch: dist
command -v makepkg > /dev/null || exit 1
[ -f PKGBUILD ] || exit 1
cp -f PKGBUILD PKGBUILD.orig
sed "s|VERSION|${VER}|g; s|MD5SUM|$$(md5sum *.tar.gz | cut -d ' ' -f 1)|g; s|NAME|${NAME}|g; s|DESC|${DESC}|g; s|URL|${URL}|g; s|LICENSE|${LICENSE}|g; s|DEPENDENCIES|${DEPENDENCIES}|g; s|GROUPS|${GROUPS}|g" PKGBUILD.orig > PKGBUILD
makepkg -sfr --sign || exit 1
rm -rf src/ pkg/
cp PKGBUILD ${NAME}-${VER}.PKGBUILD; mv PKGBUILD.orig PKGBUILD