<?xml version="1.0" encoding="UTF-8"?>
<ticket>
  <assigned-user-id type="integer">50498</assigned-user-id>
  <attachments-count type="integer">0</attachments-count>
  <closed type="boolean">true</closed>
  <created-at type="datetime">2009-08-04T23:43:29+02:00</created-at>
  <creator-id type="integer">65150</creator-id>
  <milestone-due-on type="datetime">2009-08-07T00:00:00+02:00</milestone-due-on>
  <milestone-id type="integer">47096</milestone-id>
  <number type="integer">56</number>
  <permalink>conflict-with-sysmacrosh-on-gentoo-linux</permalink>
  <priority type="integer">1</priority>
  <project-id type="integer">27230</project-id>
  <raw-data type="binary" nil="true" encoding="base64"></raw-data>
  <state>resolved</state>
  <tag>gentoo sysmacros.h</tag>
  <title>conflict with sysmacros.h on gentoo linux</title>
  <updated-at type="datetime">2009-08-08T19:17:03+02:00</updated-at>
  <user-id type="integer">50498</user-id>
  <user-name>ayoy</user-name>
  <creator-name>dissolve</creator-name>
  <assigned-user-name>ayoy</assigned-user-name>
  <url>http://ayoy.lighthouseapp.com/projects/27230/tickets/56</url>
  <milestone-title>0.8.3</milestone-title>
  <original-body>under gentoo linux, the macros in /usr/include/sys/sysmacros.h rewrite the minor() and major() functions as gnu_dev_minor() and gnu_dev_major.
easiest solution was to just change the naming of these function names to something else.</original-body>
  <latest-body>under gentoo linux, the macros in /usr/include/sys/sysmacros.h rewrite the minor() and major() functions as gnu_dev_minor() and gnu_dev_major.
easiest solution was to just change the naming of these function names to something else.</latest-body>
  <original-body-html>&lt;div&gt;&lt;p&gt;under gentoo linux, the macros in /usr/include/sys/sysmacros.h
rewrite the minor() and major() functions as gnu_dev_minor() and
gnu_dev_major. easiest solution was to just change the naming of
these function names to something else.&lt;/p&gt;&lt;/div&gt;</original-body-html>
  <versions type="array">
    <version type="Ticket::Version">
      <assigned-user-id type="integer">50498</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>under gentoo linux, the macros in /usr/include/sys/sysmacros.h rewrite the minor() and major() functions as gnu_dev_minor() and gnu_dev_major.
easiest solution was to just change the naming of these function names to something else.</body>
      <body-html>&lt;div&gt;&lt;p&gt;under gentoo linux, the macros in /usr/include/sys/sysmacros.h
rewrite the minor() and major() functions as gnu_dev_minor() and
gnu_dev_major.&lt;br&gt;
easiest solution was to just change the naming of these function
names to something else.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-08-04T23:43:29+02:00</created-at>
      <creator-id type="integer">65150</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer" nil="true"></milestone-id>
      <number type="integer">56</number>
      <permalink>conflict-with-sysmacrosh-on-gentoo-linux</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">27230</project-id>
      <state>new</state>
      <tag nil="true"></tag>
      <title>conflict with sysmacros.h on gentoo linux</title>
      <updated-at type="datetime">2009-08-04T23:43:32+02:00</updated-at>
      <user-id type="integer">65150</user-id>
      <user-name>dissolve</user-name>
      <creator-name>dissolve</creator-name>
      <assigned-user-name>ayoy</assigned-user-name>
      <url>http://ayoy.lighthouseapp.com/projects/27230/tickets/56</url>
      <milestone-title nil="true"></milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">50498</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Hi, thanks for reporting. Do you mean the `minor` and `major` fields of `AppVersion` struct?</body>
      <body-html>&lt;div&gt;&lt;p&gt;Hi, thanks for reporting. Do you mean the &lt;code&gt;minor&lt;/code&gt; and
&lt;code&gt;major&lt;/code&gt; fields of &lt;code&gt;AppVersion&lt;/code&gt; struct?&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-08-05T08:20:11+02:00</created-at>
      <creator-id type="integer">65150</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer" nil="true"></milestone-id>
      <number type="integer">56</number>
      <permalink>conflict-with-sysmacrosh-on-gentoo-linux</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">27230</project-id>
      <state>new</state>
      <tag nil="true"></tag>
      <title>conflict with sysmacros.h on gentoo linux</title>
      <updated-at type="datetime">2009-08-05T08:20:14+02:00</updated-at>
      <user-id type="integer">50498</user-id>
      <user-name>ayoy</user-name>
      <creator-name>dissolve</creator-name>
      <assigned-user-name>ayoy</assigned-user-name>
      <url>http://ayoy.lighthouseapp.com/projects/27230/tickets/56</url>
      <milestone-title nil="true"></milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">50498</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Sorry, yes.  The problem is that the preprocessor doesn't seem to know the difference between a function call and the defaulted values on lines 30 and 31 of configfile.cpp
