Giter Site home page Giter Site logo

twinkle's Introduction

Build

Twinkle

Twinkle is a SIP-based VoIP client.

Dependencies

To compile Twinkle you need the following libraries:

  • A standard library with C++11 support (at least version 4.9 for libstdc++)
  • ucommon GNU uCommon C++
  • ccRTP (version >= 1.5.0) GNU RTP Stack
  • libxml2
  • libsndfile
  • libmagic
  • libreadline
  • Qt 5 โ€“ more specifically, the following submodules:
    • base
    • declarative
    • tools

The following tools are also required:

  • cmake
  • bison
  • flex

Optional dependencies

Build

First of all, choose which options you want to have enabled.

All possible options are:

  • Qt 5 GUI: -DWITH_QT5=On (on by default)
  • D-Bus use: -DWITH_DBUS=On (on by default, requires WITH_QT5)
  • ALSA support: -DWITH_ALSA=On (on by default)
  • ZRTP support: -DWITH_ZRTP=On
  • G.729A codec support: -DWITH_G729=On
  • Speex codec support: -DWITH_SPEEX=On
  • iLBC codec support: -DWITH_ILBC=On
  • Diamondcard support: -DWITH_DIAMONDCARD=On
  • Akonadi support: -DWITH_AKONADI=On (requires WITH_QT5)

Build instructions

# Create a subdirectory for the build an enter it
mkdir build && cd build

# Run cmake with a list of build options
cmake .. -Dexample_option=On

# Build Twinkle
make

# Install Twinkle
make install

Shared user data

Installation will create the following directory for shared user data on your system:

${CMAKE_INSTALL_PREFIX}/share/twinkle

The typical default value for CMAKE_INSTALL_PREFIX is /usr/local.

Application icon

If you want to create an application link on your desktop you can find an application icon in the shared user data directory:

  • twinkle16.png (16x16 icon)
  • twinkle32.png (32x32 icon)
  • twinkle48.png (48x48 icon)

User data

On first run Twinkle will create the .twinkle directory in your home directory. In this directory all user data will be put:

  • user profiles (.cfg)
  • log files (.log)
  • system settings (twinkle.sys)
  • call history (twinkle.ch)
  • lock file (twinkle.lck)

Starting Twinkle

Give the command: twinkle

twinkle -h will show you some command line options you may use.

NOTE: the CLI option is not fool proof. A command given at a wrong time may crash the program. It is recommended to use the GUI.

If you do not specify a configuration file (-f <profile>) on the command line, then Twinkle will look for configuration files in your .twinkle directory.

If you do not have any configuration file, the configuration file editor will startup so you can create one. If you have configuration files, then Twinkle lets you select an existing configuration file. See below for some hints on settings to be made with the profile configuration editor.

If you specify a configuration file name, then Twinkle will such for this configuration file in your .twinkle directory. If you have put your configuration file in another location you have to specify the full path name for the file, i.e. starting with a slash.

NOTE: the configuration file editor only exists in the GUI. If you run the CLI mode, you must have a configuration file. So first create a configuration file in GUI mode or hand edit a configuration file, before running the CLI mode. If you run the CLI mode and you do not specify a file name on the command line, then Twinkle will use twinkle.cfg

NAT

If there is a NAT between you and your SIP server then you have 3 options to make things work:

  1. Your SIP provider uses a Session Border Controller
  2. Your SIP provider offers a STUN server
  3. Make static address mappings in your NAT for SIP and RTP

STUN can be enabled in the NAT section of the user profile.

For the static address mappings enable the following in the NAT section of the user profile:

  Use statically configured public IP address inside SIP messages

And fill in the public IP address of your NAT.

Twinkle will then use this IP address inside SIP headers and SDP bodies instead of the private IP address of your machine.

In addition you have to add the following port forwardings for UDP on your NAT

public:5060 --> private:5060 (for SIP signaling)
public:8000 --> private:8000 (for RTP on line 1)
public:8001 --> private:8001 (for RTCP on line 1)
public:8002 --> private:8002 (for RTP on line 2)
public:8003 --> private:8003 (for RTCP on line 2)
public:8004 --> private:8004 (for RTP for call transfer)
public:8005 --> private:8005 (for RTCP for call transfer)

If you have changed the SIP/RTP ports in your profile you have to change the port forwarding rules likewise.

Log files

During execution Twinkle will create the following log files in your .twinkle directory:

  • twinkle.log (latest log file)
  • twinkle.log.old (previous log file)

When twinkle.log is full (default is 5 MB) then it is moved to twinkle.log.old and a new twinkle.log is created.

On startup an existing twinkle.log is moved to twinkle.log.old and a new twinkle.log is created.

User profile configuration

A user profile contains information about your user account, SIP proxy, and several SIP protocol options. If you use Twinkle with different user accounts you may create multiple user profiles.

When you create a new profile you first give it a name and then you can make the appropriate settings. The name of the profile is what later on appears in the selection box when you start Twinkle again. Or you can give the name.cfg at the command line (-f option) to immediately start that profile.

The user profile is stored as <name>.cfg in the .twinkle directory where <name> is the name you gave to the profile.

At a minimum you have to specify the following:

  • User name: this is your SIP user name (eg. phone number)
  • Domain: the domain of your provider (eg. fwd.pulver.com) this could also be the IP address of your SIP proxy if you want to do IP-to-IP dialing (without proxy) then fill in the IP address or FQDN of your computer.

If your SIP proxy does not request authentication and the value you filled in for 'Domain' can be resolved to an IP address by Twinkle, eg. it is an IP address or an FQDN that is in an A-record of the DNS, then you are ready now.

Authentication

If your proxy needs authentication, then specify the following fields in the SIP authentication box:

  • Realm: the realm for authentication you might leave the realm empty. If you do so, then Twinkle will use the name and password regardless of the realm put in the challenge by the proxy. For most network setups this is fine. You only need to explicitly specify a realm when you have call scenario's where you have to access multiple realms. Then for the realms not known to Twinkle you will be requested for a login when needed.
  • Name: your authentication name
  • Password: your authentication password

If authentication fails during registration or any other SIP request because you filled in wrong values, then Twinkle will at that time interactively request your login and cache it.

Outbound proxy

An outbound proxy is only needed if the domain value cannot be resolved to an IP address by Twinkle or because your provider demands you to use an outbound proxy that is at a different IP address.

Check the 'use outbound proxy' check box in the SIP server section. For outbound proxy fill in an IP address or an FQDN that can be resolved to an IP address via DNS.

By default only out-of-dialog requests (eg. REGISTER, OPTIONS, initial INVITE) are sent to the outbound proxy. In-dialog requests (eg. re-INVITE, BYE) are sent to the target indicated by the far end during call setup. By checking 'send in-dialog requests to proxy' Twinkle will ignore this target and send these requests also to the proxy. Normally you would not need this. It could be useful in a scenario where the far-end indicates a target that cannot be resolved to an IP address.

By checking "Do not send a request to proxy if its destination can be resolved locally" will make Twinkle always first try to figure out the destination IP address itself, i.e. based on the request-URI and Route-headers. Only when that fails the outbound-proxy will be tried, but only for the options checked above. I.e. if you did not check the 'in-dialog' option, then an in-dialog request will never go to the proxy. If its destination cannot be resolved, then the request will simply fail.

Registrar

By default a REGISTER will be send to the IP address resolved from the domain value or to the outbound proxy if specified.

If your service provider has a dedicated registrar which is different from these IP addresses, then you can specify the IP or FQDN of the registrar in the registrar-field.

The 'expiry' value is the expiry of your registration. Just before the registration expires Twinkle will automatically refresh the registration. The expiry time may be overruled by the registrar.

The 'registrar at startup option' will make Twinkle automatically send a REGISTER on startup of the profile.

Addressing

When you invite someone to a call you have to enter an address. A SIP address has the following form:

sip:<user>@<host-part>

Where 'user' is a user name or a phone number and 'host-part' is a domain name, FQDN or IP address

The only mandatory part for you to enter is the <user>. Twinkle will fill in the other parts if you do not provide them. For the host-part, Twinkle will fill in the value you configured as your domain.

Currently sip: is the only addressing scheme supported by Twinkle.

Michel de Boer [[email protected]]

Lubos Dolezel [[email protected]]

twinkle's People

Contributors

4-floss-free-libre-open-source-software avatar atalanttore avatar bart-webleads avatar dleonard0 avatar f0k avatar fbriere avatar glixx avatar gwozniak avatar johannesk avatar jose1711 avatar lpmi-13 avatar lubosd avatar manisandro avatar matchuek avatar mkubecek avatar omni6 avatar palinek avatar petercolberg avatar traud avatar urbanware-org avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

