Opened 13 years ago

Closed 13 years ago

#3164 closed defect (fixed)

Myth on OSX(PPC) fails to compile after svn 12786

Reported by: cloudkay@… Owned by: Nigel
Priority: minor Milestone: unknown
Component: mythtv Version: head
Severity: medium Keywords:
Cc: Ticket locked: no

Description

Configure enables MMX, as a workaround I've added '--disable-mmx', in osx-packager.pl on line 493

Attachments (1)

patch (252 bytes) - added by rich@… 13 years ago.
Patch to configure to set cpu=uname -p initially before assigning arch_raw

Download all attachments as: .zip

Change History (7)

comment:1 Changed 13 years ago by Nigel

Owner: changed from Isaac Richards to Nigel
Status: newassigned

comment:2 Changed 13 years ago by rich@…

I investigated this and the ix_x86_mmx routine is returning true when queried with arch_raw set to '.'

The configure script does not correctly set arch_raw for powerpc.

Adding a line to define arch_raw=ppc when detecting that the configure is run on Powerpc after line 730 resolves this on Mac PowerPC systems.

arch_raw is not set for other architectures either though. The configure script is defaulting to assume that builds are on x86 in any case where this has not been set.

comment:3 Changed 13 years ago by rdubrawski <rich@…>

Sorry, correction:

The function is_x86_mmx is incorrectly returning true when called with arch_raw set to '.'

The fix identified by cloudkay would probably result in intel macs not having mmx enabled.

Changed 13 years ago by rich@…

Attachment: patch added

Patch to configure to set cpu=uname -p initially before assigning arch_raw

comment:4 Changed 13 years ago by rich@…

I have uploaded a patch that appears to solve the problem. The patch assigns cpu=uname -p initially. This patch works to perform the osx-packager.pl based Mac PowerPC build, and does not impact the configuration for my amd_64 build.

This should permit intel macs to still use MMX optimizations

comment:5 Changed 13 years ago by Nigel

Sorry for the delay in looking at this. Change [12787] basically swaps the meaning of cpu and arch, but missed one change. Richard's workaround is close, but may have a side effect. (See line 2079. Setting $cpu is meant to be an exception or override)
I think this change (from [12787]

-cpu=`uname -m` 
-cpu_raw="$cpu" 
+arch=`uname -m` 
+arch_raw="$cpu"

should have used $arch_raw="$arch" ?

comment:6 Changed 13 years ago by Nigel

Resolution: fixed
Status: assignedclosed

(In [12978]) Non-MMX build fix. Caused by a small mistake in [12787]. Closes #3164

Note: See TracTickets for help on using tickets.