[Webkit-unassigned] [Bug 135932] 2.5.[12]: problem when installing in a multilib environment

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Aug 21 10:09:40 PDT 2014


https://bugs.webkit.org/show_bug.cgi?id=135932





--- Comment #7 from gabriele balducci <balducci at units.it>  2014-08-21 10:09:48 PST ---
> I would recommend setting -m32 via CFLAGS and CXXFLAGS environment
> variables or CMAKE_C_FLAGS and CMAKE_CXX_FLAGS definitions.
> 
> That would make it possible to search for -m32 in CMAKE_C_FLAGS and
> add it to the introspection scanner's CFLAGS if necessary.

just tried with:

export CFLAGS    "-m32  $CFLAGS" 
export CXXFLAGS  "-m32  $CXXFLAGS"

and:

-DCMAKE_INSTALL_PREFIX=${PREFIX}
-DCMAKE_INSTALL_LIBDIR=lib$(ABI64Maybe)
-DCMAKE_C_FLAGS=-m32
-DCMAKE_CXX_FLAGS=-m32
-DPORT=GTK
-DCMAKE_BUILD_TYPE=Release
-DENABLE_CREDENTIAL_STORAGE=OFF
-DENABLE_GEOLOCATION=OFF
-DCMAKE_VERBOSE_MAKEFILE=TRUE

but no joy.

Build stops at the same point with the same error.

I think that the problem is in this
Source/WebKit2/PlatformGTK.cmake file, where I find:

----8<----8<----8<----
[...]
add_custom_command(
    OUTPUT ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.gir
    DEPENDS WebKit2
    DEPENDS ${CMAKE_BINARY_DIR}/JavaScriptCore-${WEBKITGTK_API_VERSION}.gir
    COMMAND CC=${CMAKE_C_COMPILER} CFLAGS=-Wno-deprecated-declarations LDFLAGS=
        ${INTROSPECTION_SCANNER}
        --quiet
        --warn-all
        --symbol-prefix=webkit
        --identifier-prefix=WebKit
        --namespace=WebKit2
        --nsversion=${WEBKITGTK_API_VERSION}
        --include=GObject-2.0
        --include=Gtk-3.0
        --include=Soup-2.4
        --include-uninstalled=${CMAKE_BINARY_DIR}/JavaScriptCore-${WEBKITGTK_API_VERSION}.gir
        --library=webkit2gtk-${WEBKITGTK_API_VERSION}
        --library=javascriptcoregtk-${WEBKITGTK_API_VERSION}
        -L${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
        --no-libtool
        --pkg=gobject-2.0
        --pkg=gtk+-3.0
        --pkg=libsoup-2.4
        --pkg-export=webkit2gtk-${WEBKITGTK_API_VERSION}
        --output=${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.gir
        --c-include="webkit2/webkit2.h"
        -DBUILDING_WEBKIT
        -DWEBKIT2_COMPILATION
        -I${CMAKE_SOURCE_DIR}/Source
        -I${WEBKIT2_DIR}
        -I${JAVASCRIPTCORE_DIR}/ForwardingHeaders
        -I${DERIVED_SOURCES_DIR}
        -I${DERIVED_SOURCES_WEBKIT2GTK_DIR}
        -I${FORWARDING_HEADERS_WEBKIT2GTK_DIR}
        ${WebKit2GTK_INSTALLED_HEADERS}
        ${WEBKIT2_DIR}/UIProcess/API/gtk/*.cpp
)

[...plus another equal stanza for WebKit2WebExtension-${WEBKITGTK_API_VERSION}.gir]
----8<----8<----8<----

Now: I cannot set CMAKE_C_COMPILER="gcc -m32" (I tried, but it will cause
an almost immediate stop in the build: cmake language related, I
guess); OTOH, both CFLAGS and LDFLAGS are hardcoded, so setting CFLAGS
in the environment won't have any effect.

In my opinion, this Source/WebKit2/PlatformGTK.cmake file should be
modified so that it can catch CFLAGS or LDFLAGS or ... from the
environment; or some other way should be devised to make it support
both ABIs...

But I'm definitely not in the position to be more detailed

> 
> Searching for CMAKE_C_COMPILER_ARG1 and CMAKE_CXX_COMPILER_ARG1 uses
> over the net shows that those two are frequently used when the
> compiler is being invoked through ccache, like `ccache
> gcc/gxx`. That's why I'd rather avoid these two variables entirely.

Thanks for the info: I actually had the impression that I was somewhat misusing
them: my cmake ignorance

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list