twinkle's Issues

[Patch] Update desktop file

diff -ur twinkle-1.9.0.orig/twinkle.desktop.in twinkle-1.9.0/twinkle.desktop.in
--- twinkle-1.9.0.orig/twinkle.desktop.in   2015-07-13 22:14:07.000000000 +0300
+++ twinkle-1.9.0/twinkle.desktop.in    2015-08-25 00:12:46.000000000 +0300
@@ -1,11 +1,45 @@
 [Desktop Entry]
-Encoding=UTF-8
 Name=Twinkle
 GenericName=A SIP softphone
-Comment=A SIP softphone
+GenericName[cy]=Ffรดn meddal SIP
+GenericName[da]=SIP IP-telefoni
+GenericName[el]=ฮ›ฮฟฮณฮนฯƒฮผฮนฮบฯŒ ฯ„ฮทฮปฮญฯ†ฯ‰ฮฝฮฟ SIP
+GenericName[es]=Un telรฉfono liviano SIP
+GenericName[et]=SIP-arvutitelefon
+GenericName[eu]=SIP softfono bat
+GenericName[fi]=SIP-ohjelmistopuhelin
+GenericName[fr]=Tรฉlรฉphone logiciel SIP
+GenericName[gl]=Un telรฉfono SIP por software
+GenericName[hu]=Szoftveres telefon (SIP)
+GenericName[it]=Telefono VoIP SIP
+GenericName[ja]=SIP ใƒ“ใƒ‡ใ‚ช้›ป่ฉฑ
+GenericName[nb]=SIP IP-telefoni
+GenericName[nl]=Een SIP-softphone
+GenericName[nn]=SIP IP-telefoni
+GenericName[pl]=Telefon SIP
+GenericName[pt]=Um softphone SIP
+GenericName[pt_BR]=Um softphone SIP
+GenericName[ro]=Un program de telefonie SIP
+GenericName[ru]=ะŸั€ะพะณั€ะฐะผะผะฝั‹ะน ั‚ะตะปะตั„ะพะฝ SIP
+GenericName[sl]=Programski telefon za SIP
+GenericName[sv]=En SIP Videotelefon
+GenericName[tr]=Bir SIP telefon
+GenericName[uk]=ะŸั€ะพะณั€ะฐะผะฝะธะน ั‚ะตะปะตั„ะพะฝ SIP
+Comment=Voice over Internet Protocol (VoIP) SIP Phone
+Comment[cs]=VoIP (Voice over Internet Protocol) telefon SIP
+Comment[da]=Voice over Internet Protocol (VoIP) SIP-telefon
+Comment[de]=VoIP-SIP-Softwaretelefon
+Comment[ko]=Voice over Internet Protocol (VoIP) SIP ํฐ
+Comment[it]=Telefono SIP VoIP (Voice over Internet Protocol)
+Comment[ja]=Voice over Internet Protocol (VoIP) SIP ้›ป่ฉฑ
+Comment[pl]=Aplikacja telefoniczna do VoIP (Voice over Internet Protocol), wykorzystujฤ…ca SIP
+Comment[pt]=Telefone SIP Voz sobre IP (Voice over Internet Protocol - VoIP)
+Comment[pt_BR]=Telefone SIP de voz sobre protocolo de internet (VoIP)
+Comment[ru]=VoIP (ะฟะตั€ะตะดะฐั‡ะฐ ะณะพะปะพัะฐ ะฟะพ IP-ะฟั€ะพั‚ะพะบะพะปัƒ) SIP-ั‚ะตะปะตั„ะพะฝ
+Comment[uk]=VoIP (ะฟะตั€ะตะดะฐั‡ะฐ ะณะพะปะพััƒ ะฟะพ IP-ะฟั€ะพั‚ะพะบะพะปัƒ) SIP-ั‚ะตะปะตั„ะพะฝ
 Type=Application
 Exec=twinkle
-Icon=@datadir@/twinkle48.png
+Icon=twinkle
 StartupNotify=true
 Terminal=false
-Categories=Qt;KDE;Network;Telephony;
+Categories=Qt;Network;Telephony;

Crash when initial profile creation is cancelled.

Steps to reproduce:

  1. Remove (or rename) ~/.twinkle so that it does not exist.
  2. Start twinkle.
  3. Confirm the information dialog.
  4. Press "Profile editor".
  5. Instead of entering a profile name, press "Cancel".

(Entering a profile name and pressing "Cancel" in the profile editor leads to the same result.)

The crash occurs in a separate thread but I have trouble finding where exactly as gdb cannot resolve the symbol. So far it seems that if SelectProfileForm::execForm() takes the "return QDialog::Rejected" path, some helper thread is left behind and crashes.

BLF

First I would like to thank you for reviving Twinkle, it used to be my favorite SIP client on Linux, but it was very hard to impossible to install/configure it on newer distributions.

I have a suggestion: it would be nice if "buddies" would act as real BLF buttons, since they are already using SIP subscriptions and probably get necessary information from Asterisk, so they change icon when buddy is ringing/busy/in dnd state/etc, as can be found in https ://wiki.asterisk.org/wiki/display/AST/Device+State, and not only online/offline as it seems to be doing now.

Best regards and keep up the good work,
Siniลกa Bandin

Add icon installation

Please add "make install" for icons:

mkdir -p /usr/share/icons/hicolor/{16x16,24x24,32x32,48x48,scalable}/apps
install -m 0644 src/gui/images/twinkle48.png /usr/share/icons/hicolor/48x48/apps/twinkle.png
install -m 0644 src/gui/images/twinkle32.png /usr/share/icons/hicolor/32x32/apps/twinkle.png
install -m 0644 src/gui/images/twinkle24.png /usr/share/icons/hicolor/24x24/apps/twinkle.png
install -m 0644 src/gui/images/twinkle16.png /usr/share/icons/hicolor/16x16/apps/twinkle.png
install -m 0644 data/twinkle.svg /usr/share/icons/hicolor/scalable/apps/twinkle.svg

Please port away from Qt Quick 1

QtQuick1 (which provides QDeclarative* classes) is deprecated upstream and is not part of Qt 5.6 release.

Please port this module to Qt Quick 2 if you want it to work with Qt 5.6. See this page for details.

Randomly crashes when closing Log window

Twinkle will often crash in random ways when closing the Log window via the "Close" button. (For some reason, this does not seem to happen when using the Esc key to close the window, although this may cause Twinkle to segfault at the very end after quitting.)

This is all caused by a race condition between the deletion of sema_logview and the termination of the logview thread.

D-Bus interface

Twinkle can be controlled via "command line", but not via D-Bus yet.

Remember main window size.

On my system, default window size is insufficient to show all buttons on the top bar (probably because of localization). Having to adjust window size each time is a bit annoying.

call list sorting alphanumerical

Sorting of the calling list by date/time is currently accomplished alphanumerically, which obviously does not work, unless the entries are in the ISO-form YYYY-MM-DD HH:MM:SS; sorting should be done by time() -- seconds since 1970 or something.

Crash on profile registration when compiled with libstdc++ 4.8

After authorising successfully with the SIP server, twinkle crashes. This is the complete output in the console:
Language name: "en"
terminate called after throwing an instance of 'std::regex_error'
what(): regex_error
Aborted (core dumped)

Another case was reported by the user which I did not witness, so I cannot tell when it happened exactly:
Language name: "en"
Qt has caught an exception thrown from an event handler. Throwing
exceptions from an event handler is not supported in Qt. You must
reimplement QApplication::notify() and catch all exceptions there.

Segmentation fault (core dumped)

The system on which it is run:
Linux 112 3.16.0-50-generic #67~14.04.1-Ubuntu SMP Fri Oct 2 22:07:51
UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

Elementary OS Freya (GNU/Linux 3.16.0-43-generic x86_64)

Last message in the Twinkle log:
+++ 27-10-2015 18:02:58.723583 INFO SIP ::send_sip_udp
Send to: udp:192.168.1.6:5060
PUBLISH sip:[email protected] SIP/2.0
Via: SIP/2.0/UDP 192.168.1.109;rport;branch=z9hG4bKeisndyxh
Max-Forwards: 70
To: "XXX" sip:[email protected]
From: "XXX" sip:[email protected];tag=oyycx
Call-ID: ugumicprfumiyjy@XXX
CSeq: 65 PUBLISH
Content-Type: application/pidf+xml
Event: presence
Expires: 3600
User-Agent: Twinkle/1.9.0
Content-Length: 189

