I see clearing the cache as Matt suggested didn't help.
You might not be able to get good advice here, as this really
might be a messy OS upgrade issue that no one here has encountered.
If you updated your OS and was sure to upgrade the compiler too,
try renaming away the entire old mac ports directory
(/opt/whatever), and install Mac Ports /from scratch/, so it sees
your new OS and installs all the packages based on the new os.
If that doesn't work, I'd suggest setting up a new disk or
machine with 10.15 + xcode + ports all installed from scratch
(don't upgrade a 10.14 disk to 10.15), and test that.
That's what I usually resort to when I've run into this kind of
problem before, and try to learn my lesson to never upgrade critical
build machines without testing first on a separate machine or boot
disk, leaving my reliable machine intact.
I'm not sure if you build commercial software, but one has to be
careful with build machines. And depending on how much income you
gain from selling software, it's well worth the $$$ to either
purchase completely new machines for testing new OS's (getting used
equipment from ebay can keep costs down), or
at least
grab an external disk with a fast connection (thunderbolt or usb3)
and install the new OS/compiler environment on that. Some folks here
use virtual machines to make this easier, to avoid having separate
boot partitions + drives. But it's my personal preference to always
use native installs rather than virtual, just to more closely
replicate customer installs. Many of my machines run the OS on
external drives; linux + osx allows this, though I don't think
windows does, so I install windows locally on internal drives.
Some general advice when it comes to build machines and
upgrades:
I always try to avoid upgrading mission critical build machines,
as problems like this can really screw up the works, esp. if
customers are waiting for builds. And I never upgrade into a new
major release, dragons be there. For a new major release, I install
it from scratch on either a separate boot drive, or separate machine
completely, and install everything from scratch so I don't screw up
my working build machine.
I'll often keep old build machines even if the new one works
fine, as sometimes people with older OS's can't run builds made on
newer machines, so I'll supply separate builds on the old reliable
machines. I often keep old build machines frozen in state for long
after I stopped using them, "just in case", then at some point
repurpose them, or wipe and sell them.