Commit Graph

44 Commits

Author SHA1 Message Date
Dmitriy Dolovov 60c88b010d [Native] Add missing dependencies to platform lib DEF files
There are a lot of cases when a DEF file for a K/N platform library
has incomplete set of dependencies in 'depends=' property in
the manifest file. This leads to use of "KLIB resolver" - the
component inside the compiler that is responsible for finding the
missing libraries and implicitly (i.e. invisibly for the end user)
adding them to the set of dependencies of the compiler invocation.

The goal of this commit is to fix 'depends=' in manifest files so that
they should reflect the REAL set of dependencies, and as a result don't
trigger use of "KLIB resolver". This way we could be more prepared to
removed in the "KLIB resolver" in the future.

^KT-61098
2023-11-15 19:38:25 +00:00
Timofey Solonin 8dc9307f9e Add iconv void * overloads for backwards compatibility
Since Xcode 15 the iconv APIs operate on an opaque type __tag_iconv_t* instead of
void*. This causes a runtime exception in older Ktor versions which
depended on iconv.

^KT-62286
2023-10-04 08:04:37 +02:00
Timofey Solonin 7973d898d2 Remove __clear_cache builtin and SparseGetInertia from the targets where
these functions are unlinkable

^KT-61369
2023-10-02 10:13:57 +00:00
Timofey Solonin 35de28d1aa Make NSBezierPathElement an enum
and move NSImage and NSProgessIndicator APIs from categories back to the types

^KT-61369
2023-10-02 10:13:57 +00:00
Timofey Solonin e7dbb9c9a8 Return APIs hidden by __CCT_ENABLE_USER_SPACE
^KT-61369
2023-10-02 10:13:56 +00:00
Timofey Solonin 33a4958c4c Move CloudKit changes from a category to the type
^KT-61369
2023-10-02 10:13:56 +00:00
Timofey Solonin 94f86d6ef9 Update def files for Xcode 15
^KT-61369
2023-10-02 10:13:56 +00:00
Svyatoslav Scherbina a30b1c6cc1 Native: remove a few headers from linux_arm32_hfp linux platform lib
Those are not available in the new GCC toolchain.

^KT-58864
2023-07-21 16:13:26 +00:00
Svyatoslav Scherbina 682c105230 Native: remove unused headers.x86-64 from linux.def
`headers.x86-64` property in a cinterop .def file is not actually used
by cinterop. `headers.x64` should be used instead.

This commit removes it completely instead of renaming -- no functional
changes are done.
2023-07-21 16:13:25 +00:00
Vladimir Sukharev c3734aa9ce [K2/N] Build platform libs with XCode 14.3
Merge-request: KT-MR-9458
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
2023-04-04 11:41:08 +00:00
Vladimir Sukharev 45de88abae [K/N][KT-39120] Build platform libraries with -fmodules
Merge-request: KT-MR-8175
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
2023-01-13 07:33:42 +00:00
Sergey Bogolepov c465d8248c [K/N] Update macOS SDK to Xcode 14.1 2022-11-17 17:37:13 +00:00
Sergey Bogolepov 719bc025f1 [K/N] Fix platform libs for macOS 14.1 SDK.
Apply the same CFCGTypes.def hack as we did for other platforms.
2022-11-17 17:37:12 +00:00
Sergey Bogolepov 357983389c [K/N] KT-54164
Extract CFBase.h and CFAvailability.h to CoreFoundationBase on macOS
for the sake of unification with *OS. Also, it fixes commonizer.
2022-09-26 14:35:30 +00:00
Sergey Bogolepov 0b4a4ca42b [K/N] AArch64 watchOS target 2022-09-18 08:58:21 +00:00
Sergey Bogolepov ad9de1f8c4 [K/N]Split CoreFoundationBase and CFCGTypes from CoreFoundation
Ugly hack to keep Kotlin ABI of CGPoint and its friends.
In *OS (except macOS) SDKs Apple moved CGPoint and some other
fundamental types from CoreGraphics to CoreFoundation in a way
which breaks ABI for K/N platform libraries. To mitigate this
problem we split CoreFoundation platform library into several
smaller ones.
2022-09-17 07:51:36 +03:00
Sergey Bogolepov ff526e6c28 [K/N] Move ptrauth.h from CoreFoundation to a more proper namespace 2022-09-17 07:51:36 +03:00
Sergey Bogolepov 9ec8576c5e [K/N] update iOS platform libs for Xcode 14 2022-09-17 07:51:35 +03:00
Sergey Bogolepov df48b24631 [K/N] Update watchOS platform libs for Xcode 14 2022-09-17 07:51:35 +03:00
Sergey Bogolepov 176f9335eb [K/N] Update tvOS platform libs for Xcode 14 2022-09-17 07:51:35 +03:00
Sergey Bogolepov 7f78f806d4 [K/N] update macOS platform libs for Xcode 14 2022-09-17 07:51:35 +03:00
Sergey Bogolepov 5152966aa0 [K/N] KT-39747
Add a WinHTTP platform library.
2022-08-19 08:27:26 +00:00
Sergey Bogolepov 1dd76fa637 [K/N] Re-enable Hypervisor framework
^KT-50045
2021-12-24 12:44:36 +00:00
Sergey Bogolepov 2f6b367e25 [K/N] Enable Kernel framework
Export only minimal set of headers that is required for Hypervisor.
2021-12-24 12:44:36 +00:00
Sergey Bogolepov 26994817d1 [K/N] Update watchOS platform libraries for Xcode 13.1 2021-12-03 12:46:35 +00:00
Sergey Bogolepov 4bd4ef6fee [K/N] Update tvOS platform libraries for Xcode 13.1 2021-12-03 12:46:34 +00:00
Sergey Bogolepov c6574d9d80 [K/N] Update iOS platform libraries for Xcode 13.1 2021-12-03 12:46:34 +00:00
Sergey Bogolepov 5cd3043628 [K/N] Update macOS platform libraries for Xcode 13.1 2021-12-03 12:46:34 +00:00
Sergey Bogolepov da5c86cc1e [K/N] Add missing watchos_simulator_arm64 to watchOS set_depends.sh 2021-11-30 13:02:01 +00:00
Sergey Bogolepov dc29618857 [K/N] Fix KT-48523 2021-08-31 11:54:45 +00:00
Sergey Bogolepov 1ae8e01b32 [Native][MIPS] Add stddef.h to platform.posix on linux
For some reason, ptrdiff_t is missing in platform.posix on MIPS,
yet referenced from platform.linux.__morecore. Fixed by adding parent
header.
This fix is ABI for MIPS targets breaking because some declarations move
from platform.linux to platform.posix package.

