Browse Source

full cycle implemented, builds

master
Andreas Buff 5 months ago
parent
commit
a933791112
10 changed files with 676 additions and 32 deletions
  1. +36
    -0
      CodeFromObjCAdapter-needsToBeRefactoredSomewhere/NSArray+Engine.h
  2. +166
    -0
      CodeFromObjCAdapter-needsToBeRefactoredSomewhere/NSArray+Engine.m
  3. +27
    -0
      CodeFromObjCAdapter-needsToBeRefactoredSomewhere/PEPIdentity+Engine.h
  4. +81
    -0
      CodeFromObjCAdapter-needsToBeRefactoredSomewhere/PEPIdentity+Engine.m
  5. +30
    -0
      CodeFromObjCAdapter-needsToBeRefactoredSomewhere/PEPMessage+Engine.h
  6. +217
    -0
      CodeFromObjCAdapter-needsToBeRefactoredSomewhere/PEPMessage+Engine.m
  7. +0
    -21
      PEPMIME2PEPMessageUtil/PEPMIME2PEPMessageUtil.m
  8. +38
    -0
      PEPMIME2PEPMessageUtil/PEPMIME2PEPMessageUtil.mm
  9. +39
    -7
      PEPMessage2MIMEUtil/PEPMessage2MIMEUtil.mm
  10. +42
    -4
      pEpMimeObjCAdapter.xcodeproj/project.pbxproj

+ 36
- 0
CodeFromObjCAdapter-needsToBeRefactoredSomewhere/NSArray+Engine.h View File

@ -0,0 +1,36 @@
//
// NSArray+Engine.h
// pEpiOSAdapter
//
// Created by Dirk Zimmermann on 21.10.20.
// Copyright © 2020 pp. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "stringlist.h"
#import "identity_list.h"
#import "bloblist.h"
@class PEPIdentity;
NS_ASSUME_NONNULL_BEGIN
@interface NSArray (Engine)
+ (instancetype)arrayFromStringlist:(stringlist_t *)stringList;
+ (NSArray<PEPIdentity *> *)arrayFromIdentityList:(identity_list *)identityList;
+ (instancetype)arrayFromStringPairlist:(stringpair_list_t * _Nonnull)stringPairList;
+ (instancetype)arrayFromBloblist:(bloblist_t * _Nonnull)blobList;
- (stringlist_t * _Nullable)toStringList;
/// Converts `NSArray<PEPIdentity *>` to an engine identity list
- (identity_list * _Nullable)toIdentityList;
- (stringpair_list_t * _Nullable)toStringPairlist;
- (bloblist_t * _Nullable)toBloblist;
@end
NS_ASSUME_NONNULL_END

+ 166
- 0
CodeFromObjCAdapter-needsToBeRefactoredSomewhere/NSArray+Engine.m View File

@ -0,0 +1,166 @@
//
// NSArray+Engine.m
// pEpiOSAdapter
//
// Created by Dirk Zimmermann on 21.10.20.
// Copyright © 2020 pp. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "NSArray+Engine.h"
#import "PEPIdentity.h"
#import "PEPIdentity+Engine.h"
#import "PEPAttachment.h"
@implementation NSArray (Engine)
+ (instancetype)arrayFromStringlist:(stringlist_t * _Nonnull)stringList
{
NSMutableArray *array = [NSMutableArray array];
for (stringlist_t *_sl = stringList; _sl && _sl->value; _sl = _sl->next) {
[array addObject:[NSString stringWithUTF8String:_sl->value]];
}
return array;
}
+ (NSArray<PEPIdentity *> *)arrayFromIdentityList:(identity_list *)identityList
{
NSMutableArray *array = [NSMutableArray array];
for (identity_list *_il = identityList; _il && _il->ident; _il = _il->next) {
[array addObject:[PEPIdentity fromStruct:_il->ident]];
}
return array;
}
+ (instancetype)arrayFromStringPairlist:(stringpair_list_t * _Nonnull)stringPairList
{
NSMutableArray *array = [NSMutableArray array];
for (stringpair_list_t *_sl = stringPairList; _sl && _sl->value; _sl = _sl->next) {
[array addObject:[[NSMutableArray alloc ]initWithObjects:
[NSString stringWithUTF8String:_sl->value->key],
[NSString stringWithUTF8String:_sl->value->value],
nil]];
}
return array;
}
+ (instancetype)arrayFromBloblist:(bloblist_t * _Nonnull)blobList
{
NSMutableArray *array = [NSMutableArray array];
for (bloblist_t *_bl = blobList; _bl && _bl->value; _bl = _bl->next) {
PEPAttachment* theAttachment = [[PEPAttachment alloc]
initWithData:[NSData
dataWithBytes:_bl->value length:_bl->size]];
if(_bl->filename && _bl->filename[0]) {
theAttachment.filename = [NSString stringWithUTF8String:_bl->filename];
}
if(_bl->mime_type && _bl->mime_type[0]) {
theAttachment.mimeType = [NSString stringWithUTF8String:_bl->mime_type];
}
theAttachment.contentDisposition = (PEPContentDisposition) _bl->disposition;
[array addObject:theAttachment];
}
return array;
}
- (stringlist_t * _Nullable)toStringList
{
stringlist_t *sl = new_stringlist(NULL);
if (!sl)
return NULL;
stringlist_t *_sl = sl;
for (NSString *str in self) {
_sl = stringlist_add(_sl, [[str precomposedStringWithCanonicalMapping] UTF8String]);
}
return sl;
}
- (identity_list * _Nullable)toIdentityList
{
if (self.count == 0) {
return NULL;
}
identity_list *il = new_identity_list(NULL);
if (!il)
return NULL;
identity_list *_il = il;
for (PEPIdentity *address in self) {
_il = identity_list_add(_il, [address toStruct]);
}
return il;
}
- (stringpair_list_t * _Nullable)toStringPairlist
{
stringpair_list_t *sl = new_stringpair_list(NULL);
if (!sl)
return NULL;
stringpair_list_t *_sl = sl;
for (NSArray *pair in self) {
stringpair_t *_sp = new_stringpair(
[[pair[0] precomposedStringWithCanonicalMapping] UTF8String],
[[pair[1] precomposedStringWithCanonicalMapping] UTF8String]);
_sl = stringpair_list_add(_sl, _sp);
}
return sl;
}
- (bloblist_t * _Nullable)toBloblist
{
if (self.count == 0) {
return NULL;
}
bloblist_t *_bl = new_bloblist(NULL, 0, NULL, NULL);
if (!_bl) {
return NULL;
}
bloblist_t *bl =_bl;
// free() might be the default, but let's be explicit
bl->release_value = (void (*) (char *)) free;
for (PEPAttachment *theAttachment in self) {
NSData *data = theAttachment.data;
size_t size = [data length];
char *buf = malloc(size);
assert(buf);
memcpy(buf, [data bytes], size);
bl = bloblist_add(bl, buf, size,
[[theAttachment.mimeType
precomposedStringWithCanonicalMapping]
UTF8String],
[[theAttachment.filename
precomposedStringWithCanonicalMapping]
UTF8String]);
bl->disposition = (content_disposition_type) theAttachment.contentDisposition;
}
return _bl;
}
@end

+ 27
- 0
CodeFromObjCAdapter-needsToBeRefactoredSomewhere/PEPIdentity+Engine.h View File

@ -0,0 +1,27 @@
//
// PEPIdentity+Engine.h
// pEpiOSAdapter
//
// Created by Dirk Zimmermann on 21.10.20.
// Copyright © 2020 pp. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "PEPIdentity.h"
#import "pEpEngine.h"
NS_ASSUME_NONNULL_BEGIN
@interface PEPIdentity (Engine)
/// @Note: If the ident does not contain an address, no PEPIdentity can be constructed.
+ (instancetype _Nullable)fromStruct:(pEp_identity * _Nonnull)identityStruct;
- (pEp_identity *)toStruct;
- (void)overWriteFromStruct:(pEp_identity * _Nonnull)identityStruct;
@end
NS_ASSUME_NONNULL_END

+ 81
- 0
CodeFromObjCAdapter-needsToBeRefactoredSomewhere/PEPIdentity+Engine.m View File

@ -0,0 +1,81 @@
//
// PEPIdentity+Engine.m
// pEpiOSAdapter
//
// Created by Dirk Zimmermann on 21.10.20.
// Copyright © 2020 pp. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "PEPIdentity+Engine.h"
@implementation PEPIdentity (Engine)
+ (instancetype _Nullable)fromStruct:(pEp_identity * _Nonnull)identityStruct
{
PEPIdentity *identity = nil;
if (identityStruct->address && identityStruct->address[0]) {
identity = [[PEPIdentity alloc]
initWithAddress:[NSString stringWithUTF8String:identityStruct->address]];
}
[identity overWriteFromStruct:identityStruct];
return identity;
}
- (pEp_identity *)toStruct
{
pEp_identity *ident = new_identity([[self.address
precomposedStringWithCanonicalMapping] UTF8String],
[[self.fingerPrint
precomposedStringWithCanonicalMapping] UTF8String],
[[self.userID
precomposedStringWithCanonicalMapping] UTF8String],
[[self.userName
precomposedStringWithCanonicalMapping] UTF8String]);
ident->me = self.isOwn;
ident->flags = self.flags;
if (self.language) {
strncpy(ident->lang, [[self.language
precomposedStringWithCanonicalMapping] UTF8String], 2);
}
ident->comm_type = (PEP_comm_type) self.commType;
return ident;
}
- (void)overWriteFromStruct:(pEp_identity * _Nonnull)identityStruct
{
if (identityStruct->address && identityStruct->address[0]) {
self.address = [NSString stringWithUTF8String:identityStruct->address];
}
if (identityStruct->fpr && identityStruct->fpr[0]) {
self.fingerPrint = [NSString stringWithUTF8String:identityStruct->fpr];
}
if (identityStruct->user_id && identityStruct->user_id[0]) {
self.userID = [NSString stringWithUTF8String:identityStruct->user_id];
}
if (identityStruct->username && identityStruct->username[0]) {
self.userName = [NSString stringWithUTF8String:identityStruct->username];
}
if (identityStruct->lang[0]) {
self.language = [NSString stringWithUTF8String:identityStruct->lang];
}
self.commType = (PEPCommType) identityStruct->comm_type;
self.isOwn = identityStruct->me;
self.flags = identityStruct->flags;
}
@end

+ 30
- 0
CodeFromObjCAdapter-needsToBeRefactoredSomewhere/PEPMessage+Engine.h View File

@ -0,0 +1,30 @@
//
// PEPMessage+Engine.h
// pEpiOSAdapter
//
// Created by Dirk Zimmermann on 21.10.20.
// Copyright © 2020 pp. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "message.h"
#import "PEPMessage.h"
NS_ASSUME_NONNULL_BEGIN
@interface PEPMessage (Engine)
+ (instancetype _Nullable)fromStruct:(message * _Nullable)msg;
- (message * _Nullable)toStruct;
/// Sets recipients with 0 member to nil
- (instancetype)removeEmptyRecipients;
- (void)overWriteFromStruct:(message * _Nonnull)message;
@end
NS_ASSUME_NONNULL_END

+ 217
- 0
CodeFromObjCAdapter-needsToBeRefactoredSomewhere/PEPMessage+Engine.m View File

@ -0,0 +1,217 @@
//
// PEPMessage+Engine.m
// pEpiOSAdapter
//
// Created by Dirk Zimmermann on 21.10.20.
// Copyright © 2020 pp. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "PEPMessage+Engine.h"
#import "pEp_string.h"
#import "PEPMessage.h"
#import "PEPIdentity+Engine.h"
#import "NSArray+Engine.h"
@implementation PEPMessage (Engine)
+ (instancetype _Nullable)fromStruct:(message * _Nullable)msg
{
if (!msg) {
return nil;
}
PEPMessage *theMessage = [PEPMessage new];
[theMessage overWriteFromStruct:msg];
return theMessage;
}
- (message * _Nullable)toStruct
{
PEP_msg_direction dir = self.direction == PEPMsgDirectionIncoming ? PEP_dir_incoming : PEP_dir_outgoing;
message *msg = new_message(dir);
if (!msg) {
return NULL;
}
if (self.messageID)
msg->id = new_string([[self.messageID precomposedStringWithCanonicalMapping]
UTF8String], 0);
if (self.shortMessage)
msg->shortmsg = new_string([[self.shortMessage
precomposedStringWithCanonicalMapping] UTF8String], 0);
if (self.sentDate)
msg->sent = new_timestamp([self.sentDate timeIntervalSince1970]);
if (self.receivedDate)
msg->recv = new_timestamp([self.receivedDate timeIntervalSince1970]);
if (self.from)
msg->from = [self.from toStruct];
if (self.to)
msg->to = [self.to toIdentityList];
if (self.receivedBy)
msg->recv_by = [self.receivedBy toStruct];
if (self.cc)
msg->cc = [self.cc toIdentityList];
if (self.bcc)
msg->bcc = [self.bcc toIdentityList];
if (self.replyTo)
msg->reply_to = [self.replyTo toIdentityList];
if (self.inReplyTo)
msg->in_reply_to = [self.inReplyTo toStringList];
if (self.references)
msg->references = [self.references toStringList];
if (self.keywords)
msg->keywords = [self.keywords toStringList];
if (self.optionalFields)
msg->opt_fields = [self.optionalFields toStringPairlist];
if (self.longMessage)
msg->longmsg = new_string([[self.longMessage
precomposedStringWithCanonicalMapping] UTF8String], 0);
if (self.longMessageFormatted)
msg->longmsg_formatted = new_string([[self.longMessageFormatted
precomposedStringWithCanonicalMapping]
UTF8String], 0);
if (self.attachments) {
msg->attachments = [self.attachments toBloblist];
}
return msg;
}
- (instancetype)removeEmptyRecipients
{
if (self.to.count == 0) {
self.to = nil;
}
if (self.cc.count == 0) {
self.cc = nil;
}
if (self.bcc.count == 0) {
self.bcc = nil;
}
return self;
}
- (void)overWriteFromStruct:(message * _Nonnull)message
{
[self reset];
self.direction = message->dir == PEP_dir_outgoing ? PEPMsgDirectionOutgoing : PEPMsgDirectionIncoming;
if (message->id) {
self.messageID = [NSString stringWithUTF8String:message->id];
}
if (message->shortmsg) {
self.shortMessage = [NSString stringWithUTF8String:message->shortmsg];
}
if (message->sent) {
self.sentDate = [NSDate dateWithTimeIntervalSince1970:timegm(message->sent)];
}
if (message->recv) {
self.receivedDate = [NSDate dateWithTimeIntervalSince1970:mktime(message->recv)];
}
if (message->from) {
self.from = [PEPIdentity fromStruct:message->from];
}
if (message->to && message->to->ident) {
self.to = [NSArray arrayFromIdentityList:message->to];
}
if (message->recv_by) {
self.receivedBy = [PEPIdentity fromStruct:message->recv_by];
}
if (message->cc && message->cc->ident) {
self.cc = [NSArray arrayFromIdentityList:message->cc];
}
if (message->bcc && message->bcc->ident) {
self.bcc = [NSArray arrayFromIdentityList:message->bcc];
}
if (message->reply_to && message->reply_to->ident) {
self.replyTo = [NSArray arrayFromIdentityList:message->reply_to];
}
if (message->in_reply_to) {
self.inReplyTo = [NSArray arrayFromStringlist:message->in_reply_to];
}
if (message->references && message->references->value) {
self.references = [NSArray arrayFromStringlist:message->references];
}
if (message->keywords && message->keywords->value) {
self.keywords = [NSArray arrayFromStringlist:message->keywords];
}
if (message->opt_fields) {
self.optionalFields = [NSArray arrayFromStringPairlist:message->opt_fields];
}
if (message->longmsg_formatted) {
self.longMessageFormatted = [NSString stringWithUTF8String:message->longmsg_formatted];
}
if (message->longmsg) {
self.longMessage = [NSString stringWithUTF8String:message->longmsg];
}
if (message->attachments && message->attachments->value) {
self.attachments = [NSArray arrayFromBloblist:message->attachments];
}
}
// MARK: - Private
- (void)reset
{
self.messageID = nil;
self.from = nil;
self.to = nil;
self.cc = nil;
self.bcc = nil;
self.shortMessage = nil;
self.longMessage = nil;
self.longMessageFormatted = nil;
self.replyTo = nil;
self.inReplyTo = nil;
self.references = nil;
self.sentDate = nil;
self.receivedDate = nil;
self.attachments = nil;
self.optionalFields = nil;
self.keywords = nil;
self.receivedBy = nil;
self.direction = PEP_dir_incoming; // basically, 0
}
@end

+ 0
- 21
PEPMIME2PEPMessageUtil/PEPMIME2PEPMessageUtil.m View File

@ -1,21 +0,0 @@
//
// PEPMIME2PEPMessageUtil.m
// pEpMimeObjCAdapter_macOS
//
// Created by Andreas Buff on 01.07.21.
//
#import "PEPMIME2PEPMessageUtil.h"
@import PEPObjCAdapterTypes_macOS;
@implementation PEPMIME2PEPMessageUtil
- (PEPMessage*)pEpMessageWithMimeData:(NSData *)mimeData error: (NSError **)error {
// mime to engine msg
//msg to pepmsg
return [PEPMessage new];
}
@end

+ 38
- 0
PEPMIME2PEPMessageUtil/PEPMIME2PEPMessageUtil.mm View File

@ -0,0 +1,38 @@
//
// PEPMIME2PEPMessageUtil.m
// pEpMimeObjCAdapter_macOS
//
// Created by Andreas Buff on 01.07.21.
//
#import "PEPMIME2PEPMessageUtil.h"
#import <PEPObjCAdapterTypes_macOS/PEPObjCAdapterTypes_macOS.h>
#include <pEpMIME.hh>
#include <string>
#include <iostream>
#include <message.h>
#import "PEPMessage+Engine.h"
@implementation PEPMIME2PEPMessageUtil
- (PEPMessage*)pEpMessageWithMimeData:(NSData *)mimeData error: (NSError **)error {
NSString *mimeString = [[NSString alloc] initWithData:mimeData encoding:NSUTF8StringEncoding];
std::string cppMimeString = std::string([mimeString UTF8String]);
message* engineMsg = pEpMIME::parse_message(cppMimeString.data(), cppMimeString.size());
if (engineMsg == NULL) {
// set error
return nil;
}
PEPMessage *pEpMessage = [PEPMessage fromStruct:engineMsg];
if (!pEpMessage) {
// set error
free_message(engineMsg);
return nil;
}
free_message(engineMsg);
return pEpMessage;
}
@end

+ 39
- 7
PEPMessage2MIMEUtil/PEPMessage2MIMEUtil.mm View File

@ -9,17 +9,49 @@
#import <PEPObjCAdapterTypes_macOS/PEPObjCAdapterTypes_macOS.h>
#include <pEpMIME.hh>
#include <string>
#include <iostream>
#import "PEPMessage+Engine.h"
@implementation PEPMessage2MIMEUtil
//BUFF:
// check: 11:46 <Roker> die generierte MIME-Message ist 7-bit-ASCII sogar.
- (nullable NSData*)mimeDataFromPEPMessage:(PEPMessage *)pEpMessage error:(NSError **)error {
// PEPMSG 2 message
// msg to mimestring
//string to data
return nil;
message *engineMsg = [pEpMessage toStruct];
if (engineMsg == nil) {
// set error
return nil;
}
/*
11:54 <Roker> also: wenn der bool 'true' ist, werden in der generierten Message ein paar interne header und flags gesetzt, mehr nicht.
11:56 <Roker> "if unsure say 'no'" :-D
*/
BOOL has_pEp_msg_attachment = false;
BOOL omit_fields = false;
char* c = pEpMIME::generate_message(engineMsg, omit_fields, has_pEp_msg_attachment);
if (c == NULL) {
// set error
return nil;
}
//BUFF: rm
std::cout << c << std::endl;
std::cout << "§§§§§§§§§§§§§§§§§§" << std::endl;
NSString *mimeString = [NSString stringWithUTF8String:c];
if (!mimeString) {
// set error
free(c);
return nil;
}
free(c);
NSData *mimeData = [mimeString dataUsingEncoding:NSUTF8StringEncoding];
if (!mimeData) {
// set error
return nil;
}
return mimeData;
}
@end

