From fb740b9aeecc8089184d3e1f8606a6f961997f8a Mon Sep 17 00:00:00 2001 From: "Enrico Weigelt, metux IT consult" Date: Tue, 22 Jul 2025 17:02:38 +0200 Subject: [PATCH] xfree86: drivers: geode: add the driver to the build Signed-off-by: Enrico Weigelt, metux IT consult --- hw/xfree86/drivers/video/geode/meson.build | 73 ++++++++++++++++++++++ hw/xfree86/drivers/video/meson.build | 4 ++ meson_options.txt | 2 + 3 files changed, 79 insertions(+) create mode 100644 hw/xfree86/drivers/video/geode/meson.build diff --git a/hw/xfree86/drivers/video/geode/meson.build b/hw/xfree86/drivers/video/geode/meson.build new file mode 100644 index 0000000000..15756aad55 --- /dev/null +++ b/hw/xfree86/drivers/video/geode/meson.build @@ -0,0 +1,73 @@ +shared_module( + 'geode_drv', + [ + 'src/cimarron.c', + 'src/durango.c', + 'src/geode_common.c', + 'src/geode_dcon.c', + 'src/geode_ddc.c', + 'src/geode_driver.c', + 'src/geode_msr.c', + 'src/lx_cursor.c', + 'src/lx_display.c', + 'src/lx_driver.c', + 'src/lx_exa.c', + 'src/lx_memory.c', + 'src/lx_output.c', + 'src/lx_panel.c', + 'src/lx_video.c', + 'src/panel.c', + + 'src/gx_cursor.c', + 'src/gx_driver.c', + 'src/gx_exa.c', + 'src/gx_randr.c', + 'src/gx_regacc.c', + 'src/gx_rotate.c', + 'src/gx_video.c', + ], + name_prefix: '', + include_directories: [ + inc, + xorg_inc, + include_directories(['src', 'src/gfx', 'src/panel', 'src/cim']) + ], + c_args: [xorg_c_args, '-DHAVE_LX', '-DPNL_SUP', '-DHAVE_GX', '-DOPT_ACCEL'], + dependencies: [ + common_dep, + ], + install: true, + install_dir: join_paths(module_abi_dir, 'drivers'), +) + +# Test that we don't have any unresolved symbols from our module to Xorg. +xorg_build_root = join_paths(meson.project_build_root(), 'hw', 'xfree86') +symbol_test_args = [] +symbol_test_args += join_paths(xorg_build_root, 'libxorgserver.so') +symbol_test_args += join_paths(xorg_build_root, 'dixmods', 'libshadow.so') +symbol_test_args += join_paths(xorg_build_root, 'dixmods', 'libglx.so') +symbol_test_args += join_paths(xorg_build_root, 'drivers', 'video-geode', 'geode_drv.so') + +test('video-geode symbol test', + xorg_symbol_test, + args: symbol_test_args, +) + +shared_module( + 'ztv_drv', + [ + 'src/z4l.c', + ], + name_prefix: '', + include_directories: [ + inc, + xorg_inc, + include_directories(['src', 'src/gfx', 'src/panel', 'src/cim']) + ], + c_args: [xorg_c_args, '-DHAVE_LX', '-DPNL_SUP', '-DHAVE_GX', '-DOPT_ACCEL'], + dependencies: [ + common_dep, + ], + install: true, + install_dir: join_paths(module_abi_dir, 'drivers'), +) diff --git a/hw/xfree86/drivers/video/meson.build b/hw/xfree86/drivers/video/meson.build index 7e9b564166..ea8a602d42 100644 --- a/hw/xfree86/drivers/video/meson.build +++ b/hw/xfree86/drivers/video/meson.build @@ -29,3 +29,7 @@ endif if get_option('xf86-video-fbdev') subdir('fbdev') endif + +if get_option('xf86-video-geode') + subdir('geode') +endif diff --git a/meson_options.txt b/meson_options.txt index 357800ecf0..cc3f6df715 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -137,6 +137,8 @@ option('xf86-video-dummy', type: 'boolean', value: true, description: 'xf86 video driver DUMMY') option('xf86-video-fbdev', type: 'boolean', value: true, description: 'xf86 video driver for /dev/fb*') +option('xf86-video-geode', type: 'boolean', value: true, + description: 'xf86 video driver for GEODE chips') option('tests', type: 'boolean', value: true, description: 'Build tests for the X server on platforms that support it')