project('me.sergiotarxz.elfspy', 'cpp') pkg = import('pkgconfig') sources = [ 'Call.cpp', 'Report.cpp', 'ELFInfo.cpp', 'SPY.cpp', 'Error.cpp', 'SectionHeader.cpp', 'GOTEntry.cpp', 'Fail.cpp', 'MFile.cpp', ] headers = [ './Capture.h', './HookImpl.h', './Thunk.h', './MFile.h', './Lambda.h', './Method.h', './Profiler.h', './GOTEntry.h', './MethodInfo.h', './Section.h', './ELFObject.h', './Call.h', './SectionHeader.h', './Variadic.h', './MethodPointer.h', './Fail.h', './Result.h', './ThunkHandle.h', './Report.h', './SPY.h', './Fake.h', './Error.h', './Hook.h', './ELFInfo.h', './Function.h', './HookBase.h', './Arg.h', ] elfspylib = library('elfspy', sources, install : true, include_directories: ['.', '..'], c_args: ['-fPIC', '-O0', '-g'], ) install_headers(headers, subdir: 'elfspy') pkg.generate(elfspylib) elfspy_dep = declare_dependency ( include_directories: ['.'], link_with: elfspylib )