Commit 9fb71758163d6027398142884db14e7859897388
Exists in
develop
Merge branch 'develop' into macos
Showing
10 changed files
with
213 additions
and
173 deletions
Show diff stats
src/main/windows/tools.c
src/objects/application/application.c
@@ -278,9 +278,27 @@ static void pw3270Application_init(pw3270Application *app) { | @@ -278,9 +278,27 @@ static void pw3270Application_init(pw3270Application *app) { | ||
278 | g_settings_bind(app->settings, "ui-style", app, "ui-style", G_SETTINGS_BIND_DEFAULT); | 278 | g_settings_bind(app->settings, "ui-style", app, "ui-style", G_SETTINGS_BIND_DEFAULT); |
279 | } | 279 | } |
280 | 280 | ||
281 | + // Load plugin from default paths. | ||
281 | { | 282 | { |
282 | - lib3270_autoptr(char) plugin_path = lib3270_build_data_filename("plugins",NULL); | ||
283 | - pw3270_load_plugins_from_path(app, plugin_path); | 283 | + const char *paths[] = { |
284 | + "plugins", | ||
285 | + G_STRINGIFY(PRODUCT_NAME) "-plugins", | ||
286 | + "lib\\plugins", | ||
287 | + "lib\\" G_STRINGIFY(PRODUCT_NAME) "-plugins", | ||
288 | + }; | ||
289 | + size_t ix; | ||
290 | + | ||
291 | + g_autofree gchar * install = g_win32_get_package_installation_directory_of_module(NULL); | ||
292 | + | ||
293 | + for(ix = 0; ix < G_N_ELEMENTS(paths);ix++) { | ||
294 | + g_autofree gchar * path = g_build_filename(install,paths[ix],NULL); | ||
295 | + g_message("Checking '%s' for plugin files",path); | ||
296 | + if(g_file_test(path,G_FILE_TEST_IS_DIR)) { | ||
297 | + pw3270_load_plugins_from_path(app, path); | ||
298 | + break; | ||
299 | + } | ||
300 | + } | ||
301 | + | ||
284 | } | 302 | } |
285 | 303 | ||
286 | #elif defined(__APPLE__) | 304 | #elif defined(__APPLE__) |
src/objects/application/plugins.c
@@ -65,6 +65,10 @@ void pw3270_load_plugins_from_path(pw3270Application *app, const char *path) { | @@ -65,6 +65,10 @@ void pw3270_load_plugins_from_path(pw3270Application *app, const char *path) { | ||
65 | 65 | ||
66 | } | 66 | } |
67 | 67 | ||
68 | + } else { | ||
69 | + | ||
70 | + g_warning("Can't load plugins from %s: %s",path,"Invalid path"); | ||
71 | + | ||
68 | } | 72 | } |
69 | 73 | ||
70 | } | 74 | } |
src/objects/settings/gsettings.c
@@ -100,13 +100,13 @@ | @@ -100,13 +100,13 @@ | ||
100 | schema_id, | 100 | schema_id, |
101 | TRUE); | 101 | TRUE); |
102 | 102 | ||
103 | - g_message("Loading '%s'",names[ix]); | 103 | +// g_message("Loading '%s'",names[ix]); |
104 | settings = g_settings_new_full(schema, NULL, NULL); | 104 | settings = g_settings_new_full(schema, NULL, NULL); |
105 | 105 | ||
106 | g_settings_schema_source_unref(source); | 106 | g_settings_schema_source_unref(source); |
107 | 107 | ||
108 | if(settings) { | 108 | if(settings) { |
109 | - g_message("Got gsettings from %s",names[ix]); | 109 | +// g_message("Got gsettings from %s",names[ix]); |
110 | return settings; | 110 | return settings; |
111 | } | 111 | } |
112 | 112 | ||
@@ -157,7 +157,7 @@ | @@ -157,7 +157,7 @@ | ||
157 | 157 | ||
158 | GSettings * pw3270_application_settings_new() { | 158 | GSettings * pw3270_application_settings_new() { |
159 | return settings_new(G_STRINGIFY(PRODUCT_ID)); | 159 | return settings_new(G_STRINGIFY(PRODUCT_ID)); |
160 | - } | 160 | + } |
161 | 161 | ||
162 | GSettings * pw3270_application_window_settings_new() { | 162 | GSettings * pw3270_application_window_settings_new() { |
163 | return settings_new(G_STRINGIFY(PRODUCT_ID) ".window"); | 163 | return settings_new(G_STRINGIFY(PRODUCT_ID) ".window"); |
win/bundle.common
@@ -18,13 +18,6 @@ | @@ -18,13 +18,6 @@ | ||
18 | # along with this program. If not, see <https://www.gnu.org/licenses/>. | 18 | # along with this program. If not, see <https://www.gnu.org/licenses/>. |
19 | # | 19 | # |
20 | 20 | ||
21 | -# | ||
22 | -# References: | ||
23 | -# | ||
24 | -# https://www.gtk.org/docs/installations/windows/ | ||
25 | -# http://drup.org/gtk-warning-error-loading-icon-couldnt-recognize-image-file-format | ||
26 | -# | ||
27 | - | ||
28 | # Check command-line arguments | 21 | # Check command-line arguments |
29 | argument() { | 22 | argument() { |
30 | 23 | ||
@@ -52,7 +45,10 @@ if [ "$?" == "0" ]; then | @@ -52,7 +45,10 @@ if [ "$?" == "0" ]; then | ||
52 | echo "" | 45 | echo "" |
53 | echo " --help Help options (this screen)" | 46 | echo " --help Help options (this screen)" |
54 | echo " --zip Build zipfile" | 47 | echo " --zip Build zipfile" |
55 | - echo " --nsi Build nsi installer" | 48 | + |
49 | + if [ -e "${srcdir}/win/${PACKAGE_NAME}.nsi" ]; then | ||
50 | + echo " --nsi Build nsi installer" | ||
51 | + fi | ||
56 | echo " --upload Upload bundle to github" | 52 | echo " --upload Upload bundle to github" |
57 | fi | 53 | fi |
58 | 54 | ||
@@ -90,11 +86,6 @@ if [ -z ${PACKAGE_VERSION} ]; then | @@ -90,11 +86,6 @@ if [ -z ${PACKAGE_VERSION} ]; then | ||
90 | exit -1 | 86 | exit -1 |
91 | fi | 87 | fi |
92 | 88 | ||
93 | -GTK_PREFIX=$(${PKG_CONFIG} --variable=prefix gtk+-3.0) | ||
94 | -GTK_BINARY_VERSION=$(${PKG_CONFIG} --variable=gtk_binary_version gtk+-3.0) | ||
95 | -GTK_LIBDIR=$(echo $(${PKG_CONFIG} --variable=libdir gtk+-3.0) | sed "s@^C:/@/c/@g") | ||
96 | -GDK_LOADERS=$(echo $(${PKG_CONFIG} --variable=gdk_pixbuf_binarydir gdk-pixbuf-2.0) | sed -e "s@${GTK_PREFIX}@@g") | ||
97 | - | ||
98 | mkdir -p .bin/bundle | 89 | mkdir -p .bin/bundle |
99 | if [ "$?" != "0" ]; then | 90 | if [ "$?" != "0" ]; then |
100 | echo "Cant mkdir base buildroot" | 91 | echo "Cant mkdir base buildroot" |
@@ -304,98 +295,6 @@ install_locale() { | @@ -304,98 +295,6 @@ install_locale() { | ||
304 | rm -f ${FILENAMES} | 295 | rm -f ${FILENAMES} |
305 | } | 296 | } |
306 | 297 | ||
307 | -install_schemas() { | ||
308 | - | ||
309 | - mkdir -p ${buildroot}${MINGW_PREFIX}/share/glib-2.0/schemas | ||
310 | - | ||
311 | - schemas=" | ||
312 | - org.gtk.Settings.FileChooser.gschema.xml | ||
313 | - gschema.dtd | ||
314 | - " | ||
315 | - | ||
316 | - for schema in ${schemas} | ||
317 | - do | ||
318 | - cp -v "${MINGW_PREFIX}/share/glib-2.0/schemas/${schema}" "${buildroot}${MINGW_PREFIX}/share/glib-2.0/schemas" | ||
319 | - if [ "$?" != "0" ]; then | ||
320 | - exit -1 | ||
321 | - fi | ||
322 | - done | ||
323 | - | ||
324 | - glib-compile-schemas \ | ||
325 | - --targetdir="${buildroot}${MINGW_PREFIX}/share/glib-2.0/schemas" \ | ||
326 | - "${buildroot}${MINGW_PREFIX}/share/glib-2.0/schemas" | ||
327 | - | ||
328 | - if [ "$?" != "0" ]; then | ||
329 | - exit -1 | ||
330 | - fi | ||
331 | -} | ||
332 | - | ||
333 | -install_theme() { | ||
334 | - | ||
335 | - mkdir -p "${buildroot}${MINGW_PREFIX}/etc" | ||
336 | - cp -rv "${MINGW_PREFIX}/etc/gtk-3.0" "${buildroot}${MINGW_PREFIX}/etc" | ||
337 | - if [ "$?" != "0" ]; then | ||
338 | - exit -1 | ||
339 | - fi | ||
340 | - | ||
341 | - # https://stackoverflow.com/questions/37035936/how-to-get-native-windows-decorations-on-gtk3-on-windows-7-and-msys2 | ||
342 | - mkdir -p ${buildroot}${MINGW_PREFIX}/etc/gtk-3.0 | ||
343 | - rm -f ${buildroot}${MINGW_PREFIX}/etc/gtk-3.0/settings.ini | ||
344 | - rm -f ${buildroot}${MINGW_PREFIX}/etc/gtk-3.0/gtkrc | ||
345 | - | ||
346 | - echo "[Settings]" > ${buildroot}${MINGW_PREFIX}/etc/gtk-3.0/settings.ini | ||
347 | - echo "gtk-theme-name=${1}" >> ${buildroot}${MINGW_PREFIX}/etc/gtk-3.0/settings.ini | ||
348 | - | ||
349 | - if [ -e "${srcdir}/win/gtk.css" ]; then | ||
350 | - mkdir -p "${buildroot}${MINGW_PREFIX}/share/themes/Default/gtk-3.0" | ||
351 | - cp "${srcdir}/win/gtk.css" "${buildroot}${MINGW_PREFIX}/share/themes/Default/gtk-3.0/gtk.css" | ||
352 | - fi | ||
353 | - | ||
354 | -} | ||
355 | - | ||
356 | -install_icons() { | ||
357 | - | ||
358 | - mkdir -p "${buildroot}${MINGW_PREFIX}/share/icons" | ||
359 | - | ||
360 | - if [ -d "${MINGW_PREFIX}/share/icons/${1}" ]; then | ||
361 | - | ||
362 | - cp -rv "${MINGW_PREFIX}/share/icons/${1}" "${buildroot}${MINGW_PREFIX}/share/icons" | ||
363 | - if [ "$?" != 0 ]; then | ||
364 | - echo "Can´t copy ${1} icons" | ||
365 | - exit -1 | ||
366 | - fi | ||
367 | - | ||
368 | - elif [ -d "/usr/share/icons/${1}" ]; then | ||
369 | - | ||
370 | - cp -rv "/usr/share/icons/${1}" "${buildroot}${MINGW_PREFIX}/share/icons" | ||
371 | - if [ "$?" != 0 ]; then | ||
372 | - echo "Can´t copy ${1} icons" | ||
373 | - exit -1 | ||
374 | - fi | ||
375 | - | ||
376 | - else | ||
377 | - | ||
378 | - echo "Can´t find ${1} icons" | ||
379 | - exit -1 | ||
380 | - | ||
381 | - fi | ||
382 | - | ||
383 | -} | ||
384 | - | ||
385 | -install_loaders() { | ||
386 | - | ||
387 | - if [ -d "${MINGW_PREFIX}${GDK_LOADERS}" ]; then | ||
388 | - mkdir -p "${buildroot}/${MINGW_PREFIX}${GDK_LOADERS}" | ||
389 | - cp -rv ${MINGW_PREFIX}${GDK_LOADERS}/* "${buildroot}/${MINGW_PREFIX}${GDK_LOADERS}" | ||
390 | - if [ "$?" != "0" ]; then | ||
391 | - exit -1 | ||
392 | - fi | ||
393 | - | ||
394 | - find ${buildroot}/${MINGW_PREFIX}${GDK_LOADERS} -iname "*.a" -exec rm -f {} \; | ||
395 | - | ||
396 | - fi | ||
397 | - | ||
398 | -} | ||
399 | 298 | ||
400 | make_zip() { | 299 | make_zip() { |
401 | 300 | ||
@@ -433,6 +332,7 @@ make_nsis() { | @@ -433,6 +332,7 @@ make_nsis() { | ||
433 | -DWITHIPC \ | 332 | -DWITHIPC \ |
434 | -DWITHPLUGINS \ | 333 | -DWITHPLUGINS \ |
435 | -DWITHSDK \ | 334 | -DWITHSDK \ |
335 | + -DPKGDIR=${buildroot}${MINGW_PREFIX} \ | ||
436 | ${buildroot}${MINGW_PREFIX}/${PACKAGE_NAME}.nsi | 336 | ${buildroot}${MINGW_PREFIX}/${PACKAGE_NAME}.nsi |
437 | if [ "$?" != "0" ]; then | 337 | if [ "$?" != "0" ]; then |
438 | echo "Cant build nsis script" | 338 | echo "Cant build nsis script" |
@@ -456,25 +356,47 @@ make_nsis() { | @@ -456,25 +356,47 @@ make_nsis() { | ||
456 | fi | 356 | fi |
457 | } | 357 | } |
458 | 358 | ||
459 | -install_runtime() { | 359 | +install_license() { |
360 | + mkdir -p "${buildroot}${MINGW_PREFIX}/usr/share/${PACKAGE_NAME}" | ||
361 | + cp "${srcdir}/LICENSE" "${buildroot}${MINGW_PREFIX}/usr/share/${PACKAGE_NAME}" | ||
362 | + if [ "$?" != "0" ]; then | ||
363 | + echo "Cant copy LICENSE" | ||
364 | + exit -1 | ||
365 | + fi | ||
366 | +} | ||
460 | 367 | ||
461 | - install_loaders | 368 | +install_runtime() { |
462 | install_bin | 369 | install_bin |
463 | install_locale | 370 | install_locale |
464 | - install_schemas | ||
465 | - install_theme "Adwaita" | ||
466 | - install_icons "Adwaita" | ||
467 | - | ||
468 | } | 371 | } |
469 | 372 | ||
470 | -make_packages() { | 373 | +build_package() { |
471 | 374 | ||
472 | - mkdir -p "${buildroot}${MINGW_PREFIX}/nsi" | ||
473 | - cp "${srcdir}/win/pw3270.nsi" "${buildroot}${MINGW_PREFIX}/${PACKAGE_NAME}.nsi" | 375 | + # Build |
376 | + make -C "${srcdir}" all | ||
474 | if [ "$?" != "0" ]; then | 377 | if [ "$?" != "0" ]; then |
475 | - echo "Cant copy nsis script" | ||
476 | - fi | 378 | + echo "Build failed" |
379 | + exit -1 | ||
380 | + fi | ||
477 | 381 | ||
382 | + make -C "${srcdir}" "DESTDIR=${buildroot}" install | ||
383 | + if [ "$?" != "0" ]; then | ||
384 | + echo "Install failed" | ||
385 | + exit -1 | ||
386 | + fi | ||
387 | + | ||
388 | +} | ||
389 | + | ||
390 | +make_packages() { | ||
391 | + | ||
392 | + if [ -e "${srcdir}/win/${PACKAGE_NAME}.nsi" ]; then | ||
393 | + mkdir -p "${buildroot}${MINGW_PREFIX}/nsi" | ||
394 | + cp "${srcdir}/win/${PACKAGE_NAME}.nsi" "${buildroot}${MINGW_PREFIX}/${PACKAGE_NAME}.nsi" | ||
395 | + if [ "$?" != "0" ]; then | ||
396 | + echo "Cant copy nsis script" | ||
397 | + fi | ||
398 | + fi | ||
399 | + | ||
478 | argument "zip" > /dev/null | 400 | argument "zip" > /dev/null |
479 | if [ "$?" == "0" ]; then | 401 | if [ "$?" == "0" ]; then |
480 | make_zip | 402 | make_zip |
win/bundle.cross
@@ -18,20 +18,13 @@ | @@ -18,20 +18,13 @@ | ||
18 | # along with this program. If not, see <https://www.gnu.org/licenses/>. | 18 | # along with this program. If not, see <https://www.gnu.org/licenses/>. |
19 | # | 19 | # |
20 | 20 | ||
21 | -# | ||
22 | -# References: | ||
23 | -# | ||
24 | -# https://www.gtk.org/docs/installations/windows/ | ||
25 | -# http://drup.org/gtk-warning-error-loading-icon-couldnt-recognize-image-file-format | ||
26 | -# | ||
27 | - | ||
28 | MINGW_PREFIX="/usr/x86_64-w64-mingw32/sys-root/mingw" | 21 | MINGW_PREFIX="/usr/x86_64-w64-mingw32/sys-root/mingw" |
29 | PKG_CONFIG="/usr/bin/x86_64-w64-mingw32-pkg-config" | 22 | PKG_CONFIG="/usr/bin/x86_64-w64-mingw32-pkg-config" |
30 | MINGW_PACKAGE_PREFIX="mingw64" | 23 | MINGW_PACKAGE_PREFIX="mingw64" |
31 | REPOSITORY_NAME="pw3270" | 24 | REPOSITORY_NAME="pw3270" |
32 | 25 | ||
33 | # Load bundle functions | 26 | # Load bundle functions |
34 | -. "$(dirname $(readlink -f "${0}"))/bundle.common" | 27 | +. "$(dirname $(readlink -f "${0}"))/bundle.gtk3" |
35 | 28 | ||
36 | argument "help" > /dev/null | 29 | argument "help" > /dev/null |
37 | if [ "$?" == "0" ]; then | 30 | if [ "$?" == "0" ]; then |
@@ -83,23 +76,6 @@ install_prereqs() { | @@ -83,23 +76,6 @@ install_prereqs() { | ||
83 | done | 76 | done |
84 | } | 77 | } |
85 | 78 | ||
86 | -build_package() { | ||
87 | - | ||
88 | - # Build | ||
89 | - make -C "${srcdir}" all | ||
90 | - if [ "$?" != "0" ]; then | ||
91 | - echo "Build failed" | ||
92 | - exit -1 | ||
93 | - fi | ||
94 | - | ||
95 | - make -C "${srcdir}" "DESTDIR=${buildroot}" install | ||
96 | - if [ "$?" != "0" ]; then | ||
97 | - echo "Install failed" | ||
98 | - exit -1 | ||
99 | - fi | ||
100 | - | ||
101 | -} | ||
102 | - | ||
103 | argument "install-requires" > /dev/null | 79 | argument "install-requires" > /dev/null |
104 | if [ "$?" == "0" ]; then | 80 | if [ "$?" == "0" ]; then |
105 | install_prereqs | 81 | install_prereqs |
@@ -193,18 +169,9 @@ unpack_rpm() { | @@ -193,18 +169,9 @@ unpack_rpm() { | ||
193 | 169 | ||
194 | } | 170 | } |
195 | 171 | ||
196 | -install_license() { | ||
197 | - mkdir -p "${buildroot}${MINGW_PREFIX}/usr/share/${PACKAGE_NAME}" | ||
198 | - cp "${srcdir}/LICENSE" "${buildroot}${MINGW_PREFIX}/share/${PACKAGE_NAME}" | ||
199 | - if [ "$?" != "0" ]; then | ||
200 | - echo "Cant copy LICENSE" | ||
201 | - exit -1 | ||
202 | - fi | ||
203 | -} | ||
204 | - | ||
205 | unpack_rpm | 172 | unpack_rpm |
206 | 173 | ||
207 | -install_runtime | 174 | +install_gtk3_runtime |
208 | install_license | 175 | install_license |
209 | 176 | ||
210 | make_packages | 177 | make_packages |
@@ -0,0 +1,139 @@ | @@ -0,0 +1,139 @@ | ||
1 | +#!/bin/bash | ||
2 | +# | ||
3 | +# SPDX-License-Identifier: LGPL-3.0-or-later | ||
4 | +# | ||
5 | +# Copyright (C) 2023 Perry Werneck <perry.werneck@gmail.com> | ||
6 | +# | ||
7 | +# This program is free software: you can redistribute it and/or modify | ||
8 | +# it under the terms of the GNU Lesser General Public License as published | ||
9 | +# by the Free Software Foundation, either version 3 of the License, or | ||
10 | +# (at your option) any later version. | ||
11 | +# | ||
12 | +# This program is distributed in the hope that it will be useful, | ||
13 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
14 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
15 | +# GNU General Public License for more details. | ||
16 | +# | ||
17 | +# You should have received a copy of the GNU Lesser General Public License | ||
18 | +# along with this program. If not, see <https://www.gnu.org/licenses/>. | ||
19 | +# | ||
20 | + | ||
21 | +# | ||
22 | +# References: | ||
23 | +# | ||
24 | +# https://www.gtk.org/docs/installations/windows/ | ||
25 | +# http://drup.org/gtk-warning-error-loading-icon-couldnt-recognize-image-file-format | ||
26 | +# | ||
27 | + | ||
28 | +# Load bundle functions | ||
29 | +. "$(dirname $(readlink -f "${0}"))/bundle.common" | ||
30 | + | ||
31 | +GTK_PREFIX=$(${PKG_CONFIG} --variable=prefix gtk+-3.0) | ||
32 | +GTK_BINARY_VERSION=$(${PKG_CONFIG} --variable=gtk_binary_version gtk+-3.0) | ||
33 | +GTK_LIBDIR=$(echo $(${PKG_CONFIG} --variable=libdir gtk+-3.0) | sed "s@^C:/@/c/@g") | ||
34 | +GDK_LOADERS=$(echo $(${PKG_CONFIG} --variable=gdk_pixbuf_binarydir gdk-pixbuf-2.0) | sed -e "s@${GTK_PREFIX}@@g") | ||
35 | + | ||
36 | +install_schemas() { | ||
37 | + | ||
38 | + mkdir -p ${buildroot}${MINGW_PREFIX}/share/glib-2.0/schemas | ||
39 | + | ||
40 | + schemas=" | ||
41 | + org.gtk.Settings.FileChooser.gschema.xml | ||
42 | + gschema.dtd | ||
43 | + " | ||
44 | + | ||
45 | + for schema in ${schemas} | ||
46 | + do | ||
47 | + cp -v "${MINGW_PREFIX}/share/glib-2.0/schemas/${schema}" "${buildroot}${MINGW_PREFIX}/share/glib-2.0/schemas" | ||
48 | + if [ "$?" != "0" ]; then | ||
49 | + exit -1 | ||
50 | + fi | ||
51 | + done | ||
52 | + | ||
53 | + glib-compile-schemas \ | ||
54 | + --targetdir="${buildroot}${MINGW_PREFIX}/share/glib-2.0/schemas" \ | ||
55 | + "${buildroot}${MINGW_PREFIX}/share/glib-2.0/schemas" | ||
56 | + | ||
57 | + if [ "$?" != "0" ]; then | ||
58 | + exit -1 | ||
59 | + fi | ||
60 | +} | ||
61 | + | ||
62 | +install_theme() { | ||
63 | + | ||
64 | + mkdir -p "${buildroot}${MINGW_PREFIX}/etc" | ||
65 | + cp -rv "${MINGW_PREFIX}/etc/gtk-3.0" "${buildroot}${MINGW_PREFIX}/etc" | ||
66 | + if [ "$?" != "0" ]; then | ||
67 | + exit -1 | ||
68 | + fi | ||
69 | + | ||
70 | + # https://stackoverflow.com/questions/37035936/how-to-get-native-windows-decorations-on-gtk3-on-windows-7-and-msys2 | ||
71 | + mkdir -p ${buildroot}${MINGW_PREFIX}/etc/gtk-3.0 | ||
72 | + rm -f ${buildroot}${MINGW_PREFIX}/etc/gtk-3.0/settings.ini | ||
73 | + rm -f ${buildroot}${MINGW_PREFIX}/etc/gtk-3.0/gtkrc | ||
74 | + | ||
75 | + echo "[Settings]" > ${buildroot}${MINGW_PREFIX}/etc/gtk-3.0/settings.ini | ||
76 | + echo "gtk-theme-name=${1}" >> ${buildroot}${MINGW_PREFIX}/etc/gtk-3.0/settings.ini | ||
77 | + | ||
78 | + if [ -e "${srcdir}/win/gtk.css" ]; then | ||
79 | + mkdir -p "${buildroot}${MINGW_PREFIX}/share/themes/Default/gtk-3.0" | ||
80 | + cp "${srcdir}/win/gtk.css" "${buildroot}${MINGW_PREFIX}/share/themes/Default/gtk-3.0/gtk.css" | ||
81 | + fi | ||
82 | + | ||
83 | +} | ||
84 | + | ||
85 | +install_icons() { | ||
86 | + | ||
87 | + mkdir -p "${buildroot}${MINGW_PREFIX}/share/icons" | ||
88 | + | ||
89 | + if [ -d "${MINGW_PREFIX}/share/icons/${1}" ]; then | ||
90 | + | ||
91 | + cp -rv "${MINGW_PREFIX}/share/icons/${1}" "${buildroot}${MINGW_PREFIX}/share/icons" | ||
92 | + if [ "$?" != 0 ]; then | ||
93 | + echo "Can´t copy ${1} icons" | ||
94 | + exit -1 | ||
95 | + fi | ||
96 | + | ||
97 | + elif [ -d "/usr/share/icons/${1}" ]; then | ||
98 | + | ||
99 | + cp -rv "/usr/share/icons/${1}" "${buildroot}${MINGW_PREFIX}/share/icons" | ||
100 | + if [ "$?" != 0 ]; then | ||
101 | + echo "Can´t copy ${1} icons" | ||
102 | + exit -1 | ||
103 | + fi | ||
104 | + | ||
105 | + else | ||
106 | + | ||
107 | + echo "Can´t find ${1} icons" | ||
108 | + exit -1 | ||
109 | + | ||
110 | + fi | ||
111 | + | ||
112 | +} | ||
113 | + | ||
114 | +install_loaders() { | ||
115 | + | ||
116 | + if [ -d "${MINGW_PREFIX}${GDK_LOADERS}" ]; then | ||
117 | + mkdir -p "${buildroot}/${MINGW_PREFIX}${GDK_LOADERS}" | ||
118 | + cp -rv ${MINGW_PREFIX}${GDK_LOADERS}/* "${buildroot}/${MINGW_PREFIX}${GDK_LOADERS}" | ||
119 | + if [ "$?" != "0" ]; then | ||
120 | + exit -1 | ||
121 | + fi | ||
122 | + | ||
123 | + find ${buildroot}/${MINGW_PREFIX}${GDK_LOADERS} -iname "*.a" -exec rm -f {} \; | ||
124 | + | ||
125 | + fi | ||
126 | + | ||
127 | +} | ||
128 | + | ||
129 | +install_gtk3_runtime() { | ||
130 | + | ||
131 | + install_loaders | ||
132 | + install_bin | ||
133 | + install_locale | ||
134 | + install_schemas | ||
135 | + install_theme "Adwaita" | ||
136 | + install_icons "Adwaita" | ||
137 | + | ||
138 | +} | ||
139 | + |
win/bundle.msys
@@ -2,7 +2,7 @@ | @@ -2,7 +2,7 @@ | ||
2 | # | 2 | # |
3 | # SPDX-License-Identifier: LGPL-3.0-or-later | 3 | # SPDX-License-Identifier: LGPL-3.0-or-later |
4 | # | 4 | # |
5 | -# Copyright (C) 2021 Perry Werneck <perry.werneck@gmail.com> | 5 | +# Copyright (C) 2023 Perry Werneck <perry.werneck@gmail.com> |
6 | # | 6 | # |
7 | # This program is free software: you can redistribute it and/or modify | 7 | # This program is free software: you can redistribute it and/or modify |
8 | # it under the terms of the GNU Lesser General Public License as published | 8 | # it under the terms of the GNU Lesser General Public License as published |
@@ -18,15 +18,8 @@ | @@ -18,15 +18,8 @@ | ||
18 | # along with this program. If not, see <https://www.gnu.org/licenses/>. | 18 | # along with this program. If not, see <https://www.gnu.org/licenses/>. |
19 | # | 19 | # |
20 | 20 | ||
21 | -# | ||
22 | -# References: | ||
23 | -# | ||
24 | -# https://www.gtk.org/docs/installations/windows/ | ||
25 | -# http://drup.org/gtk-warning-error-loading-icon-couldnt-recognize-image-file-format | ||
26 | -# | ||
27 | - | ||
28 | # Load bundle functions | 21 | # Load bundle functions |
29 | -. "$(dirname $(readlink -f "${0}"))/bundle.common" | 22 | +. "$(dirname $(readlink -f "${0}"))/bundle.gtk3" |
30 | 23 | ||
31 | prepare | 24 | prepare |
32 | 25 | ||
@@ -40,11 +33,6 @@ do | @@ -40,11 +33,6 @@ do | ||
40 | fi | 33 | fi |
41 | done | 34 | done |
42 | 35 | ||
43 | -install_loaders | ||
44 | -install_bin | ||
45 | -install_locale | ||
46 | -install_schemas | ||
47 | -install_theme "Adwaita" | ||
48 | -install_icons "Adwaita" | 36 | +install_gtk3_runtime |
49 | 37 | ||
50 | 38 |
win/ci-build.sh
@@ -40,7 +40,7 @@ cd $(dirname $(dirname $(readlink -f ${0}))) | @@ -40,7 +40,7 @@ cd $(dirname $(dirname $(readlink -f ${0}))) | ||
40 | # Install pre-reqs | 40 | # Install pre-reqs |
41 | # | 41 | # |
42 | echo "Installing pre-reqs..." | 42 | echo "Installing pre-reqs..." |
43 | -pacman -U --noconfirm *.pkg.tar.zst || die "pacman failure" | 43 | +pacman -U --noconfirm *.pkg.tar.zst || die "pre-reqs failure" |
44 | 44 | ||
45 | # | 45 | # |
46 | # Build | 46 | # Build |
win/pw3270.nsi.in
@@ -222,6 +222,7 @@ SubSection "@PRODUCT_NAME@" SecMain | @@ -222,6 +222,7 @@ SubSection "@PRODUCT_NAME@" SecMain | ||
222 | Section "Remote control" IPCPlugin | 222 | Section "Remote control" IPCPlugin |
223 | 223 | ||
224 | ${DisableX64FSRedirection} | 224 | ${DisableX64FSRedirection} |
225 | + | ||
225 | CreateDirectory "$INSTDIR\lib\@PRODUCT_NAME@-plugins" | 226 | CreateDirectory "$INSTDIR\lib\@PRODUCT_NAME@-plugins" |
226 | file "/oname=$INSTDIR\lib\@PRODUCT_NAME@-plugins\ipcserver.dll" "lib\@PRODUCT_NAME@-plugins\ipcserver.dll" | 227 | file "/oname=$INSTDIR\lib\@PRODUCT_NAME@-plugins\ipcserver.dll" "lib\@PRODUCT_NAME@-plugins\ipcserver.dll" |
227 | 228 |