From 02199755ab0a174eba3388b30b52c28d2bf9bf92 Mon Sep 17 00:00:00 2001 From: Jehan Date: Mon, 18 Nov 2024 14:52:47 +0900 Subject: [PATCH] Issue #12277: GIMP 3.0 RC1 opens Windows Console. This is a followup of previous commit. We must set the win_subsystem option on executable() so that the result binary is compiled as a GUI application (and doesn't output a console every time). The previous commit is still needed and is what allows us to control when to actually display a console. --- app/meson.build | 2 ++ extensions/goat-exercises/meson.build | 2 ++ plug-ins/common/meson.build | 1 + plug-ins/file-bmp/meson.build | 1 + plug-ins/file-dds/meson.build | 1 + plug-ins/file-exr/meson.build | 1 + plug-ins/file-faxg3/meson.build | 1 + plug-ins/file-fits/meson.build | 1 + plug-ins/file-fli/meson.build | 1 + plug-ins/file-icns/meson.build | 1 + plug-ins/file-ico/meson.build | 1 + plug-ins/file-jpeg/meson.build | 1 + plug-ins/file-psd/meson.build | 1 + plug-ins/file-raw/meson.build | 1 + plug-ins/file-sgi/meson.build | 1 + plug-ins/file-tiff/meson.build | 1 + plug-ins/file-webp/meson.build | 1 + plug-ins/flame/meson.build | 1 + plug-ins/fractal-explorer/meson.build | 1 + plug-ins/gfig/meson.build | 1 + plug-ins/gimpressionist/meson.build | 1 + plug-ins/gradient-flare/meson.build | 1 + plug-ins/help-browser/meson.build | 1 + plug-ins/help/meson.build | 1 + plug-ins/ifs-compose/meson.build | 1 + plug-ins/imagemap/meson.build | 1 + plug-ins/lighting/meson.build | 1 + plug-ins/map-object/meson.build | 1 + plug-ins/metadata/meson.build | 2 ++ plug-ins/pagecurl/meson.build | 1 + plug-ins/print/meson.build | 1 + plug-ins/screenshot/meson.build | 1 + plug-ins/script-fu/interpreter/meson.build | 1 + plug-ins/script-fu/meson.build | 1 + plug-ins/script-fu/server/meson.build | 1 + plug-ins/selection-to-path/meson.build | 1 + plug-ins/twain/meson.build | 1 + 37 files changed, 40 insertions(+) diff --git a/app/meson.build b/app/meson.build index 24496a14e6..f8267c97dd 100644 --- a/app/meson.build +++ b/app/meson.build @@ -212,6 +212,7 @@ if enable_console_bin rootInclude, rootAppInclude, ], + win_subsystem: 'console', link_args: link_args, install: true, ) @@ -226,6 +227,7 @@ gimpmain_exe = executable(gimpmain_exe_name, app_libgimps, gui_libapps, ], + win_subsystem: 'windows', install: true, ) diff --git a/extensions/goat-exercises/meson.build b/extensions/goat-exercises/meson.build index 2349677ace..052ff61bd6 100644 --- a/extensions/goat-exercises/meson.build +++ b/extensions/goat-exercises/meson.build @@ -29,6 +29,7 @@ exe = executable(plug_in_name + '-c', ], install: true, install_dir: gimpplugindir / 'extensions' / extension_name, + win_subsystem: 'windows', ) # XXX This is so ugly! @@ -54,6 +55,7 @@ if have_vala and have_gobject_introspection ], install: true, install_dir: gimpplugindir / 'extensions' / extension_name, + win_subsystem: 'windows', ) plug_ins = plug_ins + ':' + exe.full_path().split('/')[-1].split('\\')[-1] diff --git a/plug-ins/common/meson.build b/plug-ins/common/meson.build index e06e174343..6fcf1c32a4 100644 --- a/plug-ins/common/meson.build +++ b/plug-ins/common/meson.build @@ -232,6 +232,7 @@ foreach plugin : common_plugins_list ], dependencies: [ plugin_deps, math ], c_args: plugin_cflags, + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) diff --git a/plug-ins/file-bmp/meson.build b/plug-ins/file-bmp/meson.build index 07bb880ac8..e6a7bf0bed 100644 --- a/plug-ins/file-bmp/meson.build +++ b/plug-ins/file-bmp/meson.build @@ -23,6 +23,7 @@ endif plugin_exe = executable(plugin_name, plugin_sources, dependencies: libgimpui_dep, + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/file-dds/meson.build b/plug-ins/file-dds/meson.build index de7b7df660..6e0eb12bfe 100644 --- a/plug-ins/file-dds/meson.build +++ b/plug-ins/file-dds/meson.build @@ -31,6 +31,7 @@ plugin_exe = executable(plugin_name, math, openmp, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/file-exr/meson.build b/plug-ins/file-exr/meson.build index ed68cff0b6..ba94f7cb66 100644 --- a/plug-ins/file-exr/meson.build +++ b/plug-ins/file-exr/meson.build @@ -28,6 +28,7 @@ plugin_exe = executable(plugin_name, openexr, lcms, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/file-faxg3/meson.build b/plug-ins/file-faxg3/meson.build index 0fdcf6de0f..972b611bce 100644 --- a/plug-ins/file-faxg3/meson.build +++ b/plug-ins/file-faxg3/meson.build @@ -22,6 +22,7 @@ endif plugin_exe = executable(plugin_name, plugin_sources, dependencies: libgimpui_dep, + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/file-fits/meson.build b/plug-ins/file-fits/meson.build index daf84d62fa..585bfb292d 100644 --- a/plug-ins/file-fits/meson.build +++ b/plug-ins/file-fits/meson.build @@ -26,6 +26,7 @@ if cfitsio_dep.found() cfitsio_dep, math, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/file-fli/meson.build b/plug-ins/file-fli/meson.build index 2f138b28a7..70a242ec15 100644 --- a/plug-ins/file-fli/meson.build +++ b/plug-ins/file-fli/meson.build @@ -22,6 +22,7 @@ endif plugin_exe = executable(plugin_name, plugin_sources, dependencies: libgimpui_dep, + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/file-icns/meson.build b/plug-ins/file-icns/meson.build index c96a421935..68345633ba 100644 --- a/plug-ins/file-icns/meson.build +++ b/plug-ins/file-icns/meson.build @@ -27,6 +27,7 @@ plugin_exe = executable(plugin_name, libgimpui_dep, libpng, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/file-ico/meson.build b/plug-ins/file-ico/meson.build index b21a774b41..f3f965d11e 100644 --- a/plug-ins/file-ico/meson.build +++ b/plug-ins/file-ico/meson.build @@ -27,6 +27,7 @@ plugin_exe = executable(plugin_name, libgimpui_dep, libpng, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/file-jpeg/meson.build b/plug-ins/file-jpeg/meson.build index 41c7f79536..09a3b1dceb 100644 --- a/plug-ins/file-jpeg/meson.build +++ b/plug-ins/file-jpeg/meson.build @@ -31,6 +31,7 @@ plugin_exe = executable(plugin_name, lcms, gexiv2, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/file-psd/meson.build b/plug-ins/file-psd/meson.build index cf50d0e0f9..cea16f37f9 100644 --- a/plug-ins/file-psd/meson.build +++ b/plug-ins/file-psd/meson.build @@ -33,6 +33,7 @@ plugin_exe = executable(plugin_name, math, zlib, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/file-raw/meson.build b/plug-ins/file-raw/meson.build index 1aaf3fd05f..fa91c8140c 100644 --- a/plug-ins/file-raw/meson.build +++ b/plug-ins/file-raw/meson.build @@ -35,6 +35,7 @@ foreach plugin_name : file_raw_exes plugin_exe = executable(plugin_name, plugin_sources, dependencies: libgimpui_dep, + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/file-sgi/meson.build b/plug-ins/file-sgi/meson.build index 74a525d3da..ec529e678b 100644 --- a/plug-ins/file-sgi/meson.build +++ b/plug-ins/file-sgi/meson.build @@ -22,6 +22,7 @@ endif plugin_exe = executable(plugin_name, plugin_sources, dependencies: libgimpui_dep, + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/file-tiff/meson.build b/plug-ins/file-tiff/meson.build index 32134d7141..5d2a6a779f 100644 --- a/plug-ins/file-tiff/meson.build +++ b/plug-ins/file-tiff/meson.build @@ -28,6 +28,7 @@ plugin_exe = executable(plugin_name, gexiv2, libtiff, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/file-webp/meson.build b/plug-ins/file-webp/meson.build index 8a856ab7ca..3206d12f59 100644 --- a/plug-ins/file-webp/meson.build +++ b/plug-ins/file-webp/meson.build @@ -30,6 +30,7 @@ plugin_exe = executable(plugin_name, gexiv2, webp_libs, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/flame/meson.build b/plug-ins/flame/meson.build index 77ca5a3de6..87f2f0d81a 100644 --- a/plug-ins/flame/meson.build +++ b/plug-ins/flame/meson.build @@ -27,6 +27,7 @@ plugin_exe = executable(plugin_name, libgimpui_dep, math, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/fractal-explorer/meson.build b/plug-ins/fractal-explorer/meson.build index e5fd3e7539..baf80bf286 100644 --- a/plug-ins/fractal-explorer/meson.build +++ b/plug-ins/fractal-explorer/meson.build @@ -27,6 +27,7 @@ plugin_exe = executable(plugin_name, libgimpui_dep, math, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/gfig/meson.build b/plug-ins/gfig/meson.build index 022469d855..0a1a8b1a35 100644 --- a/plug-ins/gfig/meson.build +++ b/plug-ins/gfig/meson.build @@ -48,6 +48,7 @@ plugin_exe = executable(plugin_name, libgimpui_dep, math, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/gimpressionist/meson.build b/plug-ins/gimpressionist/meson.build index 33cc603f28..44f283a83a 100644 --- a/plug-ins/gimpressionist/meson.build +++ b/plug-ins/gimpressionist/meson.build @@ -51,6 +51,7 @@ plugin_exe = executable(plugin_name, prefix / gimpdatadir / 'gimpressionist' ), ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/gradient-flare/meson.build b/plug-ins/gradient-flare/meson.build index 7d8423fa41..44f4012f53 100644 --- a/plug-ins/gradient-flare/meson.build +++ b/plug-ins/gradient-flare/meson.build @@ -26,6 +26,7 @@ plugin_exe = executable(plugin_name, libgimpui_dep, math, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/help-browser/meson.build b/plug-ins/help-browser/meson.build index 6143d773eb..a148ad518a 100644 --- a/plug-ins/help-browser/meson.build +++ b/plug-ins/help-browser/meson.build @@ -37,6 +37,7 @@ plugin_exe = executable(plugin_name, link_with: [ help_plugin_lib, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/help/meson.build b/plug-ins/help/meson.build index 2a43cdeb6b..fcf6ff9fa0 100644 --- a/plug-ins/help/meson.build +++ b/plug-ins/help/meson.build @@ -42,6 +42,7 @@ plugin_exe = executable(plugin_name, link_with: [ help_plugin_lib, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/ifs-compose/meson.build b/plug-ins/ifs-compose/meson.build index 8f465cd190..ae52e25ef4 100644 --- a/plug-ins/ifs-compose/meson.build +++ b/plug-ins/ifs-compose/meson.build @@ -31,6 +31,7 @@ plugin_exe = executable(plugin_name, libgimpui_dep, math, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/imagemap/meson.build b/plug-ins/imagemap/meson.build index 8784499948..a4524deda0 100644 --- a/plug-ins/imagemap/meson.build +++ b/plug-ins/imagemap/meson.build @@ -151,6 +151,7 @@ plugin_exe = executable(plugin_name, libgimpui_dep, math, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/lighting/meson.build b/plug-ins/lighting/meson.build index 297b870ade..44e3f3213d 100644 --- a/plug-ins/lighting/meson.build +++ b/plug-ins/lighting/meson.build @@ -33,6 +33,7 @@ plugin_exe = executable(plugin_name, libgimpui_dep, math, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/map-object/meson.build b/plug-ins/map-object/meson.build index 4127fa8d70..e17776b40d 100644 --- a/plug-ins/map-object/meson.build +++ b/plug-ins/map-object/meson.build @@ -33,6 +33,7 @@ plugin_exe = executable(plugin_name, libgimpui_dep, math, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/metadata/meson.build b/plug-ins/metadata/meson.build index e69e0ad218..cc7ec1b72b 100644 --- a/plug-ins/metadata/meson.build +++ b/plug-ins/metadata/meson.build @@ -33,6 +33,7 @@ plugin_exe = executable(plugin_name, libgimpui_dep, gexiv2, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] @@ -80,6 +81,7 @@ plugin_exe = executable(plugin_name, libgimpui, libgimpwidgets, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/pagecurl/meson.build b/plug-ins/pagecurl/meson.build index c5f7d80f53..184dc12d0c 100644 --- a/plug-ins/pagecurl/meson.build +++ b/plug-ins/pagecurl/meson.build @@ -57,6 +57,7 @@ plugin_exe = executable(plugin_name, libgimpui_dep, math, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/print/meson.build b/plug-ins/print/meson.build index f76dcbebb2..9788fe5fc1 100644 --- a/plug-ins/print/meson.build +++ b/plug-ins/print/meson.build @@ -30,6 +30,7 @@ endif plugin_exe = executable(plugin_name, plugin_sources, dependencies: libgimpui_dep, + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/screenshot/meson.build b/plug-ins/screenshot/meson.build index 61fd2bdfbe..4e06393ba1 100644 --- a/plug-ins/screenshot/meson.build +++ b/plug-ins/screenshot/meson.build @@ -44,6 +44,7 @@ screenshot = executable('screenshot', libgimpui_dep, x11, xmu, xext, xfixes, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [screenshot.full_path()] diff --git a/plug-ins/script-fu/interpreter/meson.build b/plug-ins/script-fu/interpreter/meson.build index 60b1b8b13c..346860644b 100644 --- a/plug-ins/script-fu/interpreter/meson.build +++ b/plug-ins/script-fu/interpreter/meson.build @@ -39,6 +39,7 @@ if not meson.is_cross_build() scriptfuInclude, ], link_with : libscriptfu, + win_subsystem: 'windows', install: true) plugin_executables += [plugin_exe.full_path()] endif diff --git a/plug-ins/script-fu/meson.build b/plug-ins/script-fu/meson.build index 035c11a6c1..b9c74e9e5d 100644 --- a/plug-ins/script-fu/meson.build +++ b/plug-ins/script-fu/meson.build @@ -75,6 +75,7 @@ if not meson.is_cross_build() libscriptfuInclude, ], link_with : [libscriptfuconsole, libscriptfu ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / executable_name) plugin_executables += [plugin_exe.full_path()] diff --git a/plug-ins/script-fu/server/meson.build b/plug-ins/script-fu/server/meson.build index 4f6ee9915d..cf85547e6f 100644 --- a/plug-ins/script-fu/server/meson.build +++ b/plug-ins/script-fu/server/meson.build @@ -43,6 +43,7 @@ if not meson.is_cross_build() scriptfuInclude, ], link_with : libscriptfu, + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / executable_name) endif diff --git a/plug-ins/selection-to-path/meson.build b/plug-ins/selection-to-path/meson.build index c53532c4ef..05f1724f2c 100644 --- a/plug-ins/selection-to-path/meson.build +++ b/plug-ins/selection-to-path/meson.build @@ -33,6 +33,7 @@ plugin_selection_to_path_deps = [ selection_to_path = executable(plugin_name, plugin_sources, dependencies: plugin_selection_to_path_deps, + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [selection_to_path.full_path()] diff --git a/plug-ins/twain/meson.build b/plug-ins/twain/meson.build index 39d89bd106..a93b4967e9 100644 --- a/plug-ins/twain/meson.build +++ b/plug-ins/twain/meson.build @@ -30,6 +30,7 @@ twain = executable(plugin_name, glib, gtk3, ], + win_subsystem: 'windows', install: true, install_dir: gimpplugindir / 'plug-ins' / plugin_name) plugin_executables += [twain.full_path()]