Amalgamate sources in gtk2_ardour into a number of "modules"

With this change the build times on my machine with no cache go from ~15
minutes down to 5 on linux. A cross build with mingw goes from ~22 down to 11
minutes.
This commit is contained in:
Tim Mayberry 2015-12-08 08:16:00 +10:00
parent 8123e3f4e7
commit f15a5ab5c4
27 changed files with 295 additions and 240 deletions

View File

@ -0,0 +1,19 @@
#include "automation_line.cc"
#include "midi_automation_line.cc"
#include "control_point.cc"
#include "note.cc"
#include "note_base.cc"
#include "patch_change.cc"
#include "region_gain_line.cc"
#include "sys_ex.cc"
#include "tempo_lines.cc"
#include "hit.cc"
#include "marker.cc"
#include "verbose_cursor.cc"

View File

@ -0,0 +1,10 @@
#include "gui_object.cc"
#include "keyboard.cc"
#include "main.cc"
#include "opts.cc"
#include "theme_manager.cc"
#include "ui_config.cc"
#include "window_manager.cc"

View File

@ -0,0 +1,21 @@
#include "add_route_dialog.cc"
#include "ambiguous_file_dialog.cc"
#include "ardour_dialog.cc"
#include "control_point_dialog.cc"
#include "engine_dialog.cc"
#include "insert_remove_time_dialog.cc"
#include "latency_gui.cc"
#include "missing_file_dialog.cc"
#include "missing_plugin_dialog.cc"
#include "new_plugin_preset_dialog.cc"
#include "normalize_dialog.cc"
#include "panner_editor.cc"
#include "playlist_selector.cc"
#include "region_editor.cc"
#include "route_group_dialog.cc"
#include "ruler_dialog.cc"
#include "save_as_dialog.cc"
#include "session_dialog.cc"
#include "session_import_dialog.cc"
#include "session_metadata_dialog.cc"
#include "tempo_dialog.cc"

View File

@ -0,0 +1,9 @@
#include "strip_silence_dialog.cc" // TODO fix so not required at top
#include "interthread_progress_window.cc"
#include "rhythm_ferret.cc"
#include "sfdb_freesound_mootcher.cc"
#include "sfdb_ui.cc"
#include "soundcloud_export_selector.cc"
#include "speaker_dialog.cc"
#include "time_fx_dialog.cc"

View File

@ -0,0 +1,22 @@
#include "cursor_context.cc"
#include "editor_audio_import.cc"
#include "editor_audiotrack.cc"
#include "editor_cursors.cc"
#include "editor_drag.cc"
#include "editor_export_audio.cc"
#include "editor_group_tabs.cc"
#include "editor_keys.cc"
#include "editor_markers.cc"
#include "editor_mixer.cc"
#include "editor_pt_import.cc"
#include "editor_regions.cc"
#include "editor_route_groups.cc"
#include "editor_routes.cc"
#include "editor_rulers.cc"
#include "editor_selection.cc"
#include "editor_snapshots.cc"
#include "editor_summary.cc"
#include "editor_tempodisplay.cc"
#include "editor_timefx.cc"

View File

@ -0,0 +1,6 @@
#include "editor.cc"
#include "editor_actions.cc"
#include "editor_canvas.cc"
#include "editor_canvas_events.cc"
#include "editor_mouse.cc"
#include "editor_ops.cc"

View File

@ -0,0 +1,10 @@
#include "editing.cc"
#include "midi_cut_buffer.cc"
#include "mouse_cursors.cc"
#include "region_selection.cc"
#include "selection.cc"
#include "selection_memento.cc"

View File

@ -0,0 +1,8 @@
#include "export_dialog.cc"
#include "export_file_notebook.cc"
#include "export_filename_selector.cc"
#include "export_format_dialog.cc"
#include "export_format_selector.cc"
#include "export_preset_selector.cc"
#include "export_timespan_selector.cc"
#include "export_channel_selector.cc" // TODO This should not be required last, UUID conflict

View File

@ -0,0 +1,3 @@
#include "fft.cc"
#include "fft_graph.cc"
#include "fft_result.cc"

View File

@ -0,0 +1,5 @@
#include "io_selector.cc"
#include "port_insert_ui.cc"
#include "processor_box.cc"
#include "return_ui.cc"
#include "send_ui.cc"

View File

@ -0,0 +1,3 @@
#include "meterbridge.cc"
#include "meter_strip.cc"
#include "meter_patterns.cc"

View File

