mirror of
				https://github.com/saitohirga/WSJT-X.git
				synced 2025-10-31 13:10:19 -04:00 
			
		
		
		
	
		
			
	
	
		
			121 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
		
		
			
		
	
	
			121 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
|  | #!/bin/sh
 | ||
|  | # Copyright (C) 2005, 2006 Douglas Gregor. | ||
|  | # Copyright (C) 2006 The Trustees of Indiana University | ||
|  | # Copyright (C) 2010 Bryce Lelbach  | ||
|  | # | ||
|  | # Distributed under the Boost Software License, Version 1.0. | ||
|  | # (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) | ||
|  | 
 | ||
|  | # boostinspect:notab - Tabs are required for the Makefile. | ||
|  | 
 | ||
|  | B2="" | ||
|  | TOOLSET="" | ||
|  | B2_CONFIG="" | ||
|  | 
 | ||
|  | for option | ||
|  | do | ||
|  |     case $option in | ||
|  | 
 | ||
|  |     -help | --help | -h) | ||
|  |       want_help=yes ;; | ||
|  | 
 | ||
|  |     -with-toolset=* | --with-toolset=* ) | ||
|  |       TOOLSET=`expr "x$option" : "x-*with-toolset=\(.*\)"` | ||
|  |       ;; | ||
|  | 
 | ||
|  |     -*) | ||
|  |       { echo "error: unrecognized option: $option
 | ||
|  | Try \`$0 --help' for more information." >&2
 | ||
|  |       { (exit 1); exit 1; }; } | ||
|  |       ;;  | ||
|  | 
 | ||
|  |     esac | ||
|  | done | ||
|  | 
 | ||
|  | if test "x$want_help" = xyes; then | ||
|  |   cat <<EOF | ||
|  | \`./bootstrap.sh' creates minimal Boost.Build, which can install itself. | ||
|  | 
 | ||
|  | Usage: $0 [OPTION]...  | ||
|  | 
 | ||
|  | Defaults for the options are specified in brackets. | ||
|  | 
 | ||
|  | Configuration: | ||
|  |   -h, --help                display this help and exit | ||
|  |   --with-b2=B2              use existing Boost.Build executable (b2) | ||
|  |                             [automatically built] | ||
|  |   --with-toolset=TOOLSET    use specific Boost.Build toolset | ||
|  |                             [automatically detected] | ||
|  | EOF | ||
|  | fi | ||
|  | test -n "$want_help" && exit 0 | ||
|  | 
 | ||
|  | # TBD: Determine where the script is located | ||
|  | my_dir="." | ||
|  | 
 | ||
|  | # Determine the toolset, if not already decided | ||
|  | if test "x$TOOLSET" = x; then | ||
|  |   guessed_toolset=`$my_dir/src/engine/build.sh --guess-toolset` | ||
|  |   case $guessed_toolset in | ||
|  |     acc | darwin | gcc | como | mipspro | pathscale | pgi | qcc | vacpp | xlcpp | clang ) | ||
|  |     TOOLSET=$guessed_toolset | ||
|  |     ;; | ||
|  |      | ||
|  |     intel-* ) | ||
|  |     TOOLSET=intel | ||
|  |     ;; | ||
|  |      | ||
|  |     mingw ) | ||
|  |     TOOLSET=gcc | ||
|  |     ;; | ||
|  |      | ||
|  |     clang* ) | ||
|  |     TOOLSET=clang | ||
|  |     ;; | ||
|  | 
 | ||
|  |     sun* ) | ||
|  |     TOOLSET=sun | ||
|  |     ;; | ||
|  |      | ||
|  |     * ) | ||
|  |     # Not supported by Boost.Build | ||
|  |     ;; | ||
|  |   esac | ||
|  | fi | ||
|  | 
 | ||
|  | case $TOOLSET in  | ||
|  |   clang*) | ||
|  |   TOOLSET=clang | ||
|  |   ;; | ||
|  | esac | ||
|  | 
 | ||
|  | 
 | ||
|  | rm -f config.log | ||
|  | 
 | ||
|  | # Build b2 | ||
|  | if test "x$B2" = x; then | ||
|  |   echo -n "Bootstrapping the build engine with toolset $TOOLSET... " | ||
|  |   pwd=`pwd` | ||
|  |   (cd "$my_dir/src/engine" && ./build.sh "$TOOLSET") > bootstrap.log 2>&1 | ||
|  |   if [ $? -ne 0 ]; then | ||
|  |       echo | ||
|  |       echo "Failed to bootstrap the build engine"  | ||
|  |       echo "Consult 'bootstrap.log' for more details" | ||
|  |       exit 1 | ||
|  |   fi | ||
|  |   cd "$pwd" | ||
|  |   arch=`cd $my_dir/src/engine && ./bootstrap/jam0 -d0 -f build.jam --toolset=$TOOLSET --toolset-root= --show-locate-target && cd ..` | ||
|  |   B2="$my_dir/src/engine/$arch/b2" | ||
|  |   echo "engine/$arch/b2" | ||
|  |   cp "$B2" . | ||
|  |   cp "$my_dir/src/engine/$arch/bjam" . | ||
|  | fi | ||
|  | 
 | ||
|  | cat << EOF | ||
|  | 
 | ||
|  | Bootstrapping is done. To build and install, run: | ||
|  | 
 | ||
|  |     ./b2 install --prefix=<DIR> | ||
|  | 
 | ||
|  | EOF |