open

Cannot find the dumped core to analyse it. I guess it tries to run regex on received response and fails? But twinkle-console does not crash, registers alright.
Will appreciate any suggestion. Thank you!

User profiles can't be disabled

I have multiple user profiles and I want to keep some of them disabled (they're just for testing etc.). But If I go to Edit > System settings and disable some of them in the General tab, group Startup, the selection isn't registered, they're still all considered enabled. Other settings get saved properly.

This applies to Twinkle 1.9.0 - 10 July 2015

(Unrelated: thanks for reviving Twinkle!)

Not all strings were marked for translation

For example:
src/parser/response.h:#define REASON_487 "Request Terminated"
src/parser/response.h:#define REASON_183 "Session Progress"
src/userintf.h:#define PRODUCT_AUTHOR "Michel de Boer and contributors"
src/sys_settings.cpp:
s += " comes with ABSOLUTELY NO WARRANTY.";
s += "This program is free software; you can redistribute it and/or modify";
s += "it under the terms of the GNU General Public License as published by";
s += "the Free Software Foundation; either version 2 of the License, or";
s += "(at your option) any later version.";
etc.

Missing in TS files src/gui/addresstablemodel.cpp:
return tr("Name");
return tr("Phone");
return tr("Remark");

All code needs review.

build against libzrtpcpp 4 fails

A build against zrtpcpp library version 4 (available and default e.g. in openSUSE 13.2 and openSUSE Factory) fails. The obvious problem is that <libzrtpcpp/zrtpccrtp.h> now (since version 3.0.0) includes <ZrtpQueue.h> rather than <libzrtpcpp/ZrtpQueue.h>. There might be more subtle incompatibilities, however.

This is not really pressing yet as even openSUSE Factory still provides zrtpcpp2-devel package to build against zrtpcpp 2.

OSD with mute & hangup buttons

Add optional in-call OSD that would have the following traits:

  • button to hang up
  • button to mute the microphone
  • remote party name
  • call duration

Pretty much like what Skype has...

Can't set stun or static IP address in user profile settings (fields are greyed out)

Hi,
I'm using Twinkle 1.9.0 - 10 July 2015, until now I don't need to change settings in Transport/Nat tab, but yesterday this momemnt came.
After clicking radio button "Use statically configured public IP inside SIP messages" or "Use STUN" fields for put IP/FQDN are stiil greyed out and can't write there anything.
Clicking Ok when radio button is changed returns message window with info eg. "Value for public address missing".
I tried change this value when creating new accont - same result.
As workaround I wrote IP address for nat to ~/.twinkle/xxx.cfg file it works.
Could you improve gui :) ?

Redesign audio playback

Audio playback code in t_audio_tx is very badly designed. Audio device underruns are standard part of the code's lifecycle and are even used to detect jitter buffer emptiness.

This results in crackling sound with PulseAudio. It also makes it very difficult to implement #3 properly.

Correct design should not do any sleeps in the audio thread. It should poll the RTP/decode/jitter logic for more data. If none are given, silence should be generated.

I also recommend only using a fixed sample rate such as 44100 for playback and resample incoming audio via libresample. This makes it easy for injected sounds (DTMF, end of call beep, etc.) to always have the same quality.

Crash when changing active profiles

In File -> Change User...

#0  0x00007ffff3dce0a0 in __cxa_throw () from /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/libstdc++.so.6
#1  0x000000000085dc65 in t_rwmutex::lockRead() ()
#2  0x000000000072ca54 in t_rwmutex_reader::t_rwmutex_reader(t_rwmutex&) ()
#3  0x000000000071a313 in t_phone::find_phone_user(std::string const&) const ()
#4  0x0000000000729ef3 in t_phone::remove_phone_user(t_user const&) ()
#5  0x00000000005c224e in MphoneForm::newUsers(std::list<std::string, std::allocator<std::string> > const&) ()
#6  0x00000000006c174a in MphoneForm::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) ()
#7  0x00007ffff433bd5e in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQt5Core.so.5
#8  0x00000000006c2cb9 in SelectProfileForm::selection(std::list<std::string, std::allocator<std::string> > const&) ()
#9  0x000000000066067e in SelectProfileForm::runProfile() ()
#10 0x00000000006c2815 in SelectProfileForm::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) ()
#11 0x00007ffff433bd5e in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQt5Core.so.5
#12 0x00007ffff5f98dc2 in QAbstractButton::clicked(bool) () from /usr/lib64/libQt5Widgets.so.5
#13 0x00007ffff5cee9f5 in ?? () from /usr/lib64/libQt5Widgets.so.5
#14 0x00007ffff5cef659 in ?? () from /usr/lib64/libQt5Widgets.so.5
#15 0x00007ffff5cef814 in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib64/libQt5Widgets.so.5
#16 0x00007ffff5c556c8 in QWidget::event(QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#17 0x00007ffff5c124fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#18 0x00007ffff5c18203 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#19 0x00007ffff430c73b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQt5Core.so.5
#20 0x00007ffff5c16d1a in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib64/libQt5Widgets.so.5
#21 0x00007ffff5c6d9c0 in ?? () from /usr/lib64/libQt5Widgets.so.5
#22 0x00007ffff5c6fb33 in ?? () from /usr/lib64/libQt5Widgets.so.5
#23 0x00007ffff5c124fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#24 0x00007ffff5c17940 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#25 0x00007ffff430c73b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQt5Core.so.5
#26 0x00007ffff48c45e3 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /usr/lib64/libQt5Gui.so.5
#27 0x00007ffff48c61c5 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () from /usr/lib64/libQt5Gui.so.5
#28 0x00007ffff48ab0cf in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Gui.so.5
#29 0x00007fffea3af600 in ?? () from /usr/lib64/qt5/plugins/platforms/libqxcb.so
#30 0x00007ffff07dc754 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#31 0x00007ffff07dc998 in g_main_context_iterate.isra () from /usr/lib64/libglib-2.0.so.0
#32 0x00007ffff07dca3c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#33 0x00007ffff4363a47 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#34 0x00007ffff4309fd2 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#35 0x00007ffff4311a7c in QCoreApplication::exec() () from /usr/lib64/libQt5Core.so.5
#36 0x000000000068d296 in t_gui::run() ()
#37 0x00000000006ab3b3 in main ()

spurious-executable-perm

twinkle-debuginfo.i586: W: spurious-executable-perm /usr/src/debug/twinkle-1.9.0/src/parser/response.cpp

Remember OSD/popup location

Remember the location of in-call OSR and incoming call popup.
(The incoming call popup is also currently no moveable.)

Incoming call notifications

Twinkle used to have a popup notification for incoming calls. This was part of KDE3 integration, which is currently disabled.

This needs to be reimplemented, probably as a QML-based popup (like the OSD during calls).

