meson.build (2005B)
1 add_languages('objc') 2 3 apple_applications_dir = get_option('apple-applications-dir') 4 apple_application_name = get_option('apple-application-name') 5 bundle_id_prefix = get_option('bundle-id-prefix') 6 xquartz_sparkle_feed_url = get_option('sparkle-feed-url') 7 8 bundle_version_string = meson.project_version() # CFBundleShortVersionString 9 bundle_version = release # CFBundleVersion 10 11 bundle_id_def = '-DBUNDLE_ID_PREFIX="@0@"'.format(bundle_id_prefix) 12 13 bundle_root = join_paths(apple_applications_dir, apple_application_name + '.app') 14 15 # using sparkle update framework? 16 build_sparkle = xquartz_sparkle_feed_url != '' 17 if build_sparkle 18 sparkle = dependency('Sparkle', method: 'extraframework') 19 endif 20 21 # libxquartz 22 srcs_libxquartz = [ 23 'X11Application.m', 24 'X11Controller.m', 25 'applewm.c', 26 'darwin.c', 27 'darwinEvents.c', 28 'darwinXinput.c', 29 'keysym2ucs.c', 30 'quartz.c', 31 'quartzKeyboard.c', 32 'quartzStartup.c', 33 'quartzRandR.c', 34 '../../mi/miinitext.c', 35 '../../mi/miinitext.h', 36 ] 37 38 libxquartz_defs = [ 39 '-DUSE_NEW_CLUT', 40 '-DX11LIBDIR="@0@"'.format(join_paths(get_option('prefix'), 41 get_option('libdir'))), 42 '-DXFree86Server', 43 '-DXQUARTZ', 44 '-DXSERVER_VERSION="@0@"'.format(meson.project_version()), 45 bundle_id_def, 46 ] 47 48 if cc.has_function('dispatch_async') 49 libxquartz_defs += '-DHAVE_LIBDISPATCH' 50 endif 51 52 libXquartz = static_library('Xquartz', 53 srcs_libxquartz, 54 c_args: libxquartz_defs, 55 objc_args: libxquartz_defs, 56 include_directories: [inc, '../../pseudoramiX', '../../miext/rootless', top_dir_inc], 57 dependencies: [xproto_dep, pixman_dep], 58 link_with: [libxserver_pseudoramix, libxserver_miext_rootless], 59 ) 60 61 subdir('bundle') 62 if build_glx 63 subdir('GL') 64 endif 65 subdir('pbproxy') 66 subdir('xpr') 67 subdir('mach-startup') 68 69 # manpage 70 xquartz_man = configure_file( 71 input: 'man/Xquartz.man', 72 output: 'Xquartz.1', 73 configuration: manpage_config, 74 ) 75 install_man(xquartz_man)