12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- #!/bin/bash -e
- if [ $# -eq 0 ]; then
- EXENAME="$(basename $(pwd))"
- TGT="-"
- elif [ $# -eq 1 ]; then
- EXENAME="$1"
- TGT='-'
- elif [ $# -eq 2 ]; then
- EXENAME="$1"
- TGT="$2"
- else
- echo "USAGE: $0 [library name]" >&2
- exit 99
- fi
- NAME=$(git config user.name)
- EMAIL=$(git config user.email)
- USER="${NAME} <${EMAIL}>"
- YEAR=$(date '+%Y')
- if [ "${CATEGORY}x" = "x" ]; then
- CAT_LINE="-- category:"
- else
- CAT_LINE="category: ${CATEGORY}"
- fi
- function cabal_file {
- cat <<EOF
- name: ${EXENAME}
- version: 0.1.0.0
- -- synopsis:
- -- description:
- license: BSD3
- license-file: LICENSE
- author: ${USER}
- maintainer: ${USER}
- copyright: ©${YEAR} ${NAME}
- ${CAT_LINE}
- build-type: Simple
- cabal-version: >= 1.12
- executable ${EXENAME}
- hs-source-dirs: src
- main-is: Main.hs
- default-extensions: OverloadedStrings,
- ScopedTypeVariables
- ghc-options: -Wall
- build-depends: base >=4.7 && <4.9
- default-language: Haskell2010
- EOF
- }
- if [ "x${TGT}" = "x-" ]; then
- cabal_file
- else
- cabal_file >${TGT}
- fi
|