incorrect-fsf-address

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_sip_if_match.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/parse_ctrl.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_subject.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_content_type.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/rtp_telephone_event.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/phone.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/epa.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_in_reply_to.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_supported.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_retry_after.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_request_disposition.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_user_agent.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_cseq.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_proxy_authenticate.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/route.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/identity.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/stun/stun_transaction.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_to.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/listener.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/im/msg_session.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_unsupported.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/challenge.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_allow_events.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_error_info.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_authorization.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_proxy_require.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sockets/interfaces.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/session.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/inviteform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/response.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_date.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_service_route.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/audio_codecs.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/service.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_referred_by.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/transaction_mgr.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_organization.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/termcapform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/redirect.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/transaction_mgr.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/tone_gen.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/addresscardform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_allow.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/definitions.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/presence/presence_state.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/address_finder.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_reply_to.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audits/memman.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/log.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_via.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/audio_tx.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_error_info.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_refer_sub.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_user_agent.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_route.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_event.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_replaces.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/buddylistview.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_date.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sockets/socket.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/redirectform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/presence/buddy.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sockets/connection_table.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/yesnodialog.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/patterns/observer.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/messageform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/translator.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/redirect.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sub_refer.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_content_type.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/utils/mime_database.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/client_request.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/request.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/session.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/userintf.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/threads/mutex.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/parse_ctrl.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/audio_device.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/userprofileform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/address_finder.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_content_length.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/coding.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_content_disp.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_retry_after.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/audio_codecs.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_alert_info.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/transaction.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/audio_decoder.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_min_expires.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/phone_user.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/buddyform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_from.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/user.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/im/msg_session.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/threads/sema.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_content_encoding.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_proxy_require.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/selectnicform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/mwi/mwi_subscription.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_timestamp.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/wizardform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_call_info.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/definitions.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/coding.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/parameter.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_record_route.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_supported.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/client_request.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_referred_by.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/header.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/transaction_layer.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/presence/pidf_body.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_www_authenticate.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_www_authenticate.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_sip_if_match.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_allow.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/messageformview.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_content_language.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/exceptions.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/audio_device.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/log.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/mwi/mwi_dialog.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_priority.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/call_script.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/sip_body.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/credentials.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/phone.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sdp/sdp.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_replaces.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_accept.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/buddylistview.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_in_reply_to.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/freq_gen.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/qt_translator.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_require.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/phone_user.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_contact.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/freq_gen.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/id_object.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sdp/sdp_parse_ctrl.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sys_settings.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_rseq.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sdp/sdp_parse_ctrl.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/abstract_dialog.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_timestamp.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/audio_encoder.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/util.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_proxy_authorization.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/mwi/mwi_dialog.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sender.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/rtp_telephone_event.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_p_preferred_identity.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sockets/socket.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_subject.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_auth_info.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/media_buffer.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/selectuserform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/dialog.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/command_args.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/yesnodialog.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/subscription_dialog.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_request_disposition.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_content_language.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/twinkleapplication.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sockets/connection.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/address_book.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/audio_session.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/presence/presence_dialog.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_sip_etag.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_p_asserted_identity.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/diamondcardprofileform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/challenge.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/audio_rx.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/auth.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/main.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/credentials.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/mwi/simple_msg_sum_body.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/prohibit_thread.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/timekeeper.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/audio_tx.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/tone_gen.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_privacy.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audits/memman.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/parameter.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/diamondcard.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/presence/presence_dialog.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/timekeeper.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/threads/thread.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/media_type.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_warning.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/srvredirectform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_accept.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/subscription.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sockets/connection.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/selectprofileform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_rseq.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_accept_language.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/line.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/media_type.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/utils/record_file.hpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/presence/presence_state.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/call_history.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_refer_to.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_mime_version.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/auth.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/gui.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/mwi/mwi_subscription.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/userintf.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_record_route.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/utils/record_file.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/presence/pidf_body.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/threads/mutex.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/presence/presence_subscription.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/syssettingsform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_allow_events.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/media_buffer.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_organization.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/im/im_iscomposing_body.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_expires.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_p_preferred_identity.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/audio_rx.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_refer_sub.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_alert_info.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/subscription_dialog.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/cmd_socket.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/dialog.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/mwi/mwi.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_event.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/historyform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/twinkle_rtp_session.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sequence_number.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_call_id.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/events.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/patterns/observer.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_priority.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/audio_decoder.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_reply_to.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/call_script.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sockets/url.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/request.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/transaction_layer.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_auth_info.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_subscription_state.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/threads/sema.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/address_book.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/addresstablemodel.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_proxy_authenticate.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/events.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/service.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/identity.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_refer_to.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_sip_etag.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sdp/sdp.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/audio_session.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/mwi/simple_msg_sum_body.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_call_id.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/presence/presence_epa.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_rack.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sockets/connection_table.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/call_history.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/route.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_accept_encoding.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_accept_encoding.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/threads/thread.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_via.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/audio_encoder.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/gui.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/utils/file_utils.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_server.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_require.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_route.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_authorization.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_warning.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/sip_message.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/sendfileform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sockets/url.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/response.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/presence/buddy.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_service_route.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/twinkleapplication.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sys_settings.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_proxy_authorization.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/dtmf_player.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/epa.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_p_asserted_identity.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/sip_message.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_privacy.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_contact.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/utils/file_utils.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/authenticationform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/util.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_call_info.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/header.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/abstract_dialog.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_content_length.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/presence/presence_epa.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/sip_body.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_rack.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_cseq.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/transaction.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/id_object.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_expires.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_to.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sockets/interfaces.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/twinkle_rtp_session.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/cmd_socket.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/diamondcard.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/getaddressform.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_accept_language.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/utils/mime_database.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_content_encoding.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_max_forwards.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_from.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_server.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/im/im_iscomposing_body.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/user.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/stun/stun_transaction.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/prohibit_thread.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_subscription_state.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/audio/dtmf_player.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sub_refer.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/addresstablemodel.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/protocol.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/main.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/gui/messageformview.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/mwi/mwi.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_unsupported.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/sockets/dnssrv.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_min_expires.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_content_disp.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/line.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/subscription.cpp

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_mime_version.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/parser/hdr_max_forwards.h

twinkle-debuginfo.i586: W: incorrect-fsf-address /usr/src/debug/twinkle-1.9.0/src/presence/presence_subscription.cpp

Implement call recording.

A feature to record a call would be quite handy. My idea is:

  • a switch to automatically record every call
  • a button that would start recording current call (or record next call if pushed when there is no call)

Twinkle freezes during the call transfer

When I try to transfer the call to "Call transfer with consultation (attended call transfer)" Twinkle freezes and does not respond to anything. When call trasfer "blindly" works fine. Tried to use version 1.9.0 and 1.10.0.
And on version 1.4.0 it works.

twinkle hangs when it receives REFER and pops up transfer window

I gave Twinkle 1:1.10.0+dfsg-1~bpo8+1 from Debian jessie backports a try.

When twinkle receives REFER it pops up a window asking (Yes/No) permission for the call
transfer. Unfortunately at that point twinkle hangs and Yes/No buttons
are not responsive. At that point, twinkle reports to console:

QObject::setParent: Cannot set parent, new parent is in a different thread
QLayout: Attempting to add QLayout "" to YesNoDialog "", which already has a layout
QObject::connect: Cannot queue arguments of type 'QTextBlock'
(Make sure 'QTextBlock' is registered using qRegisterMetaType().)

Regards,

-- Juha

cmake configuration error..not compiling

I have stumbled at the below error..heck ...and I have included logs too for your "debugging eyes"

`
bhaskar@ArchLinux_19:31:45_Wed Sep 21:~/git-linux/twinkle/build>cmake .. -DWITH_ALSA=On -DWITH_SPEEX=On -DWITH_ILBC=On -DWITH_ZRTP=On -DWITH_G729=On -DWITH_QT5=On
-- The C compiler identification is GNU 6.2.1
-- The CXX compiler identification is GNU 6.2.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found LibXml2: /usr/lib64/libxml2.so (found version "2.9.4")
-- libmagic version: 5.28
-- Found LibMagic: /usr/lib64/libmagic.so
-- Found LibSndfile: /usr/lib64/libsndfile.so
-- Found Readline: /usr/include
-- Found BISON: /usr/bin/bison (found version "3.0.4")
-- Found FLEX: /usr/bin/flex (found version "2.6.1")
CMake Error at cmake/FindCommoncpp.cmake:15 (MESSAGE):
Could NOT find commoncpp development files
Call Stack (most recent call first):
CMakeLists.txt:29 (find_package)

-- Configuring incomplete, errors occurred!
See also "/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeOutput.log".

`

