I looked at bugs 108308 and 108310 and tested the attached patch
https://bugs.freedesktop.org/attachment.cgi?id=141969
It seams to be a lot better than patchwork series 50108:
- it doesn't have build system specific code;

- no extra libraries so that Meson limitation regarding dependency modules 
addition based on dependency version is no longer hit;
- no LLVM modules requirements changes. Which means no build break with Scons 
or Meson and linking break between osmesa and swr. Needs testing with LLVM 
6.0.1.

    On Sunday, October 7, 2018, 6:35:26 AM GMT+3, Hota, Alok 
<alok.h...@intel.com> wrote:  
 
 #yiv8833351369 #yiv8833351369 -- _filtered #yiv8833351369 {panose-1:2 4 5 3 5 
4 6 3 2 4;} _filtered #yiv8833351369 {font-family:Calibri;panose-1:2 15 5 2 2 2 
4 3 2 4;} _filtered #yiv8833351369 {panose-1:0 0 0 0 0 0 0 0 0 
0;}#yiv8833351369 #yiv8833351369 p.yiv8833351369MsoNormal, #yiv8833351369 
li.yiv8833351369MsoNormal, #yiv8833351369 div.yiv8833351369MsoNormal 
{margin:0in;margin-bottom:.0001pt;font-size:12.0pt;font-family:New 
serif;}#yiv8833351369 a:link, #yiv8833351369 span.yiv8833351369MsoHyperlink 
{color:blue;text-decoration:underline;}#yiv8833351369 a:visited, #yiv8833351369 
span.yiv8833351369MsoHyperlinkFollowed 
{color:purple;text-decoration:underline;}#yiv8833351369 
span.yiv8833351369EmailStyle17 
{font-family:sans-serif;color:#1F497D;}#yiv8833351369 
.yiv8833351369MsoChpDefault {font-size:10.0pt;} _filtered #yiv8833351369 
{margin:1.0in 1.0in 1.0in 1.0in;}#yiv8833351369 div.yiv8833351369WordSection1 
{}#yiv8833351369 
Thanks for the patch!
 
And thanks for describing the linking error; we will look further into it. This 
patch should be a good starting point for resolving it.
 
  
 
-Alok
 
  
 
From: mesa-dev [mailto:mesa-dev-boun...@lists.freedesktop.org]On Behalf Of 
Liviu Prodea
Sent: Saturday, October 6, 2018 3:09 PM
To: mesa-dev@lists.freedesktop.org
Cc: mesa-sta...@lists.freedesktop.org
Subject: [Mesa-dev] [Mesa-stable] [PATCH] Scons: swr: fix LLVM >= 7 build
 
  
 
Well I am more used with the merge / pull request model of sending patches so I 
am going to link it instead of inlining:
 
  
 
  
 
https://raw.githubusercontent.com/pal1000/mesa-dist-win/master/patches/upstream/scons-swr-llvm7.patch
 
  
 
  
 
This patch depends onseries 50108 to be effective but it can be safely merged 
either before or after it.
 
  
 
  
 
Unfortunately this patch doesn't help osmesa linking with swr when using llvm 
>= 7 which is also an issue unaddressed by series 50108.
 
  
 
  
 
If you try to build both swr and osmesa together when using LLVM 7.0 with Scons 
you get this after applying this patch otherwise would be way more unresolved 
symbols. This patch cuts 41 unresolved symbols resulting in successful build 
when not building osmesa.
 
  
 
  
 
  
 
Generating code
Finished generating code
Finished generating code
Finished generating code
  Archiving build\windows-x86_64\gallium\drivers\swr\swr.lib ...
  Linking build\windows-x86_64\gallium\targets\osmesa\osmesa.dll ...
  Linking build\windows-x86_64\gallium\targets\libgl-gdi\opengl32.dll ...
   Creating library build\windows-x86_64\gallium\targets\osmesa\osmesa.lib and 
object build\windows-x86_64\gallium\targets\osmesa\osmesa.exp
   Creating library build\windows-x86_64\gallium\targets\libgl-gdi\opengl32.lib 
and object build\windows-x86_64\gallium\targets\libgl-gdi\opengl32.exp
swr.lib(JitManager.obj) : error LNK2001: unresolved external symbol "class 
llvm::ModulePass * __cdecl llvm::createPGOInstrumentationUseLegacyPass(class 
llvm::StringRef)" 
(?createPGOInstrumentationUseLegacyPass@llvm@@YAPEAVModulePass@1@VStringRef@1@@Z)
swr.lib(JitManager.obj) : error LNK2001: unresolved external symbol "class 
llvm::ModulePass * __cdecl llvm::createPGOInstrumentationGenLegacyPass(void)" 
(?createPGOInstrumentationGenLegacyPass@llvm@@YAPEAVModulePass@1@XZ)
swr.lib(JitManager.obj) : error LNK2001: unresolved external symbol "class 
llvm::FunctionPass * __cdecl llvm::createPGOMemOPSizeOptLegacyPass(void)" 
(?createPGOMemOPSizeOptLegacyPass@llvm@@YAPEAVFunctionPass@1@XZ)
swr.lib(JitManager.obj) : error LNK2001: unresolved external symbol "class 
llvm::ModulePass * __cdecl 
llvm::createPGOIndirectCallPromotionLegacyPass(bool,bool)" 
(?createPGOIndirectCallPromotionLegacyPass@llvm@@YAPEAVModulePass@1@_N0@Z)
swr.lib(JitManager.obj) : error LNK2001: unresolved external symbol "class 
llvm::ModulePass * __cdecl llvm::createInstrProfilingLegacyPass(struct 
llvm::InstrProfOptions const &)" 
(?createInstrProfilingLegacyPass@llvm@@YAPEAVModulePass@1@AEBUInstrProfOptions@1@@Z)
swr.lib(JitManager.obj) : error LNK2001: unresolved external symbol "public: 
static struct llvm::GCOVOptions __cdecl llvm::GCOVOptions::getDefault(void)" 
(?getDefault@GCOVOptions@llvm@@SA?AU12@XZ)
swr.lib(JitManager.obj) : error LNK2001: unresolved external symbol "class 
llvm::FunctionPass * __cdecl llvm::createBoundsCheckingLegacyPass(void)" 
(?createBoundsCheckingLegacyPass@llvm@@YAPEAVFunctionPass@1@XZ)
swr.lib(JitManager.obj) : error LNK2001: unresolved external symbol "class 
llvm::ModulePass * __cdecl llvm::createGCOVProfilerPass(struct 
llvm::GCOVOptions const &)" 
(?createGCOVProfilerPass@llvm@@YAPEAVModulePass@1@AEBUGCOVOptions@1@@Z)
build\windows-x86_64\gallium\targets\libgl-gdi\opengl32.dll : fatal error 
LNK1120: 8 unresolved externals
scons: *** [build\windows-x86_64\gallium\targets\libgl-gdi\opengl32.dll] Error 
1120
swr.lib(JitManager.obj) : error LNK2001: unresolved external symbol "class 
llvm::ModulePass * __cdecl llvm::createPGOInstrumentationUseLegacyPass(class 
llvm::StringRef)" 
(?createPGOInstrumentationUseLegacyPass@llvm@@YAPEAVModulePass@1@VStringRef@1@@Z)
swr.lib(JitManager.obj) : error LNK2001: unresolved external symbol "class 
llvm::ModulePass * __cdecl llvm::createPGOInstrumentationGenLegacyPass(void)" 
(?createPGOInstrumentationGenLegacyPass@llvm@@YAPEAVModulePass@1@XZ)
swr.lib(JitManager.obj) : error LNK2001: unresolved external symbol "class 
llvm::FunctionPass * __cdecl llvm::createPGOMemOPSizeOptLegacyPass(void)" 
(?createPGOMemOPSizeOptLegacyPass@llvm@@YAPEAVFunctionPass@1@XZ)
swr.lib(JitManager.obj) : error LNK2001: unresolved external symbol "class 
llvm::ModulePass * __cdecl 
llvm::createPGOIndirectCallPromotionLegacyPass(bool,bool)" 
(?createPGOIndirectCallPromotionLegacyPass@llvm@@YAPEAVModulePass@1@_N0@Z)
swr.lib(JitManager.obj) : error LNK2001: unresolved external symbol "class 
llvm::ModulePass * __cdecl llvm::createInstrProfilingLegacyPass(struct 
llvm::InstrProfOptions const &)" 
(?createInstrProfilingLegacyPass@llvm@@YAPEAVModulePass@1@AEBUInstrProfOptions@1@@Z)
swr.lib(JitManager.obj) : error LNK2001: unresolved external symbol "public: 
static struct llvm::GCOVOptions __cdecl llvm::GCOVOptions::getDefault(void)" 
(?getDefault@GCOVOptions@llvm@@SA?AU12@XZ)
swr.lib(JitManager.obj) : error LNK2001: unresolved external symbol "class 
llvm::FunctionPass * __cdecl llvm::createBoundsCheckingLegacyPass(void)" 
(?createBoundsCheckingLegacyPass@llvm@@YAPEAVFunctionPass@1@XZ)
swr.lib(JitManager.obj) : error LNK2001: unresolved external symbol "class 
llvm::ModulePass * __cdecl llvm::createGCOVProfilerPass(struct 
llvm::GCOVOptions const &)" 
(?createGCOVProfilerPass@llvm@@YAPEAVModulePass@1@AEBUGCOVOptions@1@@Z)
build\windows-x86_64\gallium\targets\osmesa\osmesa.dll : fatal error LNK1120: 8 
unresolved externals
scons: *** [build\windows-x86_64\gallium\targets\osmesa\osmesa.dll] Error 1120
scons: building terminated because of errors.
 
  
 
  
 
  
   
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to