| #!/bin/sh |
| |
| # a simple configure-make wrapper for use in conjunction with the 'lazy' build script. |
| # 'lazy' is deviant, occasionally useful, and permissively licensed; get_lazy() below, |
| # then look for configure.template in the root directory. |
| |
| init_vars() |
| { |
| lz_config_dir=`readlink -f $(dirname $0)` |
| lz_pwd=`pwd` |
| |
| if [ x"$lz_config" = x ]; then |
| . $lz_config_dir/config.lzy || exit 2 |
| else |
| . "$lz_config" || exit 2 |
| fi |
| } |
| |
| |
| error_msg() |
| { |
| echo $@ >&2 |
| } |
| |
| |
| require_out_of_tree() |
| { |
| if [ x"$lz_config_dir" = x"$lz_pwd" ]; then |
| error_msg "$lz_package: out-of-tree builds are required." |
| error_msg "please invoke configure again from a clean build directory." |
| exit 2 |
| fi |
| |
| return 0 |
| } |
| |
| |
| get_lazy() |
| { |
| which lazy && lazy=`which lazy` && return 0 |
| |
| if ! [ -d slazy ]; then |
| git clone git://midipix.org/lazy slazy || exit 2 |
| fi |
| |
| lazy=$lz_pwd/slazy/lazy |
| } |
| |
| |
| lazy_approach() |
| { |
| if [ x"$lz_prefix" = x ]; then |
| error_msg "prefix is required." |
| exit 2 |
| fi |
| |
| if [ x"$lz_arch" = x ]; then lz_arch=$lz_default_arch; fi |
| if [ x"$lz_subarch" = x ]; then lz_subarch=$lz_default_subarch; fi |
| if [ x"$lz_target" = x ]; then lz_target=$lz_default_target; fi |
| if [ x"$lz_compiler" = x ]; then lz_compiler=$lz_default_compiler; fi |
| if [ x"$lz_compiler" = x ]; then lz_compiler=gcc; fi |
| |
| $lazy -x config $lz_debug \ |
| -t $lz_target \ |
| -a $lz_arch \ |
| -c $lz_compiler \ |
| -n $lz_package \ |
| -p $lz_config_dir \ |
| -f $lz_prefix \ |
| || exit 2 |
| |
| } |
| |
| |
| lazy_copy() |
| { |
| cp "$lz_config_dir/Makefile.in" "$lz_pwd/Makefile" |
| } |
| |
| |
| for arg ; do |
| case "$arg" in |
| --help) usage |
| ;; |
| |
| --prefix=*) |
| lz_prefix=${arg#*=} |
| ;; |
| --host=*) |
| lz_target=${arg#*=} |
| ;; |
| --target=*) |
| lz_target=${arg#*=} |
| ;; |
| --compiler=*) |
| lz_compiler=${arg#*=} |
| ;; |
| --config=*) |
| lz_config=${arg#*=} |
| ;; |
| --debug) |
| lz_debug='-d' |
| ;; |
| *) |
| error_msg ${arg#}: "unsupported config argument." |
| exit 2 |
| ;; |
| esac |
| done |
| |
| |
| init_vars |
| require_out_of_tree |
| get_lazy |
| lazy_approach |
| lazy_copy |