From 1322de1659ea431a7f686d093a5ebfc6b43bc6d8 Mon Sep 17 00:00:00 2001 From: Martin Pulec Date: Wed, 11 Aug 2021 12:14:19 +0200 Subject: [PATCH] Makefile: do not use .cu.o for CUDA objects The suffix doesn't work well with dependencies - the stem is then without .cu.o extension but the generated .d file is suffixed .cu.d. --- Makefile.in | 6 +++--- configure.ac | 10 +++++----- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Makefile.in b/Makefile.in index 1a47bb40e..65238334b 100644 --- a/Makefile.in +++ b/Makefile.in @@ -289,13 +289,13 @@ GEN_DEPENDENCIES = \ .SUFFIXES: .cu # Pattern rule for compiling CUDA files -%.cu.o: %.cu +%.o: %.cu $(MKDIR_P) $(dir $@) "$(CUDA_COMPILER)" $(CUDA_FLAGS) $(INC) -Xcompiler -MD -c $< -o $@ $(GEN_DEPENDENCIES) -%.cu.lib: %.cu +%.lib: %.cu $(MKDIR_P) $(dir $@) - "$(CUDA_COMPILER)" $(CUDA_FLAGS) -DEXPORT_DLL_SYMBOLS $(INC) -MD --shared $< -o $<.dll + "$(CUDA_COMPILER)" $(CUDA_FLAGS) -DEXPORT_DLL_SYMBOLS $(INC) -MD --shared $< -o $*.dll touch $@ $(GEN_DEPENDENCIES) diff --git a/configure.ac b/configure.ac index e58314bb1..39270630f 100644 --- a/configure.ac +++ b/configure.ac @@ -196,12 +196,12 @@ then CFLAGS="$CFLAGS -fPIC" CXXFLAGS="$CXXFLAGS -fPIC" CUDA_FLAGS="$CUDA_FLAGS -Xcompiler -fPIC" - CU_OBJ_SUFFIX="cu.o" + CU_OBJ_SUFFIX="o" else # Windows if test $WORD_LEN = 32; then CUDA_FLAGS="-m32" fi - CU_OBJ_SUFFIX="cu.lib" + CU_OBJ_SUFFIX="lib" fi AC_SUBST(CUDA_FLAGS) @@ -288,7 +288,7 @@ AC_DEFUN([DEFINE_CUDA], [ # somehow. The same applies also for other CUDA objs/libs. CUDA_COMMON_OBJ=src/cuda_wrapper.$CU_OBJ_SUFFIX CUDA_COMMON_LIB=src/cuda_wrapper.$CU_OBJ_SUFFIX - DLL_LIBS="$DLL_LIBS src/cuda_wrapper.cu.dll" + DLL_LIBS="$DLL_LIBS src/cuda_wrapper.dll" else CUDA_COMMON_OBJ=src/cuda_wrapper.$CU_OBJ_SUFFIX CUDA_COMMON_LIB= @@ -2318,7 +2318,7 @@ AC_DEFUN([DEFINE_CUDA_DXT], [ if test $system = Windows; then CUDA_DXT_COMMON_OBJ="cuda_dxt/cuda_dxt.$CU_OBJ_SUFFIX" CUDA_DXT_COMMON_LIB="cuda_dxt/cuda_dxt.$CU_OBJ_SUFFIX" - DLL_LIBS="$DLL_LIBS cuda_dxt/cuda_dxt.cu.dll" + DLL_LIBS="$DLL_LIBS cuda_dxt/cuda_dxt.dll" else CUDA_DXT_COMMON_OBJ="cuda_dxt/cuda_dxt.$CU_OBJ_SUFFIX" CUDA_DXT_COMMON_LIB= @@ -2945,7 +2945,7 @@ then LDGM_GPU_OBJS="ldgm/src/ldgm-session-gpu.o src/rtp/ldgm_gpu.o $CUDA_COMMON_OBJ" LDGM_GPU_LIBS="$CUDA_COMMON_LIB $CUDA_LIB" if test $system = Windows; then - DLL_LIBS="$DLL_LIBS ldgm/src/gpu.cu.dll" + DLL_LIBS="$DLL_LIBS ldgm/src/gpu.dll" LDGM_GPU_OBJS="$LDGM_GPU_OBJS ldgm/src/gpu.$CU_OBJ_SUFFIX" LDGM_GPU_LIBS="$LDGM_GPU_LIBS ldgm/src/gpu.$CU_OBJ_SUFFIX" else