svn commit: r526266 - head/graphics/seexpr/files

Alexey Dokuchaev danfe at FreeBSD.org
Sun Feb 16 16:35:08 UTC 2020


Author: danfe
Date: Sun Feb 16 16:35:07 2020
New Revision: 526266
URL: https://svnweb.freebsd.org/changeset/ports/526266

Log:
  Our LLVM packages typically built without dump support (which is meant for
  developers, not for actual LLVM-based products), and ``void dump() const''
  sprinkled across LLVM header files are just prototypes.  However, this is
  not the case with ``$localbase/llvm$ver/include/llvm/Support/CFGUpdate.h'',
  where it contains some actual code:
  
      #if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
        LLVM_DUMP_METHOD void dump() const { print(dbgs()); }
      #endif
  
  This, in turn, results in the linker failure due to "undefined reference to
  llvm::cfg::Update<llvm::BasicBlock*>::dump() const".  Avoid this by defining
  -DNDEBUG when compiling two files which end up having a reference to dump().
  
  This is a prerequisite to enable building with LLVM backend.

Added:
  head/graphics/seexpr/files/
  head/graphics/seexpr/files/patch-src_SeExpr2_CMakeLists.txt   (contents, props changed)

Added: head/graphics/seexpr/files/patch-src_SeExpr2_CMakeLists.txt
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/seexpr/files/patch-src_SeExpr2_CMakeLists.txt	Sun Feb 16 16:35:07 2020	(r526266)
@@ -0,0 +1,13 @@
+--- src/SeExpr2/CMakeLists.txt.orig	2019-10-03 17:15:38 UTC
++++ src/SeExpr2/CMakeLists.txt
+@@ -19,6 +19,10 @@ file(GLOB to_remove "ExprLLVMCodeGeneration.cpp")
+ list(REMOVE_ITEM io_cpp ${to_remove})
+ 
+ set_source_files_properties("ExprBuiltins.cpp" PROPERTIES COMPILE_DEFINITIONS "__STDC_LIMIT_MACROS")
++# XXX: avoid undefref to llvm::cfg::Update<llvm::BasicBlock*>::dump() const
++set_source_files_properties(
++    Expression.cpp ExprLLVMCodeGeneration.cpp
++    PROPERTIES COMPILE_DEFINITIONS NDEBUG)
+ 
+ # Uncomment below to print debug messages / performance stats
+ #add_definitions(-DSEEXPR_DEBUG)


More information about the svn-ports-all mailing list