meson: add docs
Summary:
this here brings one new top level target which is doc. It is not build
by default, and does rerun everything on every call.
ninja doc will create previews and run the doxygen command. After this
is done, a tarbal of the html & man will be created, latex is not added
for now, due to the unability to compile the resulting .tex files.
Nothing of the documentation is installed for now, if this would be
enabled, then every single ninja install would regenerate the whole
documentation again, which is quite a lot, and quite a pain (and
sometimes crashes)
While porting this over, i encountered a problem with *convert* the bug
report is linked in the comment.
fix T7781
Depends on D8690
Reviewers: zmike, segfaultxavi, cedric
Reviewed By: segfaultxavi
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7781
Differential Revision: https://phab.enlightenment.org/D8561
2019-04-30 03:15:33 -07:00
|
|
|
doc_target = []
|
|
|
|
|
|
|
|
text_filter_properties= [
|
|
|
|
['Blend Example', 'Sans', '24', 'blend'],
|
|
|
|
['Blur', 'Sans:style=bold', '32', 'blur'],
|
|
|
|
['Bump', 'Sans:style=bold', '64', 'bump'],
|
|
|
|
['Curve', 'Sans:style=bold', '64', 'curve'],
|
|
|
|
['Grow - Contour', 'Sans:style=bold', '32', 'grow'],
|
|
|
|
['Mask', 'Sans:style=bold', '64', 'mask'],
|
|
|
|
['Transform - Mirror effect', 'Sans', '50', 'transform'],
|
|
|
|
]
|
|
|
|
widget_previews = [
|
|
|
|
['actionslider', 'preview-00.png', 'widget_preview_actionslider', '120', '30'],
|
|
|
|
['bg', 'preview-00.png', 'widget_preview_bg', '50', '50'],
|
|
|
|
['box', 'preview-00.png', 'widget_preview_box', '200', '160'],
|
|
|
|
['bubble', 'preview-00.png', 'widget_preview_bubble1', '160', '50'],
|
|
|
|
['bubble', 'preview-01.png', 'widget_preview_bubble2', '160', '50'],
|
|
|
|
['bubble', 'preview-02.png', 'widget_preview_bubble3', '160', '50'],
|
|
|
|
['button', 'preview-00.png', 'widget_preview_button1', '160', '50'],
|
|
|
|
['button', 'preview-01.png', 'widget_preview_button2', '160', '50'],
|
|
|
|
['button', 'preview-02.png', 'widget_preview_button3', '160', '50'],
|
|
|
|
['calendar', 'preview-00.png', 'widget_preview_calendar', '300', '300'],
|
|
|
|
['check', 'preview-00.png', 'widget_preview_check1', '160', '50'],
|
|
|
|
['check', 'preview-01.png', 'widget_preview_check2', '160', '50'],
|
|
|
|
['check', 'preview-02.png', 'widget_preview_check3', '160', '50'],
|
|
|
|
['clock', 'preview-00.png', 'widget_preview_clock', '200', '100'],
|
|
|
|
['colorselector', 'preview-00.png', 'widget_preview_colorselector', '320', '300'],
|
|
|
|
['conformant', 'preview-00.png', 'widget_preview_conformant', '200', '400'],
|
|
|
|
['combobox', 'preview-00.png', 'widget_preview_combobox', '300', '300'],
|
|
|
|
['ctxpopup', 'preview-00.png', 'widget_preview_ctxpopup', '200', '130'],
|
|
|
|
['datetime', 'preview-00.png', 'widget_preview_datetime1', '360', '60'],
|
|
|
|
['datetime', 'preview-01.png', 'widget_preview_datetime2', '200', '60'],
|
|
|
|
['datetime', 'preview-02.png', 'widget_preview_datetime3', '200', '60'],
|
|
|
|
['dayselector', 'preview-00.png', 'widget_preview_dayselector', '350', '50'],
|
|
|
|
['diskselector', 'preview-00.png', 'widget_preview_diskselector', '120', '50'],
|
|
|
|
['entry', 'preview-00.png', 'widget_preview_entry1', '160', '50'],
|
|
|
|
['entry', 'preview-01.png', 'widget_preview_entry2', '160', '50'],
|
|
|
|
['entry', 'preview-02.png', 'widget_preview_entry3', '160', '50'],
|
|
|
|
['entry', 'preview-03.png', 'widget_preview_entry4', '160', '50'],
|
|
|
|
['fileselector', 'preview-00.png', 'widget_preview_fileselector', '300', '300'],
|
|
|
|
['fileselector_button', 'preview-00.png', 'widget_preview_fileselector_button1', '200', '50'],
|
|
|
|
['fileselector_button', 'preview-01.png', 'widget_preview_fileselector_button2', '200', '50'],
|
|
|
|
['fileselector_button', 'preview-02.png', 'widget_preview_fileselector_button3', '160', '50'],
|
|
|
|
['fileselector_entry', 'preview-00.png', 'widget_preview_fileselector_entry', '70', '50'],
|
|
|
|
['flip', 'preview-00.png', 'widget_preview_flip', '100', '100'],
|
|
|
|
['flipselector', 'preview-00.png', 'widget_preview_flipselector', '100', '60'],
|
|
|
|
['frame', 'preview-00.png', 'widget_preview_frame', '100', '50'],
|
|
|
|
['gengrid', 'preview-00.png', 'widget_preview_gengrid', '200', '160'],
|
|
|
|
['genlist', 'preview-00.png', 'widget_preview_genlist1', '200', '200'],
|
|
|
|
['genlist', 'preview-01.png', 'widget_preview_genlist2', '200', '160'],
|
|
|
|
['genlist', 'preview-02.png', 'widget_preview_genlist3', '200', '160'],
|
|
|
|
['genlist', 'preview-03.png', 'widget_preview_genlist4', '200', '160'],
|
|
|
|
['genlist', 'preview-04.png', 'widget_preview_genlist5', '200', '160'],
|
|
|
|
['hover', 'preview-00.png', 'widget_preview_hover', '90', '170'],
|
|
|
|
['hoversel', 'preview-00.png', 'widget_preview_hoversel', '90', '170'],
|
|
|
|
['icon', 'preview-00.png', 'widget_preview_icon', '50', '50'],
|
|
|
|
['image', 'preview-00.png', 'widget_preview_image', '50', '50'],
|
|
|
|
['index', 'preview-00.png', 'widget_preview_index', '200', '160'],
|
|
|
|
['inwin', 'preview-00.png', 'widget_preview_inwin1', '200', '160'],
|
|
|
|
['inwin', 'preview-01.png', 'widget_preview_inwin2', '200', '160'],
|
|
|
|
['inwin', 'preview-02.png', 'widget_preview_inwin3', '200', '160'],
|
|
|
|
['label', 'preview-00.png', 'widget_preview_label', '70', '30'],
|
|
|
|
['layout', 'preview-00.png', 'widget_preview_layout', '200', '160'],
|
|
|
|
['list', 'preview-00.png', 'widget_preview_list', '200', '200'],
|
|
|
|
['map', 'preview-00.png', 'widget_preview_map', '256', '256'],
|
|
|
|
['mapbuf', 'preview-00.png', 'widget_preview_mapbuf', '200', '200'],
|
|
|
|
['menu', 'preview-00.png', 'widget_preview_menu', '100', '100'],
|
|
|
|
['notify', 'preview-00.png', 'widget_preview_notify', '60', '30'],
|
|
|
|
['panel', 'preview-00.png', 'widget_preview_panel', '150', '50'],
|
|
|
|
['panes', 'preview-00.png', 'widget_preview_panes', '200', '100'],
|
|
|
|
['photocam', 'preview-00.png', 'widget_preview_photocam', '243', '162'],
|
|
|
|
['popup', 'preview-00.png', 'widget_preview_popup', '480', '400'],
|
|
|
|
['prefs', 'preview-00.png', 'widget_preview_prefs', '200', '160'],
|
|
|
|
['prefs', 'preview-00.png', 'widget_preview_prefs', '280', '250'],
|
|
|
|
['progressbar', 'preview-00.png', 'widget_preview_progressbar', '150', '50'],
|
|
|
|
['radio', 'preview-00.png', 'widget_preview_radio', '60', '20'],
|
|
|
|
['scroller', 'preview-00.png', 'widget_preview_scroller', '100', '30'],
|
|
|
|
['segment_control', 'preview-00.png', 'widget_preview_segment_control', '240', '120'],
|
|
|
|
['separator', 'preview-00.png', 'widget_preview_separator', '10', '80'],
|
|
|
|
['slider', 'preview-00.png', 'widget_preview_slider', '200', '100'],
|
|
|
|
['slideshow', 'preview-00.png', 'widget_preview_slideshow', '50', '50'],
|
|
|
|
['spinner', 'preview-00.png', 'widget_preview_spinner', '160', '30'],
|
|
|
|
['table', 'preview-00.png', 'widget_preview_table', '100', '100'],
|
|
|
|
['thumb', 'preview-00.png', 'widget_preview_thumb', '100', '100'],
|
|
|
|
['toolbar', 'preview-00.png', 'widget_preview_toolbar', '300', '100'],
|
|
|
|
['web', 'preview-00.png', 'widget_preview_web', '300', '300'],
|
|
|
|
['win', 'preview-00.png', 'widget_preview_win', '200', '200'],
|
|
|
|
]
|
|
|
|
|
|
|
|
preview_text_filter = executable('preview_text_filter',
|
|
|
|
join_paths('previews', 'preview_text_filter.c'),
|
|
|
|
include_directories : config_dir,
|
|
|
|
dependencies: [ecore_evas],
|
|
|
|
build_by_default: false,
|
|
|
|
)
|
|
|
|
|
|
|
|
widget_preview_eps = custom_target('widget_preview_prefs_epc',
|
|
|
|
input: join_paths('widgets', 'widget_preview_prefs.epc'),
|
|
|
|
output: 'widget_preview_prefs.epb',
|
|
|
|
command: elm_prefs_cc_exe + ['@INPUT@', '@OUTPUT@'],
|
|
|
|
build_by_default: false,
|
|
|
|
depends: [elm_prefs_cc]
|
|
|
|
)
|
|
|
|
|
|
|
|
shot_sh = find_program('shot.sh')
|
|
|
|
tar = find_program('tar')
|
|
|
|
|
|
|
|
foreach text_filter_property : text_filter_properties
|
|
|
|
text = text_filter_property[0]
|
|
|
|
font = text_filter_property[1]
|
|
|
|
size = text_filter_property[2]
|
|
|
|
name = text_filter_property[3]
|
|
|
|
filter_code = run_command('cat', join_paths(meson.source_root(), 'src', 'examples', 'evas', 'filters', 'filter_'+name+'.lua'))
|
|
|
|
|
|
|
|
doc_target += custom_target('preview_text_filters_'+name,
|
2019-09-09 06:10:57 -07:00
|
|
|
command: [
|
|
|
|
env, 'EFL_RUN_IN_TREE=1',
|
|
|
|
'EFL_EVAS_FILTER_LUA_PREFIX=' + join_paths(meson.source_root(), 'src', 'lib', 'evas'),
|
|
|
|
preview_text_filter.full_path(), text, filter_code.stdout(), '@OUTPUT@', font, size
|
|
|
|
],
|
meson: add docs
Summary:
this here brings one new top level target which is doc. It is not build
by default, and does rerun everything on every call.
ninja doc will create previews and run the doxygen command. After this
is done, a tarbal of the html & man will be created, latex is not added
for now, due to the unability to compile the resulting .tex files.
Nothing of the documentation is installed for now, if this would be
enabled, then every single ninja install would regenerate the whole
documentation again, which is quite a lot, and quite a pain (and
sometimes crashes)
While porting this over, i encountered a problem with *convert* the bug
report is linked in the comment.
fix T7781
Depends on D8690
Reviewers: zmike, segfaultxavi, cedric
Reviewed By: segfaultxavi
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7781
Differential Revision: https://phab.enlightenment.org/D8561
2019-04-30 03:15:33 -07:00
|
|
|
depends: preview_text_filter,
|
|
|
|
output: 'filter_'+name+'.png',
|
|
|
|
build_by_default: false
|
|
|
|
)
|
|
|
|
endforeach
|
|
|
|
|
|
|
|
foreach widget_preview : widget_previews
|
|
|
|
binary = widget_preview[2]
|
|
|
|
|
|
|
|
if get_variable(binary, preview_text_filter) == preview_text_filter
|
|
|
|
tmp = executable(binary,
|
|
|
|
join_paths('widgets', binary+'.c'),
|
|
|
|
dependencies: elementary,
|
|
|
|
build_by_default: false,
|
|
|
|
c_args : [
|
2019-10-02 10:03:58 -07:00
|
|
|
'-DPACKAGE_DATA_DIR="'+join_paths(meson.source_root(), 'data', 'elementary')+'"',
|
meson: add docs
Summary:
this here brings one new top level target which is doc. It is not build
by default, and does rerun everything on every call.
ninja doc will create previews and run the doxygen command. After this
is done, a tarbal of the html & man will be created, latex is not added
for now, due to the unability to compile the resulting .tex files.
Nothing of the documentation is installed for now, if this would be
enabled, then every single ninja install would regenerate the whole
documentation again, which is quite a lot, and quite a pain (and
sometimes crashes)
While porting this over, i encountered a problem with *convert* the bug
report is linked in the comment.
fix T7781
Depends on D8690
Reviewers: zmike, segfaultxavi, cedric
Reviewed By: segfaultxavi
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7781
Differential Revision: https://phab.enlightenment.org/D8561
2019-04-30 03:15:33 -07:00
|
|
|
'-DTESTS_BUILD_DIR="'+meson.current_build_dir()+'"',
|
|
|
|
'-DTESTS_SRC_DIR="'+meson.current_source_dir()+'"',
|
|
|
|
'-DDOCW_DIR="'+meson.current_build_dir()+'"']
|
|
|
|
)
|
|
|
|
set_variable(binary, tmp)
|
|
|
|
endif
|
|
|
|
endforeach
|
|
|
|
|
2019-06-20 03:06:37 -07:00
|
|
|
#convert = find_program('convert')
|
|
|
|
|
meson: add docs
Summary:
this here brings one new top level target which is doc. It is not build
by default, and does rerun everything on every call.
ninja doc will create previews and run the doxygen command. After this
is done, a tarbal of the html & man will be created, latex is not added
for now, due to the unability to compile the resulting .tex files.
Nothing of the documentation is installed for now, if this would be
enabled, then every single ninja install would regenerate the whole
documentation again, which is quite a lot, and quite a pain (and
sometimes crashes)
While porting this over, i encountered a problem with *convert* the bug
report is linked in the comment.
fix T7781
Depends on D8690
Reviewers: zmike, segfaultxavi, cedric
Reviewed By: segfaultxavi
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7781
Differential Revision: https://phab.enlightenment.org/D8561
2019-04-30 03:15:33 -07:00
|
|
|
foreach widget_preview : widget_previews
|
|
|
|
directory = widget_preview[0]
|
|
|
|
ss = widget_preview[1]
|
|
|
|
binary = widget_preview[2]
|
|
|
|
x = widget_preview[3]
|
|
|
|
y = widget_preview[4]
|
|
|
|
|
|
|
|
widget_executable = get_variable(binary)
|
|
|
|
|
|
|
|
screen_shot_dir = join_paths(meson.build_root(), 'html', 'img', 'widget', directory)
|
|
|
|
|
|
|
|
create_preview = custom_target('widget_preview_'+('_'.join([directory, ss, x, y])),
|
|
|
|
command: [shot_sh, screen_shot_dir, ss, widget_executable.full_path(), x, y],
|
|
|
|
output: '-'.join([directory, ss, x, y]),
|
|
|
|
depends: [widget_executable, widget_preview_eps],
|
|
|
|
build_by_default: false,
|
|
|
|
)
|
|
|
|
convert_preview = []
|
|
|
|
#
|
|
|
|
# This does not work see https://github.com/the-paperless-project/paperless/issues/439 for more details
|
|
|
|
# for now this means that no images will be in the latex documentation
|
|
|
|
#
|
|
|
|
#convert_preview = custom_target('convert_preview_'+('_'.join([directory, ss, x, y])),
|
|
|
|
# command: [convert, join_paths(screen_shot_dir, ss), join_paths(screen_shot_dir, ss.split('.')[0]+'.eps')],
|
|
|
|
# output: '-'.join([directory, ss, x, y])+'.eps',
|
|
|
|
# depends: [create_preview],
|
|
|
|
# build_by_default: false,
|
|
|
|
#)
|
|
|
|
doc_target += [create_preview, convert_preview]
|
|
|
|
endforeach
|
|
|
|
|
|
|
|
doc_target += custom_target('doxygen',
|
|
|
|
command: [doxygen, join_paths(meson.current_build_dir(), 'Doxyfile')],
|
|
|
|
output: ['empty'],
|
|
|
|
build_by_default: false
|
|
|
|
)
|
|
|
|
|
|
|
|
compress_target = custom_target('package_doc_tar',
|
2019-10-02 01:18:16 -07:00
|
|
|
command: [tar, '-C', meson.build_root(), '--xz', '-cf', 'efl-'+meson.project_version()+'-doc.tar.xz', 'html', 'man'],
|
|
|
|
output: 'efl-'+meson.project_version()+'-doc.tar.xz',
|
meson: add docs
Summary:
this here brings one new top level target which is doc. It is not build
by default, and does rerun everything on every call.
ninja doc will create previews and run the doxygen command. After this
is done, a tarbal of the html & man will be created, latex is not added
for now, due to the unability to compile the resulting .tex files.
Nothing of the documentation is installed for now, if this would be
enabled, then every single ninja install would regenerate the whole
documentation again, which is quite a lot, and quite a pain (and
sometimes crashes)
While porting this over, i encountered a problem with *convert* the bug
report is linked in the comment.
fix T7781
Depends on D8690
Reviewers: zmike, segfaultxavi, cedric
Reviewed By: segfaultxavi
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7781
Differential Revision: https://phab.enlightenment.org/D8561
2019-04-30 03:15:33 -07:00
|
|
|
depends: doc_target,
|
|
|
|
build_by_default: false
|
|
|
|
)
|
|
|
|
|
|
|
|
run_target('doc',
|
|
|
|
command: ['echo', 'Documentation sucessfully build!'],
|
|
|
|
depends: compress_target,
|
|
|
|
)
|
|
|
|
|
|
|
|
doxyfile_conf = configuration_data()
|
|
|
|
doxyfile_conf.merge_from(config_h)
|
|
|
|
doxyfile_conf.set('srcdir', meson.current_source_dir())
|
|
|
|
doxyfile_conf.set('top_builddir', meson.build_root())
|
|
|
|
doxyfile_conf.set('top_srcdir', meson.source_root())
|
|
|
|
|
|
|
|
configure_file(
|
|
|
|
input: 'Doxyfile.in',
|
|
|
|
output: 'Doxyfile',
|
|
|
|
configuration: doxyfile_conf,
|
|
|
|
)
|