59 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Meson
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Meson
		
	
	
	
	
	
gnome = import('gnome')
 | 
						|
 | 
						|
#workaround due to https://github.com/mesonbuild/meson/issues/1687
 | 
						|
copy_schema = custom_target('copy-gschema-to-builddir',
 | 
						|
  input: 'sm.puri.Squeekboard.gschema.xml',
 | 
						|
  output: 'sm.puri.Squeekboard.gschema.xml',
 | 
						|
  command: ['cp', '@INPUT@', '@OUTPUT@']
 | 
						|
)
 | 
						|
schemas = ['sm.puri.Squeekboard.gschema.xml']
 | 
						|
compile_schemas = custom_target('glib-compile-schemas',
 | 
						|
  build_by_default: true,
 | 
						|
  output: 'gschemas.compiled',
 | 
						|
  install: false,
 | 
						|
  command: [find_program('glib-compile-schemas'),
 | 
						|
    meson.current_build_dir()
 | 
						|
  ],
 | 
						|
  depends: [copy_schema]
 | 
						|
)
 | 
						|
install_data(
 | 
						|
  schemas,
 | 
						|
  install_dir: schemasdir
 | 
						|
)
 | 
						|
 | 
						|
compile_schemas = find_program('glib-compile-schemas', required: false)
 | 
						|
if compile_schemas.found()
 | 
						|
  test('Validate schema file', compile_schemas,
 | 
						|
       args: ['--strict', '--dry-run', meson.current_source_dir()])
 | 
						|
endif
 | 
						|
 | 
						|
install_data(
 | 
						|
  schemas,
 | 
						|
  install_dir: 'share/glib-2.0/schemas'
 | 
						|
)
 | 
						|
 | 
						|
squeekboard_resources = gnome.compile_resources(
 | 
						|
   'squeekboard-resources',
 | 
						|
   'squeekboard.gresources.xml',
 | 
						|
 | 
						|
   c_name: 'squeekboard',
 | 
						|
)
 | 
						|
 | 
						|
desktopconf = configuration_data()
 | 
						|
desktopconf.set('bindir', bindir)
 | 
						|
 | 
						|
desktop_file = 'sm.puri.Squeekboard.desktop'
 | 
						|
 | 
						|
i18n.merge_file(
 | 
						|
    input: configure_file(
 | 
						|
      input: desktop_file + '.in.in',
 | 
						|
      output: desktop_file + '.in',
 | 
						|
      configuration: desktopconf
 | 
						|
    ),
 | 
						|
    output: desktop_file,
 | 
						|
    po_dir: '../po',
 | 
						|
    install: true,
 | 
						|
    install_dir: desktopdir,
 | 
						|
    type: 'desktop'
 | 
						|
)
 |