Using [@filbranden's comment](https://unix.stackexchange.com/questions/500056/why-does-my-makefile-not-compile-and-how-can-i-fix-it#comment921464_500056), I was able to compile the kernel for my router (there are more error's that need to be solved, but that isn't the scope of this question).

I left a log and my config of what I was doing to compile the kernel on [Github gist (new logs and config)](https://gist.github.com/bgbrandongomez/9b779e0cb3c986ecded0ad8129e75cb6). The config is broken and won't be apparent until the stage of actually compiling linux, but those solutions are simple.

I ran the below commands to compile the kernel:

> make menuconfig O=~/build-new/
>
> RANLIB="/home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-ranlib"
> READELF="/home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-readelf"
> OBJDUMP="/home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-objdump"
> AR="/home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-ar"
> AS="/home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-as"
> LD="/home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-gcc"
> NM="/home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-nm"
> CC="/home/debian/bin-new/ccache-3.1.8/ccache
> /home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-gcc"
> GCC="/home/debian/bin-new/ccache-3.1.8/ccache
> /home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/gcc"
> CXX="/home/debian/bin-new/ccache-3.1.8/ccache
> /home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/g++"
> CPP="/home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-cpp"
> CPPFLAGS="-I/home/debian/build-new/host/usr/include" CFLAGS="-O2
> -I/home/debian/build-new/host/usr/include" CXXFLAGS="-O2 -I/home/debian/build-new/host/usr/include" LDFLAGS="-L/home/debian/build-new/host/lib
> -L/home/debian/build-new/host/usr/lib" make autoconf O=~/build-new/
> 
> RANLIB="/home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-ranlib"
> READELF="/home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-readelf"
> OBJDUMP="/home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-objdump"
> AR="/home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-ar"
> AS="/home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-as"
> LD="/home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-gcc"
> NM="/home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-nm"
> CC="/home/debian/bin-new/ccache-3.1.8/ccache
> /home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-gcc"
> GCC="/home/debian/bin-new/ccache-3.1.8/ccache
> /home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/gcc"
> CXX="/home/debian/bin-new/ccache-3.1.8/ccache
> /home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/g++"
> CPP="/home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-cpp"
> CPPFLAGS="-I/home/debian/build-new/host/usr/include" CFLAGS="-O2
> -I/home/debian/build-new/host/usr/include" CXXFLAGS="-O2 -I/home/debian/build-new/host/usr/include" LDFLAGS="-L/home/debian/build-new/host/lib
> -L/home/debian/build-new/host/usr/lib -Wl,-rpath,/home/debian/build-new/host/usr/lib" make O=~/build-new/

Given the below error, I had to still symlink some binaries before running the make command:

 Checking for C compiler ... none found
 ERROR: no C compiler found
 Checking for linker ... '/home/debian/build-new/host/usr/bin/mips-buildroot-linux-uclibc-gcc' not found (user)
 ERROR: no linker found
 Checking for ar ... /home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-ar ()
 Checking for ranlib ... /home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-ranlib ()
 Checking for readelf ... none found
 ERROR: no readelf found
 Checking for objdump ... /home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-objdump ()

The binaries I symlinked are below. I put a pound sign in front of the ones I don't think matter if symlinked (because the path was never able to be set from prefixing to the make command).

 mkdir -p /home/debian/build-new/host/usr/bin/
 cp -r /home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/* /home/debian/build-new/host/usr/bin/
 cd /home/debian/build-new/host/usr/bin/

 ln -s mips-linux-uclibc-gcc mips-buildroot-linux-uclibc-gcc
 #ln -s /home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-ranlib mips-buildroot-linux-uclibc-ranlib
 #ln -s /home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-readelf mips-buildroot-linux-uclibc-readelf
 #ln -s /home/debian/new-kernel/sagem/uclibc-crosstools-gcc-4.2.3-3/usr/bin/mips-linux-uclibc-objdump mips-buildroot-linux-uclibc-objdump

The config and commands here are still broken when it comes to building the kernel itself, but they function well enough to get past the stage of this error. I managed to successfully compile the kernel this morning (took more than 24 hours of pure compile time), but after booting it in QEMU and mounting my filesystem I copied from my router, I came to realize I chose the wrong byte order (I chose LSB instead of MSB by choosing big endian instead of little endian).

Otherwise, I have successfully compiled the kernel using @filbranden's help.