Don't #include C Adapter header into its cpp.

Just textually concatenate.
This commit is contained in:
Alexander Gorshenev
2017-12-06 16:36:32 +03:00
committed by alexander-gorshenev
parent 63aff3eded
commit c30d30c96c
2 changed files with 6 additions and 9 deletions
@@ -21,10 +21,6 @@ import org.jetbrains.kotlin.konan.target.*
import org.jetbrains.kotlin.konan.file.*
fun produceCAdapterBitcode(clang: TargetClang, headerFileName: String, cppFileName: String, bitcodeFileName: String) {
val headerDirName = File(headerFileName).absoluteFile.parent
val clangCommand = clang.clangCXX("-std=c++11", cppFileName, "-I", headerDirName, "-emit-llvm", "-c", "-o", bitcodeFileName)
val clangCommand = clang.clangCXX("-std=c++11", cppFileName, "-emit-llvm", "-c", "-o", bitcodeFileName)
runTool(clangCommand)
}
@@ -426,9 +426,8 @@ internal class CAdapterGenerator(val context: Context,
}
private fun makeGlobalStruct(top: ExportedElementScope) {
outputStreamWriter = context.config.tempFiles
.cAdapterHeader
.printWriter()
val headerFile = context.config.tempFiles.cAdapterHeader
outputStreamWriter = headerFile.printWriter()
output("#ifndef KONAN_${prefix.toUpperCase()}_H")
output("#define KONAN_${prefix.toUpperCase()}_H")
@@ -479,7 +478,9 @@ internal class CAdapterGenerator(val context: Context,
.cAdapterCpp
.printWriter()
output("#include \"${prefix}_api.h\"")
// Include header into C++ source.
headerFile.forEachLine { it -> output(it) }
output("""
|struct KObjHeader;
|typedef struct KObjHeader KObjHeader;