meson.build revision f2346221
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) 169# HAVE_SOCKLEN_T is used by xtrans when IPv6 is disabled 170conf_data.set('HAVE_SOCKLEN_T', cc.has_type('socklen_t', prefix: '#include <sys/socket.h>') ? '1' : false) 171conf_data.set('HAVE_STRCASECMP', cc.has_function('strcasecmp') ? '1' : false) 172conf_data.set('HAVE_STRCASESTR', cc.has_function('strcasestr') ? '1' : false) 173conf_data.set('HAVE_STRLCAT', cc.has_function('strlcat', dependencies: libbsd_dep) ? '1' : false) 174conf_data.set('HAVE_STRLCPY', cc.has_function('strlcpy', dependencies: libbsd_dep) ? '1' : false) 175conf_data.set('HAVE_STRNCASECMP', cc.has_function('strncasecmp') ? '1' : false) 176conf_data.set('HAVE_STRNDUP', cc.has_function('strndup') and cc.has_header_symbol('string.h', 'strndup') ? '1' : false) 177conf_data.set('HAVE_TIMINGSAFE_MEMCMP', cc.has_function('timingsafe_memcmp') ? '1' : false) 178conf_data.set('HAVE_VASPRINTF', cc.has_function('vasprintf') ? '1' : false) 179conf_data.set('HAVE_VSNPRINTF', cc.has_function('vsnprintf') ? '1' : false) 180conf_data.set('HAVE_WALKCONTEXT', cc.has_function('walkcontext') ? '1' : false) 181 182conf_data.set('BUSFAULT', conf_data.get('HAVE_SIGACTION')) 183 184# Don't let X dependencies typedef 'pointer' 185conf_data.set('_XTYPEDEF_POINTER', '1') 186conf_data.set('_XITYPEDEF_POINTER', '1') 187 188conf_data.set('LISTEN_TCP', get_option('listen_tcp')) 189conf_data.set('LISTEN_UNIX', get_option('listen_unix')) 190conf_data.set('LISTEN_LOCAL', get_option('listen_local')) 191 192if cc.has_header_symbol('sys/socket.h', 'SCM_RIGHTS') 193 conf_data.set('XTRANS_SEND_FDS', '1') 194endif 195 196if conf_data.get('HAVE_GETPEEREID').to_int() == 0 and conf_data.get('HAVE_GETPEERUCRED').to_int() == 0 197 if not cc.has_header_symbol('sys/socket.h', 'SO_PEERCRED') 198 conf_data.set('NO_LOCAL_CLIENT_CRED', 1) 199 endif 200endif 201 202conf_data.set('TCPCONN', '1') 203conf_data.set('UNIXCONN', host_machine.system() != 'windows' ? '1' : false) 204conf_data.set('IPv6', build_ipv6 ? '1' : false) 205 206conf_data.set('BIGREQS', '1') 207conf_data.set('COMPOSITE', '1') 208conf_data.set('DAMAGE', '1') 209conf_data.set('DBE', '1') 210conf_data.set('DGA', build_dga ? '1' : false) 211conf_data.set('DPMSExtension', build_dpms ? '1' : false) 212conf_data.set('DRI2', build_dri2 ? '1' : false) 213conf_data.set('DRI3', build_dri3 ? '1' : false) 214if build_glx 215 conf_data.set_quoted('DRI_DRIVER_PATH', dri_dep.get_pkgconfig_variable('dridriverdir')) 216endif 217conf_data.set('HAS_SHM', build_mitshm ? '1' : false) 218conf_data.set('MITSHM', build_mitshm ? '1' : false) 219conf_data.set('PANORAMIX', build_xinerama ? '1' : false) 220conf_data.set('PRESENT', '1') 221conf_data.set('RANDR', '1') 222conf_data.set('RES', build_res ? '1' : false) 223conf_data.set('RENDER', '1') 224conf_data.set('SCREENSAVER', build_screensaver ? '1' : false) 225conf_data.set('SHAPE', '1') 226conf_data.set('XACE', build_xace ? '1' : false) 227conf_data.set('XCMISC', '1') 228conf_data.set('XCSECURITY', build_xsecurity ? '1' : false) 229conf_data.set('XDMCP', xdmcp_dep.found() ? '1' : false) 230conf_data.set('XF86BIGFONT', build_xf86bigfont ? '1' : false) 231conf_data.set('XF86DRI', build_dri1 ? '1' : false) 232conf_data.set('XF86VIDMODE', 1) 233conf_data.set('XFIXES', '1') 234conf_data.set('XFreeXDGA', build_dga ? '1' : false) 235conf_data.set('XINERAMA', build_xinerama ? '1' : false) 236conf_data.set('XINPUT', '1') 237conf_data.set('XRECORD', '1') 238conf_data.set('XSELINUX', build_xselinux ? '1' : false) 239conf_data.set('XSYNC', '1') 240conf_data.set('XTEST', '1') 241conf_data.set('XV', build_xv ? '1' : false) 242conf_data.set('XvExtension', build_xv ? '1' : false) 243conf_data.set('XvMCExtension', build_xvmc ? '1' : false) 244 245conf_data.set('HAVE_SHA1_IN_' + sha1.to_upper(), '1', description: 'Use @0@ SHA1 functions'.format(sha1)) 246conf_data.set('HAVE_LIBUNWIND', get_option('libunwind')) 247 248conf_data.set('HAVE_APM', (build_apm or build_acpi) ? '1' : false) 249conf_data.set('HAVE_ACPI', build_acpi ? '1' : false) 250 251conf_data.set('DDXOSVERRORF', build_xwin ? '1' : false) 252conf_data.set('DDXBEFORERESET', build_xwin ? '1' : false) 253enable_debugging = get_option('buildtype') == 'debug' 254conf_data.set('DEBUG', enable_debugging ? '1' : false) 255 256conf_data.set_quoted('XVENDORNAME', get_option('vendor_name')) 257conf_data.set_quoted('XVENDORNAMESHORT', get_option('vendor_name_short')) 258conf_data.set_quoted('__VENDORDWEBSUPPORT__', get_option('vendor_web')) 259conf_data.set_quoted('BUILDERADDR', get_option('builder_addr')) 260conf_data.set_quoted('BUILDERSTRING', get_option('builder_string')) 261 262if build_rootless 263 conf_data.set('ROOTLESS', build_rootless ? '1' : false) 264 conf_data.set('ROOTLESS_WORKAROUND', 1) 265 conf_data.set('ROOTLESS_SAFEALPHA', 1) 266endif 267 268# 269# for xorg-server.h only 270# 271defines_svr4 = '''#if !defined(SVR4) && !defined(__svr4__) && !defined(__SVR4) 272#error "I am not SVR4" 273#endif 274''' 275 276# BSD specifics 277supports_pccons = false 278supports_pcvt = false 279supports_syscons = false 280supports_wscons = false 281csrg_based = false 282 283if host_machine.system() == 'freebsd' or host_machine.system() == 'dragonfly' 284 supports_pccons = true 285 supports_pcvt = true 286 supports_syscons = true 287 csrg_based = true 288endif 289 290if host_machine.system() == 'kfreebsd' 291 supports_pccons = true 292 supports_pcvt = true 293 supports_syscons = true 294endif 295 296if host_machine.system() == 'netbsd' 297 supports_pccons = true 298 supports_pcvt = true 299 supports_wscons = true 300 csrg_based = true 301endif 302 303if host_machine.system() == 'openbsd' 304 supports_pcvt = true 305 supports_wscons = true 306 csrg_based = true 307endif 308 309if host_machine.system() == 'darwin' 310 csrg_based = true 311endif 312 313conf_data.set('SVR4', cc.compiles(defines_svr4) ? '1' : false) 314conf_data.set_quoted('XKB_DFLT_RULES', get_option('xkb_default_rules')) 315conf_data.set('XORGSERVER', build_xorg ? '1' : false) 316conf_data.set_quoted('XCONFIGFILE', 'xorg.conf') 317conf_data.set_quoted('__XSERVERNAME__', 'Xorg') 318conf_data.set('WITH_VGAHW', build_vgahw ? '1' : false) 319conf_data.set('CSRG_BASED', csrg_based ? '1' : false) 320conf_data.set('PCCONS_SUPPORT', supports_pccons ? '1' : false) 321conf_data.set('PCVT_SUPPORT', supports_pcvt ? '1' : false) 322conf_data.set('SYSCONS_SUPPORT', supports_syscons ? '1' : false) 323conf_data.set('WSCONS_SUPPORT', supports_wscons ? '1' : false) 324conf_data.set('XSERVER_LIBPCIACCESS', get_option('pciaccess') ? '1' : false) 325conf_data.set('XSERVER_PLATFORM_BUS', build_udev_kms ? '1' : false) 326 327configure_file(output : 'dix-config.h', 328 configuration : conf_data) 329 330configure_file(output : 'xorg-server.h', 331 input : 'xorg-server.h.meson.in', 332 configuration : conf_data, 333 install: build_xorg, 334 install_dir: xorgsdkdir) 335 336version_data = configuration_data() 337version_data.set('VENDOR_RELEASE', '@0@'.format(release)) 338version_data.set_quoted('VENDOR_NAME', get_option('vendor_name')) 339version_data.set_quoted('VENDOR_NAME_SHORT', get_option('vendor_name_short')) 340version_data.set_quoted('VENDOR_WEB', get_option('vendor_web')) 341version_data.set_quoted('VENDOR_MAN_VERSION', 'Version @0@.@1@.@2@'.format(major, minor, patch)) 342configure_file(output : 'version-config.h', 343 configuration : version_data) 344 345xkb_data = configuration_data() 346 347xkb_data.set_quoted('XKB_BIN_DIRECTORY', xkb_bin_dir) 348xkb_data.set_quoted('XKB_BASE_DIRECTORY', xkb_dir) 349xkb_data.set_quoted('XKB_DFLT_RULES', get_option('xkb_default_rules')) 350xkb_data.set_quoted('XKB_DFLT_MODEL', get_option('xkb_default_model')) 351xkb_data.set_quoted('XKB_DFLT_LAYOUT', get_option('xkb_default_layout')) 352xkb_data.set_quoted('XKB_DFLT_VARIANT', get_option('xkb_default_variant')) 353xkb_data.set_quoted('XKB_DFLT_OPTIONS', get_option('xkb_default_options')) 354xkb_data.set_quoted('XKM_OUTPUT_DIR', xkb_output_dir + '/') 355 356configure_file(output : 'xkb-config.h', 357 configuration : xkb_data) 358 359xorg_data = configuration_data() 360 361xorg_data.set_quoted('XORG_BIN_DIRECTORY', get_option('bindir')) 362xorg_data.set('XORG_VERSION_CURRENT', release) 363xorg_data.set_quoted('XF86CONFIGFILE', 'xorg.conf') 364xorg_data.set_quoted('XCONFIGFILE', 'xorg.conf') 365xorg_data.set_quoted('XCONFIGDIR', 'xorg.conf.d') 366xorg_data.set_quoted('DEFAULT_XDG_DATA_HOME', '.local/share') 367xorg_data.set_quoted('DEFAULT_XDG_DATA_HOME_LOGDIR', 'xorg') 368xorg_data.set_quoted('DEFAULT_LOGDIR', log_dir) 369xorg_data.set_quoted('DEFAULT_LOGPREFIX', 'Xorg.') 370xorg_data.set_quoted('DEFAULT_MODULE_PATH', join_paths(get_option('prefix'), module_dir)) 371xorg_data.set_quoted('DEFAULT_LIBRARY_PATH', join_paths(get_option('prefix'), get_option('libdir'))) 372xorg_data.set_quoted('__XSERVERNAME__', 'Xorg') 373xorg_data.set('XSERVER_LIBPCIACCESS', get_option('pciaccess') ? '1' : false) 374xorg_data.set_quoted('PCI_TXT_IDS_PATH', '') 375xorg_data.set('XSERVER_PLATFORM_BUS', build_udev_kms ? '1' : false) 376xorg_data.set('WSCONS_SUPPORT', 377 host_machine.system() == 'netbsd' or host_machine.system() == 'openbsd' ? '1' : false) 378xorg_data.set('HAVE_STROPTS_H', cc.has_header('stropts.h') ? '1' : false) 379xorg_data.set('HAVE_SYS_KD_H', cc.has_header('sys/kd.h') ? '1' : false) 380xorg_data.set('HAVE_SYS_VT_H', cc.has_header('sys/vt.h') ? '1' : false) 381 382if host_machine.system() == 'freebsd' or host_machine.system() == 'dragonfly' 383 if host_machine.cpu_family() == 'x86' or host_machine.cpu_family() == 'x86_64' 384 xorg_data.set('USE_DEV_IO', '1') 385 endif 386elif host_machine.system() == 'netbsd' 387 if host_machine.cpu_family() == 'x86' or host_machine.cpu_family() == 'x86_64' 388 xorg_data.set('USE_I386_IOPL', '1') 389 endif 390elif host_machine.system() == 'openbsd' 391 if host_machine.cpu_family() == 'x86' 392 xorg_data.set('USE_I386_IOPL', '1') 393 endif 394 if host_machine.cpu_family() == 'x86_64' 395 xorg_data.set('USE_AMD64_IOPL', '1') 396 endif 397endif 398 399configure_file(output : 'xorg-config.h', 400 input : 'xorg-config.h.meson.in', 401 configuration : xorg_data) 402 403xwin_data = configuration_data() 404xwin_data.set_quoted('DEFAULT_LOGDIR', log_dir) 405xwin_data.set('HAS_WINSOCK', host_machine.system() == 'windows' ? '1' : false, 406 description: 'Use Windows sockets') 407xwin_data.set('HAS_DEVWINDOWS', host_machine.system() == 'cygwin' ? '1' : false, 408 description: 'Has /dev/windows for signaling new win32 messages') 409xwin_data.set('RELOCATE_PROJECTROOT', host_machine.system() == 'windows' ? '1' : false, 410 description: 'Make paths relative to the xserver installation location') 411# XXX: these three are all the same as DEBUG so we should just change to that 412xwin_data.set10('CYGDEBUG', enable_debugging) 413xwin_data.set10('CYGWINDOWING_DEBUG',enable_debugging) 414xwin_data.set10('CYGMULTIWINDOW_DEBUG', enable_debugging) 415 416configure_file(output : 'xwin-config.h', 417 input : 'xwin-config.h.meson.in', 418 configuration : xwin_data) 419 420dtrace_hdr = [] 421dtrace_tmpl = files('Xserver.d') 422if with_dtrace 423 dtrace_header = generator(dtrace, 424 output: '@BASENAME@-dtrace.h', 425 arguments: ['-h', '-s', '@INPUT@', '-o', '@OUTPUT@'] 426 ) 427 428 dtrace_hdr += dtrace_header.process(dtrace_tmpl) 429endif 430 431if build_xorg 432 install_data( 433 [ 434 'XIstubs.h', 435 'Xprintf.h', 436 'callback.h', 437 'client.h', 438 'closestr.h', 439 'closure.h', 440 'colormap.h', 441 'colormapst.h', 442 'hotplug.h', 443 'cursor.h', 444 'cursorstr.h', 445 'dix.h', 446 'dixaccess.h', 447 'dixevents.h', 448 'dixfont.h', 449 'dixfontstr.h', 450 'dixgrabs.h', 451 'dixstruct.h', 452 'events.h', 453 'exevents.h', 454 'extension.h', 455 'extinit.h', 456 'extnsionst.h', 457 'fourcc.h', 458 'gc.h', 459 'gcstruct.h', 460 'globals.h', 461 'glx_extinit.h', 462 'glxvndabi.h', 463 'input.h', 464 'inputstr.h', 465 'list.h', 466 'misc.h', 467 'miscstruct.h', 468 'opaque.h', 469 'nonsdk_extinit.h', 470 'optionstr.h', 471 'os.h', 472 'pixmap.h', 473 'pixmapstr.h', 474 'privates.h', 475 'property.h', 476 'propertyst.h', 477 'ptrveloc.h', 478 'region.h', 479 'regionstr.h', 480 'registry.h', 481 'resource.h', 482 'rgb.h', 483 'screenint.h', 484 'scrnintstr.h', 485 'selection.h', 486 'servermd.h', 487 'validate.h', 488 'displaymode.h', 489 'window.h', 490 'windowstr.h', 491 'xkbfile.h', 492 'xkbsrv.h', 493 'xkbstr.h', 494 'xkbrules.h', 495 'Xprintf.h', 496 'xserver_poll.h', 497 'xserver-properties.h', 498 ], 499 install_dir: xorgsdkdir, 500 ) 501endif 502