+ 42
- 4
pEpMimeObjCAdapter.xcodeproj/project.pbxproj View File

@ -10,13 +10,20 @@
1585E8E6268E029500B822E1 /* pEpMimeObjCAdapter.h in Headers */ = {isa = PBXBuildFile; fileRef = 1574D19A268DB995003A5161 /* pEpMimeObjCAdapter.h */; settings = {ATTRIBUTES = (Public, ); }; };
1585E8E7268E029500B822E1 /* pEpMimeObjCAdapter.m in Sources */ = {isa = PBXBuildFile; fileRef = 1574D19B268DB995003A5161 /* pEpMimeObjCAdapter.m */; };
1585E8F9268E112A00B822E1 /* libpEpMIME.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1585E8F1268E02BA00B822E1 /* libpEpMIME.a */; };
1585E901268E12D600B822E1 /* PEPMIME2PEPMessageUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 1585E8FF268E12D600B822E1 /* PEPMIME2PEPMessageUtil.m */; };
1585E901268E12D600B822E1 /* PEPMIME2PEPMessageUtil.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1585E8FF268E12D600B822E1 /* PEPMIME2PEPMessageUtil.mm */; };
1585E902268E12D600B822E1 /* PEPMIME2PEPMessageUtil.h in Headers */ = {isa = PBXBuildFile; fileRef = 1585E900268E12D600B822E1 /* PEPMIME2PEPMessageUtil.h */; };
1585E907268E135500B822E1 /* PEPMessage2MIMEUtil.h in Headers */ = {isa = PBXBuildFile; fileRef = 1585E905268E135500B822E1 /* PEPMessage2MIMEUtil.h */; };
1585E908268E135500B822E1 /* PEPMessage2MIMEUtil.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1585E906268E135500B822E1 /* PEPMessage2MIMEUtil.mm */; };
1585E924268E158700B822E1 /* libPEPObjCAdapterTypes_macOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1585E91F268E157C00B822E1 /* libPEPObjCAdapterTypes_macOS.a */; };
1585E933268E1CDA00B822E1 /* PEPMessage+PEPMessage_MIME.h in Headers */ = {isa = PBXBuildFile; fileRef = 1585E931268E1CDA00B822E1 /* PEPMessage+PEPMessage_MIME.h */; };
1585E934268E1CDA00B822E1 /* PEPMessage+PEPMessage_MIME.m in Sources */ = {isa = PBXBuildFile; fileRef = 1585E932268E1CDA00B822E1 /* PEPMessage+PEPMessage_MIME.m */; };
1585E937269454A100B822E1 /* libpEpEngine_macOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1585E936269454A100B822E1 /* libpEpEngine_macOS.a */; };
1585E94126945ACB00B822E1 /* PEPMessage+Engine.h in Headers */ = {isa = PBXBuildFile; fileRef = 1585E93D26945ACB00B822E1 /* PEPMessage+Engine.h */; };
1585E94226945ACB00B822E1 /* PEPMessage+Engine.m in Sources */ = {isa = PBXBuildFile; fileRef = 1585E93E26945ACB00B822E1 /* PEPMessage+Engine.m */; };
1585E94326945ACB00B822E1 /* PEPIdentity+Engine.m in Sources */ = {isa = PBXBuildFile; fileRef = 1585E93F26945ACB00B822E1 /* PEPIdentity+Engine.m */; };
1585E94426945ACB00B822E1 /* PEPIdentity+Engine.h in Headers */ = {isa = PBXBuildFile; fileRef = 1585E94026945ACB00B822E1 /* PEPIdentity+Engine.h */; };
1585E94B2694673800B822E1 /* NSArray+Engine.m in Sources */ = {isa = PBXBuildFile; fileRef = 1585E9492694673800B822E1 /* NSArray+Engine.m */; };
1585E94C2694673800B822E1 /* NSArray+Engine.h in Headers */ = {isa = PBXBuildFile; fileRef = 1585E94A2694673800B822E1 /* NSArray+Engine.h */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
@ -69,13 +76,20 @@
1574D19B268DB995003A5161 /* pEpMimeObjCAdapter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = pEpMimeObjCAdapter.m; sourceTree = "<group>"; };
1574D1A0268DB9C8003A5161 /* libpEpMimeObjCAdapter_macOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libpEpMimeObjCAdapter_macOS.a; sourceTree = BUILT_PRODUCTS_DIR; };
1585E8E8268E02BA00B822E1 /* pEpMIME.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = pEpMIME.xcodeproj; path = ../pEpMIME/build_macOS/pEpMIME/pEpMIME.xcodeproj; sourceTree = "<group>"; };
1585E8FF268E12D600B822E1 /* PEPMIME2PEPMessageUtil.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PEPMIME2PEPMessageUtil.m; sourceTree = "<group>"; };
1585E8FF268E12D600B822E1 /* PEPMIME2PEPMessageUtil.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PEPMIME2PEPMessageUtil.mm; sourceTree = "<group>"; };
1585E900268E12D600B822E1 /* PEPMIME2PEPMessageUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PEPMIME2PEPMessageUtil.h; sourceTree = "<group>"; };
1585E905268E135500B822E1 /* PEPMessage2MIMEUtil.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = PEPMessage2MIMEUtil.h; sourceTree = "<group>"; };
1585E906268E135500B822E1 /* PEPMessage2MIMEUtil.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = PEPMessage2MIMEUtil.mm; sourceTree = "<group>"; };
1585E918268E157C00B822E1 /* PEPObjCAdapterTypes.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = PEPObjCAdapterTypes.xcodeproj; path = ../pEpObjCAdapter/Subprojects/PEPObjCAdapterTypes/PEPObjCAdapterTypes.xcodeproj; sourceTree = "<group>"; };
1585E931268E1CDA00B822E1 /* PEPMessage+PEPMessage_MIME.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "PEPMessage+PEPMessage_MIME.h"; sourceTree = "<group>"; };
1585E932268E1CDA00B822E1 /* PEPMessage+PEPMessage_MIME.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "PEPMessage+PEPMessage_MIME.m"; sourceTree = "<group>"; };
1585E936269454A100B822E1 /* libpEpEngine_macOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = libpEpEngine_macOS.a; sourceTree = BUILT_PRODUCTS_DIR; };
1585E93D26945ACB00B822E1 /* PEPMessage+Engine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "PEPMessage+Engine.h"; sourceTree = "<group>"; };
1585E93E26945ACB00B822E1 /* PEPMessage+Engine.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "PEPMessage+Engine.m"; sourceTree = "<group>"; };
1585E93F26945ACB00B822E1 /* PEPIdentity+Engine.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "PEPIdentity+Engine.m"; sourceTree = "<group>"; };
1585E94026945ACB00B822E1 /* PEPIdentity+Engine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "PEPIdentity+Engine.h"; sourceTree = "<group>"; };
1585E9492694673800B822E1 /* NSArray+Engine.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSArray+Engine.m"; sourceTree = "<group>"; };
1585E94A2694673800B822E1 /* NSArray+Engine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray+Engine.h"; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@ -84,6 +98,7 @@
buildActionMask = 2147483647;
files = (
1585E924268E158700B822E1 /* libPEPObjCAdapterTypes_macOS.a in Frameworks */,
1585E937269454A100B822E1 /* libpEpEngine_macOS.a in Frameworks */,
1585E8F9268E112A00B822E1 /* libpEpMIME.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
@ -94,6 +109,7 @@
1574D184268DB8A1003A5161 = {
isa = PBXGroup;
children = (
1585E9382694597F00B822E1 /* CodeFromObjCAdapter-needsToBeRefactoredSomewhere */,
1585E918268E157C00B822E1 /* PEPObjCAdapterTypes.xcodeproj */,
1585E8E8268E02BA00B822E1 /* pEpMIME.xcodeproj */,
1574D199268DB980003A5161 /* Interface */,
@ -133,6 +149,7 @@
1585E8F8268E112A00B822E1 /* Frameworks */ = {
isa = PBXGroup;
children = (
1585E936269454A100B822E1 /* libpEpEngine_macOS.a */,
);
name = Frameworks;
sourceTree = "<group>";
@ -141,7 +158,7 @@
isa = PBXGroup;
children = (
1585E900268E12D600B822E1 /* PEPMIME2PEPMessageUtil.h */,
1585E8FF268E12D600B822E1 /* PEPMIME2PEPMessageUtil.m */,
1585E8FF268E12D600B822E1 /* PEPMIME2PEPMessageUtil.mm */,
);
path = PEPMIME2PEPMessageUtil;
sourceTree = "<group>";
@ -174,6 +191,19 @@
path = "PEPMessage+PEPMessage_MIME";
sourceTree = "<group>";
};
1585E9382694597F00B822E1 /* CodeFromObjCAdapter-needsToBeRefactoredSomewhere */ = {
isa = PBXGroup;
children = (
1585E94A2694673800B822E1 /* NSArray+Engine.h */,
1585E9492694673800B822E1 /* NSArray+Engine.m */,
1585E94026945ACB00B822E1 /* PEPIdentity+Engine.h */,
1585E93F26945ACB00B822E1 /* PEPIdentity+Engine.m */,
1585E93D26945ACB00B822E1 /* PEPMessage+Engine.h */,
1585E93E26945ACB00B822E1 /* PEPMessage+Engine.m */,
);
path = "CodeFromObjCAdapter-needsToBeRefactoredSomewhere";
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
@ -181,6 +211,9 @@
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
1585E94426945ACB00B822E1 /* PEPIdentity+Engine.h in Headers */,
1585E94126945ACB00B822E1 /* PEPMessage+Engine.h in Headers */,
1585E94C2694673800B822E1 /* NSArray+Engine.h in Headers */,
1585E933268E1CDA00B822E1 /* PEPMessage+PEPMessage_MIME.h in Headers */,
1585E8E6268E029500B822E1 /* pEpMimeObjCAdapter.h in Headers */,
1585E907268E135500B822E1 /* PEPMessage2MIMEUtil.h in Headers */,
@ -311,7 +344,10 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
1585E901268E12D600B822E1 /* PEPMIME2PEPMessageUtil.m in Sources */,
1585E94226945ACB00B822E1 /* PEPMessage+Engine.m in Sources */,
1585E94326945ACB00B822E1 /* PEPIdentity+Engine.m in Sources */,
1585E901268E12D600B822E1 /* PEPMIME2PEPMessageUtil.mm in Sources */,
1585E94B2694673800B822E1 /* NSArray+Engine.m in Sources */,
1585E934268E1CDA00B822E1 /* PEPMessage+PEPMessage_MIME.m in Sources */,
1585E908268E135500B822E1 /* PEPMessage2MIMEUtil.mm in Sources */,
1585E8E7268E029500B822E1 /* pEpMimeObjCAdapter.m in Sources */,
@ -389,6 +425,7 @@
"${PROJECT_DIR}/../pEpMIME/build/include",
"${PROJECT_DIR}/../pEpEngine/build-mac/build/include",
"${PROJECT_DIR}/../pEpObjCAdapter/Subprojects/PEPObjCAdapterTypes/build/include",
"${PROJECT_DIR}/../pEpEngine/build-mac/build/include/pEp",
);
MACOSX_DEPLOYMENT_TARGET = 10.10;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
@ -447,6 +484,7 @@
"${PROJECT_DIR}/../pEpMIME/build/include",
"${PROJECT_DIR}/../pEpEngine/build-mac/build/include",
"${PROJECT_DIR}/../pEpObjCAdapter/Subprojects/PEPObjCAdapterTypes/build/include",
"${PROJECT_DIR}/../pEpEngine/build-mac/build/include/pEp",
);
MACOSX_DEPLOYMENT_TARGET = 10.10;
MTL_ENABLE_DEBUG_INFO = NO;


Loading…
Cancel
Save