Just moving those assignments inside the function fixes the problem too.

Sorry, didn't look at it as closely before i just renamed the fields quickly, and I was lacking sleep.


define commands from sysmacros.h

/* Access the functions with their traditional names.  */
# define major(dev) gnu_dev_major (dev)
# define minor(dev) gnu_dev_minor (dev)

I'm more curious why it really needs to pull in sysmacros.h at all.  Seems silly that if anyone names a function minor or major they will get changed by it.</body>
      <body-html>&lt;div&gt;&lt;p&gt;Sorry, yes. The problem is that the preprocessor doesn't seem to
know the difference between a function call and the defaulted
values on lines 30 and 31 of configfile.cpp&lt;br&gt;
Just moving those assignments inside the function fixes the problem
too.&lt;/p&gt;
&lt;p&gt;Sorry, didn't look at it as closely before i just renamed the
fields quickly, and I was lacking sleep.&lt;/p&gt;
&lt;p&gt;define commands from sysmacros.h&lt;/p&gt;
&lt;p&gt;/ &lt;em&gt;Access the functions with their traditional names.&lt;/em&gt;
/&lt;/p&gt;
&lt;h1&gt;define major(dev) gnu_dev_major (dev)&lt;/h1&gt;
&lt;h1&gt;define minor(dev) gnu_dev_minor (dev)&lt;/h1&gt;
&lt;p&gt;I'm more curious why it really needs to pull in sysmacros.h at
all. Seems silly that if anyone names a function minor or major
they will get changed by it.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-08-07T06:42:43+02:00</created-at>
      <creator-id type="integer">65150</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer" nil="true"></milestone-id>
      <number type="integer">56</number>
      <permalink>conflict-with-sysmacrosh-on-gentoo-linux</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">27230</project-id>
      <state>new</state>
      <tag nil="true"></tag>
      <title>conflict with sysmacros.h on gentoo linux</title>
      <updated-at type="datetime">2009-08-07T06:42:47+02:00</updated-at>
      <user-id type="integer">65150</user-id>
      <user-name>dissolve</user-name>
      <creator-name>dissolve</creator-name>
      <assigned-user-name>ayoy</assigned-user-name>
      <url>http://ayoy.lighthouseapp.com/projects/27230/tickets/56</url>
      <milestone-title nil="true"></milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">50498</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Fixed that issue in git:

    commit 3d9ad4dc2b7459aee7ac1077943904b5b54bf00c
    Author: Dominik Kapusta &lt;d@ayoy.net&gt;
    Date:   Fri Aug 7 17:57:01 2009 +0300
    
    Changed AppVersion::m{aj,in}or to AppVersion::m{aj,in}orVer in order to avoid ambiguity when including sysmacros.h - some configurations apparently need to use it (?)


I have to say that I find it really strange, since I'm using Gentoo Linux and maintaining qTwitter there, and I didn't experience this issue (and I have `sysmacros.h`, I guess every system has it ;) ). And I'm not including `sysmacros.h` anywhere, also by quick greping through the Qt source code I don't find anything suspicious. Do you use architecture other than x86/amd64?

Anyway, I'm about to tag and release the new version with minor changes, mainly due to QOAuth library being mostly feature-complete - which required reorganizing its internals and API a bit ;) Expect qTwitter 0.8.3 within hours in qting-edge overlay and tomorrow in portage I guess :)</body>
      <body-html>&lt;div&gt;&lt;p&gt;Fixed that issue in git:&lt;/p&gt;
&lt;pre&gt;
&lt;code&gt;commit 3d9ad4dc2b7459aee7ac1077943904b5b54bf00c
Author: Dominik Kapusta &amp;lt;d@ayoy.net&amp;gt;
Date:   Fri Aug 7 17:57:01 2009 +0300

Changed AppVersion::m{aj,in}or to AppVersion::m{aj,in}orVer in order to avoid ambiguity when including sysmacros.h - some configurations apparently need to use it (?)&lt;/code&gt;
&lt;/pre&gt;
&lt;p&gt;I have to say that I find it really strange, since I'm using
Gentoo Linux and maintaining qTwitter there, and I didn't
experience this issue (and I have &lt;code&gt;sysmacros.h&lt;/code&gt;, I guess
every system has it ;) ). And I'm not including
&lt;code&gt;sysmacros.h&lt;/code&gt; anywhere, also by quick greping through
the Qt source code I don't find anything suspicious. Do you use
architecture other than x86/amd64?&lt;/p&gt;
&lt;p&gt;Anyway, I'm about to tag and release the new version with minor
changes, mainly due to QOAuth library being mostly feature-complete
- which required reorganizing its internals and API a bit ;) Expect
qTwitter 0.8.3 within hours in qting-edge overlay and tomorrow in
portage I guess :)&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">true</closed>
      <created-at type="datetime">2009-08-07T18:54:12+02:00</created-at>
      <creator-id type="integer">65150</creator-id>
      <diffable-attributes type="yaml">--- 