^KT-46957 Fixed
2021-06-08 09:02:49 +00:00
Vasily Levchenko 83fc59b0ff [klib][platform][osx] 10.11 2021-02-24 11:07:15 +01:00
Sergey Bogolepov f6f050ff68 Fix KT-44295
builtins "header" is included in both builtin and posix platform libraries, but only posix has declarations for builtin structs (e.g. __va_list_tag). Library resolver by default has no guarantee on order of resolved libraries which causes KT-44295.
To make results of `KotlinLibraryResolver` stable we pass TopologicalLibraryOrder to `getFullList` and specify a dependency of builtin on posix
2021-02-15 10:16:10 +01:00
Sergey Bogolepov 3796a6a94c Platform libs for macos_arm64
(cherry picked from commit abaa99d6cc993ec30b4b8342078b69cf9e4ee6ef)
2021-02-09 09:00:48 +01:00
Svyatoslav Scherbina 639029f47e Fix macOS Hypervisor platform lib for Xcode 12.2 2020-12-14 15:25:37 +01:00
Svyatoslav Scherbina 26e861867d Revert "Disable Hypervisor platform lib to workaround the problem with Xcode 12.2"
This reverts commit 44d64b5aa73a665d2eb9d5c77808cef173149d19.
2020-12-14 15:25:37 +01:00
Sergey Bogolepov 1c9d759abd [Xcode 12.2] Updated macos frameworks 2020-12-14 15:25:36 +01:00
Sergey Bogolepov 660f0d83cb [Xcode 12.2] Updated watchos frameworks 2020-12-14 15:25:36 +01:00
Sergey Bogolepov b012966d33 [Xcode 12.2] Updated tvos frameworks 2020-12-14 15:25:36 +01:00
Svyatoslav Scherbina f9810d86dd Disable Hypervisor platform lib to workaround the problem with Xcode 12.2
To be enabled after updating to Xcode 12.2
2020-11-28 21:11:22 +01:00
Svyatoslav Scherbina 62ce813a05 Workaround bug in IOBluetoothUI headers from macOS 11.0 SDK (Xcode 12.2)
Co-authored-by: Sergey Bogolepov <1580082+sbogolepov@users.noreply.github.com>
2020-11-28 21:07:21 +01:00
Sergey Bogolepov 20931eebe1 [KT-43276] Add watchos_x64 target 2020-11-28 21:07:20 +01:00
Ilya Matveev 77740209a5 [Platform libs] Add dwmapi to linker opts for windows.def
GitHub issue: #3135
2020-11-28 20:58:16 +01:00
Stanislav Erokhin f624800b84 Move everything under kotlin-native folder
I was forced to manually do update the following files, because otherwise
they would be ignored according .gitignore settings. Probably they
should be deleted from repo.

Interop/.idea/compiler.xml
Interop/.idea/gradle.xml
Interop/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_runtime_1_0_3.xml
Interop/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_0_3.xml
Interop/.idea/modules.xml
Interop/.idea/modules/Indexer/Indexer.iml
Interop/.idea/modules/Runtime/Runtime.iml
Interop/.idea/modules/StubGenerator/StubGenerator.iml
backend.native/backend.native.iml
backend.native/bc.frontend/bc.frontend.iml
backend.native/cli.bc/cli.bc.iml
backend.native/cli.bc/src/org/jetbrains/kotlin/cli/bc/K2Native.kt
backend.native/cli.bc/src/org/jetbrains/kotlin/cli/bc/K2NativeCompilerArguments.kt
backend.native/tests/link/lib/foo.kt
backend.native/tests/link/lib/foo2.kt
backend.native/tests/teamcity-test.property
2020-10-27 21:00:28 +03:00