<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div apple-content-edited="true"><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; border-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; border-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="font-weight: normal; ">On Mar 25, 2013, at 5:11 AM, Sorvig Morten <<a href="mailto:Morten.Sorvig@digia.com">Morten.Sorvig@digia.com</a>> wrote:</div></div></span></div></span></div></div></div></div><div><br class="Apple-interchange-newline"><blockquote type="cite">On Mar 23, 2013, at 1:51 AM, Jake Thomas Petroules <<a href="mailto:jake.petroules@petroules.com">jake.petroules@petroules.com</a>> wrote:<br><br><blockquote type="cite">I'd like to suggest that we add a new Q_OS_ define.<br><br>Currently, for Apple platforms, we have:<br><br>Q_OS_DARWIN<br>Q_OS_DARWIN32<br>Q_OS_DARWIN64<br>Q_OS_IOS<br>Q_OS_MAC<br>Q_OS_MAC32<br>Q_OS_MAC64<br>Q_OS_MACX<br><br>The first three are very straightforward. Q_OS_DARWIN is defined for both Apple platforms, OS X and iOS, with specific defines for 32 and 64 bit. iOS -- also straightforward; means iOS.<br><br>Then we get confusing. You'd think Q_OS_MAC is defined for OS X only, but it's just a synonym for Darwin, which makes it mostly useless. Further confusing is Q_OS_MACX which even more strongly implies that  it refers to OS X, but again it's simply a synonym for Darwin.<br><br>This results in a ton of #if defined(Q_OS_MAC) && !defined(Q_OS_IOS), which is very counterproductive. I propose that we add a Q_OS_OSX define (and Q_OS_OSX32 / Q_OS_OSX64) which is only defined for OS X. This would be quite helpful, I think.<br><br>Any objections? If not, dev or stable?<br></blockquote><br>My initial thoughts are that the current situation is manageable and that "very counterproductive" is an overstatement. <br><br>We recently started differentiating between "mac" and "macx" on the qmake level (d28073d9). A quick grep shows that "Q_OS_MACX" is currently used in two places in Qt (qsharedpointer.cpp and tst_qmlvisual.cpp). Re-purposing it to mean "OS X" only should be doable.<br><br>Morten<br></blockquote></div><div><br></div><div>That sounds reasonable. I didn't know we could change the meaning of an existing ifdef, but it makes sense to be in line with the corresponding changes to qmake.</div><div>-- </div><div><b>Jake Petroules</b></div><div>Chief Technology Officer</div><div>Petroules Corporation · <a href="http://www.petroules.com">www.petroules.com</a></div><div>Email: <a href="mailto:jake.petroules@petroules.com">jake.petroules@petroules.com</a></div></body></html>