You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@teaclave.apache.org by Pi Delport <no...@github.com.INVALID> on 2021/08/11 11:35:15 UTC

[apache/incubator-teaclave-sgx-sdk] build(sgx_unwind): ignore "config.h.in~" to avoid unnecessary rebuilds (#352)

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&#39;re built, subsequent invocations don&#39;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&#39;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 &quot;config.h.in~&quot; 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

Re: [apache/incubator-teaclave-sgx-sdk] build(sgx_unwind): ignore "config.h.in~" to avoid unnecessary rebuilds (#352)

Posted by volcano <no...@github.com.INVALID>.
Thank you for fixing this issue!
Please help fix the build script in sgx_no_tstd. I will merge this PR after the repair.

-- 
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#issuecomment-897296215

Re: [apache/incubator-teaclave-sgx-sdk] build(sgx_unwind): ignore "config.h.in~" to avoid unnecessary rebuilds (#352)

Posted by volcano <no...@github.com.INVALID>.
> @volcano0dr: So does this just need the same change applied to `sgx_no_tstd/build.rs`, in addition to the current change?

@PiDelport Yes, the same changes need to be applied to sgx_no_tstd/build.rs.

-- 
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#issuecomment-897572239

Re: [apache/incubator-teaclave-sgx-sdk] build(sgx_unwind): ignore "config.h.in~" to avoid unnecessary rebuilds (#352)

Posted by Pi Delport <no...@github.com.INVALID>.
> Yes, the same changes need to be applied to sgx_no_tstd/build.rs.

@volcano0dr: Applied.

(Thank you for being patient with the delay!)

-- 
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#issuecomment-912796169

Re: [apache/incubator-teaclave-sgx-sdk] build(sgx_unwind): ignore "config.h.in~" to avoid unnecessary rebuilds (#352)

Posted by volcano <no...@github.com.INVALID>.
> @volcano0dr: So does this just need the same change applied to `sgx_no_tstd/build.rs`, in addition to the current change?
@PiDelport: Yes, the same changes need to be applied to `sgx_no_tstd/build.rs`.


-- 
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#issuecomment-897571871

Re: [apache/incubator-teaclave-sgx-sdk] build(sgx_unwind): ignore "config.h.in~" to avoid unnecessary rebuilds (#352)

Posted by Pi Delport <no...@github.com.INVALID>.
@volcano0dr: So does this just need the same change applied to `sgx_no_tstd/build.rs`, in addition to the current change?

-- 
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#issuecomment-897516606

Re: [apache/incubator-teaclave-sgx-sdk] build(sgx_unwind): ignore "config.h.in~" to avoid unnecessary rebuilds (#352)

Posted by volcano <no...@github.com.INVALID>.
Merged #352 into master.

-- 
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#event-5289191301