`
bhaskar@ArchLinux_19:39:42_Wed Sep 21:~/git-linux/twinkle/build/CMakeFiles>cat CMakeOutput.log
The system is: Linux - 4.7.2-1-ARCH - x86_64
Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
Compiler: /usr/bin/cc
Build flags:
Id flags:

The output was:
0

Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out"

The C compiler identification is GNU, found in "/home/bhaskar/git-linux/twinkle/build/CMakeFiles/3.6.2/CompilerIdC/a.out"

Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
Compiler: /usr/bin/c++
Build flags:
Id flags:

The output was:
0

Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out"

The CXX compiler identification is GNU, found in "/home/bhaskar/git-linux/twinkle/build/CMakeFiles/3.6.2/CompilerIdCXX/a.out"

Determining if the C compiler works passed with the following output:
Change Dir: /home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_e1366/fast"
/usr/bin/make -f CMakeFiles/cmTC_e1366.dir/build.make CMakeFiles/cmTC_e1366.dir/build
make[1]: Entering directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_e1366.dir/testCCompiler.c.o
/usr/bin/cc -o CMakeFiles/cmTC_e1366.dir/testCCompiler.c.o -c /home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp/testCCompiler.c
Linking C executable cmTC_e1366
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_e1366.dir/link.txt --verbose=1
/usr/bin/cc CMakeFiles/cmTC_e1366.dir/testCCompiler.c.o -o cmTC_e1366 -rdynamic
make[1]: Leaving directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'

Detecting C compiler ABI info compiled with the following output:
Change Dir: /home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_cefaf/fast"
/usr/bin/make -f CMakeFiles/cmTC_cefaf.dir/build.make CMakeFiles/cmTC_cefaf.dir/build
make[1]: Entering directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_cefaf.dir/CMakeCCompilerABI.c.o
/usr/bin/cc -o CMakeFiles/cmTC_cefaf.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.6/Modules/CMakeCCompilerABI.c
Linking C executable cmTC_cefaf
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_cefaf.dir/link.txt --verbose=1
/usr/bin/cc -v CMakeFiles/cmTC_cefaf.dir/CMakeCCompilerABI.c.o -o cmTC_cefaf -rdynamic
Using built-in specs.
COLLECT_GCC=/usr/bin/cc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --enable-shared --enable-threads=posix --enable-libmpx --with-system-zlib --with-isl --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=gnu --disable-libstdcxx-pch --disable-libssp --enable-gnu-unique-object --enable-linker-build-id --enable-lto --enable-plugin --enable-install-libiberty --with-linker-hash-style=gnu --enable-gnu-indirect-function --disable-multilib --disable-werror --enable-checking=release
Thread model: posix
gcc version 6.2.1 20160830 (GCC)
COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_cefaf' '-rdynamic' '-mtune=generic' '-march=x86-64'
/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/collect2 -plugin /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/lto-wrapper -plugin-opt=-fresolution=/tmp/ccrgq2bw.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr --hash-style=gnu -m elf_x86_64 -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o cmTC_cefaf /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/crtbegin.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1 -L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../.. CMakeFiles/cmTC_cefaf.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/crtend.o /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crtn.o
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_cefaf' '-rdynamic' '-mtune=generic' '-march=x86-64'
make[1]: Leaving directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'

Parsed C implicit link information from above output:
link line regex: [^( _|._[/])(ld|([^/]+-)?ld|collect2)[^/]*( |$)]
ignore line: [Change Dir: /home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp]
ignore line: []
ignore line: [Run Build Command:"/usr/bin/make" "cmTC_cefaf/fast"]
ignore line: [/usr/bin/make -f CMakeFiles/cmTC_cefaf.dir/build.make CMakeFiles/cmTC_cefaf.dir/build]
ignore line: [make[1]: Entering directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp']
ignore line: [Building C object CMakeFiles/cmTC_cefaf.dir/CMakeCCompilerABI.c.o]
ignore line: [/usr/bin/cc -o CMakeFiles/cmTC_cefaf.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.6/Modules/CMakeCCompilerABI.c]
ignore line: [Linking C executable cmTC_cefaf]
ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_cefaf.dir/link.txt --verbose=1]
ignore line: [/usr/bin/cc -v CMakeFiles/cmTC_cefaf.dir/CMakeCCompilerABI.c.o -o cmTC_cefaf -rdynamic ]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/cc]
ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/lto-wrapper]
ignore line: [Target: x86_64-pc-linux-gnu]
ignore line: [Configured with: /build/gcc/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --enable-shared --enable-threads=posix --enable-libmpx --with-system-zlib --with-isl --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=gnu --disable-libstdcxx-pch --disable-libssp --enable-gnu-unique-object --enable-linker-build-id --enable-lto --enable-plugin --enable-install-libiberty --with-linker-hash-style=gnu --enable-gnu-indirect-function --disable-multilib --disable-werror --enable-checking=release]
ignore line: [Thread model: posix]
ignore line: [gcc version 6.2.1 20160830 (GCC) ]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_cefaf' '-rdynamic' '-mtune=generic' '-march=x86-64']
link line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/collect2 -plugin /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/lto-wrapper -plugin-opt=-fresolution=/tmp/ccrgq2bw.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr --hash-style=gnu -m elf_x86_64 -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o cmTC_cefaf /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/crtbegin.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1 -L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../.. CMakeFiles/cmTC_cefaf.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/crtend.o /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crtn.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/collect2] ==> ignore
arg [-plugin] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/liblto_plugin.so] ==> ignore
arg [-plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/lto-wrapper] ==> ignore
arg [-plugin-opt=-fresolution=/tmp/ccrgq2bw.res] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [-plugin-opt=-pass-through=-lc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [--build-id] ==> ignore
arg [--eh-frame-hdr] ==> ignore
arg [--hash-style=gnu] ==> ignore
arg [-m] ==> ignore
arg [elf_x86_64] ==> ignore
arg [-export-dynamic] ==> ignore
arg [-dynamic-linker] ==> ignore
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
arg [-o] ==> ignore
arg [cmTC_cefaf] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crt1.o] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crti.o] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/crtbegin.o] ==> ignore
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1]
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib]
arg [-L/lib/../lib] ==> dir [/lib/../lib]
arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../..] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../..]
arg [CMakeFiles/cmTC_cefaf.dir/CMakeCCompilerABI.c.o] ==> ignore
arg [-lgcc] ==> lib [gcc]
arg [--as-needed] ==> ignore
arg [-lgcc_s] ==> lib [gcc_s]
arg [--no-as-needed] ==> ignore
arg [-lc] ==> lib [c]
arg [-lgcc] ==> lib [gcc]
arg [--as-needed] ==> ignore
arg [-lgcc_s] ==> lib [gcc_s]
arg [--no-as-needed] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/crtend.o] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crtn.o] ==> ignore
remove lib [gcc]
remove lib [gcc_s]
remove lib [gcc]
remove lib [gcc_s]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib] ==> [/usr/lib]
collapse library dir [/lib/../lib] ==> [/lib]
collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../..] ==> [/usr/lib]
implicit libs: [c]
implicit dirs: [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1;/usr/lib;/lib]
implicit fwks: []

Detecting C [-std=c11] compiler features compiled with the following output:
Change Dir: /home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_637a2/fast"
/usr/bin/make -f CMakeFiles/cmTC_637a2.dir/build.make CMakeFiles/cmTC_637a2.dir/build
make[1]: Entering directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_637a2.dir/feature_tests.c.o
/usr/bin/cc -std=c11 -o CMakeFiles/cmTC_637a2.dir/feature_tests.c.o -c /home/bhaskar/git-linux/twinkle/build/CMakeFiles/feature_tests.c
Linking C executable cmTC_637a2
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_637a2.dir/link.txt --verbose=1
/usr/bin/cc CMakeFiles/cmTC_637a2.dir/feature_tests.c.o -o cmTC_637a2 -rdynamic
make[1]: Leaving directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'

Feature record: C_FEATURE:1c_function_prototypes
Feature record: C_FEATURE:1c_restrict
Feature record: C_FEATURE:1c_static_assert
Feature record: C_FEATURE:1c_variadic_macros

Detecting C [-std=c99] compiler features compiled with the following output:
Change Dir: /home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_f477c/fast"
/usr/bin/make -f CMakeFiles/cmTC_f477c.dir/build.make CMakeFiles/cmTC_f477c.dir/build
make[1]: Entering directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_f477c.dir/feature_tests.c.o
/usr/bin/cc -std=c99 -o CMakeFiles/cmTC_f477c.dir/feature_tests.c.o -c /home/bhaskar/git-linux/twinkle/build/CMakeFiles/feature_tests.c
Linking C executable cmTC_f477c
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_f477c.dir/link.txt --verbose=1
/usr/bin/cc CMakeFiles/cmTC_f477c.dir/feature_tests.c.o -o cmTC_f477c -rdynamic
make[1]: Leaving directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'

Feature record: C_FEATURE:1c_function_prototypes
Feature record: C_FEATURE:1c_restrict
Feature record: C_FEATURE:0c_static_assert
Feature record: C_FEATURE:1c_variadic_macros

Detecting C [-std=c90] compiler features compiled with the following output:
Change Dir: /home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_5953a/fast"
/usr/bin/make -f CMakeFiles/cmTC_5953a.dir/build.make CMakeFiles/cmTC_5953a.dir/build
make[1]: Entering directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_5953a.dir/feature_tests.c.o
/usr/bin/cc -std=c90 -o CMakeFiles/cmTC_5953a.dir/feature_tests.c.o -c /home/bhaskar/git-linux/twinkle/build/CMakeFiles/feature_tests.c
Linking C executable cmTC_5953a
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_5953a.dir/link.txt --verbose=1
/usr/bin/cc CMakeFiles/cmTC_5953a.dir/feature_tests.c.o -o cmTC_5953a -rdynamic
make[1]: Leaving directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'

Feature record: C_FEATURE:1c_function_prototypes
Feature record: C_FEATURE:0c_restrict
Feature record: C_FEATURE:0c_static_assert
Feature record: C_FEATURE:0c_variadic_macros

Determining if the CXX compiler works passed with the following output:
Change Dir: /home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_f5867/fast"
/usr/bin/make -f CMakeFiles/cmTC_f5867.dir/build.make CMakeFiles/cmTC_f5867.dir/build
make[1]: Entering directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'
Building CXX object CMakeFiles/cmTC_f5867.dir/testCXXCompiler.cxx.o
/usr/bin/c++ -o CMakeFiles/cmTC_f5867.dir/testCXXCompiler.cxx.o -c /home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp/testCXXCompiler.cxx
Linking CXX executable cmTC_f5867
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_f5867.dir/link.txt --verbose=1
/usr/bin/c++ CMakeFiles/cmTC_f5867.dir/testCXXCompiler.cxx.o -o cmTC_f5867 -rdynamic
make[1]: Leaving directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'

Detecting CXX compiler ABI info compiled with the following output:
Change Dir: /home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_a78b1/fast"
/usr/bin/make -f CMakeFiles/cmTC_a78b1.dir/build.make CMakeFiles/cmTC_a78b1.dir/build
make[1]: Entering directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'
Building CXX object CMakeFiles/cmTC_a78b1.dir/CMakeCXXCompilerABI.cpp.o
/usr/bin/c++ -o CMakeFiles/cmTC_a78b1.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.6/Modules/CMakeCXXCompilerABI.cpp
Linking CXX executable cmTC_a78b1
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a78b1.dir/link.txt --verbose=1
/usr/bin/c++ -v CMakeFiles/cmTC_a78b1.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_a78b1 -rdynamic
Using built-in specs.
COLLECT_GCC=/usr/bin/c++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --enable-shared --enable-threads=posix --enable-libmpx --with-system-zlib --with-isl --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=gnu --disable-libstdcxx-pch --disable-libssp --enable-gnu-unique-object --enable-linker-build-id --enable-lto --enable-plugin --enable-install-libiberty --with-linker-hash-style=gnu --enable-gnu-indirect-function --disable-multilib --disable-werror --enable-checking=release
Thread model: posix
gcc version 6.2.1 20160830 (GCC)
COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_a78b1' '-rdynamic' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/collect2 -plugin /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/lto-wrapper -plugin-opt=-fresolution=/tmp/cco9jw1Q.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr --hash-style=gnu -m elf_x86_64 -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o cmTC_a78b1 /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/crtbegin.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1 -L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../.. CMakeFiles/cmTC_a78b1.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/crtend.o /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crtn.o
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_a78b1' '-rdynamic' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
make[1]: Leaving directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'

Parsed CXX implicit link information from above output:
link line regex: [^( _|._[/])(ld|([^/]+-)?ld|collect2)[^/]*( |$)]
ignore line: [Change Dir: /home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp]
ignore line: []
ignore line: [Run Build Command:"/usr/bin/make" "cmTC_a78b1/fast"]
ignore line: [/usr/bin/make -f CMakeFiles/cmTC_a78b1.dir/build.make CMakeFiles/cmTC_a78b1.dir/build]
ignore line: [make[1]: Entering directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp']
ignore line: [Building CXX object CMakeFiles/cmTC_a78b1.dir/CMakeCXXCompilerABI.cpp.o]
ignore line: [/usr/bin/c++ -o CMakeFiles/cmTC_a78b1.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.6/Modules/CMakeCXXCompilerABI.cpp]
ignore line: [Linking CXX executable cmTC_a78b1]
ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a78b1.dir/link.txt --verbose=1]
ignore line: [/usr/bin/c++ -v CMakeFiles/cmTC_a78b1.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_a78b1 -rdynamic ]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/c++]
ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/lto-wrapper]
ignore line: [Target: x86_64-pc-linux-gnu]
ignore line: [Configured with: /build/gcc/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --enable-shared --enable-threads=posix --enable-libmpx --with-system-zlib --with-isl --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=gnu --disable-libstdcxx-pch --disable-libssp --enable-gnu-unique-object --enable-linker-build-id --enable-lto --enable-plugin --enable-install-libiberty --with-linker-hash-style=gnu --enable-gnu-indirect-function --disable-multilib --disable-werror --enable-checking=release]
ignore line: [Thread model: posix]
ignore line: [gcc version 6.2.1 20160830 (GCC) ]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_a78b1' '-rdynamic' '-shared-libgcc' '-mtune=generic' '-march=x86-64']
link line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/collect2 -plugin /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/lto-wrapper -plugin-opt=-fresolution=/tmp/cco9jw1Q.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr --hash-style=gnu -m elf_x86_64 -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o cmTC_a78b1 /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/crtbegin.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1 -L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../.. CMakeFiles/cmTC_a78b1.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/crtend.o /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crtn.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/collect2] ==> ignore
arg [-plugin] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/liblto_plugin.so] ==> ignore
arg [-plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/lto-wrapper] ==> ignore
arg [-plugin-opt=-fresolution=/tmp/cco9jw1Q.res] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [-plugin-opt=-pass-through=-lc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [--build-id] ==> ignore
arg [--eh-frame-hdr] ==> ignore
arg [--hash-style=gnu] ==> ignore
arg [-m] ==> ignore
arg [elf_x86_64] ==> ignore
arg [-export-dynamic] ==> ignore
arg [-dynamic-linker] ==> ignore
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
arg [-o] ==> ignore
arg [cmTC_a78b1] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crt1.o] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crti.o] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/crtbegin.o] ==> ignore
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1]
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib]
arg [-L/lib/../lib] ==> dir [/lib/../lib]
arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../..] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../..]
arg [CMakeFiles/cmTC_a78b1.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
arg [-lstdc++] ==> lib [stdc++]
arg [-lm] ==> lib [m]
arg [-lgcc_s] ==> lib [gcc_s]
arg [-lgcc] ==> lib [gcc]
arg [-lc] ==> lib [c]
arg [-lgcc_s] ==> lib [gcc_s]
arg [-lgcc] ==> lib [gcc]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/crtend.o] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/crtn.o] ==> ignore
remove lib [gcc_s]
remove lib [gcc]
remove lib [gcc_s]
remove lib [gcc]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib] ==> [/usr/lib]
collapse library dir [/lib/../lib] ==> [/lib]
collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../..] ==> [/usr/lib]
implicit libs: [stdc++;m;c]
implicit dirs: [/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1;/usr/lib;/lib]
implicit fwks: []

Detecting CXX [-std=c++14] compiler features compiled with the following output:
Change Dir: /home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_f7c65/fast"
/usr/bin/make -f CMakeFiles/cmTC_f7c65.dir/build.make CMakeFiles/cmTC_f7c65.dir/build
make[1]: Entering directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'
Building CXX object CMakeFiles/cmTC_f7c65.dir/feature_tests.cxx.o
/usr/bin/c++ -std=c++14 -o CMakeFiles/cmTC_f7c65.dir/feature_tests.cxx.o -c /home/bhaskar/git-linux/twinkle/build/CMakeFiles/feature_tests.cxx
Linking CXX executable cmTC_f7c65
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_f7c65.dir/link.txt --verbose=1
/usr/bin/c++ CMakeFiles/cmTC_f7c65.dir/feature_tests.cxx.o -o cmTC_f7c65 -rdynamic
make[1]: Leaving directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'

Feature record: CXX_FEATURE:1cxx_aggregate_default_initializers
Feature record: CXX_FEATURE:1cxx_alias_templates
Feature record: CXX_FEATURE:1cxx_alignas
Feature record: CXX_FEATURE:1cxx_alignof
Feature record: CXX_FEATURE:1cxx_attributes
Feature record: CXX_FEATURE:1cxx_attribute_deprecated
Feature record: CXX_FEATURE:1cxx_auto_type
Feature record: CXX_FEATURE:1cxx_binary_literals
Feature record: CXX_FEATURE:1cxx_constexpr
Feature record: CXX_FEATURE:1cxx_contextual_conversions
Feature record: CXX_FEATURE:1cxx_decltype
Feature record: CXX_FEATURE:1cxx_decltype_auto
Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types
Feature record: CXX_FEATURE:1cxx_default_function_template_args
Feature record: CXX_FEATURE:1cxx_defaulted_functions
Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers
Feature record: CXX_FEATURE:1cxx_delegating_constructors
Feature record: CXX_FEATURE:1cxx_deleted_functions
Feature record: CXX_FEATURE:1cxx_digit_separators
Feature record: CXX_FEATURE:1cxx_enum_forward_declarations
Feature record: CXX_FEATURE:1cxx_explicit_conversions
Feature record: CXX_FEATURE:1cxx_extended_friend_declarations
Feature record: CXX_FEATURE:1cxx_extern_templates
Feature record: CXX_FEATURE:1cxx_final
Feature record: CXX_FEATURE:1cxx_func_identifier
Feature record: CXX_FEATURE:1cxx_generalized_initializers
Feature record: CXX_FEATURE:1cxx_generic_lambdas
Feature record: CXX_FEATURE:1cxx_inheriting_constructors
Feature record: CXX_FEATURE:1cxx_inline_namespaces
Feature record: CXX_FEATURE:1cxx_lambdas
Feature record: CXX_FEATURE:1cxx_lambda_init_captures
Feature record: CXX_FEATURE:1cxx_local_type_template_args
Feature record: CXX_FEATURE:1cxx_long_long_type
Feature record: CXX_FEATURE:1cxx_noexcept
Feature record: CXX_FEATURE:1cxx_nonstatic_member_init
Feature record: CXX_FEATURE:1cxx_nullptr
Feature record: CXX_FEATURE:1cxx_override
Feature record: CXX_FEATURE:1cxx_range_for
Feature record: CXX_FEATURE:1cxx_raw_string_literals
Feature record: CXX_FEATURE:1cxx_reference_qualified_functions
Feature record: CXX_FEATURE:1cxx_relaxed_constexpr
Feature record: CXX_FEATURE:1cxx_return_type_deduction
Feature record: CXX_FEATURE:1cxx_right_angle_brackets
Feature record: CXX_FEATURE:1cxx_rvalue_references
Feature record: CXX_FEATURE:1cxx_sizeof_member
Feature record: CXX_FEATURE:1cxx_static_assert
Feature record: CXX_FEATURE:1cxx_strong_enums
Feature record: CXX_FEATURE:1cxx_template_template_parameters
Feature record: CXX_FEATURE:1cxx_thread_local
Feature record: CXX_FEATURE:1cxx_trailing_return_types
Feature record: CXX_FEATURE:1cxx_unicode_literals
Feature record: CXX_FEATURE:1cxx_uniform_initialization
Feature record: CXX_FEATURE:1cxx_unrestricted_unions
Feature record: CXX_FEATURE:1cxx_user_literals
Feature record: CXX_FEATURE:1cxx_variable_templates
Feature record: CXX_FEATURE:1cxx_variadic_macros
Feature record: CXX_FEATURE:1cxx_variadic_templates

Detecting CXX [-std=c++11] compiler features compiled with the following output:
Change Dir: /home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_4b75d/fast"
/usr/bin/make -f CMakeFiles/cmTC_4b75d.dir/build.make CMakeFiles/cmTC_4b75d.dir/build
make[1]: Entering directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'
Building CXX object CMakeFiles/cmTC_4b75d.dir/feature_tests.cxx.o
/usr/bin/c++ -std=c++11 -o CMakeFiles/cmTC_4b75d.dir/feature_tests.cxx.o -c /home/bhaskar/git-linux/twinkle/build/CMakeFiles/feature_tests.cxx
Linking CXX executable cmTC_4b75d
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_4b75d.dir/link.txt --verbose=1
/usr/bin/c++ CMakeFiles/cmTC_4b75d.dir/feature_tests.cxx.o -o cmTC_4b75d -rdynamic
make[1]: Leaving directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'

Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers
Feature record: CXX_FEATURE:1cxx_alias_templates
Feature record: CXX_FEATURE:1cxx_alignas
Feature record: CXX_FEATURE:1cxx_alignof
Feature record: CXX_FEATURE:1cxx_attributes
Feature record: CXX_FEATURE:0cxx_attribute_deprecated
Feature record: CXX_FEATURE:1cxx_auto_type
Feature record: CXX_FEATURE:0cxx_binary_literals
Feature record: CXX_FEATURE:1cxx_constexpr
Feature record: CXX_FEATURE:0cxx_contextual_conversions
Feature record: CXX_FEATURE:1cxx_decltype
Feature record: CXX_FEATURE:0cxx_decltype_auto
Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types
Feature record: CXX_FEATURE:1cxx_default_function_template_args
Feature record: CXX_FEATURE:1cxx_defaulted_functions
Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers
Feature record: CXX_FEATURE:1cxx_delegating_constructors
Feature record: CXX_FEATURE:1cxx_deleted_functions
Feature record: CXX_FEATURE:0cxx_digit_separators
Feature record: CXX_FEATURE:1cxx_enum_forward_declarations
Feature record: CXX_FEATURE:1cxx_explicit_conversions
Feature record: CXX_FEATURE:1cxx_extended_friend_declarations
Feature record: CXX_FEATURE:1cxx_extern_templates
Feature record: CXX_FEATURE:1cxx_final
Feature record: CXX_FEATURE:1cxx_func_identifier
Feature record: CXX_FEATURE:1cxx_generalized_initializers
Feature record: CXX_FEATURE:0cxx_generic_lambdas
Feature record: CXX_FEATURE:1cxx_inheriting_constructors
Feature record: CXX_FEATURE:1cxx_inline_namespaces
Feature record: CXX_FEATURE:1cxx_lambdas
Feature record: CXX_FEATURE:0cxx_lambda_init_captures
Feature record: CXX_FEATURE:1cxx_local_type_template_args
Feature record: CXX_FEATURE:1cxx_long_long_type
Feature record: CXX_FEATURE:1cxx_noexcept
Feature record: CXX_FEATURE:1cxx_nonstatic_member_init
Feature record: CXX_FEATURE:1cxx_nullptr
Feature record: CXX_FEATURE:1cxx_override
Feature record: CXX_FEATURE:1cxx_range_for
Feature record: CXX_FEATURE:1cxx_raw_string_literals
Feature record: CXX_FEATURE:1cxx_reference_qualified_functions
Feature record: CXX_FEATURE:0cxx_relaxed_constexpr
Feature record: CXX_FEATURE:0cxx_return_type_deduction
Feature record: CXX_FEATURE:1cxx_right_angle_brackets
Feature record: CXX_FEATURE:1cxx_rvalue_references
Feature record: CXX_FEATURE:1cxx_sizeof_member
Feature record: CXX_FEATURE:1cxx_static_assert
Feature record: CXX_FEATURE:1cxx_strong_enums
Feature record: CXX_FEATURE:1cxx_template_template_parameters
Feature record: CXX_FEATURE:1cxx_thread_local
Feature record: CXX_FEATURE:1cxx_trailing_return_types
Feature record: CXX_FEATURE:1cxx_unicode_literals
Feature record: CXX_FEATURE:1cxx_uniform_initialization
Feature record: CXX_FEATURE:1cxx_unrestricted_unions
Feature record: CXX_FEATURE:1cxx_user_literals
Feature record: CXX_FEATURE:0cxx_variable_templates
Feature record: CXX_FEATURE:1cxx_variadic_macros
Feature record: CXX_FEATURE:1cxx_variadic_templates

Detecting CXX [-std=c++98] compiler features compiled with the following output:
Change Dir: /home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_6d44f/fast"
/usr/bin/make -f CMakeFiles/cmTC_6d44f.dir/build.make CMakeFiles/cmTC_6d44f.dir/build
make[1]: Entering directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'
Building CXX object CMakeFiles/cmTC_6d44f.dir/feature_tests.cxx.o
/usr/bin/c++ -std=c++98 -o CMakeFiles/cmTC_6d44f.dir/feature_tests.cxx.o -c /home/bhaskar/git-linux/twinkle/build/CMakeFiles/feature_tests.cxx
Linking CXX executable cmTC_6d44f
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_6d44f.dir/link.txt --verbose=1
/usr/bin/c++ CMakeFiles/cmTC_6d44f.dir/feature_tests.cxx.o -o cmTC_6d44f -rdynamic
make[1]: Leaving directory '/home/bhaskar/git-linux/twinkle/build/CMakeFiles/CMakeTmp'

Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers
Feature record: CXX_FEATURE:0cxx_alias_templates
Feature record: CXX_FEATURE:0cxx_alignas
Feature record: CXX_FEATURE:0cxx_alignof
Feature record: CXX_FEATURE:0cxx_attributes
Feature record: CXX_FEATURE:0cxx_attribute_deprecated
Feature record: CXX_FEATURE:0cxx_auto_type
Feature record: CXX_FEATURE:0cxx_binary_literals
Feature record: CXX_FEATURE:0cxx_constexpr
Feature record: CXX_FEATURE:0cxx_contextual_conversions
Feature record: CXX_FEATURE:0cxx_decltype
Feature record: CXX_FEATURE:0cxx_decltype_auto
Feature record: CXX_FEATURE:0cxx_decltype_incomplete_return_types
Feature record: CXX_FEATURE:0cxx_default_function_template_args
Feature record: CXX_FEATURE:0cxx_defaulted_functions
Feature record: CXX_FEATURE:0cxx_defaulted_move_initializers
Feature record: CXX_FEATURE:0cxx_delegating_constructors
Feature record: CXX_FEATURE:0cxx_deleted_functions
Feature record: CXX_FEATURE:0cxx_digit_separators
Feature record: CXX_FEATURE:0cxx_enum_forward_declarations
Feature record: CXX_FEATURE:0cxx_explicit_conversions
Feature record: CXX_FEATURE:0cxx_extended_friend_declarations
Feature record: CXX_FEATURE:0cxx_extern_templates
Feature record: CXX_FEATURE:0cxx_final
Feature record: CXX_FEATURE:0cxx_func_identifier
Feature record: CXX_FEATURE:0cxx_generalized_initializers
Feature record: CXX_FEATURE:0cxx_generic_lambdas
Feature record: CXX_FEATURE:0cxx_inheriting_constructors
Feature record: CXX_FEATURE:0cxx_inline_namespaces
Feature record: CXX_FEATURE:0cxx_lambdas
Feature record: CXX_FEATURE:0cxx_lambda_init_captures
Feature record: CXX_FEATURE:0cxx_local_type_template_args
Feature record: CXX_FEATURE:0cxx_long_long_type
Feature record: CXX_FEATURE:0cxx_noexcept
Feature record: CXX_FEATURE:0cxx_nonstatic_member_init
Feature record: CXX_FEATURE:0cxx_nullptr
Feature record: CXX_FEATURE:0cxx_override
Feature record: CXX_FEATURE:0cxx_range_for
Feature record: CXX_FEATURE:0cxx_raw_string_literals
Feature record: CXX_FEATURE:0cxx_reference_qualified_functions
Feature record: CXX_FEATURE:0cxx_relaxed_constexpr
Feature record: CXX_FEATURE:0cxx_return_type_deduction
Feature record: CXX_FEATURE:0cxx_right_angle_brackets
Feature record: CXX_FEATURE:0cxx_rvalue_references
Feature record: CXX_FEATURE:0cxx_sizeof_member
Feature record: CXX_FEATURE:0cxx_static_assert
Feature record: CXX_FEATURE:0cxx_strong_enums
Feature record: CXX_FEATURE:1cxx_template_template_parameters
Feature record: CXX_FEATURE:0cxx_thread_local
Feature record: CXX_FEATURE:0cxx_trailing_return_types
Feature record: CXX_FEATURE:0cxx_unicode_literals
Feature record: CXX_FEATURE:0cxx_uniform_initialization
Feature record: CXX_FEATURE:0cxx_unrestricted_unions
Feature record: CXX_FEATURE:0cxx_user_literals
Feature record: CXX_FEATURE:0cxx_variable_templates
Feature record: CXX_FEATURE:0cxx_variadic_macros
Feature record: CXX_FEATURE:0cxx_variadic_templates

`