@ -0,0 +1,10 @@
#include "edit_note_dialog.cc"
#include "midi_export_dialog.cc"
#include "midi_port_dialog.cc"
#include "midi_channel_dialog.cc"
#include "midi_velocity_dialog.cc"
#include "note_select_dialog.cc"
#include "patch_change_dialog.cc"
#include "quantize_dialog.cc"
#include "transform_dialog.cc"
#include "transpose_dialog.cc"

View File

@ -0,0 +1,21 @@
#include "actions.cc"
#include "audio_region_editor.cc"
#include "configinfo.cc"
#include "curvetest.cc"
#include "debug.cc"
#include "editor_component.cc"
#include "editor_locations.cc"
#include "enums.cc"
#include "midi_selection.cc"
#include "note_player.cc"
#include "nsm.cc"
#include "nsmclient.cc"
#include "pingback.cc"
#include "public_editor.cc"
#include "timers.cc"
#include "tooltips.cc"
#include "time_selection.cc"
#include "track_selection.cc"
#include "track_view_list.cc"
#include "utils.cc"
#include "visibility_group.cc"

View File

@ -0,0 +1,4 @@
#include "mixer_actor.cc"
#include "mixer_group_tabs.cc"
#include "mixer_strip.cc"
#include "mixer_ui.cc"

View File

@ -0,0 +1,4 @@
#include "option_editor.cc"
#include "rc_option_editor.cc"
#include "search_path_option.cc"
#include "session_option_editor.cc"

View File

@ -0,0 +1,7 @@
#include "mono_panner.cc"
#include "mono_panner_editor.cc"
#include "panner2d.cc"
#include "panner_interface.cc"
#include "panner_ui.cc"
#include "stereo_panner.cc"
#include "stereo_panner_editor.cc"

View File

@ -0,0 +1,8 @@
#include "generic_pluginui.cc"
#include "plugin_selector.cc"
#include "plugin_eq_gui.cc"
#include "plugin_ui.cc"
// ifdef HAVE_SUIL etc

View File

@ -0,0 +1,15 @@
#include "bundle_manager.cc"
#include "global_port_matrix.cc"
#include "monitor_selector.cc"
#include "port_group.cc"
#include "port_matrix.cc"
#include "port_matrix_body.cc"
#include "port_matrix_column_labels.cc"
#include "port_matrix_component.cc"
#include "port_matrix_grid.cc"
#include "port_matrix_labels.cc"
#include "port_matrix_row_labels.cc"

View File

@ -0,0 +1,7 @@
#include "audio_region_view.cc"
#include "automation_region_view.cc"
#include "ghostregion.cc"
#include "midi_region_view.cc"
#include "region_view.cc"
#include "tape_region_view.cc"
#include "time_axis_view_item.cc"

View File

@ -0,0 +1,12 @@
#include "gain_meter.cc"
#include "group_tabs.cc"
#include "duplicate_routes_dialog.cc"
#include "route_group_menu.cc"
#include "route_params_ui.cc"
#include "route_processor_selection.cc"
#include "route_ui.cc"
#include "monitor_section.cc"

View File

@ -0,0 +1,4 @@
#include "audio_streamview.cc"
#include "automation_streamview.cc"
#include "midi_streamview.cc"
#include "streamview.cc"

View File

@ -0,0 +1,6 @@
#include "axis_view.cc"
#include "automation_time_axis.cc"
#include "audio_time_axis.cc"
#include "midi_time_axis.cc"
#include "route_time_axis.cc"
#include "time_axis_view.cc"

View File

@ -0,0 +1,7 @@
#include "ardour_ui.cc"
#include "ardour_ui2.cc"
#include "ardour_ui_dependents.cc"
#include "ardour_ui_dialogs.cc"
#include "ardour_ui_ed.cc"
#include "ardour_ui_mixer.cc"
#include "ardour_ui_options.cc"

View File

@ -0,0 +1,12 @@
#include "video_image_frame.cc"
#include "add_video_dialog.cc"
#include "editor_videotimeline.cc"
#include "video_timeline.cc"
#include "video_monitor.cc"
#include "transcode_ffmpeg.cc"
#include "transcode_video_dialog.cc"
#include "video_server_dialog.cc"
#include "utils_videotl.cc"
#include "export_video_infobox.cc"
#include "video_tool_paths.cc"
#include "export_video_dialog.cc"

View File

@ -0,0 +1,22 @@
#include "automation_controller.cc"
#include "ardour_button.cc"
#include "ardour_display.cc"
#include "ardour_dropdown.cc"
#include "ardour_knob.cc"
#include "ardour_window.cc"
#include "audio_clock.cc"
#include "button_joiner.cc"
#include "clock_group.cc"
#include "floating_text_entry.cc"
#include "instrument_selector.cc"
#include "led.cc"
#include "level_meter.cc"
#include "main_clock.cc"
#include "midi_channel_selector.cc"
#include "midi_scroomer.cc"
#include "progress_reporter.cc"
#include "prompter.cc"
#include "piano_roll_header.cc"
#include "shuttle_control.cc"
#include "time_info_box.cc"
#include "volume_controller.cc"

