meson: add the elementary examples to the build

This commit is contained in:
Marcel Hollerbach 2019-02-17 19:11:53 +01:00
parent 186eead7c9
commit 2c259edd9f
6 changed files with 235 additions and 1 deletions

View File

@ -37,3 +37,4 @@ install_subdir('fdo',
join_paths('actions', '128-svg'),
]
)
elementary_img_data = join_paths(meson.current_source_dir())

View File

@ -292,7 +292,7 @@ subprojects = [
['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, true, 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']],
['elementary' ,[] , true, true, true, true, true, true, ['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'], []],

View File

@ -214,6 +214,13 @@ elementary_codegen = executable('elementary_codegen',
link_args: link_args
)
if meson.is_cross_build()
elementary_codegen_exe = [find_program('elementary_codegen', native: true)]
else
env = find_program('env', native: true)
elementary_codegen_exe = [env, 'EFL_RUN_IN_TREE=1', elementary_codegen.full_path()]
endif
elm_prefs_cc_src = [
'elm_prefs_cc.h',
'elm_prefs_cc.c',

View File

@ -0,0 +1,164 @@
examples = [
'actionslider_example_01',
'bg_example_01',
'bg_example_02',
'bg_example_03',
'box_example_02',
'bubble_example_01',
'button_example_00',
'button_example_01',
'calendar_example_01',
'calendar_example_02',
'calendar_example_03',
'calendar_example_04',
'calendar_example_05',
'calendar_example_06',
'check_example_01',
'clock_example',
'colorselector_example_01',
'conformant_example_01',
'conformant_example_02',
'combobox_example_01',
'ctxpopup_example_01',
'datetime_example',
'dayselector_example',
'diskselector_example_01',
'diskselector_example_02',
'entry_example',
'fileselector_button_example',
'fileselector_entry_example',
'fileselector_example',
'fileviewlist',
'filemvc',
'flip_example_01',
'flipselector_example',
'frame_example_01',
'general_funcs_example',
'gengrid_example',
'genlist_example_01',
'genlist_example_02',
'genlist_example_03',
'genlist_example_04',
'genlist_example_05',
'glview_example_01',
'hover_example_01',
'hoversel_example_01',
'icon_example_01',
'image_example_01',
'index_example_01',
'index_example_02',
'inwin_example',
'label_example_01',
'label_example_02',
'label_example_03',
'layout_example_01',
'layout_example_02',
'layout_example_03',
'layout_property_bind',
'list_example_01',
'list_example_02',
'list_example_03',
'location_example_01',
'map_example_01',
'map_example_02',
'map_example_03',
'mapbuf_example',
'menu_example_01',
'naviframe_example',
'notify_example_01',
'panes_example',
'panel_example_01',
'photocam_example_01',
'prefs_example_01',
'prefs_example_02',
'prefs_example_03',
'popup_example_01',
'popup_example_02',
'popup_example_03',
'progressbar_example',
'radio_example_01',
'radio_example_02',
'segment_control_example',
'separator_example_01',
'slider_example',
'slideshow_example',
'spinner_example',
'scroller_example_01',
'table_example_01',
'table_example_02',
'theme_example_01',
'theme_example_02',
'thumb_example_01',
'toolbar_example_01',
'toolbar_example_02',
'toolbar_example_03',
'transit_example_01',
'transit_example_02',
'transit_example_03',
'transit_example_04',
'web_example_01',
'web_example_02',
'win_example',
'track_example_01',
'evas3d_object_on_button_example',
'evas3d_scene_on_button_example',
'evas3d_map_example',
'efl_thread_1',
'efl_thread_2',
'efl_thread_3',
'efl_thread_4',
'efl_thread_5',
'efl_thread_6',
'efl_ui_list_example_1',
'efl_ui_list_view_example_1',
'efl_ui_list_view_example_2',
'efl_ui_list_view_example_3',
'efl_canvas_layout_text',
'efl_ui_theme_example_01',
'efl_ui_theme_example_02'
]
foreach example : examples
executable(example, example + '.c', dependencies: [elementary, ecore, eio])
endforeach
edc_files = [
'codegen_example.edc',
'efl_ui_theme_example.edc'
]
themes = []
foreach edc_file : edc_files
themes += custom_target('edje_cc_' + edc_file,
depends : edje_cc,
input : edc_file,
output : '@BASENAME@.edj',
command : edje_cc_exe + ['-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@'],
)
endforeach
codegen = custom_target('elementary_codegen_examples',
depends : themes,
input : themes[0],
output : ['codegen_example_generated.c', 'codegen_example_generated.h'],
command : elementary_codegen_exe + ['-p=codegen_example', '@INPUT@', 'elm/example/mylayout/default', '@OUTPUT0@', '@OUTPUT1@'],
)
executable('codegen_example',
['codegen_example.c'] + [codegen],
dependencies: [elementary],
include_directories : include_directories('..')
)
subdir('sphere_hunter')
subdir('performance')

View File

@ -0,0 +1,31 @@
examples = [
'performance.c',
'camera_light.c',
'graphical.c',
]
edc_files = [
'layout.edc'
]
themes = []
foreach edc_file : edc_files
themes += custom_target('edje_cc_' + edc_file,
depends : edje_cc,
input : edc_file,
output : '@BASENAME@.edj',
command : edje_cc_exe + ['-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@'],
)
endforeach
executable(example, [examples] + themes, dependencies: [elementary, ecore])

View File

@ -0,0 +1,31 @@
examples = [
'evas_3d_sphere_hunter'
]
edc_files = [
'sphere_hunter.edc'
]
themes = []
foreach edc_file : edc_files
themes += custom_target('edje_cc_' + edc_file,
depends : edje_cc,
input : edc_file,
output : '@BASENAME@.edj',
command : edje_cc_exe + ['-beta',
'-id', elementary_img_data,
'-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@'],
)
endforeach
foreach example : examples
executable(example, [example + '.c'] + themes, dependencies: [elementary, ecore])
endforeach