:tag: 
:state: new
:milestone: 
</diffable-attributes>
      <milestone-id type="integer">47096</milestone-id>
      <number type="integer">56</number>
      <permalink>conflict-with-sysmacrosh-on-gentoo-linux</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">27230</project-id>
      <state>resolved</state>
      <tag>gentoo sysmacros.h</tag>
      <title>conflict with sysmacros.h on gentoo linux</title>
      <updated-at type="datetime">2009-08-07T18:54:12+02:00</updated-at>
      <user-id type="integer">50498</user-id>
      <user-name>ayoy</user-name>
      <creator-name>dissolve</creator-name>
      <assigned-user-name>ayoy</assigned-user-name>
      <url>http://ayoy.lighthouseapp.com/projects/27230/tickets/56</url>
      <milestone-title>0.8.3</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">50498</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Actually, I tried in on my home amd64 and an x86 running in my department, both had the same problem installing 0.8.2.
It took a bit of searching but this looks like stdlib.h includes sys/types.h includes sys/sysmacros.h

/usr/include/qt4/QtCore/qvector.h:#include &lt;stdlib.h&gt;
/usr/include/qt4/Qt/qtestevent.h:#include &lt;stdlib.h&gt;
/usr/include/qt4/Qt/qvector.h:#include &lt;stdlib.h&gt;
/usr/include/qt4/QtTest/qtestevent.h:#include &lt;stdlib.h&gt;

I tried tracing it through all of qt back up, but that got messy as hell.
Curious though, why don't you get those inclusions. Different version of qt?</body>
      <body-html>&lt;div&gt;&lt;p&gt;Actually, I tried in on my home amd64 and an x86 running in my
department, both had the same problem installing 0.8.2.&lt;br&gt;
It took a bit of searching but this looks like stdlib.h includes
sys/types.h includes sys/sysmacros.h&lt;/p&gt;
&lt;p&gt;/usr/include/qt4/QtCore/qvector.h:#include &amp;lt;stdlib.h&amp;gt;
/usr/include/qt4/Qt/qtestevent.h:#include &amp;lt;stdlib.h&amp;gt;
/usr/include/qt4/Qt/qvector.h:#include &amp;lt;stdlib.h&amp;gt;
/usr/include/qt4/QtTest/qtestevent.h:#include &amp;lt;stdlib.h&amp;gt;&lt;/p&gt;
&lt;p&gt;I tried tracing it through all of qt back up, but that got messy
as hell.&lt;br&gt;
Curious though, why don't you get those inclusions. Different
version of qt?&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">true</closed>
      <created-at type="datetime">2009-08-08T06:32:22+02:00</created-at>
      <creator-id type="integer">65150</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">47096</milestone-id>
      <number type="integer">56</number>
      <permalink>conflict-with-sysmacrosh-on-gentoo-linux</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">27230</project-id>
      <state>resolved</state>
      <tag>gentoo sysmacros.h</tag>
      <title>conflict with sysmacros.h on gentoo linux</title>
      <updated-at type="datetime">2009-08-08T06:32:26+02:00</updated-at>
      <user-id type="integer">65150</user-id>
      <user-name>dissolve</user-name>
      <creator-name>dissolve</creator-name>
      <assigned-user-name>ayoy</assigned-user-name>
      <url>http://ayoy.lighthouseapp.com/projects/27230/tickets/56</url>
      <milestone-title>0.8.3</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">50498</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>No idea, I've got Qt 4.5.2, the latest official. Anyway, qTwitter 0.8.3 with QOAuth 1.0 are in qting-edge now, and are joining Portage in a moment. Thanks for pointing out the issue!</body>
      <body-html>&lt;div&gt;&lt;p&gt;No idea, I've got Qt 4.5.2, the latest official. Anyway,
qTwitter 0.8.3 with QOAuth 1.0 are in qting-edge now, and are
joining Portage in a moment. Thanks for pointing out the issue!&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">true</closed>
      <created-at type="datetime">2009-08-08T19:17:00+02:00</created-at>
      <creator-id type="integer">65150</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">47096</milestone-id>
      <number type="integer">56</number>
      <permalink>conflict-with-sysmacrosh-on-gentoo-linux</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">27230</project-id>
      <state>resolved</state>
      <tag>gentoo sysmacros.h</tag>
      <title>conflict with sysmacros.h on gentoo linux</title>
      <updated-at type="datetime">2009-08-08T19:17:03+02:00</updated-at>
      <user-id type="integer">50498</user-id>
      <user-name>ayoy</user-name>
      <creator-name>dissolve</creator-name>
      <assigned-user-name>ayoy</assigned-user-name>
      <url>http://ayoy.lighthouseapp.com/projects/27230/tickets/56</url>
      <milestone-title>0.8.3</milestone-title>
    </version>
  </versions>
</ticket>
