diff --git a/tools/sdk/lib/README.md b/tools/sdk/lib/README.md index 8d1fd141a..6b92d0430 100644 --- a/tools/sdk/lib/README.md +++ b/tools/sdk/lib/README.md @@ -1,25 +1,7 @@ ## Updating SDK libraries -After updating SDK libraries to a new version, do the following changes. - - -Remove mem_manager.o from libmain.a to use custom heap implementation, and time.o to fix redefinition of time-related functions: - -```bash -xtensa-lx106-elf-ar -d libmain.a mem_manager.o -xtensa-lx106-elf-ar -d libmain.a time.o -``` - -Rename `hostname` and `default_hostname` symbols: - -```bash -xtensa-lx106-elf-ar x libmain.a eagle_lwip_if.o user_interface.o -xtensa-lx106-elf-objcopy --redefine-sym hostname=wifi_station_hostname user_interface.o -xtensa-lx106-elf-objcopy --redefine-sym hostname=wifi_station_hostname eagle_lwip_if.o -xtensa-lx106-elf-objcopy --redefine-sym default_hostname=wifi_station_default_hostname user_interface.o -xtensa-lx106-elf-objcopy --redefine-sym default_hostname=wifi_station_default_hostname eagle_lwip_if.o -xtensa-lx106-elf-ar r libmain.a eagle_lwip_if.o user_interface.o -``` +- Copy .a files from SDK `lib` directory to this directory +- Run `fix_sdk_libs.sh` ## Updating libstdc++ diff --git a/tools/sdk/lib/fix_sdk_libs.sh b/tools/sdk/lib/fix_sdk_libs.sh new file mode 100755 index 000000000..d0c162d39 --- /dev/null +++ b/tools/sdk/lib/fix_sdk_libs.sh @@ -0,0 +1,16 @@ +#!/bin/bash +set -e + +# Remove mem_manager.o from libmain.a to use custom heap implementation, +# and time.o to fix redefinition of time-related functions: +xtensa-lx106-elf-ar d libmain.a mem_manager.o +xtensa-lx106-elf-ar d libmain.a time.o + +# Rename `hostname` and `default_hostname` symbols: +xtensa-lx106-elf-ar x libmain.a eagle_lwip_if.o user_interface.o +xtensa-lx106-elf-objcopy --redefine-sym hostname=wifi_station_hostname user_interface.o +xtensa-lx106-elf-objcopy --redefine-sym hostname=wifi_station_hostname eagle_lwip_if.o +xtensa-lx106-elf-objcopy --redefine-sym default_hostname=wifi_station_default_hostname user_interface.o +xtensa-lx106-elf-objcopy --redefine-sym default_hostname=wifi_station_default_hostname eagle_lwip_if.o +xtensa-lx106-elf-ar r libmain.a eagle_lwip_if.o user_interface.o +rm eagle_lwip_if.o user_interface.o