mirror of
				https://github.com/saitohirga/WSJT-X.git
				synced 2025-11-04 05:50:31 -05: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
							 |