Optional integration with Gmail contacts

Provide optional support for pulling contacts from Gmail.

Rationale: most Android users have their contact lists synchronized to Gmail. It would be very convenient to have access to these directly from Twinkle.

no-manual-page

twinkle.i586: W: no-manual-page-for-binary twinkle-console
twinkle.i586: W: no-manual-page-for-binary twinkle

Support QML/JS scripted modules

Support provider-specific QML/JS-based plugins. These would add an extra tab with custom UI, which could be used e.g. for remaining credit information, provider's contact list, etc.

Given that I'd like to see widgets for this UI, this would be a Qt 5 only feature.

Example of such API: http://www.odorik.cz/w/api

credentials aren't read?

When I start up twinkle it asks me to re-enter my credentials (auth-user and auth-password) and then the phone registers. I see them (in plain text) in the .cfg file so why doesn't twinkle pass them on automatically? Is there some sort of keyring requirement?

Cant register with scheme set to DIGEST

Hi,
I found another issue in Twinkle, when proxy responses 401 with Authentication Scheme set to
DIGEST (capitals) Twinkle do nothing and only writes to log:
++ 3-12-2015 18:36:13.718998 INFO NORMAL t_auth::authorize
Unsupported authentication scheme: DIGEST

When I changed auth.cpp

-       if (c.auth_scheme != AUTH_DIGEST) {
+       if (cmp_nocase(chlg.auth_scheme, AUTH_DIGEST) != 0) {

Twinkle started popup an login windows but with realm set to "" while proxy responses with realm set to domain name.

REGISTER sip:windmobile.pl SIP/2.0
Via: SIP/2.0/UDP 192.168.198.1;rport;branch=z9hG4bKyjeiqtva
Max-Forwards: 70
To: <sip:[email protected]>
From: <sip:[email protected]>;tag=jdilu
Call-ID: [email protected]
CSeq: 136 REGISTER
Contact: <sip:[email protected]>;expires=3600
Allow: INVITE,ACK,BYE,CANCEL,OPTIONS,PRACK,REFER,NOTIFY,SUBSCRIBE,INFO,MESSAGE
User-Agent: Twinkle/1.9.0
Content-Length: 0

SIP/2.0 401 Unauthorized
Via:SIP/2.0/UDP 192.168.198.1;branch=z9hG4bKyjeiqtva;rport
From:<sip:[email protected]>;tag=jdilu
To:<sip:[email protected]>;tag=1177029366-1449167798189
Call-ID:[email protected]
CSeq:136 REGISTER
WWW-Authenticate:DIGEST qop="auth",nonce="BroadWorksXihql39gtTi2cq07BW",realm="windmobile.pl",algorithm=MD5
Content-Length:0

REGISTER sip:windmobile.pl SIP/2.0
Via: SIP/2.0/UDP 192.168.198.1;rport;branch=z9hG4bKqttxolng
Max-Forwards: 70
To: <sip:[email protected]>
From: <sip:[email protected]>;tag=jdilu
Call-ID: [email protected]
CSeq: 137 REGISTER
Contact: <sip:[email protected]>;expires=3600
Authorization: Digest username="914165001",uri="sip:windmobile.pl",response="b072626c72888ff301e7aa420eca7759",algorithm=MD5
Allow: INVITE,ACK,BYE,CANCEL,OPTIONS,PRACK,REFER,NOTIFY,SUBSCRIBE,INFO,MESSAGE
User-Agent: Twinkle/1.9.0
Content-Length: 0

SIP/2.0 401 Unauthorized
Via:SIP/2.0/UDP 192.168.198.1;branch=z9hG4bKqttxolng;rport
From:<sip:[email protected]>;tag=jdilu
To:<sip:[email protected]>;tag=1031875026-1449167839419
Call-ID:[email protected]
CSeq:137 REGISTER
WWW-Authenticate:DIGEST qop="auth",nonce="BroadWorksXihql45a3Tahuuj5BW",realm="windmobile.pl",algorithm=MD5
Content-Length:0


GUI stops responding if operations take long

It happens if registration or call setup takes too long. This is the backtrace:

#0  0x00007ffff7bcdb54 in __lll_lock_wait () from /lib64/libpthread.so.0
#1  0x00007ffff7bc94d4 in _L_lock_571 () from /lib64/libpthread.so.0
#2  0x00007ffff7bc9336 in pthread_mutex_lock () from /lib64/libpthread.so.0
#3  0x000000000082f219 in t_mutex::lock() ()
#4  0x0000000000744f28 in t_transaction_layer::lock() const ()
#5  0x00000000007025b6 in t_phone::get_line_substate(unsigned short) const ()
#6  0x00000000005a2463 in MphoneForm::updateSysTrayStatus() ()
#7  0x000000000059f442 in MphoneForm::updateRegStatus() ()

Enable continuous integration testing

Given that #40 was merged despite failing to compile, what do you think of configuring a Travis instance for twinkle to perform automatic build testing? If yes, please see the instructions on how to enable Travis for the twinkle repository.

I can help preparing a .travis.yml file.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.