@@ -703,6 +703,39 @@ if(NOT NO_LAPACKE)
703703 COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR} /lapack-netlib/LAPACKE/include/lapacke_mangling_with_flags.h.in "${CMAKE_BINARY_DIR} /lapacke_mangling.h"
704704 )
705705 install (FILES ${CMAKE_BINARY_DIR} /lapacke_mangling.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} )
706+ if (NOT (${SYMBOLPREFIX}${SYMBOLSUFFIX} STREQUAL "" ))
707+ message (STATUS "Generating lapacke.h in ${CMAKE_INSTALL_INCLUDEDIR} " )
708+ set (LAPACKE_H ${CMAKE_BINARY_DIR} /generated/lapacke.h)
709+ file (READ ${CMAKE_CURRENT_SOURCE_DIR} /lapack-netlib/LAPACKE/include/lapacke.h LAPACKE_H_CONTENTS )
710+ if (NOT ${SYMBOLPREFIX} STREQUAL "" )
711+ string (REGEX REPLACE "(LAPACKE_*)" " ${SYMBOLPREFIX} \\ 1" LAPACKE_H_CONTENTS_NEW "${LAPACKE_H_CONTENTS} " )
712+ string (REPLACE "_ ${SYMBOLPREFIX} LAPACKE_H_" "_LAPACKE_H_" LAPACKE_H_CONTENTS ${LAPACKE_H_CONTENTS_NEW} )
713+ string (REPLACE "${SYMBOLPREFIX} LAPACKE_malloc" "LAPACKE_malloc" LAPACKE_H_CONTENTS_NEW ${LAPACKE_H_CONTENTS} )
714+ string (REPLACE "${SYMBOLPREFIX} LAPACKE_free" "LAPACKE_free" LAPACKE_H_CONTENTS ${LAPACKE_H_CONTENTS_NEW} )
715+ set (LAPACKE_H_CONTENTS_NEW ${LAPACKE_H_CONTENTS} )
716+ endif ()
717+ if (NOT ${SYMBOLSUFFIX} STREQUAL "" )
718+ string (REGEX REPLACE "(${SYMBOLPREFIX} LAPACKE_[a-z1-9]*[^ (]*)" "\\ 1${SYMBOLSUFFIX} " LAPACKE_H_CONTENTS_NEW "${LAPACKE_H_CONTENTS} " )
719+ string (REPLACE "#define${SYMBOLSUFFIX} " "#define" LAPACKE_H_CONTENTS ${LAPACKE_H_CONTENTS_NEW} )
720+ string (REPLACE "LAPACKE_malloc${SYMBOLSUFFIX} " "LAPACKE_malloc" LAPACKE_H_CONTENTS_NEW ${LAPACKE_H_CONTENTS} )
721+ string (REPLACE "LAPACKE_free${SYMBOLSUFFIX} " "LAPACKE_free" LAPACKE_H_CONTENTS ${LAPACKE_H_CONTENTS_NEW} )
722+ set (LAPACKE_H_CONTENTS_NEW ${LAPACKE_H_CONTENTS} )
723+ endif ()
724+ file (WRITE ${LAPACKE_H} "${LAPACKE_H_CONTENTS_NEW} " )
725+ install (FILES ${LAPACKE_H} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} )
726+ message (STATUS "Generating lapack.h in ${CMAKE_INSTALL_INCLUDEDIR} " )
727+ set (LAPACK_H ${CMAKE_BINARY_DIR} /generated/lapack.h)
728+ file (READ ${CMAKE_CURRENT_SOURCE_DIR} /lapack-netlib/LAPACKE/include/lapack.h LAPACK_H_CONTENTS )
729+ if (NOT ${SYMBOLPREFIX} STREQUAL "" )
730+ string (REGEX REPLACE "(LAPACK_[a-z1-9]*[ \( ][.\) ]*)" "${SYMBOLPREFIX} \\ 1" LAPACK_H_CONTENTS_NEW "${LAPACK_H_CONTENTS} " )
731+ set (LAPACK_H_CONTENTS ${LAPACK_H_CONTENTS_NEW} )
732+ endif ()
733+ if (NOT ${SYMBOLSUFFIX} STREQUAL "" )
734+ string (REGEX REPLACE "(${SYMBOLPREFIX} LAPACK_[a-z1-9]*)([ \( ].\) " "\\ 1${SYMBOLSUFFIX} \\ 2" LAPACK_H_CONTENTS_NEW "${LAPACK_H_CONTENTS} " )
735+ endif ()
736+ file (WRITE ${LAPACK_H} "${LAPACK_H_CONTENTS_NEW} " )
737+ install (FILES ${LAPACK_H} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} )
738+ endif ()
706739endif ()
707740
708741# Install pkg-config files
0 commit comments