    for a necessary C-preprocessor define.
     - Affected files:
       + `sdk/trts/trts_veh.cpp`
+* [PR530](https://github.com/intel/linux-sgx/pull/530): Changes for kernel sgx
+   patch V29.
+    - Affected files:
+      + `psw/enclave_common/sgx_enclave_common.cpp`
 
 ### Non-upstreamed changes
 * `sdk/trts/init_enclave.cpp`: Moved a memset_s of the enclave heap since

diff -Nur /dev/null sgx_sdk.bzl
--- /dev/null
+++ sgx_sdk.bzl
@@ -0,0 +1,999 @@
+"""Build tools for supporting Intel's SDK."""
+
+load("@com_google_asylo_backend_provider//:enclave_info.bzl", "backend_tools")

* Change enclave_initialize in `psw/enclave_common/sgx_enclave_common.cpp` to
  use get_launch_token() instead of get_launch_token_function(), to avoid
  calling dlopen on a file at runtime.
* Change enclave_create in `psw/enclave_common/sgx_enclave_common.cpp` to use
  different flags when mmap-ing `enclave_base` in an out-of-kernel driver.
--
diff -Nur common/inc/internal/elfheader/elf_common.h common/inc/internal/elfheader/elf_common.h
--- common/inc/internal/elfheader/elf_common.h
