make a backup of the factor binary, library, and image before bootstrapping
parent
199bdfdbe6
commit
e121a0822d
|
@ -131,10 +131,10 @@ check_library_exists() {
|
|||
$ECHO "***Factor will compile NO_UI=1"
|
||||
NO_UI=1
|
||||
fi
|
||||
rm -f $GCC_TEST
|
||||
check_ret rm
|
||||
rm -f $GCC_OUT
|
||||
check_ret rm
|
||||
$DELETE -f $GCC_TEST
|
||||
check_ret $DELETE
|
||||
$DELETE -f $GCC_OUT
|
||||
check_ret $DELETE
|
||||
$ECHO "found."
|
||||
}
|
||||
|
||||
|
@ -209,7 +209,7 @@ c_find_word_size() {
|
|||
gcc -o $C_WORD $C_WORD.c
|
||||
WORD=$(./$C_WORD)
|
||||
check_ret $C_WORD
|
||||
rm -f $C_WORD*
|
||||
$DELETE -f $C_WORD*
|
||||
}
|
||||
|
||||
intel_macosx_word_size() {
|
||||
|
@ -236,17 +236,30 @@ find_word_size() {
|
|||
|
||||
set_factor_binary() {
|
||||
case $OS in
|
||||
# winnt) FACTOR_BINARY=factor-nt;;
|
||||
# macosx) FACTOR_BINARY=./Factor.app/Contents/MacOS/factor;;
|
||||
winnt) FACTOR_BINARY=factor.exe;;
|
||||
*) FACTOR_BINARY=factor;;
|
||||
esac
|
||||
}
|
||||
|
||||
set_factor_library() {
|
||||
case $OS in
|
||||
winnt) FACTOR_LIBRARY=factor.dll;;
|
||||
macosx) FACTOR_LIBRARY=libfactor.dylib;;
|
||||
*) FACTOR_LIBRARY=libfactor.a;;
|
||||
esac
|
||||
}
|
||||
|
||||
set_factor_image() {
|
||||
FACTOR_IMAGE=factor.image
|
||||
}
|
||||
|
||||
echo_build_info() {
|
||||
$ECHO OS=$OS
|
||||
$ECHO ARCH=$ARCH
|
||||
$ECHO WORD=$WORD
|
||||
$ECHO FACTOR_BINARY=$FACTOR_BINARY
|
||||
$ECHO FACTOR_LIBRARY=$FACTOR_LIBRARY
|
||||
$ECHO FACTOR_IMAGE=$FACTOR_IMAGE
|
||||
$ECHO MAKE_TARGET=$MAKE_TARGET
|
||||
$ECHO BOOT_IMAGE=$BOOT_IMAGE
|
||||
$ECHO MAKE_IMAGE_TARGET=$MAKE_IMAGE_TARGET
|
||||
|
@ -255,6 +268,8 @@ echo_build_info() {
|
|||
$ECHO DOWNLOADER=$DOWNLOADER
|
||||
$ECHO CC=$CC
|
||||
$ECHO MAKE=$MAKE
|
||||
$ECHO COPY=$COPY
|
||||
$ECHO DELETE=$DELETE
|
||||
}
|
||||
|
||||
check_os_arch_word() {
|
||||
|
@ -312,6 +327,8 @@ find_build_info() {
|
|||
find_architecture
|
||||
find_word_size
|
||||
set_factor_binary
|
||||
set_factor_library
|
||||
set_factor_image
|
||||
set_build_info
|
||||
set_downloader
|
||||
set_gcc
|
||||
|
@ -339,6 +356,28 @@ cd_factor() {
|
|||
check_ret cd
|
||||
}
|
||||
|
||||
set_copy() {
|
||||
case $OS in
|
||||
winnt) COPY=cp;;
|
||||
*) COPY=cp;;
|
||||
esac
|
||||
}
|
||||
|
||||
set_delete() {
|
||||
case $OS in
|
||||
winnt) DELETE=rm;;
|
||||
*) DELETE=rm;;
|
||||
esac
|
||||
}
|
||||
|
||||
backup_factor() {
|
||||
$ECHO "Backing up factor..."
|
||||
$COPY $FACTOR_BINARY $FACTOR_BINARY.bak
|
||||
$COPY $FACTOR_LIBRARY $FACTOR_LIBRARY.bak
|
||||
$COPY $FACTOR_IMAGE $FACTOR_IMAGE.bak
|
||||
$ECHO "Done with backup."
|
||||
}
|
||||
|
||||
check_makefile_exists() {
|
||||
if [[ ! -e "Makefile" ]] ; then
|
||||
echo ""
|
||||
|
@ -366,9 +405,9 @@ make_factor() {
|
|||
|
||||
update_boot_images() {
|
||||
echo "Deleting old images..."
|
||||
rm checksums.txt* > /dev/null 2>&1
|
||||
rm $BOOT_IMAGE.* > /dev/null 2>&1
|
||||
rm temp/staging.*.image > /dev/null 2>&1
|
||||
$DELETE checksums.txt* > /dev/null 2>&1
|
||||
$DELETE $BOOT_IMAGE.* > /dev/null 2>&1
|
||||
$DELETE temp/staging.*.image > /dev/null 2>&1
|
||||
if [[ -f $BOOT_IMAGE ]] ; then
|
||||
get_url http://factorcode.org/images/latest/checksums.txt
|
||||
factorcode_md5=`cat checksums.txt|grep $BOOT_IMAGE|cut -f2 -d' '`;
|
||||
|
@ -382,7 +421,7 @@ update_boot_images() {
|
|||
if [[ "$factorcode_md5" == "$disk_md5" ]] ; then
|
||||
echo "Your disk boot image matches the one on factorcode.org."
|
||||
else
|
||||
rm $BOOT_IMAGE > /dev/null 2>&1
|
||||
$DELETE $BOOT_IMAGE > /dev/null 2>&1
|
||||
get_boot_image;
|
||||
fi
|
||||
else
|
||||
|
@ -459,6 +498,7 @@ install() {
|
|||
update() {
|
||||
get_config_info
|
||||
git_pull_factorcode
|
||||
backup_factor
|
||||
make_clean
|
||||
make_factor
|
||||
}
|
||||
|
@ -469,12 +509,12 @@ update_bootstrap() {
|
|||
}
|
||||
|
||||
refresh_image() {
|
||||
./$FACTOR_BINARY -script -e="USE: vocabs.loader refresh-all USE: memory save 0 USE: system exit"
|
||||
./$FACTOR_BINARY -script -e="USE: vocabs.loader USE: system refresh-all USE: memory save 0 exit"
|
||||
check_ret factor
|
||||
}
|
||||
|
||||
make_boot_image() {
|
||||
./$FACTOR_BINARY -script -e="\"$MAKE_IMAGE_TARGET\" USE: bootstrap.image make-image save 0 USE: system exit"
|
||||
./$FACTOR_BINARY -script -e="\"$MAKE_IMAGE_TARGET\" USE: system USE: bootstrap.image make-image save 0 exit"
|
||||
check_ret factor
|
||||
|
||||
}
|
||||
|
@ -513,6 +553,9 @@ if [[ -n "$2" ]] ; then
|
|||
parse_build_info $2
|
||||
fi
|
||||
|
||||
set_copy
|
||||
set_delete
|
||||
|
||||
case "$1" in
|
||||
install) install ;;
|
||||
install-x11) install_build_system_apt; install ;;
|
||||
|
|
Loading…
Reference in New Issue