diff --git a/.gitmodules b/.gitmodules index 48fa6c484..376e5dfa6 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,12 +1,6 @@ [submodule "submodules/linphone"] path = submodules/linphone - url = git://git.linphone.org/linphone.git -[submodule "submodules/externals/osip"] - path = submodules/externals/osip - url = git://git.linphone.org/osip.git -[submodule "submodules/externals/exosip"] - path = submodules/externals/exosip - url = git://git.linphone.org/exosip.git + url = git://git.linphone.org/linphone [submodule "submodules/externals/gsm"] path = submodules/externals/gsm url = git://git.linphone.org/gsm.git @@ -21,7 +15,7 @@ url = git://git.linphone.org/libilbc-rfc3951.git [submodule "submodules/externals/opencore-amr"] path = submodules/externals/opencore-amr - url = git://opencore-amr.git.sourceforge.net/gitroot/opencore-amr/opencore-amr + url = git://git.code.sf.net/p/opencore-amr/code [submodule "submodules/msamr"] path = submodules/msamr url = git://git.linphone.org/msamr.git @@ -49,3 +43,18 @@ [submodule "submodules/bcg729"] path = submodules/bcg729 url = git://git.linphone.org/bcg729.git +[submodule "submodules/belle-sip"] + path = submodules/belle-sip + url = git://git.linphone.org/belle-sip +[submodule "submodules/externals/antlr3"] + path = submodules/externals/antlr3 + url = git://git.linphone.org/antlr3.git +[submodule "submodules/externals/polarssl"] + path = submodules/externals/polarssl + url = git://git.linphone.org/polarssl.git +[submodule "submodules/externals/opus"] + path = submodules/externals/opus + url = git://git.opus-codec.org/opus.git +[submodule "submodules/externals/libxml2"] + path = submodules/externals/libxml2 + url = git://git.gnome.org/libxml2 diff --git a/Classes/ChatRoomViewController.m b/Classes/ChatRoomViewController.m index 617856b3a..3043211e4 100644 --- a/Classes/ChatRoomViewController.m +++ b/Classes/ChatRoomViewController.m @@ -320,8 +320,10 @@ static void message_status(LinphoneChatMessage* msg,LinphoneChatMessageState sta [chat setState:[NSNumber numberWithInt:state]]; [chat update]; [thiz.tableController updateChatEntry:chat]; - linphone_chat_message_set_user_data(msg, NULL); - [chat release]; // no longuer need to keep reference + if (state != LinphoneChatMessageStateInProgress) { + linphone_chat_message_set_user_data(msg, NULL); + [chat release]; // no longuer need to keep reference + } } @@ -732,6 +734,7 @@ static void message_status(LinphoneChatMessage* msg,LinphoneChatMessageState sta CGRect headerFrame = [headerView frame]; headerFrame.origin.y = 0; [headerView setFrame:headerFrame]; + [headerView setAlpha:1.0]; } // Resize & Move table view @@ -788,6 +791,7 @@ static void message_status(LinphoneChatMessage* msg,LinphoneChatMessageState sta CGRect headerFrame = [headerView frame]; headerFrame.origin.y = -headerFrame.size.height; [headerView setFrame:headerFrame]; + [headerView setAlpha:0.0]; } // Resize & Move table view diff --git a/Classes/ChatViewController.m b/Classes/ChatViewController.m index 4f52378a2..1bc923dbc 100644 --- a/Classes/ChatViewController.m +++ b/Classes/ChatViewController.m @@ -122,7 +122,7 @@ static UICompositeViewDescription *compositeDescription = nil; if ([[addressField text ]length] == 0) { // if no address is manually set, lauch address book [ContactSelection setSelectionMode:ContactSelectionModeMessage]; [ContactSelection setAddAddress:nil]; - [ContactSelection setSipFilter:TRUE]; + [ContactSelection setSipFilter: [LinphoneManager instance].contactFilter]; [ContactSelection setEmailFilter:FALSE]; [[PhoneMainView instance] changeCurrentView:[ContactsViewController compositeViewDescription] push:TRUE]; } else { diff --git a/Classes/ContactDetailsTableViewController.m b/Classes/ContactDetailsTableViewController.m index 8f49fd838..9d4d71a90 100644 --- a/Classes/ContactDetailsTableViewController.m +++ b/Classes/ContactDetailsTableViewController.m @@ -55,15 +55,15 @@ @implementation ContactDetailsTableViewController -enum _ContactSections { +typedef enum _ContactSections { ContactSections_None = 0, ContactSections_Number, ContactSections_Sip, ContactSections_Email, ContactSections_MAX -}; +} ContactSections_e; -static const int contactSections[ContactSections_MAX] = {ContactSections_None, ContactSections_Number, ContactSections_Sip, ContactSections_Email}; +static const ContactSections_e contactSections[ContactSections_MAX] = {ContactSections_None, ContactSections_Number, ContactSections_Sip, ContactSections_Email}; @synthesize footerController; @synthesize headerController; @@ -198,20 +198,32 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C CFDictionaryRef lDict = ABMultiValueCopyValueAtIndex(lMap, i); BOOL add = false; if(CFDictionaryContainsKey(lDict, kABPersonInstantMessageServiceKey)) { - if(CFStringCompare((CFStringRef)kContactSipField, CFDictionaryGetValue(lDict, kABPersonInstantMessageServiceKey), kCFCompareCaseInsensitive) == 0) { + if(CFStringCompare((CFStringRef)[LinphoneManager instance].contactSipField, CFDictionaryGetValue(lDict, kABPersonInstantMessageServiceKey), kCFCompareCaseInsensitive) == 0) { add = true; } - } else { - add = true; - } - if(add) { - Entry *entry = [[Entry alloc] initWithData:identifier]; - [subArray addObject: entry]; - [entry release]; - } - CFRelease(lDict); - } - CFRelease(lMap); + } else { //check domain + LinphoneAddress* address = linphone_address_new([(NSString*)CFDictionaryGetValue(lDict,kABPersonInstantMessageUsernameKey) UTF8String]); + if (address) { + if ([[ContactSelection getSipFilter] compare:@"*" options:NSCaseInsensitiveSearch] == NSOrderedSame) { + add = true; + } else { + NSString* domain = [NSString stringWithCString:linphone_address_get_domain(address) + encoding:[NSString defaultCStringEncoding]]; + add = [domain compare:[ContactSelection getSipFilter] options:NSCaseInsensitiveSearch] == NSOrderedSame; + } + linphone_address_destroy(address); + } else { + add = false; + } + } + if(add) { + Entry *entry = [[Entry alloc] initWithData:identifier]; + [subArray addObject: entry]; + [entry release]; + } + CFRelease(lDict); + } + CFRelease(lMap); } [dataCache addObject:subArray]; } @@ -241,6 +253,68 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C [self.tableView reloadData]; } +-(Entry *) setOrCreateSipContactEntry:(Entry *)entry withValue:(NSString*)value { + ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonInstantMessageProperty); + ABMutableMultiValueRef lMap; + if(lcMap != NULL) { + lMap = ABMultiValueCreateMutableCopy(lcMap); + CFRelease(lcMap); + } else { + lMap = ABMultiValueCreateMutable(kABStringPropertyType); + } + ABMultiValueIdentifier index; + NSError* error = NULL; + + CFStringRef keys[] = { kABPersonInstantMessageUsernameKey, kABPersonInstantMessageServiceKey}; + CFTypeRef values[] = { [value copy], [LinphoneManager instance].contactSipField }; + CFDictionaryRef lDict = CFDictionaryCreate(NULL, (const void **)&keys, (const void **)&values, 2, NULL, NULL); + if (entry) { + index = ABMultiValueGetIndexForIdentifier(lMap, [entry identifier]); + ABMultiValueReplaceValueAtIndex(lMap, lDict, index); + } else { + + CFStringRef label = (CFStringRef)[labelArray objectAtIndex:0]; + ABMultiValueAddValueAndLabel(lMap, lDict, label, &index); + } + if (!ABRecordSetValue(contact, kABPersonInstantMessageProperty, lMap, (CFErrorRef*)&error)) { + [LinphoneLogger log:LinphoneLoggerLog format:@"Can't set contact with value [%@] cause [%@]", value,[error localizedDescription]]; + } else { + if (entry == nil) { + entry = [[Entry alloc] initWithData:index]; + } + CFRelease(lDict); + /*check if message type is kept or not*/ + lcMap = ABRecordCopyValue(contact, kABPersonInstantMessageProperty); + lMap = ABMultiValueCreateMutableCopy(lcMap); + CFRelease(lcMap); + index = ABMultiValueGetIndexForIdentifier(lMap, [entry identifier]); + lDict = ABMultiValueCopyValueAtIndex(lMap,index); + if(!CFDictionaryContainsKey(lDict, kABPersonInstantMessageServiceKey)) { + /*too bad probably a gtalk number, storing uri*/ + NSString* username = CFDictionaryGetValue(lDict, kABPersonInstantMessageUsernameKey); + LinphoneAddress* address = linphone_core_interpret_url([LinphoneManager getLc] + ,[username UTF8String]); + char* uri = linphone_address_as_string_uri_only(address); + CFStringRef keys[] = { kABPersonInstantMessageUsernameKey, kABPersonInstantMessageServiceKey}; + CFTypeRef values[] = { [NSString stringWithCString:uri encoding:[NSString defaultCStringEncoding]], [LinphoneManager instance].contactSipField }; + CFDictionaryRef lDict2 = CFDictionaryCreate(NULL, (const void **)&keys, (const void **)&values, 2, NULL, NULL); + ABMultiValueReplaceValueAtIndex(lMap, lDict2, index); + if (!ABRecordSetValue(contact, kABPersonInstantMessageProperty, lMap, (CFErrorRef*)&error)) { + [LinphoneLogger log:LinphoneLoggerLog format:@"Can't set contact with value [%@] cause [%@]", value,[error localizedDescription]]; + } + CFRelease(lDict2); + linphone_address_destroy(address); + ms_free(uri); + } + CFRelease(lMap); + } + CFRelease(lDict); + + return entry; +} +-(void) setSipContactEntry:(Entry *)entry withValue:(NSString*)value { + [self setOrCreateSipContactEntry:entry withValue:value]; +} - (void)addEntry:(UITableView*)tableview section:(NSInteger)section animated:(BOOL)animated { [self addEntry:tableview section:section animated:animated value:@""]; } @@ -275,33 +349,15 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C } CFRelease(lMap); } else if(contactSections[section] == ContactSections_Sip) { - ABMultiValueIdentifier identifier; - ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonInstantMessageProperty); - ABMutableMultiValueRef lMap; - if(lcMap != NULL) { - lMap = ABMultiValueCreateMutableCopy(lcMap); - CFRelease(lcMap); - } else { - lMap = ABMultiValueCreateMutable(kABDictionaryPropertyType); - } - CFStringRef keys[] = { kABPersonInstantMessageUsernameKey, kABPersonInstantMessageServiceKey }; - CFTypeRef values[] = { [value copy], kContactSipField }; - CFDictionaryRef lDict = CFDictionaryCreate(NULL, (const void **)&keys, (const void **)&values, 1, NULL, NULL); - CFStringRef label = (CFStringRef)[labelArray objectAtIndex:0]; - if(!ABMultiValueAddValueAndLabel(lMap, lDict, label, &identifier)) { - added = false; - } - CFRelease(lDict); - - if(added && ABRecordSetValue(contact, kABPersonInstantMessageProperty, lMap, (CFErrorRef*)&error)) { - Entry *entry = [[Entry alloc] initWithData:identifier]; - [sectionArray addObject:entry]; - [entry release]; - } else { - added = false; - [LinphoneLogger log:LinphoneLoggerError format:@"Can't add entry: %@", [error localizedDescription]]; - } - CFRelease(lMap); + Entry *entry = [self setOrCreateSipContactEntry:nil withValue:value]; + if (entry) { + [sectionArray addObject:entry]; + [entry release]; + added=true; + } else { + added=false; + [LinphoneLogger log:LinphoneLoggerError format:@"Can't add entry for value: %@", value]; + } } else if(contactSections[section] == ContactSections_Email) { ABMultiValueIdentifier identifier; ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonEmailProperty); @@ -459,6 +515,7 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C [cell.detailTextField setDelegate:self]; [cell.detailTextField setAutocapitalizationType:UITextAutocapitalizationTypeNone]; [cell.detailTextField setAutocorrectionType:UITextAutocorrectionTypeNo]; + [cell setBackgroundColor:[UIColor whiteColor]]; // Background View UACellBackgroundView *selectedBackgroundView = [[[UACellBackgroundView alloc] initWithFrame:CGRectZero] autorelease]; @@ -497,7 +554,17 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C CFDictionaryRef lDict = ABMultiValueCopyValueAtIndex(lMap, index); CFStringRef valueRef = CFDictionaryGetValue(lDict, kABPersonInstantMessageUsernameKey); if(valueRef != NULL) { - value = [NSString stringWithString:(NSString*) valueRef]; + LinphoneAddress* addr=NULL; + if ([[LinphoneManager instance] lpConfigBoolForKey:@"contact_display_username_only"] + && (addr=linphone_address_new([(NSString *)valueRef UTF8String]))) { + if (linphone_address_get_username(addr)) { + value = [NSString stringWithCString:linphone_address_get_username(addr) + encoding:[NSString defaultCStringEncoding]]; + } /*else value=@""*/ + } else { + value = [NSString stringWithString:(NSString*) valueRef]; + } + if (addr) linphone_address_destroy(addr); } CFRelease(lDict); CFRelease(lMap); @@ -537,7 +604,7 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C NSMutableArray *sectionDict = [self getSectionData:[indexPath section]]; Entry *entry = [sectionDict objectAtIndex:[indexPath row]]; if (![self isEditing]) { - NSString *dest; + NSString *dest=NULL;; if(contactSections[[indexPath section]] == ContactSections_Number) { ABMultiValueRef lMap = ABRecordCopyValue(contact, kABPersonPhoneProperty); int index = ABMultiValueGetIndexForIdentifier(lMap, [entry identifier]); @@ -642,7 +709,6 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C #pragma mark - UITableViewDelegate Functions - - (void)setEditing:(BOOL)editing animated:(BOOL)animated { bool_t showEmails = [[LinphoneManager instance] lpConfigBoolForKey:@"show_contacts_emails_preference"]; // Resign keyboard @@ -657,18 +723,25 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C [self.tableView beginUpdates]; } if(editing) { + // add phony entries so that the user can add new data for (int section = 0; section < [self numberOfSectionsInTableView:[self tableView]]; ++section) { if(contactSections[section] == ContactSections_Number || contactSections[section] == ContactSections_Sip || - (showEmails && contactSections[section] == ContactSections_Email)) - [self addEntry:self.tableView section:section animated:animated]; + (showEmails && contactSections[section] == ContactSections_Email)) { + [self addEntry:self.tableView section:section animated:animated]; + } } } else { for (int section = 0; section < [self numberOfSectionsInTableView:[self tableView]]; ++section) { + // remove phony entries that were not filled by the user if(contactSections[section] == ContactSections_Number || - contactSections[section] == ContactSections_Sip || - (showEmails && contactSections[section] == ContactSections_Email)) - [self removeEmptyEntry:self.tableView section:section animated:animated]; + contactSections[section] == ContactSections_Sip || + (showEmails && contactSections[section] == ContactSections_Email)) { + [self removeEmptyEntry:self.tableView section:section animated:animated]; + if( [[self getSectionData:section] count] == 0 ) // the section is empty -> remove titles + [self.tableView reloadSections:[NSIndexSet indexSetWithIndex:section] + withRowAnimation:animated?UITableViewRowAnimationFade:UITableViewRowAnimationNone]; + } } } if(animated) { @@ -707,6 +780,8 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C } - (NSString*)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section { + if( [[self getSectionData:section] count] == 0) return nil; + if(contactSections[section] == ContactSections_Number) { return NSLocalizedString(@"Phone numbers", nil); } else if(contactSections[section] == ContactSections_Sip) { @@ -718,7 +793,7 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C } - (NSString*)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section { - return @""; + return nil; } - (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section { @@ -753,7 +828,8 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C if(value != nil) { NSMutableArray *sectionDict = [self getSectionData:[editingIndexPath section]]; Entry *entry = [sectionDict objectAtIndex:[editingIndexPath row]]; - if(contactSections[[editingIndexPath section]] == ContactSections_Number) { + ContactSections_e thesection = contactSections[[editingIndexPath section]]; + if(thesection == ContactSections_Number) { ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonPhoneProperty); ABMutableMultiValueRef lMap = ABMultiValueCreateMutableCopy(lcMap); CFRelease(lcMap); @@ -761,7 +837,7 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C ABMultiValueReplaceLabelAtIndex(lMap, (CFStringRef)(value), index); ABRecordSetValue(contact, kABPersonPhoneProperty, lMap, nil); CFRelease(lMap); - } else if(contactSections[[editingIndexPath section]] == ContactSections_Sip) { + } else if(thesection == ContactSections_Sip) { ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonInstantMessageProperty); ABMutableMultiValueRef lMap = ABMultiValueCreateMutableCopy(lcMap); CFRelease(lcMap); @@ -769,7 +845,7 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C ABMultiValueReplaceLabelAtIndex(lMap, (CFStringRef)(value), index); ABRecordSetValue(contact, kABPersonInstantMessageProperty, lMap, nil); CFRelease(lMap); - } else if(contactSections[[editingIndexPath section]] == ContactSections_Email) { + } else if(thesection == ContactSections_Email) { ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonEmailProperty); ABMutableMultiValueRef lMap = ABMultiValueCreateMutableCopy(lcMap); CFRelease(lcMap); @@ -780,6 +856,7 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C } [self.tableView beginUpdates]; [self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObject: editingIndexPath] withRowAnimation:FALSE]; + [self.tableView reloadSectionIndexTitles]; [self.tableView endUpdates]; } [editingIndexPath release]; @@ -804,14 +881,16 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C - (BOOL)textFieldShouldEndEditing:(UITextField *)textField { UIView *view = [textField superview]; // Find TableViewCell - if(view != nil && ![view isKindOfClass:[UIEditableTableViewCell class]]) view = [view superview]; + while(view != nil && ![view isKindOfClass:[UIEditableTableViewCell class]]) view = [view superview]; if(view != nil) { UIEditableTableViewCell *cell = (UIEditableTableViewCell*)view; NSIndexPath *path = [self.tableView indexPathForCell:cell]; NSMutableArray *sectionDict = [self getSectionData:[path section]]; Entry *entry = [sectionDict objectAtIndex:[path row]]; + ContactSections_e sect = contactSections[[path section]]; + NSString *value = [textField text]; - if(contactSections[[path section]] == ContactSections_Number) { + if(sect == ContactSections_Number) { ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonPhoneProperty); ABMutableMultiValueRef lMap = ABMultiValueCreateMutableCopy(lcMap); CFRelease(lcMap); @@ -819,19 +898,9 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C ABMultiValueReplaceValueAtIndex(lMap, (CFStringRef)value, index); ABRecordSetValue(contact, kABPersonPhoneProperty, lMap, nil); CFRelease(lMap); - } else if(contactSections[[path section]] == ContactSections_Sip) { - ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonInstantMessageProperty); - ABMutableMultiValueRef lMap = ABMultiValueCreateMutableCopy(lcMap); - CFRelease(lcMap); - int index = ABMultiValueGetIndexForIdentifier(lMap, [entry identifier]); - CFStringRef keys[] = { kABPersonInstantMessageUsernameKey, kABPersonInstantMessageServiceKey}; - CFTypeRef values[] = { [value copy], kContactSipField }; - CFDictionaryRef lDict = CFDictionaryCreate(NULL, (const void **)&keys, (const void **)&values, 2, NULL, NULL); - ABMultiValueReplaceValueAtIndex(lMap, lDict, index); - CFRelease(lDict); - ABRecordSetValue(contact, kABPersonInstantMessageProperty, lMap, nil); - CFRelease(lMap); - } else if(contactSections[[path section]] == ContactSections_Email) { + } else if(sect == ContactSections_Sip) { + [self setSipContactEntry:entry withValue:value]; + } else if(sect == ContactSections_Email) { ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonEmailProperty); ABMutableMultiValueRef lMap = ABMultiValueCreateMutableCopy(lcMap); CFRelease(lcMap); diff --git a/Classes/ContactsTableViewController.m b/Classes/ContactsTableViewController.m index 866b247ce..c424b1ea5 100644 --- a/Classes/ContactsTableViewController.m +++ b/Classes/ContactsTableViewController.m @@ -87,13 +87,26 @@ static void sync_address_book (ABAddressBookRef addressBook, CFDictionaryRef inf CFDictionaryRef lDict = ABMultiValueCopyValueAtIndex(lMap, i); if(CFDictionaryContainsKey(lDict, kABPersonInstantMessageServiceKey)) { CFStringRef serviceKey = CFDictionaryGetValue(lDict, kABPersonInstantMessageServiceKey); - if(CFStringCompare((CFStringRef)@"SIP", serviceKey, kCFCompareCaseInsensitive) == 0) { - add = true; - } - } else { - NSString* usernameKey = CFDictionaryGetValue(lDict, kABPersonInstantMessageUsernameKey); - if([usernameKey hasPrefix:@"sip:"]) { + CFStringRef username = username=CFDictionaryGetValue(lDict, kABPersonInstantMessageUsernameKey); + if(CFStringCompare((CFStringRef)[LinphoneManager instance].contactSipField, serviceKey, kCFCompareCaseInsensitive) == 0) { add = true; + } else { + add=false; + } + } else { + //check domain + LinphoneAddress* address = linphone_address_new([(NSString*)CFDictionaryGetValue(lDict,kABPersonInstantMessageUsernameKey) UTF8String]); + if (address) { + if ([[ContactSelection getSipFilter] compare:@"*" options:NSCaseInsensitiveSearch] == NSOrderedSame) { + add = true; + } else { + NSString* domain = [NSString stringWithCString:linphone_address_get_domain(address) + encoding:[NSString defaultCStringEncoding]]; + add = [domain compare:[ContactSelection getSipFilter] options:NSCaseInsensitiveSearch] == NSOrderedSame; + } + linphone_address_destroy(address); + } else { + add = false; } } CFRelease(lDict); diff --git a/Classes/ContactsViewController.h b/Classes/ContactsViewController.h index 00da1d3ad..c21948896 100644 --- a/Classes/ContactsViewController.h +++ b/Classes/ContactsViewController.h @@ -36,8 +36,9 @@ typedef enum _ContactSelectionMode { + (ContactSelectionMode)getSelectionMode; + (void)setAddAddress:(NSString*)address; + (NSString*)getAddAddress; -+ (void)setSipFilter:(BOOL)enable; -+ (BOOL)getSipFilter; +/* define sip filter, can be * or sip domain*/ ++ (void)setSipFilter:(NSString*) domain; ++ (NSString*)getSipFilter; + (void)setEmailFilter:(BOOL)enable; + (BOOL)getEmailFilter; diff --git a/Classes/ContactsViewController.m b/Classes/ContactsViewController.m index cf23d9d01..d3b54c122 100644 --- a/Classes/ContactsViewController.m +++ b/Classes/ContactsViewController.m @@ -27,7 +27,7 @@ static ContactSelectionMode sSelectionMode = ContactSelectionModeNone; static NSString* sAddAddress = nil; -static BOOL sSipFilter = FALSE; +static NSString* sSipFilter = nil; static BOOL sEmailFilter = FALSE; + (void)setSelectionMode:(ContactSelectionMode)selectionMode { @@ -52,11 +52,12 @@ static BOOL sEmailFilter = FALSE; return sAddAddress; } -+ (void)setSipFilter:(BOOL)enable { - sSipFilter = enable; ++ (void)setSipFilter:(NSString*)domain { + [sSipFilter release]; + sSipFilter = [domain retain]; } -+ (BOOL)getSipFilter { ++ (NSString*)getSipFilter { return sSipFilter; } @@ -197,7 +198,7 @@ static UICompositeViewDescription *compositeDescription = nil; - (void)changeView:(HistoryView)view { if(view == History_All) { - [ContactSelection setSipFilter:FALSE]; + [ContactSelection setSipFilter:nil]; [ContactSelection setEmailFilter:FALSE]; [tableController loadData]; allButton.selected = TRUE; @@ -206,7 +207,7 @@ static UICompositeViewDescription *compositeDescription = nil; } if(view == History_Linphone) { - [ContactSelection setSipFilter:TRUE]; + [ContactSelection setSipFilter:[LinphoneManager instance].contactFilter]; [ContactSelection setEmailFilter:FALSE]; [tableController loadData]; linphoneButton.selected = TRUE; diff --git a/Classes/DialerViewController.m b/Classes/DialerViewController.m index 0263d8138..a3a399688 100644 --- a/Classes/DialerViewController.m +++ b/Classes/DialerViewController.m @@ -153,6 +153,17 @@ static UICompositeViewDescription *compositeDescription = nil; [videoCameraSwitch setHidden:TRUE]; } } + +#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_6_0 // attributed string only available since iOS6 + if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) { + // fix placeholder bar color in iOS7 + UIColor *color = [UIColor grayColor]; + addressField.attributedPlaceholder = [[NSAttributedString alloc] + initWithString:addressField.placeholder + attributes:@{NSForegroundColorAttributeName: color}]; + } +#endif + } } @@ -317,7 +328,7 @@ static UICompositeViewDescription *compositeDescription = nil; - (IBAction)onAddContactClick: (id) event { [ContactSelection setSelectionMode:ContactSelectionModeEdit]; [ContactSelection setAddAddress:[addressField text]]; - [ContactSelection setSipFilter:FALSE]; + [ContactSelection setSipFilter:nil]; [ContactSelection setEmailFilter:FALSE]; ContactsViewController *controller = DYNAMIC_CAST([[PhoneMainView instance] changeCurrentView:[ContactsViewController compositeViewDescription] push:TRUE], ContactsViewController); if(controller != nil) { diff --git a/Classes/HistoryDetailsViewController.m b/Classes/HistoryDetailsViewController.m index 16454d126..ec172566a 100644 --- a/Classes/HistoryDetailsViewController.m +++ b/Classes/HistoryDetailsViewController.m @@ -281,13 +281,15 @@ static UICompositeViewDescription *compositeDescription = nil; // contact name [plainAddressLabel setText:@""]; if (addr != NULL) { - char* lAddress = linphone_address_as_string_uri_only(addr); - if(lAddress != NULL) { - [plainAddressLabel setText:[NSString stringWithUTF8String:lAddress]]; - ms_free(lAddress); - } else { - - } + if ([[LinphoneManager instance] lpConfigBoolForKey:@"contact_display_username_only"]) { + [plainAddressLabel setText:[NSString stringWithUTF8String:linphone_address_get_username(addr)?linphone_address_get_username(addr):""]]; + } else { + char* lAddress = linphone_address_as_string_uri_only(addr); + if(lAddress != NULL) { + [plainAddressLabel setText:[NSString stringWithUTF8String:lAddress]]; + ms_free(lAddress); + } + } } if (addr != NULL) { @@ -327,7 +329,7 @@ static UICompositeViewDescription *compositeDescription = nil; [ContactSelection setAddAddress:[NSString stringWithUTF8String:lAddress]]; [ContactSelection setSelectionMode:ContactSelectionModeEdit]; - [ContactSelection setSipFilter:FALSE]; + [ContactSelection setSipFilter:nil]; [ContactSelection setEmailFilter:FALSE]; ContactsViewController *controller = DYNAMIC_CAST([[PhoneMainView instance] changeCurrentView:[ContactsViewController compositeViewDescription] push:TRUE], ContactsViewController); if(controller != nil) { diff --git a/Classes/HistoryTableViewController.m b/Classes/HistoryTableViewController.m index 6091ab727..5ffe5addb 100644 --- a/Classes/HistoryTableViewController.m +++ b/Classes/HistoryTableViewController.m @@ -185,11 +185,8 @@ } if(useLinphoneAddress) { const char* lDisplayName = linphone_address_get_display_name(addr); - const char* lUserName = linphone_address_get_username(addr); - if (lDisplayName) + if (lDisplayName) displayName = [NSString stringWithUTF8String:lDisplayName]; - else if(lUserName) - displayName = [NSString stringWithUTF8String:lUserName]; } } diff --git a/Classes/LinphoneAppDelegate.m b/Classes/LinphoneAppDelegate.m index 4dc2e9923..8c500d7e3 100644 --- a/Classes/LinphoneAppDelegate.m +++ b/Classes/LinphoneAppDelegate.m @@ -144,6 +144,9 @@ [LinphoneLogger log:LinphoneLoggerLog format:@"PushNotification from launch received."]; [self processRemoteNotification:remoteNotif]; } + + [[PhoneMainView instance] updateStatusBar:nil]; + return YES; } @@ -204,6 +207,14 @@ [[LinphoneManager instance] enableAutoAnswerForCallId:callid]; else [LinphoneLogger log:LinphoneLoggerError format:@"PushNotification: does not have call-id yet, fix it !"]; + + if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) { + // iOS7 fix for notification sound not stopping. + // see http://stackoverflow.com/questions/19124882/stopping-ios-7-remote-notification-sound + [[UIApplication sharedApplication] setApplicationIconBadgeNumber: 1]; + [[UIApplication sharedApplication] setApplicationIconBadgeNumber: 0]; + } + } } } diff --git a/Classes/LinphoneCoreSettingsStore.m b/Classes/LinphoneCoreSettingsStore.m index 3c82e864d..f0ca03b67 100644 --- a/Classes/LinphoneCoreSettingsStore.m +++ b/Classes/LinphoneCoreSettingsStore.m @@ -82,17 +82,17 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); if (addr){ const char *proxy=linphone_proxy_config_get_addr(cfg); LinphoneAddress *proxy_addr=linphone_address_new(proxy); - const char *port=linphone_address_get_port(proxy_addr); + int port=linphone_address_get_port(proxy_addr); [self setString: linphone_address_get_username(addr) forKey:@"username_preference"]; [self setString: linphone_address_get_domain(addr) forKey:@"domain_preference"]; [self setInteger: linphone_proxy_config_get_expires(cfg) forKey:@"expire_preference"]; [self setString: linphone_proxy_config_get_dial_prefix(cfg) forKey:@"prefix_preference"]; if (strcmp(linphone_address_get_domain(addr),linphone_address_get_domain(proxy_addr))!=0 - || port!=NULL){ + || port>0){ char tmp[256]={0}; - if (port!=NULL) { - snprintf(tmp,sizeof(tmp)-1,"%s:%s",linphone_address_get_domain(proxy_addr),port); + if (port>0) { + snprintf(tmp,sizeof(tmp)-1,"%s:%i",linphone_address_get_domain(proxy_addr),port); }else snprintf(tmp,sizeof(tmp)-1,"%s",linphone_address_get_domain(proxy_addr)); [self setString: tmp forKey:@"proxy_preference"]; } @@ -182,7 +182,19 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); { [self transformCodecsToKeys: linphone_core_get_audio_codecs(lc)]; - [self transformCodecsToKeys: linphone_core_get_video_codecs(lc)]; + [self transformCodecsToKeys: linphone_core_get_video_codecs(lc)]; + [self setBool:linphone_core_adaptive_rate_control_enabled(lc) forKey:@"adaptive_rate_control_preference"]; + LpConfig *config = linphone_core_get_config(lc); + [self setInteger:lp_config_get_int(config, "audio", "codec_bitrate_limit", 32) forKey:@"audio_codec_bitrate_limit_preference"]; + + PayloadType *pt; + const MSList *elem; + for (elem=linphone_core_get_audio_codecs(lc);elem!=NULL;elem=elem->next){ + pt=(PayloadType*)elem->data; + if ((strcmp(pt->mime_type, "opus") == 0) || (strcmp(pt->mime_type, "mpeg4-generic") == 0)) { + pt->normal_bitrate = [self integerForKey:@"audio_codec_bitrate_limit_preference"] * 1000; + } + } } { @@ -233,6 +245,16 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); [self setBool:(pol->automatically_accept) forKey:@"accept_video_preference"]; [self setBool:linphone_core_self_view_enabled(lc) forKey:@"self_video_preference"]; [self setBool:linphone_core_video_preview_enabled(lc) forKey:@"preview_preference"]; + MSVideoSize vsize = linphone_core_get_preferred_video_size(lc); + int index; + if ((vsize.width == MS_VIDEO_SIZE_720P_W) && (vsize.height == MS_VIDEO_SIZE_720P_H)) { + index = 0; + } else if ((vsize.width == MS_VIDEO_SIZE_VGA_W) && (vsize.height == MS_VIDEO_SIZE_VGA_H)) { + index = 1; + } else { + index = 2; + } + [self setInteger:index forKey:@"video_preferred_size_preference"]; } { [self setBool:linphone_core_get_use_info_for_dtmf(lc) forKey:@"sipinfo_dtmf_preference"]; @@ -486,12 +508,19 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); pt=(PayloadType*)elem->data; NSString *pref=[LinphoneManager getPreferenceForCodec:pt->mime_type withRate:pt->clock_rate]; linphone_core_enable_payload_type(lc,pt,[self boolForKey: pref]); + if ((strcmp(pt->mime_type, "opus") == 0) || (strcmp(pt->mime_type, "mpeg4-generic") == 0)) { + pt->normal_bitrate = [self integerForKey:@"audio_codec_bitrate_limit_preference"] * 1000; + } } for (elem=linphone_core_get_video_codecs(lc);elem!=NULL;elem=elem->next){ pt=(PayloadType*)elem->data; NSString *pref=[LinphoneManager getPreferenceForCodec:pt->mime_type withRate:pt->clock_rate]; linphone_core_enable_payload_type(lc,pt,[self boolForKey: pref]); } + + LpConfig *config = linphone_core_get_config(lc); + lp_config_set_int(config, "audio", "codec_bitrate_limit", [self integerForKey:@"audio_codec_bitrate_limit_preference"]); + linphone_core_enable_adaptive_rate_control(lc, [self boolForKey:@"adaptive_rate_control_preference"]); linphone_core_set_use_info_for_dtmf(lc, [self boolForKey:@"sipinfo_dtmf_preference"]); linphone_core_set_use_rfc2833_for_dtmf(lc, [self boolForKey:@"rfc_dtmf_preference"]); @@ -529,6 +558,26 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); linphone_core_set_video_policy(lc, &policy); linphone_core_enable_self_view(lc, [self boolForKey:@"self_video_preference"]); linphone_core_enable_video_preview(lc, [self boolForKey:@"preview_preference"]); + MSVideoSize vsize; + int bw; + switch ([self integerForKey:@"video_preferred_size_preference"]) { + case 0: + MS_VIDEO_SIZE_ASSIGN(vsize, 720P); + bw = 1024 * 1024; + break; + case 1: + MS_VIDEO_SIZE_ASSIGN(vsize, VGA); + bw = 512 * 1024; + break; + case 2: + default: + MS_VIDEO_SIZE_ASSIGN(vsize, QVGA); + bw = 380 * 1024; + break; + } + linphone_core_set_preferred_video_size(lc, vsize); + [self setInteger: bw forKey:@"upload_bandwidth_preference"]; + [self setInteger: bw forKey:@"download_bandwidth_preference"]; // Primary contact NSString* displayname = [self stringForKey:@"primary_displayname_preference"]; diff --git a/Classes/LinphoneManager.h b/Classes/LinphoneManager.h index b90e36f74..da64fca6c 100644 --- a/Classes/LinphoneManager.h +++ b/Classes/LinphoneManager.h @@ -47,8 +47,6 @@ extern NSString *const kLinphoneLogsUpdate; extern NSString *const kLinphoneSettingsUpdate; extern NSString *const kLinphoneBluetoothAvailabilityUpdate; -extern NSString *const kContactSipField; - typedef enum _NetworkType { network_none = 0, network_2g, @@ -117,6 +115,7 @@ typedef struct _LinphoneManagerSounds { + (NSSet *)unsupportedCodecs; + (NSString *)getUserAgent; + - (void)startLibLinphone; - (void)destroyLibLinphone; - (BOOL)resignActive; @@ -144,6 +143,7 @@ typedef struct _LinphoneManagerSounds { - (void)lpConfigSetString:(NSString*)value forKey:(NSString*)key; - (NSString*)lpConfigStringForKey:(NSString*)key; +- (NSString*)lpConfigStringForKey:(NSString*)key withDefault:(NSString*)value; - (void)lpConfigSetString:(NSString*)value forKey:(NSString*)key forSection:(NSString*)section; - (NSString*)lpConfigStringForKey:(NSString*)key forSection:(NSString*)section; - (void)lpConfigSetInt:(NSInteger)value forKey:(NSString*)key; @@ -155,6 +155,7 @@ typedef struct _LinphoneManagerSounds { - (void)lpConfigSetBool:(BOOL)value forKey:(NSString*)key forSection:(NSString*)section; - (BOOL)lpConfigBoolForKey:(NSString*)key forSection:(NSString*)section; + @property (readonly) FastAddressBook* fastAddressBook; @property Connectivity connectivity; @property (readonly) NetworkType network; @@ -168,6 +169,8 @@ typedef struct _LinphoneManagerSounds { @property (nonatomic, assign) BOOL bluetoothAvailable; @property (nonatomic, assign) BOOL bluetoothEnabled; @property (readonly) ALAssetsLibrary *photoLibrary; +@property (readonly) NSString* contactSipField; +@property (readonly,copy) NSString* contactFilter; @end diff --git a/Classes/LinphoneManager.m b/Classes/LinphoneManager.m index 6b4a13031..7e004a1a0 100644 --- a/Classes/LinphoneManager.m +++ b/Classes/LinphoneManager.m @@ -31,7 +31,7 @@ #import "LinphoneCoreSettingsStore.h" #import "ChatModel.h" -#include "linphonecore_utils.h" +#include "linphone/linphonecore_utils.h" #include "lpconfig.h" #define LINPHONE_LOGS_MAX_ENTRY 5000 @@ -57,7 +57,7 @@ NSString *const kLinphoneMainViewChange = @"LinphoneMainViewChange"; NSString *const kLinphoneLogsUpdate = @"LinphoneLogsUpdate"; NSString *const kLinphoneSettingsUpdate = @"LinphoneSettingsUpdate"; NSString *const kLinphoneBluetoothAvailabilityUpdate = @"LinphoneBluetoothAvailabilityUpdate"; -NSString *const kContactSipField = @"SIP"; + extern void libmsilbc_init(); @@ -131,6 +131,9 @@ struct codec_name_pref_table codec_pref_table[]={ { "mp4v-es", 90000, @"mp4v-es_preference"}, { "h264", 90000, @"h264_preference"}, { "vp8", 90000, @"vp8_preference"}, + { "mpeg4-generic", 44100, @"aaceld_44k_preference"}, + { "mpeg4-generic", 22050, @"aaceld_22k_preference"}, + { "opus", 48000, @"opus_preference"}, { NULL,0,Nil } }; @@ -243,6 +246,7 @@ struct codec_name_pref_table codec_pref_table[]={ [self copyDefaultSettings]; pendindCallIdFromRemoteNotif = [[NSMutableArray alloc] init ]; photoLibrary = [[ALAssetsLibrary alloc] init]; + } return self; } @@ -490,7 +494,7 @@ static void linphone_iphone_display_status(struct _LinphoneCore * lc, const char if(log == NULL || linphone_call_log_get_status(log) == LinphoneCallMissed) { UILocalNotification *notification = [[UILocalNotification alloc] init]; notification.repeatInterval = 0; - notification.alertBody = [NSString stringWithFormat:NSLocalizedString(@"You miss %@ call", nil), address]; + notification.alertBody = [NSString stringWithFormat:NSLocalizedString(@"You missed a call from %@", nil), address]; notification.alertAction = NSLocalizedString(@"Show", nil); notification.userInfo = [NSDictionary dictionaryWithObject:[NSString stringWithUTF8String:linphone_call_log_get_call_id(log)] forKey:@"callLog"]; [[UIApplication sharedApplication] presentLocalNotificationNow:notification]; @@ -578,7 +582,7 @@ static void linphone_iphone_registration_state(LinphoneCore *lc, LinphoneProxyCo [chat setMessage:[NSString stringWithUTF8String:linphone_chat_message_get_text(msg)]]; } [chat setDirection:[NSNumber numberWithInt:1]]; - [chat setTime:[NSDate date]]; + [chat setTime:[NSDate dateWithTimeIntervalSince1970:linphone_chat_message_get_time(msg)]]; [chat setRead:[NSNumber numberWithInt:0]]; [chat create]; @@ -774,9 +778,9 @@ void networkReachabilityCallBack(SCNetworkReachabilityRef target, SCNetworkReach static LinphoneCoreVTable linphonec_vtable = { .show =NULL, - .call_state_changed =(LinphoneCallStateCb)linphone_iphone_call_state, + .call_state_changed =(LinphoneCoreCallStateChangedCb)linphone_iphone_call_state, .registration_state_changed = linphone_iphone_registration_state, - .notify_recv = NULL, + .notify_presence_recv=NULL, .new_subscription_request = NULL, .auth_info_requested = NULL, .display_status = linphone_iphone_display_status, @@ -838,6 +842,10 @@ static LinphoneCoreVTable linphonec_vtable = { ,self); linphone_core_set_user_agent(theLinphoneCore,"LinphoneIPhone", [[[NSBundle mainBundle] objectForInfoDictionaryKey:(NSString*)kCFBundleVersionKey] UTF8String]); + [_contactSipField release]; + _contactSipField = [[self lpConfigStringForKey:@"contact_im_type_value" withDefault:@"SIP"] retain]; + + fastAddressBook = [[FastAddressBook alloc] init]; linphone_core_set_root_ca(theLinphoneCore, lRootCa); @@ -937,6 +945,7 @@ static LinphoneCoreVTable linphonec_vtable = { //go directly to bg mode [self resignActive]; } + // Post event NSDictionary *dict = [NSDictionary dictionaryWithObject:[NSValue valueWithPointer:theLinphoneCore] forKey:@"core"]; @@ -969,6 +978,10 @@ static LinphoneCoreVTable linphonec_vtable = { } static int comp_call_id(const LinphoneCall* call , const char *callid) { + if (linphone_call_log_get_call_id(linphone_call_get_call_log(call)) == nil) { + ms_error ("no callid for call [%p]", call); + return 1; + } return strcmp(linphone_call_log_get_call_id(linphone_call_get_call_log(call)), callid); } @@ -1288,6 +1301,8 @@ static void audioRouteChangeListenerCallback ( if(displayName!=nil) { linphone_address_set_display_name(linphoneAddress,[displayName cStringUsingEncoding:[NSString defaultCStringEncoding]]); } + if ([[LinphoneManager instance] lpConfigBoolForKey:@"override_domain_with_default_one"]) + linphone_address_set_domain(linphoneAddress, [[[LinphoneManager instance] lpConfigStringForKey:@"domain" forSection:@"wizard"] cStringUsingEncoding:[NSString defaultCStringEncoding]]); if(transfer) { linphone_core_transfer_call(theLinphoneCore, linphone_core_get_current_call(theLinphoneCore), [address cStringUsingEncoding:[NSString defaultCStringEncoding]]); } else { @@ -1310,6 +1325,8 @@ static void audioRouteChangeListenerCallback ( if(displayName!=nil) { linphone_address_set_display_name(linphoneAddress, [displayName cStringUsingEncoding:[NSString defaultCStringEncoding]]); } + if ([[LinphoneManager instance] lpConfigBoolForKey:@"override_domain_with_default_one"]) + linphone_address_set_domain(linphoneAddress, [[[LinphoneManager instance] lpConfigStringForKey:@"domain" forSection:@"wizard"] cStringUsingEncoding:[NSString defaultCStringEncoding]]); if(transfer) { linphone_core_transfer_call(theLinphoneCore, linphone_core_get_current_call(theLinphoneCore), linphone_address_as_string_uri_only(linphoneAddress)); } else { @@ -1426,6 +1443,10 @@ static void audioRouteChangeListenerCallback ( - (NSString*)lpConfigStringForKey:(NSString*)key { return [self lpConfigStringForKey:key forSection:[NSString stringWithUTF8String:LINPHONERC_APPLICATION_KEY]]; } +- (NSString*)lpConfigStringForKey:(NSString*)key withDefault:(NSString*)defaultValue { + NSString* value = [self lpConfigStringForKey:key]; + return value?value:defaultValue; +} - (NSString*)lpConfigStringForKey:(NSString*)key forSection:(NSString *)section { if (!key) return nil; @@ -1510,4 +1531,16 @@ static void audioRouteChangeListenerCallback ( } } //else nop, keep call in paused state } +-(NSString*) contactFilter { + NSString* filter=@"*"; + if ( [self lpConfigBoolForKey:@"contact_filter_on_default_domain"]) { + LinphoneProxyConfig* proxy_cfg; + linphone_core_get_default_proxy(theLinphoneCore, &proxy_cfg); + if (proxy_cfg && linphone_proxy_config_get_addr(proxy_cfg)) { + return [NSString stringWithCString:linphone_proxy_config_get_domain(proxy_cfg) + encoding:[NSString defaultCStringEncoding]]; + } + } + return filter; +} @end diff --git a/Classes/LinphoneUI/UICallCell.h b/Classes/LinphoneUI/UICallCell.h index 8621ba4bc..b23867634 100644 --- a/Classes/LinphoneUI/UICallCell.h +++ b/Classes/LinphoneUI/UICallCell.h @@ -21,6 +21,7 @@ #include "linphonecore.h" #include "UIPauseButton.h" +#import "UITransparentTVCell.h" typedef enum _UICallCellOtherView { UICallCellOtherView_Avatar = 0, @@ -43,7 +44,7 @@ typedef enum _UICallCellOtherView { @end -@interface UICallCell : UITableViewCell { +@interface UICallCell : UITransparentTVCell { } @property (nonatomic, retain) UICallCellData *data; diff --git a/Classes/LinphoneUI/UICallCell.m b/Classes/LinphoneUI/UICallCell.m index 8d69976d7..4fe64cdc2 100644 --- a/Classes/LinphoneUI/UICallCell.m +++ b/Classes/LinphoneUI/UICallCell.m @@ -495,7 +495,10 @@ - (void)selfUpdate { UITableView *parentTable = (UITableView *)self.superview; - if(parentTable) { + + while( parentTable != nil && ![parentTable isKindOfClass:[UITableView class]] ) parentTable = (UITableView *)[parentTable superview]; + + if(parentTable != nil) { NSIndexPath *index= [parentTable indexPathForCell:self]; if(index != nil) { [parentTable reloadRowsAtIndexPaths:[[NSArray alloc] initWithObjects:index, nil] withRowAnimation:false]; diff --git a/Classes/LinphoneUI/UIChatCell.h b/Classes/LinphoneUI/UIChatCell.h index 1cc731e93..49d370c5b 100644 --- a/Classes/LinphoneUI/UIChatCell.h +++ b/Classes/LinphoneUI/UIChatCell.h @@ -19,9 +19,11 @@ #import +#import "UITransparentTVCell.h" #import "ChatModel.h" -@interface UIChatCell : UITableViewCell { + +@interface UIChatCell : UITransparentTVCell { } @property (nonatomic, retain) ChatModel *chat; diff --git a/Classes/LinphoneUI/UIChatCell.m b/Classes/LinphoneUI/UIChatCell.m index 1ecac8e96..785be72e4 100644 --- a/Classes/LinphoneUI/UIChatCell.m +++ b/Classes/LinphoneUI/UIChatCell.m @@ -116,7 +116,12 @@ if([chat isExternalImage] || [chat isInternalImage]) { [chatContentLabel setText:@""]; } else { - [chatContentLabel setText:[chat message]]; + NSString *message = [chat message]; + // shorten long messages + if([message length] > 50) + message = [[message substringToIndex:50] stringByAppendingString:@"[...]"]; + + [chatContentLabel setText:message]; } int count = [ChatModel unreadMessages:[chat remoteContact]]; @@ -156,7 +161,7 @@ if(chat != NULL) { UIView *view = [self superview]; // Find TableViewCell - if(view != nil && ![view isKindOfClass:[UITableView class]]) view = [view superview]; + while( view != nil && ![view isKindOfClass:[UITableView class]]) view = [view superview]; if(view != nil) { UITableView *tableView = (UITableView*) view; NSIndexPath *indexPath = [tableView indexPathForCell:self]; diff --git a/Classes/LinphoneUI/UIChatCell.xib b/Classes/LinphoneUI/UIChatCell.xib index e323fa21c..4defdc7b7 100644 --- a/Classes/LinphoneUI/UIChatCell.xib +++ b/Classes/LinphoneUI/UIChatCell.xib @@ -55,7 +55,7 @@ 274 - {{62, 2}, {218, 25}} + {{62, 2}, {218, 38}} @@ -92,7 +92,7 @@ 274 - {{62, 27}, {218, 33}} + {{62, 39}, {218, 21}} diff --git a/Classes/LinphoneUI/UIChatRoomCell.h b/Classes/LinphoneUI/UIChatRoomCell.h index 37b4a51e4..e043cc3d7 100644 --- a/Classes/LinphoneUI/UIChatRoomCell.h +++ b/Classes/LinphoneUI/UIChatRoomCell.h @@ -22,9 +22,10 @@ #import "ChatModel.h" #import "ChatRoomTableViewController.h" #import "UILoadingImageView.h" +#import "UITransparentTVCell.h" -@interface UIChatRoomCell : UITableViewCell { +@interface UIChatRoomCell : UITransparentTVCell { } @property (nonatomic, retain) ChatModel *chat; diff --git a/Classes/LinphoneUI/UIChatRoomCell.m b/Classes/LinphoneUI/UIChatRoomCell.m index 067cd5c78..fb8dcbcc8 100644 --- a/Classes/LinphoneUI/UIChatRoomCell.m +++ b/Classes/LinphoneUI/UIChatRoomCell.m @@ -64,6 +64,13 @@ static UIFont *CELL_FONT = nil; [messageImageView addGestureRecognizer:imageTapGestureRecognizer]; [self addSubview:innerView]; [deleteButton setAlpha:0.0f]; + + // shift message box, otherwise it will collide with the bubble + CGRect messageCoords = [messageText frame]; + messageCoords.origin.x += 5; + messageCoords.origin.y += 2; + messageCoords.size.width -= 5; + [messageText setFrame:messageCoords]; } return self; } @@ -93,19 +100,18 @@ static UIFont *CELL_FONT = nil; #pragma mark - - (void)setChat:(ChatModel *)achat { - if(chat == achat) { - return; - } - - if(chat != nil) { - [chat release]; - chat = nil; - } - - if(achat != nil) { - chat = [achat retain]; - [self update]; - } + if(chat != achat) { + if(chat != nil) { + [chat release]; + chat = nil; + } + + if(achat != nil) { + chat = [achat retain]; + } + } + [self update]; + } - (void)update { @@ -205,7 +211,7 @@ static UIFont *CELL_FONT = nil; } messageSize = [[chat message] sizeWithFont: CELL_FONT constrainedToSize: CGSizeMake(width - CELL_MESSAGE_X_MARGIN, 10000.0f) - lineBreakMode: UILineBreakModeTailTruncation]; + lineBreakMode: NSLineBreakByTruncatingTail]; } else { messageSize = CGSizeMake(CELL_IMAGE_WIDTH, CELL_IMAGE_HEIGHT); } @@ -262,7 +268,7 @@ static UIFont *CELL_FONT = nil; if(chat != NULL) { UIView *view = [self superview]; // Find TableViewCell - if(view != nil && ![view isKindOfClass:[UITableView class]]) view = [view superview]; + while(view != nil && ![view isKindOfClass:[UITableView class]]) view = [view superview]; if(view != nil) { UITableView *tableView = (UITableView*) view; NSIndexPath *indexPath = [tableView indexPathForCell:self]; diff --git a/Classes/LinphoneUI/UICompositeViewController.m b/Classes/LinphoneUI/UICompositeViewController.m index aa7237646..7a1913db0 100644 --- a/Classes/LinphoneUI/UICompositeViewController.m +++ b/Classes/LinphoneUI/UICompositeViewController.m @@ -103,7 +103,7 @@ - (void)initUICompositeViewController { viewControllerCache = [[NSMutableDictionary alloc] init]; - currentOrientation = UIDeviceOrientationUnknown; + currentOrientation = (UIInterfaceOrientation)UIDeviceOrientationUnknown; } - (id)init{ @@ -416,18 +416,18 @@ if(currentOrientation == UIDeviceOrientationUnknown) { return [UIApplication sharedApplication].statusBarOrientation; } - deviceOrientation = currentOrientation; + deviceOrientation = (UIDeviceOrientation)currentOrientation; } if (UIDeviceOrientationIsPortrait(deviceOrientation)) { if ([currentViewDescription portraitMode]) { - return deviceOrientation; + return (UIInterfaceOrientation)deviceOrientation; } else { return UIInterfaceOrientationLandscapeLeft; } } if (UIDeviceOrientationIsLandscape(deviceOrientation)) { if ([currentViewDescription landscapeMode]) { - return deviceOrientation; + return (UIInterfaceOrientation)deviceOrientation; } else { return UIInterfaceOrientationPortrait; } @@ -435,7 +435,7 @@ } else if([rotationPreference isEqualToString:@"portrait"]) { if ([currentViewDescription portraitMode]) { if (UIDeviceOrientationIsPortrait(deviceOrientation)) { - return deviceOrientation; + return (UIInterfaceOrientation)deviceOrientation; } else { if(UIInterfaceOrientationIsPortrait([UIApplication sharedApplication].statusBarOrientation)) { return [UIApplication sharedApplication].statusBarOrientation; @@ -449,7 +449,7 @@ } else if([rotationPreference isEqualToString:@"landscape"]) { if ([currentViewDescription landscapeMode]) { if (UIDeviceOrientationIsLandscape(deviceOrientation)) { - return deviceOrientation; + return (UIInterfaceOrientation)deviceOrientation; } else { if(UIInterfaceOrientationIsLandscape([UIApplication sharedApplication].statusBarOrientation)) { return [UIApplication sharedApplication].statusBarOrientation; diff --git a/Classes/LinphoneUI/UIContactCell.h b/Classes/LinphoneUI/UIContactCell.h index c94782949..a5ecc54d7 100644 --- a/Classes/LinphoneUI/UIContactCell.h +++ b/Classes/LinphoneUI/UIContactCell.h @@ -19,8 +19,9 @@ #import #import +#import "UITransparentTVCell.h" -@interface UIContactCell : UITableViewCell { +@interface UIContactCell : UITransparentTVCell { } @property (nonatomic, retain) IBOutlet UILabel* firstNameLabel; diff --git a/Classes/LinphoneUI/UIContactDetailsHeader.m b/Classes/LinphoneUI/UIContactDetailsHeader.m index 71538cffa..6c78c743b 100644 --- a/Classes/LinphoneUI/UIContactDetailsHeader.m +++ b/Classes/LinphoneUI/UIContactDetailsHeader.m @@ -140,7 +140,7 @@ + (CGFloat)height:(BOOL)editing { if(editing) { - return 160.0f; + return 170.0f; } else { return 80.0f; } @@ -206,15 +206,22 @@ [cell.detailTextField setAutocapitalizationType:UITextAutocapitalizationTypeWords]; [cell.detailTextField setAutocorrectionType:UITextAutocorrectionTypeNo]; [cell.detailTextField setKeyboardType:UIKeyboardTypeDefault]; + [cell setBackgroundColor:[UIColor whiteColor]]; } - + + // setup placeholder ABPropertyID property = [[propertyList objectAtIndex:[indexPath row]] intValue]; if(property == kABPersonFirstNameProperty) { [cell.detailTextField setPlaceholder:NSLocalizedString(@"First name", nil)]; } else if (property == kABPersonLastNameProperty) { [cell.detailTextField setPlaceholder:NSLocalizedString(@"Last name", nil)]; + } else if (property == kABPersonOrganizationProperty) { + [cell.detailTextField setPlaceholder:NSLocalizedString(@"Company name", nil)]; } + [cell.detailTextField setKeyboardType:UIKeyboardTypeDefault]; + + // setup values, if they exist if(contact) { CFStringRef lValue = ABRecordCopyValue(contact, property); if(lValue != NULL) { @@ -340,7 +347,8 @@ - (BOOL)textFieldShouldEndEditing:(UITextField *)textField { UIView *view = [textField superview]; // Find TableViewCell - if(view != nil && ![view isKindOfClass:[UIEditableTableViewCell class]]) view = [view superview]; + while(view != nil && ![view isKindOfClass:[UIEditableTableViewCell class]]) view = [view superview]; + if(view != nil) { UIEditableTableViewCell *cell = (UIEditableTableViewCell*)view; NSIndexPath *indexPath = [self.tableView indexPathForCell:cell]; diff --git a/Classes/LinphoneUI/UIEditableTableViewCell.h b/Classes/LinphoneUI/UIEditableTableViewCell.h index d4ac998c5..c75b046c8 100644 --- a/Classes/LinphoneUI/UIEditableTableViewCell.h +++ b/Classes/LinphoneUI/UIEditableTableViewCell.h @@ -18,10 +18,12 @@ */ #import +#import "UITransparentTVCell.h" -@interface UIEditableTableViewCell : UITableViewCell { +@interface UIEditableTableViewCell : UITransparentTVCell { } +@property (nonatomic, retain) IBOutlet UIView *verticalSep; @property (nonatomic, retain) IBOutlet UITextField *detailTextField; @end diff --git a/Classes/LinphoneUI/UIEditableTableViewCell.m b/Classes/LinphoneUI/UIEditableTableViewCell.m index eabd28611..1ce7eccb3 100644 --- a/Classes/LinphoneUI/UIEditableTableViewCell.m +++ b/Classes/LinphoneUI/UIEditableTableViewCell.m @@ -22,6 +22,7 @@ @implementation UIEditableTableViewCell @synthesize detailTextField; +@synthesize verticalSep; #pragma mark - Lifecycle Functions @@ -30,7 +31,6 @@ { self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; if (self) { - UIView *parent = [self.detailTextLabel superview]; self.detailTextField = [[UITextField alloc] init]; [self.detailTextField setHidden:TRUE]; [self.detailTextField setClearButtonMode: UITextFieldViewModeWhileEditing]; @@ -39,7 +39,13 @@ UIFont *font = [UIFont fontWithName:@"Helvetica-Bold" size:[UIFont systemFontSize]]; [self.detailTextLabel setFont:font]; [self.detailTextField setFont:font]; - [parent addSubview:detailTextField]; + [self.contentView addSubview:detailTextField]; + + // a vertical separator that will come between the text and detailed text + self.verticalSep = [[UIView alloc] initWithFrame:CGRectMake(80, 5, 1, 34)]; + verticalSep.backgroundColor = [UIColor lightGrayColor]; + [self.verticalSep setHidden:TRUE]; + [self.contentView addSubview:verticalSep]; } return self; } @@ -53,21 +59,32 @@ #pragma mark - View Functions - (void)layoutSubviews { - [super layoutSubviews]; - - CGRect fieldframe; - fieldframe.origin.x = 15; - fieldframe.origin.y = 0; - fieldframe.size.height = 44; - if([[self.textLabel text] length] != 0) - fieldframe.origin.x += [self.textLabel frame].size.width; - CGRect superframe = [[self.detailTextField superview]frame]; - fieldframe.size.width = superframe.size.width - fieldframe.origin.x; - [self.detailTextField setFrame:fieldframe]; - - CGRect labelFrame = [self.detailTextLabel frame]; - labelFrame.origin.x = fieldframe.origin.x; - [self.detailTextLabel setFrame:labelFrame]; + [super layoutSubviews]; + + CGRect detailEditFrame; + detailEditFrame.origin.x = 15; + detailEditFrame.origin.y = 0; + detailEditFrame.size.height = 44; + + if([[self.textLabel text] length] != 0) { + detailEditFrame.origin.x += [self.textLabel frame].size.width + 8; + + // shrink left text width by 10px + CGRect leftLabelFrame = [self.textLabel frame]; + leftLabelFrame.size.width -= 10; + [self.textLabel setFrame:leftLabelFrame]; + + // place separator between left text and detailed text + CGRect separatorFrame = [self.verticalSep frame]; + separatorFrame.origin.x = leftLabelFrame.size.width + leftLabelFrame.origin.x + 5; + [self.verticalSep setFrame:separatorFrame]; + [self.verticalSep setHidden:FALSE]; + } + + // put the detailed text edit view at the correct position + CGRect superframe = [[self.detailTextField superview] frame]; + detailEditFrame.size.width = superframe.size.width - detailEditFrame.origin.x; + [self.detailTextField setFrame:detailEditFrame]; } diff --git a/Classes/LinphoneUI/UIHistoryCell.h b/Classes/LinphoneUI/UIHistoryCell.h index 574f84484..cc1891831 100644 --- a/Classes/LinphoneUI/UIHistoryCell.h +++ b/Classes/LinphoneUI/UIHistoryCell.h @@ -19,9 +19,10 @@ #import +#import "UITransparentTVCell.h" #include "linphonecore.h" -@interface UIHistoryCell : UITableViewCell { +@interface UIHistoryCell : UITransparentTVCell { } @property (nonatomic, assign) LinphoneCallLog *callLog; diff --git a/Classes/LinphoneUI/UIHistoryCell.m b/Classes/LinphoneUI/UIHistoryCell.m index 948894570..752fe178a 100644 --- a/Classes/LinphoneUI/UIHistoryCell.m +++ b/Classes/LinphoneUI/UIHistoryCell.m @@ -81,7 +81,7 @@ if(callLog != NULL) { UIView *view = [self superview]; // Find TableViewCell - if(view != nil && ![view isKindOfClass:[UITableView class]]) view = [view superview]; + while(view != nil && ![view isKindOfClass:[UITableView class]]) view = [view superview]; if(view != nil) { UITableView *tableView = (UITableView*) view; NSIndexPath *indexPath = [tableView indexPathForCell:self]; diff --git a/Classes/LinphoneUI/UILinphone.h b/Classes/LinphoneUI/UILinphone.h index d291ff639..5b3d50d5b 100644 --- a/Classes/LinphoneUI/UILinphone.h +++ b/Classes/LinphoneUI/UILinphone.h @@ -19,7 +19,8 @@ #import -#define LINPHONE_MAIN_COLOR [UIColor colorWithRed:207.0f/255.0f green:76.0f/255.0f blue:41.0f/255.0f alpha:1.0f] +#define LINPHONE_MAIN_COLOR [UIColor colorWithRed:207.0f/255.0f green:76.0f/255.0f blue:41.0f/255.0f alpha:1.0f] +#define LINPHONE_SETTINGS_BG_IOS7 [UIColor colorWithRed:164/255. green:175/255. blue:183/255. alpha:1.0]//[UIColor colorWithWhite:0.88 alpha:1.0] #define LINPHONE_TABLE_CELL_BACKGROUND_COLOR [UIColor colorWithRed:207.0f/255.0f green:76.0f/255.0f blue:41.0f/255.0f alpha:1.0f] @interface UIColor (LightAndDark) diff --git a/Classes/LinphoneUI/UIMainBar.m b/Classes/LinphoneUI/UIMainBar.m index 5e7cbe771..18d750620 100644 --- a/Classes/LinphoneUI/UIMainBar.m +++ b/Classes/LinphoneUI/UIMainBar.m @@ -400,7 +400,7 @@ static NSString * const kDisappearAnimation = @"disappear"; - (IBAction)onContactsClick:(id)event { [ContactSelection setSelectionMode:ContactSelectionModeNone]; [ContactSelection setAddAddress:nil]; - [ContactSelection setSipFilter:FALSE]; + [ContactSelection setSipFilter:nil]; [ContactSelection setEmailFilter:FALSE]; [[PhoneMainView instance] changeCurrentView:[ContactsViewController compositeViewDescription]]; } diff --git a/Classes/LinphoneUI/UITransparentTVCell.h b/Classes/LinphoneUI/UITransparentTVCell.h new file mode 100644 index 000000000..a0318cbd4 --- /dev/null +++ b/Classes/LinphoneUI/UITransparentTVCell.h @@ -0,0 +1,24 @@ +/* UITransparentTVCell.h + * + * Copyright (C) 2012 Belledonne Comunications, Grenoble, France + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Library General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +#import + +@interface UITransparentTVCell : UITableViewCell + +@end diff --git a/Classes/LinphoneUI/UITransparentTVCell.m b/Classes/LinphoneUI/UITransparentTVCell.m new file mode 100644 index 000000000..b027a3a07 --- /dev/null +++ b/Classes/LinphoneUI/UITransparentTVCell.m @@ -0,0 +1,39 @@ +/* UITransparentTVCell.m + * + * Copyright (C) 2012 Belledonne Comunications, Grenoble, France + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Library General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +#import "UITransparentTVCell.h" + +@implementation UITransparentTVCell + +- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier +{ + self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; + if (self) { + // Set transparent background + [self setBackgroundColor:[UIColor clearColor]]; + } + return self; +} + +- (void)setSelected:(BOOL)selected animated:(BOOL)animated +{ + [super setSelected:selected animated:animated]; +} + +@end diff --git a/Classes/LinphoneUI/en.lproj/UIContactDetailsHeader.xib b/Classes/LinphoneUI/en.lproj/UIContactDetailsHeader.xib index 729262f8a..ce91e660c 100644 --- a/Classes/LinphoneUI/en.lproj/UIContactDetailsHeader.xib +++ b/Classes/LinphoneUI/en.lproj/UIContactDetailsHeader.xib @@ -194,7 +194,7 @@ IBCocoaTouchFramework - {320, 160} + {320, 170} diff --git a/Classes/PhoneMainView.h b/Classes/PhoneMainView.h index 0f62eb42d..5ddf4ed16 100644 --- a/Classes/PhoneMainView.h +++ b/Classes/PhoneMainView.h @@ -60,6 +60,7 @@ - (void)showStateBar:(BOOL)show; - (void)showTabBar:(BOOL)show; - (void)fullScreen:(BOOL)enabled; +- (void)updateStatusBar:(UICompositeViewDescription*)to_view; - (void)startUp; - (void)addInhibitedEvent:(id)event; diff --git a/Classes/PhoneMainView.m b/Classes/PhoneMainView.m index 50fd131d6..c0452853e 100644 --- a/Classes/PhoneMainView.m +++ b/Classes/PhoneMainView.m @@ -211,42 +211,24 @@ static PhoneMainView* phoneMainViewInstance=nil; [self updateApplicationBadgeNumber]; } -- (void)registrationUpdate:(NSNotification*)notif { +- (void)registrationUpdate:(NSNotification*)notif { LinphoneRegistrationState state = [[notif.userInfo objectForKey: @"state"] intValue]; LinphoneProxyConfig *cfg = [[notif.userInfo objectForKey: @"cfg"] pointerValue]; - // Show error - if (state == LinphoneRegistrationFailed) { - NSString* lErrorMessage = nil; - LinphoneReason reason = linphone_proxy_config_get_error(cfg); - if (reason == LinphoneReasonBadCredentials) { - lErrorMessage = NSLocalizedString(@"Bad credentials, check your account settings", nil); - } else if (reason == LinphoneReasonNoResponse) { - lErrorMessage = NSLocalizedString(@"SIP server unreachable", nil); - } else { - lErrorMessage = NSLocalizedString(@"Unknown error", nil); - } - - if (lErrorMessage != nil && linphone_proxy_config_get_error(cfg) != LinphoneReasonNoResponse) { - //do not report network connection issue on registration - //default behavior if no registration delegates - UIApplicationState s = [UIApplication sharedApplication].applicationState; - - // do not stack error message when going to backgroud - if (s != UIApplicationStateBackground) { - UIAlertView* error = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"Registration failure",nil) - message:lErrorMessage - delegate:nil - cancelButtonTitle:NSLocalizedString(@"Continue",nil) - otherButtonTitles:nil,nil]; - [error show]; - [error release]; - } - } - + //Only report bad credential issue + if (state == LinphoneRegistrationFailed + &&[UIApplication sharedApplication].applicationState != UIApplicationStateBackground + && linphone_proxy_config_get_error(cfg) == LinphoneReasonBadCredentials ) { + UIAlertView* error = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"Registration failure",nil) + message:NSLocalizedString(@"Bad credentials, check your account settings", nil) + delegate:nil + cancelButtonTitle:NSLocalizedString(@"Continue",nil) + otherButtonTitles:nil,nil]; + [error show]; + [error release]; } } -- (void)callUpdate:(NSNotification*)notif { +- (void)callUpdate:(NSNotification*)notif { LinphoneCall *call = [[notif.userInfo objectForKey: @"call"] pointerValue]; LinphoneCallState state = [[notif.userInfo objectForKey: @"state"] intValue]; NSString *message = [notif.userInfo objectForKey: @"message"]; @@ -390,20 +372,20 @@ static PhoneMainView* phoneMainViewInstance=nil; if([old equal:[ChatViewController compositeViewDescription]]) { if([new equal:[ContactsViewController compositeViewDescription]] || - [new equal:[DialerViewController compositeViewDescription]] || - [new equal:[SettingsViewController compositeViewDescription]] || - [new equal:[HistoryViewController compositeViewDescription]]) { + [new equal:[DialerViewController compositeViewDescription]] || + [new equal:[HistoryViewController compositeViewDescription]]) { left = true; } } else if([old equal:[SettingsViewController compositeViewDescription]]) { - if([new equal:[DialerViewController compositeViewDescription]] || + if([new equal:[DialerViewController compositeViewDescription]] || [new equal:[ContactsViewController compositeViewDescription]] || - [new equal:[HistoryViewController compositeViewDescription]]) { + [new equal:[HistoryViewController compositeViewDescription]] || + [new equal:[ChatViewController compositeViewDescription]]) { left = true; } } else if([old equal:[DialerViewController compositeViewDescription]]) { - if([new equal:[ContactsViewController compositeViewDescription]] || - [new equal:[HistoryViewController compositeViewDescription]]) { + if([new equal:[ContactsViewController compositeViewDescription]] || + [new equal:[HistoryViewController compositeViewDescription]]) { left = true; } } else if([old equal:[ContactsViewController compositeViewDescription]]) { @@ -431,6 +413,23 @@ static PhoneMainView* phoneMainViewInstance=nil; [mainViewController setStateBarHidden:!show]; } +- (void)updateStatusBar:(UICompositeViewDescription*)to_view { +#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 70000 + if ([LinphoneManager runningOnIpad]) { + // In iOS7, the ipad has a black background on dialer, so we have to adjust the + // status bar style for each transition to/from this view + BOOL toLightStatus = [to_view equal:[DialerViewController compositeViewDescription]]; + BOOL fromLightStatus = [currentView equal:[DialerViewController compositeViewDescription]]; + if( (!to_view && fromLightStatus) || // this case happens at app launch + toLightStatus ) + [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent]; + else if(fromLightStatus) + [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault]; + } +#endif +} + + - (void)fullScreen:(BOOL)enabled { [mainViewController setFullScreen:enabled]; } @@ -460,9 +459,10 @@ static PhoneMainView* phoneMainViewInstance=nil; } else { [mainViewController setViewTransition:nil]; } + [self updateStatusBar:view]; [mainViewController changeView:view]; currentView = view; - } + } NSDictionary* mdict = [NSMutableDictionary dictionaryWithObject:currentView forKey:@"view"]; [[NSNotificationCenter defaultCenter] postNotificationName:kLinphoneMainViewChange object:self userInfo:mdict]; diff --git a/Classes/SettingsViewController.m b/Classes/SettingsViewController.m index 7dacd0e1e..78d29eb4c 100644 --- a/Classes/SettingsViewController.m +++ b/Classes/SettingsViewController.m @@ -340,7 +340,12 @@ } + (void)removeBackground:(UIView*)view { - [view setBackgroundColor:[UIColor clearColor]]; + // iOS7 transparent background is *really* transparent: with an alpha != 0 + // it messes up the transitions. Use non-transparent BG for iOS7 + if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) + [view setBackgroundColor:LINPHONE_SETTINGS_BG_IOS7]; + else + [view setBackgroundColor:[UIColor clearColor]]; } - (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated { @@ -614,7 +619,6 @@ static UICompositeViewDescription *compositeDescription = nil; [hiddenKeys addObject:@"battery_alert_button"]; #endif - [hiddenKeys addObject:@"audio_advanced_group"]; [hiddenKeys addObject:@"playback_gain_preference"]; [hiddenKeys addObject:@"microphone_gain_preference"]; diff --git a/Classes/SettingsViewController.xib b/Classes/SettingsViewController.xib index afd4e8da6..20b96974d 100644 --- a/Classes/SettingsViewController.xib +++ b/Classes/SettingsViewController.xib @@ -62,6 +62,10 @@ NO + + NO + NO + 1 @@ -79,6 +83,7 @@ YES YES IBCocoaTouchFramework + NO diff --git a/Classes/Utils/FastAddressBook.m b/Classes/Utils/FastAddressBook.m index ab5f0b1a3..9831c2812 100644 --- a/Classes/Utils/FastAddressBook.m +++ b/Classes/Utils/FastAddressBook.m @@ -179,7 +179,7 @@ static void sync_address_book (ABAddressBookRef addressBook, CFDictionaryRef inf CFDictionaryRef lDict = ABMultiValueCopyValueAtIndex(lMap, i); BOOL add = false; if(CFDictionaryContainsKey(lDict, kABPersonInstantMessageServiceKey)) { - if(CFStringCompare((CFStringRef)kContactSipField, CFDictionaryGetValue(lDict, kABPersonInstantMessageServiceKey), kCFCompareCaseInsensitive) == 0) { + if(CFStringCompare((CFStringRef)[LinphoneManager instance].contactSipField, CFDictionaryGetValue(lDict, kABPersonInstantMessageServiceKey), kCFCompareCaseInsensitive) == 0) { add = true; } } else { diff --git a/Classes/Utils/GrowingTextView/HPGrowingTextView.h b/Classes/Utils/GrowingTextView/HPGrowingTextView.h index 56fc70ca5..0a8a250ed 100755 --- a/Classes/Utils/GrowingTextView/HPGrowingTextView.h +++ b/Classes/Utils/GrowingTextView/HPGrowingTextView.h @@ -27,6 +27,12 @@ #import +#if __IPHONE_OS_VERSION_MAX_ALLOWED < 60000 + // UITextAlignment is deprecated in iOS 6.0+, use NSTextAlignment instead. + // Reference: https://developer.apple.com/library/ios/documentation/uikit/reference/NSString_UIKit_Additions/Reference/Reference.html + #define NSTextAlignment UITextAlignment +#endif + @class HPGrowingTextView; @class HPTextViewInternal; @@ -60,10 +66,11 @@ int minNumberOfLines; BOOL animateHeightChange; + NSTimeInterval animationDuration; //uitextview properties NSObject *__unsafe_unretained delegate; - UITextAlignment textAlignment; + NSTextAlignment textAlignment; NSRange selectedRange; BOOL editable; UIDataDetectorTypes dataDetectorTypes; @@ -75,7 +82,12 @@ //real class properties @property int maxNumberOfLines; @property int minNumberOfLines; +@property (nonatomic) int maxHeight; +@property (nonatomic) int minHeight; @property BOOL animateHeightChange; +@property NSTimeInterval animationDuration; +@property (nonatomic, strong) NSString *placeholder; +@property (nonatomic, strong) UIColor *placeholderColor; @property (nonatomic, strong) UITextView *internalTextView; @@ -84,12 +96,13 @@ @property(nonatomic,strong) NSString *text; @property(nonatomic,strong) UIFont *font; @property(nonatomic,strong) UIColor *textColor; -@property(nonatomic) UITextAlignment textAlignment; // default is UITextAlignmentLeft +@property(nonatomic) NSTextAlignment textAlignment; // default is NSTextAlignmentLeft @property(nonatomic) NSRange selectedRange; // only ranges of length 0 are supported @property(nonatomic,getter=isEditable) BOOL editable; @property(nonatomic) UIDataDetectorTypes dataDetectorTypes __OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_3_0); @property (nonatomic) UIReturnKeyType returnKeyType; @property (assign) UIEdgeInsets contentInset; +@property (nonatomic) BOOL isScrollable; @property(nonatomic) BOOL enablesReturnKeyAutomatically; //uitextview methods @@ -101,4 +114,7 @@ - (BOOL)hasText; - (void)scrollRangeToVisible:(NSRange)range; +// call to force a height change (e.g. after you change max/min lines) +- (void)refreshHeight; + @end diff --git a/Classes/Utils/GrowingTextView/HPGrowingTextView.m b/Classes/Utils/GrowingTextView/HPGrowingTextView.m index 625a17f62..1a5166a83 100755 --- a/Classes/Utils/GrowingTextView/HPGrowingTextView.m +++ b/Classes/Utils/GrowingTextView/HPGrowingTextView.m @@ -37,15 +37,19 @@ @implementation HPGrowingTextView @synthesize internalTextView; @synthesize delegate; - +@synthesize maxHeight; +@synthesize minHeight; @synthesize font; @synthesize textColor; @synthesize textAlignment; @synthesize selectedRange; @synthesize editable; -@synthesize dataDetectorTypes; +@synthesize dataDetectorTypes; @synthesize animateHeightChange; +@synthesize animationDuration; @synthesize returnKeyType; +@dynamic placeholder; +@dynamic placeholderColor; // having initwithcoder allows us to use HPGrowingTextView in a Nib. -- aob, 9/2011 - (id)initWithCoder:(NSCoder *)aDecoder @@ -82,10 +86,14 @@ minNumberOfLines = 1; animateHeightChange = YES; + animationDuration = 0.1f; internalTextView.text = @""; [self setMaxNumberOfLines:3]; + + [self setPlaceholderColor:[UIColor lightGrayColor]]; + internalTextView.displayPlaceHolder = YES; } -(CGSize)sizeThatFits:(CGSize)size @@ -101,10 +109,9 @@ [super layoutSubviews]; CGRect r = self.bounds; - r.origin.y = contentInset.top; - r.origin.x = contentInset.left; + r.origin.y = 0; + r.origin.x = contentInset.left; r.size.width -= contentInset.left + contentInset.right; - r.size.height -= contentInset.top + contentInset.bottom; internalTextView.frame = r; } @@ -114,10 +121,9 @@ contentInset = inset; CGRect r = self.frame; - r.origin.y = contentInset.top; - r.origin.x = contentInset.left; - r.size.width -= contentInset.left + contentInset.right; - r.size.height -= contentInset.top + contentInset.bottom; + r.origin.y = inset.top - inset.bottom; + r.origin.x = inset.left; + r.size.width -= inset.left + inset.right; internalTextView.frame = r; @@ -132,6 +138,8 @@ -(void)setMaxNumberOfLines:(int)n { + if(n == 0 && maxHeight > 0) return; // the user specified a maxHeight themselves. + // Use internalTextView for height calculations, thanks to Gwynne NSString *saveText = internalTextView.text, *newText = @"-"; @@ -143,13 +151,13 @@ internalTextView.text = newText; - maxHeight = internalTextView.contentSize.height; + maxHeight = [self measureHeight]; internalTextView.text = saveText; internalTextView.hidden = NO; internalTextView.delegate = self; - //[self sizeToFit]; + [self sizeToFit]; maxNumberOfLines = n; } @@ -159,8 +167,16 @@ return maxNumberOfLines; } +- (void)setMaxHeight:(int)height +{ + maxHeight = height; + maxNumberOfLines = 0; +} + -(void)setMinNumberOfLines:(int)m { + if(m == 0 && minHeight > 0) return; // the user specified a minHeight themselves. + // Use internalTextView for height calculations, thanks to Gwynne NSString *saveText = internalTextView.text, *newText = @"-"; @@ -172,13 +188,13 @@ internalTextView.text = newText; - minHeight = internalTextView.contentSize.height; + minHeight = [self measureHeight]; internalTextView.text = saveText; internalTextView.hidden = NO; internalTextView.delegate = self; - //[self sizeToFit]; + [self sizeToFit]; minNumberOfLines = m; } @@ -188,13 +204,43 @@ return minNumberOfLines; } +- (void)setMinHeight:(int)height +{ + minHeight = height; + minNumberOfLines = 0; +} + +- (NSString *)placeholder +{ + return internalTextView.placeholder; +} + +- (void)setPlaceholder:(NSString *)placeholder +{ + [internalTextView setPlaceholder:placeholder]; +} + +- (UIColor *)placeholderColor +{ + return internalTextView.placeholderColor; +} + +- (void)setPlaceholderColor:(UIColor *)placeholderColor +{ + [internalTextView setPlaceholderColor:placeholderColor]; +} - (void)textViewDidChange:(UITextView *)textView -{ +{ + [self refreshHeight]; +} + +- (void)refreshHeight +{ //size of content, so we can set the frame of self - NSInteger newSizeH = internalTextView.contentSize.height; + NSInteger newSizeH = [self measureHeight]; if(newSizeH < minHeight || !internalTextView.hasText) newSizeH = minHeight; //not smalles than minHeight - if(newSizeH > maxHeight) newSizeH = maxHeight; // not taller than maxHeight + if (internalTextView.frame.size.height > maxHeight) newSizeH = maxHeight; // not taller than maxHeight if (internalTextView.frame.size.height != newSizeH) { @@ -212,7 +258,7 @@ if ([UIView resolveClassMethod:@selector(animateWithDuration:animations:)]) { #if __IPHONE_OS_VERSION_MAX_ALLOWED >= 40000 - [UIView animateWithDuration:0.1f + [UIView animateWithDuration:animationDuration delay:0 options:(UIViewAnimationOptionAllowUserInteraction| UIViewAnimationOptionBeginFromCurrentState) @@ -227,7 +273,7 @@ #endif } else { [UIView beginAnimations:@"" context:nil]; - [UIView setAnimationDuration:0.1f]; + [UIView setAnimationDuration:animationDuration]; [UIView setAnimationDelegate:self]; [UIView setAnimationDidStopSelector:@selector(growDidStop)]; [UIView setAnimationBeginsFromCurrentState:YES]; @@ -244,7 +290,6 @@ } } } - // if our new height is greater than the maxHeight // sets not set the height or move things @@ -260,15 +305,77 @@ internalTextView.scrollEnabled = NO; } + // scroll to caret (needed on iOS7) + if ([self respondsToSelector:@selector(snapshotViewAfterScreenUpdates:)]) + { + CGRect r = [internalTextView caretRectForPosition:internalTextView.selectedTextRange.end]; + CGFloat caretY = MAX(r.origin.y - internalTextView.frame.size.height + r.size.height + 8, 0); + if(internalTextView.contentOffset.y < caretY && r.origin.y != INFINITY) + internalTextView.contentOffset = CGPointMake(0, MIN(caretY, internalTextView.contentSize.height)); + } } + // Display (or not) the placeholder string + + BOOL wasDisplayingPlaceholder = internalTextView.displayPlaceHolder; + internalTextView.displayPlaceHolder = self.internalTextView.text.length == 0; + if (wasDisplayingPlaceholder != internalTextView.displayPlaceHolder) { + [internalTextView setNeedsDisplay]; + } + + // Tell the delegate that the text view changed - if ([delegate respondsToSelector:@selector(growingTextViewDidChange:)]) { + if ([delegate respondsToSelector:@selector(growingTextViewDidChange:)]) { [delegate growingTextViewDidChange:self]; } } +// Code from apple developer forum - @Steve Krulewitz, @Mark Marszal, @Eric Silverberg +- (CGFloat)measureHeight +{ +#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 70000 + if ([self respondsToSelector:@selector(snapshotViewAfterScreenUpdates:)]) + { + CGRect frame = internalTextView.bounds; + CGSize fudgeFactor; + // The padding added around the text on iOS6 and iOS7 is different. + fudgeFactor = CGSizeMake(10.0, 16.0); + + frame.size.height -= fudgeFactor.height; + frame.size.width -= fudgeFactor.width; + + NSMutableAttributedString* textToMeasure; + if(internalTextView.attributedText && internalTextView.attributedText.length > 0){ + textToMeasure = [[NSMutableAttributedString alloc] initWithAttributedString:internalTextView.attributedText]; + } + else{ + textToMeasure = [[NSMutableAttributedString alloc] initWithString:internalTextView.text]; + [textToMeasure addAttribute:NSFontAttributeName value:internalTextView.font range:NSMakeRange(0, textToMeasure.length)]; + } + + if ([textToMeasure.string hasSuffix:@"\n"]) + { + [textToMeasure appendAttributedString:[[NSAttributedString alloc] initWithString:@"-" attributes:@{NSFontAttributeName: internalTextView.font}]]; + } + + // NSAttributedString class method: boundingRectWithSize:options:context is + // available only on ios7.0 sdk. + CGRect size = [textToMeasure boundingRectWithSize:CGSizeMake(CGRectGetWidth(frame), MAXFLOAT) + options:NSStringDrawingUsesLineFragmentOrigin + context:nil]; + + return CGRectGetHeight(size) + fudgeFactor.height; + } + else + { + return self.internalTextView.contentSize.height; + } +#else + return self.internalTextView.contentSize.height; +#endif +} + -(void)resizeTextView:(NSInteger)newSizeH { if ([delegate respondsToSelector:@selector(growingTextView:willChangeHeight:)]) { @@ -283,15 +390,14 @@ internalTextViewFrame.origin.x = contentInset.left; internalTextViewFrame.size.width = internalTextView.contentSize.width; - internalTextView.frame = internalTextViewFrame; + if(!CGRectEqualToRect(internalTextView.frame, internalTextViewFrame)) internalTextView.frame = internalTextViewFrame; } --(void)growDidStop +- (void)growDidStop { if ([delegate respondsToSelector:@selector(growingTextView:didChangeHeight:)]) { [delegate growingTextView:self didChangeHeight:self.frame.size.height]; } - } -(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event @@ -377,12 +483,12 @@ /////////////////////////////////////////////////////////////////////////////////////////////////// --(void)setTextAlignment:(UITextAlignment)aligment +-(void)setTextAlignment:(NSTextAlignment)aligment { internalTextView.textAlignment = aligment; } --(UITextAlignment)textAlignment +-(NSTextAlignment)textAlignment { return internalTextView.textAlignment; } @@ -401,6 +507,18 @@ /////////////////////////////////////////////////////////////////////////////////////////////////// +- (void)setIsScrollable:(BOOL)isScrollable +{ + internalTextView.scrollEnabled = isScrollable; +} + +- (BOOL)isScrollable +{ + return internalTextView.scrollEnabled; +} + +/////////////////////////////////////////////////////////////////////////////////////////////////// + -(void)setEditable:(BOOL)beditable { internalTextView.editable = beditable; diff --git a/Classes/Utils/GrowingTextView/HPTextViewInternal.h b/Classes/Utils/GrowingTextView/HPTextViewInternal.h index c44ac63dc..175f4d472 100755 --- a/Classes/Utils/GrowingTextView/HPTextViewInternal.h +++ b/Classes/Utils/GrowingTextView/HPTextViewInternal.h @@ -28,7 +28,10 @@ #import -@interface HPTextViewInternal : UITextView { -} +@interface HPTextViewInternal : UITextView + +@property (nonatomic, strong) NSString *placeholder; +@property (nonatomic, strong) UIColor *placeholderColor; +@property (nonatomic) BOOL displayPlaceHolder; @end diff --git a/Classes/Utils/GrowingTextView/HPTextViewInternal.m b/Classes/Utils/GrowingTextView/HPTextViewInternal.m index 060081b22..19f561311 100755 --- a/Classes/Utils/GrowingTextView/HPTextViewInternal.m +++ b/Classes/Utils/GrowingTextView/HPTextViewInternal.m @@ -30,6 +30,10 @@ @implementation HPTextViewInternal +@synthesize placeholder; +@synthesize placeholderColor; +@synthesize displayPlaceHolder; + -(void)setText:(NSString *)text { BOOL originalValue = self.scrollEnabled; @@ -41,6 +45,11 @@ [self setScrollEnabled:originalValue]; } +- (void)setScrollable:(BOOL)isScrollable +{ + [super setScrollEnabled:isScrollable]; +} + -(void)setContentOffset:(CGPoint)s { if(self.tracking || self.decelerating){ @@ -89,7 +98,13 @@ [super setContentSize:contentSize]; } - - +- (void)drawRect:(CGRect)rect +{ + [super drawRect:rect]; + if (displayPlaceHolder && placeholder && placeholderColor) { + [placeholderColor set]; + [placeholder drawInRect:CGRectMake(8.0f, 8.0f, self.frame.size.width - 16.0f, self.frame.size.height - 16.0f) withFont:self.font]; + } +} @end diff --git a/Classes/Utils/InAppSettingsKit/Controllers/IASKAppSettingsViewController.m b/Classes/Utils/InAppSettingsKit/Controllers/IASKAppSettingsViewController.m index a6c143136..f9d7afc19 100755 --- a/Classes/Utils/InAppSettingsKit/Controllers/IASKAppSettingsViewController.m +++ b/Classes/Utils/InAppSettingsKit/Controllers/IASKAppSettingsViewController.m @@ -155,7 +155,11 @@ CGRect IASKCGRectSwap(CGRect rect); - (void) viewDidLoad { [super viewDidLoad]; if ([self isPad]) { - self.tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLineEtched; + // patch for iOS7 from https://github.com/futuretap/InAppSettingsKit/commit/66d95030cfac84f17f800056140523742b49957e +#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 70000 + if (floor(NSFoundationVersionNumber) <= NSFoundationVersionNumber_iOS_6_1) // don't use etched style on iOS 7 +#endif + self.tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLineEtched; } UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(singleTapToEndEdit:)]; tapGesture.cancelsTouchesInView = NO; @@ -446,7 +450,7 @@ CGRect IASKCGRectSwap(CGRect rect); if ((title = [self tableView:tableView titleForHeaderInSection:section])) { CGSize size = [title sizeWithFont:[UIFont boldSystemFontOfSize:[UIFont labelFontSize]] constrainedToSize:CGSizeMake(tableView.frame.size.width - 2*kIASKHorizontalPaddingGroupTitles, INFINITY) - lineBreakMode:UILineBreakModeWordWrap]; + lineBreakMode:NSLineBreakByWordWrapping]; return size.height+kIASKVerticalPaddingGroupTitles; } return 0; diff --git a/Classes/Utils/InAppSettingsKit/Models/IASKSettingsReader.h b/Classes/Utils/InAppSettingsKit/Models/IASKSettingsReader.h index 761de7546..a05ddb202 100755 --- a/Classes/Utils/InAppSettingsKit/Models/IASKSettingsReader.h +++ b/Classes/Utils/InAppSettingsKit/Models/IASKSettingsReader.h @@ -97,7 +97,13 @@ #define kIASKMinLabelWidth 97 #define kIASKMaxLabelWidth 240 #define kIASKMinValueWidth 35 -#define kIASKPaddingLeft 9 + +#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 70000 + #define kIASKPaddingLeft (floor(NSFoundationVersionNumber) > NSFoundationVersionNumber_iOS_6_1 ? 14 : 9) +#else + #define kIASKPaddingLeft 9 +#endif + #define kIASKPaddingRight 10 #define kIASKHorizontalPaddingGroupTitles 19 #define kIASKVerticalPaddingGroupTitles 15 diff --git a/Classes/Utils/InAppSettingsKit/Views/IASKPSTitleValueSpecifierViewCell.m b/Classes/Utils/InAppSettingsKit/Views/IASKPSTitleValueSpecifierViewCell.m index 1b7cd98a3..1af806879 100755 --- a/Classes/Utils/InAppSettingsKit/Views/IASKPSTitleValueSpecifierViewCell.m +++ b/Classes/Utils/InAppSettingsKit/Views/IASKPSTitleValueSpecifierViewCell.m @@ -32,16 +32,16 @@ CGFloat labelWidth = [self.textLabel sizeThatFits:CGSizeZero].width; CGFloat minValueWidth = (self.detailTextLabel.text.length) ? kIASKMinValueWidth + kIASKSpacing : 0; labelWidth = MIN(labelWidth, viewSize.width - minValueWidth - kIASKPaddingLeft -kIASKPaddingRight - imageOffset); - CGRect labelFrame = CGRectMake(kIASKPaddingLeft + imageOffset, 0, labelWidth, viewSize.height -2); + CGRect labelFrame = CGRectMake(kIASKPaddingLeft + imageOffset, 0, labelWidth, viewSize.height); if (!self.detailTextLabel.text.length) { - labelFrame = CGRectMake(kIASKPaddingLeft + imageOffset, 0, viewSize.width - kIASKPaddingLeft - kIASKPaddingRight - imageOffset, viewSize.height -2); + labelFrame = CGRectMake(kIASKPaddingLeft + imageOffset, 0, viewSize.width - kIASKPaddingLeft - kIASKPaddingRight - imageOffset, viewSize.height); } self.textLabel.frame = labelFrame; // set the right value label frame if (!self.textLabel.text.length) { viewSize = [self.detailTextLabel superview].frame.size; - self.detailTextLabel.frame = CGRectMake(kIASKPaddingLeft + imageOffset, 0, viewSize.width - kIASKPaddingLeft - kIASKPaddingRight - imageOffset, viewSize.height -2); + self.detailTextLabel.frame = CGRectMake(kIASKPaddingLeft + imageOffset, 0, viewSize.width - kIASKPaddingLeft - kIASKPaddingRight - imageOffset, viewSize.height); } else if (self.detailTextLabel.textAlignment == UITextAlignmentLeft) { CGRect valueFrame = self.detailTextLabel.frame; valueFrame.origin.x = labelFrame.origin.x + MAX(kIASKMinLabelWidth - imageOffset, labelWidth) + kIASKSpacing; diff --git a/Classes/Utils/UACellBackgroundView/UACellBackgroundView.m b/Classes/Utils/UACellBackgroundView/UACellBackgroundView.m index f5b043489..d58d03fef 100644 --- a/Classes/Utils/UACellBackgroundView/UACellBackgroundView.m +++ b/Classes/Utils/UACellBackgroundView/UACellBackgroundView.m @@ -83,16 +83,16 @@ static void addRoundedRectToPath(CGContextRef context, CGRect rect, float ovalWi // Auto found position // - UIView *view = [self superview]; // Find TableViewCell - if(view != nil && ![view isKindOfClass:[UITableView class]]) view = [view superview]; + UIView *view = [self superview]; + while( view != nil && ![view isKindOfClass:[UITableView class]] ) view = [view superview]; - UIView *cellView = [self superview]; // Find TableViewCell - if(cellView != nil && ![cellView isKindOfClass:[UITableViewCell class]]) cellView = [cellView superview]; + UIView *cellView = [self superview]; + while( cellView != nil && ![cellView isKindOfClass:[UITableViewCell class]] ) cellView = [cellView superview]; if(view != nil && cellView != nil) { - UITableViewCell *cell = (UITableViewCell*)cellView; + UITableViewCell *cell = (UITableViewCell*)cellView; UITableView *tableView = (UITableView*)view; if([tableView style] == UITableViewStyleGrouped) { @@ -122,7 +122,9 @@ static void addRoundedRectToPath(CGContextRef context, CGRect rect, float ovalWi - (void)drawRect:(CGRect)aRect { // Drawing code - CGContextRef c = UIGraphicsGetCurrentContext(); + CGContextRef c = UIGraphicsGetCurrentContext(); + // don't use arcs on iOS >= 7 + BOOL use_arcs = [[[UIDevice currentDevice] systemVersion] floatValue] < 7; int lineWidth = 1; @@ -140,8 +142,8 @@ static void addRoundedRectToPath(CGContextRef context, CGRect rect, float ovalWi CGContextSetLineWidth(c, lineWidth); CGContextSetAllowsAntialiasing(c, YES); CGContextSetShouldAntialias(c, YES); - - if (position == UACellBackgroundViewPositionTop) { + + if (position == UACellBackgroundViewPositionTop && use_arcs) { miny += 1; @@ -166,7 +168,7 @@ static void addRoundedRectToPath(CGContextRef context, CGRect rect, float ovalWi CGContextStrokePath(c); CGContextRestoreGState(c); - } else if (position == UACellBackgroundViewPositionBottom) { + } else if (position == UACellBackgroundViewPositionBottom && use_arcs) { CGMutablePathRef path = CGPathCreateMutable(); CGPathMoveToPoint(path, NULL, minx, miny); @@ -190,8 +192,8 @@ static void addRoundedRectToPath(CGContextRef context, CGRect rect, float ovalWi CGContextRestoreGState(c); - } else if (position == UACellBackgroundViewPositionMiddle) { - + } else if (position == UACellBackgroundViewPositionMiddle || !use_arcs) { + // in iOS7, this will be the default handling CGMutablePathRef path = CGPathCreateMutable(); CGPathMoveToPoint(path, NULL, minx, miny); CGPathAddLineToPoint(path, NULL, maxx, miny); diff --git a/Classes/en.lproj/InCallViewController.xib b/Classes/en.lproj/InCallViewController.xib index a35dfab43..91506d255 100644 --- a/Classes/en.lproj/InCallViewController.xib +++ b/Classes/en.lproj/InCallViewController.xib @@ -2,13 +2,13 @@ 784 - 11E53 - 2840 - 1138.47 - 569.00 + 12D78 + 3084 + 1187.37 + 626.00 com.apple.InterfaceBuilder.IBCocoaTouchPlugin - 1926 + 2083 YES @@ -52,6 +52,7 @@ 301 {{-1000, -1000}, {2000, 2000}} + _NS:9 @@ -65,6 +66,7 @@ 274 {320, 460} + _NS:196 @@ -76,11 +78,12 @@ 283 - {{220, 360}, {100, 100}} + {{216, 324}, {96, 128}} + - 1 + 2 IBCocoaTouchFramework @@ -88,6 +91,7 @@ 301 {{141, 212}, {37, 37}} + _NS:1030 NO @@ -99,6 +103,7 @@ {320, 460} + _NS:196 @@ -109,6 +114,7 @@ 274 {{0, -10}, {320, 480}} + _NS:418 @@ -139,6 +145,7 @@ -2147483356 {{20, 40}, {85, 33}} + _NS:9 NO @@ -174,6 +181,7 @@ {320, 460} + NO @@ -440,7 +448,120 @@ 173 - + + + YES + + InCallTableViewController + UITableViewController + + IBProjectSource + ./Classes/InCallTableViewController.h + + + + InCallViewController + UIViewController + + YES + + YES + callTableController + callTableView + testVideoView + videoCameraSwitch + videoGroup + videoPreview + videoView + videoWaitingForFirstImage + + + YES + InCallTableViewController + UITableView + UIView + UICamSwitch + UIView + UIView + UIView + UIActivityIndicatorView + + + + YES + + YES + callTableController + callTableView + testVideoView + videoCameraSwitch + videoGroup + videoPreview + videoView + videoWaitingForFirstImage + + + YES + + callTableController + InCallTableViewController + + + callTableView + UITableView + + + testVideoView + UIView + + + videoCameraSwitch + UICamSwitch + + + videoGroup + UIView + + + videoPreview + UIView + + + videoView + UIView + + + videoWaitingForFirstImage + UIActivityIndicatorView + + + + + IBProjectSource + ./Classes/InCallViewController.h + + + + UICamSwitch + UIButton + + preview + UIView + + + preview + + preview + UIView + + + + IBProjectSource + ./Classes/UICamSwitch.h + + + + 0 IBCocoaTouchFramework @@ -466,6 +587,6 @@ {151, 51} - 1926 + 2083 diff --git a/Classes/fr.lproj/InCallViewController.xib b/Classes/fr.lproj/InCallViewController.xib index e5a97fb30..fc534158d 100644 --- a/Classes/fr.lproj/InCallViewController.xib +++ b/Classes/fr.lproj/InCallViewController.xib @@ -2,22 +2,22 @@ 784 - 11E53 - 1938 - 1138.47 - 569.00 + 12D78 + 3084 + 1187.37 + 626.00 com.apple.InterfaceBuilder.IBCocoaTouchPlugin - 933 + 2083 YES - IBUITableView - IBUIButton - IBUIActivityIndicatorView - IBUIView - IBUITableViewController IBProxyObject + IBUIActivityIndicatorView + IBUIButton + IBUITableView + IBUITableViewController + IBUIView YES @@ -76,11 +76,11 @@ 283 - {{220, 360}, {100, 100}} + {{216, 324}, {96, 128}} - 1 + 2 IBCocoaTouchFramework @@ -405,7 +405,7 @@ 173.IBPluginDependency 9.IBPluginDependency - + YES InCallViewController com.apple.InterfaceBuilder.IBCocoaTouchPlugin @@ -439,7 +439,120 @@ 173 - + + + YES + + InCallTableViewController + UITableViewController + + IBProjectSource + ./Classes/InCallTableViewController.h + + + + InCallViewController + UIViewController + + YES + + YES + callTableController + callTableView + testVideoView + videoCameraSwitch + videoGroup + videoPreview + videoView + videoWaitingForFirstImage + + + YES + InCallTableViewController + UITableView + UIView + UICamSwitch + UIView + UIView + UIView + UIActivityIndicatorView + + + + YES + + YES + callTableController + callTableView + testVideoView + videoCameraSwitch + videoGroup + videoPreview + videoView + videoWaitingForFirstImage + + + YES + + callTableController + InCallTableViewController + + + callTableView + UITableView + + + testVideoView + UIView + + + videoCameraSwitch + UICamSwitch + + + videoGroup + UIView + + + videoPreview + UIView + + + videoView + UIView + + + videoWaitingForFirstImage + UIActivityIndicatorView + + + + + IBProjectSource + ./Classes/InCallViewController.h + + + + UICamSwitch + UIButton + + preview + UIView + + + preview + + preview + UIView + + + + IBProjectSource + ./Classes/UICamSwitch.h + + + + 0 IBCocoaTouchFramework @@ -459,12 +572,12 @@ switch_camera_default.png switch_camera_over.png - + YES {151, 51} {151, 51} - 933 + 2083 diff --git a/Classes/ru.lproj/InCallViewController.xib b/Classes/ru.lproj/InCallViewController.xib index 8ed22898e..df9b92da6 100644 --- a/Classes/ru.lproj/InCallViewController.xib +++ b/Classes/ru.lproj/InCallViewController.xib @@ -2,13 +2,13 @@ 784 - 12C60 - 2844 - 1187.34 - 625.00 + 12D78 + 3084 + 1187.37 + 626.00 com.apple.InterfaceBuilder.IBCocoaTouchPlugin - 1930 + 2083 YES @@ -76,11 +76,11 @@ 283 - {{220, 360}, {100, 100}} + {{216, 324}, {96, 128}} - 1 + 2 IBCocoaTouchFramework @@ -439,7 +439,120 @@ 173 - + + + YES + + InCallTableViewController + UITableViewController + + IBProjectSource + ./Classes/InCallTableViewController.h + + + + InCallViewController + UIViewController + + YES + + YES + callTableController + callTableView + testVideoView + videoCameraSwitch + videoGroup + videoPreview + videoView + videoWaitingForFirstImage + + + YES + InCallTableViewController + UITableView + UIView + UICamSwitch + UIView + UIView + UIView + UIActivityIndicatorView + + + + YES + + YES + callTableController + callTableView + testVideoView + videoCameraSwitch + videoGroup + videoPreview + videoView + videoWaitingForFirstImage + + + YES + + callTableController + InCallTableViewController + + + callTableView + UITableView + + + testVideoView + UIView + + + videoCameraSwitch + UICamSwitch + + + videoGroup + UIView + + + videoPreview + UIView + + + videoView + UIView + + + videoWaitingForFirstImage + UIActivityIndicatorView + + + + + IBProjectSource + ./Classes/InCallViewController.h + + + + UICamSwitch + UIButton + + preview + UIView + + + preview + + preview + UIView + + + + IBProjectSource + ./Classes/UICamSwitch.h + + + + 0 IBCocoaTouchFramework @@ -465,6 +578,6 @@ {151, 51} - 1930 + 2083 diff --git a/README b/README index 5271e31cf..2dca42667 100644 --- a/README +++ b/README @@ -12,10 +12,10 @@ Make sure that /opt/local/bin (macport tools) arrives first in your PATH env var Once xcode and macports are installed, open a terminal and install the required build-time tools with: - $ sudo port install coreutils automake autoconf libtool intltool wget pkgconfig cmake gmake yasm grep doxygen ImageMagick optipng + $ sudo port install coreutils automake autoconf libtool intltool wget pkgconfig cmake gmake yasm grep doxygen ImageMagick optipng antlr3 -Install gas-preprosessor.pl (http://github.com/yuvi/gas-preprocessor/ ) to be copied into /opt/local/bin : +Install gas-preprosessor.pl version above Jully 2013 (http://github.com/yuvi/gas-preprocessor/ ) to be copied into /opt/local/bin : $ wget --no-check-certificate https://raw.github.com/yuvi/gas-preprocessor/master/gas-preprocessor.pl $ sudo mv gas-preprocessor.pl /opt/local/bin/. @@ -45,8 +45,8 @@ BUILDING THE SDK $ cd submodules/build $ make all - ALTERNATIVELY, you can force liblinphone to use only non GPL code except for liblinphone, mediastremer2, ortp, exosip, osip. - If you choose this flavor, your final application is still subject to GPL except if you have a commercial license for liblinphone, mediastremer2, ortp, exosip, osip. + ALTERNATIVELY, you can force liblinphone to use only non GPL code except for liblinphone, mediastremer2, ortp, belle-sip. + If you choose this flavor, your final application is still subject to GPL except if you have a commercial license for liblinphone, mediastremer2, ortp, belle-sip. To generate the liblinphone multi arch sdkin non GPL mode, do: $ cd submodules/build @@ -89,7 +89,19 @@ LIMITATIONS, KNOWN BUGS *********************** * Video capture does not work in simulator (not implemented by simulator ?). -* Sound does not work well (or at all) in simulator +DEBUGING THE SDK +**************** +Sometime it can be usefull to step into liblinphone SDK funtions. To allow xcode to enable breakpoint whithin liblinphone, SDK must be built with debug symbols. +To add debug symbol to liblinphone SDK, add make option "enable_debug=yes". + $ make make all enable_gpl_third_parties=no enable_debug=yes + + +DEBUGING MEDIASTREMMER2 +*********************** +For IOS specicific media development like audio video capture/playback it may be interresting to use mediastream test tool. +The project submodule/liblinphone.xcodeproj can be used for this purpose. + +**************** diff --git a/Resources/en.lproj/Localizable.strings b/Resources/en.lproj/Localizable.strings index dac8513d6..a234b39a5 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 ad06fb41f..0e132d408 100644 Binary files a/Resources/fr.lproj/Localizable.strings and b/Resources/fr.lproj/Localizable.strings differ diff --git a/Resources/linphone_icon_120.png b/Resources/linphone_icon_120.png new file mode 100644 index 000000000..eb43effe4 Binary files /dev/null and b/Resources/linphone_icon_120.png differ diff --git a/Resources/linphone_icon_152.png b/Resources/linphone_icon_152.png new file mode 100644 index 000000000..2cd0dc749 Binary files /dev/null and b/Resources/linphone_icon_152.png differ diff --git a/Resources/linphone_icon_76.png b/Resources/linphone_icon_76.png new file mode 100644 index 000000000..c324627c1 Binary files /dev/null and b/Resources/linphone_icon_76.png differ diff --git a/Resources/linphonerc b/Resources/linphonerc index 560a9780a..992f3b19c 100644 --- a/Resources/linphonerc +++ b/Resources/linphonerc @@ -19,6 +19,8 @@ automatically_accept=0 [net] firewall_policy=0 +download_bw=380 +upload_bw=380 [app] rotation_preference=auto diff --git a/Resources/linphonerc-factory b/Resources/linphonerc-factory index c142d6948..8cc8260f8 100644 --- a/Resources/linphonerc-factory +++ b/Resources/linphonerc-factory @@ -1,6 +1,4 @@ [net] -download_bw=380 -upload_bw=380 mtu=1300 activate_edge_workarounds=0 edge_ping_time=10 @@ -35,15 +33,19 @@ max_calls=3 [wizard] service_url=https://www.linphone.org/wizard.php domain=sip.linphone.org -proxy=sip.linphone.org:5228 +proxy=sip.linphone.org:5223 password_length=6 username_length=4 expires=604800 push_notification=1 -transport=tcp +transport=tls sharing_server=https://www.linphone.org:444/upload.php ice=1 stun=stun.linphone.org [video] display_filter_auto_rotate=0 + +[app] +#contact_display_username_only=1 +#contact_filter_on_default_domain=1 diff --git a/Resources/linphonerc-factory~ipad b/Resources/linphonerc-factory~ipad index 84625024e..2db493416 100644 --- a/Resources/linphonerc-factory~ipad +++ b/Resources/linphonerc-factory~ipad @@ -1,6 +1,4 @@ [net] -download_bw=512 -upload_bw=512 mtu=1300 activate_edge_workarounds=0 edge_ping_time=200 diff --git a/Resources/linphonerc~ipad b/Resources/linphonerc~ipad index 4efe5a33e..cf9188553 100644 --- a/Resources/linphonerc~ipad +++ b/Resources/linphonerc~ipad @@ -19,6 +19,8 @@ automatically_accept=0 [net] firewall_policy=0 +download_bw=512 +upload_bw=512 [app] rotation_preference=auto diff --git a/Resources/ru.lproj/Localizable.strings b/Resources/ru.lproj/Localizable.strings index 7712490f2..36873bfbb 100644 Binary files a/Resources/ru.lproj/Localizable.strings and b/Resources/ru.lproj/Localizable.strings differ diff --git a/Settings/InAppSettings.bundle/Audio.plist b/Settings/InAppSettings.bundle/Audio.plist index 422f9fc29..6c57f74f1 100644 --- a/Settings/InAppSettings.bundle/Audio.plist +++ b/Settings/InAppSettings.bundle/Audio.plist @@ -30,6 +30,16 @@ Type PSToggleSwitchSpecifier + + DefaultValue + + Key + opus_preference + Title + Opus 48kHz + Type + PSToggleSwitchSpecifier + DefaultValue @@ -50,6 +60,28 @@ Type PSToggleSwitchSpecifier + + DefaultValue + + Key + aaceld_22k_preference + Title + AAC-ELD 22kHz + Type + PSToggleSwitchSpecifier + + + New item + + DefaultValue + + Key + aaceld_44k_preference + Title + AAC-ELD 44kHz + Type + PSToggleSwitchSpecifier + DefaultValue @@ -156,6 +188,44 @@ IASKTextAlignment IASKUITextAlignmentRight + + DefaultValue + + Key + adaptive_rate_control_preference + Title + Adaptive rate control + Type + PSToggleSwitchSpecifier + + + DefaultValue + 32 + Key + audio_codec_bitrate_limit_preference + Title + Codec bitrate limit + Titles + + 10 kbits/s + 15 kbits/s + 20 kbits/s + 32 kbits/s + 64 kbits/s + 128 kbits/s + + Type + PSMultiValueSpecifier + Values + + 10 + 15 + 20 + 32 + 64 + 128 + + diff --git a/Settings/InAppSettings.bundle/Video.plist b/Settings/InAppSettings.bundle/Video.plist index 77aa2e894..dfcd404b4 100644 --- a/Settings/InAppSettings.bundle/Video.plist +++ b/Settings/InAppSettings.bundle/Video.plist @@ -40,6 +40,28 @@ Key preview_preference + + DefaultValue + 1 + Key + video_preferred_size_preference + Title + Preferred video size + Titles + + HD (960x720) + VGA (640x480) + QVGA (320x240) + + Type + PSMultiValueSpecifier + Values + + 0 + 1 + 2 + + Title Codecs diff --git a/Settings/InAppSettings.bundle/en.lproj/Audio.strings b/Settings/InAppSettings.bundle/en.lproj/Audio.strings index cf7f76b96..4384de768 100644 --- a/Settings/InAppSettings.bundle/en.lproj/Audio.strings +++ b/Settings/InAppSettings.bundle/en.lproj/Audio.strings @@ -41,4 +41,10 @@ "Playback gain" = "Playback gain"; /* Microphone gain */ -"Microphone gain" = "Microphone gain"; \ No newline at end of file +"Microphone gain" = "Microphone gain"; + +/* Adaptive rate control */ +"Adaptive rate control" = "Adaptive rate control"; + +/* Codec bitrate limit */ +"Codec bitrate limit" = "Codec bitrate limit"; diff --git a/Settings/InAppSettings.bundle/en.lproj/Video.strings b/Settings/InAppSettings.bundle/en.lproj/Video.strings index 9ef83a74b..3d8acf107 100644 --- a/Settings/InAppSettings.bundle/en.lproj/Video.strings +++ b/Settings/InAppSettings.bundle/en.lproj/Video.strings @@ -10,6 +10,9 @@ /* Show preview */ "Show preview" = "Show preview"; +/* Preferred video size */ +"Preferred video size" = "Preferred video size"; + /* Codecs */ "Codecs" = "Codecs"; diff --git a/Settings/InAppSettings.bundle/fr.lproj/Audio.strings b/Settings/InAppSettings.bundle/fr.lproj/Audio.strings index a86837e4a..c90dc9783 100644 --- a/Settings/InAppSettings.bundle/fr.lproj/Audio.strings +++ b/Settings/InAppSettings.bundle/fr.lproj/Audio.strings @@ -41,4 +41,10 @@ "Playback gain" = "Gain sortie"; /* Microphone gain */ -"Microphone gain" = "Gain microphone"; \ No newline at end of file +"Microphone gain" = "Gain microphone"; + +/* Adaptive rate control */ +"Adaptive rate control" = "Contrôle de débit"; + +/* Codec bitrate limit */ +"Codec bitrate limit" = "Limite de débit du codec"; diff --git a/Settings/InAppSettings.bundle/fr.lproj/Video.strings b/Settings/InAppSettings.bundle/fr.lproj/Video.strings index 1bb62cc49..0109509a5 100644 --- a/Settings/InAppSettings.bundle/fr.lproj/Video.strings +++ b/Settings/InAppSettings.bundle/fr.lproj/Video.strings @@ -10,6 +10,9 @@ /* Show preview */ "Show preview" = "Activer la prévisualisation"; +/* Preferred video size */ +"Preferred video size" = "Taille de vidéo préférée"; + /* Codecs */ "Codecs" = "Codecs"; diff --git a/Settings/InAppSettings.bundle/ru.lproj/Audio.strings b/Settings/InAppSettings.bundle/ru.lproj/Audio.strings index d1aeb96f3..2b325e3ae 100644 --- a/Settings/InAppSettings.bundle/ru.lproj/Audio.strings +++ b/Settings/InAppSettings.bundle/ru.lproj/Audio.strings @@ -41,4 +41,10 @@ "Playback gain" = "Усиление воспроизведения"; /* Microphone gain */ -"Microphone gain" = "Усиление микрофона"; \ No newline at end of file +"Microphone gain" = "Усиление микрофона"; + +/* Adaptive rate control */ +"Adaptive rate control" = "Adaptive rate control"; + +/* Codec bitrate limit */ +"Codec bitrate limit" = "Codec bitrate limit"; diff --git a/Settings/InAppSettings.bundle/ru.lproj/Video.strings b/Settings/InAppSettings.bundle/ru.lproj/Video.strings index 529d88d98..1e5d2b36e 100644 --- a/Settings/InAppSettings.bundle/ru.lproj/Video.strings +++ b/Settings/InAppSettings.bundle/ru.lproj/Video.strings @@ -10,6 +10,9 @@ /* Show preview */ "Show preview" = "Предварительный просмотр"; +/* Preferred video size */ +"Preferred video size" = "Preferred video size"; + /* Codecs */ "Codecs" = "Кодеки"; diff --git a/liblinphone-tutorials/hello-world/hello-world.xcodeproj/project.pbxproj b/liblinphone-tutorials/hello-world/hello-world.xcodeproj/project.pbxproj index 2aa526a1c..0624e7e05 100755 --- a/liblinphone-tutorials/hello-world/hello-world.xcodeproj/project.pbxproj +++ b/liblinphone-tutorials/hello-world/hello-world.xcodeproj/project.pbxproj @@ -7,6 +7,39 @@ objects = { /* Begin PBXBuildFile section */ + 154E1A941715638900A0D168 /* libmediastreamer_base.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A931715638900A0D168 /* libmediastreamer_base.a */; }; + 154E1A961715639A00A0D168 /* libmediastreamer_voip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A951715639A00A0D168 /* libmediastreamer_voip.a */; }; + 154E1A981715642E00A0D168 /* libavutil.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A971715642E00A0D168 /* libavutil.a */; }; + 154E1A9A1715644400A0D168 /* libavcodec.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A991715644400A0D168 /* libavcodec.a */; }; + 154E1A9C1715645F00A0D168 /* libswscale.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A9B1715645F00A0D168 /* libswscale.a */; }; + 154E1A9D171564B500A0D168 /* libavcodec.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A991715644400A0D168 /* libavcodec.a */; }; + 154E1A9E171564B500A0D168 /* libavcodec.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A991715644400A0D168 /* libavcodec.a */; }; + 154E1A9F171564B600A0D168 /* libavcodec.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A991715644400A0D168 /* libavcodec.a */; }; + 154E1AA0171564BA00A0D168 /* libavutil.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A971715642E00A0D168 /* libavutil.a */; }; + 154E1AA1171564BA00A0D168 /* libavutil.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A971715642E00A0D168 /* libavutil.a */; }; + 154E1AA2171564BA00A0D168 /* libavutil.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A971715642E00A0D168 /* libavutil.a */; }; + 154E1AA3171564C100A0D168 /* libilbc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFED14C41EBA00E1BC69 /* libilbc.a */; }; + 154E1AA4171564C100A0D168 /* libilbc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFED14C41EBA00E1BC69 /* libilbc.a */; }; + 154E1AA5171564C200A0D168 /* libilbc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFED14C41EBA00E1BC69 /* libilbc.a */; }; + 154E1AA6171564C600A0D168 /* libmediastreamer_base.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A931715638900A0D168 /* libmediastreamer_base.a */; }; + 154E1AA7171564C600A0D168 /* libmediastreamer_base.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A931715638900A0D168 /* libmediastreamer_base.a */; }; + 154E1AA8171564C700A0D168 /* libmediastreamer_base.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A931715638900A0D168 /* libmediastreamer_base.a */; }; + 154E1AA9171564C900A0D168 /* libmediastreamer_voip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A951715639A00A0D168 /* libmediastreamer_voip.a */; }; + 154E1AAA171564CA00A0D168 /* libmediastreamer_voip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A951715639A00A0D168 /* libmediastreamer_voip.a */; }; + 154E1AAB171564CA00A0D168 /* libmediastreamer_voip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A951715639A00A0D168 /* libmediastreamer_voip.a */; }; + 154E1AAC171564EA00A0D168 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFCF133A2E760044EA25 /* libssl.a */; }; + 154E1AAD171564EA00A0D168 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFCF133A2E760044EA25 /* libssl.a */; }; + 154E1AAE171564EB00A0D168 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFCF133A2E760044EA25 /* libssl.a */; }; + 154E1AAF171564ED00A0D168 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFD0133A2E760044EA25 /* libcrypto.a */; }; + 154E1AB0171564EE00A0D168 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFD0133A2E760044EA25 /* libcrypto.a */; }; + 154E1AB1171564EE00A0D168 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFD0133A2E760044EA25 /* libcrypto.a */; }; + 154E1AB21715661100A0D168 /* libswscale.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A9B1715645F00A0D168 /* libswscale.a */; }; + 154E1AB31715661100A0D168 /* libswscale.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A9B1715645F00A0D168 /* libswscale.a */; }; + 154E1AB41715661200A0D168 /* libswscale.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A9B1715645F00A0D168 /* libswscale.a */; }; + 15FC168517157478003FDB31 /* buddy_status.c in Sources */ = {isa = PBXBuildFile; fileRef = 15FC167E17157478003FDB31 /* buddy_status.c */; }; + 15FC168817157478003FDB31 /* chatroom.c in Sources */ = {isa = PBXBuildFile; fileRef = 15FC167F17157478003FDB31 /* chatroom.c */; }; + 15FC168A17157478003FDB31 /* helloworld.c in Sources */ = {isa = PBXBuildFile; fileRef = 15FC168017157478003FDB31 /* helloworld.c */; }; + 15FC168F17157478003FDB31 /* registration.c in Sources */ = {isa = PBXBuildFile; fileRef = 15FC168117157478003FDB31 /* registration.c */; }; 1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; }; 1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; }; 2220D5D81278461C008F2C2E /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2220D5D71278461C008F2C2E /* CFNetwork.framework */; }; @@ -34,29 +67,18 @@ 229499FA12A5433F00D6CF48 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2220D5E912784672008F2C2E /* AudioToolbox.framework */; }; 229499FB12A5433F00D6CF48 /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 22D1B6A012A3E159001AE361 /* libresolv.dylib */; }; 22D1B6A112A3E159001AE361 /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 22D1B6A012A3E159001AE361 /* libresolv.dylib */; }; - 22E5AFC5133A2E260044EA25 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFC3133A2E260044EA25 /* libssl.a */; }; - 22E5AFC6133A2E260044EA25 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFC4133A2E260044EA25 /* libcrypto.a */; }; - 22E5AFC9133A2E3F0044EA25 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFC7133A2E3F0044EA25 /* libssl.a */; }; - 22E5AFCA133A2E3F0044EA25 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFC8133A2E3F0044EA25 /* libcrypto.a */; }; - 22E5AFCD133A2E5C0044EA25 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFCB133A2E5C0044EA25 /* libssl.a */; }; - 22E5AFCE133A2E5C0044EA25 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFCC133A2E5C0044EA25 /* libcrypto.a */; }; 22E5AFD1133A2E760044EA25 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFCF133A2E760044EA25 /* libssl.a */; }; 22E5AFD2133A2E760044EA25 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFD0133A2E760044EA25 /* libcrypto.a */; }; 288765FD0DF74451002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765FC0DF74451002DB57D /* CoreGraphics.framework */; }; - 34F9DFE914C418B600E1BC69 /* helloworld.c in Sources */ = {isa = PBXBuildFile; fileRef = 34F9DFE514C418B600E1BC69 /* helloworld.c */; }; 34F9DFF514C41EBA00E1BC69 /* libeXosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEB14C41EBA00E1BC69 /* libeXosip2.a */; }; 34F9DFF614C41EBA00E1BC69 /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEC14C41EBA00E1BC69 /* libgsm.a */; }; 34F9DFF714C41EBA00E1BC69 /* libilbc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFED14C41EBA00E1BC69 /* libilbc.a */; }; 34F9DFF814C41EBA00E1BC69 /* liblinphone.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */; }; - 34F9DFF914C41EBA00E1BC69 /* libmediastreamer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEF14C41EBA00E1BC69 /* libmediastreamer.a */; }; 34F9DFFA14C41EBA00E1BC69 /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF014C41EBA00E1BC69 /* libortp.a */; }; 34F9DFFB14C41EBA00E1BC69 /* libosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF114C41EBA00E1BC69 /* libosip2.a */; }; 34F9DFFC14C41EBA00E1BC69 /* libosipparser2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */; }; 34F9DFFD14C41EBA00E1BC69 /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF314C41EBA00E1BC69 /* libspeex.a */; }; 34F9DFFE14C41EBA00E1BC69 /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF414C41EBA00E1BC69 /* libspeexdsp.a */; }; - 34F9DFFF14C41F4900E1BC69 /* buddy_status.c in Sources */ = {isa = PBXBuildFile; fileRef = 34F9DFE314C418B600E1BC69 /* buddy_status.c */; }; - 34F9E00014C41F4E00E1BC69 /* chatroom.c in Sources */ = {isa = PBXBuildFile; fileRef = 34F9DFE414C418B600E1BC69 /* chatroom.c */; }; - 34F9E00114C41F5300E1BC69 /* registration.c in Sources */ = {isa = PBXBuildFile; fileRef = 34F9DFE614C418B600E1BC69 /* registration.c */; }; 34F9E00314C41FB400E1BC69 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00214C41FB400E1BC69 /* OpenGLES.framework */; }; 34F9E00614C41FCF00E1BC69 /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00414C41FCF00E1BC69 /* libsrtp.a */; }; 34F9E00714C41FCF00E1BC69 /* libvpx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00514C41FCF00E1BC69 /* libvpx.a */; }; @@ -67,7 +89,6 @@ 34F9E00F14C4204600E1BC69 /* libvpx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00514C41FCF00E1BC69 /* libvpx.a */; }; 34F9E01014C4207700E1BC69 /* liblinphone.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */; }; 34F9E01114C4208C00E1BC69 /* libeXosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEB14C41EBA00E1BC69 /* libeXosip2.a */; }; - 34F9E01214C4208C00E1BC69 /* libmediastreamer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEF14C41EBA00E1BC69 /* libmediastreamer.a */; }; 34F9E01314C4208C00E1BC69 /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF014C41EBA00E1BC69 /* libortp.a */; }; 34F9E01414C420A200E1BC69 /* libosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF114C41EBA00E1BC69 /* libosip2.a */; }; 34F9E01514C420A200E1BC69 /* libosipparser2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */; }; @@ -82,7 +103,6 @@ 34F9E01E14C420DD00E1BC69 /* libosipparser2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */; }; 34F9E01F14C420DD00E1BC69 /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF314C41EBA00E1BC69 /* libspeex.a */; }; 34F9E02014C420DD00E1BC69 /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF414C41EBA00E1BC69 /* libspeexdsp.a */; }; - 34F9E02114C420F000E1BC69 /* libmediastreamer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEF14C41EBA00E1BC69 /* libmediastreamer.a */; }; 34F9E02214C420FA00E1BC69 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00A14C4202100E1BC69 /* QuartzCore.framework */; }; 34F9E02314C4210100E1BC69 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00214C41FB400E1BC69 /* OpenGLES.framework */; }; 34F9E02414C4211000E1BC69 /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00414C41FCF00E1BC69 /* libsrtp.a */; }; @@ -92,7 +112,6 @@ 34F9E02814C4214500E1BC69 /* libeXosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEB14C41EBA00E1BC69 /* libeXosip2.a */; }; 34F9E02914C4214500E1BC69 /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEC14C41EBA00E1BC69 /* libgsm.a */; }; 34F9E02A14C4214500E1BC69 /* liblinphone.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */; }; - 34F9E02B14C4214500E1BC69 /* libmediastreamer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEF14C41EBA00E1BC69 /* libmediastreamer.a */; }; 34F9E02C14C4214500E1BC69 /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF014C41EBA00E1BC69 /* libortp.a */; }; 34F9E02D14C4214500E1BC69 /* libosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF114C41EBA00E1BC69 /* libosip2.a */; }; 34F9E02E14C4214500E1BC69 /* libosipparser2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */; }; @@ -115,6 +134,15 @@ /* End PBXBuildFile section */ /* Begin PBXFileReference section */ + 154E1A931715638900A0D168 /* libmediastreamer_base.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmediastreamer_base.a; path = "../../liblinphone-sdk/apple-darwin/lib/libmediastreamer_base.a"; sourceTree = ""; }; + 154E1A951715639A00A0D168 /* libmediastreamer_voip.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmediastreamer_voip.a; path = "../../liblinphone-sdk/apple-darwin/lib/libmediastreamer_voip.a"; sourceTree = ""; }; + 154E1A971715642E00A0D168 /* libavutil.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libavutil.a; path = "../../liblinphone-sdk/apple-darwin/lib/libavutil.a"; sourceTree = ""; }; + 154E1A991715644400A0D168 /* libavcodec.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libavcodec.a; path = "../../liblinphone-sdk/apple-darwin/lib/libavcodec.a"; sourceTree = ""; }; + 154E1A9B1715645F00A0D168 /* libswscale.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libswscale.a; path = "../../liblinphone-sdk/apple-darwin/lib/libswscale.a"; sourceTree = ""; }; + 15FC167E17157478003FDB31 /* buddy_status.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = buddy_status.c; path = "../../liblinphone-sdk/apple-darwin/share/linphone/tutorials/buddy_status.c"; sourceTree = ""; }; + 15FC167F17157478003FDB31 /* chatroom.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = chatroom.c; path = "../../liblinphone-sdk/apple-darwin/share/linphone/tutorials/chatroom.c"; sourceTree = ""; }; + 15FC168017157478003FDB31 /* helloworld.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = helloworld.c; path = "../../liblinphone-sdk/apple-darwin/share/linphone/tutorials/helloworld.c"; sourceTree = ""; }; + 15FC168117157478003FDB31 /* registration.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = registration.c; path = "../../liblinphone-sdk/apple-darwin/share/linphone/tutorials/registration.c"; sourceTree = ""; }; 1D30AB110D05D00D00671497 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 1D6058910D05DD3D006BFB54 /* hello-world.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "hello-world.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; @@ -126,25 +154,14 @@ 229499BA12A5417D00D6CF48 /* hello-world.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "hello-world.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 229499FF12A5433F00D6CF48 /* hello-world.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "hello-world.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 22D1B6A012A3E159001AE361 /* libresolv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libresolv.dylib; path = usr/lib/libresolv.dylib; sourceTree = SDKROOT; }; - 22E5AFC3133A2E260044EA25 /* libssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libssl.a; path = "../../liblinphone-sdk/apple-darwin/lib/libssl.a"; sourceTree = ""; }; - 22E5AFC4133A2E260044EA25 /* libcrypto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcrypto.a; path = "../../liblinphone-sdk/apple-darwin/lib/libcrypto.a"; sourceTree = ""; }; - 22E5AFC7133A2E3F0044EA25 /* libssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libssl.a; path = "../../liblinphone-sdk/apple-darwin/lib/libssl.a"; sourceTree = ""; }; - 22E5AFC8133A2E3F0044EA25 /* libcrypto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcrypto.a; path = "../../liblinphone-sdk/apple-darwin/lib/libcrypto.a"; sourceTree = ""; }; - 22E5AFCB133A2E5C0044EA25 /* libssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libssl.a; path = "../../liblinphone-sdk/apple-darwin/lib/libssl.a"; sourceTree = ""; }; - 22E5AFCC133A2E5C0044EA25 /* libcrypto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcrypto.a; path = "../../liblinphone-sdk/apple-darwin/lib/libcrypto.a"; sourceTree = ""; }; 22E5AFCF133A2E760044EA25 /* libssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libssl.a; path = "../../liblinphone-sdk/apple-darwin/lib/libssl.a"; sourceTree = ""; }; 22E5AFD0133A2E760044EA25 /* libcrypto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcrypto.a; path = "../../liblinphone-sdk/apple-darwin/lib/libcrypto.a"; sourceTree = ""; }; 288765FC0DF74451002DB57D /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; 32CA4F630368D1EE00C91783 /* hello_world_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hello_world_Prefix.pch; sourceTree = ""; }; - 34F9DFE314C418B600E1BC69 /* buddy_status.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = buddy_status.c; path = ../../submodules/linphone/coreapi/help/buddy_status.c; sourceTree = ""; }; - 34F9DFE414C418B600E1BC69 /* chatroom.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = chatroom.c; path = ../../submodules/linphone/coreapi/help/chatroom.c; sourceTree = ""; }; - 34F9DFE514C418B600E1BC69 /* helloworld.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = helloworld.c; path = ../../submodules/linphone/coreapi/help/helloworld.c; sourceTree = ""; }; - 34F9DFE614C418B600E1BC69 /* registration.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = registration.c; path = ../../submodules/linphone/coreapi/help/registration.c; sourceTree = ""; }; 34F9DFEB14C41EBA00E1BC69 /* libeXosip2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libeXosip2.a; path = "../../liblinphone-sdk/apple-darwin/lib/libeXosip2.a"; sourceTree = ""; }; 34F9DFEC14C41EBA00E1BC69 /* libgsm.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libgsm.a; path = "../../liblinphone-sdk/apple-darwin/lib/libgsm.a"; sourceTree = ""; }; 34F9DFED14C41EBA00E1BC69 /* libilbc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libilbc.a; path = "../../liblinphone-sdk/apple-darwin/lib/libilbc.a"; sourceTree = ""; }; 34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = liblinphone.a; path = "../../liblinphone-sdk/apple-darwin/lib/liblinphone.a"; sourceTree = ""; }; - 34F9DFEF14C41EBA00E1BC69 /* libmediastreamer.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmediastreamer.a; path = "../../liblinphone-sdk/apple-darwin/lib/libmediastreamer.a"; sourceTree = ""; }; 34F9DFF014C41EBA00E1BC69 /* libortp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libortp.a; path = "../../liblinphone-sdk/apple-darwin/lib/libortp.a"; sourceTree = ""; }; 34F9DFF114C41EBA00E1BC69 /* libosip2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libosip2.a; path = "../../liblinphone-sdk/apple-darwin/lib/libosip2.a"; sourceTree = ""; }; 34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libosipparser2.a; path = "../../liblinphone-sdk/apple-darwin/lib/libosipparser2.a"; sourceTree = ""; }; @@ -165,6 +182,9 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 154E1A9C1715645F00A0D168 /* libswscale.a in Frameworks */, + 154E1A9A1715644400A0D168 /* libavcodec.a in Frameworks */, + 154E1A981715642E00A0D168 /* libavutil.a in Frameworks */, 34F9E03714C424AF00E1BC69 /* CoreMedia.framework in Frameworks */, 34F9E03514C4249600E1BC69 /* CoreVideo.framework in Frameworks */, 34F9E03414C4247A00E1BC69 /* AVFoundation.framework in Frameworks */, @@ -176,14 +196,13 @@ 34F9DFF614C41EBA00E1BC69 /* libgsm.a in Frameworks */, 34F9DFF714C41EBA00E1BC69 /* libilbc.a in Frameworks */, 34F9DFF814C41EBA00E1BC69 /* liblinphone.a in Frameworks */, - 34F9DFF914C41EBA00E1BC69 /* libmediastreamer.a in Frameworks */, + 154E1A941715638900A0D168 /* libmediastreamer_base.a in Frameworks */, + 154E1A961715639A00A0D168 /* libmediastreamer_voip.a in Frameworks */, 34F9DFFA14C41EBA00E1BC69 /* libortp.a in Frameworks */, 34F9DFFB14C41EBA00E1BC69 /* libosip2.a in Frameworks */, 34F9DFFC14C41EBA00E1BC69 /* libosipparser2.a in Frameworks */, 34F9DFFD14C41EBA00E1BC69 /* libspeex.a in Frameworks */, 34F9DFFE14C41EBA00E1BC69 /* libspeexdsp.a in Frameworks */, - 22E5AFC5133A2E260044EA25 /* libssl.a in Frameworks */, - 22E5AFC6133A2E260044EA25 /* libcrypto.a in Frameworks */, 1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */, 1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */, 288765FD0DF74451002DB57D /* CoreGraphics.framework in Frameworks */, @@ -191,6 +210,8 @@ 2220D5DA1278461C008F2C2E /* CoreAudio.framework in Frameworks */, 2220D5EA12784672008F2C2E /* AudioToolbox.framework in Frameworks */, 22D1B6A112A3E159001AE361 /* libresolv.dylib in Frameworks */, + 154E1AAE171564EB00A0D168 /* libssl.a in Frameworks */, + 154E1AAF171564ED00A0D168 /* libcrypto.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -207,15 +228,12 @@ 34F9E01414C420A200E1BC69 /* libosip2.a in Frameworks */, 34F9E01514C420A200E1BC69 /* libosipparser2.a in Frameworks */, 34F9E01114C4208C00E1BC69 /* libeXosip2.a in Frameworks */, - 34F9E01214C4208C00E1BC69 /* libmediastreamer.a in Frameworks */, 34F9E01314C4208C00E1BC69 /* libortp.a in Frameworks */, 34F9E01014C4207700E1BC69 /* liblinphone.a in Frameworks */, 34F9E00E14C4204600E1BC69 /* libsrtp.a in Frameworks */, 34F9E00F14C4204600E1BC69 /* libvpx.a in Frameworks */, 34F9E00C14C4203900E1BC69 /* OpenGLES.framework in Frameworks */, 34F9E00D14C4203900E1BC69 /* QuartzCore.framework in Frameworks */, - 22E5AFC9133A2E3F0044EA25 /* libssl.a in Frameworks */, - 22E5AFCA133A2E3F0044EA25 /* libcrypto.a in Frameworks */, 2294996912A53FEE00D6CF48 /* Foundation.framework in Frameworks */, 2294996A12A53FEE00D6CF48 /* UIKit.framework in Frameworks */, 2294996B12A53FEE00D6CF48 /* CoreGraphics.framework in Frameworks */, @@ -223,6 +241,14 @@ 2294997712A53FEE00D6CF48 /* CoreAudio.framework in Frameworks */, 2294997812A53FEE00D6CF48 /* AudioToolbox.framework in Frameworks */, 2294997912A53FEE00D6CF48 /* libresolv.dylib in Frameworks */, + 154E1A9D171564B500A0D168 /* libavcodec.a in Frameworks */, + 154E1AA0171564BA00A0D168 /* libavutil.a in Frameworks */, + 154E1AA3171564C100A0D168 /* libilbc.a in Frameworks */, + 154E1AA6171564C600A0D168 /* libmediastreamer_base.a in Frameworks */, + 154E1AA9171564C900A0D168 /* libmediastreamer_voip.a in Frameworks */, + 154E1AAD171564EA00A0D168 /* libssl.a in Frameworks */, + 154E1AB0171564EE00A0D168 /* libcrypto.a in Frameworks */, + 154E1AB21715661100A0D168 /* libswscale.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -237,7 +263,6 @@ 34F9E02514C4211000E1BC69 /* libvpx.a in Frameworks */, 34F9E02314C4210100E1BC69 /* OpenGLES.framework in Frameworks */, 34F9E02214C420FA00E1BC69 /* QuartzCore.framework in Frameworks */, - 34F9E02114C420F000E1BC69 /* libmediastreamer.a in Frameworks */, 34F9E01914C420DD00E1BC69 /* libeXosip2.a in Frameworks */, 34F9E01A14C420DD00E1BC69 /* libgsm.a in Frameworks */, 34F9E01B14C420DD00E1BC69 /* liblinphone.a in Frameworks */, @@ -246,8 +271,6 @@ 34F9E01E14C420DD00E1BC69 /* libosipparser2.a in Frameworks */, 34F9E01F14C420DD00E1BC69 /* libspeex.a in Frameworks */, 34F9E02014C420DD00E1BC69 /* libspeexdsp.a in Frameworks */, - 22E5AFCD133A2E5C0044EA25 /* libssl.a in Frameworks */, - 22E5AFCE133A2E5C0044EA25 /* libcrypto.a in Frameworks */, 229499A612A5417D00D6CF48 /* Foundation.framework in Frameworks */, 229499A712A5417D00D6CF48 /* UIKit.framework in Frameworks */, 229499A812A5417D00D6CF48 /* CoreGraphics.framework in Frameworks */, @@ -255,6 +278,14 @@ 229499B412A5417D00D6CF48 /* CoreAudio.framework in Frameworks */, 229499B512A5417D00D6CF48 /* AudioToolbox.framework in Frameworks */, 229499B612A5417D00D6CF48 /* libresolv.dylib in Frameworks */, + 154E1A9E171564B500A0D168 /* libavcodec.a in Frameworks */, + 154E1AA1171564BA00A0D168 /* libavutil.a in Frameworks */, + 154E1AA4171564C100A0D168 /* libilbc.a in Frameworks */, + 154E1AA7171564C600A0D168 /* libmediastreamer_base.a in Frameworks */, + 154E1AAA171564CA00A0D168 /* libmediastreamer_voip.a in Frameworks */, + 154E1AAC171564EA00A0D168 /* libssl.a in Frameworks */, + 154E1AB1171564EE00A0D168 /* libcrypto.a in Frameworks */, + 154E1AB31715661100A0D168 /* libswscale.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -268,7 +299,6 @@ 34F9E02814C4214500E1BC69 /* libeXosip2.a in Frameworks */, 34F9E02914C4214500E1BC69 /* libgsm.a in Frameworks */, 34F9E02A14C4214500E1BC69 /* liblinphone.a in Frameworks */, - 34F9E02B14C4214500E1BC69 /* libmediastreamer.a in Frameworks */, 34F9E02C14C4214500E1BC69 /* libortp.a in Frameworks */, 34F9E02D14C4214500E1BC69 /* libosip2.a in Frameworks */, 34F9E02E14C4214500E1BC69 /* libosipparser2.a in Frameworks */, @@ -287,6 +317,12 @@ 229499F912A5433F00D6CF48 /* CoreAudio.framework in Frameworks */, 229499FA12A5433F00D6CF48 /* AudioToolbox.framework in Frameworks */, 229499FB12A5433F00D6CF48 /* libresolv.dylib in Frameworks */, + 154E1A9F171564B600A0D168 /* libavcodec.a in Frameworks */, + 154E1AA2171564BA00A0D168 /* libavutil.a in Frameworks */, + 154E1AA5171564C200A0D168 /* libilbc.a in Frameworks */, + 154E1AA8171564C700A0D168 /* libmediastreamer_base.a in Frameworks */, + 154E1AAB171564CA00A0D168 /* libmediastreamer_voip.a in Frameworks */, + 154E1AB41715661200A0D168 /* libswscale.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -318,27 +354,25 @@ 34F9E03314C4247A00E1BC69 /* AVFoundation.framework */, 34F9E00A14C4202100E1BC69 /* QuartzCore.framework */, 34F9E00814C41FE900E1BC69 /* CoreVideo.framework */, - 34F9E00414C41FCF00E1BC69 /* libsrtp.a */, - 34F9E00514C41FCF00E1BC69 /* libvpx.a */, 34F9E00214C41FB400E1BC69 /* OpenGLES.framework */, + 154E1A991715644400A0D168 /* libavcodec.a */, + 154E1A971715642E00A0D168 /* libavutil.a */, + 22E5AFD0133A2E760044EA25 /* libcrypto.a */, 34F9DFEB14C41EBA00E1BC69 /* libeXosip2.a */, 34F9DFEC14C41EBA00E1BC69 /* libgsm.a */, 34F9DFED14C41EBA00E1BC69 /* libilbc.a */, 34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */, - 34F9DFEF14C41EBA00E1BC69 /* libmediastreamer.a */, + 154E1A931715638900A0D168 /* libmediastreamer_base.a */, + 154E1A951715639A00A0D168 /* libmediastreamer_voip.a */, 34F9DFF014C41EBA00E1BC69 /* libortp.a */, 34F9DFF114C41EBA00E1BC69 /* libosip2.a */, 34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */, 34F9DFF314C41EBA00E1BC69 /* libspeex.a */, 34F9DFF414C41EBA00E1BC69 /* libspeexdsp.a */, + 34F9E00414C41FCF00E1BC69 /* libsrtp.a */, 22E5AFCF133A2E760044EA25 /* libssl.a */, - 22E5AFD0133A2E760044EA25 /* libcrypto.a */, - 22E5AFCB133A2E5C0044EA25 /* libssl.a */, - 22E5AFCC133A2E5C0044EA25 /* libcrypto.a */, - 22E5AFC7133A2E3F0044EA25 /* libssl.a */, - 22E5AFC8133A2E3F0044EA25 /* libcrypto.a */, - 22E5AFC3133A2E260044EA25 /* libssl.a */, - 22E5AFC4133A2E260044EA25 /* libcrypto.a */, + 154E1A9B1715645F00A0D168 /* libswscale.a */, + 34F9E00514C41FCF00E1BC69 /* libvpx.a */, 080E96DDFE201D6D7F000001 /* Classes */, 29B97315FDCFA39411CA2CEA /* Other Sources */, 29B97317FDCFA39411CA2CEA /* Resources */, @@ -356,10 +390,10 @@ 29B97315FDCFA39411CA2CEA /* Other Sources */ = { isa = PBXGroup; children = ( - 34F9DFE314C418B600E1BC69 /* buddy_status.c */, - 34F9DFE414C418B600E1BC69 /* chatroom.c */, - 34F9DFE514C418B600E1BC69 /* helloworld.c */, - 34F9DFE614C418B600E1BC69 /* registration.c */, + 15FC167E17157478003FDB31 /* buddy_status.c */, + 15FC167F17157478003FDB31 /* chatroom.c */, + 15FC168017157478003FDB31 /* helloworld.c */, + 15FC168117157478003FDB31 /* registration.c */, 32CA4F630368D1EE00C91783 /* hello_world_Prefix.pch */, ); name = "Other Sources"; @@ -517,7 +551,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 34F9DFE914C418B600E1BC69 /* helloworld.c in Sources */, + 15FC168A17157478003FDB31 /* helloworld.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -525,7 +559,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 34F9E00114C41F5300E1BC69 /* registration.c in Sources */, + 15FC168F17157478003FDB31 /* registration.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -533,7 +567,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 34F9E00014C41F4E00E1BC69 /* chatroom.c in Sources */, + 15FC168817157478003FDB31 /* chatroom.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -541,7 +575,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 34F9DFFF14C41F4900E1BC69 /* buddy_status.c in Sources */, + 15FC168517157478003FDB31 /* buddy_status.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/linphone-Info.plist b/linphone-Info.plist index d496e9046..81a8b8814 100644 --- a/linphone-Info.plist +++ b/linphone-Info.plist @@ -21,6 +21,23 @@ CFBundleIconFiles + linphone_icon_120 + linphone_icon_57.png + linphone_icon_72.png + linphone_icon_57@2x.png + linphone_icon_72@2x.png + + + + CFBundleIcons~ipad + + CFBundlePrimaryIcon + + CFBundleIconFiles + + linphone_icon_152 + linphone_icon_76 + linphone_icon_120 linphone_icon_57.png linphone_icon_72.png linphone_icon_57@2x.png @@ -59,7 +76,7 @@ CFBundleVersion - 2.0.4 + 2.1 NSMainNibFile LinphoneApp NSMainNibFile~ipad @@ -68,8 +85,9 @@ UIBackgroundModes - voip audio + remote-notification + voip UILaunchImageFile~ipad linphone_splashscreen @@ -98,5 +116,7 @@ UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationPortrait + UIViewControllerBasedStatusBarAppearance + diff --git a/linphone.ldb/Contents.plist b/linphone.ldb/Contents.plist index 170d97bda..335cdec55 100644 --- a/linphone.ldb/Contents.plist +++ b/linphone.ldb/Contents.plist @@ -3741,17 +3741,17 @@ backup - 5 + 6 class BLWrapperHandle name - Classes/InCallViewController/5/InCallViewController.xib + Classes/InCallViewController/6/InCallViewController.xib change date - 2012-09-25T09:16:20Z + 2013-07-22T11:10:50Z changed values class @@ -3761,7 +3761,7 @@ flags 0 hash - 7f214a2ef7edff45568215c89af0ece4 + 8c081a9b0433d4932659d8da7064bcbe name InCallViewController.xib @@ -3802,11 +3802,11 @@ versions en - 5 + 6 fr - 5 + 6 ru - 5 + 6 @@ -17902,7 +17902,7 @@ Raison: %2$s change date - 2012-11-06T09:45:46Z + 2013-06-28T12:59:59Z changed values class @@ -17912,7 +17912,7 @@ Raison: %2$s flags 0 hash - d8b4f45bf8fca397a7f791bd55a61e1c + a03adeb7710ae8986354684bdcd69764 name Audio.strings @@ -18279,6 +18279,56 @@ Raison: %2$s snapshots + + change date + 2001-01-01T00:00:00Z + changed values + + class + BLStringKeyObject + comment + Adaptive rate control + errors + + flags + 0 + key + Adaptive rate control + localizations + + en + Adaptive rate control + fr + Contrôle de débit + + snapshots + + + + change date + 2001-01-01T00:00:00Z + changed values + + class + BLStringKeyObject + comment + Codec bitrate limit + errors + + flags + 0 + key + Codec bitrate limit + localizations + + en + Codec bitrate limit + fr + Limite de débit du codec + + snapshots + + old objects @@ -18561,7 +18611,7 @@ Raison: %2$s change date - 2012-09-17T13:29:57Z + 2013-07-22T11:22:00Z changed values class @@ -18571,7 +18621,7 @@ Raison: %2$s flags 0 hash - b7297749603f255583f59fcea3174690 + 9da839864b9c883ec66e9863c5d94ced name Video.strings @@ -18685,6 +18735,31 @@ Raison: %2$s snapshots + + change date + 2001-01-01T00:00:00Z + changed values + + class + BLStringKeyObject + comment + Preferred video size + errors + + flags + 0 + key + Preferred video size + localizations + + en + Preferred video size + fr + Taille de vidéo préférée + + snapshots + + change date 2001-01-01T00:00:00Z diff --git a/linphone.ldb/Resources/Classes/InCallViewController/5/InCallViewController.xib b/linphone.ldb/Resources/Classes/InCallViewController/6/InCallViewController.xib similarity index 78% rename from linphone.ldb/Resources/Classes/InCallViewController/5/InCallViewController.xib rename to linphone.ldb/Resources/Classes/InCallViewController/6/InCallViewController.xib index a35dfab43..91506d255 100644 --- a/linphone.ldb/Resources/Classes/InCallViewController/5/InCallViewController.xib +++ b/linphone.ldb/Resources/Classes/InCallViewController/6/InCallViewController.xib @@ -2,13 +2,13 @@ 784 - 11E53 - 2840 - 1138.47 - 569.00 + 12D78 + 3084 + 1187.37 + 626.00 com.apple.InterfaceBuilder.IBCocoaTouchPlugin - 1926 + 2083 YES @@ -52,6 +52,7 @@ 301 {{-1000, -1000}, {2000, 2000}} + _NS:9 @@ -65,6 +66,7 @@ 274 {320, 460} + _NS:196 @@ -76,11 +78,12 @@ 283 - {{220, 360}, {100, 100}} + {{216, 324}, {96, 128}} + - 1 + 2 IBCocoaTouchFramework @@ -88,6 +91,7 @@ 301 {{141, 212}, {37, 37}} + _NS:1030 NO @@ -99,6 +103,7 @@ {320, 460} + _NS:196 @@ -109,6 +114,7 @@ 274 {{0, -10}, {320, 480}} + _NS:418 @@ -139,6 +145,7 @@ -2147483356 {{20, 40}, {85, 33}} + _NS:9 NO @@ -174,6 +181,7 @@ {320, 460} + NO @@ -440,7 +448,120 @@ 173 - + + + YES + + InCallTableViewController + UITableViewController + + IBProjectSource + ./Classes/InCallTableViewController.h + + + + InCallViewController + UIViewController + + YES + + YES + callTableController + callTableView + testVideoView + videoCameraSwitch + videoGroup + videoPreview + videoView + videoWaitingForFirstImage + + + YES + InCallTableViewController + UITableView + UIView + UICamSwitch + UIView + UIView + UIView + UIActivityIndicatorView + + + + YES + + YES + callTableController + callTableView + testVideoView + videoCameraSwitch + videoGroup + videoPreview + videoView + videoWaitingForFirstImage + + + YES + + callTableController + InCallTableViewController + + + callTableView + UITableView + + + testVideoView + UIView + + + videoCameraSwitch + UICamSwitch + + + videoGroup + UIView + + + videoPreview + UIView + + + videoView + UIView + + + videoWaitingForFirstImage + UIActivityIndicatorView + + + + + IBProjectSource + ./Classes/InCallViewController.h + + + + UICamSwitch + UIButton + + preview + UIView + + + preview + + preview + UIView + + + + IBProjectSource + ./Classes/UICamSwitch.h + + + + 0 IBCocoaTouchFramework @@ -466,6 +587,6 @@ {151, 51} - 1926 + 2083 diff --git a/linphone.ldb/Resources/InAppSettings.bundle/Audio/1/Audio.strings b/linphone.ldb/Resources/InAppSettings.bundle/Audio/1/Audio.strings index cf7f76b96..4384de768 100644 --- a/linphone.ldb/Resources/InAppSettings.bundle/Audio/1/Audio.strings +++ b/linphone.ldb/Resources/InAppSettings.bundle/Audio/1/Audio.strings @@ -41,4 +41,10 @@ "Playback gain" = "Playback gain"; /* Microphone gain */ -"Microphone gain" = "Microphone gain"; \ No newline at end of file +"Microphone gain" = "Microphone gain"; + +/* Adaptive rate control */ +"Adaptive rate control" = "Adaptive rate control"; + +/* Codec bitrate limit */ +"Codec bitrate limit" = "Codec bitrate limit"; diff --git a/linphone.ldb/Resources/InAppSettings.bundle/Video/1/Video.strings b/linphone.ldb/Resources/InAppSettings.bundle/Video/1/Video.strings index 9ef83a74b..3d8acf107 100644 --- a/linphone.ldb/Resources/InAppSettings.bundle/Video/1/Video.strings +++ b/linphone.ldb/Resources/InAppSettings.bundle/Video/1/Video.strings @@ -10,6 +10,9 @@ /* Show preview */ "Show preview" = "Show preview"; +/* Preferred video size */ +"Preferred video size" = "Preferred video size"; + /* Codecs */ "Codecs" = "Codecs"; diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index a1b6f6bbe..9fd487a9b 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -7,6 +7,9 @@ objects = { /* Begin PBXBuildFile section */ + 15017E701773578400784ACB /* libxml2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 15017E6F1773578400784ACB /* libxml2.a */; }; + 15017E71177357C500784ACB /* libxml2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 15017E6F1773578400784ACB /* libxml2.a */; }; + 154227D117BA81CE005E686A /* libzrtpcppcore.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154227D017BA81CE005E686A /* libzrtpcppcore.a */; }; 1599105316F746B2007BF52B /* route_bluetooth_off_default_landscape.png in Resources */ = {isa = PBXBuildFile; fileRef = 1599104316F746B2007BF52B /* route_bluetooth_off_default_landscape.png */; }; 1599105416F746B2007BF52B /* route_bluetooth_off_default_landscape.png in Resources */ = {isa = PBXBuildFile; fileRef = 1599104316F746B2007BF52B /* route_bluetooth_off_default_landscape.png */; }; 1599105516F746B2007BF52B /* route_bluetooth_off_disabled_landscape.png in Resources */ = {isa = PBXBuildFile; fileRef = 1599104416F746B2007BF52B /* route_bluetooth_off_disabled_landscape.png */; }; @@ -75,11 +78,10 @@ 1D60589B0D05DD56006BFB54 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; }; 1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; }; 1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; + 2200C2DB174BB87A002E9A70 /* AssetsLibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22405EED1600B4E400B92522 /* AssetsLibrary.framework */; }; + 2200C2DC174BBB24002E9A70 /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 226EF06B15FA256B005865C7 /* MobileCoreServices.framework */; }; 22058C71116E305000B08DDD /* linphone_icon_57.png in Resources */ = {isa = PBXBuildFile; fileRef = 22058C70116E305000B08DDD /* linphone_icon_57.png */; }; - 220FAD3110765B400068D98F /* libeXosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2810765B400068D98F /* libeXosip2.a */; }; 220FAD3210765B400068D98F /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2910765B400068D98F /* libgsm.a */; }; - 220FAD3610765B400068D98F /* libosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2D10765B400068D98F /* libosip2.a */; }; - 220FAD3710765B400068D98F /* libosipparser2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2E10765B400068D98F /* libosipparser2.a */; }; 220FAD3810765B400068D98F /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2F10765B400068D98F /* libspeex.a */; }; 220FAD3910765B400068D98F /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD3010765B400068D98F /* libspeexdsp.a */; }; 2214783D1386A2030020F8B8 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 2214783B1386A2030020F8B8 /* Localizable.strings */; }; @@ -101,6 +103,10 @@ 2234C8EE15EE744200E18E83 /* chat_message_inprogress.png in Resources */ = {isa = PBXBuildFile; fileRef = 2234C8ED15EE744200E18E83 /* chat_message_inprogress.png */; }; 2234C8EF15EE744200E18E83 /* chat_message_inprogress.png in Resources */ = {isa = PBXBuildFile; fileRef = 2234C8ED15EE744200E18E83 /* chat_message_inprogress.png */; }; 2237D4091084D7A9001383EE /* ring.wav in Resources */ = {isa = PBXBuildFile; fileRef = 2237D4081084D7A9001383EE /* ring.wav */; }; + 223CA7E616D9255800EF1BEC /* libantlr3c.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 223CA7E416D9255800EF1BEC /* libantlr3c.a */; }; + 223CA7E716D9255800EF1BEC /* libbellesip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 223CA7E516D9255800EF1BEC /* libbellesip.a */; }; + 223CA7E816D9256E00EF1BEC /* libantlr3c.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 223CA7E416D9255800EF1BEC /* libantlr3c.a */; }; + 223CA7E916D9257200EF1BEC /* libbellesip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 223CA7E516D9255800EF1BEC /* libbellesip.a */; }; 22405EEE1600B4E400B92522 /* AssetsLibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22405EED1600B4E400B92522 /* AssetsLibrary.framework */; }; 22405F001601C19200B92522 /* ImageViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22405EFE1601C19100B92522 /* ImageViewController.m */; }; 22405F011601C19200B92522 /* ImageViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22405EFE1601C19100B92522 /* ImageViewController.m */; }; @@ -127,6 +133,8 @@ 22AA8AFD13D7125600B30535 /* libx264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22AA8AFB13D7125500B30535 /* libx264.a */; }; 22AA8AFE13D7125600B30535 /* libmsx264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22AA8AFC13D7125500B30535 /* libmsx264.a */; }; 22AA8B0113D83F6300B30535 /* UICamSwitch.m in Sources */ = {isa = PBXBuildFile; fileRef = 22AA8B0013D83F6300B30535 /* UICamSwitch.m */; }; + 22AF73C21754C0D100BE8398 /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22AF73C11754C0D000BE8398 /* libopus.a */; }; + 22AF73C31754C0D800BE8398 /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22AF73C11754C0D000BE8398 /* libopus.a */; }; 22B5EFA310CE50BD00777D97 /* AddressBookUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22B5EFA210CE50BD00777D97 /* AddressBookUI.framework */; }; 22B5F03510CE6B2F00777D97 /* AddressBook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22B5F03410CE6B2F00777D97 /* AddressBook.framework */; }; 22BB1A69132FF16A005CD7AA /* UIEraseButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 22BB1A68132FF16A005CD7AA /* UIEraseButton.m */; }; @@ -151,17 +159,12 @@ 22D8F15D147548E2008C97DB /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 70E542F213E147E3002BA2C0 /* OpenGLES.framework */; }; 22D8F15E147548E2008C97DB /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22276E8813C73DC000210156 /* CoreMedia.framework */; }; 22D8F15F147548E2008C97DB /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22276E8613C73D8A00210156 /* CoreVideo.framework */; }; - 22D8F163147548E2008C97DB /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5B0AD133B5EA20044EA25 /* libssl.a */; }; - 22D8F164147548E2008C97DB /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5B0AE133B5EA20044EA25 /* libcrypto.a */; }; 22D8F165147548E2008C97DB /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; }; 22D8F166147548E2008C97DB /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; 22D8F167147548E2008C97DB /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765FC0DF74451002DB57D /* CoreGraphics.framework */; }; 22D8F168147548E2008C97DB /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22744019106F31BD006EC466 /* CoreAudio.framework */; }; 22D8F169147548E2008C97DB /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2274402E106F335E006EC466 /* AudioToolbox.framework */; }; - 22D8F16A147548E2008C97DB /* libeXosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2810765B400068D98F /* libeXosip2.a */; }; 22D8F16B147548E2008C97DB /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2910765B400068D98F /* libgsm.a */; }; - 22D8F16C147548E2008C97DB /* libosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2D10765B400068D98F /* libosip2.a */; }; - 22D8F16D147548E2008C97DB /* libosipparser2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2E10765B400068D98F /* libosipparser2.a */; }; 22D8F16E147548E2008C97DB /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2F10765B400068D98F /* libspeex.a */; }; 22D8F16F147548E2008C97DB /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD3010765B400068D98F /* libspeexdsp.a */; }; 22D8F170147548E2008C97DB /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 224567C1107B968500F10948 /* AVFoundation.framework */; }; @@ -181,8 +184,6 @@ 22E0A822111C44E100B04932 /* AboutViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22E0A81C111C44E100B04932 /* AboutViewController.m */; }; 22E0A823111C44E100B04932 /* ConsoleViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 22E0A81E111C44E100B04932 /* ConsoleViewController.xib */; }; 22E0A824111C44E100B04932 /* ConsoleViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22E0A81F111C44E100B04932 /* ConsoleViewController.m */; }; - 22E5B0AF133B5EA20044EA25 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5B0AD133B5EA20044EA25 /* libssl.a */; }; - 22E5B0B0133B5EA20044EA25 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5B0AE133B5EA20044EA25 /* libcrypto.a */; }; 22F2508E107141E100AC9B3F /* DialerViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22F2508C107141E100AC9B3F /* DialerViewController.m */; }; 22F254811073D99800AC9B3F /* ringback.wav in Resources */ = {isa = PBXBuildFile; fileRef = 22F254801073D99800AC9B3F /* ringback.wav */; }; 288765FD0DF74451002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765FC0DF74451002DB57D /* CoreGraphics.framework */; }; @@ -192,10 +193,10 @@ 340751E8150F38FD00B89C47 /* UIVideoButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 340751E6150F38FD00B89C47 /* UIVideoButton.m */; }; 34216F401547EBCD00EA9777 /* VideoZoomHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 34216F3F1547EBCD00EA9777 /* VideoZoomHandler.m */; }; 34216F411547EBCD00EA9777 /* VideoZoomHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 34216F3F1547EBCD00EA9777 /* VideoZoomHandler.m */; }; - 344ABDE81484E723007420B6 /* libzrtpcpp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 344ABDE71484E723007420B6 /* libzrtpcpp.a */; }; 344ABDF114850AE9007420B6 /* libc++.1.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 344ABDEF14850AE9007420B6 /* libc++.1.dylib */; settings = {ATTRIBUTES = (Weak, ); }; }; 344ABDF214850AE9007420B6 /* libstdc++.6.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 344ABDF014850AE9007420B6 /* libstdc++.6.dylib */; settings = {ATTRIBUTES = (Weak, ); }; }; 34A6ECEB14CF13CB00460C04 /* linphone_icon_72.png in Resources */ = {isa = PBXBuildFile; fileRef = 34A6ECEA14CF13CB00460C04 /* linphone_icon_72.png */; }; + 57B0E360173C010400A476B8 /* libpolarssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 57B0E35F173C010400A476B8 /* libpolarssl.a */; }; 57F005C415EE2CCF00914747 /* linphonerc in Resources */ = {isa = PBXBuildFile; fileRef = 57F005C315EE2CCF00914747 /* linphonerc */; }; 57F005C515EE2CCF00914747 /* linphonerc in Resources */ = {isa = PBXBuildFile; fileRef = 57F005C315EE2CCF00914747 /* linphonerc */; }; 57F005C815EE2D9200914747 /* linphonerc-factory in Resources */ = {isa = PBXBuildFile; fileRef = 57F005C615EE2D9200914747 /* linphonerc-factory */; }; @@ -1339,6 +1340,13 @@ D3F9A9DB15AEEB940045320F /* history_notification.png in Resources */ = {isa = PBXBuildFile; fileRef = D3F9A9DA15AEEB940045320F /* history_notification.png */; }; D3F9A9EE15AF277E0045320F /* UACellBackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = D3F9A9ED15AF277D0045320F /* UACellBackgroundView.m */; }; D3F9A9EF15AF277E0045320F /* UACellBackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = D3F9A9ED15AF277D0045320F /* UACellBackgroundView.m */; }; + F04F1E9D1806A41800D080F2 /* libpolarssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 57B0E35F173C010400A476B8 /* libpolarssl.a */; }; + F066515517F9A02E0064280C /* UITransparentTVCell.m in Sources */ = {isa = PBXBuildFile; fileRef = F066515417F9A02E0064280C /* UITransparentTVCell.m */; }; + F066515617F9A02E0064280C /* UITransparentTVCell.m in Sources */ = {isa = PBXBuildFile; fileRef = F066515417F9A02E0064280C /* UITransparentTVCell.m */; }; + F0818E7E17FC51D8005A3330 /* linphone_icon_76.png in Resources */ = {isa = PBXBuildFile; fileRef = F0818E7C17FC51D8005A3330 /* linphone_icon_76.png */; }; + F0818E7F17FC51D8005A3330 /* linphone_icon_76.png in Resources */ = {isa = PBXBuildFile; fileRef = F0818E7C17FC51D8005A3330 /* linphone_icon_76.png */; }; + F0818E8017FC51D8005A3330 /* linphone_icon_152.png in Resources */ = {isa = PBXBuildFile; fileRef = F0818E7D17FC51D8005A3330 /* linphone_icon_152.png */; }; + F0818E8117FC51D8005A3330 /* linphone_icon_152.png in Resources */ = {isa = PBXBuildFile; fileRef = F0818E7D17FC51D8005A3330 /* linphone_icon_152.png */; }; F476004B147AAF2800FFF19B /* liblinphone.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2211DB911475562600DEE054 /* liblinphone.a */; }; /* End PBXBuildFile section */ @@ -1409,6 +1417,8 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ + 15017E6F1773578400784ACB /* libxml2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libxml2.a; path = "liblinphone-sdk/apple-darwin/lib/libxml2.a"; sourceTree = ""; }; + 154227D017BA81CE005E686A /* libzrtpcppcore.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libzrtpcppcore.a; path = "liblinphone-sdk/apple-darwin/lib/libzrtpcppcore.a"; sourceTree = ""; }; 1599104316F746B2007BF52B /* route_bluetooth_off_default_landscape.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = route_bluetooth_off_default_landscape.png; path = Resources/route_bluetooth_off_default_landscape.png; sourceTree = ""; }; 1599104416F746B2007BF52B /* route_bluetooth_off_disabled_landscape.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = route_bluetooth_off_disabled_landscape.png; path = Resources/route_bluetooth_off_disabled_landscape.png; sourceTree = ""; }; 1599104516F746B2007BF52B /* route_bluetooth_off_over_landscape.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = route_bluetooth_off_over_landscape.png; path = Resources/route_bluetooth_off_over_landscape.png; sourceTree = ""; }; @@ -1554,11 +1564,8 @@ 220FACE9107654FC0068D98F /* speex_resampler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = speex_resampler.h; sourceTree = ""; }; 220FACEA107654FC0068D98F /* speex_stereo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = speex_stereo.h; sourceTree = ""; }; 220FACEB107654FC0068D98F /* speex_types.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = speex_types.h; sourceTree = ""; }; - 220FAD2810765B400068D98F /* libeXosip2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libeXosip2.a; path = "liblinphone-sdk/apple-darwin/lib/libeXosip2.a"; sourceTree = ""; }; 220FAD2910765B400068D98F /* libgsm.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libgsm.a; path = "liblinphone-sdk/apple-darwin/lib/libgsm.a"; sourceTree = ""; }; 220FAD2C10765B400068D98F /* libortp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libortp.a; path = "liblinphone-sdk/apple-darwin/lib/libortp.a"; sourceTree = ""; }; - 220FAD2D10765B400068D98F /* libosip2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libosip2.a; path = "liblinphone-sdk/apple-darwin/lib/libosip2.a"; sourceTree = ""; }; - 220FAD2E10765B400068D98F /* libosipparser2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libosipparser2.a; path = "liblinphone-sdk/apple-darwin/lib/libosipparser2.a"; sourceTree = ""; }; 220FAD2F10765B400068D98F /* libspeex.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libspeex.a; path = "liblinphone-sdk/apple-darwin/lib/libspeex.a"; sourceTree = ""; }; 220FAD3010765B400068D98F /* libspeexdsp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libspeexdsp.a; path = "liblinphone-sdk/apple-darwin/lib/libspeexdsp.a"; sourceTree = ""; }; 2211DB911475562600DEE054 /* liblinphone.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = liblinphone.a; path = "liblinphone-sdk/apple-darwin/lib/liblinphone.a"; sourceTree = ""; }; @@ -1582,6 +1589,8 @@ 2234C8E815EE2F7F00E18E83 /* chat_message_not_delivered.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = chat_message_not_delivered.png; path = Resources/chat_message_not_delivered.png; sourceTree = ""; }; 2234C8ED15EE744200E18E83 /* chat_message_inprogress.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = chat_message_inprogress.png; path = Resources/chat_message_inprogress.png; sourceTree = ""; }; 2237D4081084D7A9001383EE /* ring.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; name = ring.wav; path = Resources/ring.wav; sourceTree = ""; }; + 223CA7E416D9255800EF1BEC /* libantlr3c.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libantlr3c.a; path = "liblinphone-sdk/apple-darwin/lib/libantlr3c.a"; sourceTree = ""; }; + 223CA7E516D9255800EF1BEC /* libbellesip.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libbellesip.a; path = "liblinphone-sdk/apple-darwin/lib/libbellesip.a"; sourceTree = ""; }; 22405EE916006F0700B92522 /* libmediastreamer_base.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmediastreamer_base.a; path = "liblinphone-sdk/apple-darwin/lib/libmediastreamer_base.a"; sourceTree = ""; }; 22405EEA16006F0700B92522 /* libmediastreamer_voip.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmediastreamer_voip.a; path = "liblinphone-sdk/apple-darwin/lib/libmediastreamer_voip.a"; sourceTree = ""; }; 22405EED1600B4E400B92522 /* AssetsLibrary.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AssetsLibrary.framework; path = System/Library/Frameworks/AssetsLibrary.framework; sourceTree = SDKROOT; }; @@ -1614,6 +1623,7 @@ 22AA8AFC13D7125500B30535 /* libmsx264.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmsx264.a; path = "liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins/libmsx264.a"; sourceTree = ""; }; 22AA8AFF13D83F6300B30535 /* UICamSwitch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UICamSwitch.h; sourceTree = ""; }; 22AA8B0013D83F6300B30535 /* UICamSwitch.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UICamSwitch.m; sourceTree = ""; }; + 22AF73C11754C0D000BE8398 /* libopus.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libopus.a; path = "liblinphone-sdk/apple-darwin/lib/libopus.a"; sourceTree = ""; }; 22B5EFA210CE50BD00777D97 /* AddressBookUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AddressBookUI.framework; path = System/Library/Frameworks/AddressBookUI.framework; sourceTree = SDKROOT; }; 22B5F03410CE6B2F00777D97 /* AddressBook.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AddressBook.framework; path = System/Library/Frameworks/AddressBook.framework; sourceTree = SDKROOT; }; 22BB1A67132FF16A005CD7AA /* UIEraseButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIEraseButton.h; sourceTree = ""; }; @@ -1699,11 +1709,104 @@ 22E0A81E111C44E100B04932 /* ConsoleViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ConsoleViewController.xib; sourceTree = ""; }; 22E0A81F111C44E100B04932 /* ConsoleViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ConsoleViewController.m; sourceTree = ""; }; 22E0A820111C44E100B04932 /* ConsoleViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConsoleViewController.h; sourceTree = ""; }; - 22E5B0AD133B5EA20044EA25 /* libssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libssl.a; path = "liblinphone-sdk/apple-darwin/lib/libssl.a"; sourceTree = ""; }; - 22E5B0AE133B5EA20044EA25 /* libcrypto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcrypto.a; path = "liblinphone-sdk/apple-darwin/lib/libcrypto.a"; sourceTree = ""; }; 22F2508B107141E100AC9B3F /* DialerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DialerViewController.h; sourceTree = ""; }; 22F2508C107141E100AC9B3F /* DialerViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; lineEnding = 0; path = DialerViewController.m; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.objc; }; 22F254801073D99800AC9B3F /* ringback.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; name = ringback.wav; path = Resources/ringback.wav; sourceTree = ""; }; + 22F9B0891784711500E0212F /* .gitignore */ = {isa = PBXFileReference; lastKnownFileType = text; path = .gitignore; sourceTree = ""; }; + 22F9B08A1784711500E0212F /* Makefile.am */ = {isa = PBXFileReference; lastKnownFileType = text; path = Makefile.am; sourceTree = ""; }; + 22F9B08B1784711500E0212F /* Makefile.in */ = {isa = PBXFileReference; lastKnownFileType = text; path = Makefile.in; sourceTree = ""; }; + 22F9B08C1784711500E0212F /* TunnelManager.cc */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = TunnelManager.cc; sourceTree = ""; }; + 22F9B08D1784711500E0212F /* TunnelManager.hh */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = TunnelManager.hh; sourceTree = ""; }; + 22F9B08E1784711500E0212F /* address.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = address.c; sourceTree = ""; }; + 22F9B08F1784711500E0212F /* authentication.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = authentication.c; sourceTree = ""; }; + 22F9B0911784711500E0212F /* sal_address_impl.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_address_impl.c; sourceTree = ""; }; + 22F9B0921784711500E0212F /* sal_impl.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_impl.c; sourceTree = ""; }; + 22F9B0931784711500E0212F /* sal_impl.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = sal_impl.h; sourceTree = ""; }; + 22F9B0941784711500E0212F /* sal_op_call.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_call.c; sourceTree = ""; }; + 22F9B0951784711500E0212F /* sal_op_call_transfer.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_call_transfer.c; sourceTree = ""; }; + 22F9B0961784711500E0212F /* sal_op_events.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_events.c; sourceTree = ""; }; + 22F9B0971784711500E0212F /* sal_op_impl.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_impl.c; sourceTree = ""; }; + 22F9B0981784711500E0212F /* sal_op_info.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_info.c; sourceTree = ""; }; + 22F9B0991784711500E0212F /* sal_op_message.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_message.c; sourceTree = ""; }; + 22F9B09A1784711500E0212F /* sal_op_presence.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_presence.c; sourceTree = ""; }; + 22F9B09B1784711500E0212F /* sal_op_publish.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_publish.c; sourceTree = ""; }; + 22F9B09C1784711500E0212F /* sal_op_registration.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_registration.c; sourceTree = ""; }; + 22F9B09D1784711500E0212F /* sal_sdp.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_sdp.c; sourceTree = ""; }; + 22F9B09E1784711500E0212F /* callbacks.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = callbacks.c; sourceTree = ""; }; + 22F9B09F1784711500E0212F /* callbacks.c.orig */ = {isa = PBXFileReference; lastKnownFileType = text; path = callbacks.c.orig; sourceTree = ""; }; + 22F9B0A01784711500E0212F /* chat.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = chat.c; sourceTree = ""; }; + 22F9B0A11784711500E0212F /* conference.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = conference.c; sourceTree = ""; }; + 22F9B0A21784711500E0212F /* eXosip_transport_hook.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = eXosip_transport_hook.h; sourceTree = ""; }; + 22F9B0A31784711500E0212F /* ec-calibrator.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = "ec-calibrator.c"; sourceTree = ""; }; + 22F9B0A41784711500E0212F /* enum.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = enum.c; sourceTree = ""; }; + 22F9B0A51784711500E0212F /* enum.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = enum.h; sourceTree = ""; }; + 22F9B0A61784711500E0212F /* event.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = event.c; sourceTree = ""; }; + 22F9B0A71784711500E0212F /* event.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = event.h; sourceTree = ""; }; + 22F9B0A81784711500E0212F /* fonis.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = fonis.c; sourceTree = ""; }; + 22F9B0A91784711500E0212F /* friend.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = friend.c; sourceTree = ""; }; + 22F9B0AB1784711500E0212F /* Doxyfile.in */ = {isa = PBXFileReference; lastKnownFileType = text; path = Doxyfile.in; sourceTree = ""; }; + 22F9B0AC1784711500E0212F /* Makefile.am */ = {isa = PBXFileReference; lastKnownFileType = text; path = Makefile.am; sourceTree = ""; }; + 22F9B0AD1784711500E0212F /* Makefile.in */ = {isa = PBXFileReference; lastKnownFileType = text; path = Makefile.in; sourceTree = ""; }; + 22F9B0AE1784711500E0212F /* buddy_status.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = buddy_status.c; sourceTree = ""; }; + 22F9B0AF1784711500E0212F /* chatroom.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = chatroom.c; sourceTree = ""; }; + 22F9B0B01784711500E0212F /* doxygen.dox */ = {isa = PBXFileReference; lastKnownFileType = text; path = doxygen.dox; sourceTree = ""; }; + 22F9B0B11784711500E0212F /* helloworld.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = helloworld.c; sourceTree = ""; }; + 22F9B0B71784711500E0212F /* TutorialBuddyStatus.java */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.java; path = TutorialBuddyStatus.java; sourceTree = ""; }; + 22F9B0B81784711500E0212F /* TutorialChatRoom.java */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.java; path = TutorialChatRoom.java; sourceTree = ""; }; + 22F9B0B91784711500E0212F /* TutorialHelloWorld.java */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.java; path = TutorialHelloWorld.java; sourceTree = ""; }; + 22F9B0BA1784711500E0212F /* TutorialNotifier.java */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.java; path = TutorialNotifier.java; sourceTree = ""; }; + 22F9B0BB1784711500E0212F /* TutorialRegistration.java */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.java; path = TutorialRegistration.java; sourceTree = ""; }; + 22F9B0BC1784711500E0212F /* notify.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = notify.c; sourceTree = ""; }; + 22F9B0BD1784711500E0212F /* registration.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = registration.c; sourceTree = ""; }; + 22F9B0BE1784711500E0212F /* info.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = info.c; sourceTree = ""; }; + 22F9B0BF1784711500E0212F /* liblinphone_gitversion.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = liblinphone_gitversion.h; sourceTree = ""; }; + 22F9B0C01784711500E0212F /* linphone_tunnel.cc */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = linphone_tunnel.cc; sourceTree = ""; }; + 22F9B0C11784711500E0212F /* linphone_tunnel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = linphone_tunnel.h; sourceTree = ""; }; + 22F9B0C21784711500E0212F /* linphone_tunnel_config.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = linphone_tunnel_config.c; sourceTree = ""; }; + 22F9B0C31784711500E0212F /* linphone_tunnel_stubs.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = linphone_tunnel_stubs.c; sourceTree = ""; }; + 22F9B0C41784711500E0212F /* linphonecall.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = linphonecall.c; sourceTree = ""; }; + 22F9B0C51784711500E0212F /* linphonecore.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = linphonecore.c; sourceTree = ""; }; + 22F9B0C61784711500E0212F /* linphonecore.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = linphonecore.h; sourceTree = ""; }; + 22F9B0C71784711500E0212F /* linphonecore_jni.cc */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = linphonecore_jni.cc; sourceTree = ""; }; + 22F9B0C81784711500E0212F /* linphonecore_utils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = linphonecore_utils.h; sourceTree = ""; }; + 22F9B0C91784711500E0212F /* linphonefriend.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = linphonefriend.h; sourceTree = ""; }; + 22F9B0CA1784711500E0212F /* linphonepresence.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = linphonepresence.h; sourceTree = ""; }; + 22F9B0CB1784711500E0212F /* lpconfig.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = lpconfig.c; sourceTree = ""; }; + 22F9B0CC1784711500E0212F /* lpconfig.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = lpconfig.h; sourceTree = ""; }; + 22F9B0CD1784711500E0212F /* lsd.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = lsd.c; sourceTree = ""; }; + 22F9B0CE1784711500E0212F /* message_storage.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = message_storage.c; sourceTree = ""; }; + 22F9B0CF1784711500E0212F /* misc.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = misc.c; sourceTree = ""; }; + 22F9B0D01784711500E0212F /* offeranswer.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = offeranswer.c; sourceTree = ""; }; + 22F9B0D11784711500E0212F /* offeranswer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = offeranswer.h; sourceTree = ""; }; + 22F9B0D41784711500E0212F /* AUTHORS */ = {isa = PBXFileReference; lastKnownFileType = text; path = AUTHORS; sourceTree = ""; }; + 22F9B0D51784711500E0212F /* COPYING */ = {isa = PBXFileReference; lastKnownFileType = text; path = COPYING; sourceTree = ""; }; + 22F9B0D61784711500E0212F /* ChangeLog */ = {isa = PBXFileReference; lastKnownFileType = text; path = ChangeLog; sourceTree = ""; }; + 22F9B0D71784711500E0212F /* INSTALL */ = {isa = PBXFileReference; lastKnownFileType = text; path = INSTALL; sourceTree = ""; }; + 22F9B0D81784711500E0212F /* Makefile.am */ = {isa = PBXFileReference; lastKnownFileType = text; path = Makefile.am; sourceTree = ""; }; + 22F9B0D91784711500E0212F /* NEWS */ = {isa = PBXFileReference; lastKnownFileType = text; path = NEWS; sourceTree = ""; }; + 22F9B0DA1784711500E0212F /* README */ = {isa = PBXFileReference; lastKnownFileType = text; path = README; sourceTree = ""; }; + 22F9B0DB1784711500E0212F /* autogen.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = autogen.sh; sourceTree = ""; }; + 22F9B0DC1784711500E0212F /* configure.ac */ = {isa = PBXFileReference; lastKnownFileType = text; path = configure.ac; sourceTree = ""; }; + 22F9B0DE1784711500E0212F /* Makefile.am */ = {isa = PBXFileReference; lastKnownFileType = text; path = Makefile.am; sourceTree = ""; }; + 22F9B0DF1784711500E0212F /* lookup.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = lookup.c; sourceTree = ""; }; + 22F9B0E01784711500E0212F /* presence.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = presence.c; sourceTree = ""; }; + 22F9B0E11784711500E0212F /* private.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = private.h; sourceTree = ""; }; + 22F9B0E21784711500E0212F /* proxy.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = proxy.c; sourceTree = ""; }; + 22F9B0E31784711500E0212F /* sal.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal.c; sourceTree = ""; }; + 22F9B0E41784711500E0212F /* sal.h.orig */ = {isa = PBXFileReference; lastKnownFileType = text; path = sal.h.orig; sourceTree = ""; }; + 22F9B0E51784711500E0212F /* sal_eXosip2.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_eXosip2.c; sourceTree = ""; }; + 22F9B0E61784711500E0212F /* sal_eXosip2.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = sal_eXosip2.h; sourceTree = ""; }; + 22F9B0E71784711500E0212F /* sal_eXosip2_presence.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_eXosip2_presence.c; sourceTree = ""; }; + 22F9B0E81784711500E0212F /* sal_eXosip2_sdp.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_eXosip2_sdp.c; sourceTree = ""; }; + 22F9B0E91784711500E0212F /* siplogin.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = siplogin.c; sourceTree = ""; }; + 22F9B0EA1784711500E0212F /* sipsetup.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sipsetup.c; sourceTree = ""; }; + 22F9B0EB1784711500E0212F /* sipsetup.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = sipsetup.h; sourceTree = ""; }; + 22F9B0EC1784711500E0212F /* sipwizard.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sipwizard.c; sourceTree = ""; }; + 22F9B0ED1784711500E0212F /* test_ecc.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = test_ecc.c; sourceTree = ""; }; + 22F9B0EE1784711500E0212F /* test_lsd.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = test_lsd.c; sourceTree = ""; }; + 22F9B0EF1784711500E0212F /* test_numbers.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = test_numbers.c; sourceTree = ""; }; + 22F9B0F01784711500E0212F /* upnp.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = upnp.c; sourceTree = ""; }; + 22F9B0F11784711500E0212F /* upnp.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = upnp.h; sourceTree = ""; }; 288765FC0DF74451002DB57D /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 32CA4F630368D1EE00C91783 /* linphone_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = linphone_Prefix.pch; sourceTree = ""; }; @@ -1712,10 +1815,10 @@ 340751E6150F38FD00B89C47 /* UIVideoButton.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIVideoButton.m; sourceTree = ""; }; 34216F3E1547EBCD00EA9777 /* VideoZoomHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = VideoZoomHandler.h; path = LinphoneUI/VideoZoomHandler.h; sourceTree = ""; }; 34216F3F1547EBCD00EA9777 /* VideoZoomHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = VideoZoomHandler.m; path = LinphoneUI/VideoZoomHandler.m; sourceTree = ""; }; - 344ABDE71484E723007420B6 /* libzrtpcpp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libzrtpcpp.a; path = "liblinphone-sdk/apple-darwin/lib/libzrtpcpp.a"; sourceTree = ""; }; 344ABDEF14850AE9007420B6 /* libc++.1.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = "libc++.1.dylib"; path = "usr/lib/libc++.1.dylib"; sourceTree = SDKROOT; }; 344ABDF014850AE9007420B6 /* libstdc++.6.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = "libstdc++.6.dylib"; path = "usr/lib/libstdc++.6.dylib"; sourceTree = SDKROOT; }; 34A6ECEA14CF13CB00460C04 /* linphone_icon_72.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = linphone_icon_72.png; path = Resources/linphone_icon_72.png; sourceTree = ""; }; + 57B0E35F173C010400A476B8 /* libpolarssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libpolarssl.a; path = "liblinphone-sdk/apple-darwin/lib/libpolarssl.a"; sourceTree = ""; }; 57F005C315EE2CCF00914747 /* linphonerc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = linphonerc; path = Resources/linphonerc; sourceTree = ""; }; 57F005C615EE2D9200914747 /* linphonerc-factory */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = "linphonerc-factory"; path = "Resources/linphonerc-factory"; sourceTree = ""; }; 57F005C715EE2D9200914747 /* linphonerc-factory~ipad */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = "linphonerc-factory~ipad"; path = "Resources/linphonerc-factory~ipad"; sourceTree = ""; }; @@ -2388,6 +2491,11 @@ D3F9A9DA15AEEB940045320F /* history_notification.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = history_notification.png; path = Resources/history_notification.png; sourceTree = ""; }; D3F9A9EC15AF277D0045320F /* UACellBackgroundView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = UACellBackgroundView.h; path = Utils/UACellBackgroundView/UACellBackgroundView.h; sourceTree = ""; }; D3F9A9ED15AF277D0045320F /* UACellBackgroundView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = UACellBackgroundView.m; path = Utils/UACellBackgroundView/UACellBackgroundView.m; sourceTree = ""; }; + F066515317F9A02E0064280C /* UITransparentTVCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UITransparentTVCell.h; sourceTree = ""; }; + F066515417F9A02E0064280C /* UITransparentTVCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UITransparentTVCell.m; sourceTree = ""; }; + F0818E7B17FC5160005A3330 /* linphone_icon_120.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = linphone_icon_120.png; path = Resources/linphone_icon_120.png; sourceTree = ""; }; + F0818E7C17FC51D8005A3330 /* linphone_icon_76.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = linphone_icon_76.png; path = Resources/linphone_icon_76.png; sourceTree = ""; }; + F0818E7D17FC51D8005A3330 /* linphone_icon_152.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = linphone_icon_152.png; path = Resources/linphone_icon_152.png; sourceTree = ""; }; FD61C851169EAC63001AA2D6 /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ru.lproj/ChatRoomViewController.xib; sourceTree = ""; }; FD61C853169FBBB6001AA2D6 /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ru.lproj/ChatViewController.xib; sourceTree = ""; }; FD61C855169FBD1C001AA2D6 /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ru.lproj/ContactDetailsLabelViewController.xib; sourceTree = ""; }; @@ -2421,6 +2529,12 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 154227D117BA81CE005E686A /* libzrtpcppcore.a in Frameworks */, + 15017E701773578400784ACB /* libxml2.a in Frameworks */, + 22AF73C21754C0D100BE8398 /* libopus.a in Frameworks */, + 57B0E360173C010400A476B8 /* libpolarssl.a in Frameworks */, + 223CA7E616D9255800EF1BEC /* libantlr3c.a in Frameworks */, + 223CA7E716D9255800EF1BEC /* libbellesip.a in Frameworks */, D30562151671DC4900C97967 /* libNinePatch.a in Frameworks */, D30562161671DC4900C97967 /* libXMLRPC.a in Frameworks */, 22B5F03510CE6B2F00777D97 /* AddressBook.framework in Frameworks */, @@ -2447,9 +2561,7 @@ 22D1B68112A3E0BE001AE361 /* libresolv.dylib in Frameworks */, 22276E8313C73D3100210156 /* libavcodec.a in Frameworks */, 22276E8413C73D3100210156 /* libavutil.a in Frameworks */, - 22E5B0B0133B5EA20044EA25 /* libcrypto.a in Frameworks */, 226CDADF14E2D0B800513B67 /* libbcg729.a in Frameworks */, - 220FAD3110765B400068D98F /* libeXosip2.a in Frameworks */, 220FAD3210765B400068D98F /* libgsm.a in Frameworks */, 223148E41178A08200637D6A /* libilbc.a in Frameworks */, F476004B147AAF2800FFF19B /* liblinphone.a in Frameworks */, @@ -2460,20 +2572,16 @@ 226183B0147259670037138E /* libmssilk.a in Frameworks */, 22AA8AFE13D7125600B30535 /* libmsx264.a in Frameworks */, 22A10F3B11F8960300373793 /* libortp.a in Frameworks */, - 220FAD3610765B400068D98F /* libosip2.a in Frameworks */, - 220FAD3710765B400068D98F /* libosipparser2.a in Frameworks */, 226F2ED71344B0EF00F6EF27 /* libopencore-amrnb.a in Frameworks */, 226F2ED61344B0EF00F6EF27 /* libopencore-amrwb.a in Frameworks */, 226CDAE014E2D0B800513B67 /* libmsbcg729.a in Frameworks */, 220FAD3810765B400068D98F /* libspeex.a in Frameworks */, 220FAD3910765B400068D98F /* libspeexdsp.a in Frameworks */, 226183AE1472527D0037138E /* libsrtp.a in Frameworks */, - 22E5B0AF133B5EA20044EA25 /* libssl.a in Frameworks */, 226183AD1472527D0037138E /* libSKP_SILK_SDK.a in Frameworks */, 22276E8513C73D3100210156 /* libswscale.a in Frameworks */, 7066FC0C13E830E400EFC6DC /* libvpx.a in Frameworks */, 22AA8AFD13D7125600B30535 /* libx264.a in Frameworks */, - 344ABDE81484E723007420B6 /* libzrtpcpp.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2481,6 +2589,10 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + F04F1E9D1806A41800D080F2 /* libpolarssl.a in Frameworks */, + 15017E71177357C500784ACB /* libxml2.a in Frameworks */, + 2200C2DC174BBB24002E9A70 /* MobileCoreServices.framework in Frameworks */, + 2200C2DB174BB87A002E9A70 /* AssetsLibrary.framework in Frameworks */, D30562131671DC3E00C97967 /* libNinePatch.a in Frameworks */, D30562141671DC3E00C97967 /* libXMLRPC.a in Frameworks */, 22D8F170147548E2008C97DB /* AVFoundation.framework in Frameworks */, @@ -2501,8 +2613,6 @@ 22D8F166147548E2008C97DB /* UIKit.framework in Frameworks */, 22D8F178147548E2008C97DB /* libresolv.dylib in Frameworks */, D34BD61515C13B7B0070C209 /* libsqlite3.dylib in Frameworks */, - 22D8F164147548E2008C97DB /* libcrypto.a in Frameworks */, - 22D8F16A147548E2008C97DB /* libeXosip2.a in Frameworks */, 22D8F174147548E2008C97DB /* libilbc.a in Frameworks */, 22D8F16B147548E2008C97DB /* libgsm.a in Frameworks */, D34BD61815C13D0B0070C209 /* liblinphone.a in Frameworks */, @@ -2513,14 +2623,14 @@ 22D8F179147548E2008C97DB /* libopencore-amrwb.a in Frameworks */, 22D8F17A147548E2008C97DB /* libopencore-amrnb.a in Frameworks */, 22D8F177147548E2008C97DB /* libortp.a in Frameworks */, - 22D8F16C147548E2008C97DB /* libosip2.a in Frameworks */, - 22D8F16D147548E2008C97DB /* libosipparser2.a in Frameworks */, 22D8F17E147548E2008C97DB /* libSKP_SILK_SDK.a in Frameworks */, 22D8F17F147548E2008C97DB /* libsrtp.a in Frameworks */, 22D8F16E147548E2008C97DB /* libspeex.a in Frameworks */, 22D8F16F147548E2008C97DB /* libspeexdsp.a in Frameworks */, - 22D8F163147548E2008C97DB /* libssl.a in Frameworks */, 22D8F15B147548E2008C97DB /* libvpx.a in Frameworks */, + 223CA7E816D9256E00EF1BEC /* libantlr3c.a in Frameworks */, + 223CA7E916D9257200EF1BEC /* libbellesip.a in Frameworks */, + 22AF73C31754C0D800BE8398 /* libopus.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2896,6 +3006,8 @@ D32460E5159D9AAD00BA7F3A /* UITransparentView.m */, 340751E5150F38FC00B89C47 /* UIVideoButton.h */, 340751E6150F38FD00B89C47 /* UIVideoButton.m */, + F066515317F9A02E0064280C /* UITransparentTVCell.h */, + F066515417F9A02E0064280C /* UITransparentTVCell.m */, ); path = LinphoneUI; sourceTree = ""; @@ -2978,15 +3090,210 @@ path = openssl; sourceTree = ""; }; + 22F9B087178470F400E0212F /* liblinphone */ = { + isa = PBXGroup; + children = ( + 22F9B0881784711500E0212F /* coreapi */, + ); + name = liblinphone; + sourceTree = ""; + }; + 22F9B0881784711500E0212F /* coreapi */ = { + isa = PBXGroup; + children = ( + 22F9B0891784711500E0212F /* .gitignore */, + 22F9B08A1784711500E0212F /* Makefile.am */, + 22F9B08B1784711500E0212F /* Makefile.in */, + 22F9B08C1784711500E0212F /* TunnelManager.cc */, + 22F9B08D1784711500E0212F /* TunnelManager.hh */, + 22F9B08E1784711500E0212F /* address.c */, + 22F9B08F1784711500E0212F /* authentication.c */, + 22F9B0901784711500E0212F /* bellesip_sal */, + 22F9B09E1784711500E0212F /* callbacks.c */, + 22F9B09F1784711500E0212F /* callbacks.c.orig */, + 22F9B0A01784711500E0212F /* chat.c */, + 22F9B0A11784711500E0212F /* conference.c */, + 22F9B0A21784711500E0212F /* eXosip_transport_hook.h */, + 22F9B0A31784711500E0212F /* ec-calibrator.c */, + 22F9B0A41784711500E0212F /* enum.c */, + 22F9B0A51784711500E0212F /* enum.h */, + 22F9B0A61784711500E0212F /* event.c */, + 22F9B0A71784711500E0212F /* event.h */, + 22F9B0A81784711500E0212F /* fonis.c */, + 22F9B0A91784711500E0212F /* friend.c */, + 22F9B0AA1784711500E0212F /* help */, + 22F9B0BE1784711500E0212F /* info.c */, + 22F9B0BF1784711500E0212F /* liblinphone_gitversion.h */, + 22F9B0C01784711500E0212F /* linphone_tunnel.cc */, + 22F9B0C11784711500E0212F /* linphone_tunnel.h */, + 22F9B0C21784711500E0212F /* linphone_tunnel_config.c */, + 22F9B0C31784711500E0212F /* linphone_tunnel_stubs.c */, + 22F9B0C41784711500E0212F /* linphonecall.c */, + 22F9B0C51784711500E0212F /* linphonecore.c */, + 22F9B0C61784711500E0212F /* linphonecore.h */, + 22F9B0C71784711500E0212F /* linphonecore_jni.cc */, + 22F9B0C81784711500E0212F /* linphonecore_utils.h */, + 22F9B0C91784711500E0212F /* linphonefriend.h */, + 22F9B0CA1784711500E0212F /* linphonepresence.h */, + 22F9B0CB1784711500E0212F /* lpconfig.c */, + 22F9B0CC1784711500E0212F /* lpconfig.h */, + 22F9B0CD1784711500E0212F /* lsd.c */, + 22F9B0CE1784711500E0212F /* message_storage.c */, + 22F9B0CF1784711500E0212F /* misc.c */, + 22F9B0D01784711500E0212F /* offeranswer.c */, + 22F9B0D11784711500E0212F /* offeranswer.h */, + 22F9B0D21784711500E0212F /* plugins */, + 22F9B0E01784711500E0212F /* presence.c */, + 22F9B0E11784711500E0212F /* private.h */, + 22F9B0E21784711500E0212F /* proxy.c */, + 22F9B0E31784711500E0212F /* sal.c */, + 22F9B0E41784711500E0212F /* sal.h.orig */, + 22F9B0E51784711500E0212F /* sal_eXosip2.c */, + 22F9B0E61784711500E0212F /* sal_eXosip2.h */, + 22F9B0E71784711500E0212F /* sal_eXosip2_presence.c */, + 22F9B0E81784711500E0212F /* sal_eXosip2_sdp.c */, + 22F9B0E91784711500E0212F /* siplogin.c */, + 22F9B0EA1784711500E0212F /* sipsetup.c */, + 22F9B0EB1784711500E0212F /* sipsetup.h */, + 22F9B0EC1784711500E0212F /* sipwizard.c */, + 22F9B0ED1784711500E0212F /* test_ecc.c */, + 22F9B0EE1784711500E0212F /* test_lsd.c */, + 22F9B0EF1784711500E0212F /* test_numbers.c */, + 22F9B0F01784711500E0212F /* upnp.c */, + 22F9B0F11784711500E0212F /* upnp.h */, + ); + name = coreapi; + path = submodules/linphone/coreapi; + sourceTree = ""; + }; + 22F9B0901784711500E0212F /* bellesip_sal */ = { + isa = PBXGroup; + children = ( + 22F9B0911784711500E0212F /* sal_address_impl.c */, + 22F9B0921784711500E0212F /* sal_impl.c */, + 22F9B0931784711500E0212F /* sal_impl.h */, + 22F9B0941784711500E0212F /* sal_op_call.c */, + 22F9B0951784711500E0212F /* sal_op_call_transfer.c */, + 22F9B0961784711500E0212F /* sal_op_events.c */, + 22F9B0971784711500E0212F /* sal_op_impl.c */, + 22F9B0981784711500E0212F /* sal_op_info.c */, + 22F9B0991784711500E0212F /* sal_op_message.c */, + 22F9B09A1784711500E0212F /* sal_op_presence.c */, + 22F9B09B1784711500E0212F /* sal_op_publish.c */, + 22F9B09C1784711500E0212F /* sal_op_registration.c */, + 22F9B09D1784711500E0212F /* sal_sdp.c */, + ); + path = bellesip_sal; + sourceTree = ""; + }; + 22F9B0AA1784711500E0212F /* help */ = { + isa = PBXGroup; + children = ( + 22F9B0AB1784711500E0212F /* Doxyfile.in */, + 22F9B0AC1784711500E0212F /* Makefile.am */, + 22F9B0AD1784711500E0212F /* Makefile.in */, + 22F9B0AE1784711500E0212F /* buddy_status.c */, + 22F9B0AF1784711500E0212F /* chatroom.c */, + 22F9B0B01784711500E0212F /* doxygen.dox */, + 22F9B0B11784711500E0212F /* helloworld.c */, + 22F9B0B21784711500E0212F /* java */, + 22F9B0BC1784711500E0212F /* notify.c */, + 22F9B0BD1784711500E0212F /* registration.c */, + ); + path = help; + sourceTree = ""; + }; + 22F9B0B21784711500E0212F /* java */ = { + isa = PBXGroup; + children = ( + 22F9B0B31784711500E0212F /* org */, + ); + path = java; + sourceTree = ""; + }; + 22F9B0B31784711500E0212F /* org */ = { + isa = PBXGroup; + children = ( + 22F9B0B41784711500E0212F /* linphone */, + ); + path = org; + sourceTree = ""; + }; + 22F9B0B41784711500E0212F /* linphone */ = { + isa = PBXGroup; + children = ( + 22F9B0B51784711500E0212F /* core */, + ); + path = linphone; + sourceTree = ""; + }; + 22F9B0B51784711500E0212F /* core */ = { + isa = PBXGroup; + children = ( + 22F9B0B61784711500E0212F /* tutorials */, + ); + path = core; + sourceTree = ""; + }; + 22F9B0B61784711500E0212F /* tutorials */ = { + isa = PBXGroup; + children = ( + 22F9B0B71784711500E0212F /* TutorialBuddyStatus.java */, + 22F9B0B81784711500E0212F /* TutorialChatRoom.java */, + 22F9B0B91784711500E0212F /* TutorialHelloWorld.java */, + 22F9B0BA1784711500E0212F /* TutorialNotifier.java */, + 22F9B0BB1784711500E0212F /* TutorialRegistration.java */, + ); + path = tutorials; + sourceTree = ""; + }; + 22F9B0D21784711500E0212F /* plugins */ = { + isa = PBXGroup; + children = ( + 22F9B0D31784711500E0212F /* buddylookup */, + ); + path = plugins; + sourceTree = ""; + }; + 22F9B0D31784711500E0212F /* buddylookup */ = { + isa = PBXGroup; + children = ( + 22F9B0D41784711500E0212F /* AUTHORS */, + 22F9B0D51784711500E0212F /* COPYING */, + 22F9B0D61784711500E0212F /* ChangeLog */, + 22F9B0D71784711500E0212F /* INSTALL */, + 22F9B0D81784711500E0212F /* Makefile.am */, + 22F9B0D91784711500E0212F /* NEWS */, + 22F9B0DA1784711500E0212F /* README */, + 22F9B0DB1784711500E0212F /* autogen.sh */, + 22F9B0DC1784711500E0212F /* configure.ac */, + 22F9B0DD1784711500E0212F /* src */, + ); + path = buddylookup; + sourceTree = ""; + }; + 22F9B0DD1784711500E0212F /* src */ = { + isa = PBXGroup; + children = ( + 22F9B0DE1784711500E0212F /* Makefile.am */, + 22F9B0DF1784711500E0212F /* lookup.c */, + ); + path = src; + sourceTree = ""; + }; 29B97314FDCFA39411CA2CEA /* CustomTemplate */ = { isa = PBXGroup; children = ( + 154227D017BA81CE005E686A /* libzrtpcppcore.a */, + 15017E6F1773578400784ACB /* libxml2.a */, + 57B0E35F173C010400A476B8 /* libpolarssl.a */, + 223CA7E416D9255800EF1BEC /* libantlr3c.a */, + 223CA7E516D9255800EF1BEC /* libbellesip.a */, + 22AF73C11754C0D000BE8398 /* libopus.a */, 2258633C11410BAC00C5A737 /* README */, 22276E8013C73D3100210156 /* libavcodec.a */, 22276E8113C73D3100210156 /* libavutil.a */, 226CDADD14E2D0B800513B67 /* libbcg729.a */, - 22E5B0AE133B5EA20044EA25 /* libcrypto.a */, - 220FAD2810765B400068D98F /* libeXosip2.a */, 220FAD2910765B400068D98F /* libgsm.a */, 223148E31178A08200637D6A /* libilbc.a */, 2211DB911475562600DEE054 /* liblinphone.a */, @@ -3000,21 +3307,18 @@ 226F2ED41344B0EF00F6EF27 /* libopencore-amrnb.a */, 226F2ED31344B0EF00F6EF27 /* libopencore-amrwb.a */, 220FAD2C10765B400068D98F /* libortp.a */, - 220FAD2D10765B400068D98F /* libosip2.a */, - 220FAD2E10765B400068D98F /* libosipparser2.a */, 226183AA1472527D0037138E /* libSKP_SILK_SDK.a */, 220FAD2F10765B400068D98F /* libspeex.a */, 220FAD3010765B400068D98F /* libspeexdsp.a */, 226183AB1472527D0037138E /* libsrtp.a */, - 22E5B0AD133B5EA20044EA25 /* libssl.a */, 22276E8213C73D3100210156 /* libswscale.a */, 7066FC0B13E830E400EFC6DC /* libvpx.a */, 22AA8AFB13D7125500B30535 /* libx264.a */, - 344ABDE71484E723007420B6 /* libzrtpcpp.a */, 344ABDEF14850AE9007420B6 /* libc++.1.dylib */, 22D1B68012A3E0BE001AE361 /* libresolv.dylib */, D32B6E2E15A5C0AC0033019F /* libsqlite3.dylib */, 344ABDF014850AE9007420B6 /* libstdc++.6.dylib */, + 22F9B087178470F400E0212F /* liblinphone */, 22B5F03410CE6B2F00777D97 /* AddressBook.framework */, 22B5EFA210CE50BD00777D97 /* AddressBookUI.framework */, 22405EED1600B4E400B92522 /* AssetsLibrary.framework */, @@ -3285,10 +3589,13 @@ D37E3ECF1619DCC50087659A /* licenses.html */, 225CB2F911ABB76400628906 /* linphone-banner.png */, 8D1107310486CEB800E47090 /* linphone-Info.plist */, + F0818E7B17FC5160005A3330 /* linphone_icon_120.png */, + F0818E7D17FC51D8005A3330 /* linphone_icon_152.png */, 22058C70116E305000B08DDD /* linphone_icon_57.png */, D33CF34815D3A03400CD4B85 /* linphone_icon_57@2x.png */, 34A6ECEA14CF13CB00460C04 /* linphone_icon_72.png */, D33CF34915D3A03400CD4B85 /* linphone_icon_72@2x.png */, + F0818E7C17FC51D8005A3330 /* linphone_icon_76.png */, D3012CC31610467D007CD926 /* linphone_logo.png */, D38F46F1160C5CC8002D4C4A /* linphone_splashscreen-568h@2x.png */, D3103920162C3C5100C00C18 /* linphone_splashscreen-Landscape.png */, @@ -3800,7 +4107,7 @@ 29B97313FDCFA39411CA2CEA /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0450; + LastUpgradeCheck = 0460; }; buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "linphone" */; compatibilityVersion = "Xcode 3.2"; @@ -4025,6 +4332,7 @@ D377BBFA15A19DA6002B696B /* video_on_disabled.png in Resources */, D37B96B715A1A6F20005CCD2 /* call_state_delete_default.png in Resources */, D37B96B915A1A6F20005CCD2 /* call_state_delete_over.png in Resources */, + F0818E8017FC51D8005A3330 /* linphone_icon_152.png in Resources */, D3C2814B15A2D38D0098AA42 /* dialer_selected.png in Resources */, D3C2815215A2D64A0098AA42 /* numpad_star_over.png in Resources */, D365AA7B15A2DE7500CAFE3F /* speaker_off_disabled.png in Resources */, @@ -4167,6 +4475,7 @@ D3A74EDC15C69392001500B9 /* chat_selected~ipad.png in Resources */, D3A74EDE15C69392001500B9 /* conference_default~ipad.png in Resources */, D3A74EE015C69392001500B9 /* conference_over~ipad.png in Resources */, + F0818E7E17FC51D8005A3330 /* linphone_icon_76.png in Resources */, D3A74EE215C69392001500B9 /* contacts_default_landscape~ipad.png in Resources */, D3A74EE415C69392001500B9 /* contacts_default~ipad.png in Resources */, D3A74EE615C69392001500B9 /* contacts_over_landscape~ipad.png in Resources */, @@ -4561,6 +4870,7 @@ D34BD6AB15C13DB70070C209 /* list_details_over.png in Resources */, D34BD6AC15C13DB70070C209 /* micro_off_default.png in Resources */, D34BD6AD15C13DB70070C209 /* micro_off_default_landscape.png in Resources */, + F0818E8117FC51D8005A3330 /* linphone_icon_152.png in Resources */, D34BD6AE15C13DB70070C209 /* micro_off_disabled.png in Resources */, D34BD6AF15C13DB70070C209 /* micro_off_disabled_landscape.png in Resources */, D34BD6B015C13DB70070C209 /* micro_off_over.png in Resources */, @@ -4703,6 +5013,7 @@ D3A74EDD15C69392001500B9 /* chat_selected~ipad.png in Resources */, D3A74EDF15C69392001500B9 /* conference_default~ipad.png in Resources */, D3A74EE115C69392001500B9 /* conference_over~ipad.png in Resources */, + F0818E7F17FC51D8005A3330 /* linphone_icon_76.png in Resources */, D3A74EE315C69392001500B9 /* contacts_default_landscape~ipad.png in Resources */, D3A74EE515C69392001500B9 /* contacts_default~ipad.png in Resources */, D3A74EE715C69392001500B9 /* contacts_over_landscape~ipad.png in Resources */, @@ -5019,6 +5330,7 @@ D378906515AC373B00BD776C /* ContactDetailsLabelViewController.m in Sources */, D3E8F68615ADE05B0065A226 /* UIContactDetailsFooter.m in Sources */, C90FAA7915AF54E6002091CB /* HistoryDetailsViewController.m in Sources */, + F066515517F9A02E0064280C /* UITransparentTVCell.m in Sources */, D3F9A9EE15AF277E0045320F /* UACellBackgroundView.m in Sources */, D35860D615B549B500513429 /* Utils.m in Sources */, D3F7998115BD32370018C273 /* TPMultiLayoutViewController.m in Sources */, @@ -5117,6 +5429,7 @@ D378906615AC373B00BD776C /* ContactDetailsLabelViewController.m in Sources */, D3E8F68715ADE05B0065A226 /* UIContactDetailsFooter.m in Sources */, C90FAA7A15AF54E6002091CB /* HistoryDetailsViewController.m in Sources */, + F066515617F9A02E0064280C /* UITransparentTVCell.m in Sources */, D3F9A9EF15AF277E0045320F /* UACellBackgroundView.m in Sources */, D35860D715B549B500513429 /* Utils.m in Sources */, D3F7998215BD32370018C273 /* TPMultiLayoutViewController.m in Sources */, @@ -5446,6 +5759,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + ARCHS = armv7; COMPRESS_PNG_FILES = NO; COPY_PHASE_STRIP = NO; FRAMEWORK_SEARCH_PATHS = ""; @@ -5455,7 +5769,6 @@ GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = linphone_Prefix.pch; GCC_PREPROCESSOR_DEFINITIONS = ( - IN_LINPHONE, VIDEO_ENABLED, HAVE_X264, HAVE_SILK, @@ -5463,14 +5776,7 @@ ); GCC_TREAT_WARNINGS_AS_ERRORS = YES; HEADER_SEARCH_PATHS = ( - submodules/linphone/coreapi, - submodules/linphone/mediastreamer2/include, - submodules/linphone/mediastreamer2/include, - submodules/linphone/oRTP/include, - submodules/externals/gsm/, - submodules/externals/osip/include, - submodules/externals/exosip/include, - submodules/externals/speex/include, + "liblinphone-sdk/apple-darwin/include", Classes/Utils/NinePatch/, Classes/Utils/XMLRPC/, ); @@ -5493,15 +5799,20 @@ isa = XCBuildConfiguration; buildSettings = { ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; CODE_SIGN_IDENTITY = "iPhone Distribution: jehan monnier"; GCC_THUMB_SUPPORT = NO; GCC_VERSION = com.apple.compilers.llvm.clang.1_0; GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_VARIABLE = YES; HEADER_SEARCH_PATHS = ""; IPHONEOS_DEPLOYMENT_TARGET = 4.3; LIBRARY_SEARCH_PATHS = ""; - PROVISIONING_PROFILE = "7763350E-083E-4ADA-8535-05883F19F947"; + PROVISIONING_PROFILE = "0636A6EA-90EB-4D92-B707-19FC32F9A7CF"; SDKROOT = iphoneos; STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = dynamic; TARGETED_DEVICE_FAMILY = "1,2"; @@ -5529,14 +5840,7 @@ ); GCC_TREAT_WARNINGS_AS_ERRORS = YES; HEADER_SEARCH_PATHS = ( - submodules/linphone/coreapi, - submodules/linphone/mediastreamer2/include, - submodules/linphone/mediastreamer2/include, - submodules/linphone/oRTP/include, - submodules/externals/gsm/, - submodules/externals/osip/include, - submodules/externals/exosip/include, - submodules/externals/speex/include, + "liblinphone-sdk/apple-darwin/include", Classes/Utils/NinePatch/, Classes/Utils/XMLRPC/, ); @@ -5573,14 +5877,7 @@ DEBUG, ); HEADER_SEARCH_PATHS = ( - submodules/linphone/coreapi, - submodules/linphone/mediastreamer2/include, - submodules/linphone/mediastreamer2/include, - submodules/linphone/oRTP/include, - submodules/externals/gsm/, - submodules/externals/osip/include, - submodules/externals/exosip/include, - submodules/externals/speex/include, + liblinphone-sdk/apple-darwin/include, Classes/Utils/NinePatch/, Classes/Utils/XMLRPC/, ); @@ -5615,14 +5912,7 @@ VIDEO_ENABLED, ); HEADER_SEARCH_PATHS = ( - submodules/linphone/coreapi, - submodules/linphone/mediastreamer2/include, - submodules/linphone/mediastreamer2/include, - submodules/linphone/oRTP/include, - submodules/externals/gsm/, - submodules/externals/osip/include, - submodules/externals/exosip/include, - submodules/externals/speex/include, + liblinphone-sdk/apple-darwin/include, Classes/Utils/NinePatch/, Classes/Utils/XMLRPC/, ); @@ -5658,14 +5948,7 @@ VIDEO_ENABLED, ); HEADER_SEARCH_PATHS = ( - submodules/linphone/coreapi, - submodules/linphone/mediastreamer2/include, - submodules/linphone/mediastreamer2/include, - submodules/linphone/oRTP/include, - submodules/externals/gsm/, - submodules/externals/osip/include, - submodules/externals/exosip/include, - submodules/externals/speex/include, + liblinphone-sdk/apple-darwin/include, Classes/Utils/NinePatch/, Classes/Utils/XMLRPC/, ); @@ -5701,14 +5984,7 @@ VIDEO_ENABLED, ); HEADER_SEARCH_PATHS = ( - submodules/linphone/coreapi, - submodules/linphone/mediastreamer2/include, - submodules/linphone/mediastreamer2/include, - submodules/linphone/oRTP/include, - submodules/externals/gsm/, - submodules/externals/osip/include, - submodules/externals/exosip/include, - submodules/externals/speex/include, + liblinphone-sdk/apple-darwin/include, Classes/Utils/NinePatch/, Classes/Utils/XMLRPC/, ); @@ -5730,10 +6006,15 @@ isa = XCBuildConfiguration; buildSettings = { ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; CODE_SIGN_IDENTITY = "iPhone Developer"; GCC_THUMB_SUPPORT = NO; GCC_VERSION = com.apple.compilers.llvm.clang.1_0; GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_VARIABLE = YES; HEADER_SEARCH_PATHS = ""; IPHONEOS_DEPLOYMENT_TARGET = 4.3; @@ -5760,19 +6041,11 @@ GCC_PREPROCESSOR_DEFINITIONS = ( IN_LINPHONE, VIDEO_ENABLED, - HAVE_X264, HAVE_SILK, ); GCC_TREAT_WARNINGS_AS_ERRORS = YES; HEADER_SEARCH_PATHS = ( - submodules/linphone/coreapi, - submodules/linphone/mediastreamer2/include, - submodules/linphone/mediastreamer2/include, - submodules/linphone/oRTP/include, - submodules/externals/gsm/, - submodules/externals/osip/include, - submodules/externals/exosip/include, - submodules/externals/speex/include, + "liblinphone-sdk/apple-darwin/include", Classes/Utils/NinePatch/, Classes/Utils/XMLRPC/, ); @@ -5795,10 +6068,15 @@ isa = XCBuildConfiguration; buildSettings = { ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; CODE_SIGN_IDENTITY = "iPhone Distribution: jehan monnier"; GCC_THUMB_SUPPORT = NO; GCC_VERSION = com.apple.compilers.llvm.clang.1_0; GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_VARIABLE = YES; HEADER_SEARCH_PATHS = ""; IPHONEOS_DEPLOYMENT_TARGET = 4.3; @@ -5826,19 +6104,11 @@ GCC_PREPROCESSOR_DEFINITIONS = ( IN_LINPHONE, VIDEO_ENABLED, - HAVE_X264, HAVE_SILK, ); GCC_TREAT_WARNINGS_AS_ERRORS = YES; HEADER_SEARCH_PATHS = ( - submodules/linphone/coreapi, - submodules/linphone/mediastreamer2/include, - submodules/linphone/mediastreamer2/include, - submodules/linphone/oRTP/include, - submodules/externals/gsm/, - submodules/externals/osip/include, - submodules/externals/exosip/include, - submodules/externals/speex/include, + "liblinphone-sdk/apple-darwin/include", Classes/Utils/NinePatch/, Classes/Utils/XMLRPC/, ); @@ -5861,15 +6131,20 @@ isa = XCBuildConfiguration; buildSettings = { ARCHS = "$(ARCHS_STANDARD_32_BIT)"; - CODE_SIGN_IDENTITY = "iPhone Developer"; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer: jehan monnier (E8MYPN2NXL)"; GCC_THUMB_SUPPORT = NO; GCC_VERSION = com.apple.compilers.llvm.clang.1_0; GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_VARIABLE = YES; HEADER_SEARCH_PATHS = ""; IPHONEOS_DEPLOYMENT_TARGET = 4.3; LIBRARY_SEARCH_PATHS = ""; - PROVISIONING_PROFILE = ""; + PROVISIONING_PROFILE = "2AC0DC11-4546-47B6-8B8A-453CCA80903C"; SDKROOT = iphoneos; STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = dynamic; TARGETED_DEVICE_FAMILY = "1,2"; diff --git a/submodules/Default-568h@2x.png b/submodules/Default-568h@2x.png new file mode 100644 index 000000000..0891b7aab Binary files /dev/null and b/submodules/Default-568h@2x.png differ diff --git a/submodules/bcg729 b/submodules/bcg729 index 715309618..136c165a6 160000 --- a/submodules/bcg729 +++ b/submodules/bcg729 @@ -1 +1 @@ -Subproject commit 715309618f3c5e20311d4c113d401f1c43f87511 +Subproject commit 136c165a611a2552a3f52b0669b47a1bce0ab989 diff --git a/submodules/belle-sip b/submodules/belle-sip new file mode 160000 index 000000000..461029db7 --- /dev/null +++ b/submodules/belle-sip @@ -0,0 +1 @@ +Subproject commit 461029db78ecec56e81363d0b3d3786e349257f8 diff --git a/submodules/build/Makefile b/submodules/build/Makefile index bb1fd7a6c..29cc10e9b 100644 --- a/submodules/build/Makefile +++ b/submodules/build/Makefile @@ -21,37 +21,61 @@ ############################################################################ enable_gpl_third_parties=yes enable_zrtp=no +enable_ffmpeg=yes +enable_opus=yes +enable_debug=no .NOTPARALLEL all: check_options build warning + +# check that the selected options are correct +CHECKOPT_MSG := "" + ifeq ($(enable_gpl_third_parties)$(enable_zrtp),noyes) + CHECKOPT_MSG += "ZRTP is not available in non-gpl build.\n" +endif + +ifeq ($(enable_gpl_third_parties)$(enable_ffmpeg),noyes) + CHECKOPT_MSG += "FFMPEG is not available in non-gpl build.\n" +endif + +ifneq ($(CHECKOPT_MSG),"") check_options: - @echo "ZRTP is not available in non-gpl build." + @echo $(CHECKOPT_MSG) @exit -1 else check_options: - endif +# setup footer + ifeq ($(enable_gpl_third_parties),yes) warning: @echo - @echo "*****************************************************************" - @echo "*****************************************************************" - @echo "*****CAUTION, this liblinphone SDK is built using GPL code ******" - @echo "*****To disable gpl code, use make enable_gpl_third_parties=no***" - @echo "*****************************************************************" - @echo "*****************************************************************" + @echo "***************************************************************************" + @echo "***************************************************************************" + @echo "*****CAUTION, this liblinphone SDK is built using 3rd party GPL code ******" + @echo "*****Even if you acquired a proprietary license from Belledonne ******" + @echo "*****Communications, this SDK is GPL and GPL only. ******" + @echo "*****To disable 3rd party gpl code, please use: ******" + @echo "*****$ make enable_gpl_third_parties=no ******" + @echo "***************************************************************************" + @echo "***************************************************************************" else warning: @echo @echo "*****************************************************************" @echo "*****************************************************************" - @echo "*****linphone SDK without GPL code ******" + @echo "*****Linphone SDK without 3rd party GPL software ******" + @echo "*****If you acquired a proprietary license from Belledonne ******" + @echo "*****Communications, this SDK can be used to create ******" + @echo "*****a proprietary linphone-based application. ******" @echo "*****************************************************************" @echo "*****************************************************************" endif -LINPHONE_OPTIONS=enable_gpl_third_parties=$(enable_gpl_third_parties) enable_zrtp=$(enable_zrtp) +LINPHONE_OPTIONS=enable_gpl_third_parties=$(enable_gpl_third_parties) \ + enable_zrtp=$(enable_zrtp) enable_opus=$(enable_opus) \ + enable_debug=$(enable_debug) enable_ffmpeg=$(enable_ffmpeg) build: make -f builder-iphone-simulator.mk $(LINPHONE_OPTIONS) all \ diff --git a/submodules/build/builder-iphone-os.mk b/submodules/build/builder-iphone-os.mk index d481f90a5..8933c20a8 100644 --- a/submodules/build/builder-iphone-os.mk +++ b/submodules/build/builder-iphone-os.mk @@ -30,13 +30,18 @@ linphone_configure_controls= \ --enable-gtk_ui=no \ --enable-console_ui=no \ --enable-ssl-hmac=no \ - --enable-ssl=yes \ + --enable-ssl=no \ --disable-theora \ --disable-sdl \ --disable-x11 \ + --enable-bellesip \ --with-gsm=$(prefix) \ --disable-tests \ - --with-srtp=$(prefix) + --disable-tutorials \ + --with-srtp=$(prefix) \ + --with-antlr=$(prefix) \ + --disable-msg-storage + ifeq ($(enable_zrtp),yes) linphone_configure_controls+= --enable-zrtp @@ -46,35 +51,62 @@ endif #path BUILDER_SRC_DIR?=$(shell pwd)/../ +ifeq ($(enable_debug),yes) +BUILDER_BUILD_DIR?=$(shell pwd)/../build-$(host)-debug +linphone_configure_controls += CFLAGS="-g" +prefix?=$(BUILDER_SRC_DIR)/../liblinphone-sdk/$(host)-debug +else BUILDER_BUILD_DIR?=$(shell pwd)/../build-$(host) +prefix?=$(BUILDER_SRC_DIR)/../liblinphone-sdk/$(host) +endif LINPHONE_SRC_DIR=$(BUILDER_SRC_DIR)/linphone LINPHONE_BUILD_DIR=$(BUILDER_BUILD_DIR)/linphone all: build-linphone build-msilbc build-msamr build-msx264 build-mssilk build-msbcg729 -$(LINPHONE_BUILD_DIR)/enable_gpl_third_parties: - mkdir -p $(LINPHONE_BUILD_DIR) - touch $(LINPHONE_BUILD_DIR)/enable_gpl_third_parties - rm -f $(LINPHONE_BUILD_DIR)/disable_gpl_third_parties - cd $(LINPHONE_BUILD_DIR) && rm -f Makefile && rm -f oRTP/Makefile && rm -f mediastreamer2/Makefile +# setup the switches that might trigger a linphone reconfiguration -$(LINPHONE_BUILD_DIR)/disable_gpl_third_parties: - mkdir -p $(LINPHONE_BUILD_DIR) - touch $(LINPHONE_BUILD_DIR)/disable_gpl_third_parties - rm -f $(LINPHONE_BUILD_DIR)/enable_gpl_third_parties - cd $(LINPHONE_BUILD_DIR) && rm -f Makefile && rm -f oRTP/Makefile && rm -f mediastreamer2/Makefile +enable_gpl_third_parties?=yes +enable_ffmpeg?=yes + +SWITCHES:= ifeq ($(enable_gpl_third_parties),yes) -linphone_configure_controls+= --enable-ffmpeg -detect_gpl_mode_switch: $(LINPHONE_BUILD_DIR)/enable_gpl_third_parties - -else -linphone_configure_controls+= --disable-ffmpeg -detect_gpl_mode_switch: $(LINPHONE_BUILD_DIR)/disable_gpl_third_parties + SWITCHES+= enable_gpl_third_parties + ifeq ($(enable_ffmpeg), yes) + linphone_configure_controls+= --enable-ffmpeg + SWITCHES += enable_ffmpeg + else + linphone_configure_controls+= --disable-ffmpeg + SWITCHES += disable_ffmpeg + endif + +else # !enable gpl + linphone_configure_controls+= --disable-ffmpeg + SWITCHES += disable_gpl_third_parties disable_ffmpeg endif +SWITCHES := $(addprefix $(LINPHONE_BUILD_DIR)/,$(SWITCHES)) + +mode_switch_check: $(SWITCHES) + + +$(LINPHONE_BUILD_DIR)/disable_%: + mkdir -p $(LINPHONE_BUILD_DIR) + touch $(LINPHONE_BUILD_DIR)/disable_$* + rm -f $(LINPHONE_BUILD_DIR)/enable_$* + cd $(LINPHONE_BUILD_DIR) && rm -f Makefile && rm -f oRTP/Makefile && rm -f mediastreamer2/Makefile + +$(LINPHONE_BUILD_DIR)/enable_%: + mkdir -p $(LINPHONE_BUILD_DIR) + touch $(LINPHONE_BUILD_DIR)/enable_$* + rm -f $(LINPHONE_BUILD_DIR)/disable_$* + cd $(LINPHONE_BUILD_DIR) && rm -f Makefile && rm -f oRTP/Makefile && rm -f mediastreamer2/Makefile + +# end of switches parsing + osip_dir=externals/osip eXosip_dir=externals/exosip speex_dir=externals/speex @@ -96,9 +128,6 @@ ifneq (,$(findstring armv7,$(host))) SPEEX_CONFIGURE_OPTION += --enable-armv7neon-asm endif -prefix?=$(BUILDER_SRC_DIR)/../liblinphone-sdk/$(host) - - clean-makefile: clean-makefile-linphone clean-makefile-msbcg729 clean: clean-linphone clean-msbcg729 init: @@ -108,18 +137,22 @@ init: veryclean: veryclean-linphone veryclean-msbcg729 rm -rf $(BUILDER_BUILD_DIR) +# list of the submodules to build +MS_MODULES := msilbc libilbc msamr mssilk msx264 +SUBMODULES_LIST := polarssl libantlr belle-sip srtp zrtpcpp speex libgsm libvpx libxml2 ffmpeg opus -.NOTPARALLEL build-linphone: init build-openssl build-srtp build-zrtpcpp build-osip2 build-eXosip2 build-speex build-libgsm build-ffmpeg build-libvpx detect_gpl_mode_switch $(LINPHONE_BUILD_DIR)/Makefile +.NOTPARALLEL build-linphone: init $(addprefix build-,$(SUBMODULES_LIST)) mode_switch_check $(LINPHONE_BUILD_DIR)/Makefile cd $(LINPHONE_BUILD_DIR) && export PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig export CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make newdate && make && make install + mkdir -p $(prefix)/share/linphone/tutorials && cp -f $(LINPHONE_SRC_DIR)/coreapi/help/*.c $(prefix)/share/linphone/tutorials/ -clean-linphone: clean-osip2 clean-eXosip2 clean-speex clean-libgsm clean-srtp clean-zrtpcpp clean-msilbc clean-libilbc clean-openssl clean-msamr clean-mssilk clean-ffmpeg clean-libvpx clean-msx264 +clean-linphone: $(addprefix clean-,$(SUBMODULES_LIST)) $(addprefix clean-,$(MS_MODULES)) cd $(LINPHONE_BUILD_DIR) && make clean -veryclean-linphone: veryclean-osip2 veryclean-eXosip2 veryclean-speex veryclean-srtp veryclean-zrtpcpp veryclean-libgsm veryclean-msilbc veryclean-libilbc veryclean-openssl veryclean-msamr veryclean-mssilk veryclean-msx264 veryclean-libvpx +veryclean-linphone: $(addprefix veryclean-,$(SUBMODULES_LIST)) $(addprefix veryclean-,$(MS_MODULES)) #-cd $(LINPHONE_BUILD_DIR) && make distclean -cd $(LINPHONE_SRC_DIR) && rm -f configure -clean-makefile-linphone: clean-makefile-osip2 clean-makefile-eXosip2 clean-makefile-speex clean-makefile-srtp clean-makefile-zrtpcpp clean-makefile-libilbc clean-makefile-msilbc clean-makefile-openssl clean-makefile-msamr clean-makefile-ffmpeg clean-makefile-libvpx clean-makefile-mssilk +clean-makefile-linphone: $(addprefix clean-makefile-,$(SUBMODULES_LIST)) $(addprefix clean-makefile-,$(MS_MODULES)) cd $(LINPHONE_BUILD_DIR) && rm -f Makefile && rm -f oRTP/Makefile && rm -f mediastreamer2/Makefile @@ -128,12 +161,12 @@ $(LINPHONE_SRC_DIR)/configure: $(LINPHONE_BUILD_DIR)/Makefile: $(LINPHONE_SRC_DIR)/configure mkdir -p $(LINPHONE_BUILD_DIR) - echo -e "\033[1mPKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ + @echo -e "\033[1mPKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ $(LINPHONE_SRC_DIR)/configure -prefix=$(prefix) --host=$(host) ${library_mode} \ ${linphone_configure_controls}\033[0m" cd $(LINPHONE_BUILD_DIR) && \ PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ - CFLAGS="$(CFLAGS) -DMS2_MINIMAL_SIZE" $(LINPHONE_SRC_DIR)/configure -prefix=$(prefix) --host=$(host) ${library_mode} \ + $(LINPHONE_SRC_DIR)/configure -prefix=$(prefix) --host=$(host) ${library_mode} \ ${linphone_configure_controls} @@ -146,54 +179,6 @@ clean-makefile-liblinphone: clean-liblinphone: cd $(LINPHONE_BUILD_DIR) && make clean -#osip2 - -$(BUILDER_SRC_DIR)/$(osip_dir)/configure: - cd $(BUILDER_SRC_DIR)/$(osip_dir) && ./autogen.sh - -$(BUILDER_BUILD_DIR)/$(osip_dir)/Makefile: $(BUILDER_SRC_DIR)/$(osip_dir)/configure - mkdir -p $(BUILDER_BUILD_DIR)/$(osip_dir) - cd $(BUILDER_BUILD_DIR)/$(osip_dir)/ \ - && CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ - $(BUILDER_SRC_DIR)/$(osip_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} - -build-osip2: $(BUILDER_BUILD_DIR)/$(osip_dir)/Makefile - cd $(BUILDER_BUILD_DIR)/$(osip_dir) && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install - -clean-osip2: - cd $(BUILDER_BUILD_DIR)/$(osip_dir) && make clean - -veryclean-osip2: -# -cd $(BUILDER_BUILD_DIR)/$(osip_dir) && make distclean - -cd $(BUILDER_SRC_DIR)/$(osip_dir) && rm -f configure - -clean-makefile-osip2: - cd $(BUILDER_BUILD_DIR)/$(osip_dir) && rm -f Makefile -#eXosip - -$(BUILDER_SRC_DIR)/$(eXosip_dir)/configure: - cd $(BUILDER_SRC_DIR)/$(eXosip_dir) && ./autogen.sh - -$(BUILDER_BUILD_DIR)/$(eXosip_dir)/Makefile: $(BUILDER_SRC_DIR)/$(eXosip_dir)/configure - mkdir -p $(BUILDER_BUILD_DIR)/$(eXosip_dir) - cd $(BUILDER_BUILD_DIR)/$(eXosip_dir)/\ - && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ - $(BUILDER_SRC_DIR)/$(eXosip_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} CFLAGS="-I$(prefix)/include -L$(prefix)/lib -lcrypto" --enable-openssl --disable-tools - -build-eXosip2: $(BUILDER_BUILD_DIR)/$(eXosip_dir)/Makefile - cd $(BUILDER_BUILD_DIR)/$(eXosip_dir) \ - && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ - make DEFS="-DHAVE_CONFIG_H -include $(BUILDER_SRC_DIR)/$(eXosip_dir)/include/eXosip2/eXosip_transport_hook.h" && make install - -clean-eXosip2: - cd $(BUILDER_BUILD_DIR)/$(eXosip_dir) && make clean - -veryclean-eXosip2: -# -cd $(BUILDER_BUILD_DIR)/$(eXosip_dir) && make distclean - -rm -f $(BUILDER_SRC_DIR)/$(eXosip_dir)/configure - -clean-makefile-eXosip2: - cd $(BUILDER_BUILD_DIR)/$(eXosip_dir) && rm -f Makefile #speex @@ -310,7 +295,8 @@ multi-arch: if test ! -f "$$armv7s_path"; then \ armv7s_path= ; \ fi; \ - destpath=`echo $$archive | sed -e "s/armv7-//"` ;\ + destpath=`echo $$archive | sed -e "s/-debug//"` ;\ + destpath=`echo $$destpath | sed -e "s/armv7-//"` ;\ if test -f "$$i386_path"; then \ echo "Mixing $$archive into $$destpath"; \ mkdir -p `dirname $$destpath` ; \ diff --git a/submodules/build/builders.d/belle-sip.mk b/submodules/build/builders.d/belle-sip.mk new file mode 100644 index 000000000..8e3614ef3 --- /dev/null +++ b/submodules/build/builders.d/belle-sip.mk @@ -0,0 +1,43 @@ +############################################################################ +# belle-sip.mk +# Copyright (C) 2013 Belledonne Communications,Grenoble France +# +############################################################################ +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +############################################################################ +belle-sip_dir?=belle-sip +$(BUILDER_SRC_DIR)/$(belle-sip_dir)/configure: + cd $(BUILDER_SRC_DIR)/$(belle-sip_dir) && ./autogen.sh + +$(BUILDER_BUILD_DIR)/$(belle-sip_dir)/Makefile: $(BUILDER_SRC_DIR)/$(belle-sip_dir)/configure + mkdir -p $(BUILDER_BUILD_DIR)/$(belle-sip_dir) + cd $(BUILDER_BUILD_DIR)/$(belle-sip_dir)/ \ + && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ + $(BUILDER_SRC_DIR)/$(belle-sip_dir)/configure --prefix=$(prefix) --host=$(host) ${library_mode} --enable-tls --with-polarssl=$(prefix) + +build-belle-sip: $(BUILDER_BUILD_DIR)/$(belle-sip_dir)/Makefile + cd $(BUILDER_BUILD_DIR)/$(belle-sip_dir) && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install + +clean-belle-sip: + cd $(BUILDER_BUILD_DIR)/$(belle-sip_dir) && make clean + +veryclean-belle-sip: + -cd $(BUILDER_BUILD_DIR)/$(belle-sip_dir) && make distclean + rm -f $(BUILDER_SRC_DIR)/$(belle-sip_dir)/configure + +clean-makefile-belle-sip: + cd $(BUILDER_BUILD_DIR)/$(belle-sip_dir) && rm -f Makefile diff --git a/submodules/build/builders.d/ffmpeg.mk b/submodules/build/builders.d/ffmpeg.mk index 04f363f4f..025b2c0c3 100644 --- a/submodules/build/builders.d/ffmpeg.mk +++ b/submodules/build/builders.d/ffmpeg.mk @@ -4,37 +4,43 @@ ffmpeg_configure_options=\ --disable-ffprobe --disable-ffserver --disable-avdevice \ --disable-avfilter --disable-network \ --disable-everything --enable-decoder=mjpeg --enable-encoder=mjpeg --enable-decoder=mpeg4 --enable-encoder=mpeg4 \ - --enable-decoder=h264 --disable-avformat --enable-armv5te --enable-armv6 --enable-armv6t2 \ - --enable-armvfp \ + --enable-decoder=h264 --disable-avformat --enable-pic\ --cross-prefix=$$SDK_BIN_PATH/ \ --sysroot=$$SYSROOT_PATH --arch=$$ARCH \ - --enable-static --disable-shared --target-os=darwin \ - --extra-cflags="-arch $$ARCH " --extra-ldflags="-arch $$ARCH -Wl,-syslibroot,$$SYSROOT_PATH " \ - --source-path=$(BUILDER_SRC_DIR)/$(ffmpeg_dir) + --enable-static --disable-shared --target-os=darwin \ + --extra-cflags="$$COMMON_FLAGS" --extra-ldflags="$$COMMON_FLAGS" \ + --disable-iconv \ + --ar="$$AR" \ + --nm="$$NM" \ + --cc="$$CC" + # --as=$(BUILDER_SRC_DIR)/externals/x264/extras/gas-preprocessor.pl #--sysinclude=PATH location of cross-build system headers ifneq (,$(findstring armv6,$(host))) - ffmpeg_configure_options+= --cpu=arm1176jzf-s + ffmpeg_configure_options+= --cpu=arm1176jzf-s --disable-armv5te --enable-armv6 --enable-armv6t2 endif ifneq (,$(findstring armv7,$(host))) - ffmpeg_configure_options+= --enable-neon --cpu=cortex-a8 + ffmpeg_configure_options+= --enable-neon --cpu=cortex-a8 --disable-armv5te --enable-armv6 --enable-armv6t2 endif + ffmpeg_dir?=externals/ffmpeg $(BUILDER_SRC_DIR)/$(ffmpeg_dir)/patched : cd $(BUILDER_SRC_DIR)/$(ffmpeg_dir) \ && git apply $(BUILDER_SRC_DIR)/build/builders.d/ffmpeg.patch \ && touch $(BUILDER_SRC_DIR)/$(ffmpeg_dir)/patched -$(BUILDER_BUILD_DIR)/$(ffmpeg_dir)/config.mak: $(BUILDER_SRC_DIR)/$(ffmpeg_dir)/patched +$(BUILDER_BUILD_DIR)/$(ffmpeg_dir)/config.mak: mkdir -p $(BUILDER_BUILD_DIR)/$(ffmpeg_dir) cd $(BUILDER_BUILD_DIR)/$(ffmpeg_dir)/ \ && host_alias=${host} . $(BUILDER_SRC_DIR)/build/$(config_site) \ - && $(BUILDER_SRC_DIR)/$(ffmpeg_dir)/configure --prefix=$(prefix) $(ffmpeg_configure_options) + && $(BUILDER_SRC_DIR)/$(ffmpeg_dir)/configure --prefix=$(prefix) $(ffmpeg_configure_options) build-ffmpeg: $(BUILDER_BUILD_DIR)/$(ffmpeg_dir)/config.mak - cd $(BUILDER_BUILD_DIR)/$(ffmpeg_dir) && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install + cd $(BUILDER_BUILD_DIR)/$(ffmpeg_dir) \ + && host_alias=${host} . $(BUILDER_SRC_DIR)/build/$(config_site) \ + && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig make RANLIB="$$RANLIB" && make RANLIB="$$RANLIB" install clean-ffmpeg: cd $(BUILDER_BUILD_DIR)/$(ffmpeg_dir) && make clean diff --git a/submodules/build/builders.d/ffmpeg.patch b/submodules/build/builders.d/ffmpeg.patch deleted file mode 100644 index 05e080905..000000000 --- a/submodules/build/builders.d/ffmpeg.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff --git a/libavutil/arm/intmath.h b/libavutil/arm/intmath.h -index 8f03d4b..0504b95 100644 ---- a/libavutil/arm/intmath.h -+++ b/libavutil/arm/intmath.h -@@ -91,10 +91,12 @@ static av_always_inline av_const int FASTDIV(int a, int b) - static av_always_inline av_const int32_t av_clipl_int32_arm(int64_t a) - { - int x, y; -- __asm__ volatile ("adds %1, %R2, %Q2, lsr #31 \n\t" -+ union { uint64_t a; uint32_t hl[2]; } tmp_a; -+ tmp_a.a=a; -+ __asm__ volatile ("adds %1, %2, %3, lsr #31 \n\t" - "mvnne %1, #1<<31 \n\t" -- "eorne %0, %1, %R2, asr #31 \n\t" -- : "=r"(x), "=&r"(y) : "r"(a)); -+ "eorne %0, %1, %2, asr #31 \n\t" -+ : "=r"(x), "=&r"(y) : "r"(tmp_a.hl[0]),"r"(tmp_a.hl[1])); - return x; - } - diff --git a/submodules/build/builders.d/libantlr3c.mk b/submodules/build/builders.d/libantlr3c.mk new file mode 100644 index 000000000..da1cf08f6 --- /dev/null +++ b/submodules/build/builders.d/libantlr3c.mk @@ -0,0 +1,43 @@ +############################################################################ +# libantlr.mk +# Copyright (C) 2013 Belledonne Communications,Grenoble France +# +############################################################################ +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +############################################################################ +libantlr_dir?=externals/antlr3/runtime/C +$(BUILDER_SRC_DIR)/$(libantlr_dir)/configure: + cd $(BUILDER_SRC_DIR)/$(libantlr_dir) && ./autogen.sh + +$(BUILDER_BUILD_DIR)/$(libantlr_dir)/Makefile: $(BUILDER_SRC_DIR)/$(libantlr_dir)/configure + mkdir -p $(BUILDER_BUILD_DIR)/$(libantlr_dir) + cd $(BUILDER_BUILD_DIR)/$(libantlr_dir)/ \ + && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ + $(BUILDER_SRC_DIR)/$(libantlr_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} + +build-libantlr: $(BUILDER_BUILD_DIR)/$(libantlr_dir)/Makefile + cd $(BUILDER_BUILD_DIR)/$(libantlr_dir) && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install + +clean-libantlr: + cd $(BUILDER_BUILD_DIR)/$(libantlr_dir) && make clean + +veryclean-libantlr: + -cd $(BUILDER_BUILD_DIR)/$(libantlr_dir) && make distclean + rm -f $(BUILDER_SRC_DIR)/$(libantlr_dir)/configure + +clean-makefile-libantlr: + cd $(BUILDER_BUILD_DIR)/$(libantlr_dir) && rm -f Makefile diff --git a/submodules/build/builders.d/libvpx.mk b/submodules/build/builders.d/libvpx.mk index 8cf0564ec..562d1869d 100644 --- a/submodules/build/builders.d/libvpx.mk +++ b/submodules/build/builders.d/libvpx.mk @@ -7,13 +7,17 @@ libvpx_configure_options=\ ifneq (,$(findstring armv6,$(host))) libvpx_configure_options+= --target=armv6-darwin-gcc --cpu=arm1176jzf-s else ifneq (,$(findstring armv7s,$(host))) - libvpx_configure_options+= --target=armv7s-darwin-gcc --cpu=cortex-a8 + libvpx_configure_options+= --target=armv7s-darwin-gcc else ifneq (,$(findstring armv7,$(host))) - libvpx_configure_options+= --target=armv7-darwin-gcc --cpu=cortex-a8 + libvpx_configure_options+= --target=armv7-darwin-gcc else libvpx_configure_options+= --target=x86-darwin10-gcc endif + libvpx_dir?=externals/libvpx +all_p=armv6-darwin-gcc #neon Cortex-A8 +all_p+=armv7-darwin-gcc #neon Cortex-A8 +all_p+=armv7s-darwin-gcc #neon Cortex-A8 $(BUILDER_SRC_DIR)/$(libvpx_dir)/patched.stamp: cd $(BUILDER_SRC_DIR)/$(libvpx_dir) \ @@ -24,10 +28,12 @@ $(BUILDER_BUILD_DIR)/$(libvpx_dir)/config.mk: $(BUILDER_SRC_DIR)/$(libvpx_dir)/p mkdir -p $(BUILDER_BUILD_DIR)/$(libvpx_dir) cd $(BUILDER_BUILD_DIR)/$(libvpx_dir)/ \ && host_alias=${host} . $(BUILDER_SRC_DIR)/build/$(config_site) \ - && SYSROOT_PATH=$$SYSROOT_PATH SDK_BIN_PATH=$$SDK_BIN_PATH $(BUILDER_SRC_DIR)/$(libvpx_dir)/configure --prefix=$(prefix) $(libvpx_configure_options) + && export all_platforms="${all_p}" && $(BUILDER_SRC_DIR)/$(libvpx_dir)/configure --prefix=$(prefix) --sdk-path=$$SDK_BIN_PATH/../../ --libc=$$SYSROOT_PATH $(libvpx_configure_options) build-libvpx: $(BUILDER_BUILD_DIR)/$(libvpx_dir)/config.mk - cd $(BUILDER_BUILD_DIR)/$(libvpx_dir) && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install + cd $(BUILDER_BUILD_DIR)/$(libvpx_dir) \ + && host_alias=${host} . $(BUILDER_SRC_DIR)/build/$(config_site) \ + && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install clean-libvpx: cd $(BUILDER_BUILD_DIR)/$(libvpx_dir) && make clean @@ -35,7 +41,7 @@ clean-libvpx: veryclean-libvpx: -cd $(BUILDER_BUILD_DIR)/$(libvpx_dir) && make distclean cd $(BUILDER_SRC_DIR)/$(libvpx_dir) \ - && git checkout build/make/configure.sh configure\ + && git clean -f && git reset --hard \ && rm -f patched.stamp rm -rf $(BUILDER_BUILD_DIR)/$(libvpx_dir) diff --git a/submodules/build/builders.d/libvpx.patch b/submodules/build/builders.d/libvpx.patch index d651ccfc8..7824f7f11 100644 --- a/submodules/build/builders.d/libvpx.patch +++ b/submodules/build/builders.d/libvpx.patch @@ -1,69 +1,47 @@ diff --git a/build/make/configure.sh b/build/make/configure.sh -index 0426f92..38fdcb2 100755 +index c99a01c..f7f54c6 100755 --- a/build/make/configure.sh +++ b/build/make/configure.sh -@@ -624,6 +624,9 @@ process_common_toolchain() { - if [ -d "/Developer/SDKs/MacOSX10.7.sdk" ]; then - osx_sdk_dir="/Developer/SDKs/MacOSX10.7.sdk" - fi -+ if test -n "$SYSROOT_PATH" ; then -+ osx_sdk_dir=$SYSROOT_PATH -+ fi - - case ${toolchain} in - *-darwin8-*) -@@ -743,9 +746,17 @@ process_common_toolchain() { - darwin*) - SDK_PATH=/Developer/Platforms/iPhoneOS.platform/Developer +@@ -889,13 +889,13 @@ process_common_toolchain() { + SDK_PATH=${sdk_path} + fi TOOLCHAIN_PATH=${SDK_PATH}/usr/bin -+ if test -n "$SYSROOT_PATH" ; then -+ SDK_FULL_PATH=$SYSROOT_PATH -+ else -+ SDK_FULL_PATH="${SDK_PATH}/SDKs/iPhoneOS5.0.sdk" -+ fi -+ if test -n "$SDK_BIN_PATH" ; then -+ TOOLCHAIN_PATH=$SDK_BIN_PATH -+ fi - CC=${TOOLCHAIN_PATH}/gcc - AR=${TOOLCHAIN_PATH}/ar +- CXX=${TOOLCHAIN_PATH}/g++ +- CC=${TOOLCHAIN_PATH}/gcc +- AR=${TOOLCHAIN_PATH}/ar - LD=${TOOLCHAIN_PATH}/arm-apple-darwin10-llvm-gcc-4.2 -+ LD=${TOOLCHAIN_PATH}/gcc - AS=${TOOLCHAIN_PATH}/as - STRIP=${TOOLCHAIN_PATH}/strip - NM=${TOOLCHAIN_PATH}/nm -@@ -757,12 +768,12 @@ process_common_toolchain() { +- AS=${TOOLCHAIN_PATH}/as +- STRIP=${TOOLCHAIN_PATH}/strip +- NM=${TOOLCHAIN_PATH}/nm ++ CXX=`xcrun --find clang++` ++ CC=`xcrun --find clang` ++ AR=`xcrun --find ar` ++ LD=`xcrun --find clang` ++ AS=`xcrun --find as` ++ STRIP=`xcrun --find strip` ++ NM=`xcrun --find nm` + AS_SFX=.s + + # ASFLAGS is written here instead of using check_add_asflags +@@ -904,7 +904,7 @@ process_common_toolchain() { ASFLAGS="-version -arch ${tgt_isa} -g" add_cflags -arch ${tgt_isa} - add_ldflags -arch_only ${tgt_isa} + add_ldflags -arch ${tgt_isa} -- add_cflags "-isysroot ${SDK_PATH}/SDKs/iPhoneOS5.0.sdk" -+ add_cflags "-isysroot $SDK_FULL_PATH" - - # This should be overridable -- alt_libc=${SDK_PATH}/SDKs/iPhoneOS5.0.sdk -+ alt_libc=$SDK_FULL_PATH - - # Add the paths for the alternate libc - for d in usr/include; do -diff --git a/configure b/configure -index 6f20c6b..4638ea2 100755 ---- a/configure -+++ b/configure -@@ -94,6 +94,7 @@ all_platforms="${all_platforms} iwmmxt-linux-gcc" - all_platforms="${all_platforms} iwmmxt2-linux-rvct" - all_platforms="${all_platforms} iwmmxt2-linux-gcc" - all_platforms="${all_platforms} armv7-darwin-gcc" #neon Cortex-A8 -+all_platforms="${all_platforms} armv7s-darwin-gcc" #neon Cortex-A8 - all_platforms="${all_platforms} armv7-linux-rvct" #neon Cortex-A8 - all_platforms="${all_platforms} armv7-linux-gcc" #neon Cortex-A8 - all_platforms="${all_platforms} armv7-none-rvct" #neon Cortex-A8 -@@ -198,6 +199,7 @@ ARCH_EXT_LIST=" - armv5te - armv6 - armv7 -+ armv7s - iwmmxt - iwmmxt2 + if [ -z "${alt_libc}" ]; then + alt_libc=${SDK_PATH}/SDKs/iPhoneOS5.1.sdk +diff --git a/vp8/decoder/decodframe.c b/vp8/decoder/decodframe.c +index a4a00f6..72d0b6d 100644 +--- a/vp8/decoder/decodframe.c ++++ b/vp8/decoder/decodframe.c +@@ -92,7 +92,7 @@ void vp8_mb_init_dequantizer(VP8D_COMP *pbi, MACROBLOCKD *xd) + } + } +-static void decode_macroblock(VP8D_COMP *pbi, MACROBLOCKD *xd, ++void decode_macroblock(VP8D_COMP *pbi, MACROBLOCKD *xd, + unsigned int mb_idx) + { + MB_PREDICTION_MODE mode; diff --git a/submodules/build/builders.d/libxml2.mk b/submodules/build/builders.d/libxml2.mk new file mode 100644 index 000000000..da3e18cd3 --- /dev/null +++ b/submodules/build/builders.d/libxml2.mk @@ -0,0 +1,63 @@ +############################################################################ +# libxml2.mk +# Copyright (C) 2013 Belledonne Communications,Grenoble France +# +############################################################################ +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +############################################################################ +libxml2_dir?=externals/libxml2 + +libxml2_configure_options= \ + --enable-static --disable-shared \ + --disable-rebuild-docs --with-iconv=no --with-python=no --with-zlib=no + +$(BUILDER_SRC_DIR)/$(libxml2_dir)/patched.stamp: + cd $(BUILDER_SRC_DIR)/$(libxml2_dir) \ + && git apply $(BUILDER_SRC_DIR)/build/builders.d/libxml2.patch \ + && touch $@ + +$(BUILDER_SRC_DIR)/$(libxml2_dir)/configure: $(BUILDER_SRC_DIR)/$(libxml2_dir)/patched.stamp + @echo -e "\033[01;32m Running autogen for libxml2 in $(BUILDER_SRC_DIR)/$(libxml2_dir) \033[0m" + cd $(BUILDER_SRC_DIR)/$(libxml2_dir) \ + && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) NOCONFIGURE=1 \ + $(BUILDER_SRC_DIR)/$(libxml2_dir)/autogen.sh -prefix=$(prefix) --host=$(host) ${library_mode} + +$(BUILDER_BUILD_DIR)/$(libxml2_dir)/Makefile: $(BUILDER_SRC_DIR)/$(libxml2_dir)/configure + @echo -e "\033[01;32m Running configure in $(BUILDER_BUILD_DIR)/$(libxml2_dir) \033[0m" + mkdir -p $(BUILDER_BUILD_DIR)/$(libxml2_dir) + cd $(BUILDER_BUILD_DIR)/$(libxml2_dir) \ + && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ + $(BUILDER_SRC_DIR)/$(libxml2_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} $(libxml2_configure_options) + +build-libxml2: $(BUILDER_BUILD_DIR)/$(libxml2_dir)/Makefile + @echo -e "\033[01;32m building libxml2 \033[0m" + cd $(BUILDER_BUILD_DIR)/$(libxml2_dir) \ + && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ + make && make install + +clean-libxml2: + -cd $(BUILDER_BUILD_DIR)/$(libxml2_dir) && make clean + +veryclean-libxml2: + -cd $(BUILDER_BUILD_DIR)/$(libxml2_dir) && make distclean + rm -f $(BUILDER_SRC_DIR)/$(libxml2_dir)/configure + cd $(BUILDER_SRC_DIR)/$(libxml2_dir) \ + && git checkout configure.in \ + && rm -f patched.stamp + +clean-makefile-libxml2: + -cd $(BUILDER_BUILD_DIR)/$(libxml2_dir) && rm -f Makefile diff --git a/submodules/build/builders.d/libxml2.patch b/submodules/build/builders.d/libxml2.patch new file mode 100644 index 000000000..eb2ac3cd9 --- /dev/null +++ b/submodules/build/builders.d/libxml2.patch @@ -0,0 +1,13 @@ +diff --git a/configure.in b/configure.in +index 0fb4983..a5f86ca 100644 +--- a/configure.in ++++ b/configure.in +@@ -1,7 +1,7 @@ + dnl Process this file with autoconf to produce a configure script. + AC_PREREQ(2.59) + AC_INIT(entities.c) +-AM_CONFIG_HEADER(config.h) ++AC_CONFIG_HEADERS(config.h) + AC_CONFIG_MACRO_DIR([m4]) + AC_CANONICAL_HOST + diff --git a/submodules/build/builders.d/msamr.mk b/submodules/build/builders.d/msamr.mk index 03db5fd88..ed38e4997 100644 --- a/submodules/build/builders.d/msamr.mk +++ b/submodules/build/builders.d/msamr.mk @@ -26,11 +26,11 @@ $(BUILDER_SRC_DIR)/$(msamr_dir)/configure: $(BUILDER_BUILD_DIR)/$(msamr_dir)/Makefile: $(BUILDER_SRC_DIR)/$(msamr_dir)/configure mkdir -p $(BUILDER_BUILD_DIR)/$(msamr_dir) cd $(BUILDER_BUILD_DIR)/$(msamr_dir)/ \ - && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ + && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ $(BUILDER_SRC_DIR)/$(msamr_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} build-msamr: build-opencore-amr $(BUILDER_BUILD_DIR)/$(msamr_dir)/Makefile - cd $(BUILDER_BUILD_DIR)/$(msamr_dir) && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install + cd $(BUILDER_BUILD_DIR)/$(msamr_dir) && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install clean-msamr: clean-opencore-amr cd $(BUILDER_BUILD_DIR)/$(msamr_dir) && make clean diff --git a/submodules/build/builders.d/msbcg729.mk b/submodules/build/builders.d/msbcg729.mk index 727be6148..98b1f3bbb 100644 --- a/submodules/build/builders.d/msbcg729.mk +++ b/submodules/build/builders.d/msbcg729.mk @@ -30,7 +30,7 @@ $(BUILDER_BUILD_DIR)/$(msbcg729_dir)/Makefile: $(BUILDER_SRC_DIR)/$(msbcg729_dir @echo -e "\033[01;32m Running configure in $(BUILDER_BUILD_DIR)/$(msbcg729_dir) \033[0m" mkdir -p $(BUILDER_BUILD_DIR)/$(msbcg729_dir) cd $(BUILDER_BUILD_DIR)/$(msbcg729_dir)/ \ - && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ + && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ $(BUILDER_SRC_DIR)/$(msbcg729_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} \ --enable-static @@ -39,7 +39,7 @@ ifeq ($(enable_bcg729),yes) build-msbcg729: $(BUILDER_BUILD_DIR)/$(msbcg729_dir)/Makefile @echo -e "\033[01;32m building bcg729 \033[0m" cd $(BUILDER_BUILD_DIR)/$(msbcg729_dir) \ - && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig \ + && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig \ CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ make -j1 && make install diff --git a/submodules/build/builders.d/mssilk.mk b/submodules/build/builders.d/mssilk.mk index bffd7de26..0a2a6c5ab 100644 --- a/submodules/build/builders.d/mssilk.mk +++ b/submodules/build/builders.d/mssilk.mk @@ -27,10 +27,10 @@ $(BUILDER_SRC_DIR)/$(mssilk_dir)/configure: cd $(BUILDER_SRC_DIR)/$(mssilk_dir) && ./autogen.sh $(BUILDER_BUILD_DIR)/$(mssilk_dir)/Makefile: $(BUILDER_SRC_DIR)/$(mssilk_dir)/configure - echo -e "\033[01;32m Running configure in $(BUILDER_BUILD_DIR)/$(mssilk_dir) \033[0m" + @echo -e "\033[01;32m Running configure in $(BUILDER_BUILD_DIR)/$(mssilk_dir) \033[0m" mkdir -p $(BUILDER_BUILD_DIR)/$(mssilk_dir) cd $(BUILDER_BUILD_DIR)/$(mssilk_dir)/ \ - && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ + && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ $(BUILDER_SRC_DIR)/$(mssilk_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} \ --enable-static diff --git a/submodules/build/builders.d/msx264.mk b/submodules/build/builders.d/msx264.mk index aaf1e5e00..06c3a4ba3 100644 --- a/submodules/build/builders.d/msx264.mk +++ b/submodules/build/builders.d/msx264.mk @@ -26,11 +26,11 @@ $(BUILDER_SRC_DIR)/$(msx264_dir)/configure: $(BUILDER_BUILD_DIR)/$(msx264_dir)/Makefile: $(BUILDER_SRC_DIR)/$(msx264_dir)/configure mkdir -p $(BUILDER_BUILD_DIR)/$(msx264_dir) cd $(BUILDER_BUILD_DIR)/$(msx264_dir)/ \ - && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ + && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ $(BUILDER_SRC_DIR)/$(msx264_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} build-msx264: build-x264 $(BUILDER_BUILD_DIR)/$(msx264_dir)/Makefile - cd $(BUILDER_BUILD_DIR)/$(msx264_dir) && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install + cd $(BUILDER_BUILD_DIR)/$(msx264_dir) && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install clean-msx264: clean-x264 cd $(BUILDER_BUILD_DIR)/$(msx264_dir) && make clean diff --git a/submodules/build/builders.d/opencore-amr.mk b/submodules/build/builders.d/opencore-amr.mk index dcd2347e9..2c68920fa 100644 --- a/submodules/build/builders.d/opencore-amr.mk +++ b/submodules/build/builders.d/opencore-amr.mk @@ -19,9 +19,6 @@ # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # ############################################################################ -ifneq (,$(findstring arm,$(host))) - opencore-amr-configure-option=--enable-gcc-armv5 -endif opencore-amr_dir?=externals/opencore-amr @@ -35,7 +32,7 @@ $(BUILDER_BUILD_DIR)/$(opencore-amr_dir)/Makefile: $(BUILDER_SRC_DIR)/$(opencore $(BUILDER_SRC_DIR)/$(opencore-amr_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} ${opencore-amr-configure-option} build-opencore-amr: $(BUILDER_BUILD_DIR)/$(opencore-amr_dir)/Makefile - cd $(BUILDER_BUILD_DIR)/$(opencore-amr_dir) && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install + cd $(BUILDER_BUILD_DIR)/$(opencore-amr_dir) && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install clean-opencore-amr: cd $(BUILDER_BUILD_DIR)/$(opencore-amr_dir) && make clean diff --git a/submodules/build/builders.d/opus.mk b/submodules/build/builders.d/opus.mk new file mode 100644 index 000000000..f0e6dcf32 --- /dev/null +++ b/submodules/build/builders.d/opus.mk @@ -0,0 +1,69 @@ +############################################################################ +# opus.mk +# Copyright (C) 2013 Belledonne Communications,Grenoble France +# +############################################################################ +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +############################################################################ +opus_dir?=externals/opus +enable_opus?=yes + +libopus_configure_options=--disable-extra-programs --disable-doc +ifneq (,$(findstring armv7,$(host))) + libopus_configure_options+= --enable-fixed-point --disable-asm +endif +ifneq (,$(findstring armv7s,$(host))) + libopus_configure_options+= --enable-fixed-point --disable-asm +endif + +$(BUILDER_SRC_DIR)/$(opus_dir)/configure: + @echo -e "\033[01;32m Running autogen for msopus in $(BUILDER_SRC_DIR)/$(opus_dir) \033[0m" + cd $(BUILDER_SRC_DIR)/$(opus_dir) && ./autogen.sh + +$(BUILDER_BUILD_DIR)/$(opus_dir)/Makefile: $(BUILDER_SRC_DIR)/$(opus_dir)/configure + @echo -e "\033[01;32m Running configure in $(BUILDER_BUILD_DIR)/$(opus_dir) \033[0m" + mkdir -p $(BUILDER_BUILD_DIR)/$(opus_dir) + cd $(BUILDER_BUILD_DIR)/$(opus_dir)/ \ + && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ + $(BUILDER_SRC_DIR)/$(opus_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} \ + ${libopus_configure_options} + +ifeq ($(enable_opus),yes) + +build-opus: $(BUILDER_BUILD_DIR)/$(opus_dir)/Makefile + @echo -e "\033[01;32m building opus \033[0m" + cd $(BUILDER_BUILD_DIR)/$(opus_dir) \ + && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig \ + CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ + make && make install + + +else +build-opus: + @echo "opus is disabled" + +endif + +clean-opus: + -cd $(BUILDER_BUILD_DIR)/$(opus_dir) && make clean + +veryclean-opus: + -cd $(BUILDER_BUILD_DIR)/$(opus_dir) && make distclean + rm -f $(BUILDER_SRC_DIR)/$(opus_dir)/configure + +clean-makefile-opus: + -cd $(BUILDER_BUILD_DIR)/$(opus_dir) && rm -f Makefile diff --git a/submodules/build/builders.d/polarssl.mk b/submodules/build/builders.d/polarssl.mk new file mode 100644 index 000000000..3dd89da02 --- /dev/null +++ b/submodules/build/builders.d/polarssl.mk @@ -0,0 +1,19 @@ +polarssl_dir?=externals/polarssl + +update-tree: $(BUILDER_SRC_DIR)/$(polarssl_dir)/Makefile + mkdir -p $(BUILDER_BUILD_DIR)/$(polarssl_dir) + cd $(BUILDER_BUILD_DIR)/$(polarssl_dir)/ && \ + rsync -rvLpgoc --exclude ".git" $(BUILDER_SRC_DIR)/$(polarssl_dir)/ . + +build-polarssl: update-tree + host_alias=$(host) && . /$(BUILDER_SRC_DIR)/build/$(config_site) && \ + cd $(BUILDER_BUILD_DIR)/$(polarssl_dir) && make CC="$$CC" AR="$$AR" CPPFLAGS="$$CPPFLAGS" lib && make install DESTDIR=$(prefix) + +clean-polarssl: + -cd $(BUILDER_BUILD_DIR)/$(polarssl_dir) && make clean + +veryclean-polarssl: + -rm -rf $(BUILDER_BUILD_DIR)/$(polarssl_dir) + +clean-makefile-polarssl: veryclean-polarssl + diff --git a/submodules/build/builders.d/srtp.mk b/submodules/build/builders.d/srtp.mk index dd5ebfc22..ee2d6c92a 100644 --- a/submodules/build/builders.d/srtp.mk +++ b/submodules/build/builders.d/srtp.mk @@ -11,7 +11,7 @@ $(BUILDER_BUILD_DIR)/$(srtp_dir)/Makefile: $(BUILDER_SRC_DIR)/$(srtp_dir)/config build-srtp: $(BUILDER_BUILD_DIR)/$(srtp_dir)/Makefile host_alias=$(host) && . /$(BUILDER_SRC_DIR)/build/$(config_site) && \ - cd $(BUILDER_BUILD_DIR)/$(srtp_dir) && make libsrtp.a AR=$$AR && make install + cd $(BUILDER_BUILD_DIR)/$(srtp_dir) && make libsrtp.a AR="$$AR" && make install clean-srtp: -cd $(BUILDER_BUILD_DIR)/$(srtp_dir) && make clean diff --git a/submodules/build/builders.d/x264.mk b/submodules/build/builders.d/x264.mk index 203ffe351..21c8638e9 100644 --- a/submodules/build/builders.d/x264.mk +++ b/submodules/build/builders.d/x264.mk @@ -24,42 +24,40 @@ x264-configure-option= \ --host=$(host)\ - --enable-static \ + --enable-static --enable-pic \ --cross-prefix=$$SDK_BIN_PATH/ \ - --extra-ldflags="-arch $$ARCH -isysroot $$SYSROOT_PATH" + --extra-ldflags="$$COMMON_FLAGS" +XCFLAGS:=$$COMMON_FLAGS -ifneq (,$(findstring i386,$(host))) - x264-configure-option+= --extra-cflags="-arch $$ARCH -isysroot $$SYSROOT_PATH" -endif -ifneq (,$(findstring armv6,$(host))) - x264-configure-option+= --extra-cflags="-arch $$ARCH -mcpu=arm1176jzf-s -marm -isysroot $$SYSROOT_PATH" - x264-configure-option+= --disable-asm -endif ifneq (,$(findstring armv7,$(host))) - x264-configure-option+= --extra-cflags="-arch $$ARCH -mcpu=cortex-a8 -mfpu=neon -mfloat-abi=softfp -isysroot $$SYSROOT_PATH" + XCFLAGS+= -mfpu=neon -mfloat-abi=softfp endif -x264_dir?=externals/x264 -#$(BUILDER_SRC_DIR)/$(x264_dir)/patched : -# cd $(BUILDER_SRC_DIR)/$(x264_dir) \ -# && git apply $(BUILDER_SRC_DIR)/build/builders.d/x264.patch \ -# && touch $(BUILDER_SRC_DIR)/$(x264_dir)/patched +x264-configure-option+= --extra-cflags="${XCFLAGS}" -$(BUILDER_BUILD_DIR)/$(x264_dir)/configure: +x264_dir?=externals/x264 +$(BUILDER_SRC_DIR)/$(x264_dir)/patched: + cd $(BUILDER_SRC_DIR)/$(x264_dir) \ + && git apply $(BUILDER_SRC_DIR)/build/builders.d/x264.patch \ + && touch $(BUILDER_SRC_DIR)/$(x264_dir)/patched + +$(BUILDER_BUILD_DIR)/$(x264_dir)/configure: $(BUILDER_SRC_DIR)/$(x264_dir)/patched mkdir -p $(BUILDER_BUILD_DIR)/$(x264_dir) cd $(BUILDER_BUILD_DIR)/$(x264_dir)/ \ - && rsync -av --exclude ".git" $(BUILDER_SRC_DIR)/$(x264_dir)/* . + && rsync -rvLpgoc --exclude ".git" $(BUILDER_SRC_DIR)/$(x264_dir)/* . $(BUILDER_BUILD_DIR)/$(x264_dir)/config.mak: $(BUILDER_BUILD_DIR)/$(x264_dir)/configure cd $(BUILDER_BUILD_DIR)/$(x264_dir)/ \ && host_alias=$(host) . $(BUILDER_SRC_DIR)/build/$(config_site) \ - && ./configure --prefix=$(prefix) ${x264-configure-option} + && CC="$$CC" STRINGS="$$STRINGS" ./configure --prefix=$(prefix) $(x264-configure-option) build-x264: $(BUILDER_BUILD_DIR)/$(x264_dir)/config.mak - cd $(BUILDER_BUILD_DIR)/$(x264_dir) make && make install + cd $(BUILDER_BUILD_DIR)/$(x264_dir) \ + && host_alias=$(host) . $(BUILDER_SRC_DIR)/build/$(config_site) \ + && make STRIP="$$STRIP" AR="$$AR -r " RANLIB="$$RANLIB" CC="$$CC" STRINGS="$$STRINGS" && make STRIP="$$STRIP" AR="$$AR" RANLIB="$$RANLIB" STRINGS="$$STRINGS" install clean-x264: cd $(BUILDER_BUILD_DIR)/$(x264_dir) && make clean @@ -67,7 +65,7 @@ clean-x264: veryclean-x264: -cd $(BUILDER_BUILD_DIR)/$(x264_dir) && make distclean cd $(BUILDER_SRC_DIR)/$(x264_dir)/ \ - && git checkout common/arm/asm.S \ + && git clean -f && git reset --hard \ && rm -f patched rm -rf $(BUILDER_BUILD_DIR)/$(x264_dir) diff --git a/submodules/build/builders.d/x264.patch b/submodules/build/builders.d/x264.patch index e6781e304..60ffc6701 100644 --- a/submodules/build/builders.d/x264.patch +++ b/submodules/build/builders.d/x264.patch @@ -1,12 +1,136 @@ -diff --git a/common/arm/asm.S b/common/arm/asm.S -index 8e70403..259bb92 100644 ---- a/common/arm/asm.S -+++ b/common/arm/asm.S -@@ -47,6 +47,7 @@ ELF .eabi_attribute 25, \val - .endm +diff --git a/common/arm/cpu-a.S b/common/arm/cpu-a.S +index a459553..bc91505 100644 +--- a/common/arm/cpu-a.S ++++ b/common/arm/cpu-a.S +@@ -26,7 +26,7 @@ + #include "asm.S" - .macro function name -+ .align 2 - .global EXTERN_ASM\name - EXTERN_ASM\name: - ELF .hidden \name + .fpu neon +-.align ++// .align + + // done in gas because .fpu neon overrides the refusal to assemble + // instructions the selected -march/-mcpu doesn't support +@@ -95,7 +95,7 @@ average_loop: + sub r2, r2, r1 + cmpgt r2, #30 << 3 // assume context switch if it took over 30 cycles + addle r3, r3, r2 +- subles ip, ip, #1 ++ suble ip, ip, #1 + bgt average_loop + + // disable counters if we enabled them +diff --git a/common/arm/mc-a.S b/common/arm/mc-a.S +index 507bbba..d5554be 100644 +--- a/common/arm/mc-a.S ++++ b/common/arm/mc-a.S +@@ -166,7 +166,7 @@ function x264_pixel_avg_\w\()x\h\()_neon + ldr ip, [sp, #8] + push {r4-r6,lr} + cmp ip, #32 +- ldrd r4, [sp, #16] ++ ldrd r4, r5, [sp, #16] + mov lr, #\h + beq x264_pixel_avg_w\w\()_neon + rsbs r6, ip, #64 +@@ -446,7 +446,7 @@ avg2_w20_loop: + .ifc \type, full + ldr lr, [r4, #32] // denom + .endif +- ldrd r4, [r4, #32+4] // scale, offset ++ ldrd r4, r5, [r4, #32+4] // scale, offset + vdup.16 q0, r4 + vdup.16 q1, r5 + .ifc \type, full +@@ -815,7 +815,7 @@ copy_w16_aligned_loop: + // int dx, int dy, int i_width, int i_height ); + function x264_mc_chroma_neon + push {r4-r6, lr} +- ldrd r4, [sp, #16] ++ ldrd r4, r5, [sp, #16] + ldr r6, [sp, #24] + + asr lr, r5, #3 +@@ -1271,8 +1271,8 @@ filter_h_loop: + function x264_frame_init_lowres_core_neon + push {r4-r10,lr} + vpush {d8-d15} +- ldrd r4, [sp, #96] +- ldrd r6, [sp, #104] ++ ldrd r4, r5, [sp, #96] ++ ldrd r6, r7, [sp, #104] + ldr lr, [sp, #112] + sub r10, r6, r7 // dst_stride - width + and r10, r10, #~15 +diff --git a/common/arm/pixel-a.S b/common/arm/pixel-a.S +index 8bce3b6..0784ae6 100644 +--- a/common/arm/pixel-a.S ++++ b/common/arm/pixel-a.S +@@ -328,9 +328,9 @@ SAD_FUNC_DUAL 16, 16 + function x264_pixel_sad_x\x\()_\w\()x\h\()_neon + push {r6-r7,lr} + .if \x == 3 +- ldrd r6, [sp, #12] ++ ldrd r6, r7, [sp, #12] + .else +- ldrd r6, [sp, #16] ++ ldrd r6, r7, [sp, #16] + ldr r12, [sp, #12] + .endif + mov lr, #FENC_STRIDE +@@ -596,7 +596,7 @@ function x264_pixel_var2_8x8_neon + vadd.s32 d1, d2, d3 + vpadd.s32 d0, d0, d1 + +- vmov.32 r0, r1, d0 ++ vmov r0, r1, d0 + vst1.32 {d0[1]}, [ip,:32] + mul r0, r0, r0 + sub r0, r1, r0, lsr #6 +diff --git a/common/arm/predict-a.S b/common/arm/predict-a.S +index af65bd7..8cdaf50 100644 +--- a/common/arm/predict-a.S ++++ b/common/arm/predict-a.S +@@ -181,9 +181,9 @@ function x264_predict_4x4_ddl_neon + + function x264_predict_8x8_dc_neon + mov ip, #0 +- ldrd r2, [r1, #8] ++ ldrd r2, r3, [r1, #8] + push {r4-r5,lr} +- ldrd r4, [r1, #16] ++ ldrd r4, r5, [r1, #16] + lsl r3, r3, #8 + ldrb lr, [r1, #7] + usad8 r2, r2, ip +diff --git a/common/arm/quant-a.S b/common/arm/quant-a.S +index e851562..c159f9e 100644 +--- a/common/arm/quant-a.S ++++ b/common/arm/quant-a.S +@@ -271,7 +271,7 @@ dequant_4x4_dc_rshift: + + // int coeff_last( int16_t *l ) + function x264_coeff_last4_arm +- ldrd r2, [r0] ++ ldrd r2, r3, [r0] + subs r0, r3, #0 + movne r0, #2 + movne r2, r3 +@@ -300,7 +300,7 @@ function x264_coeff_last\size\()_neon + + subs r1, ip, r1, lsr #2 + addge r0, r1, #\size - 8 +- sublts r0, r3, r0, lsr #2 ++ sublt r0, r3, r0, lsr #2 + movlt r0, #0 + bx lr + .endfunc +@@ -349,7 +349,7 @@ function x264_coeff_last64_neon + + subs r1, ip, r1 + addge r0, r1, #32 +- sublts r0, ip, r0 ++ sublt r0, ip, r0 + movlt r0, #0 + bx lr + .endfunc diff --git a/submodules/build/builders.d/zrtp.mk b/submodules/build/builders.d/zrtp.mk index 6dff4c4d2..4a9ae96c7 100644 --- a/submodules/build/builders.d/zrtp.mk +++ b/submodules/build/builders.d/zrtp.mk @@ -4,7 +4,7 @@ $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile: cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/\ && host_alias=$(host) . $(BUILDER_SRC_DIR)/build/$(config_site) \ && cmake $(BUILDER_SRC_DIR)/$(zrtpcpp_dir) -Denable-ccrtp=false -DCMAKE_TOOLCHAIN_FILE=$(BUILDER_SRC_DIR)build/iphone-toolchain.cmake \ - -LH -Wdev -DCMAKE_C_COMPILER=$$SDK_BIN_PATH/gcc -DCMAKE_CXX_COMPILER=$$SDK_BIN_PATH/g++ \ + -LH -Wdev -DCMAKE_C_COMPILER=`xcrun --find clang` -DCMAKE_CXX_COMPILER=`xcrun --find clang` \ -DCMAKE_SYSTEM_PROCESSOR=$$ARCH -DCMAKE_C_FLAGS="$$COMMON_FLAGS" -DCMAKE_CXX_FLAGS="$$COMMON_FLAGS" \ -DCMAKE_INSTALL_PREFIX=$(prefix) -DCMAKE_FIND_ROOT_PATH="$(prefix) -DBUILD_STATIC=ON " # Used toolchain: $(TC) @@ -12,7 +12,9 @@ $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile: build-zrtpcpp: $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile @echo "Build ZRTP - prefix $(prefix)" - cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) && make VERBOSE=1 && make install + cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) \ + && host_alias=$(host) . $(BUILDER_SRC_DIR)/build/$(config_site) \ + && make VERBOSE=1 && make install clean-zrtpcpp: -cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) && make clean diff --git a/submodules/build/iphone-config.site b/submodules/build/iphone-config.site index ea15aad82..1597865b5 100644 --- a/submodules/build/iphone-config.site +++ b/submodules/build/iphone-config.site @@ -27,11 +27,11 @@ else exit fi echo "Loading config.site for iPhone platform=${PLATFORM} version=${SDK_VERSION}" -XCODE_ROOT=/Applications/Xcode.app +XCODE_DEV_PATH=`xcode-select -print-path` #new path with Xcode 4.3: -if test -d ${XCODE_ROOT}/Contents/Developer/Platforms/iPhone${PLATFORM}.platform/Developer/SDKs ; then - SDK_PATH_LIST=`ls -drt ${XCODE_ROOT}/Contents/Developer/Platforms/iPhone${PLATFORM}.platform/Developer/SDKs/iPhone${PLATFORM}*` - SDK_BIN_PATH=${XCODE_ROOT}/Contents/Developer/Platforms/iPhone${PLATFORM}.platform/Developer/usr/bin +if test -d ${XCODE_DEV_PATH}/Platforms/iPhone${PLATFORM}.platform/Developer/SDKs ; then + SDK_PATH_LIST=`ls -drt ${XCODE_DEV_PATH}/Platforms/iPhone${PLATFORM}.platform/Developer/SDKs/iPhone${PLATFORM}*` + SDK_BIN_PATH=${XCODE_DEV_PATH}/Platforms/iPhone${PLATFORM}.platform/Developer/usr/bin else SDK_PATH_LIST=`ls -drt /Developer/Platforms/iPhone${PLATFORM}.platform/Developer/SDKs/iPhone${PLATFORM}*` SDK_BIN_PATH=/Developer/Platforms/iPhone${PLATFORM}.platform/Developer/usr/bin @@ -39,13 +39,20 @@ fi for SYSROOT_PATH in $SDK_PATH_LIST ; do echo $SYSROOT_PATH ; done ; echo "Selecting SDK path = ${SYSROOT_PATH}" -COMMON_FLAGS=" -arch ${ARCH} ${MCPU} -isysroot ${SYSROOT_PATH} -miphoneos-version-min=${SDK_VERSION} -DTARGET_OS_IPHONE=1 -D__IOS" -CC="${SDK_BIN_PATH}/gcc -std=c99 $COMMON_FLAGS" -OBJC="${SDK_BIN_PATH}/gcc -std=c99 $COMMON_FLAGS" -CXX="${SDK_BIN_PATH}/g++ $COMMON_FLAGS" -LD="${SDK_BIN_PATH}/ld -arch ${ARCH}" -AR=${SDK_BIN_PATH}/ar -RANLIB=${SDK_BIN_PATH}/ranlib + +COMMON_FLAGS=" -arch ${ARCH} ${MCPU} -isysroot ${SYSROOT_PATH} -miphoneos-version-min=${SDK_VERSION} -DTARGET_OS_IPHONE=1 -D__IOS -fms-extensions" +CC="xcrun clang -std=c99 $COMMON_FLAGS" +OBJC="xcrun clang -std=c99 $COMMON_FLAGS" +CXX="xcrun clang++ $COMMON_FLAGS" +LD="xcrun ld -arch ${ARCH}" +AR="xcrun ar" +RANLIB="xcrun ranlib" +STRIP="xcrun strip" +NM="xcrun nm" CPPFLAGS="-Dasm=__asm" OBJCFLAGS="-x objective-c -fexceptions -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch" +#Force install script to use -C so that header files don't get re-written if not changed. +INSTALL_DATA="ginstall -C" + + diff --git a/submodules/externals/antlr3 b/submodules/externals/antlr3 new file mode 160000 index 000000000..5ed4fec73 --- /dev/null +++ b/submodules/externals/antlr3 @@ -0,0 +1 @@ +Subproject commit 5ed4fec737f88c69da3192871fb2553bffe46bfa diff --git a/submodules/externals/exosip b/submodules/externals/exosip deleted file mode 160000 index ea5d69281..000000000 --- a/submodules/externals/exosip +++ /dev/null @@ -1 +0,0 @@ -Subproject commit ea5d692816953ac506464a53238f2103cda8cfee diff --git a/submodules/externals/ffmpeg b/submodules/externals/ffmpeg index 907783f22..2b8b2ba19 160000 --- a/submodules/externals/ffmpeg +++ b/submodules/externals/ffmpeg @@ -1 +1 @@ -Subproject commit 907783f221ad9594a528681e30777705f11bf0b5 +Subproject commit 2b8b2ba19fe0ca6594cb09439b9ead2c328a79d8 diff --git a/submodules/externals/libvpx b/submodules/externals/libvpx index c8df1656b..b9ce43029 160000 --- a/submodules/externals/libvpx +++ b/submodules/externals/libvpx @@ -1 +1 @@ -Subproject commit c8df1656bd94928059204242e778bd5b8b9dc7aa +Subproject commit b9ce43029298182668d4dcb0e0814189e4a63c2a diff --git a/submodules/externals/libxml2 b/submodules/externals/libxml2 new file mode 160000 index 000000000..c943f708f --- /dev/null +++ b/submodules/externals/libxml2 @@ -0,0 +1 @@ +Subproject commit c943f708f1853de4eb15e5a94cf0b35d108da87a diff --git a/submodules/externals/opus b/submodules/externals/opus new file mode 160000 index 000000000..fcecd29ab --- /dev/null +++ b/submodules/externals/opus @@ -0,0 +1 @@ +Subproject commit fcecd29abf32164326e568acdcdf7d8e877b33b1 diff --git a/submodules/externals/osip b/submodules/externals/osip deleted file mode 160000 index 7e98a3379..000000000 --- a/submodules/externals/osip +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 7e98a3379280307811ed4ad67a95fbf73ba5bbb6 diff --git a/submodules/externals/polarssl b/submodules/externals/polarssl new file mode 160000 index 000000000..d2bba11d1 --- /dev/null +++ b/submodules/externals/polarssl @@ -0,0 +1 @@ +Subproject commit d2bba11d1c5047737822adbaeae381b145c7ccba diff --git a/submodules/externals/speex b/submodules/externals/speex index 89e99a481..3c3178184 160000 --- a/submodules/externals/speex +++ b/submodules/externals/speex @@ -1 +1 @@ -Subproject commit 89e99a4814fd62945ff559d3d37d9aa92caf3169 +Subproject commit 3c317818481b67e0dd732e5dc045d6b981a8775b diff --git a/submodules/externals/srtp b/submodules/externals/srtp index 152b63cba..14027d37c 160000 --- a/submodules/externals/srtp +++ b/submodules/externals/srtp @@ -1 +1 @@ -Subproject commit 152b63cba01823c391cf03600dac35fa101c8894 +Subproject commit 14027d37c7574b27bf22e57f508137b4e86b6466 diff --git a/submodules/externals/zrtpcpp b/submodules/externals/zrtpcpp index 9cac07ec1..bfbfcab72 160000 --- a/submodules/externals/zrtpcpp +++ b/submodules/externals/zrtpcpp @@ -1 +1 @@ -Subproject commit 9cac07ec1a1f57bfd0198c0895fae42a79a62a9f +Subproject commit bfbfcab72dfa27862b05607d18bb24b6f8395fcf diff --git a/submodules/liblinphone.xcodeproj/project.pbxproj b/submodules/liblinphone.xcodeproj/project.pbxproj index a85ff2e50..a557e7a66 100644 --- a/submodules/liblinphone.xcodeproj/project.pbxproj +++ b/submodules/liblinphone.xcodeproj/project.pbxproj @@ -7,6 +7,17 @@ objects = { /* Begin PBXBuildFile section */ + 1561A554178D9C68006B4B2F /* ioshardware.h in Headers */ = {isa = PBXBuildFile; fileRef = 1561A553178D9C68006B4B2F /* ioshardware.h */; }; + 1561A555178D9C71006B4B2F /* ioshardware.m in Sources */ = {isa = PBXBuildFile; fileRef = 1561A551178D98E2006B4B2F /* ioshardware.m */; }; + 2206D2D3177AC70900C40726 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 2206D2C6177AC70900C40726 /* InfoPlist.strings */; }; + 2206D2D4177AC70900C40726 /* MainWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 2206D2C8177AC70900C40726 /* MainWindow.xib */; }; + 2206D2D5177AC70900C40726 /* mediastreamViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 2206D2CA177AC70900C40726 /* mediastreamViewController.xib */; }; + 2206D2D6177AC70900C40726 /* mediastream-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 2206D2CC177AC70900C40726 /* mediastream-Info.plist */; }; + 2206D2D7177AC70900C40726 /* mediastreamAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 2206D2CF177AC70900C40726 /* mediastreamAppDelegate.m */; }; + 2206D2D8177AC70900C40726 /* mediastreamViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 2206D2D1177AC70900C40726 /* mediastreamViewController.m */; }; + 2206D2D9177AC70900C40726 /* mediastream.c in Sources */ = {isa = PBXBuildFile; fileRef = 2206D2D2177AC70900C40726 /* mediastream.c */; }; + 2206D2DE177ACD3800C40726 /* libmediastreamer_voip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22C8D0E91769F8FF00DAFB4E /* libmediastreamer_voip.a */; }; + 2206D2E1177ACF5700C40726 /* nowebcamCIF.jpg in Resources */ = {isa = PBXBuildFile; fileRef = 2206D2E0177ACF5700C40726 /* nowebcamCIF.jpg */; }; 220ED19A13A8F87700AC21E0 /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220ED19713A8F87700AC21E0 /* libspeexdsp.a */; }; 220ED19B13A8F87700AC21E0 /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220ED19813A8F87700AC21E0 /* libspeex.a */; }; 220ED19C13A8F87700AC21E0 /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220ED19913A8F87700AC21E0 /* libortp.a */; }; @@ -20,10 +31,6 @@ 2211DBA1147660BB00DEE054 /* libSKP_SILK_SDK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2211DBA0147660BB00DEE054 /* libSKP_SILK_SDK.a */; }; 221DCB561529FE660025E54D /* linphonecall.c in Sources */ = {isa = PBXBuildFile; fileRef = 225D3559124B1FF60008581C /* linphonecall.c */; }; 221DCB57152A07050025E54D /* ec-calibrator.c in Sources */ = {isa = PBXBuildFile; fileRef = 2252935A12F6CA4700DD9BFB /* ec-calibrator.c */; }; - 221DCB6C153584410025E54D /* yuv2rgb.fs in Sources */ = {isa = PBXBuildFile; fileRef = 221DCB6A153584410025E54D /* yuv2rgb.fs */; }; - 221DCB6D153584410025E54D /* yuv2rgb.fs in Sources */ = {isa = PBXBuildFile; fileRef = 221DCB6A153584410025E54D /* yuv2rgb.fs */; }; - 221DCB6E153584410025E54D /* yuv2rgb.vs in Sources */ = {isa = PBXBuildFile; fileRef = 221DCB6B153584410025E54D /* yuv2rgb.vs */; }; - 221DCB6F153584410025E54D /* yuv2rgb.vs in Sources */ = {isa = PBXBuildFile; fileRef = 221DCB6B153584410025E54D /* yuv2rgb.vs */; }; 221F58A013AB50F800D603C9 /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 221F589F13AB50F800D603C9 /* CoreMedia.framework */; }; 222CA63211F6CF7600621220 /* allfilters.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5BE11F6CF7600621220 /* allfilters.h */; }; 222CA63311F6CF7600621220 /* dsptools.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5BF11F6CF7600621220 /* dsptools.h */; }; @@ -92,29 +99,9 @@ 222CA77A11F6CFB100621220 /* private.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA75811F6CFB100621220 /* private.h */; }; 222CA77B11F6CFB100621220 /* proxy.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA75911F6CFB100621220 /* proxy.c */; }; 222CA77C11F6CFB100621220 /* sal.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA75A11F6CFB100621220 /* sal.c */; }; - 222CA77D11F6CFB100621220 /* sal.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA75B11F6CFB100621220 /* sal.h */; }; 222CA78411F6CFB100621220 /* siplogin.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA76211F6CFB100621220 /* siplogin.c */; }; 222CA78511F6CFB100621220 /* sipsetup.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA76311F6CFB100621220 /* sipsetup.c */; }; 222CA78611F6CFB100621220 /* sipsetup.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA76411F6CFB100621220 /* sipsetup.h */; }; - 223CA86716D9268D00EF1BEC /* alaw.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7F016D9268D00EF1BEC /* alaw.c */; }; - 223CA86916D9268D00EF1BEC /* aqsnd.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7F216D9268D00EF1BEC /* aqsnd.c */; }; - 223CA86B16D9268D00EF1BEC /* audiomixer.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7F416D9268D00EF1BEC /* audiomixer.c */; }; - 223CA86C16D9268D00EF1BEC /* chanadapt.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7F516D9268D00EF1BEC /* chanadapt.c */; }; - 223CA86D16D9268D00EF1BEC /* dtmfgen.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7F616D9268D00EF1BEC /* dtmfgen.c */; }; - 223CA86E16D9268D00EF1BEC /* equalizer.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7F716D9268D00EF1BEC /* equalizer.c */; }; - 223CA87016D9268D00EF1BEC /* genericplc.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7F916D9268D00EF1BEC /* genericplc.c */; }; - 223CA87116D9268D00EF1BEC /* gsm.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7FA16D9268D00EF1BEC /* gsm.c */; }; - 223CA87216D9268D00EF1BEC /* l16.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7FB16D9268D00EF1BEC /* l16.c */; }; - 223CA87416D9268D00EF1BEC /* msconf.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7FD16D9268D00EF1BEC /* msconf.c */; }; - 223CA87516D9268D00EF1BEC /* msfileplayer.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7FE16D9268D00EF1BEC /* msfileplayer.c */; }; - 223CA87616D9268D00EF1BEC /* msfilerec.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7FF16D9268D00EF1BEC /* msfilerec.c */; }; - 223CA87716D9268D00EF1BEC /* msg722.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA80016D9268D00EF1BEC /* msg722.c */; }; - 223CA87816D9268D00EF1BEC /* msiounit.m in Sources */ = {isa = PBXBuildFile; fileRef = 223CA80116D9268D00EF1BEC /* msiounit.m */; }; - 223CA87916D9268D00EF1BEC /* msresample.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA80216D9268D00EF1BEC /* msresample.c */; }; - 223CA87A16D9268D00EF1BEC /* msspeex.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA80316D9268D00EF1BEC /* msspeex.c */; }; - 223CA87B16D9268D00EF1BEC /* msvolume.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA80416D9268D00EF1BEC /* msvolume.c */; }; - 223CA88016D9268D00EF1BEC /* tonedetector.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA80916D9268D00EF1BEC /* tonedetector.c */; }; - 223CA88116D9268D00EF1BEC /* ulaw.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA80A16D9268D00EF1BEC /* ulaw.c */; }; 223CA88216D9268D00EF1BEC /* waveheader.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA80B16D9268D00EF1BEC /* waveheader.h */; }; 223CA88816D9268D00EF1BEC /* eventqueue.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA81216D9268D00EF1BEC /* eventqueue.c */; }; 223CA88916D9268D00EF1BEC /* mscommon.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA81316D9268D00EF1BEC /* mscommon.c */; }; @@ -124,62 +111,125 @@ 223CA88D16D9268D00EF1BEC /* msticker.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA81716D9268D00EF1BEC /* msticker.c */; }; 223CA88E16D9268D00EF1BEC /* mswebcam.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA81816D9268D00EF1BEC /* mswebcam.c */; }; 223CA88F16D9268D00EF1BEC /* mtu.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA81916D9268D00EF1BEC /* mtu.c */; }; - 223CA89016D9268D00EF1BEC /* itc.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA81B16D9268D00EF1BEC /* itc.c */; }; - 223CA89116D9268D00EF1BEC /* join.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA81C16D9268D00EF1BEC /* join.c */; }; - 223CA89216D9268D00EF1BEC /* msrtp.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA81D16D9268D00EF1BEC /* msrtp.c */; }; - 223CA89316D9268D00EF1BEC /* tee.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA81E16D9268D00EF1BEC /* tee.c */; }; - 223CA89416D9268D00EF1BEC /* void.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA81F16D9268D00EF1BEC /* void.c */; }; 223CA89516D9268D00EF1BEC /* _kiss_fft_guts.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA82116D9268D00EF1BEC /* _kiss_fft_guts.h */; }; - 223CA89616D9268D00EF1BEC /* dsptools.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA82216D9268D00EF1BEC /* dsptools.c */; }; 223CA89716D9268D00EF1BEC /* ffmpeg-priv.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA82316D9268D00EF1BEC /* ffmpeg-priv.h */; }; 223CA89816D9268D00EF1BEC /* g711common.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA82416D9268D00EF1BEC /* g711common.h */; }; 223CA89916D9268D00EF1BEC /* g722.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA82516D9268D00EF1BEC /* g722.h */; }; - 223CA89A16D9268D00EF1BEC /* g722_decode.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA82616D9268D00EF1BEC /* g722_decode.c */; }; - 223CA89B16D9268D00EF1BEC /* g722_encode.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA82716D9268D00EF1BEC /* g722_encode.c */; }; - 223CA89C16D9268D00EF1BEC /* kiss_fft.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA82816D9268D00EF1BEC /* kiss_fft.c */; }; 223CA89D16D9268D00EF1BEC /* kiss_fft.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA82916D9268D00EF1BEC /* kiss_fft.h */; }; - 223CA89E16D9268D00EF1BEC /* kiss_fftr.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA82A16D9268D00EF1BEC /* kiss_fftr.c */; }; 223CA89F16D9268D00EF1BEC /* kiss_fftr.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA82B16D9268D00EF1BEC /* kiss_fftr.h */; }; - 223CA8A116D9268D00EF1BEC /* opengles_display.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA82D16D9268D00EF1BEC /* opengles_display.c */; }; 223CA8A216D9268D00EF1BEC /* opengles_display.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA82E16D9268D00EF1BEC /* opengles_display.h */; }; - 223CA8A316D9268D00EF1BEC /* shaders.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA82F16D9268D00EF1BEC /* shaders.c */; }; 223CA8A416D9268D00EF1BEC /* shaders.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA83016D9268D00EF1BEC /* shaders.h */; }; 223CA8A516D9268D00EF1BEC /* swscale.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA83116D9268D00EF1BEC /* swscale.h */; }; 223CA8A616D9268D00EF1BEC /* vfw-missing.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA83216D9268D00EF1BEC /* vfw-missing.h */; }; - 223CA8A816D9268D00EF1BEC /* extdisplay.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA83516D9268D00EF1BEC /* extdisplay.c */; }; - 223CA8AA16D9268D00EF1BEC /* h264dec.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA83716D9268D00EF1BEC /* h264dec.c */; }; - 223CA8AB16D9268D00EF1BEC /* ioscapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 223CA83816D9268D00EF1BEC /* ioscapture.m */; }; - 223CA8AC16D9268D00EF1BEC /* iosdisplay.m in Sources */ = {isa = PBXBuildFile; fileRef = 223CA83916D9268D00EF1BEC /* iosdisplay.m */; }; - 223CA8AD16D9268D00EF1BEC /* jpegwriter.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA83A16D9268D00EF1BEC /* jpegwriter.c */; }; - 223CA8AE16D9268D00EF1BEC /* mire.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA83B16D9268D00EF1BEC /* mire.c */; }; - 223CA8B316D9268D00EF1BEC /* nowebcam.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA84016D9268D00EF1BEC /* nowebcam.c */; }; - 223CA8B416D9268D00EF1BEC /* pixconv.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA84116D9268D00EF1BEC /* pixconv.c */; }; - 223CA8B616D9268D00EF1BEC /* sizeconv.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA84316D9268D00EF1BEC /* sizeconv.c */; }; - 223CA8B816D9268D00EF1BEC /* videodec.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA84516D9268D00EF1BEC /* videodec.c */; }; - 223CA8B916D9268D00EF1BEC /* videoenc.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA84616D9268D00EF1BEC /* videoenc.c */; }; - 223CA8BB16D9268D00EF1BEC /* vp8.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA84816D9268D00EF1BEC /* vp8.c */; }; - 223CA8C116D9268D00EF1BEC /* audioconference.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA84F16D9268D00EF1BEC /* audioconference.c */; }; - 223CA8C216D9268D00EF1BEC /* audiostream.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85016D9268D00EF1BEC /* audiostream.c */; }; - 223CA8C316D9268D00EF1BEC /* bitratecontrol.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85116D9268D00EF1BEC /* bitratecontrol.c */; }; - 223CA8C416D9268D00EF1BEC /* bitratedriver.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85216D9268D00EF1BEC /* bitratedriver.c */; }; - 223CA8C516D9268D00EF1BEC /* ice.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85316D9268D00EF1BEC /* ice.c */; }; - 223CA8C616D9268D00EF1BEC /* layouts.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85416D9268D00EF1BEC /* layouts.c */; }; 223CA8C716D9268D00EF1BEC /* layouts.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA85516D9268D00EF1BEC /* layouts.h */; }; - 223CA8C816D9268D00EF1BEC /* mediastream.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85616D9268D00EF1BEC /* mediastream.c */; }; - 223CA8C916D9268D00EF1BEC /* msvideo.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85716D9268D00EF1BEC /* msvideo.c */; }; - 223CA8CA16D9268D00EF1BEC /* msvideo_neon.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85816D9268D00EF1BEC /* msvideo_neon.c */; }; 223CA8CB16D9268D00EF1BEC /* msvideo_neon.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA85916D9268D00EF1BEC /* msvideo_neon.h */; }; - 223CA8CC16D9268D00EF1BEC /* msvoip.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85A16D9268D00EF1BEC /* msvoip.c */; }; 223CA8CD16D9268D00EF1BEC /* nowebcam.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA85B16D9268D00EF1BEC /* nowebcam.h */; }; 223CA8CE16D9268D00EF1BEC /* private.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA85D16D9268D00EF1BEC /* private.h */; }; - 223CA8CF16D9268D00EF1BEC /* qosanalyzer.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85E16D9268D00EF1BEC /* qosanalyzer.c */; }; - 223CA8D016D9268D00EF1BEC /* qualityindicator.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85F16D9268D00EF1BEC /* qualityindicator.c */; }; 223CA8D116D9268D00EF1BEC /* rfc2429.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA86016D9268D00EF1BEC /* rfc2429.h */; }; - 223CA8D216D9268D00EF1BEC /* rfc3984.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA86116D9268D00EF1BEC /* rfc3984.c */; }; - 223CA8D316D9268D00EF1BEC /* ringstream.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA86216D9268D00EF1BEC /* ringstream.c */; }; - 223CA8D416D9268D00EF1BEC /* scaler.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA86316D9268D00EF1BEC /* scaler.c */; }; 223CA8D516D9268D00EF1BEC /* scaler.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA86416D9268D00EF1BEC /* scaler.h */; }; - 223CA8D716D9268D00EF1BEC /* videostream.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA86616D9268D00EF1BEC /* videostream.c */; }; + 223CA8E316D9298F00EF1BEC /* sal_address_impl.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA8D916D9298F00EF1BEC /* sal_address_impl.c */; }; + 223CA8E416D9298F00EF1BEC /* sal_impl.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA8DA16D9298F00EF1BEC /* sal_impl.c */; }; + 223CA8E516D9298F00EF1BEC /* sal_impl.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA8DB16D9298F00EF1BEC /* sal_impl.h */; }; + 223CA8E616D9298F00EF1BEC /* sal_op_call.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA8DC16D9298F00EF1BEC /* sal_op_call.c */; }; + 223CA8E716D9298F00EF1BEC /* sal_op_call_transfer.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA8DD16D9298F00EF1BEC /* sal_op_call_transfer.c */; }; + 223CA8E816D9298F00EF1BEC /* sal_op_impl.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA8DE16D9298F00EF1BEC /* sal_op_impl.c */; }; + 223CA8E916D9298F00EF1BEC /* sal_op_message.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA8DF16D9298F00EF1BEC /* sal_op_message.c */; }; + 223CA8EA16D9298F00EF1BEC /* sal_op_presence.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA8E016D9298F00EF1BEC /* sal_op_presence.c */; }; + 223CA8EB16D9298F00EF1BEC /* sal_op_registration.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA8E116D9298F00EF1BEC /* sal_op_registration.c */; }; + 223CA8EC16D9298F00EF1BEC /* sal_sdp.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA8E216D9298F00EF1BEC /* sal_sdp.c */; }; + 223CA8EF16DA10AB00EF1BEC /* liblinphone_Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = AA747D9E0F9514B9006C5449 /* liblinphone_Prefix.pch */; }; + 223CA8F016DA10AB00EF1BEC /* allfilters.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5BE11F6CF7600621220 /* allfilters.h */; }; + 223CA8F116DA10AB00EF1BEC /* dsptools.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5BF11F6CF7600621220 /* dsptools.h */; }; + 223CA8F216DA10AB00EF1BEC /* dtmfgen.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C011F6CF7600621220 /* dtmfgen.h */; }; + 223CA8F316DA10AB00EF1BEC /* ice.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C111F6CF7600621220 /* ice.h */; }; + 223CA8F416DA10AB00EF1BEC /* mediastream.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C411F6CF7600621220 /* mediastream.h */; }; + 223CA8F516DA10AB00EF1BEC /* msaudiomixer.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C511F6CF7600621220 /* msaudiomixer.h */; }; + 223CA8F616DA10AB00EF1BEC /* mschanadapter.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C611F6CF7600621220 /* mschanadapter.h */; }; + 223CA8F716DA10AB00EF1BEC /* mscommon.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C711F6CF7600621220 /* mscommon.h */; }; + 223CA8F816DA10AB00EF1BEC /* msequalizer.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C811F6CF7600621220 /* msequalizer.h */; }; + 223CA8F916DA10AB00EF1BEC /* mseventqueue.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C911F6CF7600621220 /* mseventqueue.h */; }; + 223CA8FA16DA10AB00EF1BEC /* msextdisplay.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5CA11F6CF7600621220 /* msextdisplay.h */; }; + 223CA8FB16DA10AB00EF1BEC /* msfileplayer.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5CB11F6CF7600621220 /* msfileplayer.h */; }; + 223CA8FC16DA10AB00EF1BEC /* msfilerec.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5CC11F6CF7600621220 /* msfilerec.h */; }; + 223CA8FD16DA10AB00EF1BEC /* msfilter.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5CD11F6CF7600621220 /* msfilter.h */; }; + 223CA8FE16DA10AB00EF1BEC /* msinterfaces.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5CE11F6CF7600621220 /* msinterfaces.h */; }; + 223CA8FF16DA10AB00EF1BEC /* msitc.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5CF11F6CF7600621220 /* msitc.h */; }; + 223CA90016DA10AB00EF1BEC /* msqueue.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D011F6CF7600621220 /* msqueue.h */; }; + 223CA90116DA10AB00EF1BEC /* msrtp.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D111F6CF7600621220 /* msrtp.h */; }; + 223CA90216DA10AB00EF1BEC /* mssndcard.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D211F6CF7600621220 /* mssndcard.h */; }; + 223CA90316DA10AB00EF1BEC /* mstee.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D311F6CF7600621220 /* mstee.h */; }; + 223CA90416DA10AB00EF1BEC /* msticker.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D411F6CF7600621220 /* msticker.h */; }; + 223CA90516DA10AB00EF1BEC /* msv4l.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D511F6CF7600621220 /* msv4l.h */; }; + 223CA90616DA10AB00EF1BEC /* msvideo.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D611F6CF7600621220 /* msvideo.h */; }; + 223CA90716DA10AB00EF1BEC /* msvideoout.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D711F6CF7600621220 /* msvideoout.h */; }; + 223CA90816DA10AB00EF1BEC /* msvolume.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D811F6CF7600621220 /* msvolume.h */; }; + 223CA90916DA10AB00EF1BEC /* mswebcam.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D911F6CF7600621220 /* mswebcam.h */; }; + 223CA90A16DA10AB00EF1BEC /* rfc3984.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5DA11F6CF7600621220 /* rfc3984.h */; }; + 223CA90B16DA10AB00EF1BEC /* waveheader.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5DB11F6CF7600621220 /* waveheader.h */; }; + 223CA90C16DA10AB00EF1BEC /* b64.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6A511F6CF9F00621220 /* b64.h */; }; + 223CA90D16DA10AB00EF1BEC /* event.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6A611F6CF9F00621220 /* event.h */; }; + 223CA90E16DA10AB00EF1BEC /* ortp.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6A911F6CF9F00621220 /* ortp.h */; }; + 223CA90F16DA10AB00EF1BEC /* payloadtype.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6AA11F6CF9F00621220 /* payloadtype.h */; }; + 223CA91016DA10AB00EF1BEC /* port.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6AB11F6CF9F00621220 /* port.h */; }; + 223CA91116DA10AB00EF1BEC /* rtcp.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6AC11F6CF9F00621220 /* rtcp.h */; }; + 223CA91216DA10AB00EF1BEC /* rtp.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6AD11F6CF9F00621220 /* rtp.h */; }; + 223CA91316DA10AB00EF1BEC /* rtpsession.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6AE11F6CF9F00621220 /* rtpsession.h */; }; + 223CA91416DA10AB00EF1BEC /* rtpsignaltable.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6AF11F6CF9F00621220 /* rtpsignaltable.h */; }; + 223CA91516DA10AB00EF1BEC /* sessionset.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6B011F6CF9F00621220 /* sessionset.h */; }; + 223CA91616DA10AB00EF1BEC /* srtp.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6B111F6CF9F00621220 /* srtp.h */; }; + 223CA91716DA10AB00EF1BEC /* str_utils.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6B211F6CF9F00621220 /* str_utils.h */; }; + 223CA91816DA10AB00EF1BEC /* stun.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6B311F6CF9F00621220 /* stun.h */; }; + 223CA91916DA10AB00EF1BEC /* stun_udp.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6B411F6CF9F00621220 /* stun_udp.h */; }; + 223CA91A16DA10AB00EF1BEC /* telephonyevents.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6B511F6CF9F00621220 /* telephonyevents.h */; }; + 223CA91B16DA10AB00EF1BEC /* jitterctl.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6BD11F6CF9F00621220 /* jitterctl.h */; }; + 223CA91C16DA10AB00EF1BEC /* ortp-config-win32.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6C111F6CF9F00621220 /* ortp-config-win32.h */; }; + 223CA91D16DA10AB00EF1BEC /* rtpsession_priv.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6CB11F6CF9F00621220 /* rtpsession_priv.h */; }; + 223CA91E16DA10AB00EF1BEC /* rtptimer.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6CE11F6CF9F00621220 /* rtptimer.h */; }; + 223CA91F16DA10AB00EF1BEC /* scheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6D011F6CF9F00621220 /* scheduler.h */; }; + 223CA92016DA10AB00EF1BEC /* utils.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6F311F6CF9F00621220 /* utils.h */; }; + 223CA92116DA10AB00EF1BEC /* enum.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA73411F6CFB100621220 /* enum.h */; }; + 223CA92216DA10AB00EF1BEC /* linphonecore.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA74011F6CFB100621220 /* linphonecore.h */; }; + 223CA92316DA10AB00EF1BEC /* lpconfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA74311F6CFB100621220 /* lpconfig.h */; }; + 223CA92416DA10AB00EF1BEC /* offeranswer.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA74811F6CFB100621220 /* offeranswer.h */; }; + 223CA92516DA10AB00EF1BEC /* private.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA75811F6CFB100621220 /* private.h */; }; + 223CA92716DA10AB00EF1BEC /* sipsetup.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA76411F6CFB100621220 /* sipsetup.h */; }; + 223CA92816DA10AB00EF1BEC /* config.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B4F11F84E2D00373793 /* config.h */; }; + 223CA92916DA10AB00EF1BEC /* gsm.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5011F84E2D00373793 /* gsm.h */; }; + 223CA92A16DA10AB00EF1BEC /* private.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5211F84E2D00373793 /* private.h */; }; + 223CA92B16DA10AB00EF1BEC /* proto.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5311F84E2D00373793 /* proto.h */; }; + 223CA92C16DA10AB00EF1BEC /* toast.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5411F84E2D00373793 /* toast.h */; }; + 223CA92D16DA10AB00EF1BEC /* unproto.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5511F84E2D00373793 /* unproto.h */; }; + 223CA92E16DA10AB00EF1BEC /* linphonecore_utils.h in Headers */ = {isa = PBXBuildFile; fileRef = 229B9D5813043EAB00EFCD1C /* linphonecore_utils.h */; }; + 223CA92F16DA10AB00EF1BEC /* zrtp.h in Headers */ = {isa = PBXBuildFile; fileRef = 7014533B13FA7ECA00A01D86 /* zrtp.h */; }; + 223CA93116DA10AB00EF1BEC /* avprofile.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6B811F6CF9F00621220 /* avprofile.c */; }; + 223CA93216DA10AB00EF1BEC /* b64.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6B911F6CF9F00621220 /* b64.c */; }; + 223CA93316DA10AB00EF1BEC /* event.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6BB11F6CF9F00621220 /* event.c */; }; + 223CA93416DA10AB00EF1BEC /* jitterctl.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6BC11F6CF9F00621220 /* jitterctl.c */; }; + 223CA93516DA10AB00EF1BEC /* ortp.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6C211F6CF9F00621220 /* ortp.c */; }; + 223CA93616DA10AB00EF1BEC /* payloadtype.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6C311F6CF9F00621220 /* payloadtype.c */; }; + 223CA93716DA10AB00EF1BEC /* port.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6C411F6CF9F00621220 /* port.c */; }; + 223CA93816DA10AB00EF1BEC /* posixtimer.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6C511F6CF9F00621220 /* posixtimer.c */; }; + 223CA93916DA10AB00EF1BEC /* rtcp.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6C611F6CF9F00621220 /* rtcp.c */; }; + 223CA93A16DA10AB00EF1BEC /* rtcpparse.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6C711F6CF9F00621220 /* rtcpparse.c */; }; + 223CA93B16DA10AB00EF1BEC /* rtpparse.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6C811F6CF9F00621220 /* rtpparse.c */; }; + 223CA93C16DA10AB00EF1BEC /* rtpsession.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6C911F6CF9F00621220 /* rtpsession.c */; }; + 223CA93D16DA10AB00EF1BEC /* rtpsession_inet.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6CA11F6CF9F00621220 /* rtpsession_inet.c */; }; + 223CA93E16DA10AB00EF1BEC /* rtpsignaltable.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6CC11F6CF9F00621220 /* rtpsignaltable.c */; }; + 223CA93F16DA10AB00EF1BEC /* rtptimer.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6CD11F6CF9F00621220 /* rtptimer.c */; }; + 223CA94016DA10AB00EF1BEC /* scheduler.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6CF11F6CF9F00621220 /* scheduler.c */; }; + 223CA94116DA10AB00EF1BEC /* sessionset.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6D111F6CF9F00621220 /* sessionset.c */; }; + 223CA94216DA10AB00EF1BEC /* str_utils.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6D311F6CF9F00621220 /* str_utils.c */; }; + 223CA94316DA10AB00EF1BEC /* stun.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6D411F6CF9F00621220 /* stun.c */; }; + 223CA94416DA10AB00EF1BEC /* stun_udp.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6D511F6CF9F00621220 /* stun_udp.c */; }; + 223CA94516DA10AB00EF1BEC /* telephonyevents.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6D711F6CF9F00621220 /* telephonyevents.c */; }; + 223CA94616DA10AB00EF1BEC /* utils.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA6F211F6CF9F00621220 /* utils.c */; }; + 223CA94716DA10AB00EF1BEC /* zrtp.c in Sources */ = {isa = PBXBuildFile; fileRef = 7014533D13FA841E00A01D86 /* zrtp.c */; }; + 223CA94816DA10AB00EF1BEC /* netsim.c in Sources */ = {isa = PBXBuildFile; fileRef = F4D9F23D145710540035B0D0 /* netsim.c */; }; + 223CA94916DA10AB00EF1BEC /* ortp_srtp.c in Sources */ = {isa = PBXBuildFile; fileRef = F4D9F23E145710540035B0D0 /* ortp_srtp.c */; }; + 223CA94A16DA10AB00EF1BEC /* logging.c in Sources */ = {isa = PBXBuildFile; fileRef = 22405EE31600671D00B92522 /* logging.c */; }; + 223CA94B16DA10AB00EF1BEC /* rtpprofile.c in Sources */ = {isa = PBXBuildFile; fileRef = 22405EE41600671D00B92522 /* rtpprofile.c */; }; + 223CA94D16DA10AB00EF1BEC /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AACBBE490F95108600F1A2B1 /* Foundation.framework */; }; + 223CA94E16DA10AB00EF1BEC /* libSKP_SILK_SDK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2211DBA0147660BB00DEE054 /* libSKP_SILK_SDK.a */; }; 22405EDD160065C200B92522 /* basedescs.h in Headers */ = {isa = PBXBuildFile; fileRef = 22405EDC160065C200B92522 /* basedescs.h */; }; 22405EE2160066C700B92522 /* voipdescs.h in Headers */ = {isa = PBXBuildFile; fileRef = 22405EE1160066C700B92522 /* voipdescs.h */; }; 22405EE51600671D00B92522 /* logging.c in Sources */ = {isa = PBXBuildFile; fileRef = 22405EE31600671D00B92522 /* logging.c */; }; @@ -242,7 +292,6 @@ 225D646A1521BFA6008B2E81 /* lpconfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA74311F6CFB100621220 /* lpconfig.h */; }; 225D646B1521BFA6008B2E81 /* offeranswer.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA74811F6CFB100621220 /* offeranswer.h */; }; 225D646C1521BFA6008B2E81 /* private.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA75811F6CFB100621220 /* private.h */; }; - 225D646D1521BFA6008B2E81 /* sal.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA75B11F6CFB100621220 /* sal.h */; }; 225D646F1521BFA6008B2E81 /* sipsetup.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA76411F6CFB100621220 /* sipsetup.h */; }; 225D64701521BFA6008B2E81 /* config.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B4F11F84E2D00373793 /* config.h */; }; 225D64711521BFA6008B2E81 /* gsm.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5011F84E2D00373793 /* gsm.h */; }; @@ -252,11 +301,6 @@ 225D64751521BFA6008B2E81 /* unproto.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5511F84E2D00373793 /* unproto.h */; }; 225D64761521BFA6008B2E81 /* linphonecore_utils.h in Headers */ = {isa = PBXBuildFile; fileRef = 229B9D5813043EAB00EFCD1C /* linphonecore_utils.h */; }; 225D64811521BFA6008B2E81 /* zrtp.h in Headers */ = {isa = PBXBuildFile; fileRef = 7014533B13FA7ECA00A01D86 /* zrtp.h */; }; - 225D64BC1521BFA6008B2E81 /* address.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA72F11F6CFB100621220 /* address.c */; }; - 225D64BD1521BFA6008B2E81 /* authentication.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA73011F6CFB100621220 /* authentication.c */; }; - 225D64BE1521BFA6008B2E81 /* callbacks.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA73111F6CFB100621220 /* callbacks.c */; }; - 225D64BF1521BFA6008B2E81 /* chat.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA73211F6CFB100621220 /* chat.c */; }; - 225D64D31521BFA6008B2E81 /* filter-template.c in Sources */ = {isa = PBXBuildFile; fileRef = 2203127413A249F70049A2ED /* filter-template.c */; }; 225D64F21521BFA6008B2E81 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AACBBE490F95108600F1A2B1 /* Foundation.framework */; }; 225D64F31521BFA6008B2E81 /* libSKP_SILK_SDK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2211DBA0147660BB00DEE054 /* libSKP_SILK_SDK.a */; }; 225D64FC1521C009008B2E81 /* liblinphone_Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = AA747D9E0F9514B9006C5449 /* liblinphone_Prefix.pch */; }; @@ -314,7 +358,6 @@ 225D65371521C009008B2E81 /* lpconfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA74311F6CFB100621220 /* lpconfig.h */; }; 225D65381521C009008B2E81 /* offeranswer.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA74811F6CFB100621220 /* offeranswer.h */; }; 225D65391521C009008B2E81 /* private.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA75811F6CFB100621220 /* private.h */; }; - 225D653A1521C009008B2E81 /* sal.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA75B11F6CFB100621220 /* sal.h */; }; 225D653C1521C009008B2E81 /* sipsetup.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA76411F6CFB100621220 /* sipsetup.h */; }; 225D653D1521C009008B2E81 /* config.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B4F11F84E2D00373793 /* config.h */; }; 225D653E1521C009008B2E81 /* gsm.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5011F84E2D00373793 /* gsm.h */; }; @@ -350,8 +393,7 @@ 225D65B81521C009008B2E81 /* netsim.c in Sources */ = {isa = PBXBuildFile; fileRef = F4D9F23D145710540035B0D0 /* netsim.c */; }; 225D65B91521C009008B2E81 /* ortp_srtp.c in Sources */ = {isa = PBXBuildFile; fileRef = F4D9F23E145710540035B0D0 /* ortp_srtp.c */; }; 225D65BF1521C009008B2E81 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AACBBE490F95108600F1A2B1 /* Foundation.framework */; }; - 225D65C01521C009008B2E81 /* libSKP_SILK_SDK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2211DBA0147660BB00DEE054 /* libSKP_SILK_SDK.a */; }; - 225D65CC1521C195008B2E81 /* libmediastreamer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 225D64F81521BFA6008B2E81 /* libmediastreamer.a */; }; + 225D65CC1521C195008B2E81 /* libmediastreamer_base.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 225D64F81521BFA6008B2E81 /* libmediastreamer_base.a */; }; 225D65CD1521C19A008B2E81 /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 225D65C51521C009008B2E81 /* libortp.a */; }; 229A615313DEE8A500090183 /* libx264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 229A615113DEE8A400090183 /* libx264.a */; }; 229A615413DEE8A500090183 /* libmsx264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 229A615213DEE8A400090183 /* libmsx264.a */; }; @@ -363,14 +405,164 @@ 22A10B5911F84E2D00373793 /* proto.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5311F84E2D00373793 /* proto.h */; }; 22A10B5A11F84E2D00373793 /* toast.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5411F84E2D00373793 /* toast.h */; }; 22A10B5B11F84E2D00373793 /* unproto.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5511F84E2D00373793 /* unproto.h */; }; - 22D07CD016F3BC5F009F2C9E /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 22D07CB416F3BC5F009F2C9E /* InfoPlist.strings */; }; - 22D07CD116F3BC5F009F2C9E /* MainWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 22D07CB616F3BC5F009F2C9E /* MainWindow.xib */; }; - 22D07CD216F3BC5F009F2C9E /* mediastreamViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 22D07CB816F3BC5F009F2C9E /* mediastreamViewController.xib */; }; - 22D07CD316F3BC5F009F2C9E /* mediastream-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 22D07CBA16F3BC5F009F2C9E /* mediastream-Info.plist */; }; - 22D07CD416F3BC5F009F2C9E /* mediastreamAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 22D07CBD16F3BC5F009F2C9E /* mediastreamAppDelegate.m */; }; - 22D07CD516F3BC5F009F2C9E /* mediastreamViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22D07CBF16F3BC5F009F2C9E /* mediastreamViewController.m */; }; - 22D07CD616F3BC5F009F2C9E /* mediastream.c in Sources */ = {isa = PBXBuildFile; fileRef = 22D07CC016F3BC5F009F2C9E /* mediastream.c */; }; - 22D07CE516F3BFCB009F2C9E /* speexec.c in Sources */ = {isa = PBXBuildFile; fileRef = 22D07CE416F3BFCB009F2C9E /* speexec.c */; }; + 22AF73C01753F3E100BE8398 /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22AF73BF1753F3E100BE8398 /* libopus.a */; }; + 22C8D0441769F8FF00DAFB4E /* liblinphone_Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = AA747D9E0F9514B9006C5449 /* liblinphone_Prefix.pch */; }; + 22C8D0451769F8FF00DAFB4E /* allfilters.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5BE11F6CF7600621220 /* allfilters.h */; }; + 22C8D0461769F8FF00DAFB4E /* dsptools.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5BF11F6CF7600621220 /* dsptools.h */; }; + 22C8D0471769F8FF00DAFB4E /* dtmfgen.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C011F6CF7600621220 /* dtmfgen.h */; }; + 22C8D0481769F8FF00DAFB4E /* ice.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C111F6CF7600621220 /* ice.h */; }; + 22C8D0491769F8FF00DAFB4E /* mediastream.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C411F6CF7600621220 /* mediastream.h */; }; + 22C8D04A1769F8FF00DAFB4E /* msaudiomixer.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C511F6CF7600621220 /* msaudiomixer.h */; }; + 22C8D04B1769F8FF00DAFB4E /* mschanadapter.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C611F6CF7600621220 /* mschanadapter.h */; }; + 22C8D04C1769F8FF00DAFB4E /* mscommon.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C711F6CF7600621220 /* mscommon.h */; }; + 22C8D04D1769F8FF00DAFB4E /* msequalizer.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C811F6CF7600621220 /* msequalizer.h */; }; + 22C8D04E1769F8FF00DAFB4E /* mseventqueue.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C911F6CF7600621220 /* mseventqueue.h */; }; + 22C8D04F1769F8FF00DAFB4E /* msextdisplay.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5CA11F6CF7600621220 /* msextdisplay.h */; }; + 22C8D0501769F8FF00DAFB4E /* msfileplayer.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5CB11F6CF7600621220 /* msfileplayer.h */; }; + 22C8D0511769F8FF00DAFB4E /* msfilerec.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5CC11F6CF7600621220 /* msfilerec.h */; }; + 22C8D0521769F8FF00DAFB4E /* msfilter.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5CD11F6CF7600621220 /* msfilter.h */; }; + 22C8D0531769F8FF00DAFB4E /* msinterfaces.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5CE11F6CF7600621220 /* msinterfaces.h */; }; + 22C8D0541769F8FF00DAFB4E /* msitc.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5CF11F6CF7600621220 /* msitc.h */; }; + 22C8D0551769F8FF00DAFB4E /* msqueue.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D011F6CF7600621220 /* msqueue.h */; }; + 22C8D0561769F8FF00DAFB4E /* msrtp.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D111F6CF7600621220 /* msrtp.h */; }; + 22C8D0571769F8FF00DAFB4E /* mssndcard.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D211F6CF7600621220 /* mssndcard.h */; }; + 22C8D0581769F8FF00DAFB4E /* mstee.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D311F6CF7600621220 /* mstee.h */; }; + 22C8D0591769F8FF00DAFB4E /* msticker.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D411F6CF7600621220 /* msticker.h */; }; + 22C8D05A1769F8FF00DAFB4E /* msv4l.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D511F6CF7600621220 /* msv4l.h */; }; + 22C8D05B1769F8FF00DAFB4E /* msvideo.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D611F6CF7600621220 /* msvideo.h */; }; + 22C8D05C1769F8FF00DAFB4E /* msvideoout.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D711F6CF7600621220 /* msvideoout.h */; }; + 22C8D05D1769F8FF00DAFB4E /* msvolume.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D811F6CF7600621220 /* msvolume.h */; }; + 22C8D05E1769F8FF00DAFB4E /* mswebcam.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5D911F6CF7600621220 /* mswebcam.h */; }; + 22C8D05F1769F8FF00DAFB4E /* rfc3984.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5DA11F6CF7600621220 /* rfc3984.h */; }; + 22C8D0601769F8FF00DAFB4E /* waveheader.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5DB11F6CF7600621220 /* waveheader.h */; }; + 22C8D0611769F8FF00DAFB4E /* b64.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6A511F6CF9F00621220 /* b64.h */; }; + 22C8D0621769F8FF00DAFB4E /* event.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6A611F6CF9F00621220 /* event.h */; }; + 22C8D0631769F8FF00DAFB4E /* ortp.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6A911F6CF9F00621220 /* ortp.h */; }; + 22C8D0641769F8FF00DAFB4E /* payloadtype.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6AA11F6CF9F00621220 /* payloadtype.h */; }; + 22C8D0651769F8FF00DAFB4E /* port.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6AB11F6CF9F00621220 /* port.h */; }; + 22C8D0661769F8FF00DAFB4E /* rtcp.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6AC11F6CF9F00621220 /* rtcp.h */; }; + 22C8D0671769F8FF00DAFB4E /* rtp.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6AD11F6CF9F00621220 /* rtp.h */; }; + 22C8D0681769F8FF00DAFB4E /* rtpsession.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6AE11F6CF9F00621220 /* rtpsession.h */; }; + 22C8D0691769F8FF00DAFB4E /* rtpsignaltable.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6AF11F6CF9F00621220 /* rtpsignaltable.h */; }; + 22C8D06A1769F8FF00DAFB4E /* sessionset.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6B011F6CF9F00621220 /* sessionset.h */; }; + 22C8D06B1769F8FF00DAFB4E /* srtp.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6B111F6CF9F00621220 /* srtp.h */; }; + 22C8D06C1769F8FF00DAFB4E /* str_utils.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6B211F6CF9F00621220 /* str_utils.h */; }; + 22C8D06D1769F8FF00DAFB4E /* stun.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6B311F6CF9F00621220 /* stun.h */; }; + 22C8D06E1769F8FF00DAFB4E /* stun_udp.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6B411F6CF9F00621220 /* stun_udp.h */; }; + 22C8D06F1769F8FF00DAFB4E /* telephonyevents.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6B511F6CF9F00621220 /* telephonyevents.h */; }; + 22C8D0701769F8FF00DAFB4E /* jitterctl.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6BD11F6CF9F00621220 /* jitterctl.h */; }; + 22C8D0711769F8FF00DAFB4E /* ortp-config-win32.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6C111F6CF9F00621220 /* ortp-config-win32.h */; }; + 22C8D0721769F8FF00DAFB4E /* rtpsession_priv.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6CB11F6CF9F00621220 /* rtpsession_priv.h */; }; + 22C8D0731769F8FF00DAFB4E /* rtptimer.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6CE11F6CF9F00621220 /* rtptimer.h */; }; + 22C8D0741769F8FF00DAFB4E /* scheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6D011F6CF9F00621220 /* scheduler.h */; }; + 22C8D0751769F8FF00DAFB4E /* utils.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA6F311F6CF9F00621220 /* utils.h */; }; + 22C8D0761769F8FF00DAFB4E /* enum.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA73411F6CFB100621220 /* enum.h */; }; + 22C8D0771769F8FF00DAFB4E /* linphonecore.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA74011F6CFB100621220 /* linphonecore.h */; }; + 22C8D0781769F8FF00DAFB4E /* lpconfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA74311F6CFB100621220 /* lpconfig.h */; }; + 22C8D0791769F8FF00DAFB4E /* offeranswer.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA74811F6CFB100621220 /* offeranswer.h */; }; + 22C8D07A1769F8FF00DAFB4E /* private.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA75811F6CFB100621220 /* private.h */; }; + 22C8D07C1769F8FF00DAFB4E /* sipsetup.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA76411F6CFB100621220 /* sipsetup.h */; }; + 22C8D07D1769F8FF00DAFB4E /* config.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B4F11F84E2D00373793 /* config.h */; }; + 22C8D07E1769F8FF00DAFB4E /* gsm.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5011F84E2D00373793 /* gsm.h */; }; + 22C8D07F1769F8FF00DAFB4E /* private.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5211F84E2D00373793 /* private.h */; }; + 22C8D0801769F8FF00DAFB4E /* proto.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5311F84E2D00373793 /* proto.h */; }; + 22C8D0811769F8FF00DAFB4E /* toast.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5411F84E2D00373793 /* toast.h */; }; + 22C8D0821769F8FF00DAFB4E /* unproto.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5511F84E2D00373793 /* unproto.h */; }; + 22C8D0831769F8FF00DAFB4E /* linphonecore_utils.h in Headers */ = {isa = PBXBuildFile; fileRef = 229B9D5813043EAB00EFCD1C /* linphonecore_utils.h */; }; + 22C8D0841769F8FF00DAFB4E /* zrtp.h in Headers */ = {isa = PBXBuildFile; fileRef = 7014533B13FA7ECA00A01D86 /* zrtp.h */; }; + 22C8D0851769F8FF00DAFB4E /* basedescs.h in Headers */ = {isa = PBXBuildFile; fileRef = 22405EDC160065C200B92522 /* basedescs.h */; }; + 22C8D0861769F8FF00DAFB4E /* voipdescs.h in Headers */ = {isa = PBXBuildFile; fileRef = 22405EE1160066C700B92522 /* voipdescs.h */; }; + 22C8D0871769F8FF00DAFB4E /* waveheader.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA80B16D9268D00EF1BEC /* waveheader.h */; }; + 22C8D0881769F8FF00DAFB4E /* _kiss_fft_guts.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA82116D9268D00EF1BEC /* _kiss_fft_guts.h */; }; + 22C8D0891769F8FF00DAFB4E /* ffmpeg-priv.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA82316D9268D00EF1BEC /* ffmpeg-priv.h */; }; + 22C8D08A1769F8FF00DAFB4E /* g711common.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA82416D9268D00EF1BEC /* g711common.h */; }; + 22C8D08B1769F8FF00DAFB4E /* g722.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA82516D9268D00EF1BEC /* g722.h */; }; + 22C8D08C1769F8FF00DAFB4E /* kiss_fft.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA82916D9268D00EF1BEC /* kiss_fft.h */; }; + 22C8D08D1769F8FF00DAFB4E /* kiss_fftr.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA82B16D9268D00EF1BEC /* kiss_fftr.h */; }; + 22C8D08E1769F8FF00DAFB4E /* opengles_display.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA82E16D9268D00EF1BEC /* opengles_display.h */; }; + 22C8D08F1769F8FF00DAFB4E /* shaders.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA83016D9268D00EF1BEC /* shaders.h */; }; + 22C8D0901769F8FF00DAFB4E /* swscale.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA83116D9268D00EF1BEC /* swscale.h */; }; + 22C8D0911769F8FF00DAFB4E /* vfw-missing.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA83216D9268D00EF1BEC /* vfw-missing.h */; }; + 22C8D0921769F8FF00DAFB4E /* layouts.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA85516D9268D00EF1BEC /* layouts.h */; }; + 22C8D0931769F8FF00DAFB4E /* msvideo_neon.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA85916D9268D00EF1BEC /* msvideo_neon.h */; }; + 22C8D0941769F8FF00DAFB4E /* nowebcam.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA85B16D9268D00EF1BEC /* nowebcam.h */; }; + 22C8D0951769F8FF00DAFB4E /* private.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA85D16D9268D00EF1BEC /* private.h */; }; + 22C8D0961769F8FF00DAFB4E /* rfc2429.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA86016D9268D00EF1BEC /* rfc2429.h */; }; + 22C8D0971769F8FF00DAFB4E /* scaler.h in Headers */ = {isa = PBXBuildFile; fileRef = 223CA86416D9268D00EF1BEC /* scaler.h */; }; + 22C8D0991769F8FF00DAFB4E /* filter-template.c in Sources */ = {isa = PBXBuildFile; fileRef = 2203127413A249F70049A2ED /* filter-template.c */; }; + 22C8D09A1769F8FF00DAFB4E /* yuv2rgb.fs in Sources */ = {isa = PBXBuildFile; fileRef = 221DCB6A153584410025E54D /* yuv2rgb.fs */; }; + 22C8D09B1769F8FF00DAFB4E /* yuv2rgb.vs in Sources */ = {isa = PBXBuildFile; fileRef = 221DCB6B153584410025E54D /* yuv2rgb.vs */; }; + 22C8D09C1769F8FF00DAFB4E /* alaw.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7F016D9268D00EF1BEC /* alaw.c */; }; + 22C8D09D1769F8FF00DAFB4E /* aqsnd.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7F216D9268D00EF1BEC /* aqsnd.c */; }; + 22C8D09E1769F8FF00DAFB4E /* audiomixer.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7F416D9268D00EF1BEC /* audiomixer.c */; }; + 22C8D09F1769F8FF00DAFB4E /* chanadapt.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7F516D9268D00EF1BEC /* chanadapt.c */; }; + 22C8D0A01769F8FF00DAFB4E /* dtmfgen.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7F616D9268D00EF1BEC /* dtmfgen.c */; }; + 22C8D0A11769F8FF00DAFB4E /* equalizer.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7F716D9268D00EF1BEC /* equalizer.c */; }; + 22C8D0A21769F8FF00DAFB4E /* genericplc.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7F916D9268D00EF1BEC /* genericplc.c */; }; + 22C8D0A31769F8FF00DAFB4E /* gsm.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7FA16D9268D00EF1BEC /* gsm.c */; }; + 22C8D0A41769F8FF00DAFB4E /* l16.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7FB16D9268D00EF1BEC /* l16.c */; }; + 22C8D0A51769F8FF00DAFB4E /* msconf.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7FD16D9268D00EF1BEC /* msconf.c */; }; + 22C8D0A61769F8FF00DAFB4E /* msfileplayer.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7FE16D9268D00EF1BEC /* msfileplayer.c */; }; + 22C8D0A71769F8FF00DAFB4E /* msfilerec.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7FF16D9268D00EF1BEC /* msfilerec.c */; }; + 22C8D0A81769F8FF00DAFB4E /* msg722.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA80016D9268D00EF1BEC /* msg722.c */; }; + 22C8D0A91769F8FF00DAFB4E /* msiounit.m in Sources */ = {isa = PBXBuildFile; fileRef = 223CA80116D9268D00EF1BEC /* msiounit.m */; }; + 22C8D0AA1769F8FF00DAFB4E /* msresample.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA80216D9268D00EF1BEC /* msresample.c */; }; + 22C8D0AB1769F8FF00DAFB4E /* msspeex.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA80316D9268D00EF1BEC /* msspeex.c */; }; + 22C8D0AC1769F8FF00DAFB4E /* msvolume.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA80416D9268D00EF1BEC /* msvolume.c */; }; + 22C8D0AD1769F8FF00DAFB4E /* tonedetector.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA80916D9268D00EF1BEC /* tonedetector.c */; }; + 22C8D0AE1769F8FF00DAFB4E /* ulaw.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA80A16D9268D00EF1BEC /* ulaw.c */; }; + 22C8D0B71769F8FF00DAFB4E /* itc.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA81B16D9268D00EF1BEC /* itc.c */; }; + 22C8D0B81769F8FF00DAFB4E /* join.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA81C16D9268D00EF1BEC /* join.c */; }; + 22C8D0B91769F8FF00DAFB4E /* msrtp.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA81D16D9268D00EF1BEC /* msrtp.c */; }; + 22C8D0BA1769F8FF00DAFB4E /* tee.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA81E16D9268D00EF1BEC /* tee.c */; }; + 22C8D0BB1769F8FF00DAFB4E /* void.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA81F16D9268D00EF1BEC /* void.c */; }; + 22C8D0BC1769F8FF00DAFB4E /* dsptools.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA82216D9268D00EF1BEC /* dsptools.c */; }; + 22C8D0BD1769F8FF00DAFB4E /* g722_decode.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA82616D9268D00EF1BEC /* g722_decode.c */; }; + 22C8D0BE1769F8FF00DAFB4E /* g722_encode.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA82716D9268D00EF1BEC /* g722_encode.c */; }; + 22C8D0BF1769F8FF00DAFB4E /* kiss_fft.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA82816D9268D00EF1BEC /* kiss_fft.c */; }; + 22C8D0C01769F8FF00DAFB4E /* kiss_fftr.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA82A16D9268D00EF1BEC /* kiss_fftr.c */; }; + 22C8D0C11769F8FF00DAFB4E /* opengles_display.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA82D16D9268D00EF1BEC /* opengles_display.c */; }; + 22C8D0C21769F8FF00DAFB4E /* shaders.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA82F16D9268D00EF1BEC /* shaders.c */; }; + 22C8D0C31769F8FF00DAFB4E /* extdisplay.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA83516D9268D00EF1BEC /* extdisplay.c */; }; + 22C8D0C41769F8FF00DAFB4E /* h264dec.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA83716D9268D00EF1BEC /* h264dec.c */; }; + 22C8D0C51769F8FF00DAFB4E /* ioscapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 223CA83816D9268D00EF1BEC /* ioscapture.m */; }; + 22C8D0C61769F8FF00DAFB4E /* iosdisplay.m in Sources */ = {isa = PBXBuildFile; fileRef = 223CA83916D9268D00EF1BEC /* iosdisplay.m */; }; + 22C8D0C71769F8FF00DAFB4E /* jpegwriter.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA83A16D9268D00EF1BEC /* jpegwriter.c */; }; + 22C8D0C81769F8FF00DAFB4E /* mire.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA83B16D9268D00EF1BEC /* mire.c */; }; + 22C8D0C91769F8FF00DAFB4E /* nowebcam.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA84016D9268D00EF1BEC /* nowebcam.c */; }; + 22C8D0CA1769F8FF00DAFB4E /* pixconv.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA84116D9268D00EF1BEC /* pixconv.c */; }; + 22C8D0CB1769F8FF00DAFB4E /* sizeconv.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA84316D9268D00EF1BEC /* sizeconv.c */; }; + 22C8D0CC1769F8FF00DAFB4E /* videodec.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA84516D9268D00EF1BEC /* videodec.c */; }; + 22C8D0CD1769F8FF00DAFB4E /* videoenc.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA84616D9268D00EF1BEC /* videoenc.c */; }; + 22C8D0CE1769F8FF00DAFB4E /* vp8.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA84816D9268D00EF1BEC /* vp8.c */; }; + 22C8D0CF1769F8FF00DAFB4E /* audioconference.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA84F16D9268D00EF1BEC /* audioconference.c */; }; + 22C8D0D01769F8FF00DAFB4E /* audiostream.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85016D9268D00EF1BEC /* audiostream.c */; }; + 22C8D0D11769F8FF00DAFB4E /* bitratecontrol.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85116D9268D00EF1BEC /* bitratecontrol.c */; }; + 22C8D0D21769F8FF00DAFB4E /* bitratedriver.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85216D9268D00EF1BEC /* bitratedriver.c */; }; + 22C8D0D31769F8FF00DAFB4E /* ice.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85316D9268D00EF1BEC /* ice.c */; }; + 22C8D0D41769F8FF00DAFB4E /* layouts.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85416D9268D00EF1BEC /* layouts.c */; }; + 22C8D0D51769F8FF00DAFB4E /* mediastream.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85616D9268D00EF1BEC /* mediastream.c */; }; + 22C8D0D61769F8FF00DAFB4E /* msvideo.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85716D9268D00EF1BEC /* msvideo.c */; }; + 22C8D0D71769F8FF00DAFB4E /* msvideo_neon.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85816D9268D00EF1BEC /* msvideo_neon.c */; }; + 22C8D0D81769F8FF00DAFB4E /* msvoip.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85A16D9268D00EF1BEC /* msvoip.c */; }; + 22C8D0D91769F8FF00DAFB4E /* qosanalyzer.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85E16D9268D00EF1BEC /* qosanalyzer.c */; }; + 22C8D0DA1769F8FF00DAFB4E /* qualityindicator.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA85F16D9268D00EF1BEC /* qualityindicator.c */; }; + 22C8D0DB1769F8FF00DAFB4E /* rfc3984.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA86116D9268D00EF1BEC /* rfc3984.c */; }; + 22C8D0DC1769F8FF00DAFB4E /* ringstream.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA86216D9268D00EF1BEC /* ringstream.c */; }; + 22C8D0DD1769F8FF00DAFB4E /* scaler.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA86316D9268D00EF1BEC /* scaler.c */; }; + 22C8D0DE1769F8FF00DAFB4E /* videostream.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA86616D9268D00EF1BEC /* videostream.c */; }; + 22C8D0DF1769F8FF00DAFB4E /* speexec.c in Sources */ = {isa = PBXBuildFile; fileRef = 22D07CE416F3BFCB009F2C9E /* speexec.c */; }; + 22C8D0E01769F8FF00DAFB4E /* msopus.c in Sources */ = {isa = PBXBuildFile; fileRef = 22AF73BD1753E83700BE8398 /* msopus.c */; }; + 22C8D0E21769F8FF00DAFB4E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AACBBE490F95108600F1A2B1 /* Foundation.framework */; }; + 22C8D0E31769F8FF00DAFB4E /* libSKP_SILK_SDK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2211DBA0147660BB00DEE054 /* libSKP_SILK_SDK.a */; }; + 22C8D0ED176A079600DAFB4E /* aac-eld.c in Sources */ = {isa = PBXBuildFile; fileRef = 22C8D0EC176A079600DAFB4E /* aac-eld.c */; }; + 22C8D0EF176A080100DAFB4E /* event.c in Sources */ = {isa = PBXBuildFile; fileRef = 22C8D0EE176A080100DAFB4E /* event.c */; }; + 22C8D0F3176A082600DAFB4E /* sal_op_events.c in Sources */ = {isa = PBXBuildFile; fileRef = 22C8D0F0176A082600DAFB4E /* sal_op_events.c */; }; + 22C8D0F4176A082600DAFB4E /* sal_op_info.c in Sources */ = {isa = PBXBuildFile; fileRef = 22C8D0F1176A082600DAFB4E /* sal_op_info.c */; }; + 22C8D0F5176A082600DAFB4E /* sal_op_publish.c in Sources */ = {isa = PBXBuildFile; fileRef = 22C8D0F2176A082600DAFB4E /* sal_op_publish.c */; }; + 22C8D0F7176A08CA00DAFB4E /* info.c in Sources */ = {isa = PBXBuildFile; fileRef = 22C8D0F6176A08CA00DAFB4E /* info.c */; }; + 22C8D0F9176A08F700DAFB4E /* message_storage.c in Sources */ = {isa = PBXBuildFile; fileRef = 22C8D0F8176A08F700DAFB4E /* message_storage.c */; }; + 22C8D0FE176A093B00DAFB4E /* linphone_tunnel_stubs.c in Sources */ = {isa = PBXBuildFile; fileRef = 22C8D0FB176A093B00DAFB4E /* linphone_tunnel_stubs.c */; }; 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 */; }; @@ -394,9 +586,27 @@ ); script = "cd ${INPUT_FILE_DIR}\nxxd -i ${INPUT_FILE_NAME} | sed s/}\\;/,0x00}\\;/ > ${INPUT_FILE_PATH}.h"; }; + 22C8D0E41769F8FF00DAFB4E /* PBXBuildRule */ = { + isa = PBXBuildRule; + compilerSpec = com.apple.compilers.proxy.script; + filePatterns = "*.vs *.fs"; + fileType = pattern.proxy; + isEditable = 1; + outputFiles = ( + "${INPUT_FILE_PATH}.h", + ); + script = "cd ${INPUT_FILE_DIR}\nxxd -i ${INPUT_FILE_NAME} | sed s/}\\;/,0x00}\\;/ > ${INPUT_FILE_PATH}.h"; + }; /* End PBXBuildRule section */ /* Begin PBXContainerItemProxy section */ + 2206D2DA177ACCE400C40726 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 0867D690FE84028FC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 22C8D0401769F8FF00DAFB4E; + remoteInfo = libmediastreamer_voip; + }; 225D65C61521C09D008B2E81 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 0867D690FE84028FC02AAC07 /* Project object */; @@ -418,10 +628,37 @@ remoteGlobalIDString = 225D642D1521BFA6008B2E81; remoteInfo = libmediastreamer; }; + 22C8D0421769F8FF00DAFB4E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 0867D690FE84028FC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 225D64FA1521C009008B2E81; + remoteInfo = libortp; + }; + 22C8D0EA1769F95700DAFB4E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 0867D690FE84028FC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 22C8D0401769F8FF00DAFB4E; + remoteInfo = libmediastreamer_voip; + }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 1561A551178D98E2006B4B2F /* ioshardware.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ioshardware.m; sourceTree = ""; }; + 1561A553178D9C68006B4B2F /* ioshardware.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ioshardware.h; sourceTree = ""; }; 2203127413A249F70049A2ED /* filter-template.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "filter-template.c"; sourceTree = ""; }; + 2206D2C7177AC70900C40726 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; + 2206D2C9177AC70900C40726 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/MainWindow.xib; sourceTree = ""; }; + 2206D2CB177AC70900C40726 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/mediastreamViewController.xib; sourceTree = ""; }; + 2206D2CC177AC70900C40726 /* mediastream-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "mediastream-Info.plist"; sourceTree = ""; }; + 2206D2CD177AC70900C40726 /* mediastream-Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "mediastream-Prefix.pch"; sourceTree = ""; }; + 2206D2CE177AC70900C40726 /* mediastreamAppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mediastreamAppDelegate.h; sourceTree = ""; }; + 2206D2CF177AC70900C40726 /* mediastreamAppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = mediastreamAppDelegate.m; sourceTree = ""; }; + 2206D2D0177AC70900C40726 /* mediastreamViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mediastreamViewController.h; sourceTree = ""; }; + 2206D2D1177AC70900C40726 /* mediastreamViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = mediastreamViewController.m; sourceTree = ""; }; + 2206D2D2177AC70900C40726 /* mediastream.c */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; name = mediastream.c; path = tools/mediastream.c; sourceTree = ""; }; + 2206D2E0177ACF5700C40726 /* nowebcamCIF.jpg */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; name = nowebcamCIF.jpg; path = "../liblinphone-sdk/apple-darwin/share/images/nowebcamCIF.jpg"; sourceTree = ""; }; 220ED19713A8F87700AC21E0 /* libspeexdsp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libspeexdsp.a; path = "../liblinphone-sdk/apple-darwin/lib/libspeexdsp.a"; sourceTree = ""; }; 220ED19813A8F87700AC21E0 /* libspeex.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libspeex.a; path = "../liblinphone-sdk/apple-darwin/lib/libspeex.a"; sourceTree = ""; }; 220ED19913A8F87700AC21E0 /* libortp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libortp.a; path = "../liblinphone-sdk/apple-darwin/lib/libortp.a"; sourceTree = ""; }; @@ -553,7 +790,6 @@ 222CA75811F6CFB100621220 /* private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = private.h; sourceTree = ""; }; 222CA75911F6CFB100621220 /* proxy.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = proxy.c; sourceTree = ""; }; 222CA75A11F6CFB100621220 /* sal.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sal.c; sourceTree = ""; }; - 222CA75B11F6CFB100621220 /* sal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sal.h; sourceTree = ""; }; 222CA76211F6CFB100621220 /* siplogin.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = siplogin.c; sourceTree = ""; }; 222CA76311F6CFB100621220 /* sipsetup.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sipsetup.c; sourceTree = ""; }; 222CA76411F6CFB100621220 /* sipsetup.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sipsetup.h; sourceTree = ""; }; @@ -642,6 +878,17 @@ 223CA86316D9268D00EF1BEC /* scaler.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = scaler.c; sourceTree = ""; }; 223CA86416D9268D00EF1BEC /* scaler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scaler.h; sourceTree = ""; }; 223CA86616D9268D00EF1BEC /* videostream.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = videostream.c; sourceTree = ""; }; + 223CA8D916D9298F00EF1BEC /* sal_address_impl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sal_address_impl.c; sourceTree = ""; }; + 223CA8DA16D9298F00EF1BEC /* sal_impl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sal_impl.c; sourceTree = ""; }; + 223CA8DB16D9298F00EF1BEC /* sal_impl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sal_impl.h; sourceTree = ""; }; + 223CA8DC16D9298F00EF1BEC /* sal_op_call.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sal_op_call.c; sourceTree = ""; }; + 223CA8DD16D9298F00EF1BEC /* sal_op_call_transfer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sal_op_call_transfer.c; sourceTree = ""; }; + 223CA8DE16D9298F00EF1BEC /* sal_op_impl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sal_op_impl.c; sourceTree = ""; }; + 223CA8DF16D9298F00EF1BEC /* sal_op_message.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sal_op_message.c; sourceTree = ""; }; + 223CA8E016D9298F00EF1BEC /* sal_op_presence.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sal_op_presence.c; sourceTree = ""; }; + 223CA8E116D9298F00EF1BEC /* sal_op_registration.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sal_op_registration.c; sourceTree = ""; }; + 223CA8E216D9298F00EF1BEC /* sal_sdp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sal_sdp.c; sourceTree = ""; }; + 223CA95316DA10AB00EF1BEC /* liblibortp copy.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "liblibortp copy.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 22405EDC160065C200B92522 /* basedescs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = basedescs.h; path = build/iphone/basedescs.h; sourceTree = ""; }; 22405EE1160066C700B92522 /* voipdescs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = voipdescs.h; path = build/iphone/voipdescs.h; sourceTree = ""; }; 22405EE31600671D00B92522 /* logging.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = logging.c; sourceTree = ""; }; @@ -651,7 +898,7 @@ 2258C44313A945520087A596 /* libavutil.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libavutil.a; path = "../liblinphone-sdk/apple-darwin/lib/libavutil.a"; sourceTree = ""; }; 2258C44413A945520087A596 /* libavcodec.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libavcodec.a; path = "../liblinphone-sdk/apple-darwin/lib/libavcodec.a"; sourceTree = ""; }; 225D3559124B1FF60008581C /* linphonecall.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = linphonecall.c; sourceTree = ""; }; - 225D64F81521BFA6008B2E81 /* libmediastreamer.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libmediastreamer.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 225D64F81521BFA6008B2E81 /* libmediastreamer_base.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libmediastreamer_base.a; sourceTree = BUILT_PRODUCTS_DIR; }; 225D65C51521C009008B2E81 /* libortp.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libortp.a; sourceTree = BUILT_PRODUCTS_DIR; }; 229A615113DEE8A400090183 /* libx264.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libx264.a; path = "../liblinphone-sdk/apple-darwin/lib/libx264.a"; sourceTree = ""; }; 229A615213DEE8A400090183 /* libmsx264.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmsx264.a; path = "../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins/libmsx264.a"; sourceTree = ""; }; @@ -664,16 +911,17 @@ 22A10B5311F84E2D00373793 /* proto.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = proto.h; sourceTree = ""; }; 22A10B5411F84E2D00373793 /* toast.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = toast.h; sourceTree = ""; }; 22A10B5511F84E2D00373793 /* unproto.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unproto.h; sourceTree = ""; }; - 22D07CB516F3BC5F009F2C9E /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; - 22D07CB716F3BC5F009F2C9E /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/MainWindow.xib; sourceTree = ""; }; - 22D07CB916F3BC5F009F2C9E /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/mediastreamViewController.xib; sourceTree = ""; }; - 22D07CBA16F3BC5F009F2C9E /* mediastream-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "mediastream-Info.plist"; sourceTree = ""; }; - 22D07CBB16F3BC5F009F2C9E /* mediastream-Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "mediastream-Prefix.pch"; sourceTree = ""; }; - 22D07CBC16F3BC5F009F2C9E /* mediastreamAppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mediastreamAppDelegate.h; sourceTree = ""; }; - 22D07CBD16F3BC5F009F2C9E /* mediastreamAppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = mediastreamAppDelegate.m; sourceTree = ""; }; - 22D07CBE16F3BC5F009F2C9E /* mediastreamViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mediastreamViewController.h; sourceTree = ""; }; - 22D07CBF16F3BC5F009F2C9E /* mediastreamViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = mediastreamViewController.m; sourceTree = ""; }; - 22D07CC016F3BC5F009F2C9E /* mediastream.c */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; path = mediastream.c; sourceTree = ""; }; + 22AF73BD1753E83700BE8398 /* msopus.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = msopus.c; sourceTree = ""; }; + 22AF73BF1753F3E100BE8398 /* libopus.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libopus.a; path = "../liblinphone-sdk/apple-darwin/lib/libopus.a"; sourceTree = ""; }; + 22C8D0E91769F8FF00DAFB4E /* libmediastreamer_voip.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libmediastreamer_voip.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 22C8D0EC176A079600DAFB4E /* aac-eld.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "aac-eld.c"; sourceTree = ""; }; + 22C8D0EE176A080100DAFB4E /* event.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = event.c; sourceTree = ""; }; + 22C8D0F0176A082600DAFB4E /* sal_op_events.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sal_op_events.c; sourceTree = ""; }; + 22C8D0F1176A082600DAFB4E /* sal_op_info.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sal_op_info.c; sourceTree = ""; }; + 22C8D0F2176A082600DAFB4E /* sal_op_publish.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sal_op_publish.c; sourceTree = ""; }; + 22C8D0F6176A08CA00DAFB4E /* info.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = info.c; sourceTree = ""; }; + 22C8D0F8176A08F700DAFB4E /* message_storage.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = message_storage.c; sourceTree = ""; }; + 22C8D0FB176A093B00DAFB4E /* linphone_tunnel_stubs.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = linphone_tunnel_stubs.c; sourceTree = ""; }; 22D07CE416F3BFCB009F2C9E /* speexec.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = speexec.c; sourceTree = ""; }; 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; }; @@ -691,6 +939,15 @@ /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ + 223CA94C16DA10AB00EF1BEC /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 223CA94D16DA10AB00EF1BEC /* Foundation.framework in Frameworks */, + 223CA94E16DA10AB00EF1BEC /* libSKP_SILK_SDK.a in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 225D64F11521BFA6008B2E81 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -705,7 +962,15 @@ buildActionMask = 2147483647; files = ( 225D65BF1521C009008B2E81 /* Foundation.framework in Frameworks */, - 225D65C01521C009008B2E81 /* libSKP_SILK_SDK.a in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 22C8D0E11769F8FF00DAFB4E /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 22C8D0E21769F8FF00DAFB4E /* Foundation.framework in Frameworks */, + 22C8D0E31769F8FF00DAFB4E /* libSKP_SILK_SDK.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -713,8 +978,10 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 2206D2DE177ACD3800C40726 /* libmediastreamer_voip.a in Frameworks */, + 22AF73C01753F3E100BE8398 /* libopus.a in Frameworks */, 225D65CD1521C19A008B2E81 /* libortp.a in Frameworks */, - 225D65CC1521C195008B2E81 /* libmediastreamer.a in Frameworks */, + 225D65CC1521C195008B2E81 /* libmediastreamer_base.a in Frameworks */, 2211DB9F14765CED00DEE054 /* libmssilk.a in Frameworks */, 7066FC0A13E830B800EFC6DC /* libvpx.a in Frameworks */, 70E542F113E147CE002BA2C0 /* QuartzCore.framework in Frameworks */, @@ -756,8 +1023,10 @@ isa = PBXGroup; children = ( 22DD19BE13A8D7FA0018ECD4 /* mediastream.app */, - 225D64F81521BFA6008B2E81 /* libmediastreamer.a */, + 225D64F81521BFA6008B2E81 /* libmediastreamer_base.a */, 225D65C51521C009008B2E81 /* libortp.a */, + 223CA95316DA10AB00EF1BEC /* liblibortp copy.a */, + 22C8D0E91769F8FF00DAFB4E /* libmediastreamer_voip.a */, ); name = Products; sourceTree = ""; @@ -765,6 +1034,7 @@ 0867D691FE84028FC02AAC07 /* liblinphone */ = { isa = PBXGroup; children = ( + 22AF73BF1753F3E100BE8398 /* libopus.a */, 2211DBA0147660BB00DEE054 /* libSKP_SILK_SDK.a */, 2211DB9E14765CEC00DEE054 /* libmssilk.a */, 7066FC0913E830B800EFC6DC /* libvpx.a */, @@ -796,6 +1066,7 @@ 32C88DFF0371C24200C91783 /* Other Sources */, 0867D69AFE84028FC02AAC07 /* Frameworks */, 034768DFFF38A50411DB9C8B /* Products */, + 2206D2DF177ACF0A00C40726 /* Resources */, ); name = liblinphone; sourceTree = ""; @@ -817,6 +1088,31 @@ name = Classes; sourceTree = ""; }; + 2206D2C5177AC70900C40726 /* ios */ = { + isa = PBXGroup; + children = ( + 2206D2C6177AC70900C40726 /* InfoPlist.strings */, + 2206D2C8177AC70900C40726 /* MainWindow.xib */, + 2206D2CA177AC70900C40726 /* mediastreamViewController.xib */, + 2206D2CC177AC70900C40726 /* mediastream-Info.plist */, + 2206D2CD177AC70900C40726 /* mediastream-Prefix.pch */, + 2206D2CE177AC70900C40726 /* mediastreamAppDelegate.h */, + 2206D2CF177AC70900C40726 /* mediastreamAppDelegate.m */, + 2206D2D0177AC70900C40726 /* mediastreamViewController.h */, + 2206D2D1177AC70900C40726 /* mediastreamViewController.m */, + ); + name = ios; + path = tools/ios; + sourceTree = ""; + }; + 2206D2DF177ACF0A00C40726 /* Resources */ = { + isa = PBXGroup; + children = ( + 2206D2E0177ACF5700C40726 /* nowebcamCIF.jpg */, + ); + name = Resources; + sourceTree = ""; + }; 222CA4CE11F6CF1900621220 /* oRTP */ = { isa = PBXGroup; children = ( @@ -830,7 +1126,8 @@ 222CA4CF11F6CF2000621220 /* mediastreamer2 */ = { isa = PBXGroup; children = ( - 22D07CAB16F3BC5F009F2C9E /* tools */, + 2206D2C5177AC70900C40726 /* ios */, + 2206D2D2177AC70900C40726 /* mediastream.c */, 22405EE1160066C700B92522 /* voipdescs.h */, 22405EDC160065C200B92522 /* basedescs.h */, 222CA5B811F6CF7600621220 /* include */, @@ -1002,6 +1299,11 @@ 222CA72D11F6CFB100621220 /* coreapi */ = { isa = PBXGroup; children = ( + 22C8D0FB176A093B00DAFB4E /* linphone_tunnel_stubs.c */, + 22C8D0F8176A08F700DAFB4E /* message_storage.c */, + 22C8D0F6176A08CA00DAFB4E /* info.c */, + 22C8D0EE176A080100DAFB4E /* event.c */, + 223CA8D816D9298F00EF1BEC /* bellesip_sal */, 229ECDEC143AEBDA00D611B8 /* conference.c */, 229B9D5813043EAB00EFCD1C /* linphonecore_utils.h */, 225D3559124B1FF60008581C /* linphonecall.c */, @@ -1027,7 +1329,6 @@ 222CA75811F6CFB100621220 /* private.h */, 222CA75911F6CFB100621220 /* proxy.c */, 222CA75A11F6CFB100621220 /* sal.c */, - 222CA75B11F6CFB100621220 /* sal.h */, 222CA76211F6CFB100621220 /* siplogin.c */, 222CA76311F6CFB100621220 /* sipsetup.c */, 222CA76411F6CFB100621220 /* sipsetup.h */, @@ -1048,6 +1349,8 @@ 223CA7EF16D9268D00EF1BEC /* audiofilters */ = { isa = PBXGroup; children = ( + 22C8D0EC176A079600DAFB4E /* aac-eld.c */, + 22AF73BD1753E83700BE8398 /* msopus.c */, 22D07CE416F3BFCB009F2C9E /* speexec.c */, 223CA7F016D9268D00EF1BEC /* alaw.c */, 223CA7F216D9268D00EF1BEC /* aqsnd.c */, @@ -1151,6 +1454,8 @@ 223CA85116D9268D00EF1BEC /* bitratecontrol.c */, 223CA85216D9268D00EF1BEC /* bitratedriver.c */, 223CA85316D9268D00EF1BEC /* ice.c */, + 1561A553178D9C68006B4B2F /* ioshardware.h */, + 1561A551178D98E2006B4B2F /* ioshardware.m */, 223CA85416D9268D00EF1BEC /* layouts.c */, 223CA85516D9268D00EF1BEC /* layouts.h */, 223CA85616D9268D00EF1BEC /* mediastream.c */, @@ -1173,6 +1478,26 @@ path = voip; sourceTree = ""; }; + 223CA8D816D9298F00EF1BEC /* bellesip_sal */ = { + isa = PBXGroup; + children = ( + 22C8D0F0176A082600DAFB4E /* sal_op_events.c */, + 22C8D0F1176A082600DAFB4E /* sal_op_info.c */, + 22C8D0F2176A082600DAFB4E /* sal_op_publish.c */, + 223CA8D916D9298F00EF1BEC /* sal_address_impl.c */, + 223CA8DA16D9298F00EF1BEC /* sal_impl.c */, + 223CA8DB16D9298F00EF1BEC /* sal_impl.h */, + 223CA8DC16D9298F00EF1BEC /* sal_op_call.c */, + 223CA8DD16D9298F00EF1BEC /* sal_op_call_transfer.c */, + 223CA8DE16D9298F00EF1BEC /* sal_op_impl.c */, + 223CA8DF16D9298F00EF1BEC /* sal_op_message.c */, + 223CA8E016D9298F00EF1BEC /* sal_op_presence.c */, + 223CA8E116D9298F00EF1BEC /* sal_op_registration.c */, + 223CA8E216D9298F00EF1BEC /* sal_sdp.c */, + ); + path = bellesip_sal; + sourceTree = ""; + }; 22A10B4C11F84DE300373793 /* externals */ = { isa = PBXGroup; children = ( @@ -1204,31 +1529,6 @@ path = externals/gsm/inc; sourceTree = ""; }; - 22D07CAB16F3BC5F009F2C9E /* tools */ = { - isa = PBXGroup; - children = ( - 22D07CB316F3BC5F009F2C9E /* ios */, - 22D07CC016F3BC5F009F2C9E /* mediastream.c */, - ); - path = tools; - sourceTree = ""; - }; - 22D07CB316F3BC5F009F2C9E /* ios */ = { - isa = PBXGroup; - children = ( - 22D07CB416F3BC5F009F2C9E /* InfoPlist.strings */, - 22D07CB616F3BC5F009F2C9E /* MainWindow.xib */, - 22D07CB816F3BC5F009F2C9E /* mediastreamViewController.xib */, - 22D07CBA16F3BC5F009F2C9E /* mediastream-Info.plist */, - 22D07CBB16F3BC5F009F2C9E /* mediastream-Prefix.pch */, - 22D07CBC16F3BC5F009F2C9E /* mediastreamAppDelegate.h */, - 22D07CBD16F3BC5F009F2C9E /* mediastreamAppDelegate.m */, - 22D07CBE16F3BC5F009F2C9E /* mediastreamViewController.h */, - 22D07CBF16F3BC5F009F2C9E /* mediastreamViewController.m */, - ); - path = ios; - sourceTree = ""; - }; 32C88DFF0371C24200C91783 /* Other Sources */ = { isa = PBXGroup; children = ( @@ -1240,6 +1540,77 @@ /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ + 223CA8EE16DA10AB00EF1BEC /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 223CA8EF16DA10AB00EF1BEC /* liblinphone_Prefix.pch in Headers */, + 223CA8F016DA10AB00EF1BEC /* allfilters.h in Headers */, + 223CA8F116DA10AB00EF1BEC /* dsptools.h in Headers */, + 223CA8F216DA10AB00EF1BEC /* dtmfgen.h in Headers */, + 223CA8F316DA10AB00EF1BEC /* ice.h in Headers */, + 223CA8F416DA10AB00EF1BEC /* mediastream.h in Headers */, + 223CA8F516DA10AB00EF1BEC /* msaudiomixer.h in Headers */, + 223CA8F616DA10AB00EF1BEC /* mschanadapter.h in Headers */, + 223CA8F716DA10AB00EF1BEC /* mscommon.h in Headers */, + 223CA8F816DA10AB00EF1BEC /* msequalizer.h in Headers */, + 223CA8F916DA10AB00EF1BEC /* mseventqueue.h in Headers */, + 223CA8FA16DA10AB00EF1BEC /* msextdisplay.h in Headers */, + 223CA8FB16DA10AB00EF1BEC /* msfileplayer.h in Headers */, + 223CA8FC16DA10AB00EF1BEC /* msfilerec.h in Headers */, + 223CA8FD16DA10AB00EF1BEC /* msfilter.h in Headers */, + 223CA8FE16DA10AB00EF1BEC /* msinterfaces.h in Headers */, + 223CA8FF16DA10AB00EF1BEC /* msitc.h in Headers */, + 223CA90016DA10AB00EF1BEC /* msqueue.h in Headers */, + 223CA90116DA10AB00EF1BEC /* msrtp.h in Headers */, + 223CA90216DA10AB00EF1BEC /* mssndcard.h in Headers */, + 223CA90316DA10AB00EF1BEC /* mstee.h in Headers */, + 223CA90416DA10AB00EF1BEC /* msticker.h in Headers */, + 223CA90516DA10AB00EF1BEC /* msv4l.h in Headers */, + 223CA90616DA10AB00EF1BEC /* msvideo.h in Headers */, + 223CA90716DA10AB00EF1BEC /* msvideoout.h in Headers */, + 223CA90816DA10AB00EF1BEC /* msvolume.h in Headers */, + 223CA90916DA10AB00EF1BEC /* mswebcam.h in Headers */, + 223CA90A16DA10AB00EF1BEC /* rfc3984.h in Headers */, + 223CA90B16DA10AB00EF1BEC /* waveheader.h in Headers */, + 223CA90C16DA10AB00EF1BEC /* b64.h in Headers */, + 223CA90D16DA10AB00EF1BEC /* event.h in Headers */, + 223CA90E16DA10AB00EF1BEC /* ortp.h in Headers */, + 223CA90F16DA10AB00EF1BEC /* payloadtype.h in Headers */, + 223CA91016DA10AB00EF1BEC /* port.h in Headers */, + 223CA91116DA10AB00EF1BEC /* rtcp.h in Headers */, + 223CA91216DA10AB00EF1BEC /* rtp.h in Headers */, + 223CA91316DA10AB00EF1BEC /* rtpsession.h in Headers */, + 223CA91416DA10AB00EF1BEC /* rtpsignaltable.h in Headers */, + 223CA91516DA10AB00EF1BEC /* sessionset.h in Headers */, + 223CA91616DA10AB00EF1BEC /* srtp.h in Headers */, + 223CA91716DA10AB00EF1BEC /* str_utils.h in Headers */, + 223CA91816DA10AB00EF1BEC /* stun.h in Headers */, + 223CA91916DA10AB00EF1BEC /* stun_udp.h in Headers */, + 223CA91A16DA10AB00EF1BEC /* telephonyevents.h in Headers */, + 223CA91B16DA10AB00EF1BEC /* jitterctl.h in Headers */, + 223CA91C16DA10AB00EF1BEC /* ortp-config-win32.h in Headers */, + 223CA91D16DA10AB00EF1BEC /* rtpsession_priv.h in Headers */, + 223CA91E16DA10AB00EF1BEC /* rtptimer.h in Headers */, + 223CA91F16DA10AB00EF1BEC /* scheduler.h in Headers */, + 223CA92016DA10AB00EF1BEC /* utils.h in Headers */, + 223CA92116DA10AB00EF1BEC /* enum.h in Headers */, + 223CA92216DA10AB00EF1BEC /* linphonecore.h in Headers */, + 223CA92316DA10AB00EF1BEC /* lpconfig.h in Headers */, + 223CA92416DA10AB00EF1BEC /* offeranswer.h in Headers */, + 223CA92516DA10AB00EF1BEC /* private.h in Headers */, + 223CA92716DA10AB00EF1BEC /* sipsetup.h in Headers */, + 223CA92816DA10AB00EF1BEC /* config.h in Headers */, + 223CA92916DA10AB00EF1BEC /* gsm.h in Headers */, + 223CA92A16DA10AB00EF1BEC /* private.h in Headers */, + 223CA92B16DA10AB00EF1BEC /* proto.h in Headers */, + 223CA92C16DA10AB00EF1BEC /* toast.h in Headers */, + 223CA92D16DA10AB00EF1BEC /* unproto.h in Headers */, + 223CA92E16DA10AB00EF1BEC /* linphonecore_utils.h in Headers */, + 223CA92F16DA10AB00EF1BEC /* zrtp.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 225D642E1521BFA6008B2E81 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -1299,7 +1670,6 @@ 225D646A1521BFA6008B2E81 /* lpconfig.h in Headers */, 225D646B1521BFA6008B2E81 /* offeranswer.h in Headers */, 225D646C1521BFA6008B2E81 /* private.h in Headers */, - 225D646D1521BFA6008B2E81 /* sal.h in Headers */, 225D646F1521BFA6008B2E81 /* sipsetup.h in Headers */, 225D64701521BFA6008B2E81 /* config.h in Headers */, 225D64711521BFA6008B2E81 /* gsm.h in Headers */, @@ -1390,7 +1760,6 @@ 225D65371521C009008B2E81 /* lpconfig.h in Headers */, 225D65381521C009008B2E81 /* offeranswer.h in Headers */, 225D65391521C009008B2E81 /* private.h in Headers */, - 225D653A1521C009008B2E81 /* sal.h in Headers */, 225D653C1521C009008B2E81 /* sipsetup.h in Headers */, 225D653D1521C009008B2E81 /* config.h in Headers */, 225D653E1521C009008B2E81 /* gsm.h in Headers */, @@ -1403,6 +1772,97 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 22C8D0431769F8FF00DAFB4E /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 22C8D0441769F8FF00DAFB4E /* liblinphone_Prefix.pch in Headers */, + 22C8D0451769F8FF00DAFB4E /* allfilters.h in Headers */, + 22C8D0461769F8FF00DAFB4E /* dsptools.h in Headers */, + 22C8D0471769F8FF00DAFB4E /* dtmfgen.h in Headers */, + 22C8D0481769F8FF00DAFB4E /* ice.h in Headers */, + 22C8D0491769F8FF00DAFB4E /* mediastream.h in Headers */, + 22C8D04A1769F8FF00DAFB4E /* msaudiomixer.h in Headers */, + 22C8D04B1769F8FF00DAFB4E /* mschanadapter.h in Headers */, + 22C8D04C1769F8FF00DAFB4E /* mscommon.h in Headers */, + 22C8D04D1769F8FF00DAFB4E /* msequalizer.h in Headers */, + 22C8D04E1769F8FF00DAFB4E /* mseventqueue.h in Headers */, + 22C8D04F1769F8FF00DAFB4E /* msextdisplay.h in Headers */, + 22C8D0501769F8FF00DAFB4E /* msfileplayer.h in Headers */, + 22C8D0511769F8FF00DAFB4E /* msfilerec.h in Headers */, + 22C8D0521769F8FF00DAFB4E /* msfilter.h in Headers */, + 22C8D0531769F8FF00DAFB4E /* msinterfaces.h in Headers */, + 22C8D0541769F8FF00DAFB4E /* msitc.h in Headers */, + 22C8D0551769F8FF00DAFB4E /* msqueue.h in Headers */, + 22C8D0561769F8FF00DAFB4E /* msrtp.h in Headers */, + 22C8D0571769F8FF00DAFB4E /* mssndcard.h in Headers */, + 22C8D0581769F8FF00DAFB4E /* mstee.h in Headers */, + 22C8D0591769F8FF00DAFB4E /* msticker.h in Headers */, + 22C8D05A1769F8FF00DAFB4E /* msv4l.h in Headers */, + 22C8D05B1769F8FF00DAFB4E /* msvideo.h in Headers */, + 22C8D05C1769F8FF00DAFB4E /* msvideoout.h in Headers */, + 22C8D05D1769F8FF00DAFB4E /* msvolume.h in Headers */, + 22C8D05E1769F8FF00DAFB4E /* mswebcam.h in Headers */, + 22C8D05F1769F8FF00DAFB4E /* rfc3984.h in Headers */, + 22C8D0601769F8FF00DAFB4E /* waveheader.h in Headers */, + 22C8D0611769F8FF00DAFB4E /* b64.h in Headers */, + 22C8D0621769F8FF00DAFB4E /* event.h in Headers */, + 22C8D0631769F8FF00DAFB4E /* ortp.h in Headers */, + 22C8D0641769F8FF00DAFB4E /* payloadtype.h in Headers */, + 22C8D0651769F8FF00DAFB4E /* port.h in Headers */, + 22C8D0661769F8FF00DAFB4E /* rtcp.h in Headers */, + 22C8D0671769F8FF00DAFB4E /* rtp.h in Headers */, + 22C8D0681769F8FF00DAFB4E /* rtpsession.h in Headers */, + 22C8D0691769F8FF00DAFB4E /* rtpsignaltable.h in Headers */, + 22C8D06A1769F8FF00DAFB4E /* sessionset.h in Headers */, + 22C8D06B1769F8FF00DAFB4E /* srtp.h in Headers */, + 22C8D06C1769F8FF00DAFB4E /* str_utils.h in Headers */, + 22C8D06D1769F8FF00DAFB4E /* stun.h in Headers */, + 22C8D06E1769F8FF00DAFB4E /* stun_udp.h in Headers */, + 22C8D06F1769F8FF00DAFB4E /* telephonyevents.h in Headers */, + 22C8D0701769F8FF00DAFB4E /* jitterctl.h in Headers */, + 22C8D0711769F8FF00DAFB4E /* ortp-config-win32.h in Headers */, + 22C8D0721769F8FF00DAFB4E /* rtpsession_priv.h in Headers */, + 22C8D0731769F8FF00DAFB4E /* rtptimer.h in Headers */, + 22C8D0741769F8FF00DAFB4E /* scheduler.h in Headers */, + 22C8D0751769F8FF00DAFB4E /* utils.h in Headers */, + 22C8D0761769F8FF00DAFB4E /* enum.h in Headers */, + 22C8D0771769F8FF00DAFB4E /* linphonecore.h in Headers */, + 22C8D0781769F8FF00DAFB4E /* lpconfig.h in Headers */, + 22C8D0791769F8FF00DAFB4E /* offeranswer.h in Headers */, + 22C8D07A1769F8FF00DAFB4E /* private.h in Headers */, + 22C8D07C1769F8FF00DAFB4E /* sipsetup.h in Headers */, + 22C8D07D1769F8FF00DAFB4E /* config.h in Headers */, + 22C8D07E1769F8FF00DAFB4E /* gsm.h in Headers */, + 22C8D07F1769F8FF00DAFB4E /* private.h in Headers */, + 22C8D0801769F8FF00DAFB4E /* proto.h in Headers */, + 22C8D0811769F8FF00DAFB4E /* toast.h in Headers */, + 22C8D0821769F8FF00DAFB4E /* unproto.h in Headers */, + 22C8D0831769F8FF00DAFB4E /* linphonecore_utils.h in Headers */, + 22C8D0841769F8FF00DAFB4E /* zrtp.h in Headers */, + 22C8D0851769F8FF00DAFB4E /* basedescs.h in Headers */, + 22C8D0861769F8FF00DAFB4E /* voipdescs.h in Headers */, + 22C8D0871769F8FF00DAFB4E /* waveheader.h in Headers */, + 22C8D0881769F8FF00DAFB4E /* _kiss_fft_guts.h in Headers */, + 22C8D0891769F8FF00DAFB4E /* ffmpeg-priv.h in Headers */, + 22C8D08A1769F8FF00DAFB4E /* g711common.h in Headers */, + 22C8D08B1769F8FF00DAFB4E /* g722.h in Headers */, + 22C8D08C1769F8FF00DAFB4E /* kiss_fft.h in Headers */, + 22C8D08D1769F8FF00DAFB4E /* kiss_fftr.h in Headers */, + 22C8D08E1769F8FF00DAFB4E /* opengles_display.h in Headers */, + 22C8D08F1769F8FF00DAFB4E /* shaders.h in Headers */, + 22C8D0901769F8FF00DAFB4E /* swscale.h in Headers */, + 22C8D0911769F8FF00DAFB4E /* vfw-missing.h in Headers */, + 22C8D0921769F8FF00DAFB4E /* layouts.h in Headers */, + 22C8D0931769F8FF00DAFB4E /* msvideo_neon.h in Headers */, + 22C8D0941769F8FF00DAFB4E /* nowebcam.h in Headers */, + 22C8D0951769F8FF00DAFB4E /* private.h in Headers */, + 22C8D0961769F8FF00DAFB4E /* rfc2429.h in Headers */, + 22C8D0971769F8FF00DAFB4E /* scaler.h in Headers */, + 1561A554178D9C68006B4B2F /* ioshardware.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; D2AAC07A0554694100DB518D /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -1462,7 +1922,6 @@ 222CA77411F6CFB100621220 /* lpconfig.h in Headers */, 222CA77711F6CFB100621220 /* offeranswer.h in Headers */, 222CA77A11F6CFB100621220 /* private.h in Headers */, - 222CA77D11F6CFB100621220 /* sal.h in Headers */, 222CA78611F6CFB100621220 /* sipsetup.h in Headers */, 22A10B5611F84E2D00373793 /* config.h in Headers */, 22A10B5711F84E2D00373793 /* gsm.h in Headers */, @@ -1472,15 +1931,33 @@ 22A10B5B11F84E2D00373793 /* unproto.h in Headers */, 229B9D5913043EAB00EFCD1C /* linphonecore_utils.h in Headers */, 7014533C13FA7ECA00A01D86 /* zrtp.h in Headers */, + 223CA8E516D9298F00EF1BEC /* sal_impl.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ - 225D642D1521BFA6008B2E81 /* libmediastreamer */ = { + 223CA8ED16DA10AB00EF1BEC /* libbellesip */ = { isa = PBXNativeTarget; - buildConfigurationList = 225D64F41521BFA6008B2E81 /* Build configuration list for PBXNativeTarget "libmediastreamer" */; + buildConfigurationList = 223CA94F16DA10AB00EF1BEC /* Build configuration list for PBXNativeTarget "libbellesip" */; + buildPhases = ( + 223CA8EE16DA10AB00EF1BEC /* Headers */, + 223CA93016DA10AB00EF1BEC /* Sources */, + 223CA94C16DA10AB00EF1BEC /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = libbellesip; + productName = liblinphone; + productReference = 223CA95316DA10AB00EF1BEC /* liblibortp copy.a */; + productType = "com.apple.product-type.library.static"; + }; + 225D642D1521BFA6008B2E81 /* libmediastreamer_base */ = { + isa = PBXNativeTarget; + buildConfigurationList = 225D64F41521BFA6008B2E81 /* Build configuration list for PBXNativeTarget "libmediastreamer_base" */; buildPhases = ( 225D642E1521BFA6008B2E81 /* Headers */, 225D64821521BFA6008B2E81 /* Sources */, @@ -1492,9 +1969,9 @@ dependencies = ( 225D65C71521C09D008B2E81 /* PBXTargetDependency */, ); - name = libmediastreamer; + name = libmediastreamer_base; productName = liblinphone; - productReference = 225D64F81521BFA6008B2E81 /* libmediastreamer.a */; + productReference = 225D64F81521BFA6008B2E81 /* libmediastreamer_base.a */; productType = "com.apple.product-type.library.static"; }; 225D64FA1521C009008B2E81 /* libortp */ = { @@ -1514,6 +1991,25 @@ productReference = 225D65C51521C009008B2E81 /* libortp.a */; productType = "com.apple.product-type.library.static"; }; + 22C8D0401769F8FF00DAFB4E /* libmediastreamer_voip */ = { + isa = PBXNativeTarget; + buildConfigurationList = 22C8D0E51769F8FF00DAFB4E /* Build configuration list for PBXNativeTarget "libmediastreamer_voip" */; + buildPhases = ( + 22C8D0431769F8FF00DAFB4E /* Headers */, + 22C8D0981769F8FF00DAFB4E /* Sources */, + 22C8D0E11769F8FF00DAFB4E /* Frameworks */, + ); + buildRules = ( + 22C8D0E41769F8FF00DAFB4E /* PBXBuildRule */, + ); + dependencies = ( + 22C8D0411769F8FF00DAFB4E /* PBXTargetDependency */, + ); + name = libmediastreamer_voip; + productName = liblinphone; + productReference = 22C8D0E91769F8FF00DAFB4E /* libmediastreamer_voip.a */; + productType = "com.apple.product-type.library.static"; + }; 22DD19BD13A8D7FA0018ECD4 /* mediastream */ = { isa = PBXNativeTarget; buildConfigurationList = 22DD19DA13A8D7FA0018ECD4 /* Build configuration list for PBXNativeTarget "mediastream" */; @@ -1525,6 +2021,7 @@ buildRules = ( ); dependencies = ( + 2206D2DB177ACCE400C40726 /* PBXTargetDependency */, 225D65CB1521C181008B2E81 /* PBXTargetDependency */, ); name = mediastream; @@ -1543,6 +2040,7 @@ buildRules = ( ); dependencies = ( + 22C8D0EB1769F95700DAFB4E /* PBXTargetDependency */, 225D65C91521C0D1008B2E81 /* PBXTargetDependency */, ); name = liblinphone; @@ -1576,8 +2074,10 @@ targets = ( D2AAC07D0554694100DB518D /* liblinphone */, 22DD19BD13A8D7FA0018ECD4 /* mediastream */, - 225D642D1521BFA6008B2E81 /* libmediastreamer */, + 225D642D1521BFA6008B2E81 /* libmediastreamer_base */, 225D64FA1521C009008B2E81 /* libortp */, + 223CA8ED16DA10AB00EF1BEC /* libbellesip */, + 22C8D0401769F8FF00DAFB4E /* libmediastreamer_voip */, ); }; /* End PBXProject section */ @@ -1587,46 +2087,55 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 22D07CD016F3BC5F009F2C9E /* InfoPlist.strings in Resources */, - 22D07CD116F3BC5F009F2C9E /* MainWindow.xib in Resources */, - 22D07CD216F3BC5F009F2C9E /* mediastreamViewController.xib in Resources */, - 22D07CD316F3BC5F009F2C9E /* mediastream-Info.plist in Resources */, + 2206D2D3177AC70900C40726 /* InfoPlist.strings in Resources */, + 2206D2D4177AC70900C40726 /* MainWindow.xib in Resources */, + 2206D2D5177AC70900C40726 /* mediastreamViewController.xib in Resources */, + 2206D2D6177AC70900C40726 /* mediastream-Info.plist in Resources */, + 2206D2E1177ACF5700C40726 /* nowebcamCIF.jpg in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ + 223CA93016DA10AB00EF1BEC /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 223CA93116DA10AB00EF1BEC /* avprofile.c in Sources */, + 223CA93216DA10AB00EF1BEC /* b64.c in Sources */, + 223CA93316DA10AB00EF1BEC /* event.c in Sources */, + 223CA93416DA10AB00EF1BEC /* jitterctl.c in Sources */, + 223CA93516DA10AB00EF1BEC /* ortp.c in Sources */, + 223CA93616DA10AB00EF1BEC /* payloadtype.c in Sources */, + 223CA93716DA10AB00EF1BEC /* port.c in Sources */, + 223CA93816DA10AB00EF1BEC /* posixtimer.c in Sources */, + 223CA93916DA10AB00EF1BEC /* rtcp.c in Sources */, + 223CA93A16DA10AB00EF1BEC /* rtcpparse.c in Sources */, + 223CA93B16DA10AB00EF1BEC /* rtpparse.c in Sources */, + 223CA93C16DA10AB00EF1BEC /* rtpsession.c in Sources */, + 223CA93D16DA10AB00EF1BEC /* rtpsession_inet.c in Sources */, + 223CA93E16DA10AB00EF1BEC /* rtpsignaltable.c in Sources */, + 223CA93F16DA10AB00EF1BEC /* rtptimer.c in Sources */, + 223CA94016DA10AB00EF1BEC /* scheduler.c in Sources */, + 223CA94116DA10AB00EF1BEC /* sessionset.c in Sources */, + 223CA94216DA10AB00EF1BEC /* str_utils.c in Sources */, + 223CA94316DA10AB00EF1BEC /* stun.c in Sources */, + 223CA94416DA10AB00EF1BEC /* stun_udp.c in Sources */, + 223CA94516DA10AB00EF1BEC /* telephonyevents.c in Sources */, + 223CA94616DA10AB00EF1BEC /* utils.c in Sources */, + 223CA94716DA10AB00EF1BEC /* zrtp.c in Sources */, + 223CA94816DA10AB00EF1BEC /* netsim.c in Sources */, + 223CA94916DA10AB00EF1BEC /* ortp_srtp.c in Sources */, + 223CA94A16DA10AB00EF1BEC /* logging.c in Sources */, + 223CA94B16DA10AB00EF1BEC /* rtpprofile.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 225D64821521BFA6008B2E81 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 225D64BC1521BFA6008B2E81 /* address.c in Sources */, - 225D64BD1521BFA6008B2E81 /* authentication.c in Sources */, - 225D64BE1521BFA6008B2E81 /* callbacks.c in Sources */, - 225D64BF1521BFA6008B2E81 /* chat.c in Sources */, - 225D64D31521BFA6008B2E81 /* filter-template.c in Sources */, - 221DCB6D153584410025E54D /* yuv2rgb.fs in Sources */, - 221DCB6F153584410025E54D /* yuv2rgb.vs in Sources */, - 223CA86716D9268D00EF1BEC /* alaw.c in Sources */, - 223CA86916D9268D00EF1BEC /* aqsnd.c in Sources */, - 223CA86B16D9268D00EF1BEC /* audiomixer.c in Sources */, - 223CA86C16D9268D00EF1BEC /* chanadapt.c in Sources */, - 223CA86D16D9268D00EF1BEC /* dtmfgen.c in Sources */, - 223CA86E16D9268D00EF1BEC /* equalizer.c in Sources */, - 223CA87016D9268D00EF1BEC /* genericplc.c in Sources */, - 223CA87116D9268D00EF1BEC /* gsm.c in Sources */, - 223CA87216D9268D00EF1BEC /* l16.c in Sources */, - 223CA87416D9268D00EF1BEC /* msconf.c in Sources */, - 223CA87516D9268D00EF1BEC /* msfileplayer.c in Sources */, - 223CA87616D9268D00EF1BEC /* msfilerec.c in Sources */, - 223CA87716D9268D00EF1BEC /* msg722.c in Sources */, - 223CA87816D9268D00EF1BEC /* msiounit.m in Sources */, - 223CA87916D9268D00EF1BEC /* msresample.c in Sources */, - 223CA87A16D9268D00EF1BEC /* msspeex.c in Sources */, - 223CA87B16D9268D00EF1BEC /* msvolume.c in Sources */, - 223CA88016D9268D00EF1BEC /* tonedetector.c in Sources */, - 223CA88116D9268D00EF1BEC /* ulaw.c in Sources */, 223CA88816D9268D00EF1BEC /* eventqueue.c in Sources */, 223CA88916D9268D00EF1BEC /* mscommon.c in Sources */, 223CA88A16D9268D00EF1BEC /* msfilter.c in Sources */, @@ -1635,47 +2144,6 @@ 223CA88D16D9268D00EF1BEC /* msticker.c in Sources */, 223CA88E16D9268D00EF1BEC /* mswebcam.c in Sources */, 223CA88F16D9268D00EF1BEC /* mtu.c in Sources */, - 223CA89016D9268D00EF1BEC /* itc.c in Sources */, - 223CA89116D9268D00EF1BEC /* join.c in Sources */, - 223CA89216D9268D00EF1BEC /* msrtp.c in Sources */, - 223CA89316D9268D00EF1BEC /* tee.c in Sources */, - 223CA89416D9268D00EF1BEC /* void.c in Sources */, - 223CA89616D9268D00EF1BEC /* dsptools.c in Sources */, - 223CA89A16D9268D00EF1BEC /* g722_decode.c in Sources */, - 223CA89B16D9268D00EF1BEC /* g722_encode.c in Sources */, - 223CA89C16D9268D00EF1BEC /* kiss_fft.c in Sources */, - 223CA89E16D9268D00EF1BEC /* kiss_fftr.c in Sources */, - 223CA8A116D9268D00EF1BEC /* opengles_display.c in Sources */, - 223CA8A316D9268D00EF1BEC /* shaders.c in Sources */, - 223CA8A816D9268D00EF1BEC /* extdisplay.c in Sources */, - 223CA8AA16D9268D00EF1BEC /* h264dec.c in Sources */, - 223CA8AB16D9268D00EF1BEC /* ioscapture.m in Sources */, - 223CA8AC16D9268D00EF1BEC /* iosdisplay.m in Sources */, - 223CA8AD16D9268D00EF1BEC /* jpegwriter.c in Sources */, - 223CA8AE16D9268D00EF1BEC /* mire.c in Sources */, - 223CA8B316D9268D00EF1BEC /* nowebcam.c in Sources */, - 223CA8B416D9268D00EF1BEC /* pixconv.c in Sources */, - 223CA8B616D9268D00EF1BEC /* sizeconv.c in Sources */, - 223CA8B816D9268D00EF1BEC /* videodec.c in Sources */, - 223CA8B916D9268D00EF1BEC /* videoenc.c in Sources */, - 223CA8BB16D9268D00EF1BEC /* vp8.c in Sources */, - 223CA8C116D9268D00EF1BEC /* audioconference.c in Sources */, - 223CA8C216D9268D00EF1BEC /* audiostream.c in Sources */, - 223CA8C316D9268D00EF1BEC /* bitratecontrol.c in Sources */, - 223CA8C416D9268D00EF1BEC /* bitratedriver.c in Sources */, - 223CA8C516D9268D00EF1BEC /* ice.c in Sources */, - 223CA8C616D9268D00EF1BEC /* layouts.c in Sources */, - 223CA8C816D9268D00EF1BEC /* mediastream.c in Sources */, - 223CA8C916D9268D00EF1BEC /* msvideo.c in Sources */, - 223CA8CA16D9268D00EF1BEC /* msvideo_neon.c in Sources */, - 223CA8CC16D9268D00EF1BEC /* msvoip.c in Sources */, - 223CA8CF16D9268D00EF1BEC /* qosanalyzer.c in Sources */, - 223CA8D016D9268D00EF1BEC /* qualityindicator.c in Sources */, - 223CA8D216D9268D00EF1BEC /* rfc3984.c in Sources */, - 223CA8D316D9268D00EF1BEC /* ringstream.c in Sources */, - 223CA8D416D9268D00EF1BEC /* scaler.c in Sources */, - 223CA8D716D9268D00EF1BEC /* videostream.c in Sources */, - 22D07CE516F3BFCB009F2C9E /* speexec.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1713,13 +2181,86 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 22C8D0981769F8FF00DAFB4E /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 22C8D0991769F8FF00DAFB4E /* filter-template.c in Sources */, + 22C8D09A1769F8FF00DAFB4E /* yuv2rgb.fs in Sources */, + 22C8D09B1769F8FF00DAFB4E /* yuv2rgb.vs in Sources */, + 22C8D09C1769F8FF00DAFB4E /* alaw.c in Sources */, + 22C8D09D1769F8FF00DAFB4E /* aqsnd.c in Sources */, + 22C8D09E1769F8FF00DAFB4E /* audiomixer.c in Sources */, + 22C8D09F1769F8FF00DAFB4E /* chanadapt.c in Sources */, + 22C8D0A01769F8FF00DAFB4E /* dtmfgen.c in Sources */, + 22C8D0A11769F8FF00DAFB4E /* equalizer.c in Sources */, + 22C8D0A21769F8FF00DAFB4E /* genericplc.c in Sources */, + 22C8D0A31769F8FF00DAFB4E /* gsm.c in Sources */, + 22C8D0A41769F8FF00DAFB4E /* l16.c in Sources */, + 22C8D0A51769F8FF00DAFB4E /* msconf.c in Sources */, + 22C8D0A61769F8FF00DAFB4E /* msfileplayer.c in Sources */, + 22C8D0A71769F8FF00DAFB4E /* msfilerec.c in Sources */, + 22C8D0A81769F8FF00DAFB4E /* msg722.c in Sources */, + 22C8D0A91769F8FF00DAFB4E /* msiounit.m in Sources */, + 22C8D0AA1769F8FF00DAFB4E /* msresample.c in Sources */, + 22C8D0AB1769F8FF00DAFB4E /* msspeex.c in Sources */, + 22C8D0AC1769F8FF00DAFB4E /* msvolume.c in Sources */, + 22C8D0AD1769F8FF00DAFB4E /* tonedetector.c in Sources */, + 22C8D0AE1769F8FF00DAFB4E /* ulaw.c in Sources */, + 22C8D0B71769F8FF00DAFB4E /* itc.c in Sources */, + 22C8D0B81769F8FF00DAFB4E /* join.c in Sources */, + 22C8D0B91769F8FF00DAFB4E /* msrtp.c in Sources */, + 22C8D0BA1769F8FF00DAFB4E /* tee.c in Sources */, + 22C8D0BB1769F8FF00DAFB4E /* void.c in Sources */, + 22C8D0BC1769F8FF00DAFB4E /* dsptools.c in Sources */, + 22C8D0BD1769F8FF00DAFB4E /* g722_decode.c in Sources */, + 22C8D0BE1769F8FF00DAFB4E /* g722_encode.c in Sources */, + 22C8D0BF1769F8FF00DAFB4E /* kiss_fft.c in Sources */, + 22C8D0C01769F8FF00DAFB4E /* kiss_fftr.c in Sources */, + 22C8D0C11769F8FF00DAFB4E /* opengles_display.c in Sources */, + 22C8D0C21769F8FF00DAFB4E /* shaders.c in Sources */, + 22C8D0C31769F8FF00DAFB4E /* extdisplay.c in Sources */, + 22C8D0C41769F8FF00DAFB4E /* h264dec.c in Sources */, + 22C8D0C51769F8FF00DAFB4E /* ioscapture.m in Sources */, + 22C8D0C61769F8FF00DAFB4E /* iosdisplay.m in Sources */, + 22C8D0C71769F8FF00DAFB4E /* jpegwriter.c in Sources */, + 22C8D0C81769F8FF00DAFB4E /* mire.c in Sources */, + 22C8D0C91769F8FF00DAFB4E /* nowebcam.c in Sources */, + 22C8D0CA1769F8FF00DAFB4E /* pixconv.c in Sources */, + 22C8D0CB1769F8FF00DAFB4E /* sizeconv.c in Sources */, + 22C8D0CC1769F8FF00DAFB4E /* videodec.c in Sources */, + 22C8D0CD1769F8FF00DAFB4E /* videoenc.c in Sources */, + 22C8D0CE1769F8FF00DAFB4E /* vp8.c in Sources */, + 22C8D0CF1769F8FF00DAFB4E /* audioconference.c in Sources */, + 22C8D0D01769F8FF00DAFB4E /* audiostream.c in Sources */, + 22C8D0D11769F8FF00DAFB4E /* bitratecontrol.c in Sources */, + 22C8D0D21769F8FF00DAFB4E /* bitratedriver.c in Sources */, + 22C8D0D31769F8FF00DAFB4E /* ice.c in Sources */, + 22C8D0D41769F8FF00DAFB4E /* layouts.c in Sources */, + 22C8D0D51769F8FF00DAFB4E /* mediastream.c in Sources */, + 22C8D0D61769F8FF00DAFB4E /* msvideo.c in Sources */, + 22C8D0D71769F8FF00DAFB4E /* msvideo_neon.c in Sources */, + 22C8D0D81769F8FF00DAFB4E /* msvoip.c in Sources */, + 22C8D0D91769F8FF00DAFB4E /* qosanalyzer.c in Sources */, + 22C8D0DA1769F8FF00DAFB4E /* qualityindicator.c in Sources */, + 22C8D0DB1769F8FF00DAFB4E /* rfc3984.c in Sources */, + 22C8D0DC1769F8FF00DAFB4E /* ringstream.c in Sources */, + 22C8D0DD1769F8FF00DAFB4E /* scaler.c in Sources */, + 22C8D0DE1769F8FF00DAFB4E /* videostream.c in Sources */, + 22C8D0DF1769F8FF00DAFB4E /* speexec.c in Sources */, + 22C8D0E01769F8FF00DAFB4E /* msopus.c in Sources */, + 22C8D0ED176A079600DAFB4E /* aac-eld.c in Sources */, + 1561A555178D9C71006B4B2F /* ioshardware.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 22DD19BA13A8D7FA0018ECD4 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 22D07CD416F3BC5F009F2C9E /* mediastreamAppDelegate.m in Sources */, - 22D07CD516F3BC5F009F2C9E /* mediastreamViewController.m in Sources */, - 22D07CD616F3BC5F009F2C9E /* mediastream.c in Sources */, + 2206D2D7177AC70900C40726 /* mediastreamAppDelegate.m in Sources */, + 2206D2D8177AC70900C40726 /* mediastreamViewController.m in Sources */, + 2206D2D9177AC70900C40726 /* mediastream.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1745,14 +2286,33 @@ 229ECDED143AEBDA00D611B8 /* conference.c in Sources */, 221DCB561529FE660025E54D /* linphonecall.c in Sources */, 221DCB57152A07050025E54D /* ec-calibrator.c in Sources */, - 221DCB6C153584410025E54D /* yuv2rgb.fs in Sources */, - 221DCB6E153584410025E54D /* yuv2rgb.vs in Sources */, + 223CA8E316D9298F00EF1BEC /* sal_address_impl.c in Sources */, + 223CA8E416D9298F00EF1BEC /* sal_impl.c in Sources */, + 223CA8E616D9298F00EF1BEC /* sal_op_call.c in Sources */, + 223CA8E716D9298F00EF1BEC /* sal_op_call_transfer.c in Sources */, + 223CA8E816D9298F00EF1BEC /* sal_op_impl.c in Sources */, + 223CA8E916D9298F00EF1BEC /* sal_op_message.c in Sources */, + 223CA8EA16D9298F00EF1BEC /* sal_op_presence.c in Sources */, + 223CA8EB16D9298F00EF1BEC /* sal_op_registration.c in Sources */, + 223CA8EC16D9298F00EF1BEC /* sal_sdp.c in Sources */, + 22C8D0EF176A080100DAFB4E /* event.c in Sources */, + 22C8D0F3176A082600DAFB4E /* sal_op_events.c in Sources */, + 22C8D0F4176A082600DAFB4E /* sal_op_info.c in Sources */, + 22C8D0F5176A082600DAFB4E /* sal_op_publish.c in Sources */, + 22C8D0F7176A08CA00DAFB4E /* info.c in Sources */, + 22C8D0F9176A08F700DAFB4E /* message_storage.c in Sources */, + 22C8D0FE176A093B00DAFB4E /* linphone_tunnel_stubs.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ + 2206D2DB177ACCE400C40726 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 22C8D0401769F8FF00DAFB4E /* libmediastreamer_voip */; + targetProxy = 2206D2DA177ACCE400C40726 /* PBXContainerItemProxy */; + }; 225D65C71521C09D008B2E81 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 225D64FA1521C009008B2E81 /* libortp */; @@ -1760,37 +2320,47 @@ }; 225D65C91521C0D1008B2E81 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = 225D642D1521BFA6008B2E81 /* libmediastreamer */; + target = 225D642D1521BFA6008B2E81 /* libmediastreamer_base */; targetProxy = 225D65C81521C0D1008B2E81 /* PBXContainerItemProxy */; }; 225D65CB1521C181008B2E81 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = 225D642D1521BFA6008B2E81 /* libmediastreamer */; + target = 225D642D1521BFA6008B2E81 /* libmediastreamer_base */; targetProxy = 225D65CA1521C181008B2E81 /* PBXContainerItemProxy */; }; + 22C8D0411769F8FF00DAFB4E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 225D64FA1521C009008B2E81 /* libortp */; + targetProxy = 22C8D0421769F8FF00DAFB4E /* PBXContainerItemProxy */; + }; + 22C8D0EB1769F95700DAFB4E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 22C8D0401769F8FF00DAFB4E /* libmediastreamer_voip */; + targetProxy = 22C8D0EA1769F95700DAFB4E /* PBXContainerItemProxy */; + }; /* End PBXTargetDependency section */ /* Begin PBXVariantGroup section */ - 22D07CB416F3BC5F009F2C9E /* InfoPlist.strings */ = { + 2206D2C6177AC70900C40726 /* InfoPlist.strings */ = { isa = PBXVariantGroup; children = ( - 22D07CB516F3BC5F009F2C9E /* en */, + 2206D2C7177AC70900C40726 /* en */, ); name = InfoPlist.strings; sourceTree = ""; }; - 22D07CB616F3BC5F009F2C9E /* MainWindow.xib */ = { + 2206D2C8177AC70900C40726 /* MainWindow.xib */ = { isa = PBXVariantGroup; children = ( - 22D07CB716F3BC5F009F2C9E /* en */, + 2206D2C9177AC70900C40726 /* en */, ); name = MainWindow.xib; sourceTree = ""; }; - 22D07CB816F3BC5F009F2C9E /* mediastreamViewController.xib */ = { + 2206D2CA177AC70900C40726 /* mediastreamViewController.xib */ = { isa = PBXVariantGroup; children = ( - 22D07CB916F3BC5F009F2C9E /* en */, + 2206D2CB177AC70900C40726 /* en */, ); name = mediastreamViewController.xib; sourceTree = ""; @@ -1802,6 +2372,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; COPY_PHASE_STRIP = NO; DSTROOT = /tmp/liblinphone.dst; GCC_DYNAMIC_NO_PIC = NO; @@ -1813,6 +2384,7 @@ GCC_UNROLL_LOOPS = NO; GCC_VERSION = com.apple.compilers.llvm.clang.1_0; HEADER_SEARCH_PATHS = ( + linphone/include, linphone/mediastreamer2/build/iphone, linphone/mediastreamer2/include, linphone/oRTP/include, @@ -1823,6 +2395,7 @@ externals/ffmpeg, external/ffmpeg/swscale, "../liblinphone-sdk/apple-darwin/include", + "../liblinphone-sdk/apple-darwin/include/libxml2", ); INSTALL_PATH = /usr/local/lib; LIBRARY_SEARCH_PATHS = ( @@ -1838,6 +2411,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; DSTROOT = /tmp/liblinphone.dst; GCC_MODEL_TUNING = G5; GCC_PRECOMPILE_PREFIX_HEADER = YES; @@ -1846,6 +2420,7 @@ GCC_UNROLL_LOOPS = NO; GCC_VERSION = com.apple.compilers.llvm.clang.1_0; HEADER_SEARCH_PATHS = ( + linphone/include, linphone/mediastreamer2/build/iphone, linphone/mediastreamer2/include, linphone/oRTP/include, @@ -1856,6 +2431,7 @@ externals/ffmpeg, external/ffmpeg/swscale, "../liblinphone-sdk/apple-darwin/include", + "../liblinphone-sdk/apple-darwin/include/libxml2", ); INSTALL_PATH = /usr/local/lib; LIBRARY_SEARCH_PATHS = ( @@ -1892,7 +2468,7 @@ HAVE_LIBAVCODEC_AVCODEC_H, HAVE_LIBSWSCALE_SWSCALE_H, "TARGET_OS_IPHONE=1", - USE_CAINSIP, + USE_BELLESIP, "PACKAGE_NAME=\\\"Linphone\\\"", "POSIXTIMER_INTERVAL=10000", ); @@ -1937,7 +2513,7 @@ HAVE_LIBAVCODEC_AVCODEC_H, HAVE_LIBSWSCALE_SWSCALE_H, "TARGET_OS_IPHONE=1", - USE_CAINSIP, + USE_BELLESIP, "PACKAGE_NAME=\\\"Linphone\\\"", "POSIXTIMER_INTERVAL=10000", ); @@ -1959,6 +2535,174 @@ }; name = Release; }; + 223CA95016DA10AB00EF1BEC /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + COPY_PHASE_STRIP = NO; + DSTROOT = /tmp/liblinphone.dst; + GCC_DYNAMIC_NO_PIC = NO; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = liblinphone_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + IPV6_PKTINFO, + "_BYTE_ORDER=_LITTLE_ENDIAN", + ORTP_INET6, + ENABLE_TRACE, + "LINPHONE_VERSION=\\\"debug\\\"", + "LINPHONE_PLUGINS_DIR=\\\"\\\\tmp\\\"", + "LOG_DOMAIN=\\\"Linphone\\\"", + "ORTP_MAJOR_VERSION=0", + "ORTP_MICRO_VERSION=0", + "ORTP_MINOR_VERSION=15", + "ORTP_VERSION=\\\"0.15.0\\\"", + "PACKAGE=\\\"ortp\\\"", + "POSIXTIMER_INTERVAL=10000", + IN_LINPHONE, + __MAC_AQ_ENABLED__, + MS2_INTERNAL, + VIDEO_ENABLED, + HAVE_LIBAVCODEC_AVCODEC_H, + HAVE_LIBSWSCALE_SWSCALE_H, + TARGET_OS_IPHONE, + ); + GCC_THUMB_SUPPORT = NO; + GCC_UNROLL_LOOPS = NO; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + HEADER_SEARCH_PATHS = ( + linphone/mediastreamer2/build/iphone, + linphone/mediastreamer2/include, + linphone/oRTP/include, + externals/gsm/, + externals/osip/include, + externals/exosip/include, + externals/speex/include, + externals/ffmpeg, + external/ffmpeg/swscale, + "../liblinphone-sdk/apple-darwin/include", + ); + INSTALL_PATH = /usr/local/lib; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib\"", + ); + PRODUCT_NAME = "libortp copy"; + SKIP_INSTALL = YES; + }; + name = Debug; + }; + 223CA95116DA10AB00EF1BEC /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + DSTROOT = /tmp/liblinphone.dst; + GCC_MODEL_TUNING = G5; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = liblinphone_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + IPV6_PKTINFO, + "_BYTE_ORDER=_LITTLE_ENDIAN", + ORTP_INET6, + ENABLE_TRACE, + "LINPHONE_VERSION=\\\"debug\\\"", + "LINPHONE_PLUGINS_DIR=\\\"\\\\tmp\\\"", + "LOG_DOMAIN=\\\"Linphone\\\"", + "ORTP_MAJOR_VERSION=0", + "ORTP_MICRO_VERSION=0", + "ORTP_MINOR_VERSION=15", + "ORTP_VERSION=\\\"0.15.0\\\"", + "PACKAGE=\\\"ortp\\\"", + "POSIXTIMER_INTERVAL=10000", + IN_LINPHONE, + __MAC_AQ_ENABLED__, + MS2_INTERNAL, + VIDEO_ENABLED, + HAVE_LIBAVCODEC_AVCODEC_H, + HAVE_LIBSWSCALE_SWSCALE_H, + TARGET_OS_IPHONE, + ); + GCC_THUMB_SUPPORT = NO; + GCC_UNROLL_LOOPS = NO; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + HEADER_SEARCH_PATHS = ( + linphone/mediastreamer2/build/iphone, + linphone/mediastreamer2/include, + linphone/oRTP/include, + externals/gsm/, + externals/osip/include, + externals/exosip/include, + externals/speex/include, + externals/ffmpeg, + external/ffmpeg/swscale, + "../liblinphone-sdk/apple-darwin/include", + ); + INSTALL_PATH = /usr/local/lib; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib\"", + ); + PRODUCT_NAME = "libortp copy"; + SKIP_INSTALL = YES; + }; + name = Release; + }; + 223CA95216DA10AB00EF1BEC /* DistributionAdhoc */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + DSTROOT = /tmp/liblinphone.dst; + GCC_MODEL_TUNING = G5; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = liblinphone_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + IPV6_PKTINFO, + "_BYTE_ORDER=_LITTLE_ENDIAN", + ORTP_INET6, + ENABLE_TRACE, + "LINPHONE_VERSION=\\\"debug\\\"", + "LINPHONE_PLUGINS_DIR=\\\"\\\\tmp\\\"", + "LOG_DOMAIN=\\\"Linphone\\\"", + "ORTP_MAJOR_VERSION=0", + "ORTP_MICRO_VERSION=0", + "ORTP_MINOR_VERSION=15", + "ORTP_VERSION=\\\"0.15.0\\\"", + "PACKAGE=\\\"ortp\\\"", + "POSIXTIMER_INTERVAL=10000", + IN_LINPHONE, + __MAC_AQ_ENABLED__, + MS2_INTERNAL, + VIDEO_ENABLED, + HAVE_LIBAVCODEC_AVCODEC_H, + HAVE_LIBSWSCALE_SWSCALE_H, + TARGET_OS_IPHONE, + ); + GCC_THUMB_SUPPORT = NO; + GCC_UNROLL_LOOPS = NO; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + HEADER_SEARCH_PATHS = ( + linphone/mediastreamer2/build/iphone, + linphone/mediastreamer2/include, + linphone/oRTP/include, + externals/gsm/, + externals/osip/include, + externals/exosip/include, + externals/speex/include, + externals/ffmpeg, + external/ffmpeg/swscale, + "../liblinphone-sdk/apple-darwin/include", + ); + INSTALL_PATH = /usr/local/lib; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib\"", + ); + PRODUCT_NAME = "libortp copy"; + SKIP_INSTALL = YES; + }; + name = DistributionAdhoc; + }; 225D64F51521BFA6008B2E81 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -2013,9 +2757,8 @@ "$(inherited)", "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib\"", ); - PRODUCT_NAME = mediastreamer; + PRODUCT_NAME = mediastreamer_base; SKIP_INSTALL = YES; - VALID_ARCHS = "armv6 armv7 armv7s i386"; }; name = Debug; }; @@ -2070,9 +2813,8 @@ "$(inherited)", "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib\"", ); - PRODUCT_NAME = mediastreamer; + PRODUCT_NAME = mediastreamer_base; SKIP_INSTALL = YES; - VALID_ARCHS = "armv6 armv7 armv7s i386"; }; name = Release; }; @@ -2127,9 +2869,8 @@ "$(inherited)", "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib\"", ); - PRODUCT_NAME = mediastreamer; + PRODUCT_NAME = mediastreamer_base; SKIP_INSTALL = YES; - VALID_ARCHS = "armv6 armv7 armv7s i386"; }; name = DistributionAdhoc; }; @@ -2325,7 +3066,7 @@ HAVE_LIBAVCODEC_AVCODEC_H, HAVE_LIBSWSCALE_SWSCALE_H, "TARGET_OS_IPHONE=1", - USE_CAINSIP, + USE_BELLESIP, "PACKAGE_NAME=\\\"Linphone\\\"", "POSIXTIMER_INTERVAL=10000", ); @@ -2351,6 +3092,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; DSTROOT = /tmp/liblinphone.dst; GCC_MODEL_TUNING = G5; GCC_PRECOMPILE_PREFIX_HEADER = YES; @@ -2359,6 +3101,7 @@ GCC_UNROLL_LOOPS = NO; GCC_VERSION = com.apple.compilers.llvm.clang.1_0; HEADER_SEARCH_PATHS = ( + linphone/include, linphone/mediastreamer2/build/iphone, linphone/mediastreamer2/include, linphone/oRTP/include, @@ -2369,6 +3112,7 @@ externals/ffmpeg, external/ffmpeg/swscale, "../liblinphone-sdk/apple-darwin/include", + "../liblinphone-sdk/apple-darwin/include/libxml2", ); INSTALL_PATH = /usr/local/lib; LIBRARY_SEARCH_PATHS = ( @@ -2413,7 +3157,7 @@ "TARGET_OS_IPHONE=1", ); GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_VERSION = ""; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; INFOPLIST_FILE = "$(SRCROOT)/linphone/mediastreamer2/tools/ios/mediastream-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 4.3; LIBRARY_SEARCH_PATHS = ( @@ -2429,6 +3173,174 @@ }; name = DistributionAdhoc; }; + 22C8D0E61769F8FF00DAFB4E /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + COPY_PHASE_STRIP = NO; + DSTROOT = /tmp/liblinphone.dst; + GCC_DYNAMIC_NO_PIC = NO; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = liblinphone_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_BYTE_ORDER=_LITTLE_ENDIAN", + ORTP_INET6, + ENABLE_TRACE, + "LINPHONE_VERSION=\\\"debug\\\"", + "LINPHONE_PLUGINS_DIR=\\\"\\\\tmp\\\"", + "LOG_DOMAIN=\\\"Linphone\\\"", + "ORTP_MAJOR_VERSION=0", + "ORTP_MICRO_VERSION=0", + "ORTP_MINOR_VERSION=15", + "ORTP_VERSION=\\\"0.15.0\\\"", + "PACKAGE=\\\"ortp\\\"", + "POSIXTIMER_INTERVAL=10000", + IN_LINPHONE, + __MAC_AQ_ENABLED__, + HAVE_EXOSIP_GET_SOCKET, + MS2_INTERNAL, + VIDEO_ENABLED, + HAVE_LIBAVCODEC_AVCODEC_H, + HAVE_LIBSWSCALE_SWSCALE_H, + TARGET_OS_IPHONE, + MS2_FILTERS, + ); + GCC_THUMB_SUPPORT = NO; + GCC_UNROLL_LOOPS = NO; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + HEADER_SEARCH_PATHS = ( + linphone/mediastreamer2/build/iphone, + linphone/mediastreamer2/include, + linphone/oRTP/include, + externals/gsm/, + externals/speex/include, + externals/ffmpeg, + external/ffmpeg/swscale, + "../liblinphone-sdk/apple-darwin/include", + "../liblinphone-sdk/apple-darwin/include/opus", + ); + INSTALL_PATH = /usr/local/lib; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib\"", + ); + PRODUCT_NAME = mediastreamer_voip; + SKIP_INSTALL = YES; + }; + name = Debug; + }; + 22C8D0E71769F8FF00DAFB4E /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + DSTROOT = /tmp/liblinphone.dst; + GCC_MODEL_TUNING = G5; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = liblinphone_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_BYTE_ORDER=_LITTLE_ENDIAN", + ORTP_INET6, + ENABLE_TRACE, + "LINPHONE_VERSION=\\\"debug\\\"", + "LINPHONE_PLUGINS_DIR=\\\"\\\\tmp\\\"", + "LOG_DOMAIN=\\\"Linphone\\\"", + "ORTP_MAJOR_VERSION=0", + "ORTP_MICRO_VERSION=0", + "ORTP_MINOR_VERSION=15", + "ORTP_VERSION=\\\"0.15.0\\\"", + "PACKAGE=\\\"ortp\\\"", + "POSIXTIMER_INTERVAL=10000", + IN_LINPHONE, + __MAC_AQ_ENABLED__, + HAVE_EXOSIP_GET_SOCKET, + MS2_INTERNAL, + VIDEO_ENABLED, + HAVE_LIBAVCODEC_AVCODEC_H, + HAVE_LIBSWSCALE_SWSCALE_H, + TARGET_OS_IPHONE, + MS2_FILTERS, + ); + GCC_THUMB_SUPPORT = NO; + GCC_UNROLL_LOOPS = NO; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + HEADER_SEARCH_PATHS = ( + linphone/mediastreamer2/build/iphone, + linphone/mediastreamer2/include, + linphone/oRTP/include, + externals/gsm/, + externals/speex/include, + externals/ffmpeg, + external/ffmpeg/swscale, + "../liblinphone-sdk/apple-darwin/include", + "../liblinphone-sdk/apple-darwin/include/opus", + ); + INSTALL_PATH = /usr/local/lib; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib\"", + ); + PRODUCT_NAME = mediastreamer_voip; + SKIP_INSTALL = YES; + }; + name = Release; + }; + 22C8D0E81769F8FF00DAFB4E /* DistributionAdhoc */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + DSTROOT = /tmp/liblinphone.dst; + GCC_MODEL_TUNING = G5; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = liblinphone_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_BYTE_ORDER=_LITTLE_ENDIAN", + ORTP_INET6, + ENABLE_TRACE, + "LINPHONE_VERSION=\\\"debug\\\"", + "LINPHONE_PLUGINS_DIR=\\\"\\\\tmp\\\"", + "LOG_DOMAIN=\\\"Linphone\\\"", + "ORTP_MAJOR_VERSION=0", + "ORTP_MICRO_VERSION=0", + "ORTP_MINOR_VERSION=15", + "ORTP_VERSION=\\\"0.15.0\\\"", + "PACKAGE=\\\"ortp\\\"", + "POSIXTIMER_INTERVAL=10000", + IN_LINPHONE, + __MAC_AQ_ENABLED__, + HAVE_EXOSIP_GET_SOCKET, + MS2_INTERNAL, + VIDEO_ENABLED, + HAVE_LIBAVCODEC_AVCODEC_H, + HAVE_LIBSWSCALE_SWSCALE_H, + TARGET_OS_IPHONE, + MS2_FILTERS, + ); + GCC_THUMB_SUPPORT = NO; + GCC_UNROLL_LOOPS = NO; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + HEADER_SEARCH_PATHS = ( + linphone/mediastreamer2/build/iphone, + linphone/mediastreamer2/include, + linphone/oRTP/include, + externals/gsm/, + externals/speex/include, + externals/ffmpeg, + external/ffmpeg/swscale, + "../liblinphone-sdk/apple-darwin/include", + "../liblinphone-sdk/apple-darwin/include/opus", + ); + INSTALL_PATH = /usr/local/lib; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib\"", + ); + PRODUCT_NAME = mediastreamer_voip; + SKIP_INSTALL = YES; + }; + name = DistributionAdhoc; + }; 22DD19DB13A8D7FA0018ECD4 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -2463,7 +3375,7 @@ "TARGET_OS_IPHONE=1", ); GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_VERSION = ""; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; INFOPLIST_FILE = "$(SRCROOT)/linphone/mediastreamer2/tools/ios/mediastream-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 4.3; LIBRARY_SEARCH_PATHS = ( @@ -2510,7 +3422,7 @@ "TARGET_OS_IPHONE=1", ); GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_VERSION = ""; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; INFOPLIST_FILE = "$(SRCROOT)/linphone/mediastreamer2/tools/ios/mediastream-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 4.3; LIBRARY_SEARCH_PATHS = ( @@ -2549,7 +3461,17 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 225D64F41521BFA6008B2E81 /* Build configuration list for PBXNativeTarget "libmediastreamer" */ = { + 223CA94F16DA10AB00EF1BEC /* Build configuration list for PBXNativeTarget "libbellesip" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 223CA95016DA10AB00EF1BEC /* Debug */, + 223CA95116DA10AB00EF1BEC /* Release */, + 223CA95216DA10AB00EF1BEC /* DistributionAdhoc */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 225D64F41521BFA6008B2E81 /* Build configuration list for PBXNativeTarget "libmediastreamer_base" */ = { isa = XCConfigurationList; buildConfigurations = ( 225D64F51521BFA6008B2E81 /* Debug */, @@ -2569,6 +3491,16 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + 22C8D0E51769F8FF00DAFB4E /* Build configuration list for PBXNativeTarget "libmediastreamer_voip" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 22C8D0E61769F8FF00DAFB4E /* Debug */, + 22C8D0E71769F8FF00DAFB4E /* Release */, + 22C8D0E81769F8FF00DAFB4E /* DistributionAdhoc */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; 22DD19DA13A8D7FA0018ECD4 /* Build configuration list for PBXNativeTarget "mediastream" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/submodules/linphone b/submodules/linphone index 125779185..e8668e2e3 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit 12577918593030541fd4d7b12e5881347e0eafb4 +Subproject commit e8668e2e312c390e891c372e3237ba3e6a54f53a diff --git a/submodules/msamr b/submodules/msamr index 4ec47f339..17391e324 160000 --- a/submodules/msamr +++ b/submodules/msamr @@ -1 +1 @@ -Subproject commit 4ec47f3394e98bc418b0aa548c5d5a6f68d2082a +Subproject commit 17391e32465c25feec9b3b44b6967775ea9a56a9 diff --git a/submodules/msilbc b/submodules/msilbc index 32a39741b..d5a47655f 160000 --- a/submodules/msilbc +++ b/submodules/msilbc @@ -1 +1 @@ -Subproject commit 32a39741b64d74999134f5e6425609c4cfff5daf +Subproject commit d5a47655f3c7ac64864f9d3a61bb0166eb748b57 diff --git a/submodules/mssilk b/submodules/mssilk index 044045c12..ab300b6e9 160000 --- a/submodules/mssilk +++ b/submodules/mssilk @@ -1 +1 @@ -Subproject commit 044045c1273f87412805b468d723df3e3b9e2002 +Subproject commit ab300b6e98eeede557346b76fbc7c2860ebd55bd diff --git a/submodules/msx264 b/submodules/msx264 index f1fd3d6be..3dfd0b6bb 160000 --- a/submodules/msx264 +++ b/submodules/msx264 @@ -1 +1 @@ -Subproject commit f1fd3d6be817dd5c1b8a46f68de04421f75cf056 +Subproject commit 3dfd0b6bb38c2f7f71e97b24f6941a01539a24bd