View File

@ -0,0 +1,14 @@
#include "step_editor.cc" // TODO work out why these need to be included first
#include "step_entry.cc"
#include "about.cc"
#include "analysis_window.cc"
#include "big_clock_window.cc"
#include "keyeditor.cc"
#include "location_ui.cc"
#include "midi_list_editor.cc"
#include "midi_tracer.cc"
#include "nag.cc"
#include "region_layering_order_editor.cc"
#include "splash.cc"
#include "startup.cc"

View File

@ -19,247 +19,33 @@ out = 'build'
path_prefix = 'gtk2_ardour/'
gtk2_ardour_sources = [
'about.cc',
'actions.cc',
'add_route_dialog.cc',
'ambiguous_file_dialog.cc',
'analysis_window.cc',
'ardour_button.cc',
'ardour_dialog.cc',
'ardour_display.cc',
'ardour_dropdown.cc',
'ardour_knob.cc',
'ardour_ui.cc',
'ardour_ui2.cc',
'ardour_ui_dependents.cc',
'ardour_ui_dialogs.cc',
'ardour_ui_ed.cc',
'ardour_ui_mixer.cc',
'ardour_ui_options.cc',
'ardour_window.cc',
'audio_clock.cc',
'audio_region_editor.cc',
'audio_region_view.cc',
'audio_streamview.cc',
'audio_time_axis.cc',
'automation_controller.cc',
'automation_line.cc',
'automation_region_view.cc',
'automation_streamview.cc',
'automation_time_axis.cc',
'axis_view.cc',
'big_clock_window.cc',
'bundle_manager.cc',
'button_joiner.cc',
'clock_group.cc',
'configinfo.cc',
'control_point.cc',
'control_point_dialog.cc',
'cursor_context.cc',
'curvetest.cc',
'debug.cc',
'duplicate_routes_dialog.cc',
'edit_note_dialog.cc',
'editing.cc',
'editor.cc',
'editor_actions.cc',
'editor_audio_import.cc',
'editor_pt_import.cc',
'editor_audiotrack.cc',
'editor_canvas.cc',
'editor_canvas_events.cc',
'editor_component.cc',
'editor_cursors.cc',
'editor_drag.cc',
'editor_route_groups.cc',
'editor_export_audio.cc',
'editor_group_tabs.cc',
'editor_keys.cc',
'editor_locations.cc',
'editor_markers.cc',
'editor_mixer.cc',
'editor_mouse.cc',
'editor_ops.cc',
'editor_regions.cc',
'editor_routes.cc',
'editor_rulers.cc',
'editor_selection.cc',
'editor_snapshots.cc',
'editor_summary.cc',
'editor_tempodisplay.cc',
'editor_timefx.cc',
'engine_dialog.cc',
'enums.cc',
'export_channel_selector.cc',
'export_dialog.cc',
'export_file_notebook.cc',
'export_filename_selector.cc',
'export_format_dialog.cc',
'export_format_selector.cc',
'export_preset_selector.cc',
'export_timespan_selector.cc',
'fft.cc',
'fft_graph.cc',
'fft_result.cc',
'floating_text_entry.cc',
'sfdb_freesound_mootcher.cc',
'gain_meter.cc',
'generic_pluginui.cc',
'ghostregion.cc',
'global_port_matrix.cc',
'group_tabs.cc',
'gtk_ardour_canvas.cc',
'gtk_ardour_core.cc',
'gtk_ardour_dialogs.cc',
'gtk_ardour_dialogs2.cc',
'gtk_ardour_editor.cc',
'gtk_ardour_editor2.cc',
'gtk_ardour_editor_core.cc',
'gtk_ardour_export.cc',
'gtk_ardour_fft.cc',
'gtk_ardour_io.cc',
'gtk_ardour_meterbridge.cc',
'gtk_ardour_midi.cc',
'gtk_ardour_misc.cc',
'gtk_ardour_mixer.cc',
'gtk_ardour_options.cc',
'gtk_ardour_panners.cc',
'gtk_ardour_plugins.cc',
'gtk_ardour_port_matrix.cc',
'gtk_ardour_region_view.cc',
'gtk_ardour_route_ui.cc',
'gtk_ardour_streamview.cc',
'gtk_ardour_time_axis.cc',
'gtk_ardour_ui.cc',
'gtk_ardour_widgets.cc',
'gtk_ardour_windows.cc',
'gtk_ardour_video.cc',
'gtk_pianokeyboard.c',
'gui_object.cc',
'insert_remove_time_dialog.cc',
'instrument_selector.cc',
'interthread_progress_window.cc',
'io_selector.cc',
'hit.cc',
'keyboard.cc',
'keyeditor.cc',
'latency_gui.cc',
'led.cc',
'level_meter.cc',
'location_ui.cc',
'main.cc',
'main_clock.cc',
'marker.cc',
'midi_automation_line.cc',
'midi_channel_dialog.cc',
'midi_channel_selector.cc',
'midi_cut_buffer.cc',
'midi_export_dialog.cc',
'midi_list_editor.cc',
'midi_port_dialog.cc',
'midi_region_view.cc',
'midi_scroomer.cc',
'midi_selection.cc',
'midi_streamview.cc',
'midi_time_axis.cc',
'midi_tracer.cc',
'midi_velocity_dialog.cc',
'missing_file_dialog.cc',
'missing_plugin_dialog.cc',
'mixer_actor.cc',
'mixer_group_tabs.cc',
'mixer_strip.cc',
'mixer_ui.cc',
'meterbridge.cc',
'meter_strip.cc',
'meter_patterns.cc',
'monitor_section.cc',
'monitor_selector.cc',
'mono_panner.cc',
'mono_panner_editor.cc',
'mouse_cursors.cc',
'nag.cc',
'new_plugin_preset_dialog.cc',
'normalize_dialog.cc',
'note.cc',
'note_base.cc',
'note_player.cc',
'note_select_dialog.cc',
'nsm.cc',
'nsmclient.cc',
'option_editor.cc',
'opts.cc',
'panner2d.cc',
'panner_editor.cc',
'panner_interface.cc',
'panner_ui.cc',
'patch_change.cc',
'piano_roll_header.cc',
'pingback.cc',
'playlist_selector.cc',
'plugin_eq_gui.cc',
'plugin_selector.cc',
'plugin_ui.cc',
'port_group.cc',
'port_insert_ui.cc',
'port_matrix.cc',
'port_matrix_body.cc',
'port_matrix_column_labels.cc',
'port_matrix_component.cc',
'port_matrix_grid.cc',
'port_matrix_labels.cc',
'port_matrix_row_labels.cc',
'processor_box.cc',
'patch_change_dialog.cc',
'progress_reporter.cc',
'prompter.cc',
'public_editor.cc',
'quantize_dialog.cc',
'rc_option_editor.cc',
'region_editor.cc',
'region_gain_line.cc',
'region_layering_order_editor.cc',
'region_selection.cc',
'region_view.cc',
'return_ui.cc',
'rhythm_ferret.cc',
'route_group_dialog.cc',
'route_group_menu.cc',
'route_params_ui.cc',
'route_processor_selection.cc',
'route_time_axis.cc',
'route_ui.cc',
'ruler_dialog.cc',
'save_as_dialog.cc',
'search_path_option.cc',
'selection.cc',
'selection_memento.cc',
'send_ui.cc',
'session_dialog.cc',
'session_import_dialog.cc',
'session_metadata_dialog.cc',
'session_option_editor.cc',
'sfdb_ui.cc',
'shuttle_control.cc',
'soundcloud_export_selector.cc',
'splash.cc',
'speaker_dialog.cc',
'startup.cc',
'step_editor.cc',
'step_entry.cc',
'stereo_panner.cc',
'stereo_panner_editor.cc',
'streamview.cc',
'strip_silence_dialog.cc',
'sys_ex.cc',
'tape_region_view.cc',
'tempo_dialog.cc',
'tempo_lines.cc',
'theme_manager.cc',
'time_axis_view.cc',
'time_axis_view_item.cc',
'time_fx_dialog.cc',
'time_info_box.cc',
'time_selection.cc',
'timers.cc',
'tooltips.cc',
'track_selection.cc',
'track_view_list.cc',
'transform_dialog.cc',
'transpose_dialog.cc',
'ui_config.cc',
'utils.cc',
'verbose_cursor.cc',
'visibility_group.cc',
'volume_controller.cc',
'window_manager.cc',
# video-timeline related sources:
'video_image_frame.cc',
'add_video_dialog.cc',
'editor_videotimeline.cc',
'video_timeline.cc',
'video_monitor.cc',
'transcode_ffmpeg.cc',
'transcode_video_dialog.cc',
'video_server_dialog.cc',
'utils_videotl.cc',
'export_video_dialog.cc',
'export_video_infobox.cc',
'video_tool_paths.cc'
]
def enoify (major, minor):