xiaoyeli / superlu

Supernodal sparse direct solver. https://portal.nersc.gov/project/sparse/superlu/
Other
272 stars 95 forks source link

CBLAS/CMakeLists.txt incorrectly references SRC/input_error.c #72

Closed alexchandel closed 1 year ago

alexchandel commented 1 year ago

CBLAS/CMakeLists.txt depends on an input_error.c, which does not exist, yielding a CMake error:

CMake Error at CBLAS/CMakeLists.txt:83 (add_library):
  Cannot find source file:

    input_error.c

  Tried extensions .c .C .c++ .cc .cpp .cxx .cu .mpp .m .M .mm .ixx .cppm .h
  .hh .h++ .hm .hpp .hxx .in .txx .f .F .for .f77 .f90 .f95 .f03 .hip .ispc

CMake Error at CBLAS/CMakeLists.txt:83 (add_library):
  No SOURCES given to target: blas

There is a SRC/input_error.c however. You should decide which lib needs to provide input_error(char *, int *). If superlu provides it, then extern it from CBLAS. If BLAS provides it, then move input_error.c into CBLAS/.

alexchandel commented 1 year ago

It's possible that 9df350c forgot to copy the actual file.

alexchandel commented 1 year ago

Please remote input_sources.c from the sources for CBLAS. This is an error, and breaks the current build.

I currently have to delete it to build master:

file(READ ${EXTERN_DIR}/superlu/CBLAS/CMakeLists.txt FILE_CONTENTS)
string(REPLACE "input_error.c" "" FILE_CONTENTS "${FILE_CONTENTS}")
file(WRITE ${EXTERN_DIR}/superlu/CBLAS/CMakeLists.txt "${FILE_CONTENTS}")
xiaoyeli commented 1 year ago

No need to have input_error.c in CBLAS/. Updated CBLAS/CMakeLists.txt