1libkmsxx_sources = files([ 2 'src/atomicreq.cpp', 3 'src/blob.cpp', 4 'src/card.cpp', 5 'src/connector.cpp', 6 'src/crtc.cpp', 7 'src/dmabufframebuffer.cpp', 8 'src/drmobject.cpp', 9 'src/drmpropobject.cpp', 10 'src/dumbframebuffer.cpp', 11 'src/encoder.cpp', 12 'src/extframebuffer.cpp', 13 'src/framebuffer.cpp', 14 'src/helpers.cpp', 15 'src/mode_cvt.cpp', 16 'src/modedb_cea.cpp', 17 'src/modedb.cpp', 18 'src/modedb_dmt.cpp', 19 'src/pixelformats.cpp', 20 'src/plane.cpp', 21 'src/property.cpp', 22 'src/videomode.cpp', 23]) 24 25public_headers = [ 26 'inc/kms++/dmabufframebuffer.h', 27 'inc/kms++/atomicreq.h', 28 'inc/kms++/property.h', 29 'inc/kms++/plane.h', 30 'inc/kms++/kms++.h', 31 'inc/kms++/connector.h', 32 'inc/kms++/card.h', 33 'inc/kms++/modedb.h', 34 'inc/kms++/pagefliphandler.h', 35 'inc/kms++/encoder.h', 36 'inc/kms++/decls.h', 37 'inc/kms++/videomode.h', 38 'inc/kms++/drmobject.h', 39 'inc/kms++/pixelformats.h', 40 'inc/kms++/crtc.h', 41 'inc/kms++/framebuffer.h', 42 'inc/kms++/extframebuffer.h', 43 'inc/kms++/pipeline.h', 44 'inc/kms++/drmpropobject.h', 45 'inc/kms++/mode_cvt.h', 46 'inc/kms++/blob.h', 47 'inc/kms++/dumbframebuffer.h', 48] 49 50public_headers_omap = [ 51 'inc/kms++/omap/omapframebuffer.h', 52 'inc/kms++/omap/omapkms++.h', 53 'inc/kms++/omap/omapcard.h', 54] 55 56private_includes = include_directories('src', 'inc') 57public_includes = include_directories('inc') 58 59libdrm_dep = dependency('libdrm') 60 61if libdrmomap_dep.found() 62 libkmsxx_sources += files([ 63 'src/omap/omapcard.cpp', 64 'src/omap/omapframebuffer.cpp', 65 ]) 66endif 67 68libkmsxx_deps = [ libdrm_dep, libfmt_dep, libdrmomap_dep ] 69 70libkmsxx = library('kms++', 71 libkmsxx_sources, 72 install : true, 73 include_directories : private_includes, 74 dependencies : libkmsxx_deps) 75 76 77libkmsxx_dep = declare_dependency(include_directories : public_includes, 78 link_with : libkmsxx) 79 80install_headers(public_headers, subdir : 'kms++') 81 82if libdrmomap_dep.found() 83 install_headers(public_headers_omap, subdir : 'kms++/omap') 84endif 85 86pkg = import('pkgconfig') 87pkg.generate(libkmsxx) 88