diff --git a/CMakeLists.txt b/CMakeLists.txt index db58b4e..0fb61a0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -15,6 +15,9 @@ if(NOT USE_BLAS_WRAP) # _zrotg_ seems to be missing in the wrap header add_definitions(-DNO_BLAS_WRAP) endif() +if (ARITHCHK_PATH) + add_definitions(-D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_DEPRECATE) +endif() include_directories(${CLAPACK_SOURCE_DIR}/INCLUDE) add_subdirectory(F2CLIBS) add_subdirectory(SRC) diff --git a/F2CLIBS/libf2c/CMakeLists.txt b/F2CLIBS/libf2c/CMakeLists.txt index 094614a..e5b40ab 100644 --- a/F2CLIBS/libf2c/CMakeLists.txt +++ b/F2CLIBS/libf2c/CMakeLists.txt @@ -44,12 +44,19 @@ if(UNIX) endif() set_target_properties(arithchk PROPERTIES COMPILE_DEFINITIONS "NO_FPINIT;NO_LONG_LONG") + +if (ARITHCHK_PATH) +ADD_CUSTOM_COMMAND( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/arith.h + COMMAND ${ARITHCHK_PATH} > ${CMAKE_CURRENT_BINARY_DIR}/arith.h + ) +else() ADD_CUSTOM_COMMAND( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/arith.h COMMAND arithchk > ${CMAKE_CURRENT_BINARY_DIR}/arith.h DEPENDS arithchk ) - +endif() set(OFILES ${MISC} ${POW} ${CX} ${DCX} ${REAL} ${DBL} ${INT} ${HALF} ${CMP} ${EFL} ${CHAR} ${I77} ${TIME}) @@ -69,3 +76,6 @@ install(TARGETS f2c EXPORT clapack-targets ARCHIVE DESTINATION lib INCLUDES DESTINATION include) +install(TARGETS arithchk + RUNTIME DESTINATION tools +) \ No newline at end of file diff --git a/F2CLIBS/libf2c/inquire.c b/F2CLIBS/libf2c/inquire.c index 5936a67..4846d41 100644 --- a/F2CLIBS/libf2c/inquire.c +++ b/F2CLIBS/libf2c/inquire.c @@ -32,7 +32,7 @@ integer f_inqu(inlist *a) { byfile=1; g_char(a->infile,a->infilen,buf); #ifdef NON_UNIX_STDIO - x = access(buf,0) ? -1 : 0; + x = _access(buf,0) ? -1 : 0; for(i=0,p=NULL;inext) if (nl == y->nl) return y; @@ -308,7 +308,7 @@ x_rsne(cilist *a) char buf[64]; hashtab *ht; Vardesc *v; - dimen *dn, *dn0, *dn1; + dimen *dn = NULL, *dn0 = NULL, *dn1; ftnlen *dims, *dims1; ftnlen b, b0, b1, ex, no, nomax, size, span; ftnint no1, no2, type;