As it turns out, there were a couple of contributing factors as to why this wasn't working.
The initial issue is with the ubuntu 20.04.1 apt packaging for gr-iqbal. It installs the cmake search help file (gnuradio-iqbalanceConfig.cmake) in a somewhat non-standard directory, versus the more typical gnuradio cmake modules directory (/usr/lib/x86_64-linux-gnu/cmake/gnuradio/). The gr-osmosdr package searches whatever the default directories are for cmake, as well as /usr/lib/x86_64-linux-gnu/cmake/gnuradio/, like so:
message(STATUS "Searching for IQ Balance...")
find_package(gnuradio-iqbalance PATHS ${Gnuradio_DIR})
message (STATUS " Found IQ Balance: ${gnuradio-iqbalance_FOUND}")
The full search path turns out to be:
-- Searching for IQ Balance...
Checking prefix [/home/userid/]
Checking file [/home/userid/gnuradio-iqbalanceConfig.cmake]
Checking file [/home/userid/gnuradio-iqbalance-config.cmake]
Checking prefix [/usr/local/]
Checking file [/usr/local/gnuradio-iqbalanceConfig.cmake]
Checking file [/usr/local/gnuradio-iqbalance-config.cmake]
Checking prefix [/usr/]
Checking file [/usr/gnuradio-iqbalanceConfig.cmake]
Checking file [/usr/gnuradio-iqbalance-config.cmake]
Checking prefix [/]
Checking file [/gnuradio-iqbalanceConfig.cmake]
Checking file [/gnuradio-iqbalance-config.cmake]
Checking prefix [/usr/games/]
Checking file [/usr/games/gnuradio-iqbalanceConfig.cmake]
Checking file [/usr/games/gnuradio-iqbalance-config.cmake]
Checking prefix [/usr/local/games/]
Checking file [/usr/local/games/gnuradio-iqbalanceConfig.cmake]
Checking file [/usr/local/games/gnuradio-iqbalance-config.cmake]
Checking prefix [/snap/]
Checking file [/snap/gnuradio-iqbalanceConfig.cmake]
Checking file [/snap/gnuradio-iqbalance-config.cmake]
Checking prefix [/usr/X11R6/]
Checking prefix [/usr/pkg/]
Checking prefix [/opt/]
Checking file [/opt/gnuradio-iqbalanceConfig.cmake]
Checking file [/opt/gnuradio-iqbalance-config.cmake]
Checking prefix [/usr/lib/x86_64-linux-gnu/cmake/gnuradio/]
Checking file [/usr/lib/x86_64-linux-gnu/cmake/gnuradio/gnuradio-iqbalanceConfig.cmake]
Checking file [/usr/lib/x86_64-linux-gnu/cmake/gnuradio/gnuradio-iqbalance-config.cmake]
-- Could NOT find gnuradio-iqbalance (missing: gnuradio-iqbalance_DIR)
-- Found IQ Balance: 0
So I made a quick adjustment to the find_package PATHS parameter to insure that it found gr-iqbal, and while it did indeed find gnuradio-iqbalanceConfig.cmake, it still failed with a missing library error. Sure enough, while there was indeed a broken symlink for ibgnuradio-iqbalance.so.3.8.0, the actual lib itself was nowhere to be found (at least I couldn't find it). The package is broken.
As mentioned, I grabbed the latest gr-iqbal snapshot from github, and built it with -DCMAKE_INSTALL_PREFIX=/usr to force it to /usr. The gr-osmosdr build still didn't find iqbalance. The reason for that is because the current gr-iqbal snapshot also doesn't install the cmake search helper to the 'standard' cmake modules directory for gnuradio. Instead, it puts it in ${CMAKE_INSTALL_PREFIX}/lib/cmake/gnuradio/.
I ended up changing the root CMakeLists.txt file for gr-iqbal from this:
if(NOT CMAKE_MODULES_DIR)
set(CMAKE_MODULES_DIR lib${LIB_SUFFIX}/cmake)
endif(NOT CMAKE_MODULES_DIR)
to this:
if(NOT CMAKE_MODULES_DIR)
set(CMAKE_MODULES_DIR lib${LIB_SUFFIX}/x86_64-linux-gnu/cmake)
endif(NOT CMAKE_MODULES_DIR)
... and built it with a prefix of /usr instead of the default /usr/local. That finally worked and the un-modified gr-osmosdr found it just fine.