[PATCH xserver 2/3] meson: Distribute more SDK headers

Aaron Plattner aplattner at nvidia.com
Fri Mar 30 16:39:29 UTC 2018


Thanks, Thierry! I started working on a change to do this, but didn't
get very far before you beat me to it.

On 03/29/2018 04:07 AM, Thierry Reding wrote:
> From: Thierry Reding <treding at nvidia.com>
> 
> Install missing headers to the SDK directory to allow external modules
> to properly build against the SDK. After this commit, the list of files
> installed in the SDK include directory is the same as the list of files
> installed by the autotools-based build.
> 
> Signed-off-by: Thierry Reding <treding at nvidia.com>
> ---
>  Xext/meson.build                  | 12 ++++++++++++
>  composite/meson.build             |  6 ++++++
>  dbe/meson.build                   |  6 ++++++
>  dri3/meson.build                  |  6 ++++++
>  fb/meson.build                    | 10 ++++++++++
>  glx/meson.build                   |  6 ++++++
>  hw/xfree86/os-support/meson.build |  9 ++++++++-
>  include/meson.build               |  1 +
>  mi/meson.build                    | 15 +++++++++++++++
>  miext/damage/meson.build          |  7 +++++++
>  miext/shadow/meson.build          |  6 ++++++
>  miext/sync/meson.build            |  9 +++++++++
>  present/meson.build               |  7 +++++++
>  randr/meson.build                 |  7 +++++++
>  render/meson.build                |  9 +++++++++
>  15 files changed, 115 insertions(+), 1 deletion(-)
> 
> diff --git a/Xext/meson.build b/Xext/meson.build
> index 9968f2a9e312..a7217371871d 100644
> --- a/Xext/meson.build
> +++ b/Xext/meson.build
> @@ -8,12 +8,19 @@ srcs_xext = [
>      'xtest.c',
>  ]
>  
> +hdrs_xext = [
> +    'geext.h',
> +    'geint.h',
> +    'syncsdk.h',
> +]
> +
>  if build_dpms
>      srcs_xext += 'dpms.c'
>  endif
>  
>  if build_mitshm
>      srcs_xext += 'shm.c'
> +    hdrs_xext += ['shmint.h']
>  endif
>  
>  if build_res
> @@ -26,6 +33,7 @@ endif
>  
>  if build_xace
>      srcs_xext += 'xace.c'
> +    hdrs_xext += ['xace.h', 'xacestr.h']
>  endif
>  
>  if build_xf86bigfont
> @@ -34,6 +42,7 @@ endif
>  
>  if build_xinerama
>      srcs_xext += ['panoramiX.c', 'panoramiXprocs.c', 'panoramiXSwap.c']
> +    hdrs_xext += ['panoramiX.h', 'panoramiXsrv.h']
>  endif
>  
>  if build_xsecurity
> @@ -46,6 +55,7 @@ endif
>  
>  if build_xv
>      srcs_xext += ['xvmain.c', 'xvdisp.c', 'xvmc.c']
> +    hdrs_xext += ['xvdix.h', 'xvmcext.h']
>  endif
>  
>  libxserver_xext = static_library('libxserver_xext',
> @@ -59,3 +69,5 @@ libxserver_xext_vidmode = static_library('libxserver_xext_vidmode',
>      include_directories: inc,
>      dependencies: common_dep,
>  )
> +
> +install_data(hdrs_xext, install_dir: xorgsdkdir)

Do these new install_data() directives need to be behind an 'if
build_xorg'? It looks like the other two instances of this that weren't
behind the build_xorg check that guards subdir('xfree86') in
hw/meson.build had their own build_xorg checks.

Prior to this change, building with "meson configure -Dxorg=false" only
installs xorg-server.h to $prefix/include/xorg.

> diff --git a/composite/meson.build b/composite/meson.build
> index 6c4a03fb80c2..7547f0e7edce 100644
> --- a/composite/meson.build
> +++ b/composite/meson.build
> @@ -6,8 +6,14 @@ srcs_composite = [
>  	'compwindow.c',
>  ]
>  
> +hdrs_composite = [
> +	'compositeext.h',
> +]
> +
>  libxserver_composite = static_library('libxserver_composite',
>  	srcs_composite,
>  	include_directories: inc,
>  	dependencies: common_dep,
>  )
> +
> +install_data(hdrs_composite, install_dir: xorgsdkdir)
> diff --git a/dbe/meson.build b/dbe/meson.build
> index e10bde19913d..76a2d3f85d2b 100644
> --- a/dbe/meson.build
> +++ b/dbe/meson.build
> @@ -3,8 +3,14 @@ srcs_dbe = [
>  	'midbe.c',
>  ]
>  
> +hdrs_dbe = [
> +	'dbestruct.h',
> +]
> +
>  libxserver_dbe = static_library('libxserver_dbe',
>  	srcs_dbe,
>  	include_directories: inc,
>  	dependencies: common_dep,
>  )
> +
> +install_data(hdrs_dbe, install_dir: xorgsdkdir)
> diff --git a/dri3/meson.build b/dri3/meson.build
> index 0deec32aafbe..48ce0d9d6aa1 100644
> --- a/dri3/meson.build
> +++ b/dri3/meson.build
> @@ -4,6 +4,10 @@ srcs_dri3 = [
>  	'dri3_screen.c',
>  ]
>  
> +hdrs_dri3 = [
> +	'dri3.h',
> +]
> +
>  libxserver_dri3 = []
>  if build_dri3
>      libxserver_dri3 = static_library('libxserver_dri3',
> @@ -13,3 +17,5 @@ if build_dri3
>          c_args: '-DHAVE_XORG_CONFIG_H'
>          )
>  endif
> +
> +install_data(hdrs_dri3, install_dir: xorgsdkdir)
> diff --git a/fb/meson.build b/fb/meson.build
> index bf85141f980f..477ab047dfd6 100644
> --- a/fb/meson.build
> +++ b/fb/meson.build
> @@ -28,6 +28,14 @@ srcs_fb = [
>  	'fbwindow.c',
>  ]
>  
> +hdrs_fb = [
> +	'fb.h',
> +	'fboverlay.h',
> +	'fbpict.h',
> +	'fbrop.h',
> +	'wfbrename.h'
> +]
> +
>  libxserver_fb = static_library('libxserver_fb',
>  	srcs_fb,
>  	include_directories: inc,
> @@ -45,3 +53,5 @@ libxserver_wfb = static_library('libxserver_wfb',
>  	pic: true,
>  	build_by_default: false,
>  )
> +
> +install_data(hdrs_fb, install_dir: xorgsdkdir)
> diff --git a/glx/meson.build b/glx/meson.build
> index 5f93a75a5143..dc7aab9625ee 100644
> --- a/glx/meson.build
> +++ b/glx/meson.build
> @@ -61,6 +61,10 @@ srcs_vnd = [
>      'vndservervendor.c',
>  ]
>  
> +hdrs_vnd = [
> +    'vndserver.h',
> +]
> +
>  libglxvnd = ''
>  if build_glx
>      libglxvnd = static_library('libglxvnd',
> @@ -73,4 +77,6 @@ if build_glx
>              dependency('gl', version: '>= 9.2.0'),
>          ],
>      )
> +
> +    install_data(hdrs_vnd, install_dir : xorgsdkdir)
>  endif
> diff --git a/hw/xfree86/os-support/meson.build b/hw/xfree86/os-support/meson.build
> index 2b96e7e4adee..901422786586 100644
> --- a/hw/xfree86/os-support/meson.build
> +++ b/hw/xfree86/os-support/meson.build
> @@ -4,6 +4,13 @@ srcs_xorg_os_support = [
>      'shared/sigio.c',
>      'shared/vidmem.c',
>  ]
> +
> +hdrs_xorg_os_support = [
> +    'bus/xf86Pci.h',

Should this one go inside the if get_option('pciaccess') block below?

> +    'xf86_OSlib.h',
> +    'xf86_OSproc.h'
> +]
> +
>  os_support_flags = ['-DUSESTDRES']
>  
>  if get_option('pciaccess')
> @@ -135,4 +142,4 @@ xorg_os_support = static_library('xorg_os_support',
>      c_args: xorg_c_args,
>  )
>  
> -install_data('bus/xf86Pci.h', install_dir: xorgsdkdir)
> +install_data(hdrs_xorg_os_support, install_dir: xorgsdkdir)
> diff --git a/include/meson.build b/include/meson.build
> index fdec1f306f59..e454b21b9c6a 100644
> --- a/include/meson.build
> +++ b/include/meson.build
> @@ -423,6 +423,7 @@ if build_xorg
>              'xkbsrv.h',
>              'xkbstr.h',
>              'xkbrules.h',
> +            'Xprintf.h',
>              'xserver_poll.h',
>              'xserver-properties.h',
>          ],
> diff --git a/mi/meson.build b/mi/meson.build
> index 32fcec1d05fe..73b196ad0289 100644
> --- a/mi/meson.build
> +++ b/mi/meson.build
> @@ -29,6 +29,19 @@ srcs_mi = [
>      'mizerline.c',
>  ]
>  
> +hdrs_mi = [
> +  'micmap.h',
> +  'micoord.h',
> +  'migc.h',
> +  'mi.h',
> +  'miline.h',
> +  'mioverlay.h',
> +  'mipointer.h',
> +  'mipointrst.h',
> +  'mistruct.h',
> +  'mizerarc.h',
> +]
> +
>  libxserver_mi = static_library('libxserver_mi',
>      srcs_mi,
>      include_directories: inc,
> @@ -37,3 +50,5 @@ libxserver_mi = static_library('libxserver_mi',
>          m_dep,
>      ],
>  )
> +
> +install_data(hdrs_mi, install_dir: xorgsdkdir)
> diff --git a/miext/damage/meson.build b/miext/damage/meson.build
> index 2c51483964ab..1f6032c688ed 100644
> --- a/miext/damage/meson.build
> +++ b/miext/damage/meson.build
> @@ -2,8 +2,15 @@ srcs_miext_damage = [
>  	'damage.c',
>  ]
>  
> +hdrs_miext_damage = [
> +	'damage.h',
> +	'damagestr.h',
> +]
> +
>  libxserver_miext_damage = static_library('libxserver_miext_damage',
>  	srcs_miext_damage,
>  	include_directories: inc,
>  	dependencies: common_dep,
>  )
> +
> +install_data(hdrs_miext_damage, install_dir: xorgsdkdir)
> diff --git a/miext/shadow/meson.build b/miext/shadow/meson.build
> index 1b4ae8a47dd7..7230df635284 100644
> --- a/miext/shadow/meson.build
> +++ b/miext/shadow/meson.build
> @@ -25,8 +25,14 @@ srcs_miext_shadow = [
>      'shrotate.c',
>  ]
>  
> +hdrs_miext_shadow = [
> +    'shadow.h',
> +]
> +
>  libxserver_miext_shadow = static_library('libxserver_miext_shadow',
>      srcs_miext_shadow,
>      include_directories: inc,
>      dependencies: common_dep,
>  )
> +
> +install_data(hdrs_miext_shadow, install_dir: xorgsdkdir)
> diff --git a/miext/sync/meson.build b/miext/sync/meson.build
> index da86fcc84935..8b7ee4dba14d 100644
> --- a/miext/sync/meson.build
> +++ b/miext/sync/meson.build
> @@ -3,6 +3,13 @@ srcs_miext_sync = [
>      'misyncfd.c',
>  ]
>  
> +hdrs_miext_sync = [
> +    'misync.h',
> +    'misyncfd.h',
> +    'misyncshm.h',
> +    'misyncstr.h',
> +]
> +
>  if build_dri3
>      srcs_miext_sync += 'misyncshm.c'
>  endif
> @@ -15,3 +22,5 @@ libxserver_miext_sync = static_library('libxserver_miext_sync',
>          xshmfence_dep,
>      ],
>  )
> +
> +install_data(hdrs_miext_sync, install_dir: xorgsdkdir)
> diff --git a/present/meson.build b/present/meson.build
> index 1bd3d381e3ed..e316af20d076 100644
> --- a/present/meson.build
> +++ b/present/meson.build
> @@ -12,6 +12,11 @@ srcs_present = [
>      'present_wnmd.c',
>  ]
>  
> +hdrs_present = [
> +    'present.h',
> +    'presentext.h',
> +]
> +
>  libxserver_present = static_library('libxserver_present',
>      srcs_present,
>      include_directories: inc,
> @@ -21,3 +26,5 @@ libxserver_present = static_library('libxserver_present',
>      ],
>      c_args: '-DHAVE_XORG_CONFIG_H'
>  )
> +
> +install_data(hdrs_present, install_dir: xorgsdkdir)
> diff --git a/randr/meson.build b/randr/meson.build
> index cc0e8efe9cc8..7090dde600e5 100644
> --- a/randr/meson.build
> +++ b/randr/meson.build
> @@ -16,6 +16,11 @@ srcs_randr = [
>      'rrtransform.c',
>  ]
>  
> +hdrs_randr = [
> +    'randrstr.h',
> +    'rrtransform.h',
> +]
> +
>  if build_xinerama
>      srcs_randr += 'rrxinerama.c'
>  endif
> @@ -25,3 +30,5 @@ libxserver_randr = static_library('libxserver_randr',
>      include_directories: inc,
>      dependencies: common_dep,
>  )
> +
> +install_data(hdrs_randr, install_dir: xorgsdkdir)
> diff --git a/render/meson.build b/render/meson.build
> index d976f36f3b34..cbd64741c9b2 100644
> --- a/render/meson.build
> +++ b/render/meson.build
> @@ -12,8 +12,17 @@ srcs_render = [
>      'render.c',
>  ]
>  
> +hdrs_render = [
> +    'glyphstr.h',
> +    'mipict.h',
> +    'picture.h',
> +    'picturestr.h',
> +]
> +
>  libxserver_render = static_library('libxserver_render',
>      srcs_render,
>      include_directories: inc,
>      dependencies: common_dep,
>  )
> +
> +install_data(hdrs_render, install_dir: xorgsdkdir)
> 



More information about the xorg-devel mailing list