Bug 107843

Summary: 32bit Mesa build failes with meson.
Product: Mesa Reporter: Sergii Romantsov <sergii.romantsov>
Component: Drivers/DRI/i965Assignee: Intel 3D Bugs Mailing List <intel-3d-bugs>
Status: RESOLVED FIXED QA Contact: Intel 3D Bugs Mailing List <intel-3d-bugs>
Severity: normal    
Priority: medium    
Version: git   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Sergii Romantsov 2018-09-06 09:57:23 UTC
While building got several issues:
1. Issue of tools building.
../src/intel/common/gen_clflush.h: In function ‘gen_clflush_range’:
../src/intel/common/gen_clflush.h:37:7: error: implicit declaration of function ‘__builtin_ia32_clflush’ [-Werror=implicit-function-declaration]
       __builtin_ia32_clflush(p);
       ^
../src/intel/common/gen_clflush.h: In function ‘gen_flush_range’:
../src/intel/common/gen_clflush.h:45:4: error: implicit declaration of function ‘__builtin_ia32_mfence’ [-Werror=implicit-function-declaration]
    __builtin_ia32_mfence();

2. issues with driconf:
../src/mesa/drivers/dri/i965/intel_screen.c:64:7: error: expected ‘}’ before ‘DRI_CONF_MESA_NO_ERROR’
../src/mesa/drivers/dri/i965/intel_screen.c:87:7: error: expected ‘}’ before ‘DRI_CONF_ALLOW_GLSL_CROSS_STAGE_INTERPOLATION_MISMATCH’
../src/mesa/drivers/dri/i965/intel_screen.c:98:7: error: expected ‘}’ before ‘DRI_CONF_ALLOW_RGB10_CONFIGS’
Comment 1 Sergii Romantsov 2018-09-06 10:00:55 UTC
Patch series:
https://patchwork.freedesktop.org/series/49266/
Comment 2 Sergii Romantsov 2018-09-06 10:05:06 UTC
Command to build:
meson -Dprefix=~/dev/out/meson_latest -Dbuildtype=debug -Dvalgrind=false -Ddri-drivers=i965 -Dgallium-drivers= -Dvulkan-drivers= -Dgallium-omx="disabled" -Dplatforms=x11,drm,surfaceless -Dtools=intel ./mbuild/
Comment 3 Mark Janes 2018-09-06 16:50:29 UTC
From the mesa list:

Sergi:
Looks like you are right.
After 'git clean' its ok.
Thanks.
Comment 4 Sergii Romantsov 2018-09-07 09:00:07 UTC
Reopened: that issue is valid.
Additional fail case:
mesa/mbuild/../src/util/xmlconfig.c:995: undefined reference to `util_get_process_name'

So for 3 listed issues the invalid is only one case.
Additional patch: https://patchwork.freedesktop.org/patch/247602/
Comment 5 Mark Janes 2018-09-07 18:30:13 UTC
We build 32bit mesa with meson every day.  Our meson invocation:

PKG_CONFIG_PATH=/tmp/build_root/m32/lib/pkgconfig:/tmp/build_root/m32/lib/i386-linux-gnu/pkgconfig:/usr/lib/pkgconfig:/usr/lib/i386-linux-gnu/pkgconfig:/usr/lib/pkgconfig CC=ccache gcc LD_LIBRARY_PATH=/tmp/build_root/m32/lib:/tmp/build_root/m32/lib/i386-linux-gnu:/usr/lib:/usr/lib/i386-linux-gnu CPPFLAGS=-DDEBUG CXX=ccache g++ meson /home/jenkins/workspace/Leeroy_3/repos/mesa/build_mesa_m32 --prefix /tmp/build_root/m32 --libdir lib --cross-file /home/jenkins/workspace/Leeroy_3/mesa/../repos/mesa_ci/build_support/x86-linux-gcc.cross -Dgallium-drivers= -Ddri-drivers=i965,i915 -Dvulkan-drivers=intel -Dplatforms=x11,drm
Comment 6 Mark Janes 2018-09-07 18:31:16 UTC
The CC and CXX env variables were not properly quoted in that last invocation.
Comment 7 Sergii Romantsov 2018-09-11 10:43:56 UTC
Fixed for me with 97fcccb25ed5f55139c03ebc1c71742f0f25f683 and bbe551f3eab793a18cd427098cf8563040c0b56f.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.