# Detect SYSROOT based on environment variables rather than assuming '/'.
# Use that SYSROOT to generate paths like ${SYSROOT}/usr/...
# This is necessary on boards like whirlwind, whose SYSROOT is /build/whirlwind/
diff --git a/setup.py b/setup.py
index 7f58e7c..8cc3c5a 100755
--- a/setup.py
+++ b/setup.py
@@ -80,6 +80,8 @@ CLASSIFIERS = [
     'License :: OSI Approved :: Apache Software License',
 ]
 
+SYSROOT = os.environ.get('SYSROOT', '/')
+
 # Environment variable to determine whether or not the Cython extension should
 # *use* Cython or use the generated C files. Note that this requires the C files
 # to have been generated by building first *with* Cython support. Even if this
@@ -192,15 +194,15 @@ if "win32" in sys.platform:
 if BUILD_WITH_SYSTEM_OPENSSL:
   CORE_C_FILES = filter(lambda x: 'third_party/boringssl' not in x, CORE_C_FILES)
   CORE_C_FILES = filter(lambda x: 'src/boringssl' not in x, CORE_C_FILES)
-  SSL_INCLUDE = (os.path.join('/usr', 'include', 'openssl'),)
+  SSL_INCLUDE = (os.path.join(SYSROOT, 'usr', 'include', 'openssl'),)
 
 if BUILD_WITH_SYSTEM_ZLIB:
   CORE_C_FILES = filter(lambda x: 'third_party/zlib' not in x, CORE_C_FILES)
-  ZLIB_INCLUDE = (os.path.join('/usr', 'include'),)
+  ZLIB_INCLUDE = (os.path.join(SYSROOT, 'usr', 'include'),)
 
 if BUILD_WITH_SYSTEM_CARES:
   CORE_C_FILES = filter(lambda x: 'third_party/cares' not in x, CORE_C_FILES)
-  CARES_INCLUDE = (os.path.join('/usr', 'include'),)
+  CARES_INCLUDE = (os.path.join(SYSROOT, 'usr', 'include'),)
 
 EXTENSION_INCLUDE_DIRECTORIES = (
     (PYTHON_STEM,) + CORE_INCLUDE + SSL_INCLUDE + ZLIB_INCLUDE +
