After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 727079 - x264 failure to build on 32bit osx
x264 failure to build on 32bit osx
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: packages
git master
Other Mac OS
: Normal blocker
: 1.3.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
: 727696 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2014-03-26 07:10 UTC by Edward Hervey
Modified: 2014-04-18 09:17 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
x264: Only enable PIC on platforms/target/compilers that support it (2.47 KB, patch)
2014-04-17 14:29 UTC, Edward Hervey
committed Details | Review
x264: Disable ASM optimisations with clang x86-32bit (2.27 KB, patch)
2014-04-18 07:53 UTC, Edward Hervey
committed Details | Review

Description Edward Hervey 2014-03-26 07:10:18 UTC
Since the update to latest x264 snapshot, it fails to build on 32bit osx with xcode 4.6.

Example : https://jenkins.arracacha.collabora.co.uk/view/All/job/cerbero-osx-universal-107/lastFailedBuild/console

This thread from x264-devel in January points to the issue at hand with some possible solutions:
https://mailman.videolan.org/pipermail/x264-devel/2014-February/010371.html
Comment 1 Sebastian Dröge (slomo) 2014-04-07 07:15:30 UTC
*** Bug 727696 has been marked as a duplicate of this bug. ***
Comment 2 Edward Hervey 2014-04-17 14:29:39 UTC
Created attachment 274608 [details] [review]
x264: Only enable PIC on platforms/target/compilers that support it

ios/osx clang x86-32bit compiler fails to build PIC code (end up with
not enough registers).

No longer make PIC code generation mandatory.
Comment 3 Edward Hervey 2014-04-17 14:48:44 UTC
commit fdf87e504a7cdd5a9995ef92e4c64e64bae1991f
Author: Edward Hervey <bilboed@bilboed.com>
Date:   Thu Apr 17 16:27:45 2014 +0200

    x264: Only enable PIC on platforms/target/compilers that support it
    
    ios/osx clang x86-32bit compiler fails to build PIC code (end up with
    not enough registers).
    
    No longer make PIC code generation mandatory.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=727079
Comment 4 Sebastian Dröge (slomo) 2014-04-17 18:12:40 UTC
I'm not sure this is correct. You can't build shared libraries without PIC or PIE.
Comment 5 Edward Hervey 2014-04-18 07:02:42 UTC
I got confused indeed.

Going back through the logs, the trick we did with gst-libav is to:
* use --enable-pic to have PIC code (which can be used in the resulting gst-libav plugin)
* But disable the shared library (remove --enable-shared), ending up with a .a/.la that we use in the actual gst plugin.

Would that solution make sense ?
Comment 6 Sebastian Dröge (slomo) 2014-04-18 07:30:45 UTC
You mean only providing a static library for x264? Not really a great solution either...
Comment 7 Edward Hervey 2014-04-18 07:53:00 UTC
Created attachment 274647 [details] [review]
x264: Disable ASM optimisations with clang x86-32bit
Comment 8 Edward Hervey 2014-04-18 09:17:32 UTC
commit 46a65da9460b323545863d5a0d48be89bb635dc3
Author: Edward Hervey <bilboed@bilboed.com>
Date:   Fri Apr 18 09:51:02 2014 +0200

    x264: Disable ASM optimisations with clang x86-32bit
    
    https://bugzilla.gnome.org/show_bug.cgi?id=727079