Kotlin/Native 바이너리의 라이선스 파일
Kotlin/Native 바이너리의 라이선스 파일
Kotlin은 다른 많은 오픈소스 프로젝트와 마찬가지로 서드파티 코드에 의존해요. 다시 말해 Kotlin 프로젝트에는 JetBrains나 Kotlin 프로그래밍 언어 기여자들이 개발하지 않은 코드도 일부 포함되어 있어요. 때로는 C++로 작성된 코드를 Kotlin으로 다시 작성한 파생 작업(derived work)일 수도 있죠.
Kotlin에서 사용하는 서드파티 작업의 라이선스는 GitHub 저장소에서 확인할 수 있어요.
본문
- Kotlin 컴파일러
- Kotlin/Native
특히 Kotlin/Native 컴파일러는 서드파티 코드, 데이터 또는 파생 작업을 포함할 수 있는 바이너리를 생성해요. 즉, Kotlin/Native로 컴파일된 바이너리는 해당 서드파티 라이선스의 이용 약관을 따르게 돼요.
실무에서는 Kotlin/Native로 컴파일한 최종 바이너리를 배포한다면 배포물에 필요한 라이선스 파일을 반드시 포함해야 해요. 그 파일들은 사용자가 판독 가능한 형태로 배포물의 이용자에게 제공되어야 하죠.
각 프로젝트에 대해 다음 라이선스 파일을 항상 포함하세요.
| 프로젝트 | 포함해야 할 파일 |
|---|---|
| Kotlin | - Apache License 2.0 - Apache Harmony 저작권 고지 |
| Apache Harmony | |
| GWT | |
| Guava | |
| libbacktrace | 저작권 고지가 포함된 3-clause BSD 라이선스 |
| mimalloc | MIT 라이선스 |
기본 할당자 대신 mimalloc 메모리 할당자를 사용하는 경우(-Xallocator=mimalloc 컴파일러 옵션을 설정한 경우)에만 mimalloc 항목을 포함하세요.
| 프로젝트 | 포함해야 할 파일 |
|---|---|
| Unicode 문자 데이터베이스 | Unicode 라이선스 |
| 다중 생산자/다중 소비자 유계 큐(Multi-producer/multi-consumer bounded queue) | 저작권 고지 |
mingwX64 타깃은 추가 라이선스 파일이 필요해요.
| 프로젝트 | 포함해야 할 파일 |
|---|---|
| MinGW-w64 헤더 및 런타임 라이브러리 | - MinGW-w64 런타임 라이선스 - Winpthreads 라이선스 |
이 라이브러리들 중 어느 것도 배포된 Kotlin/Native 바이너리를 오픈소스로 공개하도록 요구하지 않아요.
더 알아보기
- LLVM 백엔드 커스터마이징 팁
- Kotlin/Native FAQ