gen-public-suffix.py downloads public_suffix_list.dat at build time and
only falls back to a few hardcoded Linux paths when that fails. Package
builds usually run without network access, and on FreeBSD the list is
installed under /usr/local/share/public_suffix_list, so the build dies
with "unable to load public suffix list".
Add a public-suffix-list option that takes the path of a local copy.
When it is set the generator reads just that file and never goes
online, which also keeps the generated table reproducible.