cmake_minimum_required(VERSION 3.8.0) project(meschach) if(MSVC) add_compile_options(/W3 /wd4005 /wd4996 /wd4018 -D_CRT_SECURE_NO_WARNINGS) endif() set(meschach_srcs bdfactor.c bkpfacto.c chfactor.c copy.c err.c extras.c fft.c givens.c hessen.c hsehldr.c init.c iter0.c iternsym.c itersym.c ivecop.c lufactor.c machine.c matlab.c matop.c matrixio.c meminfo.c memory.c memstat.c mfunc.c norm.c otherio.c pxop.c qrfactor.c schur.c solve.c sparse.c sparseio.c spbkp.c spchfctr.c splufctr.c sprow.c spswap.c submat.c svd.c symmeig.c update.c vecop.c version.c zcopy.c zfunc.c zgivens.c zhessen.c zhsehldr.c zlufctr.c zmachine.c zmatio.c zmatlab.c zmatop.c zmemory.c znorm.c zqrfctr.c zschur.c zsolve.c ztorture.c zvecop.c ) file(GLOB meschach_headers "*.h") include_directories(".") add_library(meschach ${meschach_srcs}) target_compile_definitions(meschach PRIVATE -DHAVE_MEMORY_H -DHAVE_COMPLEX_H) install( TARGETS meschach RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib ) if(NOT DISABLE_INSTALL_HEADERS) install(FILES ${meschach_headers} DESTINATION include/meschach) endif()