Module Name: src
Committed By: joerg
Date: Wed Apr 10 20:32:56 UTC 2019
Modified Files:
src/external/bsd/llvm: link.mk
src/external/mit/xorg/lib/gallium: Makefile
Log Message:
Extend LLVM link.mk to handle librt. Use it in Gallium.
To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/external/bsd/llvm/link.mk
cvs rdiff -u -r1.22 -r1.23 src/external/mit/xorg/lib/gallium/Makefile
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/external/bsd/llvm/link.mk
diff -u src/external/bsd/llvm/link.mk:1.5 src/external/bsd/llvm/link.mk:1.6
--- src/external/bsd/llvm/link.mk:1.5 Sun Sep 29 12:11:59 2013
+++ src/external/bsd/llvm/link.mk Wed Apr 10 20:32:56 2019
@@ -1,7 +1,9 @@
-# $NetBSD: link.mk,v 1.5 2013/09/29 12:11:59 joerg Exp $
+# $NetBSD: link.mk,v 1.6 2019/04/10 20:32:56 joerg Exp $
.include <bsd.own.mk>
+LLVM_TOPLEVEL:= ${.PARSEDIR}
+
.if defined(HOSTPROG)
LIB_BASE= ${NETBSDSRCDIR}/tools/llvm-lib
.else
@@ -38,6 +40,12 @@ LDADD+= -L${LLVM_OBJDIR.${l}} -lLLVM${l}
DPADD+= ${LLVM_OBJDIR.${l}}/libLLVM${l}.a
.endfor
+.for l in ${LLVMRT_LIBS}
+LLVMRT_OBJDIR.${l}!= cd ${LLVM_TOPLEVEL}/librt/libLLVM${l} && ${PRINTOBJDIR}
+LDADD+= ${LLVMRT_OBJDIR.${l}}/libLLVM${l}_pic.a
+DPADD+= ${LLVMRT_OBJDIR.${l}}/libLLVM${l}_pic.a
+.endfor
+
.if defined(HOSTPROG)
LDADD_NEED_DL= cat ${LLVM_TOOLCONF_OBJDIR}/need-dl 2> /dev/null
LDADD_NEED_TERMINFO= cat ${LLVM_TOOLCONF_OBJDIR}/need-terminfo 2> /dev/null
Index: src/external/mit/xorg/lib/gallium/Makefile
diff -u src/external/mit/xorg/lib/gallium/Makefile:1.22 src/external/mit/xorg/lib/gallium/Makefile:1.23
--- src/external/mit/xorg/lib/gallium/Makefile:1.22 Sun Apr 7 17:31:32 2019
+++ src/external/mit/xorg/lib/gallium/Makefile Wed Apr 10 20:32:56 2019
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.22 2019/04/07 17:31:32 christos Exp $
+# $NetBSD: Makefile,v 1.23 2019/04/10 20:32:56 joerg Exp $
# Link the gallium mega driver.
@@ -961,9 +961,7 @@ LIBDPLIBS+= execinfo ${.CURDIR}/../../..
# gallium drivers requiring LLVM
.if ${BUILD_LLVMPIPE} == 1 || ${BUILD_RADEON} == 1
-LLVM_LIB_DIR!= cd ${.CURDIR}/../../../../../external/bsd/llvm/librt; ${PRINTOBJDIR}
-
-LLVM_LIBS= \
+LLVMRT_LIBS= \
TransformsCoroutines \
Passes \
MCJIT \
@@ -971,7 +969,7 @@ LLVM_LIBS= \
RuntimeDyld
.if ${BUILD_RADEON} == 1
-LLVM_LIBS+= \
+LLVMRT_LIBS+= \
AMDGPUCodeGen \
AMDGPUMCTargetDesc \
AMDGPUAsmPrinter \
@@ -982,7 +980,7 @@ LLVM_LIBS+= \
.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
# XXX duplicates
-LLVM_LIBS+= \
+LLVMRT_LIBS+= \
X86Disassembler \
X86CodeGen \
X86MCTargetDesc \
@@ -992,7 +990,7 @@ LLVM_LIBS+= \
X86TargetInfo \
X86Utils
.endif
-LLVM_LIBS+= \
+LLVMRT_LIBS+= \
GlobalISel \
MCDisassembler \
SelectionDAG \
@@ -1020,12 +1018,7 @@ LLVM_LIBS+= \
TransformsUtils \
Support
-.for llvm_library in ${LLVM_LIBS}
-dir!= cd ${LLVM_LIB_DIR}/libLLVM${llvm_library}; ${PRINTOBJDIR}
-lib= ${dir}/libLLVM${llvm_library}_pic.a
-DPADD+= ${lib}
-LDADD+= ${lib}
-.endfor
+.include "${NETBSDSRCDIR}/external/bsd/llvm/link.mk"
.endif # ${BUILD_LLVM_PIPE} == 1 || ${BUILD_RADEON} == 1