octave-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #58689] [MXE Octave] Update mesa to use meson


From: Markus Mützel
Subject: [Octave-bug-tracker] [bug #58689] [MXE Octave] Update mesa to use meson as (native) build tool
Date: Sun, 5 Jul 2020 15:22:23 -0400 (EDT)
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36 Edg/83.0.478.58

Follow-up Comment #6, bug #58689 (project octave):

I tried to update build-python to python3 (python3.patch).
With that, ninja and meson compiled fine (build-ninja_v2.patch and
build-meson_v2.patch).

Unfortunately, scons needs python 2.7 and is incompatible with python3. Thus,
the native build rule for mesa broke.
I figured that this wouldn't be too bad after all because we wanted to change
to meson anyway. (Primarily as the native build tool. But using the same build
tool for cross and native builds would probably not hurt imho.)

It turns out meson needs llvm-config to be able to detect llvm
(llvm_config.patch).

But I am still stuck at trying to cross-compile mesa with meson.
The build seems to work ok. But at the last step, it fails with the following
linker error:

[921/921] Linking target src/gallium/targets/libgl-gdi/opengl32.dll
FAILED: src/gallium/targets/libgl-gdi/opengl32.dll 
/home/osboxes/Documents/Repositories/Octave/mxe-octave/usr/bin/x86_64-w64-mingw32-g++
 -o src/gallium/targets/libgl-gdi/opengl32.dll
'src/gallium/targets/libgl-gdi/c96d1e6@@opengl32@sha/libgl_gdi.c.obj'
-Wl,--allow-shlib-undefined -shared
../src/gallium/targets/libgl-gdi/../../state_trackers/wgl/opengl32.def
-Wl,--start-group
-Wl,--out-implib=src/gallium/targets/libgl-gdi/opengl32.dll.a
-Wl,--whole-archive src/gallium/state_trackers/wgl/libwgl.a
-Wl,--no-whole-archive -Wl,--nxcompat -Wl,--dynamicbase
src/gallium/auxiliary/libgallium.a src/compiler/nir/libnir.a
src/compiler/libcompiler.a src/util/libmesa_util.a
src/util/format/libmesa_format.a src/compiler/glsl/libglsl.a
src/compiler/glsl/glcpp/libglcpp.a src/mesa/libmesa_gallium.a
src/mesa/libmesa_common.a src/mesa/libmesa_sse41.a
src/gallium/winsys/sw/gdi/libwsgdi.a src/mapi/glapi/libglapi_static.a
src/gallium/drivers/llvmpipe/libllvmpipe.a
src/gallium/drivers/softpipe/libsoftpipe.a -lws2_32
/home/osboxes/Documents/Repositories/Octave/mxe-octave/usr/x86_64-w64-mingw32/lib/libz.dll.a
-pthread -lm -lrt -ldl -lpthread -lLLVMCoroutines -lLLVMipo
-lLLVMInstrumentation -lLLVMVectorize -lLLVMLinker -lLLVMIRReader
-lLLVMAsmParser -lLLVMX86Disassembler -lLLVMX86AsmParser -lLLVMX86CodeGen
-lLLVMGlobalISel -lLLVMSelectionDAG -lLLVMAsmPrinter -lLLVMDebugInfoCodeView
-lLLVMDebugInfoMSF -lLLVMCodeGen -lLLVMScalarOpts -lLLVMInstCombine
-lLLVMTransformUtils -lLLVMBitWriter -lLLVMX86Desc -lLLVMMCDisassembler
-lLLVMX86Info -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMMCJIT
-lLLVMExecutionEngine -lLLVMTarget -lLLVMAnalysis -lLLVMProfileData
-lLLVMRuntimeDyld -lLLVMObject -lLLVMMCParser -lLLVMBitReader -lLLVMMC
-lLLVMCore -lLLVMBinaryFormat -lLLVMSupport -lLLVMDemangle -lz -ltinfo -lxml2
-lLLVMCoroutines -lLLVMipo -lLLVMInstrumentation -lLLVMVectorize -lLLVMLinker
-lLLVMIRReader -lLLVMAsmParser -lLLVMX86Disassembler -lLLVMX86AsmParser
-lLLVMX86CodeGen -lLLVMGlobalISel -lLLVMSelectionDAG -lLLVMAsmPrinter
-lLLVMDebugInfoCodeView -lLLVMDebugInfoMSF -lLLVMCodeGen -lLLVMScalarOpts
-lLLVMInstCombine -lLLVMTransformUtils -lLLVMBitWriter -lLLVMX86Desc
-lLLVMMCDisassembler -lLLVMX86Info -lLLVMX86AsmPrinter -lLLVMX86Utils
-lLLVMMCJIT -lLLVMExecutionEngine -lLLVMTarget -lLLVMAnalysis
-lLLVMProfileData -lLLVMRuntimeDyld -lLLVMObject -lLLVMMCParser
-lLLVMBitReader -lLLVMMC -lLLVMCore -lLLVMBinaryFormat -lLLVMSupport
-lLLVMDemangle -lz -ltinfo -lxml2 -lLLVMCoroutines -lLLVMipo
-lLLVMInstrumentation -lLLVMVectorize -lLLVMLinker -lLLVMIRReader
-lLLVMAsmParser -lLLVMX86Disassembler -lLLVMX86AsmParser -lLLVMX86CodeGen
-lLLVMGlobalISel -lLLVMSelectionDAG -lLLVMAsmPrinter -lLLVMDebugInfoCodeView
-lLLVMDebugInfoMSF -lLLVMCodeGen -lLLVMScalarOpts -lLLVMInstCombine
-lLLVMTransformUtils -lLLVMBitWriter -lLLVMX86Desc -lLLVMMCDisassembler
-lLLVMX86Info -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMMCJIT
-lLLVMExecutionEngine -lLLVMTarget -lLLVMAnalysis -lLLVMProfileData
-lLLVMRuntimeDyld -lLLVMObject -lLLVMMCParser -lLLVMBitReader -lLLVMMC
-lLLVMCore -lLLVMBinaryFormat -lLLVMSupport -lLLVMDemangle -lz -ltinfo -lxml2
-lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid
-lcomdlg32 -ladvapi32 -Wl,--end-group
/home/osboxes/Documents/Repositories/Octave/mxe-octave/usr/bin/x86_64-w64-mingw32-ld:
cannot find -lrt
/home/osboxes/Documents/Repositories/Octave/mxe-octave/usr/bin/x86_64-w64-mingw32-ld:
cannot find -ldl
/home/osboxes/Documents/Repositories/Octave/mxe-octave/usr/bin/x86_64-w64-mingw32-ld:
cannot find -ltinfo
/home/osboxes/Documents/Repositories/Octave/mxe-octave/usr/bin/x86_64-w64-mingw32-ld:
cannot find -lxml2
/home/osboxes/Documents/Repositories/Octave/mxe-octave/usr/bin/x86_64-w64-mingw32-ld:
cannot find -ltinfo
/home/osboxes/Documents/Repositories/Octave/mxe-octave/usr/bin/x86_64-w64-mingw32-ld:
cannot find -lxml2
/home/osboxes/Documents/Repositories/Octave/mxe-octave/usr/bin/x86_64-w64-mingw32-ld:
cannot find -ltinfo
/home/osboxes/Documents/Repositories/Octave/mxe-octave/usr/bin/x86_64-w64-mingw32-ld:
cannot find -lxml2
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
make[2]: ***
[/home/osboxes/Documents/Repositories/Octave/mxe-octave/Makefile:941:
build-only-mesa] Error 1
make[2]: Leaving directory
'/home/osboxes/Documents/Repositories/Octave/mxe-octave'


These libraries shouldn't be linked in for a win32 library. (At least dl, rt,
and tinfo wouldn't work pretty certainly. Not so sure about xml2.)
I don't know where these flags come from. Any help would be very much
appreciated.

(file #49432, file #49433, file #49434, file #49435)
    _______________________________________________________

Additional Item Attachment:

File name: python3.patch                  Size:3 KB
    <https://savannah.gnu.org/file/python3.patch?file_id=49432>

File name: build-ninja_v2.patch           Size:1 KB
    <https://savannah.gnu.org/file/build-ninja_v2.patch?file_id=49433>

File name: build-meson_v2.patch           Size:2 KB
    <https://savannah.gnu.org/file/build-meson_v2.patch?file_id=49434>

File name: llvm_config.patch              Size:1 KB
    <https://savannah.gnu.org/file/llvm_config.patch?file_id=49435>



    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?58689>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]