Without this fix, the timestamp of `config.h.in~` invalidates the cargo build 
whenever alternating between the `dev` and `release` profiles. This can be 
reproduced by repeatedly building `sgx_unwind` with the following invocation:

```
$ cargo build; cargo build --release
   Compiling sgx_unwind v0.1.1 (…/incubator-teaclave-sgx-sdk/sgx_unwind)
    Finished dev [unoptimized + debuginfo] target(s) in 22.34s
   Compiling sgx_unwind v0.1.1 (…/incubator-teaclave-sgx-sdk/sgx_unwind)
    Finished release [optimized] target(s) in 21.65s
```

With this fix, once they're built, subsequent invocations don't rebuild 
them:

```
$ cargo build; cargo build --release
    Finished dev [unoptimized + debuginfo] target(s) in 0.01s
    Finished release [optimized] target(s) in 0.01s
```

Note that this issue doesn't seem to occur when repeatedly building just a 
single profile (presumably because that avoids re-invoking the configure 
script?), but it significantly impacts the interactive development experience 
for SGX projects that build both `dev` and `release` targets as part of the 
same build: this makes the difference between rebuilds being nearly 
instantaneous, or always taking a minute or so for `sgx_unwind` to rebuild.
You can view, comment on, or merge this pull request online at:

  https://github.com/apache/incubator-teaclave-sgx-sdk/pull/352

-- Commit Summary --

  * build(sgx_unwind): add missing "config.h.in~" to 
native_lib_boilerplate filter

-- File Changes --

    M sgx_unwind/build.rs (1)

-- Patch Links --

https://github.com/apache/incubator-teaclave-sgx-sdk/pull/352.patch
https://github.com/apache/incubator-teaclave-sgx-sdk/pull/352.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/apache/incubator-teaclave-sgx-sdk/pull/352

Reply via email to