Regenerate Newlib's configuration files - puranikvinit/newlib GitHub Wiki

You need to regenerate Newlib's configuration files in order to test your changes only if you're adding a new C or assembly source code file to the RISC-V machine port. You have to use the exact version of autoconf (2.69) and automake (1.15.1) or else it won't work.

Set initial variable and create directory:

AUTO="${HOME}/auto"
mkdir -p "$AUTO"

Build autoconf:

cd "$AUTO"
wget https://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz
tar xf autoconf-2.69.tar.gz
cd autoconf-2.69
mkdir build
cd build
../configure --prefix="$AUTO"
make -j$(nproc)
make install

Build automake:

cd "$AUTO"
wget https://ftp.gnu.org/gnu/automake/automake-1.15.1.tar.gz
tar xf automake-1.15.1.tar.gz
cd automake-1.15.1
mkdir build
cd build
../configure --prefix="$AUTO"
make -j$(nproc)
make install

Now to regenerate Newlib's configuration files, change to the top-level newlib directory (so in the toolchain example, $RISCV/newlib-cygwin/newlib) and run PATH="${AUTO}/bin:$PATH" autoreconf. The Newlib FAQ mentions not submitting generated files, so if you do commit them, do so in a separate commit in your patch series so it can be discarded.