Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 2 Mar 2019 06:46:30 +0000 (UTC)
From:      Yuri Victorovich <yuri@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r494364 - in head/devel/ispc: . files
Message-ID:  <201903020646.x226kUjV067549@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: yuri
Date: Sat Mar  2 06:46:29 2019
New Revision: 494364
URL: https://svnweb.freebsd.org/changeset/ports/494364

Log:
  devel/ispc: Unbreak by patching away LLVM's dump() functions that ISPC uses but which are not included in the LLVM packages

Added:
  head/devel/ispc/files/patch-src_llvmutil.cpp   (contents, props changed)
  head/devel/ispc/files/patch-src_opt.cpp   (contents, props changed)
Modified:
  head/devel/ispc/Makefile
  head/devel/ispc/files/patch-Makefile

Modified: head/devel/ispc/Makefile
==============================================================================
--- head/devel/ispc/Makefile	Sat Mar  2 06:12:58 2019	(r494363)
+++ head/devel/ispc/Makefile	Sat Mar  2 06:46:29 2019	(r494364)
@@ -4,6 +4,7 @@
 PORTNAME=	ispc
 DISTVERSIONPREFIX=	v
 DISTVERSION=	1.10.0
+PORTREVISION=	1
 CATEGORIES=	devel
 
 MAINTAINER=	yuri@FreeBSD.org
@@ -11,8 +12,6 @@ COMMENT=	Intel's compiler for high-performance SIMD pr
 
 LICENSE=	BSD3CLAUSE
 LICENSE_FILE=	${WRKSRC}/LICENSE.txt
-
-BROKEN=		fails to build
 
 ONLY_FOR_ARCHS=		amd64 i386
 ONLY_FOR_ARCHS_REASON=	only available for x86 architectures

Modified: head/devel/ispc/files/patch-Makefile
==============================================================================
--- head/devel/ispc/files/patch-Makefile	Sat Mar  2 06:12:58 2019	(r494363)
+++ head/devel/ispc/files/patch-Makefile	Sat Mar  2 06:46:29 2019	(r494364)
@@ -1,6 +1,15 @@
---- Makefile.orig	2016-07-08 11:13:52 UTC
+--- Makefile.orig	2019-01-19 01:23:04 UTC
 +++ Makefile
-@@ -241,16 +241,16 @@ dirs:
+@@ -113,7 +113,7 @@ endif
+ ifneq ($(NVPTX_ENABLED), 0)
+     LLVM_COMPONENTS+=nvptx
+ endif
+-LLVM_LIBS=$(shell $(LLVM_CONFIG) --libs $(LLVM_COMPONENTS))
++LLVM_LIBS=$(shell $(LLVM_CONFIG) --libs $(LLVM_COMPONENTS)) -lexecinfo
+ 
+ CLANG=clang
+ CLANG_LIBS = -lclangFrontend -lclangDriver \
+@@ -249,16 +249,16 @@ dirs:
  	@/bin/mkdir -p objs
  
  llvm_check:

Added: head/devel/ispc/files/patch-src_llvmutil.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/ispc/files/patch-src_llvmutil.cpp	Sat Mar  2 06:46:29 2019	(r494364)
@@ -0,0 +1,13 @@
+ISPC devs insist on using dump() functions which LLVM devs consider a debug functionality, and it isn't available in the LLVM packages.
+
+--- src/llvmutil.cpp.orig	2019-03-02 06:20:14 UTC
++++ src/llvmutil.cpp
+@@ -1550,7 +1550,7 @@ lDumpValue(llvm::Value *v, std::set<llvm
+         return;
+ 
+     fprintf(stderr, "  ");
+-    v->dump();
++    //v->dump();
+     done.insert(v);
+ 
+     if (inst == NULL)

Added: head/devel/ispc/files/patch-src_opt.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/ispc/files/patch-src_opt.cpp	Sat Mar  2 06:46:29 2019	(r494364)
@@ -0,0 +1,49 @@
+ISPC devs insist on using dump() functions which LLVM devs consider a debug functionality, and it isn't available in the LLVM packages.
+
+--- src/opt.cpp.orig	2019-03-02 06:22:00 UTC
++++ src/opt.cpp
+@@ -173,7 +173,7 @@ static llvm::Pass *CreatePromoteLocalToP
+                   strlen(getenv("FUNC"))))) {                           \
+         fprintf(stderr, "Start of " NAME "\n");                \
+         fprintf(stderr, "---------------\n");                  \
+-        bb.dump();                                             \
++        /*bb.dump();*/                                             \
+         fprintf(stderr, "---------------\n\n");                \
+     } else /* eat semicolon */
+ 
+@@ -184,7 +184,7 @@ static llvm::Pass *CreatePromoteLocalToP
+                   strlen(getenv("FUNC"))))) {                           \
+         fprintf(stderr, "End of " NAME " %s\n", modifiedAny ? "** CHANGES **" : ""); \
+         fprintf(stderr, "---------------\n");                  \
+-        bb.dump();                                             \
++        /*bb.dump();*/                                             \
+         fprintf(stderr, "---------------\n\n");                \
+     } else /* eat semicolon */
+ 
+@@ -537,7 +537,7 @@ void
+ Optimize(llvm::Module *module, int optLevel) {
+     if (g->debugPrint) {
+         printf("*** Code going into optimization ***\n");
+-        module->dump();
++        //module->dump();
+     }
+     DebugPassManager optPM;
+     optPM.add(llvm::createVerifierPass(),0);
+@@ -932,7 +932,7 @@ Optimize(llvm::Module *module, int optLe
+ 
+     if (g->debugPrint) {
+         printf("\n*****\nFINAL OUTPUT\n*****\n");
+-        module->dump();
++        //module->dump();
+     }
+ 
+ }
+@@ -4895,7 +4895,7 @@ bool
+ DebugPass::runOnModule(llvm::Module &module) {
+     fprintf(stderr, "%s", str_output);
+     fflush(stderr);
+-    module.dump();
++    //module.dump();
+     return true;
+ }
+ 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201903020646.x226kUjV067549>