aboutsummaryrefslogtreecommitdiffstats
path: root/code/unix/unix_main.c
diff options
context:
space:
mode:
authortjw <tjw@edf5b092-35ff-0310-97b2-ce42778d08ea>2007-07-20 14:34:44 +0000
committertjw <tjw@edf5b092-35ff-0310-97b2-ce42778d08ea>2007-07-20 14:34:44 +0000
commitc7f082760f432b227277b4e1e39fc88c814d2dde (patch)
treeab4f5285a65a3148330bf71733fa850cac8e0974 /code/unix/unix_main.c
parent3f0dc06cb4e223abe59708b278d188cbde505e60 (diff)
downloadioquake3-aero-c7f082760f432b227277b4e1e39fc88c814d2dde.tar.gz
ioquake3-aero-c7f082760f432b227277b4e1e39fc88c814d2dde.zip
* (bug 3268) Replace Mac OS X Carbon API calls with native ones (thanks
to i3enedek). * remove some spammy Mac OS X printf's regarding local network detection * replaced a #warning for non-OS X PPC systems with a call to msync(..., MS_INVALIDATE). This needs testing. git-svn-id: svn://svn.icculus.org/quake3/trunk@1118 edf5b092-35ff-0310-97b2-ce42778d08ea
Diffstat (limited to 'code/unix/unix_main.c')
-rw-r--r--code/unix/unix_main.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/code/unix/unix_main.c b/code/unix/unix_main.c
index 7f4b65c..31521de 100644
--- a/code/unix/unix_main.c
+++ b/code/unix/unix_main.c
@@ -72,7 +72,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#if idppc_altivec
#ifdef MACOS_X
- #include <Carbon/Carbon.h>
+ #include <sys/sysctl.h>
#endif
#endif
@@ -383,11 +383,13 @@ qboolean Sys_DetectAltivec( void )
#if idppc_altivec
#ifdef MACOS_X
- long feat = 0;
- OSErr err = Gestalt(gestaltPowerPCProcessorFeatures, &feat);
- if ((err==noErr) && ((1 << gestaltPowerPCHasVectorInstructions) & feat)) {
- altivec = qtrue;
- }
+ int selectors[2] = { CTL_HW, HW_VECTORUNIT };
+ int hasVectorUnit = 0;
+ size_t length = sizeof(hasVectorUnit);
+ int error = sysctl(selectors, 2, &hasVectorUnit, &length, NULL, 0);
+
+ if( 0 == error )
+ altivec = (hasVectorUnit != 0);
#else
void (*handler)(int sig);
handler = signal(SIGILL, illegal_instruction);