#47069 closed defect (wontfix)
How to build webkit-gtk3-2.0 @2.0.4_4 on a 10.5.8 PPC ?
Reported by: | udbraumann | Owned by: | jeremyhu (Jeremy Huddleston Sequoia) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.3.3 |
Keywords: | ppc | Cc: | jeremyhu (Jeremy Huddleston Sequoia), dbevans (David B. Evans) |
Port: | webkit-gtk3-2.0 |
Description
As webkit-gtk3-2.0 @2.0.4_4
is presently requiring clang-3.3
for building, and since clang-3.3
(and higher) in turn unfortunately is not able to produce PPC binary code I was wondering if gcc-4.9
is able to work instead, since the Portfile says
# configure checks that we're clang 3.0, gcc 4.7, or better
So I was trying
$ sudo port install webkit-gtk3-2.0 configure.compiler=macports-gcc-4.9
However, even the the configuration fails stating that the compiler (i.e. gcc-4.9
) is not working. The latter, however, of course is not true in general. Looking into the config.log
I found the following indicating trouble with command line switches (-V, -qversion, -fno-blocks
) being non-existent for gcc-4.9
:
Thread model: posix gcc version 4.9.2 (MacPorts gcc49 4.9.2_1) configure:3718: $? = 0 configure:3707: /opt/local/bin/gcc-mp-4.9 -V >&5 gcc-mp-4.9: error: unrecognized command line option '-V' gcc-mp-4.9: fatal error: no input files compilation terminated. configure:3718: $? = 1 configure:3707: /opt/local/bin/gcc-mp-4.9 -qversion >&5 gcc-mp-4.9: error: unrecognized command line option '-qversion' gcc-mp-4.9: fatal error: no input files compilation terminated. configure:3718: $? = 1 configure:3738: checking whether the C compiler works configure:3760: /opt/local/bin/gcc-mp-4.9 -Os -fno-blocks -m32 -DGTEST_USE_OWN_TR1_TUPLE=1 -D__MAC_OS_X_VERSION_MAX_ALLOWED=1050 -L/opt/local/lib -Wl,-headerpad_max_install_names co nftest.c >&5 gcc-mp-4.9: error: unrecognized command line option '-fno-blocks' configure:3764: $? = 1 configure:3802: result: no configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "WebKitGTK" | #define PACKAGE_TARNAME "webkitgtk" | #define PACKAGE_VERSION "2.0.4" | #define PACKAGE_STRING "WebKitGTK 2.0.4" | #define PACKAGE_BUGREPORT "http://bugs.webkit.org/" | #define PACKAGE_URL "" | /* end confdefs.h. */ | | int | main () | { | | ; | return 0; | } configure:3807: error: in `/Volumes/Data/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_www_webkit-gtk-2.0/webkit-gtk3-2.0/work/webkitgtk-2.0.4': configure:3809: error: C compiler cannot create executables
I need webkit-gtk3-2.0
as one of the many components required for building gedit @3.14.3
.
Attachments (2)
Change History (7)
Changed 10 years ago by udbraumann
Attachment: | config.log added |
---|
Changed 10 years ago by udbraumann
Attachment: | main.log.gz added |
---|
comment:1 Changed 10 years ago by dbevans (David B. Evans)
Owner: | changed from macports-tickets@… to jeremyhu@… |
---|
comment:2 follow-up: 3 Changed 10 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Resolution: | → wontfix |
---|---|
Status: | new → closed |
Unfortunately, it looks like your 10 year old configuration is just not supported for this purpose. If you want to get this fixed, I suggest you push on improving ppc support in clang. Right now, the primary blocker for you would be http://llvm.org/bugs/show_bug.cgi?id=22270 ... without that, we can't get libc++ in Leopard (and thus have no hope of getting a newer version of clang on Leopard).
comment:3 follow-up: 5 Changed 10 years ago by udbraumann
Thank you for pointing me to http://llvm.org/bugs/show_bug.cgi?id=22270
Looking inside the Portfile http://trac.macports.org/browser/trunk/dports/www/webkit-gtk-2.0/Portfile?rev=120881 I suddenly found the lines
if {${os.major} < 10} { depends_build-append port:python27 # https://trac.macports.org/ticket/35793 configure.python ${prefix}/bin/python2.7 # https://trac.macports.org/ticket/38682 configure.optflags-append -fno-blocks }
Since gcc-4.9
has no and does not need a -fno-blocks
switch, once I commented that line the configuration of webkit-gtk3-2
worked:
$ sudo port configure webkit-gtk3-2.0 configure.compiler=macports-gcc-4.9 ---> Computing dependencies for webkit-gtk3-2.0 ---> Fetching archive for webkit-gtk3-2.0 ---> Attempting to fetch webkit-gtk3-2.0-2.0.4_4+video.darwin_9.ppc.tbz2 from http://nue.de.packages.macports.org/macports/packages/webkit-gtk3-2.0 ---> Attempting to fetch webkit-gtk3-2.0-2.0.4_4+video.darwin_9.ppc.tbz2 from http://lil.fr.packages.macports.org/webkit-gtk3-2.0 ---> Attempting to fetch webkit-gtk3-2.0-2.0.4_4+video.darwin_9.ppc.tbz2 from http://mse.uk.packages.macports.org/sites/packages.macports.org/webkit-gtk3-2.0 ---> Fetching distfiles for webkit-gtk3-2.0 ---> Attempting to fetch webkitgtk-2.0.4.tar.xz from http://nue.de.distfiles.macports.org/macports/distfiles/webkit-gtk ---> Verifying checksums for webkit-gtk3-2.0 ---> Extracting webkit-gtk3-2.0 ---> Applying patches to webkit-gtk3-2.0 ---> Configuring webkit-gtk3-2.0
However, after issuing
$ sudo port install webkit-gtk3-2.0 configure.compiler=macports-gcc-4.9
and compiling, after a while I had to surrender, since webkit-gtk3-2.0
contains code which is not supporting PPC:
... :info:build /opt/local/bin/g++-mp-4.9 -DHAVE_CONFIG_H -I. -Wall -W -Wcast-align -Wchar-subscripts -Wreturn-type -Wformat -Wformat-security -Wno-format-y2k -Wundef -Wmissing-format- attribute -Wpointer-arith -Wwrite-strings -Wno-unused-parameter -Wno-parentheses -fno-exceptions -DBUILDING_CAIRO__ -DBUILDING_GTK__ -I./Source -I./Source/JavaScriptCore -I./Sour ce/JavaScriptCore/API -I./Source/JavaScriptCore/assembler -I./Source/JavaScriptCore/bytecode -I./Source/JavaScriptCore/bytecompiler -I./Source/JavaScriptCore/dfg -I./Source/JavaScri ptCore/disassembler -I./Source/JavaScriptCore/heap -I./Source/JavaScriptCore/debugger -I./Source/JavaScriptCore/ForwardingHeaders -I./Source/JavaScriptCore/interpreter -I./Source/Ja vaScriptCore/jit -I./Source/JavaScriptCore/jit -I./Source/JavaScriptCore/llint -I./Source/JavaScriptCore/parser -I./Source/JavaScriptCore/profiler -I./Source/JavaScriptCore/runtime -I./Source/JavaScriptCore/tools -I./Source/JavaScriptCore/yarr -I./DerivedSources/JavaScriptCore -I./Source/WTF -DGTEST_USE_OWN_TR1_TUPLE=1 -D__MAC_OS_X_VERSION_MAX_ALLOWED=1050 -O s -m32 -Wno-c++11-compat -O2 -MT Source/JavaScriptCore/llint/Programs_LLIntOffsetsExtractor-LLIntOffsetsExtractor.o -MD -MP -MF Source/JavaScriptCore/llint/.deps/Programs_LLIntOffse tsExtractor-LLIntOffsetsExtractor.Tpo -c -o Source/JavaScriptCore/llint/Programs_LLIntOffsetsExtractor-LLIntOffsetsExtractor.o `test -f 'Source/JavaScriptCore/llint/LLIntOffsetsExtr actor.cpp' || echo './'`Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp :info:build In file included from ./Source/JavaScriptCore/bytecode/ValueRecovery.h:31:0, :info:build from ./Source/JavaScriptCore/bytecode/CodeOrigin.h:31, :info:build from ./Source/JavaScriptCore/bytecode/CodeBlock.h:39, :info:build from Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp:29: :info:build ./Source/JavaScriptCore/assembler/MacroAssembler.h:62:2: error: #error "The MacroAssembler is not supported on this platform." :info:build #error "The MacroAssembler is not supported on this platform." ...
To summarize, webkit-gtk3-2.0
unfortunately cannot be built on 10.5.8 PPC, but not because of existing clang
deficiencies, just since Macroassembler
only supports ARM, ARMv7, MIPS, x86, x86_64, and SH4.
comment:4 Changed 10 years ago by jeremyhu (Jeremy Huddleston Sequoia)
If you wish to submit a patch to get things building, I'll certainly take it, but really the best way forward (IMO) is a newer toolchain.
comment:5 Changed 5 months ago by barracuda156
Replying to udbraumann:
However, after issuing
$ sudo port install webkit-gtk3-2.0 configure.compiler=macports-gcc-4.9and compiling, after a while I had to surrender, since
webkit-gtk3-2.0
contains code which is not supporting PPC::info:build #error "The MacroAssembler is not supported on this platform." ...To summarize,
webkit-gtk3-2.0
unfortunately cannot be built on 10.5.8 PPC, but not because of existingclang
deficiencies, just sinceMacroassembler
only supports ARM, ARMv7, MIPS, x86, x86_64, and SH4.
There is a macro there #if ENABLE(ASSEMBLER)
.
Perhaps use can refrain from enabling it.
UPD. Amazingly, it is still broken for PowerPC: https://github.com/WebKit/webkit/blob/main/Source/JavaScriptCore/assembler/MacroAssembler.h (i.e. not just Darwin, but also BSD/AIX/Linux). I suggest just disable it. No point to implement it for an archaic WebKit.
This is one for jeremyhu as he is more current on compiler configuration.