meson.build revision a1e1cf94
1version_split = meson.project_version().split('.') 2major = version_split[0].to_int() 3minor = version_split[1].to_int() 4patch = version_split[2].to_int() 5 6# convert to the old-style 1.x.y version scheme used up to 1.20.x for backwards compatibility 7release = 1 * 10000000 + major * 100000 + minor * 1000 + patch 8 9dri_dep = dependency('dri', required: build_glx) 10 11conf_data = configuration_data() 12conf_data.set('_DIX_CONFIG_H_', '1') 13 14conf_data.set('HAVE_TYPEOF', cc.compiles(''' 15 int foo(int bar) { typeof(bar) baz = 1; return baz; } 16''', 17 name: 'typeof()') ? '1' : false) 18 19# For feature macros we're using either false (boolean) or '1', which correspond to the macro being 20# not defined at all and defined to 1. This is to match autotools behavior and thus preserve 21# backwards compatibility with all the existing code that uses #ifdef to check if feature is 22# enabled. This ifdef would pass if the macro is defined to 0 which would silently break code 23# in various places. 24# 25# As a complication when we read the configuration from conf_data back we get either string or 26# bool. Meson does not like comparing things of different types so we always convert the returned 27# value to an integer using to_int(). 28conf_data.set('MONOTONIC_CLOCK', cc.has_function('clock_gettime') and 29cc.compiles(''' 30 #define _POSIX_C_SOURCE 200112L 31 #include <time.h> 32 #include <unistd.h> 33 #ifndef CLOCK_MONOTONIC 34 #error CLOCK_MONOTONIC not defined 35 #endif 36''', 37 name: 'CLOCK_MONOTONIC') ? '1' : false) 38 39conf_data.set('XSERVER_DTRACE', with_dtrace ? '1' : false) 40 41if host_machine.endian() == 'little' 42 conf_data.set('X_BYTE_ORDER', 'X_LITTLE_ENDIAN') 43else 44 conf_data.set('X_BYTE_ORDER', 'X_BIG_ENDIAN') 45endif 46 47glx_align64 = [] 48if cc.sizeof('unsigned long') == 8 49 conf_data.set('_XSERVER64', '1') 50 glx_align64 = '-D__GLX_ALIGN64' 51endif 52 53conf_data.set('_GNU_SOURCE', '1') 54 55# autoconf checks for /dev/xf86 here, but the test should be based on 56# the target, not the build system. Could we get rid of this and just 57# ifdef for openbsd? 58conf_data.set('HAS_APERTURE_DRV', host_machine.system() == 'openbsd' ? '1' : false) 59 60if get_option('input_thread') == 'false' 61 enable_input_thread = false 62else 63 enable_input_thread = cc.has_header_symbol('pthread.h', 64 'PTHREAD_MUTEX_RECURSIVE') 65 if not enable_input_thread and get_option('input_thread') == 'true' 66 error('Input thread enabled and PTHREAD_MUTEX_RECURSIVE not found') 67 endif 68 if host_machine.system() == 'windows' and get_option('input_thread') == 'auto' 69 enable_input_thread = false 70 endif 71endif 72conf_data.set('INPUTTHREAD', enable_input_thread ? '1' : false) 73 74if cc.compiles(''' 75 #define _GNU_SOURCE 1 76 #include <pthread.h> 77 void foo(int bar) { pthread_setname_np(pthread_self(), "example"); } 78''', 79 args: '-Werror-implicit-function-declaration', 80 name: 'pthread_setname_np(tid, name)') 81 conf_data.set('HAVE_PTHREAD_SETNAME_NP_WITH_TID', 1) 82elif cc.compiles(''' 83 #define _GNU_SOURCE 1 84 #include <pthread.h> 85 void foo(int bar) { pthread_setname_np("example"); } 86''', 87 args: '-Werror-implicit-function-declaration', 88 name: 'pthread_setname_np(name)') 89 conf_data.set('HAVE_PTHREAD_SETNAME_NP_WITHOUT_TID', 1) 90endif 91 92conf_data.set('HAVE_LIBBSD', libbsd_dep.found() ? '1' : false) 93# Note: this symbol is used by libXtrans. 94conf_data.set('HAVE_SYSTEMD_DAEMON', libsystemd_daemon_dep.found() ? '1' : false) 95conf_data.set('CONFIG_UDEV', build_udev ? '1' : false) 96conf_data.set('CONFIG_UDEV_KMS', build_udev_kms ? '1' : false) 97conf_data.set('HAVE_DBUS', build_dbus ? '1' : false) 98conf_data.set('CONFIG_HAL', build_hal ? '1' : false) 99conf_data.set('SYSTEMD_LOGIND', build_systemd_logind ? '1' : false) 100conf_data.set('NEED_DBUS', build_systemd_logind or build_hal ? '1' : false) 101conf_data.set('CONFIG_WSCONS', host_machine.system() == 'openbsd' ? '1' : false) 102 103conf_data.set('HAVE_XSHMFENCE', xshmfence_dep.found() ? '1' : false) 104conf_data.set('WITH_LIBDRM', libdrm_required ? '1' : false) 105conf_data.set('GLAMOR_HAS_EGL_QUERY_DMABUF', 106 epoxy_dep.found() and epoxy_dep.version().version_compare('>= 1.4.4') ? '1' : false) 107conf_data.set('GLAMOR_HAS_EGL_QUERY_DRIVER', 108 epoxy_dep.found() and epoxy_dep.version().version_compare('>= 1.5.4') ? '1' : false) 109conf_data.set('GLXEXT', build_glx ? '1' : false) 110conf_data.set('GLAMOR', build_glamor ? '1' : false) 111conf_data.set('GLAMOR_HAS_GBM', gbm_dep.found() ? '1' : false) 112conf_data.set('GLAMOR_HAS_GBM_LINEAR', 113 build_glamor and gbm_dep.found() and gbm_dep.version().version_compare('>= 10.6') ? '1' : false) 114conf_data.set('GBM_BO_WITH_MODIFIERS', 115 build_glamor and gbm_dep.found() and gbm_dep.version().version_compare('>= 17.1') ? '1' : false) 116 117conf_data.set_quoted('SERVER_MISC_CONFIG_PATH', serverconfigdir) 118conf_data.set_quoted('PROJECTROOT', get_option('prefix')) 119conf_data.set_quoted('SYSCONFDIR', join_paths(get_option('prefix'), get_option('sysconfdir'))) 120conf_data.set_quoted('SUID_WRAPPER_DIR', join_paths(get_option('prefix'), get_option('libexecdir'))) 121conf_data.set_quoted('COMPILEDDEFAULTFONTPATH', default_font_path) 122 123conf_data.set('XORG_VERSION_CURRENT', release) 124 125conf_data.set('HASXDMAUTH', has_xdm_auth ? '1' : false) 126conf_data.set('SECURE_RPC', get_option('secure-rpc') ? '1' : false) 127 128conf_data.set('HAVE_DLFCN_H', cc.has_header('dlfcn.h') ? '1' : false) 129conf_data.set('HAVE_EXECINFO_H', cc.has_header('execinfo.h') ? '1' : false) 130conf_data.set('HAVE_FCNTL_H', cc.has_header('fcntl.h') ? '1' : false) 131conf_data.set('HAVE_FNMATCH_H', cc.has_header('fnmatch.h') ? '1' : false) 132conf_data.set('HAVE_LINUX_AGPGART_H', cc.has_header('linux/agpgart.h') ? '1' : false) 133conf_data.set('HAVE_STDLIB_H', cc.has_header('stdlib.h') ? '1' : false) 134conf_data.set('HAVE_STRING_H', cc.has_header('string.h') ? '1' : false) 135conf_data.set('HAVE_STRINGS_H', cc.has_header('strings.h') ? '1' : false) 136conf_data.set('HAVE_SYS_AGPGART_H', cc.has_header('sys/agpgart.h') ? '1' : false) 137conf_data.set('HAVE_SYS_AGPIO_H', cc.has_header('sys/agpio.h') ? '1' : false) 138conf_data.set('HAVE_SYS_UN_H', cc.has_header('sys/un.h') ? '1' : false) 139conf_data.set('HAVE_SYS_UTSNAME_H', cc.has_header('sys/utsname.h') ? '1' : false) 140conf_data.set('HAVE_SYS_SYSMACROS_H', cc.has_header('sys/sysmacros.h') ? '1' : false) 141conf_data.set('HAVE_UNISTD_H', cc.has_header('unistd.h') ? '1' : false) 142 143conf_data.set('HAVE_ARC4RANDOM_BUF', cc.has_function('arc4random_buf', dependencies: libbsd_dep) ? '1' : false) 144conf_data.set('HAVE_BACKTRACE', cc.has_function('backtrace') ? '1' : false) 145conf_data.set('HAVE_CBRT', cc.has_function('cbrt') ? '1' : false) 146conf_data.set('HAVE_EPOLL_CREATE1', cc.has_function('epoll_create1') ? '1' : false) 147conf_data.set('HAVE_GETUID', cc.has_function('getuid') ? '1' : false) 148conf_data.set('HAVE_GETEUID', cc.has_function('geteuid') ? '1' : false) 149conf_data.set('HAVE_ISASTREAM', cc.has_function('isastream') ? '1' : false) 150conf_data.set('HAVE_ISSETUGID', cc.has_function('issetugid') ? '1' : false) 151conf_data.set('HAVE_GETIFADDRS', cc.has_function('getifaddrs') ? '1' : false) 152conf_data.set('HAVE_GETPEEREID', cc.has_function('getpeereid') ? '1' : false) 153conf_data.set('HAVE_GETPEERUCRED', cc.has_function('getpeerucred') ? '1' : false) 154conf_data.set('HAVE_GETPROGNAME', cc.has_function('getprogname') ? '1' : false) 155conf_data.set('HAVE_GETZONEID', cc.has_function('getzoneid') ? '1' : false) 156conf_data.set('HAVE_MEMFD_CREATE', cc.has_function('memfd_create') ? '1' : false) 157conf_data.set('HAVE_MKOSTEMP', cc.has_function('mkostemp') ? '1' : false) 158conf_data.set('HAVE_MMAP', cc.has_function('mmap') ? '1' : false) 159conf_data.set('HAVE_POLL', cc.has_function('poll') ? '1' : false) 160conf_data.set('HAVE_POLLSET_CREATE', cc.has_function('pollset_create') ? '1' : false) 161conf_data.set('HAVE_POSIX_FALLOCATE', cc.has_function('posix_fallocate') ? '1' : false) 162conf_data.set('HAVE_PORT_CREATE', cc.has_function('port_create') ? '1' : false) 163conf_data.set('HAVE_REALLOCARRAY', cc.has_function('reallocarray', dependencies: libbsd_dep) ? '1' : false) 164conf_data.set('HAVE_SETEUID', cc.has_function('seteuid') ? '1' : false) 165conf_data.set('HAVE_SETITIMER', cc.has_function('setitimer') ? '1' : false) 166conf_data.set('HAVE_SHMCTL64', cc.has_function('shmctl64') ? '1' : false) 167conf_data.set('HAVE_SIGACTION', cc.has_function('sigaction') ? '1' : false) 168conf_data.set('HAVE_SIGPROCMASK', cc.has_function('sigprocmask') ? '1' : false) 169conf_data.set('HAVE_STRCASECMP', cc.has_function('strcasecmp') ? '1' : false) 170conf_data.set('HAVE_STRCASESTR', cc.has_function('strcasestr') ? '1' : false) 171conf_data.set('HAVE_STRLCAT', cc.has_function('strlcat', dependencies: libbsd_dep) ? '1' : false) 172conf_data.set('HAVE_STRLCPY', cc.has_function('strlcpy', dependencies: libbsd_dep) ? '1' : false) 173conf_data.set('HAVE_STRNCASECMP', cc.has_function('strncasecmp') ? '1' : false) 174conf_data.set('HAVE_STRNDUP', cc.has_function('strndup') and cc.has_header_symbol('string.h', 'strndup') ? '1' : false) 175conf_data.set('HAVE_TIMINGSAFE_MEMCMP', cc.has_function('timingsafe_memcmp') ? '1' : false) 176conf_data.set('HAVE_VASPRINTF', cc.has_function('vasprintf') ? '1' : false) 177conf_data.set('HAVE_VSNPRINTF', cc.has_function('vsnprintf') ? '1' : false) 178conf_data.set('HAVE_WALKCONTEXT', cc.has_function('walkcontext') ? '1' : false) 179 180conf_data.set('BUSFAULT', conf_data.get('HAVE_SIGACTION')) 181 182# Don't let X dependencies typedef 'pointer' 183conf_data.set('_XTYPEDEF_POINTER', '1') 184conf_data.set('_XITYPEDEF_POINTER', '1') 185 186conf_data.set('LISTEN_TCP', get_option('listen_tcp')) 187conf_data.set('LISTEN_UNIX', get_option('listen_unix')) 188conf_data.set('LISTEN_LOCAL', get_option('listen_local')) 189 190if cc.has_header_symbol('sys/socket.h', 'SCM_RIGHTS') 191 conf_data.set('XTRANS_SEND_FDS', '1') 192endif 193 194if conf_data.get('HAVE_GETPEEREID').to_int() == 0 and conf_data.get('HAVE_GETPEERUCRED').to_int() == 0 195 if not cc.has_header_symbol('sys/socket.h', 'SO_PEERCRED') 196 conf_data.set('NO_LOCAL_CLIENT_CRED', 1) 197 endif 198endif 199 200conf_data.set('TCPCONN', '1') 201conf_data.set('UNIXCONN', host_machine.system() != 'windows' ? '1' : false) 202conf_data.set('IPv6', build_ipv6 ? '1' : false) 203 204conf_data.set('BIGREQS', '1') 205conf_data.set('COMPOSITE', '1') 206conf_data.set('DAMAGE', '1') 207conf_data.set('DBE', '1') 208conf_data.set('DGA', build_dga ? '1' : false) 209conf_data.set('DPMSExtension', build_dpms ? '1' : false) 210conf_data.set('DRI2', build_dri2 ? '1' : false) 211conf_data.set('DRI3', build_dri3 ? '1' : false) 212if build_glx 213 conf_data.set_quoted('DRI_DRIVER_PATH', dri_dep.get_pkgconfig_variable('dridriverdir')) 214endif 215conf_data.set('HAS_SHM', build_mitshm ? '1' : false) 216conf_data.set('MITSHM', build_mitshm ? '1' : false) 217conf_data.set('PANORAMIX', build_xinerama ? '1' : false) 218conf_data.set('PRESENT', '1') 219conf_data.set('RANDR', '1') 220conf_data.set('RES', build_res ? '1' : false) 221conf_data.set('RENDER', '1') 222conf_data.set('SCREENSAVER', build_screensaver ? '1' : false) 223conf_data.set('SHAPE', '1') 224conf_data.set('XACE', build_xace ? '1' : false) 225conf_data.set('XCMISC', '1') 226conf_data.set('XCSECURITY', build_xsecurity ? '1' : false) 227conf_data.set('XDMCP', xdmcp_dep.found() ? '1' : false) 228conf_data.set('XF86BIGFONT', build_xf86bigfont ? '1' : false) 229conf_data.set('XF86DRI', build_dri1 ? '1' : false) 230conf_data.set('XF86VIDMODE', 1) 231conf_data.set('XFIXES', '1') 232conf_data.set('XFreeXDGA', build_dga ? '1' : false) 233conf_data.set('XINERAMA', build_xinerama ? '1' : false) 234conf_data.set('XINPUT', '1') 235conf_data.set('XRECORD', '1') 236conf_data.set('XSELINUX', build_xselinux ? '1' : false) 237conf_data.set('XSYNC', '1') 238conf_data.set('XTEST', '1') 239conf_data.set('XV', build_xv ? '1' : false) 240conf_data.set('XvExtension', build_xv ? '1' : false) 241conf_data.set('XvMCExtension', build_xvmc ? '1' : false) 242 243conf_data.set('HAVE_SHA1_IN_' + sha1.to_upper(), '1', description: 'Use @0@ SHA1 functions'.format(sha1)) 244conf_data.set('HAVE_LIBUNWIND', get_option('libunwind')) 245 246conf_data.set('HAVE_APM', (build_apm or build_acpi) ? '1' : false) 247conf_data.set('HAVE_ACPI', build_acpi ? '1' : false) 248 249conf_data.set('DDXOSVERRORF', build_xwin ? '1' : false) 250conf_data.set('DDXBEFORERESET', build_xwin ? '1' : false) 251enable_debugging = get_option('buildtype') == 'debug' 252conf_data.set('DEBUG', enable_debugging ? '1' : false) 253 254conf_data.set_quoted('XVENDORNAME', get_option('vendor_name')) 255conf_data.set_quoted('XVENDORNAMESHORT', get_option('vendor_name_short')) 256conf_data.set_quoted('__VENDORDWEBSUPPORT__', get_option('vendor_web')) 257conf_data.set_quoted('BUILDERADDR', get_option('builder_addr')) 258conf_data.set_quoted('BUILDERSTRING', get_option('builder_string')) 259 260if build_rootless 261 conf_data.set('ROOTLESS', build_rootless ? '1' : false) 262 conf_data.set('ROOTLESS_WORKAROUND', 1) 263 conf_data.set('ROOTLESS_SAFEALPHA', 1) 264endif 265 266# 267# for xorg-server.h only 268# 269defines_svr4 = '''#if !defined(SVR4) && !defined(__svr4__) && !defined(__SVR4) 270#error "I am not SVR4" 271#endif 272''' 273 274# BSD specifics 275supports_pccons = false 276supports_pcvt = false 277supports_syscons = false 278supports_wscons = false 279csrg_based = false 280 281if host_machine.system() == 'freebsd' or host_machine.system() == 'dragonfly' 282 supports_pccons = true 283 supports_pcvt = true 284 supports_syscons = true 285 csrg_based = true 286endif 287 288if host_machine.system() == 'kfreebsd' 289 supports_pccons = true 290 supports_pcvt = true 291 supports_syscons = true 292endif 293 294if host_machine.system() == 'netbsd' 295 supports_pccons = true 296 supports_pcvt = true 297 supports_wscons = true 298 csrg_based = true 299endif 300 301if host_machine.system() == 'openbsd' 302 supports_pcvt = true 303 supports_wscons = true 304 csrg_based = true 305endif 306 307if host_machine.system() == 'darwin' 308 csrg_based = true 309endif 310 311conf_data.set('SVR4', cc.compiles(defines_svr4) ? '1' : false) 312conf_data.set_quoted('XKB_DFLT_RULES', get_option('xkb_default_rules')) 313conf_data.set('XORGSERVER', build_xorg ? '1' : false) 314conf_data.set_quoted('XCONFIGFILE', 'xorg.conf') 315conf_data.set_quoted('__XSERVERNAME__', 'Xorg') 316conf_data.set('WITH_VGAHW', build_vgahw ? '1' : false) 317conf_data.set('CSRG_BASED', csrg_based ? '1' : false) 318conf_data.set('PCCONS_SUPPORT', supports_pccons ? '1' : false) 319conf_data.set('PCVT_SUPPORT', supports_pcvt ? '1' : false) 320conf_data.set('SYSCONS_SUPPORT', supports_syscons ? '1' : false) 321conf_data.set('WSCONS_SUPPORT', supports_wscons ? '1' : false) 322conf_data.set('XSERVER_LIBPCIACCESS', get_option('pciaccess') ? '1' : false) 323conf_data.set('XSERVER_PLATFORM_BUS', build_udev_kms ? '1' : false) 324 325configure_file(output : 'dix-config.h', 326 configuration : conf_data) 327 328configure_file(output : 'xorg-server.h', 329 input : 'xorg-server.h.meson.in', 330 configuration : conf_data, 331 install: build_xorg, 332 install_dir: xorgsdkdir) 333 334version_data = configuration_data() 335version_data.set('VENDOR_RELEASE', '@0@'.format(release)) 336version_data.set_quoted('VENDOR_NAME', get_option('vendor_name')) 337version_data.set_quoted('VENDOR_NAME_SHORT', get_option('vendor_name_short')) 338version_data.set_quoted('VENDOR_WEB', get_option('vendor_web')) 339version_data.set_quoted('VENDOR_MAN_VERSION', 'Version @0@.@1@.@2@'.format(major, minor, patch)) 340configure_file(output : 'version-config.h', 341 configuration : version_data) 342 343xkb_data = configuration_data() 344 345xkb_data.set_quoted('XKB_BIN_DIRECTORY', xkb_bin_dir) 346xkb_data.set_quoted('XKB_BASE_DIRECTORY', xkb_dir) 347xkb_data.set_quoted('XKB_DFLT_RULES', get_option('xkb_default_rules')) 348xkb_data.set_quoted('XKB_DFLT_MODEL', get_option('xkb_default_model')) 349xkb_data.set_quoted('XKB_DFLT_LAYOUT', get_option('xkb_default_layout')) 350xkb_data.set_quoted('XKB_DFLT_VARIANT', get_option('xkb_default_variant')) 351xkb_data.set_quoted('XKB_DFLT_OPTIONS', get_option('xkb_default_options')) 352xkb_data.set_quoted('XKM_OUTPUT_DIR', xkb_output_dir + '/') 353 354configure_file(output : 'xkb-config.h', 355 configuration : xkb_data) 356 357xorg_data = configuration_data() 358 359xorg_data.set_quoted('XORG_BIN_DIRECTORY', get_option('bindir')) 360xorg_data.set('XORG_VERSION_CURRENT', release) 361xorg_data.set_quoted('XF86CONFIGFILE', 'xorg.conf') 362xorg_data.set_quoted('XCONFIGFILE', 'xorg.conf') 363xorg_data.set_quoted('XCONFIGDIR', 'xorg.conf.d') 364xorg_data.set_quoted('DEFAULT_XDG_DATA_HOME', '.local/share') 365xorg_data.set_quoted('DEFAULT_XDG_DATA_HOME_LOGDIR', 'xorg') 366xorg_data.set_quoted('DEFAULT_LOGDIR', log_dir) 367xorg_data.set_quoted('DEFAULT_LOGPREFIX', 'Xorg.') 368xorg_data.set_quoted('DEFAULT_MODULE_PATH', join_paths(get_option('prefix'), module_dir)) 369xorg_data.set_quoted('DEFAULT_LIBRARY_PATH', join_paths(get_option('prefix'), get_option('libdir'))) 370xorg_data.set_quoted('__XSERVERNAME__', 'Xorg') 371xorg_data.set('XSERVER_LIBPCIACCESS', get_option('pciaccess') ? '1' : false) 372xorg_data.set_quoted('PCI_TXT_IDS_PATH', '') 373xorg_data.set('XSERVER_PLATFORM_BUS', build_udev_kms ? '1' : false) 374xorg_data.set('WSCONS_SUPPORT', 375 host_machine.system() == 'netbsd' or host_machine.system() == 'openbsd' ? '1' : false) 376xorg_data.set('HAVE_STROPTS_H', cc.has_header('stropts.h') ? '1' : false) 377xorg_data.set('HAVE_SYS_KD_H', cc.has_header('sys/kd.h') ? '1' : false) 378xorg_data.set('HAVE_SYS_VT_H', cc.has_header('sys/vt.h') ? '1' : false) 379 380if host_machine.system() == 'freebsd' or host_machine.system() == 'dragonfly' 381 if host_machine.cpu_family() == 'x86' or host_machine.cpu_family() == 'x86_64' 382 xorg_data.set('USE_DEV_IO', '1') 383 endif 384elif host_machine.system() == 'netbsd' 385 if host_machine.cpu_family() == 'x86' or host_machine.cpu_family() == 'x86_64' 386 xorg_data.set('USE_I386_IOPL', '1') 387 endif 388elif host_machine.system() == 'openbsd' 389 if host_machine.cpu_family() == 'x86' 390 xorg_data.set('USE_I386_IOPL', '1') 391 endif 392 if host_machine.cpu_family() == 'x86_64' 393 xorg_data.set('USE_AMD64_IOPL', '1') 394 endif 395endif 396 397configure_file(output : 'xorg-config.h', 398 input : 'xorg-config.h.meson.in', 399 configuration : xorg_data) 400 401xwin_data = configuration_data() 402xwin_data.set_quoted('DEFAULT_LOGDIR', log_dir) 403xwin_data.set('HAS_WINSOCK', host_machine.system() == 'windows' ? '1' : false, 404 description: 'Use Windows sockets') 405xwin_data.set('HAS_DEVWINDOWS', host_machine.system() == 'cygwin' ? '1' : false, 406 description: 'Has /dev/windows for signaling new win32 messages') 407xwin_data.set('RELOCATE_PROJECTROOT', host_machine.system() == 'windows' ? '1' : false, 408 description: 'Make paths relative to the xserver installation location') 409# XXX: these three are all the same as DEBUG so we should just change to that 410xwin_data.set10('CYGDEBUG', enable_debugging) 411xwin_data.set10('CYGWINDOWING_DEBUG',enable_debugging) 412xwin_data.set10('CYGMULTIWINDOW_DEBUG', enable_debugging) 413 414configure_file(output : 'xwin-config.h', 415 input : 'xwin-config.h.meson.in', 416 configuration : xwin_data) 417 418dtrace_hdr = [] 419dtrace_tmpl = files('Xserver.d') 420if with_dtrace 421 dtrace_header = generator(dtrace, 422 output: '@BASENAME@-dtrace.h', 423 arguments: ['-h', '-s', '@INPUT@', '-o', '@OUTPUT@'] 424 ) 425 426 dtrace_hdr += dtrace_header.process(dtrace_tmpl) 427endif 428 429if build_xorg 430 install_data( 431 [ 432 'XIstubs.h', 433 'Xprintf.h', 434 'callback.h', 435 'client.h', 436 'closestr.h', 437 'closure.h', 438 'colormap.h', 439 'colormapst.h', 440 'hotplug.h', 441 'cursor.h', 442 'cursorstr.h', 443 'dix.h', 444 'dixaccess.h', 445 'dixevents.h', 446 'dixfont.h', 447 'dixfontstr.h', 448 'dixgrabs.h', 449 'dixstruct.h', 450 'events.h', 451 'exevents.h', 452 'extension.h', 453 'extinit.h', 454 'extnsionst.h', 455 'fourcc.h', 456 'gc.h', 457 'gcstruct.h', 458 'globals.h', 459 'glx_extinit.h', 460 'glxvndabi.h', 461 'input.h', 462 'inputstr.h', 463 'list.h', 464 'misc.h', 465 'miscstruct.h', 466 'opaque.h', 467 'nonsdk_extinit.h', 468 'optionstr.h', 469 'os.h', 470 'pixmap.h', 471 'pixmapstr.h', 472 'privates.h', 473 'property.h', 474 'propertyst.h', 475 'ptrveloc.h', 476 'region.h', 477 'regionstr.h', 478 'registry.h', 479 'resource.h', 480 'rgb.h', 481 'screenint.h', 482 'scrnintstr.h', 483 'selection.h', 484 'servermd.h', 485 'validate.h', 486 'displaymode.h', 487 'window.h', 488 'windowstr.h', 489 'xkbfile.h', 490 'xkbsrv.h', 491 'xkbstr.h', 492 'xkbrules.h', 493 'Xprintf.h', 494 'xserver_poll.h', 495 'xserver-properties.h', 496 ], 497 install_dir: xorgsdkdir, 498 ) 499endif 500