Difference between revisions of "Porting/Macros"

From RCS Wiki
Jump to navigation Jump to search
m
Line 1: Line 1:
 
Some projects have been ported to Apple ppc64.  In that case, they may test macros like this:
 
Some projects have been ported to Apple ppc64.  In that case, they may test macros like this:
  
<code>
+
<nowiki>
#if defined(__ppc64__)
+
#if defined(__ppc64__)<br>
 
#endif
 
#endif
</code>
+
</nowiki>
  
GCC does not define __ppc64__.  It defines __PPC64__.  To make the above code build on Debian ppc64le or Debian ppc64, the summary is: change the above code to:
+
GCC does not define __ppc64__ (lowercase).  It defines __PPC64__ (uppercase).  To make the above code also build on Debian ppc64le or ppc64 (big endian) change the above code to:
  
<code>
+
<nowiki>
#if defined(__ppc64__) || defined(__PPC64__)
+
#if defined(__ppc64__) || defined(__PPC64__)<br>
 
#endif
 
#endif
</code>
+
</nowiki>

Revision as of 12:04, 13 September 2023

Some projects have been ported to Apple ppc64. In that case, they may test macros like this:

#if defined(__ppc64__)<br> #endif

GCC does not define __ppc64__ (lowercase). It defines __PPC64__ (uppercase). To make the above code also build on Debian ppc64le or ppc64 (big endian) change the above code to:

#if defined(__ppc64__) || defined(__PPC64__)<br> #endif