83 lines
2.0 KiB
Meson
83 lines
2.0 KiB
Meson
|
|
#### Project ####
|
|
project('penguins', 'c',
|
|
version: '1.0.0',
|
|
license: 'GPL v3',
|
|
meson_version: '>= 0.47.0')
|
|
|
|
gettext_domain = 'e-module-' + meson.project_name()
|
|
|
|
|
|
#### Enlightenemnt ####
|
|
dep_e = dependency('enlightenment')
|
|
e_modules_dir = dep_e.get_pkgconfig_variable('modules')
|
|
e_release = dep_e.get_pkgconfig_variable('release')
|
|
|
|
|
|
#### Host arch ####
|
|
host_os = host_machine.system()
|
|
if host_os == 'linux'
|
|
cc = meson.get_compiler('c')
|
|
if cc.has_header_symbol('features.h', '__UCLIBC__')
|
|
host_os = 'linux-uclibc'
|
|
elif cc.has_header_symbol('features.h', '__dietlibc__')
|
|
host_os = 'linux-dietlibc'
|
|
else
|
|
host_os = 'linux-gnu'
|
|
endif
|
|
endif
|
|
mod_arch = '@0@-@1@-@2@'.format(host_os, host_machine.cpu_family(), e_release)
|
|
|
|
|
|
#### Install dirs ####
|
|
mod_install_dir = join_paths(e_modules_dir, meson.project_name())
|
|
lib_install_dir = join_paths(mod_install_dir, mod_arch)
|
|
|
|
|
|
#### config.h ####
|
|
config_h = configuration_data()
|
|
config_h.set_quoted('PACKAGE', meson.project_name())
|
|
config_h.set_quoted('LOCALEDIR', join_paths(get_option('prefix'), get_option('localedir')))
|
|
config_h.set_quoted('LOCALEDOMAIN', gettext_domain)
|
|
config_dir = include_directories('.')
|
|
|
|
|
|
#### i18n ####
|
|
dep_intl = []
|
|
if get_option('nls')
|
|
config_h.set('HAVE_GETTEXT', '1')
|
|
dep_intl = cc.find_library('intl', required : false)
|
|
subdir('po')
|
|
endif
|
|
|
|
|
|
#### Edje cc ####
|
|
edje_cc = find_program('edje_cc')
|
|
|
|
|
|
#### module sources ####
|
|
subdir('src')
|
|
|
|
|
|
#### themes ####
|
|
subdir('themes')
|
|
|
|
|
|
#### write config file ####
|
|
configure_file(output: 'penguins_config.h', configuration: config_h)
|
|
|
|
|
|
#### Data files ####
|
|
install_data('module.desktop', install_dir: mod_install_dir)
|
|
|
|
cmd = [ edje_cc,
|
|
'-id', join_paths(meson.source_root(), 'images'),
|
|
'@INPUT@', '@OUTPUT@']
|
|
custom_target('e-module-penguins.edj',
|
|
input : 'e-module-penguins.edc',
|
|
output : 'e-module-penguins.edj',
|
|
command : cmd,
|
|
install_dir: mod_install_dir,
|
|
install : true
|
|
)
|