Traditional UNIX compiler/build system model
• Compiler runs as separate process
• Primitive mechanisms for communicating dependencies
• Fixed input/output pipeline defined by command line
• This is an API ...
• ... and we haven’t changed it in decades
• We ❤ breaking APIs
Java 쪽은 코드사이의 의존성을 알려주는 API가 있어서 빌드도구 들에게 어떻게 하면 incremental build가 되는지 알려주도록 되어 있는 것 같은데,
ex: Gradle
https://llvm.org/devmtg/2016-11/… 의 12 page. 가 중요한 내용인거 같네요.
Traditional UNIX compiler/build system model
• Compiler runs as separate process
• Primitive mechanisms for communicating dependencies
• Fixed input/output pipeline defined by command line
• This is an API ...
• ... and we haven’t changed it in decades
• We ❤ breaking APIs
Java 쪽은 코드사이의 의존성을 알려주는 API가 있어서 빌드도구 들에게 어떻게 하면 incremental build가 되는지 알려주도록 되어 있는 것 같은데,
ex: Gradle
Native 빌드에도 해당 방법을 적용하는 방향으로 가야할 것 같습니다.