Fix sysroot_paths() to implement the correct interface when GENTOO_SYSROOT is set.

--- a/setup.py.orig	2023-01-25 22:23:18.000000000 -0800
+++ b/setup.py	2023-01-25 22:26:26.855660960 -0800
@@ -129,7 +129,14 @@
     """
 
     if GENTOO_SYSROOT:
-        return [GENTOO_SYSROOT]
+        dirs = []
+        for subdir in subdirs:
+            if os.path.isabs(subdir):
+                subdir = subdir[1:]
+            path = os.path.join(GENTOO_SYSROOT, subdir)
+            if os.path.isdir(path):
+                dirs.append(path)
+        return dirs
 
     dirs = []
     for var_name in make_vars:
