From 96031dd3015c8e911423e83af51d3566f4014b11 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 17 Nov 2019 00:12:54 +0000 Subject: bootstrap --- bootstrap | 126 ++++++++++++++++++++++++++++++++++---------------------------- 1 file changed, 69 insertions(+), 57 deletions(-) (limited to 'bootstrap') diff --git a/bootstrap b/bootstrap index 4fe381161..af4f4d01f 100755 --- a/bootstrap +++ b/bootstrap @@ -1,7 +1,16 @@ #!/bin/sh # This file is in the public domain. -echo "Removing folder 'libltdl'..." -rm -rf libltdl + +# We can't set -eu because we encounter warnings which +# result in stops, whereas the warnings can for now be +# safely ignored. +# set -eu + +cleanup() +{ + echo "Removing folder 'libltdl'..." + rm -rf libltdl +} # This is more portable than `which' but comes with # the caveat of not(?) properly working on busybox's ash: @@ -10,65 +19,68 @@ existence() command -v "$1" >/dev/null 2>&1 } -if existence uncrustify; then - echo "Installing uncrustify hook and configuration" - # Install uncrustify format symlink (if possible) - ln -s contrib/uncrustify.cfg uncrustify.cfg 2> /dev/null - # Install pre-commit hook (if possible) - ln -s ../../contrib/uncrustify_precommit .git/hooks/pre-commit 2> /dev/null -else - echo "Uncrustify not detected, hook not installed. Please install uncrustify if you plan on doing development" -fi - +check_uncrustify() +{ + if existence uncrustify; then + echo "Installing uncrustify hook and configuration" + # Install uncrustify format symlink (if possible) + ln -s contrib/uncrustify.cfg uncrustify.cfg 2> /dev/null + # Install pre-commit hook (if possible) + ln -s ../../contrib/uncrustify_precommit .git/hooks/pre-commit 2> /dev/null + else + echo "Uncrustify not detected, hook not installed." + echo "Please install uncrustify if you plan on doing development" + fi +} # yapf can be a suffixed binary, don't change the essential logic # of this if you change it. -if existence yapf || existence yapf3.0 || existence yapf3.1 || existence yapf3.2 || existence yapf3.3 || existence yapf3.4 || existence yapf3.5 || existence yapf3.6 || existence yapf3.7 || existence yapf3.8 || existence yapf3.9 || existence yapf4.0; then - echo "Installing yapf symlink" - # Install yapf style symlink (if possible) - ln -s contrib/conf/.style.yapf 2> /dev/null -else - echo "yapf not detected, please install yapf if you plan on contributing python code" -fi +check_yapf() +{ + if existence yapf || \ + existence yapf3.0 || \ + existence yapf3.1 || \ + existence yapf3.2 || \ + existence yapf3.3 || \ + existence yapf3.4 || \ + existence yapf3.5 || \ + existence yapf3.6 || \ + existence yapf3.7 || \ + existence yapf3.8 || \ + existence yapf3.9 || \ + existence yapf4.0; then + echo "Installing yapf symlink" + ln -s contrib/conf/.style.yapf 2> /dev/null + else + echo "yapf not detected, please install yapf if you plan on contributing python code" + fi +} -# if test $1 = "-d"; then -# if existence texi2mdoc; then -# echo "texi2mdoc: exists, pass --enable-texi2mdoc-generation to configure" -# else -# dir=$(dirname "$(readlink -f -- "$0")") -# mkdir -p $dir/contrib/vendored -# cd contrib/vendored -# if existence curl; then -# curl --output texi2mdoc-0.1.2.tgz https://mandoc.bsd.lv/texi2mdoc/snapshots/texi2mdoc-0.1.2.tgz -# elif existence wget; then -# wget https://mandoc.bsd.lv/texi2mdoc/snapshots/texi2mdoc-0.1.2.tgz -# elif existence ftp; then -# ftp https://mandoc.bsd.lv/texi2mdoc/snapshots/texi2mdoc-0.1.2.tgz -# elif existence fetch; then -# fetch https://mandoc.bsd.lv/texi2mdoc/snapshots/texi2mdoc-0.1.2.tgz -# else -# echo "skipping texi2mdoc build, no ftp or curl or wget or fetch found" -# fi -# if test -e texi2mdoc-0.1.2.tgz; then -# tar xzf texi2mdoc-0.1.2.tgz -# cd texi2mdoc-0.1.2 -# dir=$(dirname "$(readlink -f -- "$0")") -# make -# echo "please prepend or append $dir/contrib/vendored/texi2mdoc/ to your PATH before running configure" -# echo "and pass --enable-texi2mdoc-generation to configure" -# else -# echo "no texi2mdoc, skipping" -# fi -# fi -# fi +check_libtool() +{ + echo "checking for libtoolize / libtool... " + if existence libtool || \ + existence libtoolize || \ + existence glibtoolize || \ + existence slibtool; then + autoreconf -if + . "bin/pogen.sh" + else + echo "*** No libtoolize (libtool) or libtool found, please install it ***" >&2; + exit 1 + fi +} -echo "checking for libtoolize / libtool... " +main() +{ + cleanup + sleep 1 + check_uncrustify + sleep 1 + check_yapf + sleep 1 + check_libtool +} -if existence libtool || existence libtoolize || existence glibtoolize || existence slibtool; then - autoreconf -if - . "bin/pogen.sh" -else - echo "*** No libtoolize (libtool) or libtool found, please install it ***" >&2; - exit 1 -fi +main "$@" -- cgit v1.2.3