Further WIP on upgrade script.
This commit is contained in:
		
							parent
							
								
									2214851d6e
								
							
						
					
					
						commit
						baeb18a03e
					
				
							
								
								
									
										42
									
								
								update.sh
								
								
								
								
							
							
						
						
									
										42
									
								
								update.sh
								
								
								
								
							| 
						 | 
				
			
			@ -11,6 +11,8 @@ then
 | 
			
		|||
    exit 1
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
[ -z "${VERBOSE}" ] && VERBOSE="0"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
| 
						 | 
				
			
			@ -19,7 +21,7 @@ fi
 | 
			
		|||
#
 | 
			
		||||
X=$(pwd)
 | 
			
		||||
cd $1 || exit 1
 | 
			
		||||
if [ ! -e make.sh -o ! -L scripts ]
 | 
			
		||||
if [ ! -e make.sh -o ! -L scripts/module-create.sh ]
 | 
			
		||||
then
 | 
			
		||||
    echo "This doesn't look like an lw-build-system project to me."
 | 
			
		||||
    exit 1
 | 
			
		||||
| 
						 | 
				
			
			@ -28,7 +30,7 @@ fi
 | 
			
		|||
PROJECT_ROOT=$(pwd)
 | 
			
		||||
P=$(basename ${PROJECT_ROOT})
 | 
			
		||||
cd ${X}
 | 
			
		||||
cd $(basename $0) || exit 1
 | 
			
		||||
cd $(dirname $0) || exit 1
 | 
			
		||||
SCRIPT_ROOT=$(pwd)
 | 
			
		||||
 | 
			
		||||
source skel/scripts/functions.sh || exit 1
 | 
			
		||||
| 
						 | 
				
			
			@ -55,7 +57,11 @@ cleanup() {
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
do_cmd mkdir upgrade.tmp || cleanup
 | 
			
		||||
do_cmd ${SCRIPT_ROOT}/create.sh upgrade.tmp ${P} || cleanup
 | 
			
		||||
echo "DEBUG START"
 | 
			
		||||
ls
 | 
			
		||||
ls upgrade.tmp
 | 
			
		||||
echo "DEBUG END"
 | 
			
		||||
do_cmd_redir /dev/null ${SCRIPT_ROOT}/create.sh ${PROJECT_ROOT}/upgrade.tmp ${P} || cleanup
 | 
			
		||||
for module in src/*
 | 
			
		||||
do
 | 
			
		||||
    M=$(basename ${module})
 | 
			
		||||
| 
						 | 
				
			
			@ -77,13 +83,35 @@ do
 | 
			
		|||
    fi
 | 
			
		||||
done
 | 
			
		||||
 | 
			
		||||
do_cmd_redir upgrade.diff \
 | 
			
		||||
diff -ru --exclude='*.c' --exclude='*.cpp' --exclude='*.h' \
 | 
			
		||||
    ./ upgrade.tmp/${P} | grep -v '^Only in' || cleanup
 | 
			
		||||
    ./ upgrade.tmp/${P} \
 | 
			
		||||
    | grep -v '^Only in' \
 | 
			
		||||
    > upgrade.diff
 | 
			
		||||
if [ $? -eq 2 ]
 | 
			
		||||
then
 | 
			
		||||
    print_failure "diff failed."
 | 
			
		||||
    cleanup
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
case $? in
 | 
			
		||||
0)
 | 
			
		||||
    print_success "Already up to date."
 | 
			
		||||
    rm upgrade.diff
 | 
			
		||||
    ;;
 | 
			
		||||
 | 
			
		||||
1)
 | 
			
		||||
    print_success "Upgrade complete. See upgrade.diff for diff."
 | 
			
		||||
    ;;
 | 
			
		||||
 | 
			
		||||
2)
 | 
			
		||||
    print_failure "Diff failed."
 | 
			
		||||
    cleanup
 | 
			
		||||
    ;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
rm -rf upgrade.tmp
 | 
			
		||||
print_success "Upgrade complete. See upgrade.diff for diff."
 | 
			
		||||
if [ ! -z ${FAILED} ]
 | 
			
		||||
 | 
			
		||||
if [ ! -z "${FAILED}" ]
 | 
			
		||||
then
 | 
			
		||||
    print_failure "Upgrading of these modules failed: ${FAILED}"
 | 
			
		||||
fi
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue