40 lines
		
	
	
		
			986 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			986 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/bash
 | 
						|
# check bear
 | 
						|
if bear_version="$(bear --version 2>&1)"
 | 
						|
then
 | 
						|
    bear_version="$(echo "$bear_version" | sed -ne '1{ s/^[^0-9]*\([1-9]\)/\1/p }')"
 | 
						|
    echo "bear version: $bear_version"
 | 
						|
else
 | 
						|
    echo "bear not found"
 | 
						|
    exit 1
 | 
						|
fi
 | 
						|
# check openfoam environment
 | 
						|
if [ -n "$WM_PROJECT_VERSION" ]
 | 
						|
then
 | 
						|
    echo "openfoam version: OpenFOAM-$WM_PROJECT_VERSION"
 | 
						|
else
 | 
						|
    echo "openfoam not found"
 | 
						|
    exit 1
 | 
						|
fi
 | 
						|
 | 
						|
# create wmake_with_bear and bwmake
 | 
						|
cd $WM_PROJECT_DIR/wmake
 | 
						|
[ -e wmake_with_bear ] && { echo "wmake_with_bear exists, exiting..."; exit 1; }
 | 
						|
cp -i wmake wmake_with_bear
 | 
						|
case "$bear_version" in
 | 
						|
(2.*)
 | 
						|
    # Version 2
 | 
						|
    sed -i 's/"make"/"bear make"/g' wmake_with_bear
 | 
						|
    ;;
 | 
						|
([3-9].* | [1-9][0-9].*)
 | 
						|
    # Version 3 or newer
 | 
						|
    sed -i 's/"make"/"bear -- make"/g' wmake_with_bear 
 | 
						|
    ;;
 | 
						|
(*)
 | 
						|
    # Unknown version
 | 
						|
    echo "Unknown version: $bear_version"
 | 
						|
    exit 1
 | 
						|
    ;;
 | 
						|
esac
 | 
						|
ln -s wmake_with_bear bwmake || { echo "link bwmake exists, exiting."; exit 1; }
 | 
						|
echo "done." |