aboutsummaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
authorMattias Andrée <maandree@operamail.com>2012-08-19 01:14:33 +0200
committerMattias Andrée <maandree@operamail.com>2012-08-19 01:14:33 +0200
commitbb16937e998f4e41f7e45c4976b581a6c6d064ce (patch)
treee1e0603565698da543edd5a68089b2a78c815984 /configure
parent89ffad3c6462ad952b26c64a5677955e48b15e99 (diff)
downloadponysay-bb16937e998f4e41f7e45c4976b581a6c6d064ce.tar.gz
ponysay-bb16937e998f4e41f7e45c4976b581a6c6d064ce.tar.bz2
ponysay-bb16937e998f4e41f7e45c4976b581a6c6d064ce.zip
./configure prototype
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure254
1 files changed, 160 insertions, 94 deletions
diff --git a/configure b/configure
index 2868fb5..fc6af15 100755
--- a/configure
+++ b/configure
@@ -3,19 +3,37 @@
PREFIX="/usr"
INFODESC=\''My Little Ponies for your terminal'\'
-CPPFLAGS=""
-CFLAGS=""
-LDFLAGS=""
-
-compileMethods='all'
completions='completion/bash-completion.sh completion/fish-completion.fish completion/zsh-completion.zsh'
-shareDirs='ponies ttyponies quote'
+shareDirs='ponies ttyponies quotes'
manFiles='manuals/manpage.6 manuals/manpage.es.6'
licenseFiles='COPYING'
+oldInstalledFiles='bin/ponysaytruncater lib/ponysay/list.pl lib/ponysay/linklist.pl lib/ponysay/pq4ps lib/ponysay/pq4ps.pl lib/ponysay/pq4ps-list lib/ponysay/pq4ps-list.pl'
+oldInstalledDirs='share/ponies share/ttyponies'
+oldCompiledFiles='ponysaytruncater ponysay.install'
+oldCompiledDirs=''
+
+installedFiles='bin/ponysay bin/ponythink bin/ponysay.py bin/ponythink.py doc/ponysay.pdf share/info/ponysay.info.gz share/info/ponythink.info.gz'
+installedDirs='share/ponysay lib/ponysay'
+compiledFiles='truncater ponysay.info.gz ponysay.py.install'
+compiledDirs=''
+
+for man in $manFiles; do
+ oldCompiledFiles="$oldCompiledFiles $man.gz"
+done
+for completion in $completions; do
+ thinkfile="${completion%%.*}-think.${completion##*.}"
+ compiledFiles="$compiledFiles $completion.install $thinkfile"
+done
+for file in $licenseFiles; do
+ installedFiles="$installedFiles share/licenses/ponysay/$file"
+done
+
+
+
function getcompdir()
{
if [ "$1" == 'bash' ]; then echo -n 'bash-completion/completions'
@@ -34,16 +52,51 @@ function getcompfile()
+installPdf=''
+installInfo=' install-info'
+installMan=' install-man'
+installManEs=''
+installBash=' install-bash'
+installFish=' install-fish'
+installZsh=' install-zsh'
+
for arg in "$@"; do
opt="${arg%%=*}"
val="${arg##*=}"
+
if [ "$opt" = '--prefix' ]; then
PREFIX="$val"
elif [ "$opt" = '--info-desc' ]; then
INFODESC=\'"$(sed -e s/\'/\''\\'\'\'/g <<<"$val")"\'
+
+ elif [ "$opt" = '--with-pdf' ]; then installPdf=' install-pdf'
+ elif [ "$opt" = '--without-info' ]; then installInfo=''
+ elif [ "$opt" = '--without-man' ]; then installMan=''
+ elif [ "$opt" = '--with-man-es' ]; then installManEs=' install-man-es'
+ elif [ "$opt" = '--without-bash' ]; then installBash=''
+ elif [ "$opt" = '--without-fish' ]; then installFish=''
+ elif [ "$opt" = '--without-zsh' ]; then installZsh=''
+
+ elif [ "$opt" = "--with-everyting" ]; then
+ installPdf=' install-pdf'
+ installInfo=' install-info'
+ installMan=' install-man'
+ installManEs=' install-man-es'
+ installBash=' install-bash'
+ installFish=' install-fish'
+ installZsh=' install-zsh'
+
+ else
+ echo "$0: error: option not recongised: $arg" >&2
fi
done
+compileMethods='core truncater manpages ponysaycompletion ponythinkcompletion'
+installMethods='install-min'"$installPdf$installInfo$installMan'$installManEs$installBash$installFish$installZsh"
+if [ ! "$installInfo" = '' ]; then
+ compileMethods="$compileMethods infomanual"
+fi
+
function correctPrefix()
@@ -65,11 +118,11 @@ function gzCompress()
function thinkCompletion()
{
for file in "$@"; do
- echo -en '\tsed '
- echo -n '-e '\''s/ponysay/ponythink/g'\'
- echo -n ' < "'"$file"'.install" | sed '
- echo -n '-e '\''s/\/ponythink\//\/ponysay\//g'\'
- echo -n '-e '\''s/\\\/ponythink\\\//\\\/ponysay\\\//g'\'
+ echo -en '\tsed'
+ echo -n ' -e '\''s/ponysay/ponythink/g'\'
+ echo -n ' < "'"$file"'.install" | sed'
+ echo -n ' -e '\''s/\/ponythink\//\/ponysay\//g'\'
+ echo -n ' -e '\''s/\\\/ponythink\\\//\\\/ponysay\\\//g'\'
thinkfile="${file%%.*}-think.${file##*.}"
echo ' > "'"$thinkfile"'"'
done
@@ -77,20 +130,31 @@ function thinkCompletion()
-echo "PREFIX = $PREFIX"
-echo "INFODESC = $INFODESC"
-echo "CPPFLAGS = $CPPFLAGS"
-echo "CFLAGS = $CFLAGS"
-echo "LDFLAGS = $LDFLAGS"
+echo "PREFIX = $PREFIX, edit with option --prefix=PREFIX"
+echo "INFODESC = $INFODESC, edit with option --info-desc=INFODESC"
+echo
+[ ! "$installPdf" = '' ] && echo "Installing PDF manual"
+[ ! "$installInfo" = '' ] && echo "Installing info manual, add option --without-info to skip"
+[ ! "$installMan" = '' ] && echo "Installing English manpage manual, add option --without-man to skip"
+[ ! "$installManEs" = '' ] && echo "Installing Spanish manpage manual"
+[ ! "$installBash" = '' ] && echo "Installing autocompletion for GNU Bash, add option --without-bash to skip"
+[ ! "$installFish" = '' ] && echo "Installing autocompletion for fish, add option --without-fish to skip"
+[ ! "$installZsh" = '' ] && echo "Installing autocompletion for zsh, add option --without-zsh to skip"
+echo
+[ ! "$installPdf" = '' ] || echo "Skipping PDF manual, add option --with-pdf to install"
+[ ! "$installInfo" = '' ] || echo "Skipping info manual"
+[ ! "$installMan" = '' ] || echo "Skipping English manpage manual"
+[ ! "$installManEs" = '' ] || echo "Skipping Spanish manpage manual, add option --with-man-es to install"
+[ ! "$installBash" = '' ] || echo "Skipping autocompletion for GNU Bash"
+[ ! "$installFish" = '' ] || echo "Skipping autocompletion for fish"
+[ ! "$installZsh" = '' ] || echo "Skipping autocompletion for zsh"
+echo
function makeMakefile()
{
echo 'PREFIX='\'"$PREFIX"\'
- echo 'CPPFLAGS='\'"$CPPFLAGS"\'
- echo 'CFLAGS='\'"$CFLAGS"\'
- echo 'LDFLAGS='\'"$LDFLAGS"\'
echo 'INSTALLDIR="$(DESTDIR)$(PREFIX)"'
echo 'SED_PREFIX=$$(sed -e '\''s/\//\\\//g'\'' <<<$(PREFIX))'
echo
@@ -127,10 +191,10 @@ function makeMakefile()
echo
echo 'install-min: core truncater'
- echo -en '\t' ; echo 'mkdir -p "'"$shareDir"'"'
+ echo -en '\t' ; echo 'mkdir -p "$(INSTALLDIR)/share/ponysay/"'
for dir in $shareDirs; do
- echo -en '\t' ; echo 'mkdir "$(INSTALLDIR)/share/ponysay/ponies'"$dir"'"'
- echo -en '\t' ; echo 'cp -P "'"$dir"'/"*.* "$(INSTALLDIR)/share/ponysay/ponies'"$dir"'/"'
+ echo -en '\t' ; echo 'mkdir -p "$(INSTALLDIR)/share/ponysay/'"$dir"'"'
+ echo -en '\t' ; echo 'cp -P "'"$dir"'/"*.* "$(INSTALLDIR)/share/ponysay/'"$dir"'/"'
done
echo
echo -en '\t' ; echo 'mkdir -p "$(INSTALLDIR)/bin/"'
@@ -153,12 +217,13 @@ function makeMakefile()
shell="${completion##*/}"
shell="${shell%%-*}"
thinkfile="${completion%%.*}-think.${completion##*.}"
- shelldir='$(INSTALLDIR)/share/'"$(getcompdir $shell)"'/'
+ shelldir='share/'"$(getcompdir $shell)"'/'
echo 'install-'"$shell"': ponysaycompletion ponythinkcompletion'
- echo -en '\t' ; echo 'mkdir -p "'"$shelldir"'"'
- echo -en '\t' ; echo 'install "'"$completion"'" "'"$shelldir$(getcompfile $shell ponysay)"'"'
- echo -en '\t' ; echo 'install "'"$thinkfile"'" "'"$shelldir$(getcompfile $shell ponythink)"'"'
+ echo -en '\t' ; echo 'mkdir -p "$(INSTALLDIR)/'"$shelldir"'"'
+ echo -en '\t' ; echo 'install "'"$completion"'" "$(INSTALLDIR)/'"$shelldir$(getcompfile $shell ponysay)"'"'
+ echo -en '\t' ; echo 'install "'"$thinkfile"'" "$(INSTALLDIR)/'"$shelldir$(getcompfile $shell ponythink)"'"'
echo
+ installedFiles="$installedFiles $shelldir$(getcompfile $shell ponysay) $shelldir$(getcompfile $shell ponythink)"
done
echo 'install-pdf:'
@@ -183,8 +248,76 @@ function makeMakefile()
echo -en '\t' ; echo 'install "'"$man"'.gz" "$(INSTALLDIR)/share/man'"$mandir"'/man6/ponysay.6.gz"'
echo -en '\t' ; echo 'ln -sf "ponysay.6.gz" "$(INSTALLDIR)/share/man'"$mandir"'/man6/ponythink.6.gz"'
echo
+ installedFiles="$installedFiles share/man$mandir/man6/ponysay.6.gz share/man$mandir/man6/ponythink.6.gz"
done
+ echo
+ echo 'install: '"$installMethods"
+ echo -en '\t' ; echo '@echo -e \\n\\n\'
+ cat <<EOF
+'/--------------------------------------------------\\\\\n'\\
+'| ___ |\\n'\\
+'| / (_) o |\\n'\\
+'| \\__ _ _ __ |\\n'\\
+'| / / |/ | | / \\_| | |\\n'\\
+'| \\___/ | |_/|/\\__/ \\_/|/ |\\n'\\
+'| /| /| |\\n'\\
+'| \\| \\| |\\n'\\
+'| ____ |\\n'\\
+'| | _ \\ ___ _ __ _ _ ___ __ _ _ _ |\\n'\\
+'| | |_) |/ _ \\ | '\\''_ \\ | | | |/ __| / _\` || | | | |\n'\\
+'| | __/| (_) || | | || |_| |\\__ \\| (_| || |_| | |\\n'\\
+'| |_| \\___/ |_| |_| \\__, ||___/ \\__,_| \\__, | |\\n'\\
+'| |___/ |___/ |\\n'\\
+'\\\\--------------------------------------------------/'
+EOF
+ echo -en '\t' ; echo '@echo dummy | ./ponysay -f ./`if [[ "$$TERM" = "linux" ]]; then echo ttyponies; else echo ponies; fi`/pinkiecannon.pony | tail --lines=30 ; echo -e \\n'
+ echo
+
+ echo 'uninstall:'
+ for old in $installedDirs; do
+ echo -en '\t'
+ echo 'if [ -d "$(INSTALLDIR)/'"$old"'" ]; then rm -rf "$(INSTALLDIR)/'"$old"'"; fi'
+ done
+ for old in $installedFiles; do
+ echo -en '\t'
+ echo 'if [ -f "$(INSTALLDIR)/'"$old"'" ]; then unlink "$(INSTALLDIR)/'"$old"'"; fi'
+ done
+ echo
+
+ echo 'clean:'
+ for old in $compiledDirs; do
+ echo -en '\t'
+ echo 'if [ -d "'"$old"'" ]; then rm -rf "'"$old"'"; fi'
+ done
+ for old in $compiledFiles; do
+ echo -en '\t'
+ echo 'if [ -f "'"$old"'" ]; then rm -f "'"$old"'"; fi'
+ done
+ echo
+
+ echo 'uninstall-old:'
+ for old in $oldInstalledDirs; do
+ echo -en '\t'
+ echo 'if [ -d "$(INSTALLDIR)/'"$old"'" ]; then rm -rf "$(INSTALLDIR)/'"$old"'"; fi'
+ done
+ for old in $oldInstalledFiles; do
+ echo -en '\t'
+ echo 'if [ -f "$(INSTALLDIR)/'"$old"'" ]; then unlink "$(INSTALLDIR)/'"$old"'"; fi'
+ done
+ echo
+
+ echo 'clean-old:'
+ for old in $oldCompiledDirs; do
+ echo -en '\t'
+ echo 'if [ -d "'"$old"'" ]; then rm -rf "'"$old"'"; fi'
+ done
+ for old in $oldCompiledFiles; do
+ echo -en '\t'
+ echo 'if [ -f "'"$old"'" ]; then rm -f "'"$old"'"; fi'
+ done
+ echo
+
cat <<EOF
## Scripts for maintainers
@@ -223,73 +356,6 @@ quotes: submodules
EOF
}
-makeMakefile > Makefile
-
+makeMakefile > Makefile
-#install: install-no-info install-info
-# @echo -e '\n\n'\
-#'/--------------------------------------------------\\\n'\
-#'| ___ |\n'\
-#'| / (_) o |\n'\
-#'| \__ _ _ __ |\n'\
-#'| / / |/ | | / \_| | |\n'\
-#'| \___/ | |_/|/\__/ \_/|/ |\n'\
-#'| /| /| |\n'\
-#'| \| \| |\n'\
-#'| ____ |\n'\
-#'| | _ \ ___ _ __ _ _ ___ __ _ _ _ |\n'\
-#'| | |_) |/ _ \ | '\''_ \ | | | |/ __| / _` || | | | |\n'\
-#'| | __/| (_) || | | || |_| |\__ \| (_| || |_| | |\n'\
-#'| |_| \___/ |_| |_| \__, ||___/ \__,_| \__, | |\n'\
-#'| |___/ |___/ |\n'\
-#'\\--------------------------------------------------/'
-# @echo 'dummy' | ./ponysay -f ./`if [[ "$$TERM" = "linux" ]]; then echo ttyponies; else echo ponies; fi`/pinkiecannon.pony | tail --lines=30 ; echo -e '\n'
-#
-#uninstall:
-# if [ -d "$(INSTALLDIR)/share/ponysay" ]; then rm -fr "$(INSTALLDIR)/share/ponysay" ; fi
-# if [ -d "$(INSTALLDIR)/lib/ponysay" ]; then rm -fr "$(INSTALLDIR)/lib/ponysay" ; fi
-# if [ -f "$(INSTALLDIR)/bin/ponysay" ]; then unlink "$(INSTALLDIR)/bin/ponysay" ; fi
-# if [ -f "$(INSTALLDIR)/bin/ponythink" ]; then unlink "$(INSTALLDIR)/bin/ponythink" ; fi
-# if [ -f "$(INSTALLDIR)/share/licenses/ponysay/COPYING" ]; then unlink "$(INSTALLDIR)/share/licenses/ponysay/COPYING" ; fi
-# if [ -f "$(INSTALLDIR)/share/bash-completion/completions/ponysay" ]; then unlink "$(INSTALLDIR)/share/bash-completion/completions/ponysay" ; fi
-# if [ -f "$(INSTALLDIR)/share/bash-completion/completions/ponythink" ]; then unlink "$(INSTALLDIR)/share/bash-completion/completions/ponythink"; fi
-# if [ -f "$(INSTALLDIR)/share/fish/completions/ponysay.fish" ]; then unlink "$(INSTALLDIR)/share/fish/completions/ponysay.fish" ; fi
-# if [ -f "$(INSTALLDIR)/share/fish/completions/ponythink.fish" ]; then unlink "$(INSTALLDIR)/share/fish/completions/ponythink.fish" ; fi
-# if [ -f "$(INSTALLDIR)/share/zsh/site-functions/_ponysay"; ]; then unlink "$(INSTALLDIR)/share/zsh/site-functions/_ponysay" ; fi
-# if [ -f "$(INSTALLDIR)/share/zsh/site-functions/_ponythink"; ]; then unlink "$(INSTALLDIR)/share/zsh/site-functions/_ponythink" ; fi
-# if [ -f "$(INSTALLDIR)/share/man/man6/ponysay.6.gz" ]; then unlink "$(INSTALLDIR)/share/man/man6/ponysay.6.gz" ; fi
-# if [ -f "$(INSTALLDIR)/share/man/man6/ponythink.6.gz" ]; then unlink "$(INSTALLDIR)/share/man/man6/ponythink.6.gz" ; fi
-# if [ -f "$(INSTALLDIR)/share/man/es/man6/ponysay.6.gz" ]; then unlink "$(INSTALLDIR)/share/man/es/man6/ponysay.6.gz" ; fi
-# if [ -f "$(INSTALLDIR)/share/man/es/man6/ponythink.6.gz" ]; then unlink "$(INSTALLDIR)/share/man/es/man6/ponythink.6.gz" ; fi
-# if [ -f "$(INSTALLDIR)/share/info/ponysay.info.gz" ]; then unlink "$(INSTALLDIR)/share/info/ponysay.info.gz" ; fi
-# if [ -f "$(INSTALLDIR)/share/info/ponythink.info.gz" ]; then unlink "$(INSTALLDIR)/share/info/ponythink.info.gz" ; fi
-# if [ -f "$(INSTALLDIR)/doc/ponysay.pdf" ]; then unlink "$(INSTALLDIR)/doc/ponysay.pdf" ; fi
-#
-#clean:
-# if [ -f "truncater" ]; then rm -f "truncater" ; fi
-# if [ -f "completion/bash-completion-think.sh" ]; then rm -f "completion/bash-completion-think.sh" ; fi
-# if [ -f "completion/fish-completion-think.fish" ]; then rm -f "completion/fish-completion-think.fish" ; fi
-# if [ -f "completion/zsh-completion-think.zsh" ]; then rm -f "completion/zsh-completion-think.zsh" ; fi
-# if [ -f "completion/bash-completion.sh.install" ]; then rm -f "completion/bash-completion.sh.install" ; fi
-# if [ -f "completion/fish-completion.fish.install" ]; then rm -f "completion/fish-completion.fish.install"; fi
-# if [ -f "completion/zsh-completion.zsh.install" ]; then rm -f "completion/zsh-completion.zsh.install" ; fi
-# if [ -f "manuals/manpage.6.gz" ]; then rm -f "manuals/manpage.6.gz" ; fi
-# if [ -f "manuals/manpage.es.6.gz" ]; then rm -f "manuals/manpage.es.6.gz" ; fi
-# if [ -f "ponysay.info.gz" ]; then rm -f "ponysay.info.gz" ; fi
-# if [ -f "ponysay.py.install" ]; then rm -f "ponysay.py.install" ; fi
-#
-#uninstall-old:
-# if [ -d "$(INSTALLDIR)/share/ponies" ]; then rm -fr "$(INSTALLDIR)/share/ponies" ; fi
-# if [ -d "$(INSTALLDIR)/share/ttyponies" ]; then rm -fr "$(INSTALLDIR)/share/ttyponies" ; fi
-# if [ -f "$(INSTALLDIR)/bin/ponysaytruncater" ]; then unlink "$(INSTALLDIR)/bin/ponysaytruncater" ; fi
-# if [ -d "$(INSTALLDIR)/lib/ponysay/link.pl" ]; then unlink "$(INSTALLDIR)/lib/ponysay/link.pl" ; fi
-# if [ -d "$(INSTALLDIR)/lib/ponysay/linklist.pl" ]; then unlink "$(INSTALLDIR)/lib/ponysay/linklist.pl" ; fi
-# if [ -d "$(INSTALLDIR)/lib/ponysay/pq4ps" ]; then unlink "$(INSTALLDIR)/lib/ponysay/pq4ps" ; fi
-# if [ -d "$(INSTALLDIR)/lib/ponysay/pq4ps.pl" ]; then unlink "$(INSTALLDIR)/lib/ponysay/pq4ps.pl" ; fi
-# if [ -d "$(INSTALLDIR)/lib/ponysay/pq4ps-list" ]; then unlink "$(INSTALLDIR)/lib/ponysay/pq4ps-list" ; fi
-# if [ -d "$(INSTALLDIR)/lib/ponysay/pq4ps-list.pl" ]; then unlink "$(INSTALLDIR)/lib/ponysay/pq4ps-list.pl" ; fi
-#
-#clean-old:
-# if [ -f "ponysaytruncater" ]; then rm -f "ponysaytruncater"; fi
-#