diff --git a/Classes/Base.lproj/ContactsListView.xib b/Classes/Base.lproj/ContactsListView.xib
index 253f65937..ce7f9c3c8 100644
--- a/Classes/Base.lproj/ContactsListView.xib
+++ b/Classes/Base.lproj/ContactsListView.xib
@@ -142,6 +142,7 @@
+
@@ -161,6 +162,7 @@
+
diff --git a/Classes/Base.lproj/HistoryListView.xib b/Classes/Base.lproj/HistoryListView.xib
index fc1299356..84392e4bf 100644
--- a/Classes/Base.lproj/HistoryListView.xib
+++ b/Classes/Base.lproj/HistoryListView.xib
@@ -114,6 +114,7 @@
+
diff --git a/Classes/ChatsListTableView.m b/Classes/ChatsListTableView.m
index aefaa1ce1..864197026 100644
--- a/Classes/ChatsListTableView.m
+++ b/Classes/ChatsListTableView.m
@@ -81,10 +81,13 @@ static int sorted_history_comparison(LinphoneChatRoom *to_insert, LinphoneChatRo
// store last message in user data
LinphoneChatRoom *chat_room = iter->data;
MSList *history = linphone_chat_room_get_history(iter->data, 1);
- LinphoneChatMessage *last_msg = history ? history->data : NULL;
+ LinphoneChatMessage *last_msg = NULL;
+ if (history) {
+ last_msg = linphone_chat_message_ref(history->data);
+ ms_list_free(history);
+ }
linphone_chat_room_set_user_data(chat_room, last_msg);
sorted = ms_list_insert_sorted(sorted, chat_room, (MSCompareFunc)sorted_history_comparison);
-
iter = iter->next;
}
return sorted;
diff --git a/Classes/LinphoneCoreSettingsStore.m b/Classes/LinphoneCoreSettingsStore.m
index b1d6d1d62..9dc26fa06 100644
--- a/Classes/LinphoneCoreSettingsStore.m
+++ b/Classes/LinphoneCoreSettingsStore.m
@@ -445,9 +445,6 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args);
proxy = linphone_address_as_string_uri_only(proxy_addr);
}
- // use proxy as route if outbound_proxy is enabled
- route = isOutboundProxy ? proxy : NULL;
-
// possible valid config detected, try to modify current proxy or create new one if none existing
linphone_core_get_default_proxy(lc, &proxyCfg);
if (proxyCfg == NULL) {
@@ -473,6 +470,8 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args);
error = NSLocalizedString(@"Invalid username or domain", nil);
goto bad_proxy;
}
+ // use proxy as route if outbound_proxy is enabled
+ route = isOutboundProxy ? proxy : NULL;
if (linphone_proxy_config_set_server_addr(proxyCfg, proxy) == -1) {
error = NSLocalizedString(@"Invalid proxy address", nil);
goto bad_proxy;
@@ -500,12 +499,23 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args);
linphone_proxy_config_set_expires(proxyCfg, expire);
// setup auth info
- LinphoneAddress *from = linphone_address_new(identity);
- if (from != 0) {
- const char *userid_str = (userID != nil) ? [userID UTF8String] : NULL;
- info = linphone_auth_info_new(linphone_address_get_username(from), userid_str, password, ha1, NULL,
- linphone_proxy_config_get_domain(proxyCfg));
- linphone_address_destroy(from);
+ if (linphone_core_get_auth_info_list(lc)) {
+ info = linphone_auth_info_clone(linphone_core_get_auth_info_list(lc)->data);
+ linphone_auth_info_set_username(info, username.UTF8String);
+ if (password) {
+ linphone_auth_info_set_passwd(info, password);
+ linphone_auth_info_set_ha1(info, NULL);
+ }
+ linphone_auth_info_set_domain(info, linphone_proxy_config_get_domain(proxyCfg));
+ } else {
+ LinphoneAddress *from = linphone_address_new(identity);
+ if (from) {
+ const char *userid_str = (userID != nil) ? [userID UTF8String] : NULL;
+ info = linphone_auth_info_new(
+ linphone_address_get_username(from), userid_str, password ? password : NULL, password ? NULL : ha1,
+ linphone_proxy_config_get_realm(proxyCfg), linphone_proxy_config_get_domain(proxyCfg));
+ linphone_address_destroy(from);
+ }
}
// We reached here without hitting the goto: the new settings are correct, so replace the previous ones.
diff --git a/Classes/LinphoneManager.m b/Classes/LinphoneManager.m
index fe99c0cec..c17753366 100644
--- a/Classes/LinphoneManager.m
+++ b/Classes/LinphoneManager.m
@@ -42,6 +42,8 @@
#import
#import "Utils.h"
+#import "Utils/DTFoundation/DTAlertView.h"
+#import "PhoneMainView.h"
#define LINPHONE_LOGS_MAX_ENTRY 5000
@@ -860,6 +862,51 @@ static void linphone_iphone_registration_state(LinphoneCore *lc, LinphoneProxyCo
[(__bridge LinphoneManager *)linphone_core_get_user_data(lc) onRegister:lc cfg:cfg state:state message:message];
}
+#pragma mark - Auth info Function
+
+static void linphone_iphone_popup_password_request(LinphoneCore *lc, const char *realm, const char *username,
+ const char *domain) {
+ // let the wizard handle its own errors
+ if ([PhoneMainView.instance currentView] != WizardViewController.compositeViewDescription) {
+ static DTAlertView *alertView = nil;
+
+ // avoid having multiple popups
+ if ([alertView isVisible]) {
+ [alertView dismissWithClickedButtonIndex:0 animated:NO];
+ }
+
+ alertView = [[DTAlertView alloc]
+ initWithTitle:NSLocalizedString(@"Authentication needed.", nil)
+ message:[NSString stringWithFormat:NSLocalizedString(@"Registration failed because authentication is "
+ @"missing or invalid for %s@%s.\nYou can "
+ @"provide password again, or check your "
+ @"account configuration in the settings.",
+ nil),
+ username, realm]];
+ alertView.alertViewStyle = UIAlertViewStyleSecureTextInput;
+ [alertView addCancelButtonWithTitle:NSLocalizedString(@"Cancel", nil) block:nil];
+ __weak UITextField *passwordField = [alertView textFieldAtIndex:0];
+
+ [alertView addButtonWithTitle:NSLocalizedString(@"Continue", nil)
+ block:^{
+ LinphoneAuthInfo *info = (LinphoneAuthInfo *)linphone_core_find_auth_info(
+ [LinphoneManager getLc], realm, username, domain);
+ if (info) {
+ linphone_auth_info_set_passwd(info, passwordField.text.UTF8String);
+ linphone_auth_info_set_ha1(info, NULL);
+ linphone_proxy_config_refresh_register(
+ linphone_core_get_default_proxy_config([LinphoneManager getLc]));
+ } else {
+ LOGE(@"Could not find auth info associated with %s@%s, going to settings!",
+ username, domain);
+ [[PhoneMainView instance]
+ changeCurrentView:[SettingsViewController compositeViewDescription]];
+ }
+ }];
+ [alertView show];
+ }
+}
+
#pragma mark - Text Received Functions
- (void)onMessageReceived:(LinphoneCore *)lc room:(LinphoneChatRoom *)room message:(LinphoneChatMessage *)msg {
@@ -1210,7 +1257,7 @@ static LinphoneCoreVTable linphonec_vtable = {.show = NULL,
.registration_state_changed = linphone_iphone_registration_state,
.notify_presence_received = NULL,
.new_subscription_requested = NULL,
- .auth_info_requested = NULL,
+ .auth_info_requested = linphone_iphone_popup_password_request,
.display_status = linphone_iphone_display_status,
.display_message = linphone_iphone_log_user_info,
.display_warning = linphone_iphone_log_user_warning,
@@ -1249,10 +1296,10 @@ static LinphoneCoreVTable linphonec_vtable = {.show = NULL,
const char *lRootCa =
[[LinphoneManager bundleFile:@"rootca.pem"] cStringUsingEncoding:[NSString defaultCStringEncoding]];
- linphone_core_set_user_agent(theLinphoneCore,
- [[[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleDisplayName"]
- stringByAppendingString:@"Iphone"] UTF8String],
- LINPHONE_IOS_VERSION);
+ NSString *device = [NSString
+ stringWithFormat:@"%@_%@_iOS%@", [NSBundle.mainBundle objectForInfoDictionaryKey:@"CFBundleDisplayName"],
+ [LinphoneUtils deviceName], UIDevice.currentDevice.systemVersion];
+ linphone_core_set_user_agent(theLinphoneCore, device.UTF8String, LINPHONE_IOS_VERSION);
_contactSipField = [self lpConfigStringForKey:@"contact_im_type_value" withDefault:@"SIP"];
diff --git a/Classes/LinphoneUI/UICheckBoxTVTableViewController.h b/Classes/LinphoneUI/UICheckBoxTVTableViewController.h
index 7fec2f82d..07d9155a7 100644
--- a/Classes/LinphoneUI/UICheckBoxTVTableViewController.h
+++ b/Classes/LinphoneUI/UICheckBoxTVTableViewController.h
@@ -11,9 +11,13 @@
@interface UICheckBoxTVTableViewController : UITableViewController
@property(nonatomic, readonly) NSMutableArray *selectedItems;
+@property(weak, nonatomic) IBOutlet UIButton *deleteButton;
+@property(weak, nonatomic) IBOutlet UIButton *editButton;
- (void)loadData;
- (void)accessoryForCell:(UITableViewCell *)cell atPath:(NSIndexPath *)indexPath;
- (void)removeSelection;
+- (IBAction)onSelectionToggle:(id)sender;
+
@end
diff --git a/Classes/LinphoneUI/UICheckBoxTVTableViewController.m b/Classes/LinphoneUI/UICheckBoxTVTableViewController.m
index 8e953fef1..3a1ed9df8 100644
--- a/Classes/LinphoneUI/UICheckBoxTVTableViewController.m
+++ b/Classes/LinphoneUI/UICheckBoxTVTableViewController.m
@@ -69,12 +69,13 @@
[checkBoxButton setImage:image forState:UIControlStateNormal];
[checkBoxButton setFrame:CGRectMake(0, 0, 19, 19)];
[checkBoxButton setBackgroundColor:[UIColor clearColor]];
-
+ checkBoxButton.userInteractionEnabled = NO;
cell.accessoryView = checkBoxButton;
} else {
cell.accessoryView = nil;
cell.accessoryType = UITableViewCellAccessoryNone;
}
+ _deleteButton.enabled = (_selectedItems.count != 0);
}
- (void)setEditing:(BOOL)editing animated:(BOOL)animated {
@@ -102,4 +103,11 @@
[_selectedItems removeAllObjects];
}
+- (void)onSelectionToggle:(id)sender {
+ if (_selectedItems.count == 0) {
+ [self table]
+ } else {
+ }
+}
+
@end
diff --git a/Classes/SettingsView.m b/Classes/SettingsView.m
index aa98ad868..14458fdd5 100644
--- a/Classes/SettingsView.m
+++ b/Classes/SettingsView.m
@@ -787,8 +787,7 @@ static UICompositeViewDescription *compositeDescription = nil;
- (void)emailAttachments:(NSArray *)attachments {
NSString *error = nil;
#if TARGET_IPHONE_SIMULATOR
- error =
- NSLocalizedString(@"Cannot send emails on the Simulator. To test this feature, please use a real device.", nil);
+ error = @"Cannot send emails on the Simulator. To test this feature, please use a real device.";
#else
if ([MFMailComposeViewController canSendMail] == NO) {
error = NSLocalizedString(
@@ -808,12 +807,11 @@ static UICompositeViewDescription *compositeDescription = nil;
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;
- [picker setSubject:NSLocalizedString(@"Linphone iOS Logs", nil)];
+ [picker setSubject:@"Linphone iOS Logs"];
[picker setToRecipients:[NSArray arrayWithObjects:@"linphone-iphone@belledonne-communications.com", nil]];
- [picker setMessageBody:NSLocalizedString(@"Here are information about an issue I had on my device.\nI was "
- @"doing ...\nI expected Linphone to ...\nInstead, I got an "
- @"unexpected result: ...",
- nil)
+ [picker setMessageBody:@"Here are information about an issue I had on my device.\nI was "
+ @"doing ...\nI expected Linphone to ...\nInstead, I got an "
+ @"unexpected result: ..."
isHTML:NO];
for (NSArray *attachment in attachments) {
if ([[NSFileManager defaultManager] fileExistsAtPath:attachment[0]]) {
diff --git a/Classes/Utils/GrowingTextView/HPGrowingTextView.m b/Classes/Utils/GrowingTextView/HPGrowingTextView.m
index f8c143f9c..ba747064c 100755
--- a/Classes/Utils/GrowingTextView/HPGrowingTextView.m
+++ b/Classes/Utils/GrowingTextView/HPGrowingTextView.m
@@ -366,13 +366,11 @@
CGRect size = [textToMeasure boundingRectWithSize:CGSizeMake(CGRectGetWidth(frame), MAXFLOAT)
options:NSStringDrawingUsesLineFragmentOrigin
context:nil];
-
- return CGRectGetHeight(size) + fudgeFactor.height;
- }
- else
- {
- return self.internalTextView.contentSize.height;
- }
+
+ return ceil(CGRectGetHeight(size) + fudgeFactor.height);
+ } else {
+ return self.internalTextView.contentSize.height;
+ }
#else
return self.internalTextView.contentSize.height;
#endif
diff --git a/Classes/Utils/Utils.h b/Classes/Utils/Utils.h
index 513bcb2de..c576079ce 100644
--- a/Classes/Utils/Utils.h
+++ b/Classes/Utils/Utils.h
@@ -36,6 +36,7 @@ void linphone_iphone_log_handler(int lev, const char *fmt, va_list args);
+ (void)buttonFixStates:(UIButton*)button;
+ (void)buttonMultiViewAddAttributes:(NSMutableDictionary*)attributes button:(UIButton*)button;
+ (void)buttonMultiViewApplyAttributes:(NSDictionary*)attributes button:(UIButton*)button;
++ (NSString *)deviceName;
+ (NSString *)timeToString:(time_t)time withStyle:(NSDateFormatterStyle)style;
diff --git a/Classes/Utils/Utils.m b/Classes/Utils/Utils.m
index cddd607eb..2b901290e 100644
--- a/Classes/Utils/Utils.m
+++ b/Classes/Utils/Utils.m
@@ -19,6 +19,7 @@
#import
#import
+#import
#import "Utils.h"
#import "linphone/linphonecore.h"
@@ -33,13 +34,14 @@
va_start(args, format);
NSString *str = [[NSString alloc] initWithFormat:format arguments:args];
int filesize = 20;
+ const char *filename = strchr(file, '/') ? strrchr(file, '/') + 1 : file;
if (severity <= ORTP_DEBUG) {
// lol: ortp_debug(XXX) can be disabled at compile time, but ortp_log(ORTP_DEBUG, xxx) will always be valid even
// not in debug build...
- ortp_debug("%*s:%3d - %s", filesize, file + MAX((int)strlen(file) - filesize, 0), line, [str UTF8String]);
+ ortp_debug("%*s:%3d - %s", filesize, filename + MAX((int)strlen(filename) - filesize, 0), line, str.UTF8String);
} else {
- ortp_log(severity, "%*s:%3d - %s", filesize, file + MAX((int)strlen(file) - filesize, 0), line,
- [str UTF8String]);
+ ortp_log(severity, "%*s:%3d - %s", filesize, filename + MAX((int)strlen(filename) - filesize, 0), line,
+ str.UTF8String);
}
va_end(args);
}
@@ -304,6 +306,13 @@ void linphone_iphone_log_handler(int lev, const char *fmt, va_list args) {
return nil;
}
++ (NSString *)deviceName {
+ struct utsname systemInfo;
+ uname(&systemInfo);
+
+ return [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];
+}
+
@end
@implementation NSNumber (HumanReadableSize)
diff --git a/Classes/ja.lproj/AboutViewController.strings b/Classes/ja.lproj/AboutViewController.strings
index 87fc01f1a..c91bba9f2 100644
Binary files a/Classes/ja.lproj/AboutViewController.strings and b/Classes/ja.lproj/AboutViewController.strings differ
diff --git a/Classes/ja.lproj/ChatRoomViewController.strings b/Classes/ja.lproj/ChatRoomViewController.strings
index 0674cec33..9e0ce9df2 100644
Binary files a/Classes/ja.lproj/ChatRoomViewController.strings and b/Classes/ja.lproj/ChatRoomViewController.strings differ
diff --git a/Resources/ar.lproj/Localizable.strings b/Resources/ar.lproj/Localizable.strings
index 7fb9e3e05..66fea75f7 100644
Binary files a/Resources/ar.lproj/Localizable.strings and b/Resources/ar.lproj/Localizable.strings differ
diff --git a/Resources/assistant_linphone_create.rc b/Resources/assistant_linphone_create.rc
index 74236d269..3dcabba57 100644
--- a/Resources/assistant_linphone_create.rc
+++ b/Resources/assistant_linphone_create.rc
@@ -3,7 +3,6 @@
<sip:sip.linphone.org;transport=tls>
- <sip:sip.linphone.org;transport=tls>
sip:?@sip.linphone.org
1314000
1
diff --git a/Resources/assistant_linphone_existing.rc b/Resources/assistant_linphone_existing.rc
index 74236d269..3dcabba57 100644
--- a/Resources/assistant_linphone_existing.rc
+++ b/Resources/assistant_linphone_existing.rc
@@ -3,7 +3,6 @@
<sip:sip.linphone.org;transport=tls>
- <sip:sip.linphone.org;transport=tls>
sip:?@sip.linphone.org
1314000
1
diff --git a/Resources/de.lproj/Localizable.strings b/Resources/de.lproj/Localizable.strings
index 27cd06e61..a3a93f1ee 100644
Binary files a/Resources/de.lproj/Localizable.strings and b/Resources/de.lproj/Localizable.strings differ
diff --git a/Resources/en.lproj/Localizable.strings b/Resources/en.lproj/Localizable.strings
index 09e16d7f4..ad0a1f4a3 100644
Binary files a/Resources/en.lproj/Localizable.strings and b/Resources/en.lproj/Localizable.strings differ
diff --git a/Resources/fr.lproj/Localizable.strings b/Resources/fr.lproj/Localizable.strings
index 232e5ac96..94f329f08 100644
Binary files a/Resources/fr.lproj/Localizable.strings and b/Resources/fr.lproj/Localizable.strings differ
diff --git a/Resources/ja.lproj/Localizable.strings b/Resources/ja.lproj/Localizable.strings
index 2a9d9d4cc..98c00b7a7 100644
Binary files a/Resources/ja.lproj/Localizable.strings and b/Resources/ja.lproj/Localizable.strings differ
diff --git a/Resources/nl.lproj/Localizable.strings b/Resources/nl.lproj/Localizable.strings
index a9be3a0d7..7326dae19 100644
Binary files a/Resources/nl.lproj/Localizable.strings and b/Resources/nl.lproj/Localizable.strings differ
diff --git a/Resources/ru.lproj/Localizable.strings b/Resources/ru.lproj/Localizable.strings
index 35fdffe83..035caa73b 100644
Binary files a/Resources/ru.lproj/Localizable.strings and b/Resources/ru.lproj/Localizable.strings differ
diff --git a/Resources/zh_TW.lproj/Localizable.strings b/Resources/zh_TW.lproj/Localizable.strings
index 8d1b3b82e..edbc17b01 100644
Binary files a/Resources/zh_TW.lproj/Localizable.strings and b/Resources/zh_TW.lproj/Localizable.strings differ
diff --git a/Settings/InAppSettings.bundle/ar.lproj/Network.strings b/Settings/InAppSettings.bundle/ar.lproj/Network.strings
index dee6be3f2..39af69ecb 100644
Binary files a/Settings/InAppSettings.bundle/ar.lproj/Network.strings and b/Settings/InAppSettings.bundle/ar.lproj/Network.strings differ
diff --git a/Settings/InAppSettings.bundle/de.lproj/Network.strings b/Settings/InAppSettings.bundle/de.lproj/Network.strings
index 037fd04be..714fa62e6 100644
Binary files a/Settings/InAppSettings.bundle/de.lproj/Network.strings and b/Settings/InAppSettings.bundle/de.lproj/Network.strings differ
diff --git a/Settings/InAppSettings.bundle/en.lproj/Network.strings b/Settings/InAppSettings.bundle/en.lproj/Network.strings
index c090abb46..398390089 100644
--- a/Settings/InAppSettings.bundle/en.lproj/Network.strings
+++ b/Settings/InAppSettings.bundle/en.lproj/Network.strings
@@ -12,4 +12,3 @@
"Limits" = "Limits";
"Adaptive rate control" = "Adaptive rate control";
"Adaptive rate control" = "Adaptive rate control";
-"Adaptive rate algorithm" = "Adaptive rate algorithm";
diff --git a/Settings/InAppSettings.bundle/fr.lproj/Network.strings b/Settings/InAppSettings.bundle/fr.lproj/Network.strings
index 014bf5b59..c2e7c915d 100644
Binary files a/Settings/InAppSettings.bundle/fr.lproj/Network.strings and b/Settings/InAppSettings.bundle/fr.lproj/Network.strings differ
diff --git a/Settings/InAppSettings.bundle/ja.lproj/Call.strings b/Settings/InAppSettings.bundle/ja.lproj/Call.strings
new file mode 100644
index 000000000..f1cb65f2d
Binary files /dev/null and b/Settings/InAppSettings.bundle/ja.lproj/Call.strings differ
diff --git a/Settings/InAppSettings.bundle/ja.lproj/Network.strings b/Settings/InAppSettings.bundle/ja.lproj/Network.strings
index bf538146c..b7393dcb0 100644
Binary files a/Settings/InAppSettings.bundle/ja.lproj/Network.strings and b/Settings/InAppSettings.bundle/ja.lproj/Network.strings differ
diff --git a/Settings/InAppSettings.bundle/nl.lproj/Network.strings b/Settings/InAppSettings.bundle/nl.lproj/Network.strings
index bf538146c..b7393dcb0 100644
Binary files a/Settings/InAppSettings.bundle/nl.lproj/Network.strings and b/Settings/InAppSettings.bundle/nl.lproj/Network.strings differ
diff --git a/Settings/InAppSettings.bundle/ru.lproj/Network.strings b/Settings/InAppSettings.bundle/ru.lproj/Network.strings
index e0e20f8cf..f8a969aeb 100644
Binary files a/Settings/InAppSettings.bundle/ru.lproj/Network.strings and b/Settings/InAppSettings.bundle/ru.lproj/Network.strings differ
diff --git a/Settings/InAppSettings.bundle/zh_TW.lproj/Network.strings b/Settings/InAppSettings.bundle/zh_TW.lproj/Network.strings
index bf538146c..b7393dcb0 100644
Binary files a/Settings/InAppSettings.bundle/zh_TW.lproj/Network.strings and b/Settings/InAppSettings.bundle/zh_TW.lproj/Network.strings differ
diff --git a/TestsUI/AssistantTester.m b/TestsUI/AssistantTester.m
index ab8257817..2b74f93dc 100644
--- a/TestsUI/AssistantTester.m
+++ b/TestsUI/AssistantTester.m
@@ -116,4 +116,11 @@
}
}
+- (void)testRemoteProvisioning {
+ [tester tapViewWithAccessibilityLabel:@"Start"];
+ [tester tapViewWithAccessibilityLabel:@"Remote provisioning"];
+ [tester enterTextIntoCurrentFirstResponder:@"smtp.linphone.org/testios_xml"];
+ [tester tapViewWithAccessibilityLabel:@"Fetch"];
+ [self waitForRegistration];
+}
@end
diff --git a/TestsUI/LinphoneTestCase.m b/TestsUI/LinphoneTestCase.m
index 4e3a0803a..78f334530 100644
--- a/TestsUI/LinphoneTestCase.m
+++ b/TestsUI/LinphoneTestCase.m
@@ -156,10 +156,11 @@
- (void)waitForRegistration {
// wait for account to be registered
int timeout = 15;
- while (timeout && [tester tryFindingViewWithAccessibilityLabel:@"Registration state"
- value:@"Registered"
- traits:UIAccessibilityTraitStaticText
- error:nil]) {
+ while (timeout &&
+ ![tester tryFindingViewWithAccessibilityLabel:@"Registration state"
+ value:@"Registered"
+ traits:UIAccessibilityTraitStaticText
+ error:nil]) {
[tester waitForTimeInterval:1];
timeout--;
}
diff --git a/Tools/imgur_upload.sh b/Tools/imgur_upload.sh
index d7277ff44..debd736f0 100755
--- a/Tools/imgur_upload.sh
+++ b/Tools/imgur_upload.sh
@@ -2,7 +2,7 @@
# Install underscore-cli for hacking
if ! which underscore &> /dev/null; then
- npm install -g underscore-cli
+ npm install -g underscore-cli &>/dev/null
fi
cd $KIF_SCREENSHOTS
diff --git a/TutorialHellowWorld/hello-world.xcodeproj/project.pbxproj b/TutorialHellowWorld/hello-world.xcodeproj/project.pbxproj
index 5f5892cf4..d5953a5a3 100755
--- a/TutorialHellowWorld/hello-world.xcodeproj/project.pbxproj
+++ b/TutorialHellowWorld/hello-world.xcodeproj/project.pbxproj
@@ -65,7 +65,6 @@
63D5C13B1BA6E504002D1ABF /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C1171BA6E4F0002D1ABF /* libopus.a */; };
63D5C13C1BA6E504002D1ABF /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C1181BA6E4F0002D1ABF /* libortp.a */; };
63D5C13D1BA6E504002D1ABF /* libpolarssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C1191BA6E4F0002D1ABF /* libpolarssl.a */; };
- 63D5C13E1BA6E504002D1ABF /* libSKP_SILK_SDK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C11A1BA6E4F0002D1ABF /* libSKP_SILK_SDK.a */; };
63D5C13F1BA6E504002D1ABF /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C11B1BA6E4F0002D1ABF /* libspeex.a */; };
63D5C1401BA6E504002D1ABF /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C11C1BA6E4F0002D1ABF /* libspeexdsp.a */; };
63D5C1411BA6E504002D1ABF /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C11D1BA6E4F0002D1ABF /* libsrtp.a */; };
@@ -102,7 +101,6 @@
63D5C1661BA6E765002D1ABF /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C1171BA6E4F0002D1ABF /* libopus.a */; };
63D5C1671BA6E765002D1ABF /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C1181BA6E4F0002D1ABF /* libortp.a */; };
63D5C1681BA6E765002D1ABF /* libpolarssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C1191BA6E4F0002D1ABF /* libpolarssl.a */; };
- 63D5C1691BA6E765002D1ABF /* libSKP_SILK_SDK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C11A1BA6E4F0002D1ABF /* libSKP_SILK_SDK.a */; };
63D5C16A1BA6E765002D1ABF /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C11B1BA6E4F0002D1ABF /* libspeex.a */; };
63D5C16B1BA6E765002D1ABF /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C11C1BA6E4F0002D1ABF /* libspeexdsp.a */; };
63D5C16C1BA6E765002D1ABF /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C11D1BA6E4F0002D1ABF /* libsrtp.a */; };
@@ -152,7 +150,6 @@
63D5C1991BA6E92A002D1ABF /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C1171BA6E4F0002D1ABF /* libopus.a */; };
63D5C19A1BA6E92A002D1ABF /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C1181BA6E4F0002D1ABF /* libortp.a */; };
63D5C19B1BA6E92A002D1ABF /* libpolarssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C1191BA6E4F0002D1ABF /* libpolarssl.a */; };
- 63D5C19C1BA6E92A002D1ABF /* libSKP_SILK_SDK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C11A1BA6E4F0002D1ABF /* libSKP_SILK_SDK.a */; };
63D5C19D1BA6E92A002D1ABF /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C11B1BA6E4F0002D1ABF /* libspeex.a */; };
63D5C19E1BA6E92A002D1ABF /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C11C1BA6E4F0002D1ABF /* libspeexdsp.a */; };
63D5C19F1BA6E92A002D1ABF /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C11D1BA6E4F0002D1ABF /* libsrtp.a */; };
@@ -182,7 +179,6 @@
63D5C1B71BA6E95C002D1ABF /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C1171BA6E4F0002D1ABF /* libopus.a */; };
63D5C1B81BA6E95C002D1ABF /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C1181BA6E4F0002D1ABF /* libortp.a */; };
63D5C1B91BA6E95C002D1ABF /* libpolarssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C1191BA6E4F0002D1ABF /* libpolarssl.a */; };
- 63D5C1BA1BA6E95C002D1ABF /* libSKP_SILK_SDK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C11A1BA6E4F0002D1ABF /* libSKP_SILK_SDK.a */; };
63D5C1BB1BA6E95C002D1ABF /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C11B1BA6E4F0002D1ABF /* libspeex.a */; };
63D5C1BC1BA6E95C002D1ABF /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C11C1BA6E4F0002D1ABF /* libspeexdsp.a */; };
63D5C1BD1BA6E95C002D1ABF /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D5C11D1BA6E4F0002D1ABF /* libsrtp.a */; };
@@ -294,7 +290,6 @@
63D5C13B1BA6E504002D1ABF /* libopus.a in Frameworks */,
63D5C13C1BA6E504002D1ABF /* libortp.a in Frameworks */,
63D5C13D1BA6E504002D1ABF /* libpolarssl.a in Frameworks */,
- 63D5C13E1BA6E504002D1ABF /* libSKP_SILK_SDK.a in Frameworks */,
63D5C13F1BA6E504002D1ABF /* libspeex.a in Frameworks */,
63D5C1401BA6E504002D1ABF /* libspeexdsp.a in Frameworks */,
63D5C1411BA6E504002D1ABF /* libsrtp.a in Frameworks */,
@@ -367,7 +362,6 @@
63D5C1661BA6E765002D1ABF /* libopus.a in Frameworks */,
63D5C1671BA6E765002D1ABF /* libortp.a in Frameworks */,
63D5C1681BA6E765002D1ABF /* libpolarssl.a in Frameworks */,
- 63D5C1691BA6E765002D1ABF /* libSKP_SILK_SDK.a in Frameworks */,
63D5C16A1BA6E765002D1ABF /* libspeex.a in Frameworks */,
63D5C16B1BA6E765002D1ABF /* libspeexdsp.a in Frameworks */,
63D5C16C1BA6E765002D1ABF /* libsrtp.a in Frameworks */,
@@ -404,7 +398,6 @@
63D5C1991BA6E92A002D1ABF /* libopus.a in Frameworks */,
63D5C19A1BA6E92A002D1ABF /* libortp.a in Frameworks */,
63D5C19B1BA6E92A002D1ABF /* libpolarssl.a in Frameworks */,
- 63D5C19C1BA6E92A002D1ABF /* libSKP_SILK_SDK.a in Frameworks */,
63D5C19D1BA6E92A002D1ABF /* libspeex.a in Frameworks */,
63D5C19E1BA6E92A002D1ABF /* libspeexdsp.a in Frameworks */,
63D5C19F1BA6E92A002D1ABF /* libsrtp.a in Frameworks */,
@@ -454,7 +447,6 @@
63D5C1B71BA6E95C002D1ABF /* libopus.a in Frameworks */,
63D5C1B81BA6E95C002D1ABF /* libortp.a in Frameworks */,
63D5C1B91BA6E95C002D1ABF /* libpolarssl.a in Frameworks */,
- 63D5C1BA1BA6E95C002D1ABF /* libSKP_SILK_SDK.a in Frameworks */,
63D5C1BB1BA6E95C002D1ABF /* libspeex.a in Frameworks */,
63D5C1BC1BA6E95C002D1ABF /* libspeexdsp.a in Frameworks */,
63D5C1BD1BA6E95C002D1ABF /* libsrtp.a in Frameworks */,
@@ -790,8 +782,8 @@
IPHONEOS_DEPLOYMENT_TARGET = 6.0;
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
- "/Users/gpelloux/code/ios/linphone-iphone/liblinphone-sdk/apple-darwin/lib",
- "/Users/gpelloux/code/ios/linphone-iphone/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins",
+ "../liblinphone-sdk/apple-darwin/lib",
+ "../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins",
);
PRODUCT_NAME = "hello-world";
SDKROOT = iphoneos;
@@ -810,8 +802,8 @@
IPHONEOS_DEPLOYMENT_TARGET = 6.0;
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
- "/Users/gpelloux/code/ios/linphone-iphone/liblinphone-sdk/apple-darwin/lib",
- "/Users/gpelloux/code/ios/linphone-iphone/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins",
+ "../liblinphone-sdk/apple-darwin/lib",
+ "../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins",
);
PRODUCT_NAME = "hello-world";
SDKROOT = iphoneos;
@@ -833,8 +825,8 @@
IPHONEOS_DEPLOYMENT_TARGET = 6.0;
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
- "/Users/gpelloux/code/ios/linphone-iphone/liblinphone-sdk/apple-darwin/lib",
- "/Users/gpelloux/code/ios/linphone-iphone/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins",
+ "../liblinphone-sdk/apple-darwin/lib",
+ "../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins",
);
PRODUCT_NAME = "hello-world";
SDKROOT = iphoneos;
@@ -853,8 +845,8 @@
IPHONEOS_DEPLOYMENT_TARGET = 6.0;
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
- "/Users/gpelloux/code/ios/linphone-iphone/liblinphone-sdk/apple-darwin/lib",
- "/Users/gpelloux/code/ios/linphone-iphone/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins",
+ "../liblinphone-sdk/apple-darwin/lib",
+ "../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins",
);
PRODUCT_NAME = "hello-world";
SDKROOT = iphoneos;
@@ -876,7 +868,7 @@
IPHONEOS_DEPLOYMENT_TARGET = 6.0;
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
- "/Users/gpelloux/code/ios/linphone-iphone/liblinphone-sdk/apple-darwin/lib",
+ "../liblinphone-sdk/apple-darwin/lib",
);
PRODUCT_NAME = "hello-world";
SDKROOT = iphoneos;
@@ -895,7 +887,7 @@
IPHONEOS_DEPLOYMENT_TARGET = 6.0;
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
- "/Users/gpelloux/code/ios/linphone-iphone/liblinphone-sdk/apple-darwin/lib",
+ "../liblinphone-sdk/apple-darwin/lib",
);
PRODUCT_NAME = "hello-world";
SDKROOT = iphoneos;
@@ -917,7 +909,7 @@
IPHONEOS_DEPLOYMENT_TARGET = 6.0;
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
- "/Users/gpelloux/code/ios/linphone-iphone/liblinphone-sdk/apple-darwin/lib",
+ "../liblinphone-sdk/apple-darwin/lib",
);
PRODUCT_NAME = "hello-world";
SDKROOT = iphoneos;
@@ -936,7 +928,7 @@
IPHONEOS_DEPLOYMENT_TARGET = 6.0;
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
- "/Users/gpelloux/code/ios/linphone-iphone/liblinphone-sdk/apple-darwin/lib",
+ "../liblinphone-sdk/apple-darwin/lib",
);
PRODUCT_NAME = "hello-world";
SDKROOT = iphoneos;
@@ -949,13 +941,15 @@
buildSettings = {
ARCHS = "$(ARCHS_STANDARD)";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
+ ENABLE_BITCODE = NO;
GCC_C_LANGUAGE_STANDARD = c99;
GCC_PREPROCESSOR_DEFINITIONS = DEBUG;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- HEADER_SEARCH_PATHS = "$(SRCROOT)/../liblinphone-sdk/apple-darwin/include";
+ HEADER_SEARCH_PATHS = "../liblinphone-sdk/apple-darwin/include";
IPHONEOS_DEPLOYMENT_TARGET = 6.0;
- LIBRARY_SEARCH_PATHS = "$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib";
+ LIBRARY_SEARCH_PATHS = "../liblinphone-sdk/apple-darwin/lib";
+ ONLY_ACTIVE_ARCH = YES;
PREBINDING = NO;
SDKROOT = iphoneos;
};
@@ -966,12 +960,13 @@
buildSettings = {
ARCHS = "$(ARCHS_STANDARD)";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
+ ENABLE_BITCODE = NO;
GCC_C_LANGUAGE_STANDARD = c99;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- HEADER_SEARCH_PATHS = "$(SRCROOT)/../liblinphone-sdk/apple-darwin/include";
+ HEADER_SEARCH_PATHS = "../liblinphone-sdk/apple-darwin/include";
IPHONEOS_DEPLOYMENT_TARGET = 6.0;
- LIBRARY_SEARCH_PATHS = "$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib";
+ LIBRARY_SEARCH_PATHS = "../liblinphone-sdk/apple-darwin/lib";
OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1";
PREBINDING = NO;
SDKROOT = iphoneos;
diff --git a/linphone-Info.plist b/linphone-Info.plist
index cefdb0428..fb0c22ce2 100644
--- a/linphone-Info.plist
+++ b/linphone-Info.plist
@@ -53,7 +53,7 @@
CFBundleVersion
- 2.3
+ 2.4
LSRequiresIPhoneOS
UIApplicationExitsOnSuspend
diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj
index b413ba658..3cf6c8351 100755
--- a/linphone.xcodeproj/project.pbxproj
+++ b/linphone.xcodeproj/project.pbxproj
@@ -2593,6 +2593,19 @@
shellPath = /bin/sh;
shellScript = $SRCROOT/Tools/git_version.sh;
};
+ 63F0162D1BB3E9D5001FAD87 /* ShellScript */ = {
+ isa = PBXShellScriptBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ inputPaths = (
+ );
+ outputPaths = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ shellPath = /bin/sh;
+ shellScript = "test -f liblinphone-sdk/apple-darwin/share/linphone/rootca.pem || (echo 'liblinphone SDK not found. Please refer to the README: you have to compile liblinphone SDK before building Linphone application.' && exit 1)";
+ };
D33CF34715D3985000CD4B85 /* ShellScript */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
diff --git a/prepare.py b/prepare.py
index 1a4b3d9dd..e58d34bd3 100755
--- a/prepare.py
+++ b/prepare.py
@@ -238,7 +238,7 @@ def check_tools():
sudo mv gas-preprocessor.pl {}""".format(package_manager_info[detect_package_manager() + "-binary-path"]))
reterr = 1
- if not os.path.isdir("submodules/linphone/mediastreamer2") or not os.path.isdir("submodules/linphone/oRTP"):
+ if not os.path.isdir("submodules/linphone/mediastreamer2/src") or not os.path.isdir("submodules/linphone/oRTP/src"):
error("Missing some git submodules. Did you run:\n\tgit submodule update --init --recursive")
reterr = 1
@@ -482,7 +482,7 @@ def main(argv=None):
argparser.add_argument(
'--enable-non-free-codecs', help="Enable non-free codecs such as OpenH264, MPEG4, etc.. Final application must comply with their respective license (see README.md).", action='store_true')
argparser.add_argument(
- '-G' '--generator', help="CMake build system generator (default: Unix Makefiles).", default='Unix Makefiles', choices=['Unix Makefiles', 'Ninja'], dest='generator')
+ '-G' '--generator', help="CMake build system generator (default: Unix Makefiles, use cmake -h to get the complete list).", default='Unix Makefiles', dest='generator')
argparser.add_argument(
'-L', '--list-cmake-variables', help="List non-advanced CMake cache variables.", action='store_true', dest='list_cmake_variables')
argparser.add_argument(
@@ -495,12 +495,6 @@ def main(argv=None):
args, additional_args = argparser.parse_known_args()
additional_args += ["-G", args.generator]
- if args.generator == 'Ninja':
- if not check_is_installed("ninja", "it"):
- return 1
- generator = 'ninja -C'
- else:
- generator = '$(MAKE) -C'
if check_tools() != 0:
return 1
@@ -578,7 +572,18 @@ def main(argv=None):
os.remove('Makefile')
elif selected_platforms:
install_git_hook()
- generate_makefile(selected_platforms, generator)
+
+ # only generated makefile if we are using Ninja or Makefile
+ if args.generator == 'Ninja':
+ if not check_is_installed("ninja", "it"):
+ return 1
+ generate_makefile(selected_platforms, 'ninja -C')
+ elif args.generator == "Unix Makefiles":
+ generate_makefile(selected_platforms, '$(MAKE) -C')
+ elif args.generator == "Xcode":
+ print("You can now open Xcode project with: open WORK/cmake/Project.xcodeproj")
+ else:
+ print("Not generating meta-makefile for generator {}.".format(args.generator))
return 0
diff --git a/submodules/belle-sip b/submodules/belle-sip
index 6fce3a793..0efd4dfd5 160000
--- a/submodules/belle-sip
+++ b/submodules/belle-sip
@@ -1 +1 @@
-Subproject commit 6fce3a793570e9920f18c29f411b9204249e229f
+Subproject commit 0efd4dfd5b37fb28ba1ecbabcc8d37defddfd517
diff --git a/submodules/cmake-builder b/submodules/cmake-builder
index aece45302..e5ddd8925 160000
--- a/submodules/cmake-builder
+++ b/submodules/cmake-builder
@@ -1 +1 @@
-Subproject commit aece45302149a063d64efd0f417f3887a9ed13ca
+Subproject commit e5ddd892561b0c5df25b7036bd9229fe6a6ea81a
diff --git a/submodules/liblinphone.xcodeproj/project.pbxproj b/submodules/liblinphone.xcodeproj/project.pbxproj
index 4544e1bb1..21ed8f629 100644
--- a/submodules/liblinphone.xcodeproj/project.pbxproj
+++ b/submodules/liblinphone.xcodeproj/project.pbxproj
@@ -320,6 +320,9 @@
22DD19C113A8D7FA0018ECD4 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22DD19C013A8D7FA0018ECD4 /* UIKit.framework */; };
22DD19C213A8D7FA0018ECD4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AACBBE490F95108600F1A2B1 /* Foundation.framework */; };
22DD19C413A8D7FA0018ECD4 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22DD19C313A8D7FA0018ECD4 /* CoreGraphics.framework */; };
+ 630DCF691BBAC06400A0DDC8 /* msvideopresets.c in Sources */ = {isa = PBXBuildFile; fileRef = 630DCF661BBAC05100A0DDC8 /* msvideopresets.c */; settings = {ASSET_TAGS = (); }; };
+ 630DCF6C1BBAC08200A0DDC8 /* rfc4103_textstream.c in Sources */ = {isa = PBXBuildFile; fileRef = 630DCF6A1BBAC08200A0DDC8 /* rfc4103_textstream.c */; settings = {ASSET_TAGS = (); }; };
+ 630DCF6D1BBAC08200A0DDC8 /* video_preset_high_fps.c in Sources */ = {isa = PBXBuildFile; fileRef = 630DCF6B1BBAC08200A0DDC8 /* video_preset_high_fps.c */; settings = {ASSET_TAGS = (); }; };
7066FC0A13E830B800EFC6DC /* libvpx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 7066FC0913E830B800EFC6DC /* libvpx.a */; };
70E542EE13E147C7002BA2C0 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 70E542ED13E147C7002BA2C0 /* OpenGLES.framework */; };
70E542F113E147CE002BA2C0 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 70E542F013E147CE002BA2C0 /* QuartzCore.framework */; };
@@ -357,7 +360,6 @@
F0BA0A8E1A24D4DE00F68203 /* nowebcam.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA84016D9268D00EF1BEC /* nowebcam.c */; };
F0ED99131A16456500A788CE /* libcunit.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F0ED99121A16456500A788CE /* libcunit.a */; };
F0ED99361A1645C200A788CE /* Makefile.am in Resources */ = {isa = PBXBuildFile; fileRef = F0ED99171A1645C200A788CE /* Makefile.am */; };
- F0ED99371A1645C200A788CE /* Makefile.in in Resources */ = {isa = PBXBuildFile; fileRef = F0ED99181A1645C200A788CE /* Makefile.in */; };
F0ED99421A1645C200A788CE /* arpeggio_8000_mono.wav in Resources */ = {isa = PBXBuildFile; fileRef = F0ED99261A1645C200A788CE /* arpeggio_8000_mono.wav */; };
F0ED99431A1645C200A788CE /* bird_44100_stereo.wav in Resources */ = {isa = PBXBuildFile; fileRef = F0ED99271A1645C200A788CE /* bird_44100_stereo.wav */; };
F0ED99441A1645C200A788CE /* chimes_48000_stereo.wav in Resources */ = {isa = PBXBuildFile; fileRef = F0ED99281A1645C200A788CE /* chimes_48000_stereo.wav */; };
@@ -415,7 +417,6 @@
F0ED99881A16464D00A788CE /* nylon_48000_mono.wav in Resources */ = {isa = PBXBuildFile; fileRef = F0ED99321A1645C200A788CE /* nylon_48000_mono.wav */; };
F0ED99891A16464D00A788CE /* hello8000.wav in Resources */ = {isa = PBXBuildFile; fileRef = F0ED992C1A1645C200A788CE /* hello8000.wav */; };
F0ED998A1A16464D00A788CE /* laserrocket_16000_mono.wav in Resources */ = {isa = PBXBuildFile; fileRef = F0ED99311A1645C200A788CE /* laserrocket_16000_mono.wav */; };
- F0ED998B1A16464D00A788CE /* Makefile.in in Resources */ = {isa = PBXBuildFile; fileRef = F0ED99181A1645C200A788CE /* Makefile.in */; };
F0ED998C1A16464D00A788CE /* chimes_48000_stereo.wav in Resources */ = {isa = PBXBuildFile; fileRef = F0ED99281A1645C200A788CE /* chimes_48000_stereo.wav */; };
F0ED998D1A16464D00A788CE /* Makefile.am in Resources */ = {isa = PBXBuildFile; fileRef = F0ED99171A1645C200A788CE /* Makefile.am */; };
F0ED998E1A16464D00A788CE /* bird_44100_stereo.wav in Resources */ = {isa = PBXBuildFile; fileRef = F0ED99271A1645C200A788CE /* bird_44100_stereo.wav */; };
@@ -576,7 +577,6 @@
222CA5DA11F6CF7600621220 /* rfc3984.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rfc3984.h; sourceTree = ""; };
222CA5DD11F6CF7600621220 /* .gitignore */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = .gitignore; sourceTree = ""; };
222CA5F911F6CF7600621220 /* Makefile.am */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Makefile.am; sourceTree = ""; };
- 222CA5FA11F6CF7600621220 /* Makefile.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Makefile.in; sourceTree = ""; };
222CA6A011F6CF9E00621220 /* .gitignore */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = .gitignore; sourceTree = ""; };
222CA6A111F6CF9E00621220 /* Makefile.am */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Makefile.am; sourceTree = ""; };
222CA6A211F6CF9F00621220 /* Makefile.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Makefile.in; sourceTree = ""; };
@@ -732,6 +732,9 @@
22DD19BE13A8D7FA0018ECD4 /* mediastream.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = mediastream.app; sourceTree = BUILT_PRODUCTS_DIR; };
22DD19C013A8D7FA0018ECD4 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
22DD19C313A8D7FA0018ECD4 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
+ 630DCF661BBAC05100A0DDC8 /* msvideopresets.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = msvideopresets.c; path = linphone/mediastreamer2/src/base/msvideopresets.c; sourceTree = SOURCE_ROOT; };
+ 630DCF6A1BBAC08200A0DDC8 /* rfc4103_textstream.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = rfc4103_textstream.c; sourceTree = ""; };
+ 630DCF6B1BBAC08200A0DDC8 /* video_preset_high_fps.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = video_preset_high_fps.c; sourceTree = ""; };
7014533B13FA7ECA00A01D86 /* zrtp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = zrtp.h; sourceTree = ""; };
7066FC0913E830B800EFC6DC /* libvpx.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvpx.a; path = "../liblinphone-sdk/apple-darwin/lib/libvpx.a"; sourceTree = ""; };
70E542ED13E147C7002BA2C0 /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; };
@@ -771,7 +774,6 @@
F08272D91A7F898200BB6004 /* zrtp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = zrtp.c; sourceTree = ""; };
F0ED99121A16456500A788CE /* libcunit.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcunit.a; path = "../liblinphone-sdk/apple-darwin/lib/libcunit.a"; sourceTree = ""; };
F0ED99171A1645C200A788CE /* Makefile.am */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Makefile.am; sourceTree = ""; };
- F0ED99181A1645C200A788CE /* Makefile.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Makefile.in; sourceTree = ""; };
F0ED991A1A1645C200A788CE /* mediastreamer2_adaptive_tester.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = mediastreamer2_adaptive_tester.c; sourceTree = ""; };
F0ED991B1A1645C200A788CE /* mediastreamer2_audio_stream_tester.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = mediastreamer2_audio_stream_tester.c; sourceTree = ""; };
F0ED991C1A1645C200A788CE /* mediastreamer2_basic_audio_tester.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = mediastreamer2_basic_audio_tester.c; sourceTree = ""; };
@@ -1039,7 +1041,6 @@
2252935A12F6CA4700DD9BFB /* ec-calibrator.c */,
2203127413A249F70049A2ED /* filter-template.c */,
221DCB6A153584410025E54D /* yuv2rgb.fs */,
- 222CA5FA11F6CF7600621220 /* Makefile.in */,
221DCB6B153584410025E54D /* yuv2rgb.vs */,
223CA7EF16D9268D00EF1BEC /* audiofilters */,
223CA81116D9268D00EF1BEC /* base */,
@@ -1241,6 +1242,9 @@
223CA84E16D9268D00EF1BEC /* voip */ = {
isa = PBXGroup;
children = (
+ 630DCF6A1BBAC08200A0DDC8 /* rfc4103_textstream.c */,
+ 630DCF6B1BBAC08200A0DDC8 /* video_preset_high_fps.c */,
+ 630DCF661BBAC05100A0DDC8 /* msvideopresets.c */,
223CA84F16D9268D00EF1BEC /* audioconference.c */,
223CA85016D9268D00EF1BEC /* audiostream.c */,
223CA85116D9268D00EF1BEC /* bitratecontrol.c */,
@@ -1332,7 +1336,6 @@
F03A96E41AFA157800651655 /* common */,
F01223BC1A1E4827008D16BA /* sounds */,
F0ED99171A1645C200A788CE /* Makefile.am */,
- F0ED99181A1645C200A788CE /* Makefile.in */,
F0ED991A1A1645C200A788CE /* mediastreamer2_adaptive_tester.c */,
F0ED991B1A1645C200A788CE /* mediastreamer2_audio_stream_tester.c */,
F0ED991C1A1645C200A788CE /* mediastreamer2_basic_audio_tester.c */,
@@ -1788,7 +1791,6 @@
F0ED994E1A1645C200A788CE /* nylon_48000_mono.wav in Resources */,
F0ED99481A1645C200A788CE /* hello8000.wav in Resources */,
F0ED994D1A1645C200A788CE /* laserrocket_16000_mono.wav in Resources */,
- F0ED99371A1645C200A788CE /* Makefile.in in Resources */,
F0ED99441A1645C200A788CE /* chimes_48000_stereo.wav in Resources */,
F0ED99361A1645C200A788CE /* Makefile.am in Resources */,
F0ED99431A1645C200A788CE /* bird_44100_stereo.wav in Resources */,
@@ -1825,7 +1827,6 @@
F0ED99891A16464D00A788CE /* hello8000.wav in Resources */,
F0497F141A1C9EA000B67112 /* MainWindow.xib in Resources */,
F0ED998A1A16464D00A788CE /* laserrocket_16000_mono.wav in Resources */,
- F0ED998B1A16464D00A788CE /* Makefile.in in Resources */,
F0ED998C1A16464D00A788CE /* chimes_48000_stereo.wav in Resources */,
F03A96E81AFA157800651655 /* bc_completion in Resources */,
F0ED998D1A16464D00A788CE /* Makefile.am in Resources */,
@@ -1902,6 +1903,7 @@
files = (
22C8D0991769F8FF00DAFB4E /* filter-template.c in Sources */,
22C8D09A1769F8FF00DAFB4E /* yuv2rgb.fs in Sources */,
+ 630DCF691BBAC06400A0DDC8 /* msvideopresets.c in Sources */,
22C8D09B1769F8FF00DAFB4E /* yuv2rgb.vs in Sources */,
F02538F919794908002C30F3 /* flowcontrol.c in Sources */,
22C8D09C1769F8FF00DAFB4E /* alaw.c in Sources */,
@@ -1965,6 +1967,7 @@
22C8D0D81769F8FF00DAFB4E /* msvoip.c in Sources */,
22C8D0D91769F8FF00DAFB4E /* qosanalyzer.c in Sources */,
22C8D0DA1769F8FF00DAFB4E /* qualityindicator.c in Sources */,
+ 630DCF6D1BBAC08200A0DDC8 /* video_preset_high_fps.c in Sources */,
22C8D0DB1769F8FF00DAFB4E /* rfc3984.c in Sources */,
22C8D0DC1769F8FF00DAFB4E /* ringstream.c in Sources */,
22C8D0DD1769F8FF00DAFB4E /* scaler.c in Sources */,
@@ -1974,6 +1977,7 @@
22C8D0E01769F8FF00DAFB4E /* msopus.c in Sources */,
22C8D0ED176A079600DAFB4E /* aac-eld.c in Sources */,
1561A555178D9C71006B4B2F /* ioshardware.m in Sources */,
+ 630DCF6C1BBAC08200A0DDC8 /* rfc4103_textstream.c in Sources */,
F08272D71A7F895400BB6004 /* stun.c in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
@@ -2096,6 +2100,7 @@
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD)";
+ ENABLE_BITCODE = NO;
GCC_C_LANGUAGE_STANDARD = c99;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
@@ -2122,6 +2127,7 @@
"POSIXTIMER_INTERVAL=10000",
);
GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_INHIBIT_ALL_WARNINGS = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
HEADER_SEARCH_PATHS = (
linphone/mediastreamer2/build/iphone,
@@ -2132,6 +2138,8 @@
externals/exosip/include,
externals/speex/include,
);
+ IPHONEOS_DEPLOYMENT_TARGET = 6.0;
+ ONLY_ACTIVE_ARCH = YES;
OTHER_LDFLAGS = "-ObjC";
SDKROOT = iphoneos;
VALID_ARCHS = "arm64 armv7";
@@ -2142,6 +2150,7 @@
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD)";
+ ENABLE_BITCODE = NO;
GCC_C_LANGUAGE_STANDARD = c99;
GCC_PREPROCESSOR_DEFINITIONS = (
"_BYTE_ORDER=_LITTLE_ENDIAN",
@@ -2168,6 +2177,7 @@
);
GCC_SYMBOLS_PRIVATE_EXTERN = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_INHIBIT_ALL_WARNINGS = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
HEADER_SEARCH_PATHS = (
linphone/mediastreamer2/build/iphone,
@@ -2178,6 +2188,7 @@
externals/exosip/include,
externals/speex/include,
);
+ IPHONEOS_DEPLOYMENT_TARGET = 6.0;
OTHER_LDFLAGS = "-ObjC";
SDKROOT = iphoneos;
VALID_ARCHS = "arm64 armv7";
@@ -2530,6 +2541,7 @@
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD)";
+ ENABLE_BITCODE = NO;
GCC_C_LANGUAGE_STANDARD = c99;
GCC_PREPROCESSOR_DEFINITIONS = (
"_BYTE_ORDER=_LITTLE_ENDIAN",
@@ -2556,6 +2568,7 @@
);
GCC_SYMBOLS_PRIVATE_EXTERN = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_INHIBIT_ALL_WARNINGS = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
HEADER_SEARCH_PATHS = (
linphone/mediastreamer2/build/iphone,
@@ -2566,6 +2579,7 @@
externals/exosip/include,
externals/speex/include,
);
+ IPHONEOS_DEPLOYMENT_TARGET = 6.0;
OTHER_LDFLAGS = "-ObjC";
SDKROOT = iphoneos;
VALID_ARCHS = "arm64 armv7";
@@ -2607,13 +2621,11 @@
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
INFOPLIST_FILE = "$(SRCROOT)/linphone/mediastreamer2/tools/ios/mediastream-Info.plist";
- IPHONEOS_DEPLOYMENT_TARGET = 5.1.1;
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib",
"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins",
);
- ONLY_ACTIVE_ARCH = NO;
OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1";
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
@@ -2835,13 +2847,11 @@
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
INFOPLIST_FILE = "$(SRCROOT)/linphone/mediastreamer2/tools/ios/mediastream-Info.plist";
- IPHONEOS_DEPLOYMENT_TARGET = 5.1.1;
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib",
"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins",
);
- ONLY_ACTIVE_ARCH = NO;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
WRAPPER_EXTENSION = app;
@@ -2883,13 +2893,11 @@
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
INFOPLIST_FILE = "$(SRCROOT)/linphone/mediastreamer2/tools/ios/mediastream-Info.plist";
- IPHONEOS_DEPLOYMENT_TARGET = 5.1.1;
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib",
"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins",
);
- ONLY_ACTIVE_ARCH = NO;
OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1";
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
@@ -2944,10 +2952,8 @@
"$(SRCROOT)/../liblinphone-sdk/apple-darwin/include",
);
INFOPLIST_FILE = "mediastream-tester Tests/Info.plist";
- IPHONEOS_DEPLOYMENT_TARGET = 8.1;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
MTL_ENABLE_DEBUG_INFO = YES;
- ONLY_ACTIVE_ARCH = NO;
PRODUCT_NAME = "$(TARGET_NAME)";
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/mediastream-tester.app/mediastream-tester";
};
@@ -2992,7 +2998,6 @@
"$(SRCROOT)/../liblinphone-sdk/apple-darwin/include",
);
INFOPLIST_FILE = "mediastream-tester Tests/Info.plist";
- IPHONEOS_DEPLOYMENT_TARGET = 8.1;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
MTL_ENABLE_DEBUG_INFO = NO;
PRODUCT_NAME = "$(TARGET_NAME)";
@@ -3040,7 +3045,6 @@
"$(SRCROOT)/../liblinphone-sdk/apple-darwin/include",
);
INFOPLIST_FILE = "mediastream-tester Tests/Info.plist";
- IPHONEOS_DEPLOYMENT_TARGET = 8.1;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
MTL_ENABLE_DEBUG_INFO = NO;
PRODUCT_NAME = "$(TARGET_NAME)";
@@ -3098,13 +3102,11 @@
"$(SRCROOT)/externals/speex",
);
INFOPLIST_FILE = "$(SRCROOT)/linphone/mediastreamer2/tools/ios/mediastream-tester-Info.plist";
- IPHONEOS_DEPLOYMENT_TARGET = 8.1;
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib",
"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins",
);
- ONLY_ACTIVE_ARCH = NO;
PRODUCT_NAME = "mediastream-tester";
PROVISIONING_PROFILE = "";
SKIP_INSTALL = YES;
@@ -3160,13 +3162,11 @@
"$(SRCROOT)/externals/speex",
);
INFOPLIST_FILE = "$(SRCROOT)/linphone/mediastreamer2/tools/ios/mediastream-tester-Info.plist";
- IPHONEOS_DEPLOYMENT_TARGET = 8.1;
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib",
"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins",
);
- ONLY_ACTIVE_ARCH = NO;
OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1";
PRODUCT_NAME = "mediastream-tester";
PROVISIONING_PROFILE = "";
@@ -3224,13 +3224,11 @@
"$(SRCROOT)/externals/speex",
);
INFOPLIST_FILE = "$(SRCROOT)/linphone/mediastreamer2/tools/ios/mediastream-tester-Info.plist";
- IPHONEOS_DEPLOYMENT_TARGET = 8.1;
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib",
"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins",
);
- ONLY_ACTIVE_ARCH = NO;
OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1";
PRODUCT_NAME = "mediastream-tester";
PROVISIONING_PROFILE = "";
diff --git a/submodules/linphone b/submodules/linphone
index 8e3f9a337..c4cb4d276 160000
--- a/submodules/linphone
+++ b/submodules/linphone
@@ -1 +1 @@
-Subproject commit 8e3f9a337a7adae4e203653c8e1ff85989db9bda
+Subproject commit c4cb4d2767b126bf45cb404a83ac1b29b99a8726