X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2FSConscript;h=b04ccc85d72b3e0888e73d80710bd4c0ca643570;hb=ccf58b8de23619db9983a45f696fd97e13a15cce;hp=6adf0ee8aeff6e1bb02257ca616262fff3bb7385;hpb=9f63ab9931e6478472853bdda58da47ea29ac125;p=ardour.git diff --git a/gtk2_ardour/SConscript b/gtk2_ardour/SConscript index 6adf0ee8ae..b04ccc85d7 100644 --- a/gtk2_ardour/SConscript +++ b/gtk2_ardour/SConscript @@ -6,8 +6,8 @@ import glob Import('env install_prefix final_prefix config_prefix libraries i18n ardour_version') -gtkardour = env.Copy() -gtkmmtests = env.Copy() +gtkardour = env.Clone() +gtkmmtests = env.Clone() # # this defines the version number of the GTK interface to ardour @@ -25,76 +25,74 @@ gtkardour.Append(PACKAGE=domain) gtkardour.Append(POTFILE=domain + '.pot') if gtkardour['IS_OSX']: - gtkardour.Append (LINKFLAGS="-Xlinker -headerpad -Xlinker 2048") + gtkardour.Append (LINKFLAGS="-Xlinker -headerpad -Xlinker 2048 -framework CoreAudio") gtkardour.Merge ([ libraries['ardour'], libraries['ardour_cp'], - libraries['gtkmm2ext'], - libraries['midi++2'], - libraries['pbd'], - libraries['gtkmm2'], + libraries['asound'], + libraries['atkmm'], + libraries['cairomm'], + libraries['fftw3'], + libraries['fftw3f'], + libraries['freetype2'], + libraries['gdkmm2'], libraries['glib2'], + libraries['glibmm2'], + libraries['gtk2'], + libraries['gtkmm2'], + libraries['gtkmm2ext'], + libraries['jack'], libraries['libgnomecanvas2'], libraries['libgnomecanvasmm'], - libraries['sysmidi'], - libraries['sndfile-ardour'], - libraries['flac'], libraries['lrdf'], - libraries['glibmm2'], + libraries['midi++2'], + libraries['smf'], + libraries['evoral'], libraries['pangomm'], - libraries['atkmm'], - libraries['gdkmm2'], - libraries['sigc2'], - libraries['gtk2'], - libraries['xml'], - libraries['xslt'], + libraries['pbd'], libraries['samplerate'], - libraries['vamp'], + libraries['sigc2'], + libraries['sndfile'], + libraries['taglib'], + libraries['sysmidi'], libraries['vamphost'], - libraries['fftw3f'], - libraries['fftw3'], - libraries['jack'], - libraries['cairomm'], - libraries['asound'] + libraries['vamp'], + libraries['xml'], + libraries['xslt'] ]) gtkmmtests.Append(CXXFLAGS="-DLIBSIGC_DISABLE_DEPRECATED") gtkmmtests.Merge ([ - libraries['gtkmm2'], + libraries['atkmm'], + libraries['gdkmm2'], libraries['glib2'], libraries['glibmm2'], + libraries['gtk2'], + libraries['gtkmm2'], libraries['pangomm'], - libraries['atkmm'], - libraries['gdkmm2'], - libraries['sigc2'], - libraries['gtk2'] + libraries['sigc2'] ]) if gtkardour['DMALLOC']: gtkardour.Merge([libraries['dmalloc']]) gtkardour.Append(CCFLAGS='-DUSE_DMALLOC') -if gtkardour['FFT_ANALYSIS']: - gtkardour.Merge ([libraries['fftw3f']]) - gtkardour.Append(CCFLAGS='-DFFT_ANALYSIS') +if gtkardour['FREESOUND']: + gtkardour.Merge ([libraries['curl']]) + gtkardour.Append(CCFLAGS='-DFREESOUND') if gtkardour['RUBBERBAND']: gtkardour.Merge ([ libraries['rubberband'] ]) else: gtkardour.Merge ([ libraries['soundtouch'] ]) -skipped_files=Split(""" -connection_editor.cc -""") - audiounit_files=Split(""" au_pluginui.mm """) gtkosx_files=Split(""" -sync-menu.c cocoacarbon.mm """) @@ -107,9 +105,10 @@ about.cc actions.cc add_midi_cc_track_dialog.cc add_route_dialog.cc +analysis_window.cc ardour_dialog.cc -ardour_ui2.cc ardour_ui.cc +ardour_ui2.cc ardour_ui_dependents.cc ardour_ui_dialogs.cc ardour_ui_ed.cc @@ -127,23 +126,29 @@ automation_streamview.cc automation_time_axis.cc axis_view.cc bundle_manager.cc -canvas-midi-event.cc +canvas-flag.cc +canvas-note-event.cc +canvas-note.cc +canvas-program-change.cc canvas-simpleline.c canvas-simplerect.c +canvas-sysex.cc canvas-waveview.c control_point.cc +control_point_dialog.cc crossfade_edit.cc crossfade_view.cc curvetest.cc diamond.cc editing.cc +editor.cc editor_actions.cc editor_audio_import.cc editor_audiotrack.cc editor_canvas.cc editor_canvas_events.cc -editor.cc editor_cursors.cc +editor_drag.cc editor_edit_groups.cc editor_export_audio.cc editor_hscroller.cc @@ -160,17 +165,26 @@ editor_rulers.cc editor_scrub.cc editor_selection.cc editor_selection_list.cc +editor_summary.cc editor_tempodisplay.cc editor_timefx.cc engine_dialog.cc enums.cc +export_channel_selector.cc export_dialog.cc -export_range_markers_dialog.cc -export_region_dialog.cc -export_session_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 gain_meter.cc generic_pluginui.cc ghostregion.cc +global_port_matrix.cc gtk-custom-hruler.c gtk-custom-ruler.c io_selector.cc @@ -182,6 +196,7 @@ lineset.cc location_ui.cc main.cc marker.cc +midi_channel_selector.cc midi_port_dialog.cc midi_region_view.cc midi_scroomer.cc @@ -189,23 +204,33 @@ midi_streamview.cc midi_time_axis.cc mixer_strip.cc mixer_ui.cc -new_session_dialog.cc +nag.cc option_editor.cc opts.cc -panner2d.cc panner.cc +panner2d.cc panner_ui.cc piano_roll_header.cc playlist_selector.cc +plugin_eq_gui.cc plugin_selector.cc plugin_ui.cc +port_group.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 prompter.cc public_editor.cc +rc_option_editor.cc region_gain_line.cc region_selection.cc region_view.cc +return_ui.cc rhythm_ferret.cc route_params_ui.cc route_processor_selection.cc @@ -213,17 +238,23 @@ route_time_axis.cc route_ui.cc selection.cc send_ui.cc +session_import_dialog.cc +session_metadata_dialog.cc +session_option_editor.cc sfdb_ui.cc simpleline.cc simplerect.cc splash.cc +startup.cc streamview.cc +strip_silence_dialog.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_selection.cc ui_config.cc utils.cc @@ -231,10 +262,8 @@ version.cc waveview.cc """) -fft_analysis_files=Split(""" -analysis_window.cc -fft_graph.cc -fft_result.cc +freesound_files=Split(""" +sfdb_freesound_mootcher.cc """) pixmap_files = glob.glob('pixmaps/*.xpm') @@ -275,7 +304,10 @@ if env['VST']: extra_sources += vst_files gtkardour.Append (CCFLAGS="-DVST_SUPPORT", CPPPATH="#libs/fst") +lv2_files = [ 'lv2_plugin_ui.cc' ] + if env['LV2']: + extra_sources += lv2_files gtkardour.Append (CCFLAGS="-DHAVE_SLV2") gtkardour.Merge ([libraries['slv2']]) @@ -294,8 +326,8 @@ else: extra_sources += x11_files -if env['FFT_ANALYSIS']: - extra_sources += fft_analysis_files +if env['FREESOUND']: + extra_sources += freesound_files intl_files += extra_sources @@ -323,77 +355,89 @@ if gtkardour['IS_OSX']: # # OS X font rendering is different even with X11 # - my_font_dict['%FONT_TINY%'] = 'Lucida Grande 7' - my_font_dict['%FONT_SMALLERER%'] = 'Lucida Grande 8' - my_font_dict['%FONT_SMALLER%'] = 'Lucida Grande 9' - my_font_dict['%FONT_SMALL%'] = 'Lucida Grande 10' - my_font_dict['%FONT_NORMAL%'] = 'Lucida Grande 11' - my_font_dict['%FONT_BIG%'] = 'Lucida Grande 12' - my_font_dict['%FONT_BIGGER%'] = 'Lucida Grande 14' - my_font_dict['%FONT_LARGE%'] = 'Lucida Grande 18' - my_font_dict['%FONT_LARGER%'] = 'Lucida Grande 28' - my_font_dict['%FONT_HUGER%'] = 'Lucida Grande 36' - my_font_dict['%FONT_MASSIVE%'] = 'Lucida Grande 60' - my_font_dict['%FONT_BOLD_TINY%'] = 'Lucida Grande bold 7' - my_font_dict['%FONT_BOLD_SMALLER%'] = 'Lucida Grande bold 9' - my_font_dict['%FONT_BOLD_SMALL%'] = 'Lucida Grande bold 10' - my_font_dict['%FONT_BOLD_NORMAL%'] = 'Lucida Grande bold 11' - my_font_dict['%FONT_BOLD_BIG%'] = 'Lucida Grande bold 13' - my_font_dict['%FONT_BOLD_BIGGER%'] = 'Lucida Grande bold 14' - my_font_dict['%FONT_BOLD_LARGE%'] = 'Lucida Grande bold 20' - my_font_dict['%FONT_BOLD_LARGER%'] = 'Lucida Grande bold 25' - my_font_dict['%FONT_BOLD_HUGER%'] = 'Lucida Grande bold 36' - my_font_dict['%FONT_BOLD_MASSIVE%'] = 'Lucida Grande bold 60' - my_font_dict['%FONT_ITALIC_TINY%'] = 'Lucida Grande italic 7' - my_font_dict['%FONT_ITALIC_SMALLER%'] = 'Lucida Grande italic 9' - my_font_dict['%FONT_ITALIC_SMALL%'] = 'Lucida Grande italic 10' - my_font_dict['%FONT_ITALIC_NORMAL%'] = 'Lucida Grande italic 11' - my_font_dict['%FONT_ITALIC_BIG%'] = 'Lucida Grande italic 15' - my_font_dict['%FONT_ITALIC_BIGGER%'] = 'Lucida Grande italic 16' - my_font_dict['%FONT_ITALIC_LARGE%'] = 'Lucida Grande italic 20' - my_font_dict['%FONT_ITALIC_LARGER%'] = 'Lucida Grande italic 28' - my_font_dict['%FONT_ITALIC_HUGER%'] = 'Lucida Grande italic 36' - my_font_dict['%FONT_ITALIC_MASSIVE%'] = 'Lucida Grande italic 60' + + font_sizes = { + 'TINY' : '7', + 'SMALLER' : '9', + 'SMALL' : '10', + 'NORMAL' : '11', + 'BIG' : '12', + 'BIGGER' : '14', + 'LARGE' : '18', + 'LARGER' : '28', + 'HUGER' : '36', + 'MASSIVE' : '60' + } + basefont = "Lucida Grande" + else: # # Linux/X11 font rendering # - my_font_dict['%FONT_TINY%'] = 'sans 4' - my_font_dict['%FONT_SMALLERER%'] = 'sans 6' - my_font_dict['%FONT_SMALLER%'] = 'sans 6' - my_font_dict['%FONT_SMALL%'] = 'sans 7' - my_font_dict['%FONT_NORMAL%'] = 'sans 8' - my_font_dict['%FONT_BIG%'] = 'sans 12' - my_font_dict['%FONT_BIGGER%'] = 'sans 14' - my_font_dict['%FONT_LARGE%'] = 'sans 18' - my_font_dict['%FONT_LARGER%'] = 'sans 24' - my_font_dict['%FONT_HUGER%'] = 'sans 34' - my_font_dict['%FONT_MASSIVE%'] = 'sans 60' - my_font_dict['%FONT_BOLD_TINY%'] = 'sans bold 4' - my_font_dict['%FONT_BOLD_SMALLER%'] = 'sans bold 6' - my_font_dict['%FONT_BOLD_SMALL%'] = 'sans bold 7' - my_font_dict['%FONT_BOLD_NORMAL%'] = 'sans bold 8' - my_font_dict['%FONT_BOLD_BIG%'] = 'sans bold 12' - my_font_dict['%FONT_BOLD_BIGGER%'] = 'sans bold 14' - my_font_dict['%FONT_BOLD_LARGE%'] = 'sans bold 18' - my_font_dict['%FONT_BOLD_LARGER%'] = 'sans bold 24' - my_font_dict['%FONT_BOLD_HUGE%'] = 'sans bold 25' - my_font_dict['%FONT_BOLD_HUGER%'] = 'sans bold 34' - my_font_dict['%FONT_BOLD_MASSIVE%'] = 'sans bold 60' - my_font_dict['%FONT_ITALIC_TINY%'] = 'sans italic 4' - my_font_dict['%FONT_ITALIC_SMALLER%'] = 'sans italic 6' - my_font_dict['%FONT_ITALIC_SMALL%'] = 'sans italic 7' - my_font_dict['%FONT_ITALIC_NORMAL%'] = 'sans italic 8' - my_font_dict['%FONT_ITALIC_BIG%'] = 'sans italic 12' - my_font_dict['%FONT_ITALIC_BIGGER%'] = 'sans italic 14' - my_font_dict['%FONT_ITALIC_LARGE%'] = 'sans italic 18' - my_font_dict['%FONT_ITALIC_LARGER%'] = 'sans italic 24' - my_font_dict['%FONT_ITALIC_HUGE%'] = 'sans italic 25' - my_font_dict['%FONT_ITALIC_HUGER%'] = 'sans italic 34' - my_font_dict['%FONT_ITALIC_MASSIVE%'] = 'sans italic 60' - -ardour_dark_theme = env.SubstInFile ('ardour3_ui_dark.rc', 'ardour3_ui_dark.rc.in', SUBST_DICT = my_font_dict) -ardour_light_theme = env.SubstInFile ('ardour3_ui_light.rc', 'ardour3_ui_light.rc.in', SUBST_DICT = my_font_dict) + + if gtkardour['OLDFONTS']: + font_sizes = { + 'TINY' : '4', + 'SMALLER' : '6', + 'SMALL' : '7', + 'NORMAL' : '8', + 'BIG' : '12', + 'BIGGER' : '14', + 'LARGE' : '18', + 'LARGER' : '24', + 'HUGER' : '34', + 'MASSIVE' : '60' + } + else: + font_sizes = { + 'TINY' : '6', + 'SMALLER' : '8', + 'SMALL' : '9', + 'NORMAL' : '10', + 'BIG' : '14', + 'BIGGER' : '16', + 'LARGE' : '18', + 'LARGER' : '24', + 'HUGER' : '34', + 'MASSIVE' : '60' + } + + basefont = "sans" + +for style in ['', 'BOLD', 'ITALIC']: + for sizename,points in font_sizes.iteritems(): + if (len (style)): + key = "_".join (['FONT',style,sizename]) + fontstyle = " ".join ([basefont,style.lower(),points]) + else: + key = "_".join (['FONT',sizename]) + fontstyle = " ".join ([basefont,points]) + + key = '%' + key + '%' + my_font_dict[key] = fontstyle + +# +# create menus based on build platform +# + +if env['GTKOSX']: + ardour_menus = env.Command ('ardour.menus', 'ardour.menus.in', "cpp -E -P -DGTKOSX -DTOP_MENUBAR ardour.menus.in ardour.menus", chdir=1) +else: + ardour_menus = env.Command ('ardour.menus', 'ardour.menus.in', "cpp -E -P ardour.menus.in ardour.menus", chdir=1) + +ardour_dark_theme = env.SubstInFile ('ardour3_ui_dark.rc', + 'ardour3_ui_dark.rc.in', + SUBST_DICT = my_font_dict) +ardour_light_theme = env.SubstInFile ('ardour3_ui_light.rc', + 'ardour3_ui_light.rc.in', + SUBST_DICT = my_font_dict) + +ardour_dark_sae_theme = env.SubstInFile ('ardour3_ui_dark_sae.rc', + 'ardour3_ui_dark_sae.rc.in', + SUBST_DICT = my_font_dict) +ardour_light_sae_theme = env.SubstInFile ('ardour3_ui_light_sae.rc', + 'ardour3_ui_light_sae.rc.in', + SUBST_DICT = my_font_dict) my_subst_dict = { } @@ -403,32 +447,39 @@ my_subst_dict = { } keybindings_dict = { } -if gtkardour['GTKOSX'] and gtkardour['NATIVE_OSX_KEYS']: +if gtkardour['GTKOSX']: # - # Command(Mod1), Alt(Mod5), Ctrl, Shift + # Command(Meta), Alt(Mod1), Ctrl, Shift + # **** as of february 4th 2008, OUR VERSION OF ***** + # Gtk/Quartz maps: + # NSCommand (aka "Command" aka "Apple" aka "Cauliflower") -> Meta + # NSAlternate (aka "Option") -> Mod1 # - keybindings_dict['%PRIMARY%'] = 'Mod5' - keybindings_dict['%SECONDARY%'] = 'Alt' - keybindings_dict['%TERTIARY%'] = 'Shift' - keybindings_dict['%LEVEL4%'] = 'Ctrl' - keybindings_dict['%WINDOW%'] = 'Mod5' + keybindings_dict['@PRIMARY@'] = 'Meta' + keybindings_dict['@SECONDARY@'] = 'Mod1' + keybindings_dict['@TERTIARY@'] = 'Shift' + keybindings_dict['@LEVEL4@'] = 'Ctrl' + keybindings_dict['@WINDOW@'] = 'Mod1' else: # - # Ctrl, Alt, Shift, Mod3(Meta) + # Ctrl, Alt, Shift, Mod4(Super/Windows/Hyper) # - keybindings_dict['%PRIMARY%'] = 'Ctrl' - keybindings_dict['%SECONDARY%'] = 'Alt' - keybindings_dict['%TERTIARY%'] = 'Shift' - keybindings_dict['%LEVEL4%'] = 'Mod2' - keybindings_dict['%WINDOW%'] = 'Alt' - -ardourbindings = env.SubstInFile ('ardour.bindings', 'ardour.bindings.in', SUBST_DICT = keybindings_dict); -ardoursaeDEbindings = env.SubstInFile ('ardour-sae-de.bindings', 'ardour-sae-de.bindings.in', SUBST_DICT = keybindings_dict); -ardoursaeANSIbindings = env.SubstInFile ('ardour-sae-ansi.bindings', 'ardour-sae-ansi.bindings.in', SUBST_DICT = keybindings_dict); - -my_subst_dict['%INSTALL_PREFIX%'] = final_prefix -my_subst_dict['%LIBDIR%'] = env['LIBDIR'] -my_subst_dict['%VERSION%'] = ardour_version + keybindings_dict['@PRIMARY@'] = 'Ctrl' + keybindings_dict['@SECONDARY@'] = 'Alt' + keybindings_dict['@TERTIARY@'] = 'Shift' + keybindings_dict['@LEVEL4@'] = env['WINDOWS_KEY'] + keybindings_dict['@WINDOW@'] = 'Alt' + +for b in [ 'SAE-de-keypad', 'SAE-de-nokeypad', 'SAE-us-keypad', 'SAE-us-nokeypad', 'mnemonic-us', 'ergonomic-us' ]: + target_file = b + '.bindings' + src_file = target_file + '.in' + Default (env.SubstInFile (target_file, src_file, SUBST_DICT = keybindings_dict)) + +my_subst_dict['@INSTALL_PREFIX@'] = final_prefix +my_subst_dict['@LIBDIR@'] = env['LIBDIR'] +my_subst_dict['@LIBS@'] = 'libs' +my_subst_dict['@VERSION@'] = ardour_version +my_subst_dict['@EXECUTABLE@'] = 'gtk2_ardour/ardour-' + ardour_version ardoursh = env.SubstInFile ('ardour.sh','ardour.sh.in', SUBST_DICT = my_subst_dict); env.AddPostAction (ardoursh, Chmod ('$TARGET', 0755)) @@ -436,13 +487,13 @@ env.AddPostAction (ardoursh, Chmod ('$TARGET', 0755)) ardourdev = env.SubstInFile ('ardev_common.sh','ardev_common.sh.in', SUBST_DICT = my_subst_dict); env.AddPostAction (ardourdev, Chmod ('$TARGET', 0755)) -Default(ardourbindings) -Default(ardoursaeDEbindings) -Default(ardoursaeANSIbindings) Default(ardourdev) Default(ardoursh) Default(ardour_dark_theme) Default(ardour_light_theme) +Default(ardour_dark_sae_theme) +Default(ardour_light_sae_theme) +Default(ardour_menus) if env['VST']: Default(ardourlib) @@ -463,23 +514,68 @@ else: env.Alias('install', env.InstallAs(os.path.join(install_prefix, 'bin')+'/ardour3', ardoursh)) if env['NLS']: - i18n (gtkardour, gtkardour_files+skipped_files+fft_analysis_files, env) + i18n (gtkardour, gtkardour_files, env) # configuration files env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour3'), ardour_dark_theme)) env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour3'), ardour_light_theme)) +env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour3'), ardour_dark_sae_theme)) +env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour3'), ardour_light_sae_theme)) +env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour3'), 'ardour3_ui_default.conf')) env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour3'), 'ardour.menus')) env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour3'), 'ardour-sae.menus')) -env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour3'), 'ardour.bindings')) -env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour3'), 'ardour-sae-ansi.bindings')) -env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour3'), 'ardour-sae-de.bindings')) +env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour3'), 'ergonomic-us.bindings')) +env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour3'), 'mnemonic-us.bindings')) +env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour3'), 'SAE-de-keypad.bindings')) +env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour3'), 'SAE-us-keypad.bindings')) +env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour3'), 'SAE-de-nokeypad.bindings')) +env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour3'), 'SAE-us-nokeypad.bindings')) # data files env.Alias('install', env.Install(os.path.join(install_prefix, 'share', 'ardour3'), 'splash.png')) env.Alias('install', env.Install(os.path.join(install_prefix, 'share', 'ardour3', 'pixmaps'), pixmap_files)) env.Alias('install', env.Install(os.path.join(install_prefix, 'share', 'ardour3', 'icons'), icon_files)) - env.Alias ('version', gtkardour.VersionBuild(['version.cc','version.h'], [])) - +env.Alias ('version', gtkardour.VersionBuild(['version.cc','version.h'], [])) + +# This will install icons and MIME type as per freedesktop.org specs. # +if env['FREEDESKTOP']: + desktop_icon_install_prefix = install_prefix + '/share/icons/hicolor' + # Install the desktop icons to the default locations # + env.Alias('install', env.InstallAs(os.path.join(desktop_icon_install_prefix, '16x16', 'apps', 'ardour3.png'), 'icons/ardour_icon_16px.png')) + env.Alias('install', env.InstallAs(os.path.join(desktop_icon_install_prefix, '22x22', 'apps', 'ardour3.png'), 'icons/ardour_icon_22px.png')) + env.Alias('install', env.InstallAs(os.path.join(desktop_icon_install_prefix, '32x32', 'apps', 'ardour3.png'), 'icons/ardour_icon_32px.png')) + env.Alias('install', env.InstallAs(os.path.join(desktop_icon_install_prefix, '48x48', 'apps', 'ardour3.png'), 'icons/ardour_icon_48px.png')) + # Install the mime type xml file and its icon # + env.Alias('install', env.Install(os.path.join(install_prefix, 'share', 'mime', 'packages'), 'ardour3.xml')) + env.Alias('install', env.InstallAs(os.path.join(desktop_icon_install_prefix, '16x16', 'mimetypes', 'application-x-ardour3.png'), 'icons/application-x-ardour_16px.png')) + env.Alias('install', env.InstallAs(os.path.join(desktop_icon_install_prefix, '22x22', 'mimetypes', 'application-x-ardour3.png'), 'icons/application-x-ardour_22px.png')) + env.Alias('install', env.InstallAs(os.path.join(desktop_icon_install_prefix, '32x32', 'mimetypes', 'application-x-ardour3.png'), 'icons/application-x-ardour_32px.png')) + env.Alias('install', env.InstallAs(os.path.join(desktop_icon_install_prefix, '48x48', 'mimetypes', 'application-x-ardour3.png'), 'icons/application-x-ardour_48px.png')) + env.Alias('install', env.Command (os.path.join(install_prefix, 'share', 'mime'), [], 'update-mime-database $TARGET')) + # Update the icon cache # + env.Alias('install', env.Command (desktop_icon_install_prefix, [], 'touch --no-create $TARGET')) + env.Alias('install', env.Command (desktop_icon_install_prefix, [], 'gtk-update-icon-cache $TARGET')) + # Make the ardour3.desktop file and install it # + env.Alias('install', env.Command ('ardour3.desktop', 'ardour3.desktop.in', 'cat $SOURCES > $TARGET')) + env.Alias('install', env.Install(os.path.join(install_prefix, 'share', 'applications'), 'ardour3.desktop')) + env.Alias('install', env.Command (os.path.join(install_prefix, 'share', 'applications'), [], 'update-desktop-database $TARGET')) + # uninstall target.. needed to run update-mime-database and update-desktop-database after removal. #` + remove_desktop_files = env.Command ('another_frobnicatory_decoy', [], + [ Delete (install_prefix + '/share/mime/packages/ardour3.xml'), + Delete (install_prefix + '/share/applications/ardour3.desktop'), + Delete (desktop_icon_install_prefix + '/16x16/apps/ardour3.png'), + Delete (desktop_icon_install_prefix + '/22x22/apps/ardour3.png'), + Delete (desktop_icon_install_prefix + '/32x32/apps/ardour3.png'), + Delete (desktop_icon_install_prefix + '/48x48/apps/ardour3.png'), + Delete (desktop_icon_install_prefix + '/16x16/mimetypes/application-x-ardour3.png'), + Delete (desktop_icon_install_prefix + '/22x22/mimetypes/application-x-ardour3.png'), + Delete (desktop_icon_install_prefix + '/32x32/mimetypes/application-x-ardour3.png'), + Delete (desktop_icon_install_prefix + '/48x48/mimetypes/application-x-ardour3.png'), + Action ('update-mime-database ' + install_prefix + '/share/mime'), + Action ('gtk-update-icon-cache ' + desktop_icon_install_prefix), + Action ('update-desktop-database ' + install_prefix + '/share/applications')]) + env.Alias('uninstall', remove_desktop_files) + #dist env.Alias ('tarball', env.Distribute (env['DISTTREE'], [ 'SConscript', @@ -487,23 +583,33 @@ env.Alias ('tarball', env.Distribute (env['DISTTREE'], 'ardour.sh.in', 'ardev_common.sh.in', 'ardev', 'ardbg', - 'ardour3_ui_dark.rc.in', 'ardour3_ui_light.rc.in', 'splash.png', - 'ardour.menus', 'ardour-sae.menus', - 'ardour.bindings.in', - 'ardour-sae-ansi.bindings.in', - 'ardour-sae-de.bindings.in', + 'ardour3_ui_dark.rc.in', + 'ardour3_ui_light.rc.in', + 'ardour3_ui_dark_sae.rc.in', + 'ardour3_ui_light_sae.rc.in', + 'splash.png', + 'ardour.menus.in', + 'ardour-sae.menus', + 'mnemonic-us.bindings.in', + 'ergonomic-us.bindings.in', + 'SAE-us-keypad.bindings.in', + 'SAE-us-nokeypad.bindings.in', + 'SAE-de-keypad.bindings.in', + 'SAE-de-nokeypad.bindings.in', 'ardour3_ui_default.conf', - 'editor_xpms' + 'editor_xpms', + 'ardour3.xml', + 'ardour3.desktop.in' ] + gtkardour_files + vst_files + pixmap_files + icon_files + - skipped_files + audiounit_files + + lv2_files + gtkosx_files + x11_files + - fft_analysis_files + + freesound_files + glob.glob('po/*.po') + glob.glob('*.h'))) # generate a prototype full-featured ardour_ui.rc file