summaryrefslogtreecommitdiff
path: root/kms++/meson.build
diff options
context:
space:
mode:
Diffstat (limited to 'kms++/meson.build')
-rw-r--r--kms++/meson.build87
1 files changed, 87 insertions, 0 deletions
diff --git a/kms++/meson.build b/kms++/meson.build
new file mode 100644
index 0000000..fee1b54
--- /dev/null
+++ b/kms++/meson.build
@@ -0,0 +1,87 @@
+libkmsxx_sources = files([
+ 'src/atomicreq.cpp',
+ 'src/blob.cpp',
+ 'src/card.cpp',
+ 'src/connector.cpp',
+ 'src/crtc.cpp',
+ 'src/dmabufframebuffer.cpp',
+ 'src/drmobject.cpp',
+ 'src/drmpropobject.cpp',
+ 'src/dumbframebuffer.cpp',
+ 'src/encoder.cpp',
+ 'src/extframebuffer.cpp',
+ 'src/framebuffer.cpp',
+ 'src/helpers.cpp',
+ 'src/mode_cvt.cpp',
+ 'src/modedb_cea.cpp',
+ 'src/modedb.cpp',
+ 'src/modedb_dmt.cpp',
+ 'src/pixelformats.cpp',
+ 'src/plane.cpp',
+ 'src/property.cpp',
+ 'src/videomode.cpp',
+])
+
+public_headers = [
+ 'inc/kms++/dmabufframebuffer.h',
+ 'inc/kms++/atomicreq.h',
+ 'inc/kms++/property.h',
+ 'inc/kms++/plane.h',
+ 'inc/kms++/kms++.h',
+ 'inc/kms++/connector.h',
+ 'inc/kms++/card.h',
+ 'inc/kms++/modedb.h',
+ 'inc/kms++/pagefliphandler.h',
+ 'inc/kms++/encoder.h',
+ 'inc/kms++/decls.h',
+ 'inc/kms++/videomode.h',
+ 'inc/kms++/drmobject.h',
+ 'inc/kms++/pixelformats.h',
+ 'inc/kms++/crtc.h',
+ 'inc/kms++/framebuffer.h',
+ 'inc/kms++/extframebuffer.h',
+ 'inc/kms++/pipeline.h',
+ 'inc/kms++/drmpropobject.h',
+ 'inc/kms++/mode_cvt.h',
+ 'inc/kms++/blob.h',
+ 'inc/kms++/dumbframebuffer.h',
+]
+
+public_headers_omap = [
+ 'inc/kms++/omap/omapframebuffer.h',
+ 'inc/kms++/omap/omapkms++.h',
+ 'inc/kms++/omap/omapcard.h',
+]
+
+private_includes = include_directories('src', 'inc')
+public_includes = include_directories('inc')
+
+libdrm_dep = dependency('libdrm')
+
+if libdrmomap_dep.found()
+ libkmsxx_sources += files([
+ 'src/omap/omapcard.cpp',
+ 'src/omap/omapframebuffer.cpp',
+ ])
+endif
+
+libkmsxx_deps = [ libdrm_dep, libfmt_dep, libdrmomap_dep ]
+
+libkmsxx = library('kms++',
+ libkmsxx_sources,
+ install : true,
+ include_directories : private_includes,
+ dependencies : libkmsxx_deps)
+
+
+libkmsxx_dep = declare_dependency(include_directories : public_includes,
+ link_with : libkmsxx)
+
+install_headers(public_headers, subdir : 'kms++')
+
+if libdrmomap_dep.found()
+ install_headers(public_headers_omap, subdir : 'kms++/omap')
+endif
+
+pkg = import('pkgconfig')
+pkg.generate(libkmsxx)