MtProtoKit
MtProtoKit copied to clipboard
obsolete methods - classes / methods incompatible with ios 13 min target
Background https://github.com/TelegramMessenger/Telegram-iOS/issues/829
MTAtomic MTContext MTMetaDisposable MTMessageTransaction MTSignalQueueState MTSubscriber MTRequestInternalId
![Screen Shot 2022-09-01 at 9 07 29 am](https://user-images.githubusercontent.com/109928647/187800366-6d1e5841-57da-4524-b82a-1943ec662601.png)
![Screen Shot 2022-09-01 at 9 10 21 am](https://user-images.githubusercontent.com/109928647/187800611-e3157775-29d8-495b-b37c-52c2a9cdcbc7.png)
also - switching this flag - "-std=gnu99", doesn't seem to make the Expected ';' at end of declaration list compiler error go away.
objc_library(
name = "MtProtoKit",
enable_modules = True,
module_name = "MtProtoKit",
srcs = glob([
"Sources/**/*.m",
"Sources/**/*.h",
]),
copts = [
"-Werror",
"-std=gnu99",
],
hdrs = glob([
"PublicHeaders/**/*.h",
]),
includes = [
"PublicHeaders",
],
deps = [
"//submodules/EncryptionProvider:EncryptionProvider",
],
sdk_frameworks = [
"Foundation",
"Security",
"SystemConfiguration",
"CFNetwork",
],
sdk_dylibs = [
"libz",
],
visibility = [
"//visibility:public",
],
)
UPDATE - actually just using
copts = [
"-std=gnu99",
],
made some errors go away. UPDATE - new errors #include <stdatomic.h>
![Screen Shot 2022-09-01 at 9 41 12 am](https://user-images.githubusercontent.com/109928647/187803603-8f1ebeb9-3b78-4469-b69f-74caadcc5ed4.png)
UPDATE - the expected ';' at end of declaration list error is persisting even though I'm specifying -std=gnu99 in the MTProto copts bazel https://gist.github.com/wweevv-johndpope/703cf760bcc68c9c8918269596d7fb7b
UPDATE - I just use os_unfair_lock _lock; and it gets past error.
@interface MTDisposableSet ()
{
os_unfair_lock _lock;
...
}
if (OSAtomicCompareAndSwapPtr(block, 0, &_block))
->
if (atomic_compare_exchange_strong_explicit(block, 0, &_block, memory_order_acq_rel, memory_order_acquire))
latest error
Errors spilling over from
UPDATE
@interface SSignalMulticastSubscribers : NSObject { volatile os_unfair_lock _lock; ... }
changing volatile os_unfair_lock _lock; -> os_unfair_lock _lock; makes above some of the problems go away.
UPDATE Finally compiling - but crashing due to problem below. how to rewrite
// if (atomic_compare_exchange_strong_explicit(block, 0, &_block))
https://github.com/wweevv-johndpope/Telegram-iOS/commit/305829a060bcb89f809c8662924b784f6a1a1839
![Screen Shot 2022-09-01 at 10 26 27 pm](https://user-images.githubusercontent.com/109928647/187913424-92f0a2ed-d241-4618-8f0d-10c75aa04cbf.png)
found some a path to upgrae mtdisposable sbdisposable - https://github.com/TelegramMessenger/Telegram-iOS/issues/829