Bug 199362

Summary: Update of net-im/qTox and net-im/toxc to old_api branch, that fixes qTox compile
Product: Ports & Packages Reporter: Yuri Victorovich <yuri>
Component: Individual Port(s)Assignee: Thierry Thomas <thierry>
Status: Closed Overcome By Events    
Severity: Affects Only Me CC: thierry
Priority: ---    
Version: Latest   
Hardware: Any   
OS: Any   
Bug Depends on:    
Bug Blocks: 199358    
Attachments:
Description Flags
patch none

Description Yuri Victorovich freebsd_committer freebsd_triage 2015-04-11 01:43:24 UTC
Created attachment 155442 [details]
patch
Comment 1 Yuri Victorovich freebsd_committer freebsd_triage 2015-04-11 01:44:37 UTC
Turned out toxcore had old-api branch form mid-March, until all clients are updated everybody should be on that branch.

This patch places tocore on this branch, and updates qTox.
Comment 2 Yuri Victorovich freebsd_committer freebsd_triage 2015-04-11 02:29:17 UTC
Poudriere builds succeeded for all 3 of them.
Comment 3 Thierry Thomas freebsd_committer freebsd_triage 2015-04-13 19:15:03 UTC
Have you a pointer about this branch that everybody should follow?

Looking at https://github.com/irungentoo/toxcore I can only find the master branch?
Comment 4 Yuri Victorovich freebsd_committer freebsd_triage 2015-04-13 19:18:01 UTC
Sorry, I used the wrong term. This is the "release" that they made.

Actually, it should have been a branch, but they used the release for this.
Comment 5 Yuri Victorovich freebsd_committer freebsd_triage 2015-04-13 19:42:24 UTC
The problem is that they made this release and didn't tell anybody, and this isn't obvious what to do.

My friends on Arch also complained, they thought Tox is broken. I saw linux people saying that they keep getting some bogus file transfer requests on qTox.

So it should be updated to that branch. I am running it with this patch, no problems for many days ever since this PR.
Comment 6 Thierry Thomas freebsd_committer freebsd_triage 2015-04-13 20:14:58 UTC
Seen. But it causes a problem with the other clients.
E.g. toxic does not build anymore:

  CC    dns.o
In file included from /usr/ports/net-im/toxic/work/toxic-e998c8a/src/configdir.c:32:
/usr/ports/net-im/toxic/work/toxic-e998c8a/src/toxic.h:103:57: error: unknown type name 'TOX_CONNECTION'
void on_connectionchange(Tox *m, uint32_t friendnumber, TOX_CONNECTION status, void *userdata);
                                                        ^
/usr/ports/net-im/toxic/work/toxic-e998c8a/src/toxic.h:104:48: error: unknown type name 'TOX_MESSAGE_TYPE'
void on_message(Tox *m, uint32_t friendnumber, TOX_MESSAGE_TYPE type, const uint8_t *string, size_t length, void *userdata);
                                               ^
/usr/ports/net-im/toxic/work/toxic-e998c8a/src/toxic.h:107:53: error: unknown type name 'TOX_USER_STATUS'; did you mean 'TOX_USERSTATUS'?
void on_statuschange(Tox *m, uint32_t friendnumber, TOX_USER_STATUS status, void *userdata);
                                                    ^~~~~~~~~~~~~~~
                                                    TOX_USERSTATUS                                                                                           
/usr/local/include/tox/tox.h:78:1: note: 'TOX_USERSTATUS' declared here
TOX_USERSTATUS;
...

Same kind of problem for uTox:

  CC    button.o
In file included from button.c:1:
./main.h:42:9: warning: 'TOX_FRIEND_ADDRESS_SIZE' macro redefined
#define TOX_FRIEND_ADDRESS_SIZE TOX_ADDRESS_SIZE
        ^
/usr/local/include/tox/tox.h:48:9: note: previous definition is here
#define TOX_FRIEND_ADDRESS_SIZE (TOX_PUBLIC_KEY_SIZE + sizeof(uint32_t) + sizeof(uint16_t))
        ^
In file included from button.c:1:
./main.h:68:16: error: use of undeclared identifier 'TOX_ADDRESS_SIZE'
    uint8_t id[TOX_FRIEND_ADDRESS_SIZE], msg[0];
               ^
./main.h:42:33: note: expanded from macro 'TOX_FRIEND_ADDRESS_SIZE'
#define TOX_FRIEND_ADDRESS_SIZE TOX_ADDRESS_SIZE
                                ^
In file included from button.c:1:
In file included from ./main.h:104:
./file_transfers.h:30:3: warning: redefinition of typedef 'FILE_TRANSFER' is a C11 feature [-Wtypedef-redefinition]
} FILE_TRANSFER;
...

tox installs the file include/tox/tox_old.h
Is'nt it possible for qTox to use it?
Comment 7 Thierry Thomas freebsd_committer freebsd_triage 2015-04-13 20:19:44 UTC
Note that https://github.com/Tox/qTox is a fork to build with the new API.
Comment 8 Yuri Victorovich freebsd_committer freebsd_triage 2015-04-13 20:21:07 UTC
Ok. I asked them here https://github.com/irungentoo/toxcore/issues/1326
Comment 9 Yuri Victorovich freebsd_committer freebsd_triage 2015-04-13 20:24:02 UTC
But toxcore said that this is their old_api release to be used until qTox catches up.
Comment 10 Yuri Victorovich freebsd_committer freebsd_triage 2015-04-13 20:28:27 UTC
I asked them to publish the list of places where all compatible clients are.
Comment 11 Thierry Thomas freebsd_committer freebsd_triage 2015-04-13 20:47:48 UTC
(In reply to yuri from comment #8)
Thanks, I'll watch for the replies.
Comment 12 Thierry Thomas freebsd_committer freebsd_triage 2015-04-24 16:09:19 UTC
According to
https://github.com/tux3/qTox/issues/1520#issuecomment-95939916
"qTox is now completely ported to the new API".

Could you please check it?
Comment 13 Thierry Thomas freebsd_committer freebsd_triage 2015-04-27 16:03:20 UTC
Superseded by PR ports/199726.