forked from enlightenment/efl
here comes meson
a new shiny buildtool that currently completes in the total of ~ 4 min.. 1 min. conf time 2:30 min. build time Where autotools takes: 1:50 min. conf time 3:40 min. build time. meson was taken because it went quite good for enlightenment, and is a traction gaining system that is also used by other mayor projects. Additionally, the DSL that is defined my meson makes the configuration of the builds a lot easier to read. Further informations can be gathered from the README.meson Right now, bindings & windows support are missing. It is highly recommented to use meson 0.48 due to optimizations in meson that reduced the time the meson call would need. Co-authored-by: Mike Blumenkrantz <zmike@samsung.com> Differential Revision: https://phab.enlightenment.org/D7012 Depends on D7011
This commit is contained in:
parent
70ecf1056b
commit
46d464e5bf
|
@ -0,0 +1,51 @@
|
|||
# BUILDING EFL WITH MESON
|
||||
|
||||
Building, testing, installing:
|
||||
mkdir build
|
||||
cd build
|
||||
meson ..
|
||||
ninja all
|
||||
ninja test
|
||||
sudo ninja install
|
||||
|
||||
In autotools there have been a few flags that are used to disable loaders. In meson the following four disbler arrays are used:
|
||||
|
||||
emotion-generic-loaders-disabler
|
||||
|
||||
emotion-loaders-disabler
|
||||
|
||||
ecore-imf-loaders-disabler
|
||||
|
||||
evas-loaders-disabler
|
||||
|
||||
Autotools options that are converted are:
|
||||
|
||||
--disable-poppler -> Disable pdf loader
|
||||
--disable-spectre -> Disable ps loader
|
||||
--disable-libraw -> Disable raw loader
|
||||
--disable-librsvg -> Disable svg loader
|
||||
--disable-xcf -> Disable xcf loader
|
||||
--disable-xim -> Disable xim loader
|
||||
--disable-scim -> Disable scim loader
|
||||
--disable-ibus -> Disable ibus loader
|
||||
--enable-xine -> Disable xine loader
|
||||
--enable-libvlc -> Disable vlc loader
|
||||
--disable-librsvg -> Disable svg loader
|
||||
|
||||
The following options are dropped as they did not affect compilation
|
||||
--enable-lua-old
|
||||
--enable-cancel-ok
|
||||
--enable-debug
|
||||
--disable-quick-launch
|
||||
--enable-tile-rotate
|
||||
|
||||
The following options are merged into the pixman option
|
||||
--enable-pixman-font
|
||||
--enable-pixman-rect
|
||||
--enable-pixman-line
|
||||
--enable-pixman-poly
|
||||
--enable-pixman-image
|
||||
--enable-pixman-image-scale-sample
|
||||
|
||||
|
||||
--disable-valgrind Is dropped, and handled due to the build profile, this can be handled with --buildtype release or plain.
|
|
@ -0,0 +1,3 @@
|
|||
install_data('edje.inc',
|
||||
install_dir : join_paths(dir_data, 'edje', 'include')
|
||||
)
|
|
@ -0,0 +1,5 @@
|
|||
subdir('include')
|
||||
|
||||
install_data(files('edje.xml'),
|
||||
install_dir : join_paths(dir_data, 'mime', 'packages')
|
||||
)
|
|
@ -0,0 +1,7 @@
|
|||
custom_target('config_'+config,
|
||||
input: config_file,
|
||||
output: 'base.cfg',
|
||||
command: [eet_bin, '-i', '@OUTPUT@', 'config', '@INPUT@', '0'],
|
||||
install: true,
|
||||
install_dir: join_paths(dir_data, 'elementary', 'config', config),
|
||||
)
|
|
@ -0,0 +1,21 @@
|
|||
configs = ['default', 'mobile', 'standard']
|
||||
|
||||
foreach config : configs
|
||||
config_file = join_paths(meson.current_source_dir(), config, 'base.src.in')
|
||||
config_icon = join_paths(meson.current_source_dir(), config, 'icon.png')
|
||||
config_desktop = join_paths(meson.current_source_dir(), config, 'profile.desktop')
|
||||
|
||||
install_data([config_icon, config_desktop],
|
||||
install_dir : join_paths(dir_data, 'elementary', 'config', config)
|
||||
)
|
||||
|
||||
subdir(config)
|
||||
endforeach
|
||||
|
||||
custom_target('config_profile',
|
||||
input: 'profile.src',
|
||||
output: 'profile.cfg',
|
||||
command: [eet_bin, '-i', '@OUTPUT@', 'config', '@INPUT@', '0'],
|
||||
install: true,
|
||||
install_dir: join_paths(dir_data, 'elementary', 'config'),
|
||||
)
|
|
@ -0,0 +1,7 @@
|
|||
custom_target('config_'+config,
|
||||
input: config_file,
|
||||
output: 'base.cfg',
|
||||
command: [eet_bin, '-i', '@OUTPUT@', 'config', '@INPUT@', '0'],
|
||||
install: true,
|
||||
install_dir: join_paths(dir_data, 'elementary', 'config', config),
|
||||
)
|
|
@ -0,0 +1,7 @@
|
|||
custom_target('config_'+config,
|
||||
input: config_file,
|
||||
output: 'base.cfg',
|
||||
command: [eet_bin, '-i', '@OUTPUT@', 'config', '@INPUT@', '0'],
|
||||
install: true,
|
||||
install_dir: join_paths(dir_data, 'elementary', 'config', config),
|
||||
)
|
|
@ -0,0 +1,10 @@
|
|||
desktop_files = files('elementary_config.desktop', 'elementary_test.desktop')
|
||||
elementary_icon = files('elementary.png')
|
||||
|
||||
install_data(desktop_files,
|
||||
install_dir : join_paths(dir_data, 'applications')
|
||||
)
|
||||
|
||||
install_data(elementary_icon,
|
||||
install_dir : join_paths(dir_data, 'icons', 'hicolor', '128x128', 'apps')
|
||||
)
|
|
@ -0,0 +1,11 @@
|
|||
custom_target('edje_cc_edje_externals',
|
||||
input : 'icons.edc',
|
||||
output : '@BASENAME@.edj',
|
||||
command : ['/usr/bin/env', 'EFL_RUN_IN_TREE=1', edje_cc.full_path(), '-beta',
|
||||
'-id', join_paths(meson.current_source_dir()),
|
||||
'-id', elm_themes_image_include,
|
||||
'@INPUT@', '@OUTPUT@'],
|
||||
depends : edje_cc,
|
||||
install : true,
|
||||
install_dir : join_paths(dir_data, 'elementary', 'edje_externals'),
|
||||
)
|
|
@ -0,0 +1,10 @@
|
|||
subdir('config')
|
||||
subdir('desktop')
|
||||
subdir('themes')
|
||||
subdir('objects')
|
||||
subdir('edje_externals')
|
||||
|
||||
install_subdir('images',
|
||||
install_dir : join_paths(dir_data, 'elementary'),
|
||||
exclude_files : ['Makefile.am']
|
||||
)
|
|
@ -0,0 +1,42 @@
|
|||
edc_files = [
|
||||
'test.edc',
|
||||
'test_external.edc',
|
||||
'test_focus_style.edc',
|
||||
'test_masking.edc',
|
||||
'test_tab_pager.edc',
|
||||
'test_tooltip.edc',
|
||||
'test_prefs.edc',
|
||||
'cursors.edc',
|
||||
'font_preview.edc',
|
||||
'multibuttonentry.edc',
|
||||
'multip.edc',
|
||||
'postit_ent.edc'
|
||||
]
|
||||
|
||||
elm_themes = []
|
||||
|
||||
foreach edc_file : edc_files
|
||||
elm_themes += custom_target('edje_cc_elm_' + edc_file,
|
||||
input : edc_file,
|
||||
output : '@BASENAME@.edj',
|
||||
command : ['/usr/bin/env', 'EFL_RUN_IN_TREE=1', edje_cc.full_path(), '-beta',
|
||||
'-sd', join_paths(meson.current_source_dir()),
|
||||
'-id', elm_themes_image_include,
|
||||
'-id', join_paths(meson.current_source_dir()),
|
||||
'-fd', join_paths(meson.current_source_dir()),
|
||||
'@INPUT@', '@OUTPUT@'],
|
||||
depends : edje_cc,
|
||||
install : true,
|
||||
install_dir : join_paths(dir_data, 'elementary', 'objects'),
|
||||
)
|
||||
endforeach
|
||||
|
||||
custom_target('prefs_compile',
|
||||
input: 'test_prefs.epc',
|
||||
output: 'test_prefs.epb',
|
||||
command : ['/usr/bin/env', 'EFL_RUN_IN_TREE=1', elm_prefs_cc.full_path(),
|
||||
'@INPUT@', '@OUTPUT@'],
|
||||
depends : elm_prefs_cc,
|
||||
install : true,
|
||||
install_dir : join_paths(dir_data, 'elementary', 'objects'),
|
||||
)
|
|
@ -0,0 +1,37 @@
|
|||
edc_files = [
|
||||
'default.edc',
|
||||
]
|
||||
|
||||
elm_themes = []
|
||||
|
||||
elm_themes_image_include = join_paths(meson.current_source_dir(), 'img')
|
||||
|
||||
foreach edc_file : edc_files
|
||||
elm_themes += custom_target('edje_cc_' + edc_file,
|
||||
input : edc_file,
|
||||
output : '@BASENAME@.edj',
|
||||
command : ['/usr/bin/env', 'EFL_RUN_IN_TREE=1', edje_cc.full_path(), '-beta',
|
||||
'-sd', join_paths(meson.current_source_dir(), 'snd'),
|
||||
'-id', elm_themes_image_include,
|
||||
'-id', join_paths(meson.current_source_dir(), 'fdo'),
|
||||
'-fd', join_paths(meson.current_source_dir(), 'fnt'),
|
||||
'@INPUT@', '@OUTPUT@'],
|
||||
depends : edje_cc,
|
||||
install : true,
|
||||
install_dir : join_paths(dir_data, 'elementary', 'themes'),
|
||||
)
|
||||
endforeach
|
||||
|
||||
install_subdir('fdo',
|
||||
install_dir : join_paths(dir_data, 'icons', 'Enlightenment-X'),
|
||||
strip_directory : true,
|
||||
exclude_directories : [
|
||||
join_paths('status', '128-svg'),
|
||||
join_paths('places', '16-svg'),
|
||||
join_paths('places', '128-svg'),
|
||||
join_paths('emblems', '96-svg'),
|
||||
join_paths('devices', '128-svg'),
|
||||
join_paths('categories', '128-svg'),
|
||||
join_paths('actions', '128-svg'),
|
||||
]
|
||||
)
|
|
@ -0,0 +1,3 @@
|
|||
install_data('default.inc',
|
||||
install_dir : join_paths(dir_data, 'embryo', 'include')
|
||||
)
|
|
@ -0,0 +1,13 @@
|
|||
install_data('eo_gdb.py',
|
||||
install_dir : join_paths(dir_data, 'eo', 'gdb')
|
||||
)
|
||||
|
||||
configuration = configuration_data()
|
||||
configuration.set('datadir', dir_data)
|
||||
|
||||
configure_file(
|
||||
input: 'libeo-gdb.py.in',
|
||||
output: 'libeo.so.'+meson.project_version()+'-gdb.py',
|
||||
configuration: configuration,
|
||||
install_dir: join_paths(dir_data, 'gdb', 'autoload', 'usr', 'lib')
|
||||
)
|
|
@ -0,0 +1,14 @@
|
|||
ethumb_frame = files('default.edc')
|
||||
|
||||
custom_target('edje_cc_ethumb_frame',
|
||||
input : ethumb_frame,
|
||||
output : '@BASENAME@.edj',
|
||||
command : ['/usr/bin/env', 'EFL_RUN_IN_TREE=1', edje_cc.full_path(), '-beta',
|
||||
'-sd', join_paths(meson.current_source_dir()),
|
||||
'-id', join_paths(meson.current_source_dir()),
|
||||
'-fd', join_paths(meson.current_source_dir()),
|
||||
'@INPUT@', '@OUTPUT@'],
|
||||
depends : edje_cc,
|
||||
install : true,
|
||||
install_dir : join_paths(dir_data, 'ethumb', 'frames'),
|
||||
)
|
|
@ -0,0 +1,12 @@
|
|||
checkme_files = ['ecore', 'ecore_imf', 'ecore_x', 'eeze', 'efreet', 'elua', 'emotion', 'ethumb', 'ethumb_client', 'evas']
|
||||
foreach checkme : checkme_files
|
||||
install_data(join_paths(checkme, 'checkme'),
|
||||
install_dir : join_paths(dir_data, checkme)
|
||||
)
|
||||
endforeach
|
||||
|
||||
subdir('eo')
|
||||
subdir('edje')
|
||||
subdir('embryo')
|
||||
subdir(join_paths('ethumb', 'frames'))
|
||||
subdir('elementary')
|
|
@ -0,0 +1,177 @@
|
|||
header_checks = [
|
||||
'alloca.h',
|
||||
'asm/hwcap.h',
|
||||
'bsd/string.h',
|
||||
'dirent.h',
|
||||
'execinfo.h',
|
||||
'mcheck.h',
|
||||
'netinet/in.h',
|
||||
'netinet/ssl.h',
|
||||
'netinet/tcp.h',
|
||||
'netinet/udp.h',
|
||||
'net/if.h',
|
||||
'stdlib.h',
|
||||
'mman.h',
|
||||
'sys/auxv.h',
|
||||
'sys/inotify.h',
|
||||
'sys/ioctl.h',
|
||||
'sys/mman.h',
|
||||
'sys/types.h',
|
||||
'sys/socket.h',
|
||||
'sys/filio.h',
|
||||
'arpa/inet.h',
|
||||
'sys/epoll.h',
|
||||
'sys/un.h',
|
||||
'sys/wait.h',
|
||||
'sys/resource.h',
|
||||
'sys/times.h',
|
||||
'dirent.h',
|
||||
'longinfo.h',
|
||||
'exotic.h',
|
||||
'ieeefp.h',
|
||||
'node/uv.h',
|
||||
'sys/timerfd.h',
|
||||
'features.h',
|
||||
'langinfo.h',
|
||||
'locale.h',
|
||||
'uv.h',
|
||||
'ws2tcpip.h'
|
||||
]
|
||||
|
||||
function_checks = [
|
||||
# function name | headers that are needed | libraries to include | Defines that are needed
|
||||
['alloca', ['alloca.h']],
|
||||
['backtrace', ['execinfo.h']],
|
||||
['backtrace_symbols', ['execinfo.h']],
|
||||
['clock_gettime', ['time.h']],
|
||||
['dirfd', ['dirent.h sys/types.h']],
|
||||
['fchmod', ['sys/stat.h']],
|
||||
['fcntl', ['fcntl.h']],
|
||||
['fork', ['unistd.h']],
|
||||
['fpathconf', ['unistd.h']],
|
||||
['geteuid', ['unistd.h']],
|
||||
['getpagesize', ['unistd.h']],
|
||||
['getpwent', ['sys/types.h', 'pwd.h']],
|
||||
['getuid', ['unistd.h']],
|
||||
['getxattr', ['sys/types.h', 'sys/xattr.h']],
|
||||
['iconv', ['iconv.h']],
|
||||
['listxattr', ['sys/types.h', 'sys/xattr.h']],
|
||||
['mallinfo', ['malloc.h']],
|
||||
['malloc_info', ['malloc.h']],
|
||||
['malloc_usable_size', ['malloc.h']],
|
||||
['mkdirat', ['sys/stat.h']],
|
||||
['mmap', ['sys/mman.h']],
|
||||
['mtrace', ['mcheck.h']],
|
||||
['prctl', ['sys/prctl.h']],
|
||||
['realpath', ['stdlib.h']],
|
||||
['setxattr', ['sys/types.h', 'sys/xattr.h']],
|
||||
['siglongjmp', ['setjmp.h']],
|
||||
['strerror_r', ['string.h']],
|
||||
['gettimeofday', ['sys/time.h']],
|
||||
['execvp', ['unistd.h']],
|
||||
['pause', ['unistd.h']],
|
||||
['isfinite', ['math.h']],
|
||||
#FIXME strlcpy is detected by meson but drops at compilation time
|
||||
# ['strlcpy', ['string.h']],
|
||||
['siginfo_t', ['signal.h']],
|
||||
['strerror_r', ['string.h']],
|
||||
['pthread_getcpuclockid', ['pthread.h', 'time.h']],
|
||||
['timerfd_create', ['sys/timerfd.h']],
|
||||
['kevent', ['sys/types.h', 'sys/event.h', 'sys/time.h']],
|
||||
#from here on we specify the dependencies
|
||||
['dlopen', ['dlfcn.h'], ['dl']],
|
||||
['dlsym', ['dlfcn.h'], ['dl']],
|
||||
['lround', ['math.h'], ['m']],
|
||||
['shm_open', ['sys/mman.h', 'sys/stat.h', 'fcntl.h'], ['rt']],
|
||||
#from here on we specify arguments
|
||||
['splice', ['fcntl.h'], [], '-D_GNU_SOURCE=1'],
|
||||
['sched_getcpu', ['sched.h'], [], '-D_GNU_SOURCE=1'],
|
||||
['dladdr', ['dlfcn.h'], ['dl'], '-D_GNU_SOURCE=1']
|
||||
]
|
||||
|
||||
strerror_r_char_p = cc.compiles('''#define _GNU_SOURCE
|
||||
#include <string.h>
|
||||
int func (void)
|
||||
{
|
||||
char error_string[256];
|
||||
char *ptr = strerror_r (-2, error_string, 256);
|
||||
char c = *strerror_r (-2, error_string, 256);
|
||||
return c != 0 && ptr != (void*) 0L;
|
||||
}
|
||||
''',
|
||||
name : 'strerror_r() returns char *')
|
||||
|
||||
if strerror_r_char_p
|
||||
config_h.set('STRERROR_R_CHAR_P', '1')
|
||||
endif
|
||||
|
||||
#for later use, a bunch of librarie findings
|
||||
m = cc.find_library('m')
|
||||
#just keep this here as required false, if it is not inplace the library rt will just be linked as NOP
|
||||
dl = cc.find_library('dl', required: false)
|
||||
rt = cc.find_library('rt', required: false)
|
||||
|
||||
thread_dep = dependency('threads')
|
||||
|
||||
#check for the headers
|
||||
foreach header : header_checks
|
||||
if cc.has_header(header)
|
||||
config_h.set10('HAVE_'+header.underscorify().to_upper(), true)
|
||||
endif
|
||||
endforeach
|
||||
|
||||
foreach function : function_checks
|
||||
function_name = function[0]
|
||||
headers_to_search = function[1]
|
||||
dependencies = []
|
||||
args = []
|
||||
|
||||
# if there is a library, make sure they exist
|
||||
if function.length() > 2
|
||||
foreach library : function[2]
|
||||
lib = cc.find_library(library, required : false)
|
||||
if lib.found() == true
|
||||
dependencies += lib
|
||||
endif
|
||||
endforeach
|
||||
endif
|
||||
|
||||
#check if there are args
|
||||
if function.length() > 3
|
||||
args = function[3]
|
||||
endif
|
||||
|
||||
# Only check the header if the dependencies are ready
|
||||
foreach header : headers_to_search
|
||||
if cc.has_header_symbol(header, function_name,
|
||||
dependencies : dependencies,
|
||||
args : args)
|
||||
config_h.set10('HAVE_'+function_name.to_upper(), true)
|
||||
endif
|
||||
endforeach
|
||||
endforeach
|
||||
|
||||
# The next checks are manually for now due to the fact that some names are not within the default pattern
|
||||
if (cc.has_header_symbol('sys/stat.h', 'fstatat'))
|
||||
config_h.set10('HAVE_ATFILE_SOURCE', true)
|
||||
endif
|
||||
|
||||
if (cc.has_header('sys/mman.h'))
|
||||
config_h.set10('HAVE_MMAN_H', true)
|
||||
endif
|
||||
|
||||
config_h.set('VMAJ', version_major)
|
||||
config_h.set('VMIN', version_minor)
|
||||
config_h.set('VMIC', version_micro)
|
||||
config_h.set('VREV', '0')
|
||||
|
||||
#jpeg detection ... life is a bit more complex there
|
||||
|
||||
jpeg = dependency('libjpeg', required: false)
|
||||
if jpeg.found() == false
|
||||
jpeg = cc.find_library('jpeg')
|
||||
endif
|
||||
|
||||
if config_h.has('HAVE_KEVENT')
|
||||
config_h.set('HAVE_NOTIFY_KEVENT', '1')
|
||||
endif
|
|
@ -0,0 +1,346 @@
|
|||
project('efl', ['c','cpp'],
|
||||
version: '1.21.99',
|
||||
default_options : ['buildtype=plain'],
|
||||
meson_version : '>=0.46'
|
||||
)
|
||||
|
||||
if target_machine.system() == 'darwin'
|
||||
add_languages('objc')
|
||||
endif
|
||||
|
||||
|
||||
clean_check = run_command('meson/clean_check.sh')
|
||||
if clean_check.returncode() == 0
|
||||
error('Meson build requires a clean source tree')
|
||||
endif
|
||||
|
||||
pkgconfig = import('pkgconfig')
|
||||
|
||||
test_env = environment()
|
||||
test_env.set('EFL_RUN_IN_TREE', '1')
|
||||
|
||||
version_arr = meson.project_version().split('.')
|
||||
|
||||
version_major = version_arr[0]
|
||||
version_minor = version_arr[1]
|
||||
version_micro = version_arr[2]
|
||||
version_name = 'v-'+version_major + '.' + version_minor
|
||||
|
||||
cc = meson.get_compiler('c')
|
||||
host_os = host_machine.system()
|
||||
|
||||
if host_os == 'linux'
|
||||
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
|
||||
|
||||
#prepare a special linker args flag for binaries on macos
|
||||
bin_linker_args = []
|
||||
if target_machine.system() == 'darwin'
|
||||
bin_linker_args = ['-pagezero_size', '10000', '-image_base', '100000000']
|
||||
endif
|
||||
|
||||
module_files = []
|
||||
evas_loader_map = []
|
||||
|
||||
#install paths
|
||||
dir_prefix = get_option('prefix')
|
||||
dir_sysconf = join_paths(dir_prefix, get_option('sysconfdir'))
|
||||
dir_bin = join_paths(dir_prefix, get_option('bindir'))
|
||||
dir_data = join_paths(dir_prefix, get_option('datadir'))
|
||||
dir_include = join_paths(dir_prefix, get_option('includedir'))
|
||||
dir_lib = join_paths(dir_prefix, get_option('libdir'))
|
||||
|
||||
#local paths
|
||||
local_lib = join_paths('src', 'lib')
|
||||
local_bin = join_paths('src', 'bin')
|
||||
local_module = join_paths('src', 'modules')
|
||||
local_tests = join_paths('src', 'tests')
|
||||
local_benchmark = join_paths('src', 'benchmarks')
|
||||
local_examples = join_paths('src', 'examples')
|
||||
local_scripts = join_paths('src', 'scripts')
|
||||
|
||||
add_global_arguments('-DHAVE_CONFIG_H=1', language: 'c')
|
||||
add_global_arguments('-D_GNU_SOURCE=1', language: 'c')
|
||||
add_global_arguments('-fPIC', language: 'c')
|
||||
|
||||
add_global_arguments('-DEFL_EO_API_SUPPORT=1', language: 'c')
|
||||
add_global_arguments('-DEFL_BETA_API_SUPPORT=1', language: 'c')
|
||||
add_global_arguments('-DNEED_RUN_IN_TREE=1', language: 'c')
|
||||
add_global_arguments('-DEFL_BUILD=1', language: 'c')
|
||||
add_global_arguments('-DEFL_BUILD=1', language: 'objc')
|
||||
add_global_arguments('-DEFL_EO_API_SUPPORT=1', language: 'objc')
|
||||
add_global_arguments('-DEFL_BETA_API_SUPPORT=1', language: 'objc')
|
||||
add_global_arguments('-DELM_INTERNAL_API_ARGESFSDFEFC=1', language: 'c')
|
||||
|
||||
config_h = configuration_data()
|
||||
config_h.set_quoted('MODULE_ARCH', version_name)
|
||||
config_h.set_quoted('PACKAGE', meson.project_name())
|
||||
config_h.set_quoted('PACKAGE_VERSION', meson.project_version())
|
||||
config_h.set_quoted('VERSION', meson.project_version())
|
||||
config_h.set_quoted('LOCALE_DIR', join_paths([dir_prefix, 'share/locale']))
|
||||
config_h.set_quoted('PACKAGE_URL', 'https://www.enlightenment.org')
|
||||
config_h.set_quoted('PACKAGE_TARNAME', meson.project_name())
|
||||
config_h.set_quoted('PACKAGE_BUGREPORT', 'enlightenment-devel@lists.sourceforge.net')
|
||||
config_h.set_quoted('PACKAGE_STRING', meson.project_name() + ' ' + meson.project_version())
|
||||
config_h.set_quoted('PACKAGE_NAME', meson.project_name())
|
||||
config_h.set_quoted('PACKAGE_BIN_DIR', dir_bin)
|
||||
config_h.set_quoted('PACKAGE_LIB_DIR', dir_lib)
|
||||
config_h.set_quoted('PACKAGE_SRC_DIR', meson.source_root())
|
||||
config_h.set_quoted('PACKAGE_BUILD_DIR', meson.current_build_dir())
|
||||
config_h.set_quoted('PACKAGE_SYSCONF_DIR', dir_sysconf)
|
||||
config_h.set_quoted('BINDIR', dir_bin)
|
||||
config_h.set_quoted('DATADIR', dir_data)
|
||||
config_h.set10('EFL_HAVE_THREADS', true)
|
||||
config_h.set('NEED_RUN_IN_TREE', '1')
|
||||
|
||||
config_dir = [include_directories('.')]
|
||||
eolian_include_directories = []
|
||||
|
||||
windows = ['windows', 'cygwin']
|
||||
#bsd for meson 0.46 and 0.47
|
||||
bsd = ['bsd', 'freebsd', 'dragonfly', 'netbsd']
|
||||
linux = ['linux']
|
||||
osx = ['darwin']
|
||||
|
||||
if linux.contains(target_machine.system()) or bsd.contains(target_machine.system())
|
||||
sys_lib_extension = 'so'
|
||||
sys_exe_extension = ''
|
||||
sys_mod_extension = 'so'
|
||||
elif windows.contains(target_machine.system())
|
||||
sys_lib_extension = 'dll'
|
||||
sys_exe_extension = 'exe'
|
||||
sys_mod_extension = 'dll'
|
||||
elif osx.contains(target_machine.system())
|
||||
sys_lib_extension = 'dylib'
|
||||
sys_exe_extension = ''
|
||||
sys_mod_extension = 'dylib'
|
||||
else
|
||||
error('System '+target_machine.system()+' not known')
|
||||
endif
|
||||
|
||||
if (get_option('crypto') == 'gnutls')
|
||||
# gcrypt does not want to provide a pkg config file so we try the lib
|
||||
crypto = [dependency('gnutls'), cc.find_library('gcrypt')]
|
||||
config_h.set('HAVE_GNUTLS', '1')
|
||||
elif (get_option('crypto') == 'openssl')
|
||||
crypto = dependency('openssl')
|
||||
config_h.set('HAVE_OPENSSL', '1')
|
||||
endif
|
||||
|
||||
config_h.set_quoted('SHARED_LIB_SUFFIX', '.'+sys_lib_extension)
|
||||
config_h.set_quoted('MOD_SUFFIX', '.'+sys_mod_extension)
|
||||
config_h.set_quoted('EXE_SUFFIX', '.'+sys_exe_extension)
|
||||
config_h.set('EFL_BUILD', '1')
|
||||
|
||||
subdir('header_checks')
|
||||
subdir('po')
|
||||
|
||||
if get_option('wl') == true
|
||||
subdir(join_paths('src', 'wayland_protocol'))
|
||||
endif
|
||||
|
||||
ecore_evas_wayland_engine_include_dir = []
|
||||
|
||||
subprojects = [
|
||||
# name | option | mod | lib | bin | bench | tests | examples | pkg-config options | name of static libs
|
||||
['eina' ,[] , false, true, true, true, true, true, [], []],
|
||||
['eolian' ,[] , false, true, true, false, true, false, ['eina'], []],
|
||||
['eo' ,[] , false, true, false, true, true, false, ['eina'], []],
|
||||
['efl' ,[] , false, true, false, false, true, false, ['eo'], []],
|
||||
['emile' ,[] , false, true, false, false, true, true, ['eina', 'efl'], ['lz4', 'rg_etc']],
|
||||
['eet' ,[] , false, true, true, false, true, true, ['eina', 'emile', 'efl'], []],
|
||||
['ecore' ,[] , false, true, false, false, false, false, ['eina', 'eo', 'efl'], ['buildsystem']],
|
||||
['eldbus' ,[] , false, true, true, false, true, true, ['eina', 'eo', 'efl'], []],
|
||||
['ecore' ,[] , true, false, false, false, true, true, ['eina', 'eo', 'efl'], []], #ecores modules depend on eldbus
|
||||
['ecore_audio' ,[] , false, true, false, false, false, false, ['eina', 'eo'], []],
|
||||
['ecore_avahi' ,['avahi'] , false, true, false, false, false, true, ['eina', 'ecore'], []],
|
||||
['ecore_con' ,[] , false, true, true, false, true, false, ['eina', 'eo', 'efl', 'ecore'], ['http-parser']],
|
||||
['ecore_file' ,[] , false, true, false, false, false, false, ['eina'], []],
|
||||
['eeze' ,['eeze'] , true, true, true, false, true, false, ['eina', 'efl'], []],
|
||||
['ecore_input' ,[] , false, true, false, false, false, false, ['eina', 'eo'], []],
|
||||
['ecore_x' ,['x11'] , false, true, false, false, false, false, ['eina', 'efl'], []],
|
||||
['ecore_fb' ,['fb'] , false, true, false, false, false, false, ['eina'], []],
|
||||
['ecore_wl2' ,['wl'] , true, true, false, false, false, false, ['eina'], ['libdrm']],
|
||||
['ecore_sdl' ,['sdl'] , false, true, false, false, false, false, ['eina'], []],
|
||||
['ecore_ipc' ,[] , false, true, false, false, false, false, ['eina'], []],
|
||||
['ecore_buffer' ,['buffer'] , true, true, true, false, false, false, ['eina'], []],
|
||||
['ector' ,[] , false, true, false, false, true, false, ['eina', 'efl'], ['draw', 'triangulator', 'freetype']],
|
||||
['elput' ,['drm'] , false, true, false, false, true, false, ['eina', 'eldbus'], []],
|
||||
['ecore_drm2' ,['drm'] , false, true, false, false, false, false, ['ecore'], ['libdrm']],
|
||||
['ecore_cocoa' ,['cocoa'] , false, true, false, false, false, false, ['eina'], []],
|
||||
['evas' ,[] , true, true, false, false, true, true, ['eina', 'efl', 'eo'], ['vg_common', 'libunibreak']],
|
||||
['evas_goal' ,[] , false, true, false, false, false, false, ['eina', 'efl', 'eo'], []],
|
||||
['ecore_input_evas' ,[] , false, true, false, false, false, false, ['eina', 'evas'], []],
|
||||
['ecore_evas' ,[] , true, true, true, false, false, false, ['evas', 'ector'], []],
|
||||
['ecore_imf' ,[] , true, true, false, false, false, false, ['eina'], []],
|
||||
['embryo' ,[] , false, true, true, false, false, false, ['eina', 'efl', 'eo'], []],
|
||||
['efreet' ,[] , false, true, false, false, true, false, ['eina', 'efl', 'eo'], []],
|
||||
['eio' ,[] , false, true, false, false, true, true, ['eina', 'eet'], []],
|
||||
['efreet' ,[] , false, false, true, false, false, false, ['eina', 'efl', 'eo'], []],
|
||||
['ecore_imf_evas' ,[] , false, true, false, false, false, false, ['eina', 'efl', 'eo'], []],
|
||||
['ephysics' ,['physics'] , false, true, false, false, false, false, ['eina', 'efl', 'eo'], []],
|
||||
['edje' ,[] , false, true, true, false, true, true, ['evas', 'eo', 'efl', 'luajit'], []],
|
||||
['emotion' ,[] , true, true, false, false, true, true, ['eina', 'efl', 'eo'], []],
|
||||
['ethumb' ,[] , true, true, true, false, false, false, ['eina', 'efl', 'eo'], []],
|
||||
['ethumb_client' ,[] , false, true, true, false, false, true, ['eina', 'efl', 'eo', 'ethumb'], []],
|
||||
['elocation' ,[] , false, true, false, false, false, false, ['ecore', 'eldbus'], []],
|
||||
['elementary' ,[] , true, true, true, false, true, false, ['eina', 'efl', 'eo', 'eet', 'evas', 'ecore', 'ecore-evas', 'ecore-file', 'ecore-input', 'edje', 'ethumb-client', 'emotion', 'ecore-imf', 'ecore-con', 'eldbus', 'efreet', 'efreet-mime', 'efreet-trash', 'eio', 'elocation'], ['atspi']],
|
||||
['efl_wl' ,['wl'] , false, true, true, false, false, false, ['evas', 'ecore'], []],
|
||||
['elua' ,['elua'] , false, true, true, false, true, false, ['eina', 'luajit'], []],
|
||||
['ecore_wayland' ,['wl-deprecated'] , false, true, false, false, false, false, ['eina'], []],
|
||||
['ecore_drm' ,['drm-deprecated'] , false, true, false, false, false, false, ['eina'], []],
|
||||
]
|
||||
|
||||
# We generate Efl_Config.h and config.h later, they will be available here
|
||||
config_dir += include_directories('.')
|
||||
|
||||
#we have to do that first, eina modules are required by eina
|
||||
#the other modules require theire package
|
||||
subdir(join_paths(local_module, 'eina'))
|
||||
|
||||
test_dirs = []
|
||||
example_dirs = []
|
||||
tmp_empty = declare_dependency()
|
||||
|
||||
|
||||
foreach package : subprojects
|
||||
package_name = package[0]
|
||||
package_version_name = '-'.join(package_name.split('_')) + '-' + version_major
|
||||
package_c_args = [
|
||||
'-DPACKAGE_DATA_DIR="'+ join_paths(dir_data, package_name)+'"',
|
||||
'-DNEED_RUN_IN_TREE=1'
|
||||
]
|
||||
automatic_pkgfile = true
|
||||
if package[1].length() == 0 or get_option(package[1][0])
|
||||
config_h.set('HAVE_'+package_name.to_upper(), '1')
|
||||
|
||||
dir_package_include = join_paths(dir_include, package_version_name)
|
||||
dir_package_modules = join_paths(dir_lib, package_name, 'modules')
|
||||
|
||||
#ensure that we really dont copy the eo file targets from a previous library
|
||||
pub_eo_file_target = []
|
||||
priv_eo_file_target = []
|
||||
|
||||
foreach static_lib : package[9]
|
||||
if get_variable(static_lib, tmp_empty) == tmp_empty
|
||||
subdir(join_paths('src', 'static_libs', static_lib))
|
||||
endif
|
||||
endforeach
|
||||
|
||||
if (package[3])
|
||||
subdir(join_paths(local_lib, package_name))
|
||||
endif
|
||||
if (package[2])
|
||||
subdir(join_paths(local_module, package_name))
|
||||
endif
|
||||
if (package[4])
|
||||
subdir(join_paths(local_bin, package_name))
|
||||
endif
|
||||
if (package[5])
|
||||
subdir(join_paths(local_benchmark, package_name))
|
||||
endif
|
||||
if (package[6])
|
||||
test_dirs += [package_name]
|
||||
endif
|
||||
if (package[7])
|
||||
example_dirs += [package_name]
|
||||
endif
|
||||
|
||||
set_variable('build_'+package_name, true)
|
||||
|
||||
# generate automatic pc files for libraries
|
||||
if automatic_pkgfile == true and package[3]
|
||||
tmp_lib = get_variable(package_name+'_lib')
|
||||
tmp_deps = get_variable(package_name+'_deps')
|
||||
tmp_pub_deps = get_variable(package_name+'_pub_deps')
|
||||
|
||||
pkgconfig.generate(tmp_lib,
|
||||
name : '-'.join(package_name.split('_')),
|
||||
subdirs : package_version_name,
|
||||
version : version_major + '.' + version_minor,
|
||||
libraries : tmp_pub_deps,
|
||||
requires : package[8],
|
||||
)
|
||||
endif
|
||||
else
|
||||
message(package_name+' disabled!')
|
||||
endif
|
||||
|
||||
endforeach
|
||||
|
||||
#build this later, as the debug services are depending on ecore
|
||||
subdir(join_paths('src', 'bin', 'efl'))
|
||||
|
||||
subdir(join_paths('src', 'generic', 'evas'))
|
||||
subdir(join_paths('src', 'generic', 'emotion'))
|
||||
|
||||
subdir(join_paths('src', 'bindings', 'luajit'))
|
||||
subdir(join_paths('src', 'edje_external'))
|
||||
|
||||
|
||||
subdir(join_paths('data'))
|
||||
|
||||
if get_option('build-tests')
|
||||
check = dependency('check')
|
||||
subdir(join_paths('src', 'tests'))
|
||||
foreach test : test_dirs
|
||||
subdir(join_paths(local_tests, test))
|
||||
endforeach
|
||||
endif
|
||||
|
||||
if get_option('build-examples')
|
||||
foreach example : example_dirs
|
||||
subdir(join_paths(local_examples, example))
|
||||
endforeach
|
||||
endif
|
||||
|
||||
subdir(join_paths(local_scripts))
|
||||
|
||||
meson.add_install_script('meson/meson_modules.sh', module_files)
|
||||
|
||||
foreach evas_loader_map_inst : evas_loader_map
|
||||
evas_loader_original = evas_loader_map_inst[0]
|
||||
evas_loader_link_types = evas_loader_map_inst[1]
|
||||
|
||||
meson.add_install_script('meson/evas_loader_conf.sh', evas_loader_original, evas_loader_link_types)
|
||||
endforeach
|
||||
|
||||
#
|
||||
# Configure files
|
||||
#
|
||||
|
||||
efl_config_h = configuration_data()
|
||||
efl_config_h.set('EFL_VERSION_MAJOR', version_major)
|
||||
efl_config_h.set('EFL_VERSION_MINOR', version_minor)
|
||||
efl_config_h.set('EFL_VERSION_MICRO', version_micro)
|
||||
efl_config_h.set('EFL_BUILD_ID', get_option('build-id'))
|
||||
|
||||
#FIXME placeholder
|
||||
efl_config_h.set('EFL_API_EO_DEF', '#define EFL_API_EO_DEF "FIXME NOT IMPLEMENTED"')
|
||||
efl_config_h.set('EFL_API_LEGACY_DEF', '#define EFL_API_LEGACY_DEF "FIXME NOT IMPLEMENTED"')
|
||||
|
||||
configure_file(
|
||||
output: 'config.h',
|
||||
install: false,
|
||||
configuration: config_h
|
||||
)
|
||||
|
||||
configure_file(
|
||||
input: join_paths('src','lib', 'efl', 'Efl_Config.h.in'),
|
||||
output: 'Efl_Config.h',
|
||||
install_dir : join_paths(dir_include,'efl-'+version_major),
|
||||
configuration: efl_config_h
|
||||
)
|
||||
|
||||
configure_file(
|
||||
input: 'elm_intro.h.in',
|
||||
output: 'elm_intro.h',
|
||||
configuration: config_h,
|
||||
install_dir : join_paths(dir_include,'elementary-'+version_major)
|
||||
)
|
|
@ -0,0 +1,3 @@
|
|||
#!/bin/sh
|
||||
|
||||
test -f ${MESON_SOURCE_ROOT}/configure
|
|
@ -0,0 +1,18 @@
|
|||
#!/bin/bash
|
||||
|
||||
original_loader=$1
|
||||
filename="$(basename $original_loader)"
|
||||
ext="${ext##*.}"
|
||||
original_name="$(basename $original_loader $ext)"
|
||||
loader_dir="$(dirname $original_loader)"
|
||||
loader="$(basename $original_loader)"
|
||||
loader_name="$(echo $original_name | cut -f 1 -d '.')"
|
||||
|
||||
if [ ${original_loader: -3} == "$ext" ]
|
||||
then
|
||||
mv "$DESTDIR"/"$original_loader" "$DESTDIR"/"$loader_dir"/"$original_name"
|
||||
fi
|
||||
|
||||
for x in "${@:2}"; do
|
||||
ln -sf "$DESTDIR"/"$loader_dir"/"$original_name" "$DESTDIR"/"$loader_dir"/"$loader_name"."$x"
|
||||
done
|
|
@ -0,0 +1,8 @@
|
|||
#!/bin/sh
|
||||
|
||||
for x in "$@" ; do
|
||||
dir="$(dirname $x)"
|
||||
filename="$(basename $x)"
|
||||
ext="${filename##*.}"
|
||||
mv "$DESTDIR"/"$x" "$DESTDIR"/"$dir"/module."$ext"
|
||||
done
|
|
@ -0,0 +1,311 @@
|
|||
option('audio',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'Flag for handling audio support in efl'
|
||||
)
|
||||
|
||||
option('avahi',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'Flag for handling avahi support in efl'
|
||||
)
|
||||
|
||||
option('x11',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'Flag for handling x11 support in efl'
|
||||
)
|
||||
|
||||
option('fb',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'Flag for handling frame buffer support in efl'
|
||||
)
|
||||
|
||||
option('sdl',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'Flag for handling sdl support in efl'
|
||||
)
|
||||
|
||||
option('wl',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'Flag for handling wayland support in efl'
|
||||
)
|
||||
|
||||
option('buffer',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'Flag for handling buffer support in efl'
|
||||
)
|
||||
|
||||
option('drm',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'Flag for handling drm support in efl'
|
||||
)
|
||||
|
||||
option('cocoa',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'Flag for handling drm support in efl'
|
||||
)
|
||||
|
||||
option('physics',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'Flag for handling the internal physics engine in efl'
|
||||
)
|
||||
|
||||
option('eeze',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'Flag for handling the device abstraction layer in efl'
|
||||
)
|
||||
|
||||
option('opengl',
|
||||
type : 'combo',
|
||||
choices : ['full', 'es-egl', 'none'],
|
||||
value : 'full',
|
||||
description : 'build efl with a special opengl support'
|
||||
)
|
||||
|
||||
option('build-id',
|
||||
type : 'string',
|
||||
value : 'none',
|
||||
description : 'The build id to attach to the efl build')
|
||||
|
||||
option('eina-magic-debug',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'magic debug of eina structure'
|
||||
)
|
||||
|
||||
option('debug-threads',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'thread debugging'
|
||||
)
|
||||
|
||||
option('build-examples',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'build examples'
|
||||
)
|
||||
|
||||
option('build-tests',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'build examples'
|
||||
)
|
||||
|
||||
option('crypto',
|
||||
type : 'combo',
|
||||
choices : ['gnutls', 'openssl'],
|
||||
value : 'openssl'
|
||||
)
|
||||
|
||||
option('glib',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'use glib or not'
|
||||
)
|
||||
|
||||
option('g-mainloop',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'use glib mainloop or not'
|
||||
)
|
||||
|
||||
option('gstreamer',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'use gstreamer 1.0 support'
|
||||
)
|
||||
|
||||
option('systemd',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'use systemd support'
|
||||
)
|
||||
|
||||
option('pulseaudio',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'pulseaudio support'
|
||||
)
|
||||
|
||||
option('network-backend',
|
||||
type : 'combo',
|
||||
choices : ['connman', 'none'],
|
||||
value : 'none',
|
||||
description : 'connman support'
|
||||
)
|
||||
|
||||
option('xpresent',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'xpresent support'
|
||||
)
|
||||
|
||||
option('xgesture',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'xgesture support'
|
||||
)
|
||||
|
||||
option('xinput2',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'xi2 support'
|
||||
)
|
||||
|
||||
option('xinput22',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'xi22 support'
|
||||
)
|
||||
|
||||
option('tslib',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'tslib support'
|
||||
)
|
||||
|
||||
option('eject-path',
|
||||
type : 'string',
|
||||
value : 'detect',
|
||||
description : 'path to use as eject binary, if "detect" internal eeze bins are used'
|
||||
)
|
||||
|
||||
option('mount-path',
|
||||
type : 'string',
|
||||
value : 'detect',
|
||||
description : 'path to use as eject binary, if "detect" internal eeze bins are used'
|
||||
)
|
||||
|
||||
option('unmount-path',
|
||||
type : 'string',
|
||||
value : 'detect',
|
||||
description : 'path to use as eject binary, if "detect" internal eeze bins are used'
|
||||
)
|
||||
|
||||
option('evas-modules',
|
||||
type : 'combo',
|
||||
choices : ['shared', 'static'],
|
||||
value : 'shared',
|
||||
description : 'how to build the evas modules'
|
||||
)
|
||||
|
||||
option('evas-loaders-disabler',
|
||||
type : 'array',
|
||||
description : 'add names here to disable the loaders',
|
||||
choices : ['gst', 'pdf', 'ps', 'raw', 'svg', 'xcf', 'bmp', 'dds', 'eet', 'generic', 'gif', 'ico', 'jp2k', 'jpeg', 'pmaps', 'png', 'psd', 'tga', 'tgv', 'tiff', 'wbmp', 'webp', 'xpm'],
|
||||
value : ['webp']
|
||||
)
|
||||
|
||||
option('ecore-imf-loaders-disabler',
|
||||
type : 'array',
|
||||
description : 'add names here to disable the loaders',
|
||||
choices : ['xim', 'ibus', 'scim'],
|
||||
value : ['scim']
|
||||
)
|
||||
|
||||
option('emotion-loaders-disabler',
|
||||
type : 'array',
|
||||
description : 'add names here to disable the loaders',
|
||||
choices : ['gstreamer', 'gstreamer1', 'libvlc', 'xine'],
|
||||
value : ['gstreamer', 'libvlc', 'xine']
|
||||
)
|
||||
|
||||
option('emotion-generic-loaders-disabler',
|
||||
type : 'array',
|
||||
description : 'add names here to disable the loaders',
|
||||
choices : ['vlc'],
|
||||
value : ['vlc']
|
||||
)
|
||||
|
||||
option('harfbuzz',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'harfbuzz support'
|
||||
)
|
||||
|
||||
option('fribidi',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'fribidi support'
|
||||
)
|
||||
|
||||
option('fontconfig',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'fontconfig support'
|
||||
)
|
||||
|
||||
option('edje-sound-and-video',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'disable sound and video for edje'
|
||||
)
|
||||
|
||||
option('pixman',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'Enable pixman support in evas'
|
||||
)
|
||||
|
||||
option('hyphen',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'Enable hyphen support in evas'
|
||||
)
|
||||
|
||||
option('embedded-lz4',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'do not use the system lz4, but rather the embedded r131 release'
|
||||
)
|
||||
|
||||
option('libmount',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'use libmount support or not'
|
||||
)
|
||||
|
||||
option('vnc-server',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'use libmount support or not'
|
||||
)
|
||||
|
||||
option('v4l2',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'add v4l2 support'
|
||||
)
|
||||
|
||||
option('elua',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'Flag for handling elua support in efl'
|
||||
)
|
||||
|
||||
option('wl-deprecated',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'Flag for handling deprecated wayland support in efl'
|
||||
)
|
||||
|
||||
option('drm-deprecated',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'Flag for handling deprecated drm support in efl'
|
||||
)
|
||||
|
||||
option('nls',
|
||||
type: 'boolean',
|
||||
value: true,
|
||||
description: 'enable localization: (default=true)'
|
||||
)
|
|
@ -0,0 +1,22 @@
|
|||
if get_option('nls')
|
||||
i18n = import('i18n')
|
||||
i18n.gettext('efl',
|
||||
args: [
|
||||
'--keyword=_',
|
||||
'--keyword=d_:1',
|
||||
'--keyword=P_:1,2',
|
||||
'--keyword=dP_:1,2',
|
||||
'--keyword=N_',
|
||||
'--keyword=NP_:1,2',
|
||||
'--from-code=UTF-8',
|
||||
'--foreign-user'
|
||||
])
|
||||
config_h.set('HAVE_GETTEXT', '1')
|
||||
config_h.set('ENABLE_NLS', '1')
|
||||
intl = cc.find_library('intl', required : false)
|
||||
if cc.has_header('libintl.h', dependencies : intl) == false
|
||||
error('libintl.h not found')
|
||||
endif
|
||||
else
|
||||
intl = declare_dependency()
|
||||
endif
|
|
@ -0,0 +1,10 @@
|
|||
#!/bin/bash
|
||||
|
||||
BUILD_DIR=`mktemp -d`
|
||||
INSTALL_DIR=`mktemp -d`
|
||||
|
||||
meson $@ --prefix ${INSTALL_DIR} ${BUILD_DIR}
|
||||
|
||||
ninja -C ${BUILD_DIR} all
|
||||
ninja -C ${BUILD_DIR} install
|
||||
#ninja -C ${BUILD_DIR} test
|
|
@ -0,0 +1,52 @@
|
|||
options = {
|
||||
{"-Dopengl=", "full", "none", "es-egl"},
|
||||
{"--buildtype ", "plain", "debug", "release"},
|
||||
{"-Devas-modules ", "shared", "static"},
|
||||
}
|
||||
|
||||
concated_options = {}
|
||||
|
||||
for i,v in pairs(options) do
|
||||
tmp_options = {}
|
||||
|
||||
option_name = v[1]
|
||||
|
||||
for i=2, #v do
|
||||
table.insert(tmp_options, option_name..v[i])
|
||||
end
|
||||
|
||||
table.insert(concated_options, tmp_options)
|
||||
end
|
||||
|
||||
function permutate(values)
|
||||
local permutater = {table.unpack(values[1])}
|
||||
|
||||
if #values == 1 then
|
||||
return {table.unpack(values[1])}
|
||||
else
|
||||
local result = {}
|
||||
table.remove(values, 1)
|
||||
local list_to_complete = permutate(values)
|
||||
|
||||
for k,v in pairs(list_to_complete) do
|
||||
for k_perm,v_perm in pairs(permutater) do
|
||||
table.insert(result, v_perm.." "..v)
|
||||
end
|
||||
end
|
||||
return result
|
||||
end
|
||||
end
|
||||
|
||||
all_options = permutate(concated_options)
|
||||
|
||||
print("GOING TO BUILD ALOT OF EFL")
|
||||
|
||||
for k,v in pairs(all_options) do
|
||||
cmd = "sh ./scripts/check_options.sh "..v.." "..arg[1]
|
||||
exitcode = os.execute(cmd)
|
||||
if exitcode ~= true then
|
||||
print("command "..cmd.." failed. ")
|
||||
print(exitcode)
|
||||
os.exit(-1)
|
||||
end
|
||||
end
|
|
@ -0,0 +1,41 @@
|
|||
eina_bench_src = files(
|
||||
'eina_bench.c',
|
||||
'eina_bench_sort.c',
|
||||
'eina_bench_hash.c',
|
||||
'eina_bench_crc_hash.c',
|
||||
'eina_bench_stringshare.c',
|
||||
'eina_bench_convert.c',
|
||||
'eina_bench_mempool.c',
|
||||
'eina_bench_stringshare_e17.c',
|
||||
'eina_bench_array.c',
|
||||
'eina_bench_rectangle_pool.c',
|
||||
'ecore_list.c',
|
||||
'ecore_strings.c',
|
||||
'ecore_hash.c',
|
||||
'ecore_sheap.c',
|
||||
'evas_hash.c',
|
||||
'evas_list.c',
|
||||
'evas_mempool.c',
|
||||
'evas_object_list.c',
|
||||
'evas_stringshare.c',
|
||||
'eina_bench_quad.c',
|
||||
'eina_bench.h',
|
||||
'Ecore_Data.h',
|
||||
'Evas_Data.h',
|
||||
'evas_mempool.h')
|
||||
|
||||
city = shared_library('city',
|
||||
sources : ['city.cc','city.h'],
|
||||
)
|
||||
|
||||
eina_bench = executable('eina_bench',
|
||||
sources : eina_bench_src,
|
||||
dependencies : eina,
|
||||
c_args : ['-fPIC','-DCITYHASH_BENCH', '-DEINA_ENABLE_BENCH_E17'],
|
||||
include_directories : config_dir,
|
||||
link_with : city,
|
||||
)
|
||||
|
||||
benchmark('eina_bench', eina_bench,
|
||||
timeout : 20*60
|
||||
)
|
|
@ -0,0 +1,16 @@
|
|||
eo_benchmark_src = [
|
||||
'class_simple.c',
|
||||
'class_simple.h',
|
||||
'eo_bench.c',
|
||||
'eo_bench.h',
|
||||
'eo_bench_callbacks.c',
|
||||
'eo_bench_eo_do.c',
|
||||
'eo_bench_eo_add.c'
|
||||
]
|
||||
|
||||
eo_bench = executable('eo_bench',
|
||||
eo_benchmark_src,
|
||||
dependencies: [eo, eina],
|
||||
)
|
||||
|
||||
benchmark('eo', eo_bench)
|
|
@ -0,0 +1,5 @@
|
|||
executable('bq_mgr',
|
||||
['bq_mgr_protocol.c', 'bq_mgr.c'],
|
||||
dependencies: [ecore, ecore_buffer, ecore_buffer_deps],
|
||||
install : true
|
||||
)
|
|
@ -0,0 +1,6 @@
|
|||
executable('efl_net_proxy_helper',
|
||||
'efl_net_proxy_helper.c',
|
||||
dependencies : [ecore_con],
|
||||
install : true,
|
||||
install_dir : join_paths(dir_lib, 'ecore_con', 'utils', version_name)
|
||||
)
|
|
@ -0,0 +1,11 @@
|
|||
executable('ecore_evas_convert',
|
||||
'ecore_evas_convert.c',
|
||||
dependencies : [eina, ecore, evas, ecore_evas],
|
||||
install : true
|
||||
)
|
||||
|
||||
executable('eetpack',
|
||||
'eetpack.c',
|
||||
dependencies : [eina, eet, evas, ecore_evas],
|
||||
install : true
|
||||
)
|
|
@ -0,0 +1,38 @@
|
|||
epp_src = [
|
||||
'cpplib.h',
|
||||
'cpphash.h',
|
||||
'cppalloc.c',
|
||||
'cpperror.c',
|
||||
'cppexp.c',
|
||||
'cpphash.c',
|
||||
'cpplib.c',
|
||||
'cppmain.c'
|
||||
]
|
||||
|
||||
epp = executable('epp',
|
||||
epp_src,
|
||||
dependencies: eolian,
|
||||
install: true,
|
||||
install_dir : join_paths(dir_lib, 'edje', 'utils', version_name),
|
||||
c_args : [
|
||||
package_c_args,
|
||||
'-DHAVE_CONFIG_H',
|
||||
'-DHAVE_STRERROR',
|
||||
'-DFATAL_EXIT_CODE=1',
|
||||
'-DSUCCESS_EXIT_CODE=0',
|
||||
'-DGCC_INCLUDE_DIR="/usr/include"',
|
||||
'-DGPLUSPLUS_INCLUDE_DIR="/usr/include"',
|
||||
'-DTOOL_INCLUDE_DIR="/usr/bin"',
|
||||
'-DHOST_BITS_PER_LONG=32',
|
||||
'-DBITS_PER_UNIT=8',
|
||||
'-DHOST_BITS_PER_INT=32',
|
||||
'-DBITS_PER_WORD=16',
|
||||
'-DTARGET_BELL=7',
|
||||
'-DTARGET_BS=8',
|
||||
'-DTARGET_FF=12',
|
||||
'-DTARGET_NEWLINE=10',
|
||||
'-DTARGET_CR=13',
|
||||
'-DTARGET_TAB=9',
|
||||
'-DTARGET_VT=11'
|
||||
],
|
||||
)
|
|
@ -0,0 +1,87 @@
|
|||
subdir('epp')
|
||||
|
||||
edje_bin_deps = [
|
||||
eina, eo, efl, m,
|
||||
luajit, eet, evas,
|
||||
ecore_file, ecore_input,
|
||||
ecore_imf, ecore_imf_evas,
|
||||
embryo, efreet, eio,
|
||||
edje, ecore_evas
|
||||
]
|
||||
|
||||
edje_cc_src = [
|
||||
'edje_multisense_convert.h',
|
||||
'edje_cc.h',
|
||||
'edje_cc.c',
|
||||
'edje_cc_out.c',
|
||||
'edje_cc_parse.c',
|
||||
'edje_cc_mem.c',
|
||||
'edje_cc_handlers.c',
|
||||
'edje_cc_sources.c',
|
||||
'edje_cc_script.c',
|
||||
'edje_multisense_convert.c'
|
||||
]
|
||||
|
||||
edje_cc = executable('edje_cc',
|
||||
edje_cc_src,
|
||||
dependencies: [edje_bin_deps, eet, ecore_evas, ecore_file],
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
link_args : bin_linker_args
|
||||
)
|
||||
|
||||
edje_decc_src = [
|
||||
'edje_decc.c',
|
||||
'edje_decc.h',
|
||||
'edje_cc_mem.c',
|
||||
'edje_cc_sources.c',
|
||||
]
|
||||
|
||||
edje_decc = executable('edje_decc',
|
||||
edje_decc_src,
|
||||
dependencies: [edje_bin_deps, eet, ecore_file, ecore_evas],
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
edje_player = executable('edje_player',
|
||||
'edje_player.c',
|
||||
dependencies: [edje_bin_deps, eet, ecore, eio, ecore_evas],
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
edje_inspector = executable('edje_inspector',
|
||||
'edje_inspector.c',
|
||||
dependencies: [edje_bin_deps, eet, ecore, eio, ecore_evas],
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
edje_external_inspector = executable('edje_external_inspector',
|
||||
'edje_external_inspector.c',
|
||||
dependencies: [edje_bin_deps, eet, ecore, eio, ecore_evas],
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
edje_codegen = executable('edje_codegen',
|
||||
'edje_codegen.c',
|
||||
dependencies: [edje_bin_deps, eet, ecore, eio, ecore_evas],
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
edje_pick = executable('edje_pick',
|
||||
'edje_pick.c',
|
||||
dependencies: [edje_bin_deps, eet, ecore, eio, ecore_evas],
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
edje_watch = executable('edje_watch',
|
||||
'edje_watch.c',
|
||||
dependencies: [edje_bin_deps, eet, ecore, eio, ecore_evas],
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
|
@ -0,0 +1,10 @@
|
|||
eet_bin = executable('eet',
|
||||
'eet_main.c',
|
||||
dependencies: [eet],
|
||||
install : true
|
||||
)
|
||||
|
||||
install_data(['diffeet','vieet'],
|
||||
install_mode: 'rwxr--r--',
|
||||
install_dir : dir_bin
|
||||
)
|
|
@ -0,0 +1,10 @@
|
|||
eeze_bins = ['disk_ls', 'mount', 'scanner', 'scanner_monitor', 'umount']
|
||||
|
||||
foreach eeze_bin : eeze_bins
|
||||
src_file = join_paths('eeze_'+eeze_bin, 'eeze_'+eeze_bin+'.c')
|
||||
tmp = executable('eeze_'+eeze_bin, src_file,
|
||||
dependencies: [ecore, eeze, ecore_con, ecore_file, eet],
|
||||
install: true,
|
||||
)
|
||||
set_variable('eeze_'+eeze_bin, tmp)
|
||||
endforeach
|
|
@ -0,0 +1,10 @@
|
|||
executable('efl_debug',
|
||||
'efl_debug.c',
|
||||
dependencies: [eina, ecore],
|
||||
install: true,
|
||||
)
|
||||
executable('efl_debugd',
|
||||
'efl_debugd.c',
|
||||
dependencies: [eina, ecore, ecore_con],
|
||||
install: true,
|
||||
)
|
|
@ -0,0 +1,11 @@
|
|||
executable('efl_wl_test',
|
||||
'efl_wl_test.c',
|
||||
include_directories : config_dir,
|
||||
dependencies: [efl_wl, elementary]
|
||||
)
|
||||
|
||||
executable('efl_wl_test_stack',
|
||||
'efl_wl_test_stack.c',
|
||||
include_directories : config_dir,
|
||||
dependencies: [efl_wl, elementary]
|
||||
)
|
|
@ -0,0 +1,41 @@
|
|||
efreetd_src = [
|
||||
'efreetd.c',
|
||||
'efreetd.h',
|
||||
'efreetd_ipc.h',
|
||||
'efreetd_ipc.c',
|
||||
'efreetd_cache.h',
|
||||
'efreetd_cache.c'
|
||||
]
|
||||
|
||||
config_h.set('STRICT_SPEC', '1')
|
||||
|
||||
efreetd = executable('efreetd',
|
||||
efreetd_src,
|
||||
dependencies: [efreet, ecore, ecore_ipc, ecore_file, eio],
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
efreet_desktop_cache_create = executable('efreet_desktop_cache_create',
|
||||
'efreet_desktop_cache_create.c',
|
||||
dependencies: [efreet, ecore, eet, ecore_file],
|
||||
install: true,
|
||||
install_dir : join_paths(dir_lib, 'efreet', version_name),
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
efreet_icon_cache_create = executable('efreet_icon_cache_create',
|
||||
'efreet_icon_cache_create.c',
|
||||
dependencies: [efreet, ecore, eet, ecore_file],
|
||||
install: true,
|
||||
install_dir : join_paths(dir_lib, 'efreet', version_name),
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
efreet_mime_cache_create = executable('efreet_mime_cache_create',
|
||||
'efreet_mime_cache_create.c',
|
||||
dependencies: [efreet, ecore, eet, ecore_file],
|
||||
install: true,
|
||||
install_dir : join_paths(dir_lib, 'efreet', version_name),
|
||||
c_args : package_c_args,
|
||||
)
|
|
@ -0,0 +1,5 @@
|
|||
executable('eina_btlog',
|
||||
'eina_btlog.c',
|
||||
dependencies: eina,
|
||||
install: true,
|
||||
)
|
|
@ -0,0 +1,5 @@
|
|||
executable('eina_modinfo',
|
||||
'eina_modinfo.c',
|
||||
dependencies: eina,
|
||||
install: true,
|
||||
)
|
|
@ -0,0 +1,2 @@
|
|||
subdir('eina_btlog')
|
||||
subdir('eina_modinfo')
|
|
@ -0,0 +1,13 @@
|
|||
eldbus_codegen_src = [
|
||||
'codegen.h',
|
||||
'utils.c',
|
||||
'parser.c',
|
||||
'dbus.c',
|
||||
'source_client.c',
|
||||
'client.c'
|
||||
]
|
||||
executable('eldbus-codegen',
|
||||
eldbus_codegen_src,
|
||||
dependencies: [eldbus, ecore],
|
||||
install: true,
|
||||
)
|
|
@ -0,0 +1,228 @@
|
|||
elementary_test_src = [
|
||||
'test.c',
|
||||
'test_explode.c',
|
||||
'test_explode.h',
|
||||
'test_3d.c',
|
||||
'test_access.c',
|
||||
'test_actionslider.c',
|
||||
'test_anim.c',
|
||||
'test_bg.c',
|
||||
'test_box.c',
|
||||
'test_bubble.c',
|
||||
'test_button.c',
|
||||
'test_ui_button.c',
|
||||
'test_calendar.c',
|
||||
'test_check.c',
|
||||
'test_clock.c',
|
||||
'test_cnp.c',
|
||||
'test_code.c',
|
||||
'test_colorselector.c',
|
||||
'test_colorclass.c',
|
||||
'test_combobox.c',
|
||||
'test_config.c',
|
||||
'test_conform.c',
|
||||
'test_conform_indicator.c',
|
||||
'test_ctxpopup.c',
|
||||
'test_cursor.c',
|
||||
'test_datetime.c',
|
||||
'test_dayselector.c',
|
||||
'test_disable.c',
|
||||
'test_diskselector.c',
|
||||
'test_dnd.c',
|
||||
'test_efl_anim_alpha.c',
|
||||
'test_efl_anim_rotate.c',
|
||||
'test_efl_anim_scale.c',
|
||||
'test_efl_anim_translate.c',
|
||||
'test_efl_anim_group_parallel.c',
|
||||
'test_efl_anim_group_sequential.c',
|
||||
'test_efl_anim_event_anim.c',
|
||||
'test_efl_anim_pause.c',
|
||||
'test_efl_anim_repeat.c',
|
||||
'test_efl_anim_start_delay.c',
|
||||
'test_efl_anim_interpolator.c',
|
||||
'test_eio.c',
|
||||
'test_entry.c',
|
||||
'test_entry_anchor.c',
|
||||
'test_entry_anchor2.c',
|
||||
'test_events.c',
|
||||
'test_evas_mask.c',
|
||||
'test_evas_map.c',
|
||||
'test_efl_gfx_map.c',
|
||||
'test_evas_snapshot.c',
|
||||
'test_external.c',
|
||||
'test_fileselector_button.c',
|
||||
'test_fileselector.c',
|
||||
'test_fileselector_entry.c',
|
||||
'test_flip.c',
|
||||
'test_flip_page.c',
|
||||
'test_flip_page_eo.c',
|
||||
'test_flipselector.c',
|
||||
'test_floating.c',
|
||||
'test_focus.c',
|
||||
'test_focus_custom_chain.c',
|
||||
'test_focus_policy.c',
|
||||
'test_focus_style.c',
|
||||
'test_gengrid.c',
|
||||
'test_genlist.c',
|
||||
'test_gesture_layer.c',
|
||||
'test_gesture_layer2.c',
|
||||
'test_gesture_layer3.c',
|
||||
'test_gfx_filters.c',
|
||||
'test_glview_simple.c',
|
||||
'test_glview.c',
|
||||
'test_glview_manygears.c',
|
||||
'test_grid.c',
|
||||
'test_ui_table_static.c',
|
||||
'test_ui_stack.c',
|
||||
'test_hover.c',
|
||||
'test_hoversel.c',
|
||||
'test_icon.c',
|
||||
'test_icon_desktops.c',
|
||||
'test_icon_animated.c',
|
||||
'test_image.c',
|
||||
'test_index.c',
|
||||
'test_inwin.c',
|
||||
'test_label.c',
|
||||
'test_launcher.c',
|
||||
'test_layout.c',
|
||||
'test_list.c',
|
||||
'test_map.c',
|
||||
'test_main_menu.c',
|
||||
'test_menu.c',
|
||||
'test_multi.c',
|
||||
'test_multibuttonentry.c',
|
||||
'test_naviframe.c',
|
||||
'test_naviframe_complex.c',
|
||||
'test_notify.c',
|
||||
'test_nstate.c',
|
||||
'test_panel.c',
|
||||
'test_panes.c',
|
||||
'test_ui_panes.c',
|
||||
'test_part_bg.c',
|
||||
'test_part_shadow.c',
|
||||
'test_photo.c',
|
||||
'test_photocam.c',
|
||||
'test_popup.c',
|
||||
'test_prefs.c',
|
||||
'test_progressbar.c',
|
||||
'test_ui_progressbar.c',
|
||||
'test_radio.c',
|
||||
'test_scaling.c',
|
||||
'test_scroller.c',
|
||||
'test_ui_scroller.c',
|
||||
'test_segment_control.c',
|
||||
'test_separator.c',
|
||||
'test_slider.c',
|
||||
'test_ui_slider.c',
|
||||
'test_ui_slider_interval.c',
|
||||
'test_ui_spin.c',
|
||||
'test_ui_spin_button.c',
|
||||
'test_ui_datepicker.c',
|
||||
'test_ui_timepicker.c',
|
||||
'test_ui_tags.c',
|
||||
'test_slideshow.c',
|
||||
'test_spinner.c',
|
||||
'test_store.c',
|
||||
'test_sys_notify.c',
|
||||
'test_systray.c',
|
||||
'test_table.c',
|
||||
'test_thumb.c',
|
||||
'test_toolbar.c',
|
||||
'test_tooltip.c',
|
||||
'test_transit.c',
|
||||
'test_transit_bezier.c',
|
||||
'test_ui_box.c',
|
||||
'test_ui_clock.c',
|
||||
'test_ui_table.c',
|
||||
'test_ui_popup.c',
|
||||
'test_ui_textpath.c',
|
||||
'test_video.c',
|
||||
'test_weather.c',
|
||||
'test_web.c',
|
||||
'test_win_inline.c',
|
||||
'test_win_keygrab.c',
|
||||
'test_win_socket.c',
|
||||
'test_win_plug.c',
|
||||
'test_win_state.c',
|
||||
'test_win_wm_rotation.c',
|
||||
'test_win_dialog.c',
|
||||
'test_win_modal.c',
|
||||
'test_efl_ui_text.c',
|
||||
'test_win_stack.c',
|
||||
'test_win_indicator.c',
|
||||
'test_gesture_framework.c',
|
||||
'test_ui_tab_pager.c',
|
||||
'test.h'
|
||||
]
|
||||
|
||||
elementary_test = executable('elementary_test',
|
||||
elementary_test_src,
|
||||
dependencies: [elementary] + elementary_deps + elementary_pub_deps,
|
||||
install: true,
|
||||
c_args : package_c_args + [
|
||||
'-Delementary_test_BIN_DIR="'+dir_bin+'"',
|
||||
'-Delementary_test_LIB_DIR="'+dir_lib+'"',
|
||||
'-Delementary_test_DATA_DIR="'+join_paths(dir_data,'elementary')+'"'
|
||||
]
|
||||
)
|
||||
|
||||
elementary_config_src = [
|
||||
'config.c'
|
||||
]
|
||||
|
||||
elementary_config = executable('elementary_config',
|
||||
elementary_config_src,
|
||||
dependencies: [elementary] + elementary_deps + elementary_pub_deps,
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
elementary_quicklaunch_src = [
|
||||
'quicklaunch.c'
|
||||
]
|
||||
|
||||
elementary_quicklaunch = executable('elementary_quicklaunch',
|
||||
elementary_quicklaunch_src,
|
||||
dependencies: [elementary] + elementary_deps + elementary_pub_deps,
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
elementary_codegen_src = [
|
||||
'elementary_codegen.c'
|
||||
]
|
||||
|
||||
elementary_codegen = executable('elementary_codegen',
|
||||
elementary_codegen_src,
|
||||
dependencies: [elementary] + elementary_deps + elementary_pub_deps,
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
elm_prefs_cc_src = [
|
||||
'elm_prefs_cc.h',
|
||||
'elm_prefs_cc.c',
|
||||
'elm_prefs_cc_mem.c',
|
||||
'elm_prefs_cc_out.c',
|
||||
'elm_prefs_cc_parse.c',
|
||||
'elm_prefs_cc_handlers.c'
|
||||
|
||||
]
|
||||
|
||||
elm_prefs_cc = executable('elm_prefs_cc',
|
||||
elm_prefs_cc_src,
|
||||
dependencies: [elementary] + elementary_deps + elementary_pub_deps,
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
elementary_run_src = [
|
||||
'run.c'
|
||||
]
|
||||
|
||||
elementary_run = executable('elementary_run',
|
||||
elementary_run_src,
|
||||
dependencies: [elementary] + elementary_deps + elementary_pub_deps,
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
|
@ -0,0 +1,5 @@
|
|||
executable('elua',
|
||||
'main.c',
|
||||
dependencies: [eina, ecore, elua, intl],
|
||||
install: true,
|
||||
)
|
|
@ -0,0 +1,24 @@
|
|||
embryo_cc_src = [
|
||||
'embryo_cc_amx.h',
|
||||
'embryo_cc_osdefs.h',
|
||||
'embryo_cc_sc.h',
|
||||
'embryo_cc_sc1.c',
|
||||
'embryo_cc_sc2.c',
|
||||
'embryo_cc_sc3.c',
|
||||
'embryo_cc_sc4.c',
|
||||
'embryo_cc_sc5.c',
|
||||
'embryo_cc_sc6.c',
|
||||
'embryo_cc_sc7.c',
|
||||
'embryo_cc_scexpand.c',
|
||||
'embryo_cc_sclist.c',
|
||||
'embryo_cc_scvars.c',
|
||||
'embryo_cc_prefix.c',
|
||||
'embryo_cc_prefix.h'
|
||||
]
|
||||
|
||||
embryo_cc = executable('embryo_cc',
|
||||
embryo_cc_src,
|
||||
dependencies: [embryo, m, buildsystem],
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
|
@ -0,0 +1,19 @@
|
|||
eolian_gen_src = [
|
||||
'main.c',
|
||||
'main.h',
|
||||
'types.c',
|
||||
'types.h',
|
||||
'headers.c',
|
||||
'headers.h',
|
||||
'sources.c',
|
||||
'sources.h',
|
||||
'docs.c',
|
||||
'docs.h'
|
||||
]
|
||||
|
||||
eolian_gen = executable('eolian_gen',
|
||||
eolian_gen_src,
|
||||
dependencies: eolian,
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
|
@ -0,0 +1,6 @@
|
|||
ethumb_bin = executable('ethumb',
|
||||
'ethumb.c',
|
||||
dependencies: [ecore, ethumb],
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
|
@ -0,0 +1,24 @@
|
|||
ethumbd = executable('ethumbd',
|
||||
'ethumbd.c',
|
||||
install: true,
|
||||
dependencies : [ecore, ethumb, ethumb_client, ecore, eldbus],
|
||||
include_directories : config_dir,
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
ethumbd_client = executable('ethumbd_client',
|
||||
'ethumbd_client.c',
|
||||
install: true,
|
||||
dependencies : [ecore, ethumb, ethumb_client, ecore],
|
||||
include_directories : config_dir,
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
ethumbd_slave = executable('ethumbd_slave',
|
||||
'ethumbd_slave.c',
|
||||
install: true,
|
||||
install_dir : join_paths(dir_lib, 'ethumb_client', 'utils', version_name),
|
||||
dependencies : [ecore, ethumb, ethumb_client, ecore],
|
||||
include_directories : config_dir,
|
||||
c_args : package_c_args,
|
||||
)
|
|
@ -0,0 +1,7 @@
|
|||
install_subdir('eina',
|
||||
install_dir : join_paths(dir_data, 'elua', 'modules')
|
||||
)
|
||||
|
||||
install_data(files(['eo.lua', 'eolian.lua']),
|
||||
install_dir : join_paths(dir_data, 'elua', 'modules')
|
||||
)
|
|
@ -0,0 +1,50 @@
|
|||
edje_external_elementary = [
|
||||
'private.h',
|
||||
'elm.c',
|
||||
'elm_actionslider.c',
|
||||
'elm_bg.c',
|
||||
'elm_bubble.c',
|
||||
'elm_button.c',
|
||||
'elm_calendar.c',
|
||||
'elm_check.c',
|
||||
'elm_clock.c',
|
||||
'elm_combobox.c',
|
||||
'elm_entry.c',
|
||||
'elm_fileselector.c',
|
||||
'elm_fileselector_button.c',
|
||||
'elm_fileselector_entry.c',
|
||||
'elm_frame.c',
|
||||
'elm_gengrid.c',
|
||||
'elm_genlist.c',
|
||||
'elm_hoversel.c',
|
||||
'elm_icon.c',
|
||||
'elm_index.c',
|
||||
'elm_label.c',
|
||||
'elm_list.c',
|
||||
'elm_map.c',
|
||||
'elm_multibuttonentry.c',
|
||||
'elm_naviframe.c',
|
||||
'elm_notify.c',
|
||||
'elm_panes.c',
|
||||
'elm_photocam.c',
|
||||
'elm_progressbar.c',
|
||||
'elm_radio.c',
|
||||
'elm_scroller.c',
|
||||
'elm_segment_control.c',
|
||||
'elm_slider.c',
|
||||
'elm_slideshow.c',
|
||||
'elm_spinner.c',
|
||||
'elm_thumb.c',
|
||||
'elm_toolbar.c',
|
||||
'elm_video.c',
|
||||
'elm_web.c'
|
||||
]
|
||||
|
||||
ecore_systemd_mod = shared_module('elementary',
|
||||
edje_external_elementary,
|
||||
dependencies: [edje, elementary, elementary_deps],
|
||||
install: true,
|
||||
install_dir: mod_install_dir,
|
||||
c_args : elm_package_c_args,
|
||||
)
|
||||
module_files += join_paths(mod_install_dir, 'libelementary.' + sys_mod_extension)
|
|
@ -0,0 +1,8 @@
|
|||
ecore_systemd_mod = shared_module('emotion',
|
||||
'emotion.c',
|
||||
dependencies: [edje, emotion],
|
||||
install: true,
|
||||
install_dir: mod_install_dir,
|
||||
c_args : emotion_package_c_args
|
||||
)
|
||||
module_files += join_paths(mod_install_dir, 'libemotion.' + sys_mod_extension)
|
|
@ -0,0 +1,12 @@
|
|||
edje_externals = ['emotion', 'elementary']
|
||||
|
||||
foreach edje_external : edje_externals
|
||||
#!?%$§#! custom nane for edje externals
|
||||
if (edje_external == 'elementary')
|
||||
mod_install_dir = join_paths(dir_lib, 'edje', 'modules', 'elm', version_name)
|
||||
else
|
||||
mod_install_dir = join_paths(dir_lib, 'edje', 'modules', edje_external, version_name)
|
||||
endif
|
||||
subdir(edje_external)
|
||||
endforeach
|
||||
|
|
@ -0,0 +1,76 @@
|
|||
examples = [
|
||||
'ecore_event_example_01',
|
||||
'ecore_event_example_02',
|
||||
'ecore_exe_example',
|
||||
'ecore_exe_example_child',
|
||||
'ecore_fd_handler_example',
|
||||
'ecore_file_download_example',
|
||||
'ecore_idler_example',
|
||||
'ecore_job_example',
|
||||
'ecore_pipe_gstreamer_example',
|
||||
'ecore_pipe_simple_example',
|
||||
'ecore_poller_example',
|
||||
'ecore_thread_example',
|
||||
'ecore_time_functions_example',
|
||||
'ecore_timer_example',
|
||||
'ecore_getopt_example'
|
||||
]
|
||||
|
||||
gnutls = dependency('gnutls', required : false)
|
||||
if gnutls.found()
|
||||
examples += ['ecore_fd_handler_gnutls_example']
|
||||
endif
|
||||
|
||||
foreach example : examples
|
||||
executable(example, example + '.c', dependencies: [eina, ecore, gstreamer, ecore_file, gnutls])
|
||||
endforeach
|
||||
|
||||
examples = [
|
||||
# 'ecore_audio_custom',
|
||||
# 'ecore_audio_playback',
|
||||
# 'ecore_audio_to_ogg',
|
||||
]
|
||||
|
||||
foreach example : examples
|
||||
executable(example, example + '.c', dependencies: [eina, ecore, ecore_audio])
|
||||
endforeach
|
||||
|
||||
|
||||
examples = [
|
||||
'ecore_con_client_example',
|
||||
'ecore_con_client_simple_example',
|
||||
'ecore_con_lookup_example',
|
||||
'ecore_con_server_example',
|
||||
'ecore_con_server_http_example',
|
||||
'ecore_con_server_simple_example',
|
||||
'ecore_con_url_cookies_example',
|
||||
'ecore_con_url_download_example',
|
||||
'ecore_con_url_headers_example',
|
||||
'ecore_client_bench',
|
||||
'ecore_server_bench',
|
||||
]
|
||||
|
||||
foreach example : examples
|
||||
executable(example, example + '.c', dependencies: [eina, ecore, ecore_con])
|
||||
endforeach
|
||||
|
||||
examples = [
|
||||
'ecore_animator_example',
|
||||
'ecore_evas_basics_example',
|
||||
'ecore_evas_buffer_example_01',
|
||||
'ecore_evas_buffer_example_02',
|
||||
'ecore_evas_callbacks',
|
||||
'ecore_evas_ews_example',
|
||||
'ecore_evas_object_example',
|
||||
'ecore_evas_window_sizes_example',
|
||||
]
|
||||
|
||||
foreach example : examples
|
||||
executable(example, example + '.c',
|
||||
dependencies: [eina, ecore_evas],
|
||||
c_args : [
|
||||
'-DPACKAGE_EXAMPLES_DIR="'+meson.current_source_dir()+'"']
|
||||
)
|
||||
endforeach
|
||||
|
||||
# 'ecore_imf_example',
|
|
@ -0,0 +1,8 @@
|
|||
examples = [
|
||||
'ecore_avahi_browse_example',
|
||||
'ecore_avahi_example',
|
||||
]
|
||||
|
||||
foreach example : examples
|
||||
executable(example, example + '.c', dependencies: [ecore_avahi_deps, ecore_avahi])
|
||||
endforeach
|
|
@ -0,0 +1,135 @@
|
|||
edc_files = [
|
||||
'animations.edc',
|
||||
'animations2.edc',
|
||||
'basic.edc',
|
||||
'basic2.edc',
|
||||
'bezier-transition-example.edc',
|
||||
'box.edc',
|
||||
'box_example.edc',
|
||||
'color-class.edc',
|
||||
'drag.edc',
|
||||
'dynamic_multiseat.edc',
|
||||
'edje-group.edc',
|
||||
'edje-nested.edc',
|
||||
'edje-threshold.edc',
|
||||
'edje_example.edc',
|
||||
'embryo_custom_state.edc',
|
||||
'embryo_pong.edc',
|
||||
'embryo_run_program.edc',
|
||||
'embryo_set_state.edc',
|
||||
'embryo_set_state_anim.edc',
|
||||
'embryo_set_text.edc',
|
||||
'embryo_timer.edc',
|
||||
'embryo_tween_anim.edc',
|
||||
'entry.edc',
|
||||
'external_elm_anchorblock.edc',
|
||||
'external_elm_button.edc',
|
||||
'external_elm_check.edc',
|
||||
'external_elm_panes.edc',
|
||||
'external_emotion_elm.edc',
|
||||
'focus.edc',
|
||||
'lua_script.edc',
|
||||
'messages_echo.edc',
|
||||
'multiseat.edc',
|
||||
'multiseat_custom_names.edc',
|
||||
'multiseat_filter.edc',
|
||||
'perspective.edc',
|
||||
'signals-messages.edc',
|
||||
'signalsBubble.edc',
|
||||
'sigtest.edc',
|
||||
'svg.edc',
|
||||
'swallow.edc',
|
||||
'table.edc',
|
||||
'text.edc',
|
||||
'textblock-hyphen.edc',
|
||||
'toggle_using_filter.edc'
|
||||
]
|
||||
|
||||
if (get_option('physics'))
|
||||
edc_files += [
|
||||
'physics_3d.edc',
|
||||
'physics_actions.edc',
|
||||
'physics_backcull.edc',
|
||||
'physics_basic.edc',
|
||||
'physics_complex.edc',
|
||||
'physics_soft_bodies.edc'
|
||||
]
|
||||
endif
|
||||
|
||||
themes = []
|
||||
|
||||
foreach edc_file : edc_files
|
||||
themes += custom_target('edje_cc_' + edc_file,
|
||||
input : edc_file,
|
||||
output : '@BASENAME@.edj',
|
||||
command : ['/usr/bin/env', 'EFL_RUN_IN_TREE=1', edje_cc.full_path(), '-beta',
|
||||
'-id', meson.current_source_dir(),
|
||||
'-fd', meson.current_source_dir(),
|
||||
'-sd', meson.current_source_dir(),
|
||||
'-vd', meson.current_source_dir(),
|
||||
'-dd', meson.current_source_dir(),
|
||||
'-md', meson.current_source_dir(),
|
||||
'-td', meson.current_source_dir(),
|
||||
'@INPUT@', '@OUTPUT@'],
|
||||
depends : edje_cc, )
|
||||
endforeach
|
||||
|
||||
codegen = custom_target('edje_cc_codegen_edc',
|
||||
input : 'codegen.edc',
|
||||
output : '@BASENAME@.edj',
|
||||
command : ['/usr/bin/env', 'EFL_RUN_IN_TREE=1', edje_cc.full_path(), '-beta',
|
||||
'-id', meson.current_source_dir(),
|
||||
'-fd', meson.current_source_dir(),
|
||||
'-sd', meson.current_source_dir(),
|
||||
'-vd', meson.current_source_dir(),
|
||||
'-dd', meson.current_source_dir(),
|
||||
'-md', meson.current_source_dir(),
|
||||
'-td', meson.current_source_dir(),
|
||||
'@INPUT@', '@OUTPUT@'],
|
||||
depends : edje_cc, )
|
||||
|
||||
themes += custom_target('edje_codegen_codegen.edj',
|
||||
input : codegen,
|
||||
output : ['@BASENAME@_example_generated.c', '@BASENAME@_example_generated.h'],
|
||||
command : ['/usr/bin/env', 'EFL_RUN_IN_TREE=1', edje_codegen.full_path(),
|
||||
'--prefix=codegen_example', '@INPUT@',
|
||||
'example_group', '@OUTPUT0@', '@OUTPUT1@'],
|
||||
depends : [edje_codegen, themes])
|
||||
|
||||
edje_examples = [
|
||||
'animations2',
|
||||
'edje-animations',
|
||||
'edje-basic',
|
||||
'edje-basic2',
|
||||
'edje-box',
|
||||
'edje-box2',
|
||||
'edje-codegen-example',
|
||||
'edje-color-class',
|
||||
'edje-drag',
|
||||
'edje-dynamic-multiseat',
|
||||
'edje-edit-part-box',
|
||||
'edje-entry',
|
||||
'edje-focus',
|
||||
'edje-multiseat',
|
||||
'edje-multiseat-custom-names',
|
||||
'edje-multiseat-filter',
|
||||
'edje-multisense',
|
||||
'edje-perspective',
|
||||
'edje-signals-messages',
|
||||
'edje-swallow',
|
||||
'edje-swallow2',
|
||||
'edje-table',
|
||||
'edje-text',
|
||||
'edje-textblock-hyphenation',
|
||||
'edje_example',
|
||||
'signals2',
|
||||
'sigtest',
|
||||
'svg-test'
|
||||
]
|
||||
|
||||
foreach edje_example : edje_examples
|
||||
executable(edje_example,
|
||||
[edje_example + '.c'] + themes,
|
||||
dependencies: [edje, ecore_evas],
|
||||
)
|
||||
endforeach
|
|
@ -0,0 +1,13 @@
|
|||
examples = [
|
||||
'eet-basic',
|
||||
'eet-file',
|
||||
'eet-data-simple',
|
||||
'eet-data-nested',
|
||||
'eet-data-file_descriptor_01',
|
||||
'eet-data-file_descriptor_02',
|
||||
'eet-data-cipher_decipher'
|
||||
]
|
||||
|
||||
foreach example : examples
|
||||
executable(example, example + '.c', dependencies: eet)
|
||||
endforeach
|
|
@ -0,0 +1,47 @@
|
|||
examples = [
|
||||
'eina_accessor_01',
|
||||
'eina_array_01',
|
||||
'eina_array_02',
|
||||
'eina_error_01',
|
||||
'eina_file_01',
|
||||
'eina_file_02',
|
||||
'eina_hash_01',
|
||||
'eina_hash_02',
|
||||
'eina_hash_03',
|
||||
'eina_hash_04',
|
||||
'eina_hash_05',
|
||||
'eina_hash_06',
|
||||
'eina_hash_07',
|
||||
'eina_hash_08',
|
||||
'eina_iterator_01',
|
||||
'eina_list_01',
|
||||
'eina_list_02',
|
||||
'eina_list_03',
|
||||
'eina_list_04',
|
||||
'eina_log_01',
|
||||
'eina_log_02',
|
||||
'eina_log_03',
|
||||
'eina_inlist_01',
|
||||
'eina_inlist_02',
|
||||
'eina_inlist_03',
|
||||
'eina_str_01',
|
||||
'eina_strbuf_01',
|
||||
'eina_stringshare_01',
|
||||
'eina_tmpstr_01',
|
||||
#that examples is using ecore evas ... WTF
|
||||
#'eina_tiler_01',
|
||||
'eina_simple_xml_parser_01',
|
||||
'eina_value_01',
|
||||
'eina_value_02',
|
||||
'eina_value_03',
|
||||
'eina_inarray_01',
|
||||
'eina_inarray_02',
|
||||
'eina_inarray_03',
|
||||
'eina_magic_01',
|
||||
'eina_xattr_01',
|
||||
'eina_xattr_02'
|
||||
]
|
||||
|
||||
foreach example : examples
|
||||
executable(example, example + '.c', dependencies: eina)
|
||||
endforeach
|
|
@ -0,0 +1,15 @@
|
|||
files = [
|
||||
'efl_io_manager_ls',
|
||||
'efl_io_manager_open',
|
||||
'efl_io_manager_open_multi',
|
||||
'eio_file_copy',
|
||||
'eio_file_ls',
|
||||
'eio_sentry'
|
||||
]
|
||||
|
||||
foreach file : files
|
||||
executable(file,
|
||||
file + '.c',
|
||||
dependencies: [ecore, eio],
|
||||
)
|
||||
endforeach
|
|
@ -0,0 +1,17 @@
|
|||
examples = [
|
||||
'connman-list-services',
|
||||
'ofono-dial',
|
||||
'banshee',
|
||||
'complex-types',
|
||||
'complex-types-server',
|
||||
'server',
|
||||
'client',
|
||||
'simple-signal-emit',
|
||||
'complex-types-client-eina-value',
|
||||
'connect-address',
|
||||
'dbusmodel',
|
||||
]
|
||||
|
||||
foreach example : examples
|
||||
executable(example, example + '.c', dependencies: [eldbus, ecore])
|
||||
endforeach
|
|
@ -0,0 +1,7 @@
|
|||
examples = [
|
||||
'emile_base64'
|
||||
]
|
||||
|
||||
foreach example : examples
|
||||
executable(example, example + '.c', dependencies: emile)
|
||||
endforeach
|
|
@ -0,0 +1,14 @@
|
|||
files = [
|
||||
'emotion_basic_example',
|
||||
'emotion_border_example',
|
||||
'emotion_generic_example',
|
||||
'emotion_generic_subtitle_example',
|
||||
'emotion_signals_example',
|
||||
]
|
||||
|
||||
foreach file : files
|
||||
executable(file,
|
||||
file + '.c',
|
||||
dependencies: [emotion, evas, ecore_evas, ecore],
|
||||
)
|
||||
endforeach
|
|
@ -0,0 +1,10 @@
|
|||
files = [
|
||||
'ethumb_dbus'
|
||||
]
|
||||
|
||||
foreach file : files
|
||||
executable(file,
|
||||
file + '.c',
|
||||
dependencies: [ethumb, ethumb_client, ecore, eina],
|
||||
)
|
||||
endforeach
|
|
@ -0,0 +1,57 @@
|
|||
examples = [
|
||||
'evas-3d-aabb',
|
||||
'evas-3d-blending',
|
||||
'evas-3d-colorpick',
|
||||
'evas-3d-cube2',
|
||||
'evas-3d-cube',
|
||||
'evas-3d-cube-rotate',
|
||||
'evas-3d-eet',
|
||||
'evas-3d-fog',
|
||||
'evas-3d-frustum',
|
||||
'evas-3d-hull',
|
||||
'evas-3d-md2',
|
||||
'evas-3d-mmap-set',
|
||||
'evas-3d-obj',
|
||||
'evas-3d-parallax-occlusion',
|
||||
'evas-3d-pick',
|
||||
'evas-3d-ply',
|
||||
'evas-3d-proxy',
|
||||
'evas-3d-shadows',
|
||||
'evas-3d-static-lod',
|
||||
#'evas-aspect-hints',
|
||||
'evas-box',
|
||||
'evas-buffer-simple',
|
||||
'evas-event-filter',
|
||||
'evas-events',
|
||||
'evas-gl',
|
||||
'evas-hints',
|
||||
'evas-images2',
|
||||
'evas-images3',
|
||||
'evas-images4',
|
||||
'evas-images5',
|
||||
'evas-images',
|
||||
'evas-init-shutdown',
|
||||
'evas-map-aa',
|
||||
'evas-map-aa-eo',
|
||||
'evas-map-utils',
|
||||
'evas-map-utils-eo',
|
||||
'evas-multiseat-events',
|
||||
'evas-multi-touch',
|
||||
'evas-object-manipulation',
|
||||
'evas-object-manipulation-eo',
|
||||
'evas-smart-interface',
|
||||
'evas-smart-object',
|
||||
'evas-stacking',
|
||||
'evas-table',
|
||||
'evas-textblock-obstacles',
|
||||
'evas-text',
|
||||
'evas-transparent',
|
||||
'evas-vg-batman',
|
||||
'evas-vg-simple',
|
||||
]
|
||||
|
||||
foreach example : examples
|
||||
executable(example, example + '.c',
|
||||
dependencies: [eina, ecore_evas, ecore_file, m],
|
||||
c_args : ['-DPACKAGE_EXAMPLES_DIR="'+meson.current_source_dir()+'"'])
|
||||
endforeach
|
|
@ -0,0 +1,8 @@
|
|||
generic_loaders = ['vlc']
|
||||
|
||||
foreach loader : generic_loaders
|
||||
if get_option('emotion-generic-loaders-disabler').contains(loader) == false
|
||||
subdir(loader)
|
||||
endif
|
||||
endforeach
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
vlc = dependency('libvlc')
|
||||
|
||||
executable('vlc',
|
||||
'emotion_generic_vlc.c',
|
||||
dependencies: [emotion_generic, eina, ecore, rt, vlc],
|
||||
install: true,
|
||||
install_dir: join_paths(dir_lib, 'emotion', 'generic_players', version_name)
|
||||
)
|
|
@ -0,0 +1,6 @@
|
|||
generic_src = files([
|
||||
'shmfile.c',
|
||||
'shmfile.h',
|
||||
'timeout.c',
|
||||
'timeout.h',
|
||||
])
|
|
@ -0,0 +1,14 @@
|
|||
|
||||
# gstreamer 0.1 support
|
||||
#generic_deps = [dependency('gstreamer')]
|
||||
#generic_src = files([
|
||||
# 'main_0_10.c'
|
||||
#])
|
||||
|
||||
|
||||
generic_src = files([
|
||||
'main.c'
|
||||
])
|
||||
|
||||
generic_deps = [dependency('gstreamer-1.0')]
|
||||
generic_support = ['264','3g2','3gp','3gp2','3gpp','3gpp2','3p2','asf','avi','bdm','bdmv','clpi','cpi','dv','fla','flv','m1v','m2t','m2v','m4v','mkv','mov','mp2','mp2ts','mp4','mpe','mpeg','mpg','mpl','mpls','mts','mxf','nut','nuv','ogg','ogm','ogv','qt','rm','rmj','rmm','rms','rmx','rmvb','rv','swf','ts','webm','weba','wmv']
|
|
@ -0,0 +1,42 @@
|
|||
generic_loaders = ['gst', 'pdf',
|
||||
'ps',
|
||||
'raw',
|
||||
'svg',
|
||||
'xcf']
|
||||
|
||||
generic_src = []
|
||||
generic_deps = []
|
||||
|
||||
subdir('common')
|
||||
|
||||
common = static_library('evas_loader_common',
|
||||
generic_src,
|
||||
include_directories : config_dir,
|
||||
dependencies: [generic_deps, rt],
|
||||
)
|
||||
|
||||
foreach loader : generic_loaders
|
||||
generic_src = []
|
||||
generic_deps = []
|
||||
generic_support = []
|
||||
|
||||
if get_option('evas-loaders-disabler').contains(loader) == false
|
||||
subdir(loader)
|
||||
|
||||
tmp = shared_module('image_loader.'+loader,
|
||||
generic_src,
|
||||
include_directories : config_dir + [include_directories('common')],
|
||||
link_with : common,
|
||||
dependencies: [eina, generic_deps],
|
||||
name_prefix : 'evas_',
|
||||
install_dir : join_paths(dir_lib, 'evas', 'utils'),
|
||||
install : true,
|
||||
)
|
||||
|
||||
set_variable(loader, tmp)
|
||||
mod = join_paths(dir_lib, 'evas', 'utils', 'evas_image_loader.'+loader+'.'+sys_mod_extension)
|
||||
evas_loader_map += [[mod, generic_support]]
|
||||
else
|
||||
message('Image loader '+loader+' disabled')
|
||||
endif
|
||||
endforeach
|
|
@ -0,0 +1,14 @@
|
|||
generic_src = files([
|
||||
'main.cpp'
|
||||
])
|
||||
|
||||
generic_deps = [dependency('poppler-cpp')]
|
||||
generic_support = ['ppt','pptx','odp','xls','xlsx','ods','doc','docx','odt','rtf']
|
||||
|
||||
install_data('evas_generic_pdf_loader.libreoffice',
|
||||
install_dir : join_paths(dir_lib, 'evas', 'utils')
|
||||
)
|
||||
|
||||
generic_pdf_loader_types = ['ppt','pptx','odp','xls','xlsx','ods','doc','docx','odt','rtf']
|
||||
|
||||
meson.add_install_script( join_paths('..','..','..','..','meson','evas_loader_conf.sh'), join_paths(dir_lib, 'evas', 'utils', 'evas_generic_pdf_loader.libreoffice'), generic_pdf_loader_types)
|
|
@ -0,0 +1,5 @@
|
|||
generic_src = files([
|
||||
'main.c'
|
||||
])
|
||||
|
||||
generic_deps = [dependency('libspectre')]
|
|
@ -0,0 +1,6 @@
|
|||
generic_src = files([
|
||||
'main.c'
|
||||
])
|
||||
|
||||
generic_deps = [dependency('libraw')]
|
||||
generic_support = ['arw','cr2','crw','dcr','dng','k25','kdc','erf','mrw','nef','nrf','nrw','orf','rw2','pef','raf','sr2','srf','x3f']
|
|
@ -0,0 +1,12 @@
|
|||
generic_src = files([
|
||||
'main.c'
|
||||
])
|
||||
|
||||
rsvg = dependency('librsvg-2.0')
|
||||
|
||||
if rsvg.version() >= '2.36.0'
|
||||
config_h.set('HAVE_SVG_2_36', '1')
|
||||
endif
|
||||
|
||||
generic_deps = [rsvg]
|
||||
generic_support = ['svgz', 'svg.gz']
|
|
@ -0,0 +1,8 @@
|
|||
generic_src = files([
|
||||
'common.h',
|
||||
'main.c',
|
||||
'pixelfuncs.c'
|
||||
])
|
||||
|
||||
generic_deps = [dependency('zlib')]
|
||||
generic_support = ['xcf.gz']
|
|
@ -0,0 +1,222 @@
|
|||
ecore_deps = [intl]
|
||||
ecore_pub_deps = [eina, eo, efl]
|
||||
|
||||
pub_legacy_eo_files = [
|
||||
'ecore_exe.eo',
|
||||
'ecore_event_message.eo',
|
||||
'ecore_event_message_handler.eo',
|
||||
'efl_loop_timer.eo'
|
||||
]
|
||||
|
||||
pub_eo_file_target = []
|
||||
foreach eo_file : pub_legacy_eo_files
|
||||
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h', eo_file + '.legacy.h',],
|
||||
install : true,
|
||||
install_dir : dir_package_include,
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
|
||||
'-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
|
||||
'-gchl', '@INPUT@'])
|
||||
|
||||
endforeach
|
||||
|
||||
pub_eo_files = [
|
||||
'efl_app.eo',
|
||||
'efl_loop.eo',
|
||||
'efl_loop_consumer.eo',
|
||||
'efl_loop_fd.eo',
|
||||
'efl_loop_handler.eo',
|
||||
'efl_loop_message.eo',
|
||||
'efl_loop_message_handler.eo',
|
||||
'efl_exe.eo',
|
||||
'efl_thread.eo',
|
||||
'efl_threadio.eo',
|
||||
'efl_appthread.eo',
|
||||
'efl_task.eo',
|
||||
'efl_io_closer_fd.eo',
|
||||
'efl_io_positioner_fd.eo',
|
||||
'efl_io_reader_fd.eo',
|
||||
'efl_io_sizer_fd.eo',
|
||||
'efl_io_writer_fd.eo',
|
||||
'efl_io_stdin.eo',
|
||||
'efl_io_stdout.eo',
|
||||
'efl_io_stderr.eo',
|
||||
'efl_io_file.eo',
|
||||
'efl_io_copier.eo',
|
||||
'efl_io_buffered_stream.eo',
|
||||
'efl_interpolator.eo',
|
||||
'efl_interpolator_linear.eo',
|
||||
'efl_interpolator_accelerate.eo',
|
||||
'efl_interpolator_decelerate.eo',
|
||||
'efl_interpolator_sinusoidal.eo',
|
||||
'efl_interpolator_divisor.eo',
|
||||
'efl_interpolator_bounce.eo',
|
||||
'efl_interpolator_spring.eo',
|
||||
'efl_interpolator_cubic_bezier.eo',
|
||||
'efl_loop_message_future_handler.eo',
|
||||
'efl_loop_message_future.eo',
|
||||
'efl_model_item.eo',
|
||||
'efl_model_container.eo',
|
||||
'efl_model_container_item.eo',
|
||||
'efl_model_composite_boolean.eo',
|
||||
'efl_model_composite_boolean_children.eo',
|
||||
'efl_model_composite_selection.eo',
|
||||
'efl_model_composite_selection_children.eo',
|
||||
'efl_model_composite.eo'
|
||||
]
|
||||
|
||||
foreach eo_file : pub_eo_files
|
||||
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h'],
|
||||
install : true,
|
||||
install_dir : dir_package_include,
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
|
||||
'-gch', '@INPUT@'])
|
||||
endforeach
|
||||
|
||||
# special handling, because this is already eo API and legacy API
|
||||
pub_eo_files += ['efl_loop_timer.eo']
|
||||
|
||||
pub_eo_types_files = []
|
||||
|
||||
eolian_include_directories += ['-I', meson.current_source_dir()]
|
||||
|
||||
ecore_header_src = [
|
||||
'Ecore.h',
|
||||
'Ecore_Common.h',
|
||||
'Ecore_Legacy.h',
|
||||
'Ecore_Eo.h',
|
||||
'Efl_Core.h',
|
||||
'efl_general.h',
|
||||
'Ecore_Getopt.h'
|
||||
]
|
||||
|
||||
ecore_src = [
|
||||
'efl_app.c',
|
||||
'ecore.c',
|
||||
'ecore_alloc.c',
|
||||
'ecore_anim.c',
|
||||
'ecore_app.c',
|
||||
'ecore_events.c',
|
||||
'ecore_getopt.c',
|
||||
'ecore_glib.c',
|
||||
'ecore_idle_enterer.c',
|
||||
'ecore_idle_exiter.c',
|
||||
'ecore_idler.c',
|
||||
'ecore_job.c',
|
||||
'ecore_main.c',
|
||||
'ecore_event_message.c',
|
||||
'ecore_event_message_handler.c',
|
||||
'efl_loop.c',
|
||||
'efl_loop_consumer.c',
|
||||
'efl_loop_fd.c',
|
||||
'efl_loop_handler.c',
|
||||
'efl_loop_message.c',
|
||||
'efl_loop_message_future.c',
|
||||
'efl_loop_message_handler.c',
|
||||
'efl_loop_message_future_handler.c',
|
||||
'efl_task.c',
|
||||
'efl_io_closer_fd.c',
|
||||
'efl_io_positioner_fd.c',
|
||||
'efl_io_reader_fd.c',
|
||||
'efl_io_sizer_fd.c',
|
||||
'efl_io_writer_fd.c',
|
||||
'efl_io_stdin.c',
|
||||
'efl_io_stdout.c',
|
||||
'efl_io_stderr.c',
|
||||
'efl_io_file.c',
|
||||
'efl_io_copier.c',
|
||||
'efl_io_buffered_stream.c',
|
||||
'efl_model_item.c',
|
||||
'efl_model_container.c',
|
||||
'efl_model_container_item.c',
|
||||
'efl_model_container_private.h',
|
||||
'efl_model_composite.c',
|
||||
'efl_model_composite_boolean.c',
|
||||
'efl_model_composite_selection.c',
|
||||
'efl_model_accessor_view.c',
|
||||
'efl_model_accessor_view_private.h',
|
||||
'efl_interpolator.c',
|
||||
'efl_interpolator_linear.c',
|
||||
'efl_interpolator_accelerate.c',
|
||||
'efl_interpolator_decelerate.c',
|
||||
'efl_interpolator_sinusoidal.c',
|
||||
'efl_interpolator_divisor.c',
|
||||
'efl_interpolator_bounce.c',
|
||||
'efl_interpolator_spring.c',
|
||||
'efl_interpolator_cubic_bezier.c',
|
||||
'ecore_main_timechanges.c',
|
||||
'ecore_pipe.c',
|
||||
'ecore_poller.c',
|
||||
'ecore_time.c',
|
||||
'ecore_timer.c',
|
||||
'ecore_thread.c',
|
||||
'ecore_throttle.c',
|
||||
'ecore_exe.c',
|
||||
'ecore_exe_private.h',
|
||||
'ecore_private.h',
|
||||
'ecore_internal.h',
|
||||
'ecore_main_common.h'
|
||||
]
|
||||
|
||||
if target_machine.system() == 'windows'
|
||||
#nothing for now ... needs testing
|
||||
else
|
||||
ecore_src += ['ecore_signal.c', 'ecore_exe_posix.c']
|
||||
endif
|
||||
|
||||
if get_option('glib') == true
|
||||
ecore_deps += dependency('glib-2.0')
|
||||
ecore_deps += dependency('gthread-2.0')
|
||||
config_h.set('GLIB_INTEGRATION_ALWAYS', '1')
|
||||
config_h.set('HAVE_GLIB', '1')
|
||||
endif
|
||||
|
||||
if get_option('g-mainloop') == true
|
||||
config_h.set('USE_G_MAIN_LOOP', '1')
|
||||
endif
|
||||
|
||||
if get_option('gstreamer') == true
|
||||
gstreamer = dependency('gstreamer-1.0')
|
||||
ecore_deps += gstreamer
|
||||
endif
|
||||
|
||||
if get_option('systemd') == true
|
||||
ecore_deps += systemd
|
||||
endif
|
||||
|
||||
ecore_lib = library('ecore',
|
||||
ecore_src, pub_eo_file_target,
|
||||
dependencies: ecore_pub_deps + [m, buildsystem, ecore_deps],
|
||||
include_directories : config_dir + [include_directories(join_paths('..','..'))],
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: ecore_pub_deps,
|
||||
)
|
||||
|
||||
eolian_ecore_dir = join_paths(eolian_include_dir, package_version_name)
|
||||
|
||||
install_data(pub_eo_files + pub_eo_types_files,
|
||||
install_dir: eolian_ecore_dir
|
||||
)
|
||||
|
||||
install_headers(ecore_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
||||
|
||||
#TODO:
|
||||
# HAVE_TIZEN_CONFIGUREATION_MANAGER
|
||||
# avahi
|
|
@ -0,0 +1,92 @@
|
|||
ecore_audio_deps = [ecore]
|
||||
ecore_audio_pub_deps = [eina, eo]
|
||||
|
||||
pub_eo_files = [
|
||||
'ecore_audio.eo',
|
||||
'ecore_audio_in.eo',
|
||||
'ecore_audio_out.eo',
|
||||
'ecore_audio_in_sndfile.eo',
|
||||
'ecore_audio_out_sndfile.eo',
|
||||
'ecore_audio_out_pulse.eo',
|
||||
'ecore_audio_in_tone.eo',
|
||||
'ecore_audio_out_wasapi.eo'
|
||||
]
|
||||
|
||||
foreach eo_file : pub_eo_files
|
||||
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h'],
|
||||
install : true,
|
||||
install_dir : dir_package_include,
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
|
||||
'-gch', '@INPUT@'])
|
||||
endforeach
|
||||
|
||||
pub_eo_types_files = []
|
||||
|
||||
ecore_audio_header_src = [
|
||||
'Ecore_Audio.h',
|
||||
'ecore_audio_obj.h',
|
||||
'ecore_audio_obj_in.h',
|
||||
'ecore_audio_obj_out.h',
|
||||
'ecore_audio_obj_in_tone.h',
|
||||
'ecore_audio_protected.h',
|
||||
'ecore_audio_obj_out_pulse.h',
|
||||
'ecore_audio_obj_in_sndfile.h',
|
||||
'ecore_audio_obj_out_sndfile.h',
|
||||
'ecore_audio_obj_out_wasapi.h'
|
||||
]
|
||||
|
||||
ecore_audio_src = [
|
||||
'ecore_audio.c',
|
||||
'ecore_audio_obj.c',
|
||||
'ecore_audio_obj_in.c',
|
||||
'ecore_audio_obj_out.c',
|
||||
'ecore_audio_obj_in_tone.c',
|
||||
'ecore_audio_private.h'
|
||||
]
|
||||
|
||||
ecore_audio_src += [
|
||||
'ecore_audio_obj_in_sndfile.c',
|
||||
'ecore_audio_obj_out_sndfile.c',
|
||||
'ecore_audio_sndfile_vio.c'
|
||||
]
|
||||
|
||||
ecore_audio_deps += dependency('sndfile')
|
||||
config_h.set('HAVE_SNDFILE', '1')
|
||||
|
||||
if get_option('pulseaudio')
|
||||
ecore_audio_deps += dependency('libpulse')
|
||||
|
||||
ecore_audio_src += [
|
||||
'ecore_audio_pulse_ml.c',
|
||||
'ecore_audio_obj_out_pulse.c'
|
||||
]
|
||||
|
||||
config_h.set('HAVE_PULSE', '1')
|
||||
endif
|
||||
|
||||
ecore_audio_lib = library('ecore_audio',
|
||||
ecore_audio_src, pub_eo_file_target,
|
||||
dependencies: ecore_audio_pub_deps + [m] + ecore_audio_deps,
|
||||
include_directories : config_dir,
|
||||
install: true,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore_audio = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_audio_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: ecore_audio_pub_deps,
|
||||
)
|
||||
|
||||
install_data(pub_eo_files + pub_eo_types_files,
|
||||
install_dir: eolian_ecore_dir
|
||||
)
|
||||
|
||||
install_headers(ecore_audio_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,26 @@
|
|||
ecore_avahi_deps = []
|
||||
ecore_avahi_pub_deps = [eina, ecore]
|
||||
|
||||
ecore_avahi_src = ['ecore_avahi.c']
|
||||
ecore_avahi_header_src = ['Ecore_Avahi.h']
|
||||
|
||||
ecore_avahi_deps += dependency('avahi-client')
|
||||
config_h.set('HAVE_AVAHI', '1')
|
||||
|
||||
ecore_avahi_lib = library('ecore_avahi',
|
||||
ecore_avahi_src,
|
||||
dependencies: [m] + ecore_avahi_deps + ecore_avahi_pub_deps,
|
||||
include_directories : config_dir + [include_directories(join_paths('..','..'))],
|
||||
install: true,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore_avahi = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_avahi_lib,
|
||||
dependencies: ecore_avahi_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ecore_avahi_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,37 @@
|
|||
ecore_buffer_deps = [dependency('wayland-client'), dependency('wayland-server'), ecore]
|
||||
ecore_buffer_pub_deps = [eina]
|
||||
|
||||
ecore_buffer_header_src = [
|
||||
'Ecore_Buffer.h',
|
||||
'Ecore_Buffer_Queue.h'
|
||||
]
|
||||
|
||||
ecore_buffer_src = [
|
||||
'bq_mgr_protocol.c',
|
||||
'buffer_queue.c',
|
||||
'shared_buffer.c',
|
||||
'ecore_buffer.c',
|
||||
'ecore_buffer_queue_main.c',
|
||||
'ecore_buffer_con.c',
|
||||
'ecore_buffer_provider.c',
|
||||
'ecore_buffer_consumer.c'
|
||||
]
|
||||
|
||||
ecore_buffer_lib = library('ecore_buffer',
|
||||
ecore_buffer_src, pub_eo_file_target,
|
||||
dependencies: ecore_buffer_pub_deps + ecore_buffer_deps,
|
||||
include_directories : config_dir,
|
||||
install: true,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore_buffer = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_buffer_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: ecore_buffer_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ecore_buffer_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,48 @@
|
|||
ecore_cocoa_deps = [eina, ecore_input, ecore, emile, eet]
|
||||
ecore_cocoa_pub_deps = [eina]
|
||||
pub_eo_file_target = []
|
||||
|
||||
ecore_cocoa_header_src = [
|
||||
'Ecore_Cocoa.h'
|
||||
]
|
||||
|
||||
ecore_cocoa_src = [
|
||||
'ecore_cocoa.m',
|
||||
'ecore_cocoa_keys.h',
|
||||
'ecore_cocoa_window.h',
|
||||
'ecore_cocoa_window.m',
|
||||
'ecore_cocoa_cnp.m',
|
||||
'ecore_cocoa_app.m',
|
||||
'ecore_cocoa_app.h',
|
||||
'ecore_cocoa_private.h'
|
||||
]
|
||||
|
||||
evas_include_directories = [
|
||||
include_directories(join_paths('..', 'evas')),
|
||||
include_directories(join_paths('..', 'evas','canvas')),
|
||||
include_directories(join_paths('..', 'evas','common')),
|
||||
include_directories(join_paths('..', 'evas','common3d')),
|
||||
include_directories(join_paths('..', 'evas','common3d', 'save_load')),
|
||||
include_directories(join_paths('..', 'evas','include')),
|
||||
include_directories(join_paths('..', 'evas','filters'))
|
||||
]
|
||||
|
||||
ecore_cocoa_lib = library('ecore_cocoa',
|
||||
ecore_cocoa_src, pub_eo_file_target,
|
||||
dependencies: ecore_cocoa_deps + ecore_cocoa_pub_deps,
|
||||
include_directories : config_dir + evas_include_directories,
|
||||
link_args : ['-lobjc', '-framework', 'CoreFoundation', '-framework', 'cocoa', '-Wl,-U,_evas_textblock_text_markup_to_utf8'],
|
||||
install: true,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore_cocoa = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_cocoa_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: ecore_cocoa_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ecore_cocoa_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,220 @@
|
|||
ecore_con_deps = []
|
||||
ecore_con_pub_deps = [eina, eo, efl, ecore]
|
||||
|
||||
if target_machine.system() == 'windows' or target_machine.system() == 'cygwin'
|
||||
ipv6 = cc.compiles('''
|
||||
#include <ws2tcpip.h>
|
||||
struct ipv6_mreq tmp;
|
||||
''')
|
||||
else
|
||||
ipv6 = cc.compiles('''
|
||||
#include <netinet/in.h>
|
||||
struct ipv6_mreq tmp;
|
||||
''')
|
||||
endif
|
||||
|
||||
if ipv6
|
||||
config_h.set('HAVE_IPV6', 1)
|
||||
endif
|
||||
|
||||
pub_legacy_eo_files = [
|
||||
'ecore_con_eet_base.eo',
|
||||
'ecore_con_eet_server_obj.eo',
|
||||
'ecore_con_eet_client_obj.eo'
|
||||
]
|
||||
|
||||
pub_eo_file_target = []
|
||||
foreach eo_file : pub_legacy_eo_files
|
||||
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h', eo_file + '.legacy.h',],
|
||||
install : true,
|
||||
install_dir : dir_package_include,
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
|
||||
'-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
|
||||
'-gchl', '@INPUT@'])
|
||||
|
||||
endforeach
|
||||
|
||||
pub_eo_files = [
|
||||
'efl_net_socket.eo',
|
||||
'efl_net_socket_simple.eo',
|
||||
'efl_net_socket_fd.eo',
|
||||
'efl_net_socket_tcp.eo',
|
||||
'efl_net_socket_udp.eo',
|
||||
'efl_net_dialer.eo',
|
||||
'efl_net_dialer_simple.eo',
|
||||
'efl_net_dialer_tcp.eo',
|
||||
'efl_net_dialer_udp.eo',
|
||||
'efl_net_dialer_http.eo',
|
||||
'efl_net_dialer_websocket.eo',
|
||||
'efl_net_server.eo',
|
||||
'efl_net_server_simple.eo',
|
||||
'efl_net_server_fd.eo',
|
||||
'efl_net_server_ip.eo',
|
||||
'efl_net_server_tcp.eo',
|
||||
'efl_net_server_udp.eo',
|
||||
'efl_net_server_udp_client.eo',
|
||||
'efl_net_socket_ssl.eo',
|
||||
'efl_net_ssl_context.eo',
|
||||
'efl_net_dialer_ssl.eo',
|
||||
'efl_net_server_ssl.eo',
|
||||
'efl_net_control_access_point.eo',
|
||||
'efl_net_control_technology.eo',
|
||||
'efl_net_control_manager.eo',
|
||||
'efl_net_session.eo',
|
||||
'efl_net_ip_address.eo',
|
||||
]
|
||||
|
||||
if target_machine.system() == 'windows'
|
||||
pub_eo_files += [
|
||||
'efl_net_socket_windows.eo',
|
||||
'efl_net_dialer_windows.eo',
|
||||
'efl_net_server_windows.eo'
|
||||
]
|
||||
else
|
||||
pub_eo_files += [
|
||||
'efl_net_socket_unix.eo',
|
||||
'efl_net_dialer_unix.eo',
|
||||
'efl_net_server_unix.eo'
|
||||
]
|
||||
endif
|
||||
|
||||
foreach eo_file : pub_eo_files
|
||||
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h', eo_file + '.legacy.h',],
|
||||
install : true,
|
||||
install_dir : dir_package_include,
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
|
||||
'-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
|
||||
'-gch', '@INPUT@'])
|
||||
endforeach
|
||||
|
||||
|
||||
pub_eo_types_files = [
|
||||
'efl_net_types.eot',
|
||||
'efl_net_http_types.eot',
|
||||
'efl_net_ssl_types.eot'
|
||||
]
|
||||
|
||||
foreach eo_file : pub_eo_types_files
|
||||
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h'],
|
||||
install : true,
|
||||
install_dir : dir_package_include,
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-gh', '@INPUT@'])
|
||||
endforeach
|
||||
|
||||
eolian_include_directories += ['-I', meson.current_source_dir()]
|
||||
|
||||
ecore_con_header_src = [
|
||||
'Ecore_Con.h',
|
||||
'Efl_Net.h',
|
||||
'Ecore_Con_Eet.h',
|
||||
'Ecore_Con_Eet_Legacy.h',
|
||||
'Ecore_Con_Eet_Eo.h'
|
||||
]
|
||||
|
||||
ecore_con_src = [
|
||||
'ecore_con_alloc.c',
|
||||
'ecore_con.c',
|
||||
'ecore_con_proxy_helper.c',
|
||||
'ecore_con_legacy.c',
|
||||
'ecore_con_eet.c',
|
||||
'ecore_con_socks.c',
|
||||
'ecore_con_url.c',
|
||||
'ecore_con_url_curl.c',
|
||||
'ecore_con_url_curl.h',
|
||||
'ecore_con_private.h',
|
||||
'efl_net_socket.c',
|
||||
'efl_net_socket_simple.c',
|
||||
'efl_net_socket_fd.c',
|
||||
'efl_net_socket_tcp.c',
|
||||
'efl_net_socket_udp.c',
|
||||
'efl_net_dialer.c',
|
||||
'efl_net_dialer_simple.c',
|
||||
'efl_net_dialer_tcp.c',
|
||||
'efl_net_dialer_udp.c',
|
||||
'efl_net_dialer_http.c',
|
||||
'efl_net_dialer_websocket.c',
|
||||
'efl_net_server.c',
|
||||
'efl_net_server_simple.c',
|
||||
'efl_net_server_fd.c',
|
||||
'efl_net_server_ip.c',
|
||||
'efl_net_server_tcp.c',
|
||||
'efl_net_server_udp.c',
|
||||
'efl_net_server_udp_client.c',
|
||||
'efl_net_socket_ssl.c',
|
||||
'efl_net_ssl_context.c',
|
||||
'efl_net_dialer_ssl.c',
|
||||
'efl_net_server_ssl.c',
|
||||
'ecore_con_local.c',
|
||||
'efl_net_ip_address.c'
|
||||
]
|
||||
|
||||
if target_machine.system() == 'windows'
|
||||
ecore_con_src += [
|
||||
'efl_net_socket_windows.c',
|
||||
'efl_net_dialer_windows.c',
|
||||
'efl_net_server_windows.c'
|
||||
]
|
||||
else
|
||||
ecore_con_src += [
|
||||
'efl_net_socket_unix.c',
|
||||
'efl_net_dialer_unix.c',
|
||||
'efl_net_server_unix.c'
|
||||
]
|
||||
endif
|
||||
|
||||
if get_option('network-backend') == 'none'
|
||||
ecore_con_src += [
|
||||
'efl_net_control_access_point-none.c',
|
||||
'efl_net_control_technology-none.c',
|
||||
'efl_net_control-none.c',
|
||||
'efl_net_session-none.c'
|
||||
]
|
||||
else
|
||||
ecore_con_src += [
|
||||
'efl_net-connman.h',
|
||||
'efl_net-connman.c',
|
||||
'efl_net_control_access_point-connman.c',
|
||||
'efl_net_control_technology-connman.c',
|
||||
'efl_net_control-connman.c',
|
||||
'efl_net_session-connman.c'
|
||||
]
|
||||
ecore_con_deps += eldbus
|
||||
endif
|
||||
|
||||
ecore_con_deps += crypto
|
||||
|
||||
ecore_con_lib = library('ecore_con',
|
||||
ecore_con_src, pub_eo_file_target,
|
||||
dependencies: [ecore, ecore_con_deps, http_parser, eldbus, eet, systemd, buildsystem, dl],
|
||||
include_directories : config_dir,
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore_con = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_con_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: ecore_con_pub_deps,
|
||||
)
|
||||
|
||||
install_data(pub_eo_files + pub_eo_types_files + pub_legacy_eo_files,
|
||||
install_dir: eolian_ecore_dir
|
||||
)
|
||||
|
||||
install_headers(ecore_con_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,39 @@
|
|||
ecore_drm_deps = [eeze, eldbus, ecore_input, ecore, eo, efl, eina, m]
|
||||
ecore_drm_pub_deps = [dependency('libinput', version: '>= 1.6.0'), dependency('libdrm', version: '>= 2.4'), dependency('wayland-cursor', version: '>= 1.8.0 '), dependency('xkbcommon', version: '>= 0.3.0'), dependency('gbm')]
|
||||
|
||||
ecore_drm_src = [
|
||||
'ecore_drm_sprites.c',
|
||||
'ecore_drm_fb.c',
|
||||
'ecore_drm_evdev.c',
|
||||
'ecore_drm_inputs.c',
|
||||
'ecore_drm_output.c',
|
||||
'ecore_drm_tty.c',
|
||||
'ecore_drm_device.c',
|
||||
'ecore_drm_launcher.c',
|
||||
'ecore_drm_dbus.c',
|
||||
'ecore_drm_logind.c',
|
||||
'ecore_drm.c',
|
||||
'ecore_drm_private.h'
|
||||
]
|
||||
ecore_drm_header_src = [
|
||||
'Ecore_Drm.h'
|
||||
]
|
||||
|
||||
|
||||
ecore_drm_lib = library('ecore_drm',
|
||||
ecore_drm_src,
|
||||
dependencies: [m] + ecore_drm_deps + ecore_drm_pub_deps,
|
||||
include_directories : config_dir + [include_directories(join_paths('..','..'))],
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
ecore_drm = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_drm_lib,
|
||||
dependencies: ecore_drm_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ecore_drm_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,34 @@
|
|||
ecore_drm2_deps = [eeze, elput, dl, libdrm]
|
||||
ecore_drm2_pub_deps = [ecore]
|
||||
|
||||
ecore_drm2_header_src = [
|
||||
'Ecore_Drm2.h'
|
||||
]
|
||||
|
||||
ecore_drm2_src = [
|
||||
'ecore_drm2_plane.c',
|
||||
'ecore_drm2_fb.c',
|
||||
'ecore_drm2_outputs.c',
|
||||
'ecore_drm2_device.c',
|
||||
'ecore_drm2.c',
|
||||
'ecore_drm2_private.h'
|
||||
]
|
||||
|
||||
ecore_drm2_lib = library('ecore_drm2',
|
||||
ecore_drm2_src, pub_eo_file_target,
|
||||
dependencies: ecore_drm2_pub_deps + ecore_drm2_deps,
|
||||
include_directories : config_dir,
|
||||
install: true,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore_drm2 = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_drm2_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: ecore_drm2_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ecore_drm2_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,47 @@
|
|||
ecore_evas_deps = [eina, ecore_input_evas, ecore_input, ecore, eet, evas, efl, eo, eina, emile]
|
||||
ecore_evas_pub_deps = [evas, ecore]
|
||||
pub_eo_file_target = []
|
||||
|
||||
ecore_evas_header_src = [
|
||||
'Ecore_Evas_Types.h',
|
||||
'Ecore_Evas.h',
|
||||
|
||||
]
|
||||
|
||||
ecore_evas_src = [
|
||||
'ecore_evas.c',
|
||||
'ecore_evas_buffer.c',
|
||||
'ecore_evas_buffer.h',
|
||||
'ecore_evas_deprecated.c',
|
||||
'ecore_evas_drm.h',
|
||||
'ecore_evas_ews.c',
|
||||
'ecore_evas_module.c',
|
||||
'ecore_evas_private.h',
|
||||
'ecore_evas_extn.h',
|
||||
'ecore_evas_extn.c',
|
||||
'ecore_evas_wayland.h',
|
||||
'ecore_evas_cocoa.h',
|
||||
'ecore_evas_win32.h',
|
||||
'ecore_evas_x11.h',
|
||||
'ecore_evas_util.c'
|
||||
]
|
||||
|
||||
|
||||
ecore_evas_lib = library('ecore_evas',
|
||||
ecore_evas_src, pub_eo_file_target,
|
||||
dependencies: [ecore_evas_deps, buildsystem],
|
||||
include_directories : config_dir,
|
||||
install: true,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore_evas = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_evas_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: [evas],
|
||||
)
|
||||
|
||||
install_headers(ecore_evas_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,34 @@
|
|||
ecore_fb_deps = [ecore, ecore_input]
|
||||
ecore_fb_pub_deps = [eina]
|
||||
|
||||
ecore_fb_header_src = [
|
||||
'Ecore_Fb.h'
|
||||
]
|
||||
|
||||
ecore_fb_src = [
|
||||
'ecore_fb.c',
|
||||
'ecore_fb_li.c',
|
||||
'ecore_fb_ts.c',
|
||||
'ecore_fb_vt.c',
|
||||
'ecore_fb_keytable.h',
|
||||
'ecore_fb_private.h'
|
||||
]
|
||||
|
||||
ecore_fb_lib = library('ecore_fb',
|
||||
ecore_fb_src, pub_eo_file_target,
|
||||
dependencies: ecore_fb_pub_deps + ecore_fb_deps,
|
||||
include_directories : config_dir,
|
||||
install: true,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore_fb = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_fb_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: ecore_fb_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ecore_fb_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,39 @@
|
|||
ecore_file_deps = [ecore_con, ecore]
|
||||
ecore_file_pub_deps = [eina]
|
||||
|
||||
ecore_file_src = [
|
||||
'ecore_file.c',
|
||||
'ecore_file_download.c',
|
||||
'ecore_file_monitor.c',
|
||||
'ecore_file_path.c',
|
||||
'ecore_file_private.h'
|
||||
]
|
||||
|
||||
if target_machine.system() == 'windows'
|
||||
ecore_file_src += [ 'ecore_file_monitor_win32.c']
|
||||
elif cc.has_header('sys/inotify.h')
|
||||
ecore_file_src += [ 'ecore_file_monitor_inotify.c']
|
||||
else
|
||||
ecore_file_src += [ 'ecore_file_monitor_poll.c']
|
||||
endif
|
||||
|
||||
ecore_file_header_src = ['Ecore_File.h']
|
||||
|
||||
|
||||
ecore_file_lib = library('ecore_file',
|
||||
ecore_file_src,
|
||||
dependencies: ecore_file_deps + ecore_file_pub_deps + ecore_file_deps,
|
||||
include_directories : config_dir + [include_directories(join_paths('..','..'))],
|
||||
install: true,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore_file = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_file_lib,
|
||||
dependencies: ecore_file_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ecore_file_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,34 @@
|
|||
ecore_imf_deps = [ecore]
|
||||
ecore_imf_pub_deps = [eina]
|
||||
|
||||
ecore_imf_header_src = [
|
||||
'Ecore_IMF.h'
|
||||
]
|
||||
|
||||
ecore_imf_src = [
|
||||
'ecore_imf.c',
|
||||
'ecore_imf_context.c',
|
||||
'ecore_imf_module.c',
|
||||
'ecore_imf_private.h',
|
||||
]
|
||||
|
||||
|
||||
ecore_imf_lib = library('ecore_imf',
|
||||
ecore_imf_src, pub_eo_file_target,
|
||||
dependencies: [buildsystem, ecore_imf_deps, ecore_imf_pub_deps],
|
||||
include_directories : config_dir,
|
||||
c_args : package_c_args,
|
||||
install: true,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore_imf = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_imf_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: ecore_imf_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ecore_imf_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,30 @@
|
|||
ecore_imf_evas_header_src = [
|
||||
'Ecore_IMF_Evas.h'
|
||||
]
|
||||
|
||||
ecore_imf_evas_src = [
|
||||
'ecore_imf_evas.c'
|
||||
]
|
||||
|
||||
ecore_imf_evas_deps = [ecore_imf, evas]
|
||||
ecore_imf_evas_pub_deps = [eina, eo, efl]
|
||||
|
||||
ecore_imf_evas_lib = library('ecore_imf_evas',
|
||||
ecore_imf_evas_src,
|
||||
dependencies: ecore_imf_evas_pub_deps + [m] + ecore_imf_evas_deps,
|
||||
include_directories : config_dir + [include_directories('.')],
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore_imf_evas = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_imf_evas_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: ecore_imf_evas_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ecore_imf_evas_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,38 @@
|
|||
ecore_input_deps = [ecore]
|
||||
ecore_input_pub_deps = [eina, eo]
|
||||
|
||||
ecore_input_header_src = [
|
||||
'Ecore_Input.h'
|
||||
]
|
||||
|
||||
ecore_input_src = [
|
||||
'ecore_input.c',
|
||||
'ecore_input_compose.c',
|
||||
'ecore_input_joystick.c',
|
||||
'ecore_input_compose.h',
|
||||
'ecore_input_private.h'
|
||||
]
|
||||
|
||||
if get_option('eeze')
|
||||
ecore_input_deps += eeze
|
||||
endif
|
||||
|
||||
|
||||
ecore_input_lib = library('ecore_input',
|
||||
ecore_input_src, pub_eo_file_target,
|
||||
dependencies: ecore_input_pub_deps + ecore_input_deps,
|
||||
include_directories : config_dir,
|
||||
install: true,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore_input = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_input_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: ecore_input_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ecore_input_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,32 @@
|
|||
ecore_input_evas_deps = [ecore, ecore_input, evas]
|
||||
ecore_input_evas_pub_deps = [eina, evas]
|
||||
pub_eo_file_target = []
|
||||
|
||||
ecore_input_evas_header_src = [
|
||||
'Ecore_Input_Evas.h'
|
||||
]
|
||||
|
||||
ecore_input_evas_src = [
|
||||
'ecore_input_evas.c',
|
||||
'ecore_input_evas_private.h',
|
||||
]
|
||||
|
||||
|
||||
ecore_input_evas_lib = library('ecore_input_evas',
|
||||
ecore_input_evas_src, pub_eo_file_target,
|
||||
dependencies: ecore_input_evas_pub_deps + ecore_input_evas_deps,
|
||||
include_directories : config_dir,
|
||||
install: true,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore_input_evas = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_input_evas_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: ecore_input_evas_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ecore_input_evas_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,30 @@
|
|||
ecore_ipc_deps = [ecore, ecore_con]
|
||||
ecore_ipc_pub_deps = [eina]
|
||||
|
||||
ecore_ipc_header_src = [
|
||||
'Ecore_Ipc.h'
|
||||
]
|
||||
|
||||
ecore_ipc_src = [
|
||||
'ecore_ipc.c',
|
||||
'ecore_ipc_private.h',
|
||||
]
|
||||
|
||||
ecore_ipc_lib = library('ecore_ipc',
|
||||
ecore_ipc_src, pub_eo_file_target,
|
||||
dependencies: ecore_ipc_deps + ecore_ipc_pub_deps,
|
||||
include_directories : config_dir,
|
||||
install: true,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore_ipc = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_ipc_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: ecore_ipc_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ecore_ipc_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,31 @@
|
|||
ecore_sdl_deps = [eina, ecore, ecore_input]
|
||||
ecore_sdl_pub_deps = []
|
||||
|
||||
ecore_sdl_src = [
|
||||
'ecore_sdl.c'
|
||||
]
|
||||
|
||||
ecore_sdl_header_src = [
|
||||
'Ecore_Sdl.h',
|
||||
'Ecore_Sdl_Keys.h'
|
||||
]
|
||||
|
||||
ecore_sdl_deps += dependency('sdl')
|
||||
|
||||
ecore_sdl_lib = library('ecore_sdl',
|
||||
ecore_sdl_src,
|
||||
dependencies: [m] + ecore_sdl_deps + ecore_sdl_pub_deps,
|
||||
include_directories : config_dir + [include_directories(join_paths('..','..'))],
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
ecore_sdl = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_sdl_lib,
|
||||
dependencies: ecore_sdl_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ecore_sdl_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,42 @@
|
|||
ecore_wayland_deps = [ecore_input, ecore, eo, efl, eina]
|
||||
ecore_wayland_pub_deps = [dependency('wayland-client', version: '>= 1.8.0'), dependency('wayland-cursor', version: '>= 1.8.0 '), dependency('xkbcommon', version: '>= 0.5.0'), dependency('uuid')]
|
||||
|
||||
ecore_wayland_src = [
|
||||
'ecore_wl.c',
|
||||
'ecore_wl_dnd.c',
|
||||
'ecore_wl_input.c',
|
||||
'ecore_wl_output.c',
|
||||
'ecore_wl_window.c',
|
||||
'ecore_wl_subsurf.c',
|
||||
'ecore_wl_private.h',
|
||||
'subsurface-protocol.c',
|
||||
'subsurface-client-protocol.h',
|
||||
'ivi-application-protocol.c',
|
||||
'ivi-application-client-protocol.h',
|
||||
'xdg-shell-client-protocol.h',
|
||||
'xdg-shell-protocol.c',
|
||||
'session-recovery-client-protocol.h',
|
||||
'session-recovery-protocol.c'
|
||||
]
|
||||
ecore_wayland_header_src = [
|
||||
'Ecore_Wayland.h'
|
||||
]
|
||||
|
||||
|
||||
ecore_wayland_lib = library('ecore_wayland',
|
||||
ecore_wayland_src,
|
||||
dependencies: [m] + ecore_wayland_deps + ecore_wayland_pub_deps,
|
||||
include_directories : config_dir + [include_directories(join_paths('..','..'))],
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
)
|
||||
|
||||
ecore_wayland = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_wayland_lib,
|
||||
dependencies: ecore_wayland_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ecore_wayland_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,38 @@
|
|||
ecore_wl2_deps = [dependency('wayland-client'), dependency('wayland-server'), dependency('xkbcommon'), wayland_protocol, dependency('wayland-client')]
|
||||
ecore_wl2_pub_deps = [eina, ecore, wayland_protocol]
|
||||
|
||||
ecore_wl2_header_src = [
|
||||
'Ecore_Wl2.h'
|
||||
]
|
||||
|
||||
ecore_wl2_src = [
|
||||
'ecore_wl2_subsurf.c',
|
||||
'ecore_wl2_dnd.c',
|
||||
'ecore_wl2_window.c',
|
||||
'ecore_wl2_input.c',
|
||||
'ecore_wl2_output.c',
|
||||
'ecore_wl2_display.c',
|
||||
'ecore_wl2.c',
|
||||
'ecore_wl2_private.h',
|
||||
'ecore_wl2_buffer.c',
|
||||
'ecore_wl2_surface.c'
|
||||
]
|
||||
|
||||
ecore_wl2_lib = library('ecore_wl2',
|
||||
ecore_wl2_src, pub_eo_file_target,
|
||||
dependencies: ecore_wl2_pub_deps + [dl, m, ecore, ecore_input, ecore_wl2_deps, libdrm],
|
||||
include_directories : config_dir,
|
||||
install: true,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore_wl2 = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_wl2_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: ecore_wl2_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ecore_wl2_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,142 @@
|
|||
ecore_x_deps = [ecore, dl, m, ecore_input]
|
||||
ecore_x_pub_deps = [eina, efl]
|
||||
|
||||
ecore_x_header_src = [
|
||||
'Ecore_X.h',
|
||||
'Ecore_X_Atoms.h',
|
||||
'Ecore_X_Cursor.h'
|
||||
]
|
||||
|
||||
ecore_x_src = [
|
||||
'ecore_x_atoms_decl.h',
|
||||
'ecore_x.c',
|
||||
'ecore_x_dnd.c',
|
||||
'ecore_x_sync.c',
|
||||
'ecore_x_randr.c',
|
||||
'ecore_x_fixes.c',
|
||||
'ecore_x_damage.c',
|
||||
'ecore_x_composite.c',
|
||||
'ecore_x_error.c',
|
||||
'ecore_x_events.c',
|
||||
'ecore_x_icccm.c',
|
||||
'ecore_x_keygrab.c',
|
||||
'ecore_x_netwm.c',
|
||||
'ecore_x_mwm.c',
|
||||
'ecore_x_e.c',
|
||||
'ecore_x_selection.c',
|
||||
'ecore_x_window.c',
|
||||
'ecore_x_window_prop.c',
|
||||
'ecore_x_window_shape.c',
|
||||
'ecore_x_pixmap.c',
|
||||
'ecore_x_present.c',
|
||||
'ecore_x_gc.c',
|
||||
'ecore_x_xinerama.c',
|
||||
'ecore_x_screensaver.c',
|
||||
'ecore_x_dpms.c',
|
||||
'ecore_x_drawable.c',
|
||||
'ecore_x_cursor.c',
|
||||
'ecore_x_test.c',
|
||||
'ecore_x_atoms.c',
|
||||
'ecore_x_region.c',
|
||||
'ecore_x_image.c',
|
||||
'ecore_x_xi2.c',
|
||||
'ecore_x_vsync.c',
|
||||
'ecore_x_gesture.c',
|
||||
'ecore_x_private.h'
|
||||
]
|
||||
|
||||
ecore_x_checks = [
|
||||
['Xcomposite', 'Xcomposite.h', 'Xcomposite', 'XCompositeQueryExtension'],
|
||||
['Xdamage', 'Xdamage.h', 'Xdamage', 'XDamageSubtract'],
|
||||
['Xdpms', 'dpms.h', 'Xext', 'DPMSQueryExtension'],
|
||||
['Xfixes', 'Xfixes.h', 'Xfixes', 'XFixesExpandRegion'],
|
||||
['Xinerama', 'Xinerama.h', 'Xinerama', 'XineramaQueryScreens'],
|
||||
['Xrandr', 'Xrandr.h', 'Xrandr', 'XRRGetScreenResourcesCurrent'],
|
||||
['Xrender', 'Xrender.h', 'Xrender', 'XRenderFindVisualFormat'],
|
||||
['Xtest', 'XTest.h', 'Xtst', 'XTestFakeKeyEvent'],
|
||||
['Xss', 'scrnsaver.h', 'Xss', 'XScreenSaverSelectInput'],
|
||||
]
|
||||
|
||||
if get_option('xpresent')
|
||||
ecore_x_checks += [['Xpresent', 'Xpresent.h', 'Xpresent', 'XPresentQueryExtension']]
|
||||
endif
|
||||
|
||||
if get_option('xgesture')
|
||||
ecore_x_checks += [['Xgesture', 'gesture.h', 'Xgesture', 'XGestureQueryExtension']]
|
||||
endif
|
||||
|
||||
if get_option('xinput2')
|
||||
ecore_x_checks += [['Xi2', 'XInput2.h', 'Xi', 'XIQueryDevice']]
|
||||
endif
|
||||
|
||||
if get_option('xinput22')
|
||||
ecore_x_checks += [['Xi2_2', 'XInput2.h', 'Xi','XIGrabTouchBegin']]
|
||||
endif
|
||||
|
||||
x11 = dependency('x11', required: false)
|
||||
if x11.found() == false
|
||||
x11 = cc.find_library('x11', required: true)
|
||||
endif
|
||||
|
||||
xcb = dependency('xcb', required: false)
|
||||
if xcb.found() == false
|
||||
xcb = cc.find_library('xcb', required: true)
|
||||
endif
|
||||
|
||||
x11_xcb = dependency('x11-xcb', required: false)
|
||||
if x11_xcb.found() == false
|
||||
x11_xcb = cc.find_library('x11-xcb', required: true)
|
||||
endif
|
||||
|
||||
foreach ecore_x_check : ecore_x_checks
|
||||
x_lib = cc.find_library(ecore_x_check[2],
|
||||
required: false
|
||||
)
|
||||
|
||||
if cc.compiles('''
|
||||
#include <X11/Xlib.h>
|
||||
#include <X11/extensions/'''+ecore_x_check[1]+'''>
|
||||
int main () {
|
||||
#ifndef '''+ecore_x_check[3]+'''
|
||||
'''+ecore_x_check[3]+''';
|
||||
#endif
|
||||
}
|
||||
''',
|
||||
dependencies : [x_lib, x11]
|
||||
) == true
|
||||
config_h.set('ECORE_'+ecore_x_check[0].to_upper(), '1')
|
||||
else
|
||||
error('extension '+ecore_x_check[0]+' not found for X11')
|
||||
endif
|
||||
ecore_x_deps += x_lib
|
||||
endforeach
|
||||
|
||||
ecore_x_deps += x11
|
||||
ecore_x_deps += xcb
|
||||
ecore_x_deps += x11_xcb
|
||||
|
||||
|
||||
# there are a few special cases
|
||||
cc.has_header_symbol('X11/XKBlib.h', 'XkbSetDetectableAutoRepeat',
|
||||
dependencies : [x11, xcb]
|
||||
)
|
||||
config_h.set('ECORE_XKB', '1')
|
||||
|
||||
ecore_x_lib = library('ecore_x',
|
||||
ecore_x_src, pub_eo_file_target,
|
||||
dependencies: ecore_x_pub_deps + ecore_x_deps,
|
||||
include_directories : config_dir,
|
||||
install: true,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ecore_x = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ecore_x_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: ecore_x_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ecore_x_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,34 @@
|
|||
|
||||
ector_src += files([
|
||||
'ector_renderer_cairo_gradient_linear.c',
|
||||
'ector_renderer_cairo_gradient_radial.c',
|
||||
'ector_renderer_cairo_shape.c',
|
||||
'ector_renderer_cairo.c',
|
||||
'ector_cairo_software_surface.c',
|
||||
'ector_cairo_surface.c'
|
||||
])
|
||||
|
||||
pub_eo_files = [
|
||||
'ector_cairo_surface.eo',
|
||||
'ector_cairo_software_surface.eo',
|
||||
'ector_renderer_cairo.eo',
|
||||
'ector_renderer_cairo_shape.eo',
|
||||
'ector_renderer_cairo_gradient_linear.eo',
|
||||
'ector_renderer_cairo_gradient_radial.eo'
|
||||
]
|
||||
|
||||
foreach eo_file : pub_eo_files
|
||||
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h'],
|
||||
install : false,
|
||||
install_dir : dir_package_include,
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
|
||||
'-gch', '@INPUT@'])
|
||||
endforeach
|
||||
|
||||
install_data(pub_eo_files,
|
||||
install_dir: join_paths(eolian_include_dir, package_version_name)
|
||||
)
|
|
@ -0,0 +1,37 @@
|
|||
|
||||
ector_src += files([
|
||||
'ector_renderer_gl_gradient_linear.c',
|
||||
'ector_renderer_gl_gradient_radial.c',
|
||||
'ector_renderer_gl_shape.c',
|
||||
'ector_renderer_gl.c',
|
||||
'ector_gl_buffer.c',
|
||||
'ector_gl_surface.c',
|
||||
'ector_gl_private.h',
|
||||
#'shader/ector_gl_shaders.x',
|
||||
'ector_gl_shader.c'
|
||||
])
|
||||
|
||||
pub_eo_files = [
|
||||
'ector_gl_surface.eo',
|
||||
'ector_gl_buffer.eo',
|
||||
'ector_renderer_gl.eo',
|
||||
'ector_renderer_gl_shape.eo',
|
||||
'ector_renderer_gl_gradient_radial.eo',
|
||||
'ector_renderer_gl_gradient_linear.eo'
|
||||
]
|
||||
|
||||
foreach eo_file : pub_eo_files
|
||||
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h'],
|
||||
install : false,
|
||||
install_dir : dir_package_include,
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
|
||||
'-gch', '@INPUT@'])
|
||||
endforeach
|
||||
|
||||
install_data(pub_eo_files,
|
||||
install_dir: join_paths(eolian_include_dir, package_version_name)
|
||||
)
|
|
@ -0,0 +1,88 @@
|
|||
ector_deps = [eina, emile, eet, eo, efl]
|
||||
ector_pub_deps = [eina, efl]
|
||||
|
||||
pub_eo_file_target = []
|
||||
|
||||
ector_header_src = [
|
||||
# nothing for now ector stays only intree
|
||||
]
|
||||
|
||||
ector_src = [
|
||||
'ector_main.c',
|
||||
'ector_gl_internal.h',
|
||||
'ector_buffer.c',
|
||||
'ector_renderer_shape.c',
|
||||
'ector_renderer.c',
|
||||
'ector_renderer_gradient.c',
|
||||
'ector_renderer_gradient_radial.c',
|
||||
'ector_renderer_gradient_linear.c'
|
||||
]
|
||||
|
||||
pub_eo_files = [
|
||||
'ector_surface.eo',
|
||||
'ector_buffer.eo',
|
||||
'ector_renderer.eo',
|
||||
'ector_renderer_shape.eo',
|
||||
'ector_renderer_gradient.eo',
|
||||
'ector_renderer_gradient_radial.eo',
|
||||
'ector_renderer_gradient_linear.eo'
|
||||
]
|
||||
|
||||
ector_pub_eo_files = pub_eo_files
|
||||
|
||||
foreach eo_file : pub_eo_files
|
||||
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h'],
|
||||
install : false,
|
||||
install_dir : dir_package_include,
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
|
||||
'-gch', '@INPUT@'])
|
||||
endforeach
|
||||
|
||||
eolian_include_directories += ['-I', meson.current_source_dir()]
|
||||
|
||||
subdir('cairo')
|
||||
subdir('gl')
|
||||
subdir('software')
|
||||
|
||||
pub_eo_types_files = [
|
||||
'ector_types.eot'
|
||||
]
|
||||
|
||||
install_data(ector_pub_eo_files + pub_eo_types_files,
|
||||
install_dir: join_paths(eolian_include_dir, package_version_name)
|
||||
)
|
||||
|
||||
foreach eo_file : pub_eo_types_files
|
||||
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h'],
|
||||
install : false,
|
||||
install_dir : dir_package_include,
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-gh', '@INPUT@'])
|
||||
endforeach
|
||||
|
||||
ector_lib = library('ector',
|
||||
ector_src, pub_eo_file_target,
|
||||
dependencies: ector_pub_deps + [triangulator, freetype, draw, m] + ector_deps,
|
||||
include_directories : config_dir,
|
||||
install: true,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
ector = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: ector_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: ector_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(ector_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
|
||||
ector_src += files([
|
||||
'ector_renderer_software_gradient_linear.c',
|
||||
'ector_renderer_software_gradient_radial.c',
|
||||
'ector_renderer_software_shape.c',
|
||||
'ector_software_gradient.c',
|
||||
'ector_software_rasterizer.c',
|
||||
'ector_software_surface.c',
|
||||
'ector_software_buffer.c',
|
||||
])
|
||||
|
||||
pub_eo_files = [
|
||||
'ector_software_surface.eo',
|
||||
'ector_software_buffer.eo',
|
||||
'ector_software_buffer_base.eo',
|
||||
'ector_renderer_software.eo',
|
||||
'ector_renderer_software_shape.eo',
|
||||
'ector_renderer_software_gradient_radial.eo',
|
||||
'ector_renderer_software_gradient_linear.eo',
|
||||
]
|
||||
|
||||
foreach eo_file : pub_eo_files
|
||||
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h'],
|
||||
install : false,
|
||||
install_dir : dir_package_include,
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
|
||||
'-gch', '@INPUT@'])
|
||||
endforeach
|
||||
|
||||
install_data(pub_eo_files,
|
||||
install_dir: join_paths(eolian_include_dir, package_version_name)
|
||||
)
|
|
@ -0,0 +1,160 @@
|
|||
edje_deps = [
|
||||
eina, eo, efl, m,
|
||||
luajit, eet, evas, ecore_evas,
|
||||
ecore_file, ecore_input,
|
||||
ecore_imf, ecore_imf_evas,
|
||||
embryo, efreet, eio, intl
|
||||
]
|
||||
|
||||
|
||||
edje_pub_deps = [m, evas, eo, efl, luajit]
|
||||
|
||||
if (get_option('physics'))
|
||||
edje_deps += ephysics
|
||||
edje_pub_deps += ephysics
|
||||
endif
|
||||
|
||||
config_h.set('EDJE_CALC_CACHE', '1')
|
||||
|
||||
if get_option('edje-sound-and-video')
|
||||
config_h.set('ENABLE_MULTISENSE', '1')
|
||||
edje_deps += ecore_audio
|
||||
endif
|
||||
|
||||
pub_legacy_eo_files = [
|
||||
'edje_edit.eo',
|
||||
'efl_layout_calc.eo',
|
||||
'efl_layout_signal.eo',
|
||||
'efl_layout_group.eo',
|
||||
'efl_canvas_layout.eo',
|
||||
'efl_canvas_layout_part.eo',
|
||||
'efl_canvas_layout_part_box.eo',
|
||||
'efl_canvas_layout_part_external.eo',
|
||||
'efl_canvas_layout_part_invalid.eo',
|
||||
'efl_canvas_layout_part_swallow.eo',
|
||||
'efl_canvas_layout_part_table.eo',
|
||||
'efl_canvas_layout_part_text.eo',
|
||||
]
|
||||
|
||||
pub_eo_files = pub_legacy_eo_files
|
||||
pub_eo_file_target = []
|
||||
|
||||
foreach eo_file : pub_legacy_eo_files
|
||||
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h', eo_file + '.legacy.h',],
|
||||
install : true,
|
||||
install_dir : dir_package_include,
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
|
||||
'-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
|
||||
'-gchl', '@INPUT@'])
|
||||
|
||||
endforeach
|
||||
|
||||
pub_eo_types_files = [
|
||||
'edje_types.eot'
|
||||
]
|
||||
|
||||
foreach eo_file : pub_eo_types_files
|
||||
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h'],
|
||||
install : true,
|
||||
install_dir : dir_package_include,
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-gh', '@INPUT@'])
|
||||
endforeach
|
||||
|
||||
priv_eo_files = [
|
||||
'edje_global.eo',
|
||||
]
|
||||
|
||||
priv_eo_file_target = []
|
||||
foreach eo_file : priv_eo_files
|
||||
priv_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h'],
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-gch', '@INPUT@'])
|
||||
endforeach
|
||||
|
||||
|
||||
eolian_include_directories += ['-I', meson.current_source_dir()]
|
||||
|
||||
edje_header_src = [
|
||||
'Edje.h',
|
||||
'Edje_Common.h',
|
||||
'Edje_Eo.h',
|
||||
'Edje_Legacy.h',
|
||||
'Edje_Edit.h'
|
||||
]
|
||||
|
||||
edje_src = [
|
||||
'edje_private.h',
|
||||
'edje_convert.h',
|
||||
'edje_box_layout.c',
|
||||
'edje_cache.c',
|
||||
'edje_calc.c',
|
||||
'edje_callbacks.c',
|
||||
'edje_data.c',
|
||||
'edje_edit.c',
|
||||
'edje_embryo.c',
|
||||
'edje_entry.c',
|
||||
'edje_external.c',
|
||||
'edje_load.c',
|
||||
'edje_lua.c',
|
||||
'edje_lua2.c',
|
||||
'edje_lua_script_only.c',
|
||||
'edje_main.c',
|
||||
'edje_match.c',
|
||||
'edje_message_queue.c',
|
||||
'edje_misc.c',
|
||||
'edje_module.c',
|
||||
'edje_multisense.c',
|
||||
'edje_program.c',
|
||||
'edje_smart.c',
|
||||
'edje_text.c',
|
||||
'edje_textblock.c',
|
||||
'edje_textblock_styles.c',
|
||||
'edje_util.c',
|
||||
'edje_legacy.c',
|
||||
'edje_var.c',
|
||||
'edje_signal.c',
|
||||
'edje_part.c',
|
||||
'edje_part_helper.h',
|
||||
'edje_part_external.c',
|
||||
'edje_part_swallow.c',
|
||||
'edje_part_table.c',
|
||||
'edje_part_box.c',
|
||||
'edje_part_text.c',
|
||||
'edje_part_invalid.c'
|
||||
|
||||
]
|
||||
|
||||
edje_lib = library('edje',
|
||||
edje_src, pub_eo_file_target, priv_eo_file_target,
|
||||
dependencies: [edje_deps],
|
||||
include_directories : config_dir + [include_directories('.')],
|
||||
install: true,
|
||||
c_args : [package_c_args],
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
edje = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: edje_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: edje_pub_deps,
|
||||
)
|
||||
|
||||
install_data(pub_eo_files + pub_eo_types_files,
|
||||
install_dir: join_paths(eolian_include_dir, package_version_name)
|
||||
)
|
||||
|
||||
install_headers(edje_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,38 @@
|
|||
eet_deps = [crypto, jpeg, rg_etc, m]
|
||||
eet_pub_deps = [eina, emile, efl]
|
||||
|
||||
eet_header_src = [
|
||||
'Eet.h'
|
||||
]
|
||||
|
||||
eet_src = [
|
||||
'Eet_private.h',
|
||||
'eet_alloc.c',
|
||||
'eet_cipher.c',
|
||||
'eet_connection.c',
|
||||
'eet_data.c',
|
||||
'eet_dictionary.c',
|
||||
'eet_image.c',
|
||||
'eet_lib.c',
|
||||
'eet_node.c',
|
||||
'eet_utils.c',
|
||||
]
|
||||
|
||||
eet_lib = library('eet',
|
||||
eet_src, pub_eo_file_target,
|
||||
dependencies: eet_deps + eet_pub_deps,
|
||||
include_directories : config_dir,
|
||||
install: true,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
eet = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: eet_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: eet_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(eet_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,101 @@
|
|||
eeze_deps = []
|
||||
eeze_pub_deps = [eina, efl]
|
||||
pub_eo_file_target = []
|
||||
|
||||
eeze_header_src = [
|
||||
'Eeze.h',
|
||||
'Eeze_Net.h',
|
||||
'Eeze_Sensor.h',
|
||||
'Eeze_Disk.h',
|
||||
join_paths('..','..','bin','eeze','eeze_scanner','eeze_scanner.h')
|
||||
]
|
||||
|
||||
eeze_src = [
|
||||
'eeze_main.c',
|
||||
'eeze_net.c',
|
||||
'eeze_net_private.h',
|
||||
'eeze_sensor.c',
|
||||
'eeze_sensor_private.h',
|
||||
'eeze_udev_find.c',
|
||||
'eeze_udev_private.c',
|
||||
'eeze_udev_private.h',
|
||||
'eeze_udev_syspath.c',
|
||||
'eeze_udev_walk.c',
|
||||
'eeze_udev_watch.c',
|
||||
'eeze_disk.c',
|
||||
'eeze_disk_udev.c',
|
||||
'eeze_disk_mount.c',
|
||||
'eeze_disk_private.h'
|
||||
]
|
||||
|
||||
if get_option('v4l2')
|
||||
config_h.set('HAVE_V4L2', '1')
|
||||
if cc.has_header('linux/videodev2.h') == false
|
||||
error('v4l2 headers not found')
|
||||
endif
|
||||
endif
|
||||
|
||||
if (get_option('libmount'))
|
||||
libmount = dependency('mount')
|
||||
eeze_deps += [libmount]
|
||||
if libmount.version() == '2.19'
|
||||
eeze_src += 'eeze_disk_libmount.c'
|
||||
elif libmount.version() < '2.19'
|
||||
eeze_src += 'eeze_disk_libmount_old.c'
|
||||
elif libmount.version() > '2.19'
|
||||
eeze_src += 'eeze_disk_libmount_new.c'
|
||||
endif
|
||||
config_h.set('HAVE_EEZE_MOUNT', '1')
|
||||
else
|
||||
eeze_src += 'eeze_disk_dummy.c'
|
||||
endif
|
||||
|
||||
options_to_check = ['eject', 'mount', 'unmount']
|
||||
|
||||
eeze_deps += dependency('libudev',
|
||||
version: ['>=148']
|
||||
)
|
||||
|
||||
foreach option : options_to_check
|
||||
val = get_option(option+'-path')
|
||||
if val == 'detect'
|
||||
# i dont know why we call this unmount when the bin is called umount
|
||||
if option == 'unmount'
|
||||
_option = 'umount'
|
||||
else
|
||||
_option = option
|
||||
endif
|
||||
prog = find_program(_option, required: false)
|
||||
if prog.found()
|
||||
set_variable(option+'_bin', prog.path())
|
||||
else
|
||||
set_variable(option+'_bin', '')
|
||||
endif
|
||||
else
|
||||
set_variable(option+'_bin', val)
|
||||
endif
|
||||
endforeach
|
||||
|
||||
config_h.set_quoted('EEZE_EJECT_BIN', eject_bin)
|
||||
config_h.set_quoted('EEZE_MOUNT_BIN', mount_bin)
|
||||
config_h.set_quoted('EEZE_UNMOUNT_BIN', unmount_bin)
|
||||
|
||||
eeze_lib = library('eeze',
|
||||
eeze_src, pub_eo_file_target,
|
||||
dependencies: eeze_deps + eeze_pub_deps + [ecore, ecore_file, buildsystem, eeze_deps],
|
||||
include_directories : config_dir,
|
||||
install: true,
|
||||
c_args : package_c_args,
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
eeze = declare_dependency(
|
||||
include_directories: [include_directories('.')],
|
||||
link_with: eeze_lib,
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: eeze_pub_deps,
|
||||
)
|
||||
|
||||
install_headers(eeze_header_src,
|
||||
install_dir : dir_package_include,
|
||||
)
|
|
@ -0,0 +1,155 @@
|
|||
pub_legacy_eo_files = [
|
||||
'efl_gfx_fill.eo',
|
||||
'efl_gfx_entity.eo',
|
||||
'efl_gfx_color.eo',
|
||||
'efl_gfx_image.eo',
|
||||
'efl_gfx_image_animation_controller.eo',
|
||||
'efl_input_device.eo',
|
||||
'efl_ui_draggable.eo',
|
||||
'efl_ui_clickable.eo',
|
||||
'efl_ui_scrollable.eo',
|
||||
'efl_ui_scrollable_interactive.eo',
|
||||
'efl_ui_scrollbar.eo',
|
||||
'efl_ui_selectable.eo',
|
||||
'efl_ui_zoom.eo',
|
||||
]
|
||||
|
||||
pub_eo_file_target = []
|
||||
foreach eo_file : pub_legacy_eo_files
|
||||
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h', eo_file + '.legacy.h',],
|
||||
install : true,
|
||||
install_dir : join_paths(dir_package_include, 'interfaces'),
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
|
||||
'-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
|
||||
'-gchl', '@INPUT@'])
|
||||
|
||||
endforeach
|
||||
|
||||
pub_eo_files = [
|
||||
'efl_playable.eo',
|
||||
'efl_canvas_scene.eo',
|
||||
'efl_canvas_pointer.eo',
|
||||
'efl_config.eo',
|
||||
'efl_control.eo',
|
||||
'efl_duplicate.eo',
|
||||
'efl_file.eo',
|
||||
'efl_gfx_image_load_controller.eo',
|
||||
'efl_part.eo',
|
||||
'efl_player.eo',
|
||||
'efl_text.eo',
|
||||
'efl_text_font.eo',
|
||||
'efl_text_style.eo',
|
||||
'efl_text_format.eo',
|
||||
'efl_text_cursor.eo',
|
||||
'efl_text_annotate.eo',
|
||||
'efl_text_markup.eo',
|
||||
'efl_text_markup_util.eo',
|
||||
'efl_gfx_stack.eo',
|
||||
'efl_gfx_view.eo',
|
||||
'efl_gfx_buffer.eo',
|
||||
'efl_gfx_path.eo',
|
||||
'efl_gfx_shape.eo',
|
||||
'efl_gfx_gradient.eo',
|
||||
'efl_gfx_gradient_linear.eo',
|
||||
'efl_gfx_gradient_radial.eo',
|
||||
'efl_gfx_filter.eo',
|
||||
'efl_gfx_blur.eo',
|
||||
'efl_gfx_size_hint.eo',
|
||||
'efl_model.eo',
|
||||
'efl_animator.eo',
|
||||
'efl_orientation.eo',
|
||||
'efl_container.eo',
|
||||
'efl_content.eo',
|
||||
'efl_pack.eo',
|
||||
'efl_pack_layout.eo',
|
||||
'efl_pack_linear.eo',
|
||||
'efl_pack_table.eo',
|
||||
'efl_ui_base.eo',
|
||||
'efl_ui_direction.eo',
|
||||
'efl_ui_drag.eo',
|
||||
'efl_ui_range.eo',
|
||||
'efl_ui_view.eo',
|
||||
'efl_ui_model_connect.eo',
|
||||
'efl_ui_factory.eo',
|
||||
'efl_ui_multi_selectable.eo',
|
||||
'efl_screen.eo',
|
||||
'efl_io_closer.eo',
|
||||
'efl_io_positioner.eo',
|
||||
'efl_io_reader.eo',
|
||||
'efl_io_sizer.eo',
|
||||
'efl_io_writer.eo',
|
||||
'efl_io_buffer.eo',
|
||||
'efl_io_queue.eo',
|
||||
'efl_observer.eo',
|
||||
'efl_observable.eo',
|
||||
'efl_ui_autorepeat.eo',
|
||||
'efl_ui_format.eo',
|
||||
'efl_gfx_color_class.eo',
|
||||
'efl_gfx_text_class.eo',
|
||||
'efl_gfx_size_class.eo',
|
||||
]
|
||||
|
||||
eolian_include_directories += ['-I', join_paths(meson.source_root(), 'src', 'lib', 'evas', 'canvas')]
|
||||
|
||||
foreach eo_file : pub_eo_files
|
||||
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h'],
|
||||
install : true,
|
||||
install_dir : join_paths(dir_package_include, 'interfaces'),
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
|
||||
'-gch', '@INPUT@'])
|
||||
endforeach
|
||||
|
||||
pub_eo_types_files = [
|
||||
'efl_gfx_types.eot',
|
||||
'efl_ui_types.eot',
|
||||
'efl_input_types.eot',
|
||||
'efl_types.eot',
|
||||
'efl_text_types.eot',
|
||||
]
|
||||
|
||||
foreach eo_file : pub_eo_types_files
|
||||
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
|
||||
input : eo_file,
|
||||
output : [eo_file + '.h'],
|
||||
install : true,
|
||||
install_dir : join_paths(dir_package_include, 'interfaces'),
|
||||
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
|
||||
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
|
||||
'-gh', '@INPUT@'])
|
||||
endforeach
|
||||
|
||||
pub_eo_files = files(pub_eo_files + pub_legacy_eo_files + pub_eo_types_files)
|
||||
|
||||
efl_src += files([
|
||||
'efl_interfaces_main.c',
|
||||
'efl_model_common.c',
|
||||
'efl_gfx_path.c',
|
||||
'efl_gfx_shape.c',
|
||||
'efl_gfx_color.c',
|
||||
'efl_input_device.c',
|
||||
'efl_io_closer.c',
|
||||
'efl_io_positioner.c',
|
||||
'efl_io_reader.c',
|
||||
'efl_io_sizer.c',
|
||||
'efl_io_writer.c',
|
||||
'efl_io_buffer.c',
|
||||
'efl_io_queue.c',
|
||||
'efl_observer.c',
|
||||
'efl_file.c',
|
||||
'efl_ui_format.c',
|
||||
'efl_text_markup_util.c',
|
||||
])
|
||||
|
||||
#efl_header_src += files([
|
||||
# 'efl_common_internal.h'
|
||||
#])
|
||||
|
||||
eolian_include_directories += ['-I', meson.current_source_dir()]
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue