Commit 17e95379118ea3924440ba3c96385e6cac1e915f
Committed by
GitHub
Exists in
develop
Merge pull request #53 from PerryWerneck/winpkg
Updating windows package.
Showing
42 changed files
with
1593 additions
and
1320 deletions
Show diff stats
... | ... | @@ -0,0 +1,84 @@ |
1 | +--- | |
2 | +name: WinPKG | |
3 | +on: | |
4 | + pull_request: | |
5 | + branches: | |
6 | + - master | |
7 | + push: | |
8 | + branches: | |
9 | + - winpkg | |
10 | +jobs: | |
11 | + msys2-mingw64: | |
12 | + name: Publish for Windows 64 | |
13 | + runs-on: windows-latest | |
14 | + defaults: | |
15 | + run: | |
16 | + shell: msys2 {0} | |
17 | + steps: | |
18 | + - uses: actions/checkout@v3 | |
19 | + - uses: oprypin/find-latest-tag@v1 | |
20 | + id: gettag | |
21 | + with: | |
22 | + repository: PerryWerneck/pw3270 | |
23 | + sort-tags: true | |
24 | + releases-only: true | |
25 | + - uses: msys2/setup-msys2@v2 | |
26 | + with: | |
27 | + msystem: mingw64 | |
28 | + update: true | |
29 | + install: xz dos2unix mingw-w64-x86_64-gcc automake autoconf make git pkgconf | |
30 | + mingw-w64-x86_64-gettext gettext-devel mingw-w64-x86_64-openssl | |
31 | + libtool mingw-w64-x86_64-gtk3 mingw-w64-x86_64-librsvg mingw-w64-x86_64-gdk-pixbuf2 | |
32 | + mingw-w64-x86_64-optipng mingw-w64-x86_64-nsis | |
33 | + - uses: robinraju/release-downloader@v1.7 | |
34 | + with: | |
35 | + repository: "PerryWerneck/lib3270" | |
36 | + latest: true | |
37 | + fileName: "mingw-w64-x86_64-lib3270-5.4-0-x86_64.pkg.tar.zst" | |
38 | + - uses: robinraju/release-downloader@v1.7 | |
39 | + with: | |
40 | + repository: "PerryWerneck/libv3270" | |
41 | + latest: true | |
42 | + fileName: "mingw-w64-x86_64-libv3270-5.4-0-x86_64.pkg.tar.zst" | |
43 | + - name: BuildApp | |
44 | + run: ./win/ci-build.sh | |
45 | + - uses: ncipollo/release-action@v1 | |
46 | + with: | |
47 | + tag: ${{ steps.gettag.outputs.tag }} | |
48 | + artifacts: "*-pw3270-*.pkg.tar.zst" | |
49 | + allowUpdates: true | |
50 | + draft: true | |
51 | + makeLatest: true | |
52 | + omitBody: true | |
53 | + omitPrereleaseDuringUpdate: true | |
54 | + replacesArtifacts: true | |
55 | + - uses: robinraju/release-downloader@v1.7 | |
56 | + with: | |
57 | + repository: PerryWerneck/libipc3270 | |
58 | + latest: true | |
59 | + fileName: mingw-w64-x86_64-libipc3270-5.5-0-x86_64.pkg.tar.zst | |
60 | + - uses: robinraju/release-downloader@v1.7 | |
61 | + with: | |
62 | + repository: PerryWerneck/libhllapi | |
63 | + latest: true | |
64 | + fileName: mingw-w64-x86_64-libhllapi-5.5-0-x86_64.pkg.tar.zst | |
65 | + - uses: robinraju/release-downloader@v1.7 | |
66 | + with: | |
67 | + repository: PerryWerneck/pw3270-plugin-ipc | |
68 | + latest: true | |
69 | + fileName: mingw-w64-x86_64-pw3270-plugin-ipc-5.5-0-x86_64.pkg.tar.zst | |
70 | + - name: Make bundle | |
71 | + run: ./win/bundle.msys | |
72 | + - name: Make Package | |
73 | + run: tar -C ./.bin/bundle -Jcf mingw-w64-x86_64-pw3270-bundle-x86_64.tar.xz . | |
74 | + - uses: ncipollo/release-action@v1 | |
75 | + with: | |
76 | + tag: ${{ steps.gettag.outputs.tag }} | |
77 | + artifacts: "*-pw3270-*.tar.xz" | |
78 | + allowUpdates: true | |
79 | + draft: true | |
80 | + makeLatest: true | |
81 | + omitBody: true | |
82 | + omitPrereleaseDuringUpdate: true | |
83 | + replacesArtifacts: true | |
84 | + | ... | ... |
.gitignore
Makefile.in
... | ... | @@ -29,6 +29,7 @@ datarootdir=@datarootdir@ |
29 | 29 | localedir=@localedir@ |
30 | 30 | docdir=@docdir@ |
31 | 31 | sysconfdir=@sysconfdir@ |
32 | +datadir="$(datarootdir)/@PRODUCT_NAME@" | |
32 | 33 | |
33 | 34 | #---[ Configuration ]-------------------------------------------------------------------- |
34 | 35 | |
... | ... | @@ -72,7 +73,6 @@ MSGCAT=@MSGCAT@ |
72 | 73 | WINDRES=@WINDRES@ |
73 | 74 | AR=@AR@ |
74 | 75 | VALGRIND=@VALGRIND@ |
75 | -CONVERT=@CONVERT@ | |
76 | 76 | STRIP=@STRIP@ |
77 | 77 | |
78 | 78 | #---[ Build Paths ]---------------------------------------------------------------------- |
... | ... | @@ -127,6 +127,13 @@ $(OBJDBG)/%.o: \ |
127 | 127 | -DDEBUG=1 \ |
128 | 128 | -o $@ -c $< |
129 | 129 | |
130 | +%.ico: \ | |
131 | + $(srcdir)/branding/%.ico | |
132 | + | |
133 | + @echo $< ... | |
134 | + @$(MKDIR) $(@D) | |
135 | + @cp "$<" "$@" | |
136 | + | |
130 | 137 | $(OBJDBG)/%.o: \ |
131 | 138 | %.rc \ |
132 | 139 | $(PRODUCT_NAME).ico |
... | ... | @@ -218,30 +225,6 @@ install-%: \ |
218 | 225 | prefix=$(prefix) \ |
219 | 226 | install |
220 | 227 | |
221 | -%.ico: \ | |
222 | - $(srcdir)/branding/%.svg | |
223 | - | |
224 | - @echo $@ ... | |
225 | - @$(MKDIR) $(@D) | |
226 | - @$(CONVERT) \ | |
227 | - -density 384 \ | |
228 | - -background transparent \ | |
229 | - $< \ | |
230 | - -define icon:auto-resize \ | |
231 | - -colors 256 \ | |
232 | - $@ | |
233 | - | |
234 | -%.png: \ | |
235 | - $(srcdir)/branding/%.svg | |
236 | - | |
237 | - @echo $@ ... | |
238 | - @$(MKDIR) $(@D) | |
239 | - @$(CONVERT) \ | |
240 | - +antialias \ | |
241 | - -background transparent \ | |
242 | - $< \ | |
243 | - $@ | |
244 | - | |
245 | 228 | #---[ Main Target ]---------------------------------------------------------------------- |
246 | 229 | |
247 | 230 | all: \ |
... | ... | @@ -318,7 +301,7 @@ install-macos-application: \ |
318 | 301 | $(DESTDIR)$(bindir)/$(PRODUCT_NAME)@EXEEXT@ |
319 | 302 | |
320 | 303 | install-windows-application: \ |
321 | - $(PRODUCT_NAME).png \ | |
304 | + branding/$(PRODUCT_NAME).png \ | |
322 | 305 | strip |
323 | 306 | |
324 | 307 | @$(MKDIR) \ |
... | ... | @@ -332,7 +315,7 @@ install-windows-application: \ |
332 | 315 | $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME) |
333 | 316 | |
334 | 317 | @$(INSTALL_DATA) \ |
335 | - $(PRODUCT_NAME).png \ | |
318 | + branding/$(PRODUCT_NAME).png \ | |
336 | 319 | $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/$(PRODUCT_NAME).png |
337 | 320 | |
338 | 321 | @$(INSTALL_DATA) \ | ... | ... |
branding/Makefile.in
1 | +# SPDX-License-Identifier: LGPL-3.0-or-later | |
1 | 2 | # |
2 | -# "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270 | |
3 | -# (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a | |
4 | -# aplicativos mainframe. Registro no INPI sob o nome G3270. | |
3 | +# Copyright (C) 2008 Banco do Brasil S.A. | |
5 | 4 | # |
6 | -# Copyright (C) <2008> <Banco do Brasil S.A.> | |
5 | +# This program is free software: you can redistribute it and/or modify | |
6 | +# it under the terms of the GNU Lesser General Public License as published | |
7 | +# by the Free Software Foundation, either version 3 of the License, or | |
8 | +# (at your option) any later version. | |
7 | 9 | # |
8 | -# Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob | |
9 | -# os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela | |
10 | -# Free Software Foundation. | |
10 | +# This program is distributed in the hope that it will be useful, | |
11 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
13 | +# GNU General Public License for more details. | |
11 | 14 | # |
12 | -# Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER | |
13 | -# GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO | |
14 | -# A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para | |
15 | -# obter mais detalhes. | |
16 | -# | |
17 | -# Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este | |
18 | -# programa; se não, escreva para a Free Software Foundation, Inc., 59 Temple | |
19 | -# Place, Suite 330, Boston, MA, 02111-1307, USA | |
20 | -# | |
21 | -# Contatos: | |
22 | -# | |
23 | -# perry.werneck@gmail.com (Alexandre Perry de Souza Werneck) | |
24 | -# erico.mendonca@gmail.com (Erico Mascarenhas de Mendonça) | |
15 | +# You should have received a copy of the GNU Lesser General Public License | |
16 | +# along with this program. If not, see <https://www.gnu.org/licenses/>. | |
25 | 17 | # |
26 | 18 | |
27 | 19 | PACKAGE_NAME=@PACKAGE_NAME@ |
... | ... | @@ -43,19 +35,20 @@ MKDIR=@MKDIR_P@ |
43 | 35 | INSTALL=@INSTALL@ |
44 | 36 | INSTALL_DATA=@INSTALL_DATA@ |
45 | 37 | INSTALL_PROGRAM=@INSTALL_PROGRAM@ |
46 | -CONVERT=@CONVERT@ | |
47 | 38 | DESKTOP_INSTALL=@DESKTOP_INSTALL@ |
48 | 39 | SCOUR=@SCOUR@ |
49 | 40 | APPSTREAMCLI=@APPSTREAMCLI@ |
50 | 41 | |
51 | -#---[ Rules ]---------------------------------------------------------------------------- | |
42 | +# CONVERT=@CONVERT@ | |
52 | 43 | |
53 | -%.ico: \ | |
54 | - $(PRODUCT_NAME).svg | |
44 | +#---[ Rules ]---------------------------------------------------------------------------- | |
55 | 45 | |
56 | - @echo $@ ... | |
57 | - @$(MKDIR) `dirname $@` | |
58 | - @$(CONVERT) -density 384 -background transparent $< -define icon:auto-resize -colors 256 $@ | |
46 | +#%.ico: \ | |
47 | +# %.svg | |
48 | +# | |
49 | +# @echo $@ ... | |
50 | +# @$(MKDIR) `dirname $@` | |
51 | +# @$(CONVERT) -density 384 -background transparent $< -define icon:auto-resize -colors 256 $@ | |
59 | 52 | |
60 | 53 | $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/%.svg: \ |
61 | 54 | $(srcdir)/%.svg |
... | ... | @@ -101,11 +94,10 @@ endif |
101 | 94 | |
102 | 95 | validate: |
103 | 96 | |
104 | -ifneq ($(SCOUR),no) | |
97 | +ifneq ($(APPSTREAMCLI),no) | |
105 | 98 | @$(APPSTREAMCLI) validate metainfo.xml |
106 | 99 | endif |
107 | 100 | |
108 | - | |
109 | 101 | install: \ |
110 | 102 | install-@OSNAME@ |
111 | 103 | |
... | ... | @@ -159,7 +151,12 @@ install-macos: \ |
159 | 151 | |
160 | 152 | install-windows: \ |
161 | 153 | $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/$(PRODUCT_NAME).svg \ |
162 | - $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/$(PRODUCT_NAME)-logo.svg \ | |
163 | - $(DESTDIR)$(bindir)/$(PRODUCT_NAME).ico | |
154 | + $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/$(PRODUCT_NAME)-logo.svg | |
155 | + | |
156 | + @$(MKDIR) $(DESTDIR)$(bindir) | |
157 | + | |
158 | + @$(INSTALL_DATA) \ | |
159 | + $(PRODUCT_NAME).ico \ | |
160 | + $(DESTDIR)$(bindir)/$(PRODUCT_NAME).ico | |
164 | 161 | |
165 | 162 | ... | ... |
No preview for this file type
18.4 KB
branding/pw3270.svg
1 | 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?> |
2 | -<!-- Created with Inkscape (http://www.inkscape.org/) --> | |
3 | - | |
4 | 2 | <svg |
5 | 3 | xmlns:dc="http://purl.org/dc/elements/1.1/" |
6 | 4 | xmlns:cc="http://creativecommons.org/ns#" |
... | ... | @@ -14,10 +12,10 @@ |
14 | 12 | height="256" |
15 | 13 | id="svg2685" |
16 | 14 | sodipodi:version="0.32" |
17 | - inkscape:version="0.48.1 r9760" | |
15 | + inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)" | |
18 | 16 | sodipodi:docname="pw3270.svg" |
19 | 17 | inkscape:output_extension="org.inkscape.output.svg.inkscape" |
20 | - inkscape:export-filename="/home/perry/Project/3270/v4/image/icon.png" | |
18 | + inkscape:export-filename="/home/perry/project/pw3270/pw3270/branding/pw3270.png" | |
21 | 19 | inkscape:export-xdpi="90" |
22 | 20 | inkscape:export-ydpi="90" |
23 | 21 | version="1.1"> |
... | ... | @@ -61,17 +59,19 @@ |
61 | 59 | inkscape:pageopacity="0.0" |
62 | 60 | inkscape:pageshadow="2" |
63 | 61 | inkscape:zoom="0.97227183" |
64 | - inkscape:cx="-138.53895" | |
62 | + inkscape:cx="-139.56747" | |
65 | 63 | inkscape:cy="32" |
66 | 64 | inkscape:current-layer="layer1" |
67 | 65 | showgrid="true" |
68 | 66 | inkscape:document-units="px" |
69 | 67 | inkscape:grid-bbox="true" |
70 | 68 | inkscape:window-width="1366" |
71 | - inkscape:window-height="744" | |
69 | + inkscape:window-height="714" | |
72 | 70 | inkscape:window-x="0" |
73 | - inkscape:window-y="24" | |
74 | - inkscape:window-maximized="1" /> | |
71 | + inkscape:window-y="0" | |
72 | + inkscape:window-maximized="1" | |
73 | + inkscape:document-rotation="0" | |
74 | + inkscape:pagecheckerboard="true" /> | |
75 | 75 | <metadata |
76 | 76 | id="metadata2690"> |
77 | 77 | <rdf:RDF> |
... | ... | @@ -80,6 +80,7 @@ |
80 | 80 | <dc:format>image/svg+xml</dc:format> |
81 | 81 | <dc:type |
82 | 82 | rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> |
83 | + <dc:title></dc:title> | |
83 | 84 | </cc:Work> |
84 | 85 | </rdf:RDF> |
85 | 86 | </metadata> | ... | ... |
... | ... | @@ -0,0 +1,132 @@ |
1 | +<?xml version="1.0" encoding="UTF-8" standalone="no"?> | |
2 | +<svg | |
3 | + xmlns:dc="http://purl.org/dc/elements/1.1/" | |
4 | + xmlns:cc="http://creativecommons.org/ns#" | |
5 | + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | |
6 | + xmlns:svg="http://www.w3.org/2000/svg" | |
7 | + xmlns="http://www.w3.org/2000/svg" | |
8 | + xmlns:xlink="http://www.w3.org/1999/xlink" | |
9 | + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" | |
10 | + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" | |
11 | + width="602" | |
12 | + height="202" | |
13 | + viewBox="0 0 602 202.00001" | |
14 | + version="1.1" | |
15 | + id="svg8129" | |
16 | + inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)" | |
17 | + sodipodi:docname="release-badge-en.svg" | |
18 | + inkscape:export-filename="/home/jimmac/SparkleShare/flathub-mockups/assets/download-button/download.png" | |
19 | + inkscape:export-xdpi="96" | |
20 | + inkscape:export-ydpi="96"> | |
21 | + <defs | |
22 | + id="defs8123"> | |
23 | + <linearGradient | |
24 | + id="a" | |
25 | + x1="34.76569" | |
26 | + x2="25.431995" | |
27 | + y1="9.90843" | |
28 | + y2="28.426884" | |
29 | + gradientTransform="scale(0.9319351,1.0730361)" | |
30 | + gradientUnits="userSpaceOnUse"> | |
31 | + <stop | |
32 | + offset="0" | |
33 | + stop-color="#fff" | |
34 | + stop-opacity="0" | |
35 | + id="stop2" /> | |
36 | + <stop | |
37 | + offset="1" | |
38 | + stop-color="#fff" | |
39 | + stop-opacity=".27451" | |
40 | + id="stop4" /> | |
41 | + </linearGradient> | |
42 | + <clipPath | |
43 | + id="vlpa"> | |
44 | + <path | |
45 | + d="M 0,200.3 H 320 V 0 H 0 Z" | |
46 | + id="path4" /> | |
47 | + </clipPath> | |
48 | + <clipPath | |
49 | + id="vlpa-5"> | |
50 | + <path | |
51 | + d="M 0,200.3 H 320 V 0 H 0 Z" | |
52 | + id="path4-6" /> | |
53 | + </clipPath> | |
54 | + </defs> | |
55 | + <sodipodi:namedview | |
56 | + id="base" | |
57 | + pagecolor="#ffffff" | |
58 | + bordercolor="#666666" | |
59 | + borderopacity="1.0" | |
60 | + inkscape:pageopacity="0.0" | |
61 | + inkscape:pageshadow="2" | |
62 | + inkscape:zoom="1.1171875" | |
63 | + inkscape:cx="297.92307" | |
64 | + inkscape:cy="217.5035" | |
65 | + inkscape:document-units="px" | |
66 | + inkscape:current-layer="layer1" | |
67 | + showgrid="false" | |
68 | + units="px" | |
69 | + borderlayer="true" | |
70 | + inkscape:showpageshadow="false" | |
71 | + inkscape:snap-nodes="false" | |
72 | + inkscape:snap-bbox="true" | |
73 | + inkscape:bbox-nodes="true" | |
74 | + inkscape:snap-bbox-midpoints="true" | |
75 | + inkscape:window-width="1366" | |
76 | + inkscape:window-height="714" | |
77 | + inkscape:window-x="0" | |
78 | + inkscape:window-y="0" | |
79 | + inkscape:window-maximized="1" | |
80 | + inkscape:document-rotation="0" | |
81 | + fit-margin-left="1" | |
82 | + fit-margin-right="1" | |
83 | + fit-margin-bottom="1" | |
84 | + fit-margin-top="1" | |
85 | + inkscape:pagecheckerboard="true"> | |
86 | + <inkscape:grid | |
87 | + type="xygrid" | |
88 | + id="grid8722" | |
89 | + originx="1" | |
90 | + originy="0.99999005" /> | |
91 | + </sodipodi:namedview> | |
92 | + <metadata | |
93 | + id="metadata8126"> | |
94 | + <rdf:RDF> | |
95 | + <cc:Work | |
96 | + rdf:about=""> | |
97 | + <dc:format>image/svg+xml</dc:format> | |
98 | + <dc:type | |
99 | + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> | |
100 | + <dc:title /> | |
101 | + </cc:Work> | |
102 | + </rdf:RDF> | |
103 | + </metadata> | |
104 | + <g | |
105 | + inkscape:label="Layer 1" | |
106 | + inkscape:groupmode="layer" | |
107 | + id="layer1" | |
108 | + transform="translate(1,-921.51966)"> | |
109 | + <rect | |
110 | + style="opacity:1;vector-effect:none;fill:#000000;fill-opacity:1;stroke:#888a85;stroke-width:3.77953;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:normal" | |
111 | + id="rect8720" | |
112 | + width="596.22046" | |
113 | + height="196.22047" | |
114 | + x="1.8897638" | |
115 | + y="924.40942" | |
116 | + rx="32" | |
117 | + ry="32" /> | |
118 | + <image | |
119 | + width="151.99791" | |
120 | + height="148.69359" | |
121 | + preserveAspectRatio="none" | |
122 | + style="image-rendering:optimizeQuality" | |
123 | + xlink:href="data:image/png;base64,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 " | |
124 | + id="image995" | |
125 | + x="30.706444" | |
126 | + y="948.17285" /> | |
127 | + <path | |
128 | + d="m 370.99424,999.18766 -13.10205,46.38504 h -6.37037 l -9.54321,-33.8989 c -0.40838,-1.4447 -0.65847,-3.0192 -0.74357,-4.7228 h -0.12842 a 23.996544,23.996545 0 0 1 -0.84062,4.6584 l -9.60593,33.9633 h -6.3084 l -13.58583,-46.38514 h 5.98291 l 9.86648,35.58094 a 23.407512,23.407512 0 0 1 0.77641,4.6585 h 0.16276 c 0.1075,-1.1437 0.43897,-2.695 1.00113,-4.6585 l 10.25469,-35.58094 h 5.20722 l 9.83215,35.84074 c 0.3449,1.228 0.60247,2.6742 0.77641,4.3337 h 0.12842 c 0.0859,-1.1197 0.37699,-2.6077 0.87496,-4.4628 l 9.47677,-35.70944 h 5.88809 z m 7.3058,4.85094 c -0.94961,0 -1.75814,-0.3239 -2.42632,-0.9712 -0.66816,-0.6473 -1.00112,-1.4647 -1.00112,-2.4584 0,-0.99004 0.33521,-1.81714 1.00112,-2.47624 0.67042,-0.657 1.47671,-0.9855 2.42632,-0.9855 0.97052,0 1.79473,0.3306 2.47558,0.9855 0.67787,0.6591 1.0183,1.4841 1.0183,2.47624 0,0.9497 -0.34043,1.7582 -1.0183,2.4264 -0.68085,0.6697 -1.50431,1.0032 -2.47558,1.0032 z m 2.58757,41.5341 h -5.30504 v -33.1241 h 5.30504 z m 35.65103,0 h -5.30503 v -18.8894 c 0,-7.0297 -2.56667,-10.5444 -7.697,-10.5444 -2.65252,0 -4.84812,0.9974 -6.58387,2.9921 -1.73723,1.9948 -2.604,4.5123 -2.604,7.5523 v 18.8894 h -5.30577 v -33.1241 h 5.30577 v 5.4984 h 0.12842 c 2.50095,-4.1829 6.12325,-6.274 10.86835,-6.274 3.62229,0 6.39351,1.1699 8.31291,3.5087 1.92087,2.3398 2.87871,5.7201 2.87871,10.1398 v 20.2504 h 0.004 z m 37.73763,0 h -5.30576 v -5.6291 h -0.12841 c -2.45841,4.2704 -6.25614,6.4054 -11.38648,6.4054 -4.16204,0 -7.48794,-1.4826 -9.97845,-4.4487 -2.48902,-2.9639 -3.73651,-7.0026 -3.73651,-12.1135 0,-5.4775 1.37962,-9.8668 4.14114,-13.1635 2.76001,-3.3012 6.43531,-4.9495 11.0311,-4.9495 4.54802,0 7.85825,1.79 9.9292,5.369 h 0.12841 v -20.50774 h 5.30576 z m -5.30353,-14.976 v -4.8847 c 0,-2.6727 -0.88616,-4.9364 -2.65176,-6.7937 -1.76934,-1.8522 -4.01049,-2.7817 -6.7287,-2.7817 -3.23483,0 -5.7806,1.1871 -7.63353,3.5582 -1.85446,2.374 -2.78243,5.6498 -2.78243,9.8328 0,3.8179 0.88991,6.831 2.66894,9.0401 1.7768,2.2099 4.16578,3.3155 7.16394,3.3155 2.95488,0 5.35281,-1.0653 7.1983,-3.2027 1.84176,-2.1329 2.76524,-4.8303 2.76524,-8.083 z m 28.49305,15.7515 c -4.89665,0 -8.80338,-1.546 -11.7254,-4.6405 -2.92276,-3.0951 -4.38228,-7.1983 -4.38228,-12.3084 0,-5.5635 1.52073,-9.9092 4.56145,-13.0351 3.03847,-3.128 7.14753,-4.6927 12.32415,-4.6927 4.93622,0 8.79368,1.52 11.56266,4.5614 2.7712,3.0384 4.15608,7.2566 4.15608,12.6474 0,5.2842 -1.49311,9.515 -4.47934,12.6967 -2.98697,3.1812 -6.99224,4.7712 -12.01732,4.7712 z m 0.38821,-30.2116 c -3.40877,0 -6.10458,1.1587 -8.08595,3.4768 -1.98582,2.321 -2.97577,5.5156 -2.97577,9.591 0,3.9254 1.00188,7.0177 3.01012,9.2835 2.00375,2.2619 4.68987,3.3953 8.0531,3.3953 3.42967,0 6.06428,-1.111 7.90975,-3.3326 1.844,-2.2203 2.76525,-5.3798 2.76525,-9.4767 0,-4.142 -0.922,-7.3314 -2.76525,-9.5755 -1.84547,-2.2397 -4.48156,-3.3618 -7.91125,-3.3618 z m 63.91339,-3.6873 -9.92918,33.1234 h -5.50063 l -6.82352,-23.7107 c -0.25905,-0.9064 -0.43299,-1.9284 -0.51661,-3.0714 h -0.12841 c -0.0643,0.7757 -0.29116,1.7768 -0.67937,3.0087 l -7.40584,23.7748 h -5.30651 l -10.02774,-33.1224 h 5.56258 l 6.85563,24.9043 c 0.21426,0.7555 0.3658,1.747 0.45241,2.9751 h 0.25906 c 0.065,-0.9482 0.2598,-1.9604 0.58305,-3.0393 l 7.63354,-24.8425 h 4.85113 l 6.85711,24.9709 c 0.21425,0.7989 0.37701,1.7911 0.48675,2.9757 h 0.25906 c 0.0418,-0.8406 0.22546,-1.832 0.54872,-2.9757 l 6.7287,-24.9709 z m 2.45842,31.9251 v -5.6932 c 2.88917,2.1367 6.0695,3.2027 9.54099,3.2027 4.6585,0 6.98627,-1.5528 6.98627,-4.6585 0,-0.8839 -0.19859,-1.6335 -0.59576,-2.2486 -0.39792,-0.6152 -0.93917,-1.158 -1.61705,-1.6334 -0.67936,-0.4734 -1.47818,-0.9011 -2.39196,-1.2774 a 172.94937,172.94937 0 0 0 -2.96009,-1.1811 c -1.46699,-0.583 -2.75628,-1.1698 -3.86492,-1.7641 -1.11088,-0.593 -2.03661,-1.261 -2.78241,-2.0061 a 7.4730242,7.4730242 0 0 1 -1.68273,-2.5404 c -0.37702,-0.9483 -0.56591,-2.0576 -0.56591,-3.3312 0,-1.5523 0.35612,-2.928 1.06534,-4.1241 0.71371,-1.1981 1.66184,-2.1993 2.84662,-3.0093 1.18702,-0.8085 2.54054,-1.4185 4.06201,-1.829 a 18.024098,18.024097 0 0 1 4.7033,-0.6122 c 2.86753,0 5.43418,0.4972 7.69999,1.4871 v 5.3692 c -2.43975,-1.5954 -5.24307,-2.3942 -8.41145,-2.3942 -0.99218,0 -1.88506,0.1136 -2.68388,0.3412 -0.7988,0.2247 -1.48191,0.545 -2.05302,0.9534 -0.57187,0.4106 -1.01308,0.901 -1.32589,1.4707 a 3.8708919,3.8708919 0 0 0 -0.46882,1.8933 c 0,0.8629 0.15527,1.5842 0.46882,2.1687 0.31281,0.5808 0.77046,1.0974 1.37441,1.5521 0.60547,0.4501 1.33857,0.8614 2.19935,1.2266 0.86527,0.3673 1.84549,0.7667 2.94741,1.1982 1.46326,0.5621 2.78017,1.1392 3.94405,1.7298 1.16463,0.5929 2.15606,1.2624 2.97503,2.006 a 7.8955745,7.8955752 0 0 1 1.89326,2.5704 c 0.44048,0.9728 0.6622,2.1256 0.6622,3.4618 0,1.6394 -0.35834,3.0624 -1.0825,4.2704 a 9.259533,9.259533 0 0 1 -2.89441,3.0071 c -1.20942,0.7987 -2.598,1.3916 -4.17323,1.7796 -1.57077,0.3884 -3.2214,0.5824 -4.94744,0.5824 -3.4125,0.01 -6.36737,-0.6525 -8.86758,-1.9679 z m -256.67561,-61.90744 -43.95944,6.4143 v 31.85494 h 43.95795 z m -78.97813,11.5208 v 26.74844 h 31.92049 v -31.40476 z m 0,56.93314 31.92049,4.7093 v -31.798 h -31.92049 z m 78.97813,11.6515 v -38.7403 h -43.95944 v 32.2566 z" | |
129 | + id="path1779" | |
130 | + style="fill:#0078d6;fill-opacity:1;stroke-width:0.746547" /> | |
131 | + </g> | |
132 | +</svg> | ... | ... |
configure.ac
... | ... | @@ -74,7 +74,6 @@ case "$host" in |
74 | 74 | AC_CONFIG_FILES(src/main/windows/resources.rc) |
75 | 75 | AC_CONFIG_FILES(src/main/windows/app-manifest.xml) |
76 | 76 | |
77 | - AC_CONFIG_FILES(win/makeruntime.sh) | |
78 | 77 | AC_CONFIG_FILES(win/pw3270.nsi) |
79 | 78 | |
80 | 79 | if test "$host_cpu" = "x86_64"; then | ... | ... |
gitsync.sh
... | ... | @@ -1,35 +0,0 @@ |
1 | -#!/bin/bash | |
2 | -# | |
3 | -# https://help.github.com/articles/syncing-a-fork/ | |
4 | -# | |
5 | -# https://help.github.com/articles/configuring-a-remote-for-a-fork/ | |
6 | -# | |
7 | -# https://www.opentechguides.com/how-to/article/git/177/git-sync-repos.html | |
8 | -# | |
9 | -# Setup: | |
10 | -# | |
11 | -# git remote add github https://github.com/PerryWerneck/lib3270.git | |
12 | -# | |
13 | -# | |
14 | - | |
15 | -git push | |
16 | - | |
17 | -git fetch origin | |
18 | -git merge | |
19 | - | |
20 | -BRANCH=$(git symbolic-ref --short HEAD) | |
21 | -REPOS=$(git remote -v | grep -v origin | grep "(push)" | awk '{print $1}') | |
22 | - | |
23 | -for repo in ${REPOS} | |
24 | -do | |
25 | - echo "Getting updates to branch ${BRANCH} from ${repo} ..." | |
26 | - git fetch "${repo}" "${BRANCH}" | |
27 | -# git merge 2>&1 > /dev/null | |
28 | -done | |
29 | - | |
30 | -for repo in ${REPOS} | |
31 | -do | |
32 | - echo "Updating ${repo} ..." | |
33 | - git push ${repo} | |
34 | -done | |
35 | - |
locale/Makefile.in
... | ... | @@ -68,6 +68,5 @@ all: \ |
68 | 68 | $(foreach SRC, $(basename $(wildcard *.po)), $(BINDIR)/$(SRC)/LC_MESSAGES/$(PRODUCT_NAME).mo) |
69 | 69 | |
70 | 70 | install: \ |
71 | - $(foreach SRC, $(basename $(wildcard *.po)), $(DESTDIR)/$(localedir)/$(SRC)/LC_MESSAGES/$(PRODUCT_NAME).mo) | |
72 | - | |
71 | + $(foreach SRC, $(basename $(wildcard *.po)), $(DESTDIR)/$(localedir)/$(SRC)/LC_MESSAGES/$(PACKAGE_NAME).mo) | |
73 | 72 | ... | ... |
locale/pt_BR.po
... | ... | @@ -5,8 +5,8 @@ msgid "" |
5 | 5 | msgstr "" |
6 | 6 | "Project-Id-Version: pw3270 5.0\n" |
7 | 7 | "Report-Msgid-Bugs-To: \n" |
8 | -"POT-Creation-Date: 2023-01-31 11:13-0300\n" | |
9 | -"PO-Revision-Date: 2023-01-31 11:14-0300\n" | |
8 | +"POT-Creation-Date: 2023-04-08 01:14-0300\n" | |
9 | +"PO-Revision-Date: 2023-04-21 08:30-0300\n" | |
10 | 10 | "Last-Translator: Perry Werneck <perry.werneck@gmail.com>\n" |
11 | 11 | "Language-Team: Brazilian Portuguese <perry.werneck@gmail.com>\n" |
12 | 12 | "Language: pt_BR\n" |
... | ... | @@ -24,29 +24,29 @@ msgstr "" |
24 | 24 | msgid "\"%s\" is not a valid user interface name" |
25 | 25 | msgstr "\"%s\" não é um nome válido para interface de usuário" |
26 | 26 | |
27 | -#: src/objects/application/actions/about.c:118 | |
27 | +#: src/objects/application/actions/about.c:136 | |
28 | 28 | #, c-format |
29 | 29 | msgid "%s for %s." |
30 | 30 | msgstr "%s para %s" |
31 | 31 | |
32 | -#: src/objects/application/actions/about.c:125 | |
32 | +#: src/objects/application/actions/about.c:143 | |
33 | 33 | msgid "32 bits Linux" |
34 | 34 | msgstr "Linux 32 bits" |
35 | 35 | |
36 | -#: src/objects/application/actions/about.c:123 | |
36 | +#: src/objects/application/actions/about.c:141 | |
37 | 37 | msgid "32 bits Windows" |
38 | 38 | msgstr "Windows 32 bits" |
39 | 39 | |
40 | 40 | #: src/objects/actions/save.c:167 src/objects/os/linux/savedesktopicon.c:233 |
41 | -#: src/objects/os/windows/savedesktopicon.c:224 | |
41 | +#: src/objects/os/windows/savedesktopicon.c:214 | |
42 | 42 | msgid "3270 session files" |
43 | 43 | msgstr "Arquivos de sessão TN3270" |
44 | 44 | |
45 | -#: src/objects/application/actions/about.c:127 | |
45 | +#: src/objects/application/actions/about.c:145 | |
46 | 46 | msgid "64 bits Linux" |
47 | 47 | msgstr "Linux 64 bits" |
48 | 48 | |
49 | -#: src/objects/application/actions/about.c:121 | |
49 | +#: src/objects/application/actions/about.c:139 | |
50 | 50 | msgid "64 bits Windows" |
51 | 51 | msgstr "Windows 64 bits" |
52 | 52 | |
... | ... | @@ -57,7 +57,7 @@ msgstr "" |
57 | 57 | "<small><b>Alterações na posição da barra de ferramentas só tem efeito apos " |
58 | 58 | "reinício da aplicação</b></small>" |
59 | 59 | |
60 | -#: src/objects/application/actions/about.c:217 ui/windows.ui.xml:40 | |
60 | +#: src/objects/application/actions/about.c:235 ui/windows.ui.xml:40 | |
61 | 61 | #: ui/windows.ui.xml:553 ui/macos.ui.xml:40 ui/macos.ui.xml:553 |
62 | 62 | #: ui/linux.ui.xml:40 ui/linux.ui.xml:553 |
63 | 63 | msgid "About PW3270" |
... | ... | @@ -67,7 +67,7 @@ msgstr "Sobre o PW3270" |
67 | 67 | msgid "Action Name" |
68 | 68 | msgstr "Nome da ação" |
69 | 69 | |
70 | -#: src/objects/window/window.c:205 | |
70 | +#: src/objects/window/window.c:206 | |
71 | 71 | msgid "Action Names" |
72 | 72 | msgstr "Nome das ações" |
73 | 73 | |
... | ... | @@ -77,7 +77,7 @@ msgstr "Nome das ações" |
77 | 77 | msgid "Alert sound" |
78 | 78 | msgstr "Aviso sonoro" |
79 | 79 | |
80 | -#: src/main/tools.c:79 | |
80 | +#: src/main/tools.c:68 | |
81 | 81 | msgid "All files" |
82 | 82 | msgstr "Todos os arquivos" |
83 | 83 | |
... | ... | @@ -86,7 +86,7 @@ msgstr "Todos os arquivos" |
86 | 86 | msgid "Append to copy" |
87 | 87 | msgstr "Adicionar à cópia" |
88 | 88 | |
89 | -#: src/objects/application/actions/about.c:160 | |
89 | +#: src/objects/application/actions/about.c:178 | |
90 | 90 | msgid "Apple version" |
91 | 91 | msgstr "Versão Apple" |
92 | 92 | |
... | ... | @@ -116,7 +116,7 @@ msgstr "Reconectar automaticamente" |
116 | 116 | msgid "Available" |
117 | 117 | msgstr "Disponível" |
118 | 118 | |
119 | -#: src/objects/application/actions/about.c:163 | |
119 | +#: src/objects/application/actions/about.c:181 | |
120 | 120 | msgid "Based on X3270 from" |
121 | 121 | msgstr "Baseado no X3270 por" |
122 | 122 | |
... | ... | @@ -146,10 +146,6 @@ msgstr "Não foi possível carregar arquivo de sessão" |
146 | 146 | msgid "Can't load session preferences" |
147 | 147 | msgstr "Não foi possível carregar preferências da sessão" |
148 | 148 | |
149 | -#: src/objects/settings/gsettings.c:128 | |
150 | -msgid "Can't load system settings" | |
151 | -msgstr "Não foi possível carregar configurações de sistema" | |
152 | - | |
153 | 149 | #: src/objects/application/actions/open.c:99 src/objects/window/terminal.c:192 |
154 | 150 | #, c-format |
155 | 151 | msgid "Can't use \"%s\"" |
... | ... | @@ -224,11 +220,11 @@ msgstr "Conectar ao iniciar" |
224 | 220 | msgid "Connect to host" |
225 | 221 | msgstr "Conectar ao servidor" |
226 | 222 | |
227 | -#: src/objects/window/window.c:778 src/objects/window/page.c:218 | |
223 | +#: src/objects/window/window.c:779 src/objects/window/page.c:218 | |
228 | 224 | msgid "Connected to host" |
229 | 225 | msgstr "Conectado no servidor" |
230 | 226 | |
231 | -#: src/objects/application/actions/about.c:161 | |
227 | +#: src/objects/application/actions/about.c:179 | |
232 | 228 | msgid "Contributors" |
233 | 229 | msgstr "Contribuidores" |
234 | 230 | |
... | ... | @@ -255,12 +251,12 @@ msgstr "Copiar como tabela" |
255 | 251 | msgid "Copy as text" |
256 | 252 | msgstr "Copiar como texto" |
257 | 253 | |
258 | -#: src/objects/application/actions/about.c:167 | |
254 | +#: src/objects/application/actions/about.c:185 | |
259 | 255 | msgid "Copyright © 2008 Banco do Brasil S.A." |
260 | 256 | msgstr "Copyright © 2008 Banco do Brasil S.A." |
261 | 257 | |
262 | 258 | #: src/objects/os/linux/savedesktopicon.c:114 |
263 | -#: src/objects/os/windows/savedesktopicon.c:109 | |
259 | +#: src/objects/os/windows/savedesktopicon.c:99 | |
264 | 260 | #: src/objects/os/macos/savedesktopicon.c:54 |
265 | 261 | msgid "Create shortcut for the current session" |
266 | 262 | msgstr "Criar atalho para a sessão atual." |
... | ... | @@ -295,7 +291,7 @@ msgstr "Recortar" |
295 | 291 | msgid "Delete Field" |
296 | 292 | msgstr "Apagar campo" |
297 | 293 | |
298 | -#: src/objects/os/windows/savedesktopicon.c:82 | |
294 | +#: src/objects/os/windows/savedesktopicon.c:72 | |
299 | 295 | msgid "Description" |
300 | 296 | msgstr "Descrição" |
301 | 297 | |
... | ... | @@ -304,7 +300,7 @@ msgstr "Descrição" |
304 | 300 | msgid "Disconnect" |
305 | 301 | msgstr "Desconectar" |
306 | 302 | |
307 | -#: src/objects/window/window.c:778 src/objects/window/window.c:805 | |
303 | +#: src/objects/window/window.c:779 src/objects/window/window.c:806 | |
308 | 304 | #: src/objects/window/page.c:207 |
309 | 305 | msgid "Disconnected from host" |
310 | 306 | msgstr "Desconectado do servidor" |
... | ... | @@ -365,7 +361,7 @@ msgstr "Erro iniciando sessão" |
365 | 361 | msgid "Field attributes" |
366 | 362 | msgstr "Atributos de campo" |
367 | 363 | |
368 | -#: src/objects/os/windows/savedesktopicon.c:221 | |
364 | +#: src/objects/os/windows/savedesktopicon.c:211 | |
369 | 365 | msgid "File for session preferences" |
370 | 366 | msgstr "Arquivo para preferências da sessão" |
371 | 367 | |
... | ... | @@ -392,9 +388,9 @@ msgstr "Ajuda" |
392 | 388 | msgid "Host and Emulation settings" |
393 | 389 | msgstr "Configuração de servidor e emulação" |
394 | 390 | |
395 | -#: src/objects/application/actions/about.c:119 src/objects/window/window.c:564 | |
391 | +#: src/objects/application/actions/about.c:137 src/objects/window/window.c:565 | |
396 | 392 | #: src/objects/os/linux/savedesktopicon.c:102 |
397 | -#: src/objects/os/windows/savedesktopicon.c:271 | |
393 | +#: src/objects/os/windows/savedesktopicon.c:261 | |
398 | 394 | msgid "IBM 3270 Terminal emulator" |
399 | 395 | msgstr "Emulador de terminal IBM 3270" |
400 | 396 | |
... | ... | @@ -434,6 +430,10 @@ msgstr "Apenas ícones" |
434 | 430 | msgid "If the action can be activated" |
435 | 431 | msgstr "Se a ação pode ser ativada" |
436 | 432 | |
433 | +#: src/objects/application/application.c:541 | |
434 | +msgid "Initialization has failed" | |
435 | +msgstr "Inicialização falhou" | |
436 | + | |
437 | 437 | #: ui/windows.ui.xml:1022 ui/macos.ui.xml:1022 ui/linux.ui.xml:1022 |
438 | 438 | msgid "Insert" |
439 | 439 | msgstr "Inserção" |
... | ... | @@ -478,11 +478,11 @@ msgstr "Altura do painel em linhas" |
478 | 478 | msgid "Keypad width in columns" |
479 | 479 | msgstr "Largura do painel em colunas" |
480 | 480 | |
481 | -#: src/main/builder.c:112 | |
481 | +#: src/main/builder.c:117 | |
482 | 482 | msgid "Keypads" |
483 | 483 | msgstr "Painéis" |
484 | 484 | |
485 | -#: src/objects/application/actions/about.c:171 | |
485 | +#: src/objects/application/actions/about.c:189 | |
486 | 486 | msgid "LICENSE" |
487 | 487 | msgstr "LICENCA" |
488 | 488 | |
... | ... | @@ -518,7 +518,7 @@ msgstr "Barra de ferramentas" |
518 | 518 | msgid "Main menu" |
519 | 519 | msgstr "Menu principal" |
520 | 520 | |
521 | -#: src/objects/application/actions/about.c:159 | |
521 | +#: src/objects/application/actions/about.c:177 | |
522 | 522 | msgid "Maintainers" |
523 | 523 | msgstr "Mantenedores" |
524 | 524 | |
... | ... | @@ -643,7 +643,7 @@ msgid "Paste with left margin" |
643 | 643 | msgstr "Colar com margem esquerda" |
644 | 644 | |
645 | 645 | #: src/objects/os/linux/savedesktopicon.c:71 |
646 | -#: src/objects/os/windows/savedesktopicon.c:76 | |
646 | +#: src/objects/os/windows/savedesktopicon.c:66 | |
647 | 647 | msgid "Path for the new shortcut" |
648 | 648 | msgstr "Caminho para o novo atalho" |
649 | 649 | |
... | ... | @@ -718,7 +718,7 @@ msgid "Save session preferences" |
718 | 718 | msgstr "Salvar preferências da sessão" |
719 | 719 | |
720 | 720 | #: src/objects/os/linux/savedesktopicon.c:113 |
721 | -#: src/objects/os/windows/savedesktopicon.c:108 | |
721 | +#: src/objects/os/windows/savedesktopicon.c:98 | |
722 | 722 | #: src/objects/os/macos/savedesktopicon.c:53 |
723 | 723 | msgid "Save session shortcut" |
724 | 724 | msgstr "Salvar atalho para a sessão" |
... | ... | @@ -731,7 +731,7 @@ msgstr "Salvar para arquivo de sessão" |
731 | 731 | msgid "Save to shortcut file" |
732 | 732 | msgstr "Salvar para arquivo de atalho" |
733 | 733 | |
734 | -#: src/objects/os/windows/savedesktopicon.c:186 | |
734 | +#: src/objects/os/windows/savedesktopicon.c:176 | |
735 | 735 | msgid "Save to windows shortcut" |
736 | 736 | msgstr "Salvar para atalho windows" |
737 | 737 | |
... | ... | @@ -796,7 +796,7 @@ msgid "Session Trace" |
796 | 796 | msgstr "Trace da sessão" |
797 | 797 | |
798 | 798 | #: src/objects/actions/save.c:63 src/objects/os/linux/savedesktopicon.c:85 |
799 | -#: src/objects/os/windows/savedesktopicon.c:96 | |
799 | +#: src/objects/os/windows/savedesktopicon.c:86 | |
800 | 800 | msgid "Session file" |
801 | 801 | msgstr "Arquivo de sessão" |
802 | 802 | |
... | ... | @@ -811,7 +811,7 @@ msgid "Session in new window" |
811 | 811 | msgstr "Sessão em nova janela" |
812 | 812 | |
813 | 813 | #: src/objects/actions/save.c:56 src/objects/os/linux/savedesktopicon.c:77 |
814 | -#: src/objects/os/windows/savedesktopicon.c:88 | |
814 | +#: src/objects/os/windows/savedesktopicon.c:78 | |
815 | 815 | msgid "Session name" |
816 | 816 | msgstr "Nome da sessão" |
817 | 817 | |
... | ... | @@ -847,7 +847,7 @@ msgid "Setup toolbar" |
847 | 847 | msgstr "Configurar barra de ferramentas" |
848 | 848 | |
849 | 849 | #: src/objects/os/linux/savedesktopicon.c:70 |
850 | -#: src/objects/os/windows/savedesktopicon.c:75 | |
850 | +#: src/objects/os/windows/savedesktopicon.c:65 | |
851 | 851 | msgid "Shortcut file" |
852 | 852 | msgstr "Arquivo de atalho" |
853 | 853 | |
... | ... | @@ -910,11 +910,11 @@ msgstr "Simbólico" |
910 | 910 | msgid "System default" |
911 | 911 | msgstr "Padrão do sistema" |
912 | 912 | |
913 | -#: src/objects/settings/gsettings.c:133 | |
913 | +#: src/objects/application/application.c:546 | |
914 | 914 | msgid "System settings error" |
915 | 915 | msgstr "Erro nas configurações de sistema" |
916 | 916 | |
917 | -#: src/main/tools.c:75 | |
917 | +#: src/main/tools.c:64 | |
918 | 918 | msgid "TN3270 Session Files" |
919 | 919 | msgstr "Arquivos de sessão TN3270" |
920 | 920 | |
... | ... | @@ -960,7 +960,7 @@ msgid "The file to save the current session preferences" |
960 | 960 | msgstr "O arquivo com as preferências da sessão atual" |
961 | 961 | |
962 | 962 | #: src/objects/os/linux/savedesktopicon.c:86 |
963 | -#: src/objects/os/windows/savedesktopicon.c:97 | |
963 | +#: src/objects/os/windows/savedesktopicon.c:87 | |
964 | 964 | msgid "The file with the session preferences for this shortcut" |
965 | 965 | msgstr "O arquivo com as preferências da sessão para esse atalho" |
966 | 966 | |
... | ... | @@ -976,7 +976,7 @@ msgstr "A etiqueta da ação" |
976 | 976 | msgid "The name of associated action" |
977 | 977 | msgstr "Nome da ação associada" |
978 | 978 | |
979 | -#: src/objects/window/window.c:206 | |
979 | +#: src/objects/window/window.c:207 | |
980 | 980 | msgid "The name of the actions in the header bar" |
981 | 981 | msgstr "O nome das ações na barra de título" |
982 | 982 | |
... | ... | @@ -1005,7 +1005,7 @@ msgid "The position of the keypad" |
1005 | 1005 | msgstr "A posição do painel" |
1006 | 1006 | |
1007 | 1007 | #: src/objects/actions/save.c:57 src/objects/os/linux/savedesktopicon.c:79 |
1008 | -#: src/objects/os/windows/savedesktopicon.c:90 | |
1008 | +#: src/objects/os/windows/savedesktopicon.c:80 | |
1009 | 1009 | msgid "The session name used in the window/tab title (empty for default)" |
1010 | 1010 | msgstr "" |
1011 | 1011 | "O nome da sessão usada no título da janela/aba. Vazio para usar o valor " |
... | ... | @@ -1091,10 +1091,9 @@ msgstr "Mostrar posição do cursor" |
1091 | 1091 | msgid "UI Type" |
1092 | 1092 | msgstr "Interface de usuário" |
1093 | 1093 | |
1094 | -#: src/objects/settings/gsettings.c:131 | |
1095 | -msgid "" | |
1096 | -"Unable to initialize system settings. Application may crash in unexpected " | |
1097 | -"ways" | |
1094 | +#: src/objects/application/application.c:544 | |
1095 | +#, fuzzy | |
1096 | +msgid "Unable to initialize settings. Application may crash in unexpected ways" | |
1098 | 1097 | msgstr "" |
1099 | 1098 | "Não foi possível iniciar configuração de sistema. Aplicação pode falhar de " |
1100 | 1099 | "forma inesperada" |
... | ... | @@ -1109,7 +1108,7 @@ msgstr "Incapaz de ler preferências de sessa de '%s'" |
1109 | 1108 | msgid "Unselect" |
1110 | 1109 | msgstr "Remover seleção" |
1111 | 1110 | |
1112 | -#: src/objects/application/actions/about.c:98 | |
1111 | +#: src/objects/application/actions/about.c:116 | |
1113 | 1112 | #, c-format |
1114 | 1113 | msgid "Unstable version %s-%s" |
1115 | 1114 | msgstr "Versão instável %s-%s" |
... | ... | @@ -1119,7 +1118,7 @@ msgstr "Versão instável %s-%s" |
1119 | 1118 | msgid "Use +/- for field navigation" |
1120 | 1119 | msgstr "Usar teclas +/- para navegar por campos" |
1121 | 1120 | |
1122 | -#: src/objects/application/actions/about.c:100 | |
1121 | +#: src/objects/application/actions/about.c:118 | |
1123 | 1122 | #, c-format |
1124 | 1123 | msgid "Version %s-%s" |
1125 | 1124 | msgstr "Versão %s-%s" |
... | ... | @@ -1131,7 +1130,7 @@ msgstr "Versão %s-%s" |
1131 | 1130 | msgid "View" |
1132 | 1131 | msgstr "Exibir" |
1133 | 1132 | |
1134 | -#: src/objects/application/actions/about.c:191 | |
1133 | +#: src/objects/application/actions/about.c:209 | |
1135 | 1134 | msgid "View this project on github" |
1136 | 1135 | msgstr "Visite-nos no github" |
1137 | 1136 | |
... | ... | @@ -1140,7 +1139,7 @@ msgstr "Visite-nos no github" |
1140 | 1139 | msgid "Window with default session" |
1141 | 1140 | msgstr "Janela com sessão padrão" |
1142 | 1141 | |
1143 | -#: src/objects/os/windows/savedesktopicon.c:189 | |
1142 | +#: src/objects/os/windows/savedesktopicon.c:179 | |
1144 | 1143 | msgid "Windows shortcuts" |
1145 | 1144 | msgstr "Atalhos windows" |
1146 | 1145 | |
... | ... | @@ -1150,7 +1149,7 @@ msgstr "_Aplicar" |
1150 | 1149 | |
1151 | 1150 | #: src/objects/actions/save.c:103 src/objects/settings/dialog.c:78 |
1152 | 1151 | #: src/objects/os/linux/savedesktopicon.c:140 |
1153 | -#: src/objects/os/windows/savedesktopicon.c:134 | |
1152 | +#: src/objects/os/windows/savedesktopicon.c:124 | |
1154 | 1153 | msgid "_Cancel" |
1155 | 1154 | msgstr "_Cancelar" |
1156 | 1155 | |
... | ... | @@ -1200,7 +1199,7 @@ msgid "_Rename session" |
1200 | 1199 | msgstr "Renomear sessão" |
1201 | 1200 | |
1202 | 1201 | #: src/objects/actions/save.c:104 src/objects/os/linux/savedesktopicon.c:141 |
1203 | -#: src/objects/os/windows/savedesktopicon.c:135 | |
1202 | +#: src/objects/os/windows/savedesktopicon.c:125 | |
1204 | 1203 | msgid "_Save" |
1205 | 1204 | msgstr "_Salvar" |
1206 | 1205 | |
... | ... | @@ -1208,11 +1207,11 @@ msgstr "_Salvar" |
1208 | 1207 | msgid "_View" |
1209 | 1208 | msgstr "_Exibir" |
1210 | 1209 | |
1211 | -#: src/objects/application/actions/about.c:190 | |
1210 | +#: src/objects/application/actions/about.c:208 | |
1212 | 1211 | msgid "https://github.com/PerryWerneck/pw3270" |
1213 | 1212 | msgstr "https://github.com/PerryWerneck/pw3270" |
1214 | 1213 | |
1215 | -#: src/objects/application/actions/about.c:193 | |
1214 | +#: src/objects/application/actions/about.c:211 | |
1216 | 1215 | msgid "translator-credits" |
1217 | 1216 | msgstr "translator-credits" |
1218 | 1217 | |
... | ... | @@ -1647,6 +1646,9 @@ msgstr "translator-credits" |
1647 | 1646 | #~ msgid "Can't load plugin %s" |
1648 | 1647 | #~ msgstr "Não foi possível carregar plugin %s" |
1649 | 1648 | |
1649 | +#~ msgid "Can't load system settings" | |
1650 | +#~ msgstr "Não foi possível carregar configurações de sistema" | |
1651 | + | |
1650 | 1652 | #~ msgid "Can't open \"%s\"" |
1651 | 1653 | #~ msgstr "Não foi possível abrir %s" |
1652 | 1654 | |
... | ... | @@ -2669,9 +2671,6 @@ msgstr "translator-credits" |
2669 | 2671 | #~ msgid "Operation failed" |
2670 | 2672 | #~ msgstr "Operação falhou" |
2671 | 2673 | |
2672 | -#~ msgid "Operation has failed" | |
2673 | -#~ msgstr "Operação falhou" | |
2674 | - | |
2675 | 2674 | #~ msgid "Option '%c:' is not supported" |
2676 | 2675 | #~ msgstr "Opção não suportada: '%c:'" |
2677 | 2676 | ... | ... |
locale/pw3270.pot
... | ... | @@ -8,7 +8,7 @@ msgid "" |
8 | 8 | msgstr "" |
9 | 9 | "Project-Id-Version: PACKAGE VERSION\n" |
10 | 10 | "Report-Msgid-Bugs-To: \n" |
11 | -"POT-Creation-Date: 2023-03-29 15:03-0300\n" | |
11 | +"POT-Creation-Date: 2023-04-19 09:27-0300\n" | |
12 | 12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" |
13 | 13 | "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" |
14 | 14 | "Language-Team: LANGUAGE <LL@li.org>\n" |
... | ... | @@ -22,29 +22,29 @@ msgstr "" |
22 | 22 | msgid "\"%s\" is not a valid user interface name" |
23 | 23 | msgstr "" |
24 | 24 | |
25 | -#: src/objects/application/actions/about.c:118 | |
25 | +#: src/objects/application/actions/about.c:136 | |
26 | 26 | #, c-format |
27 | 27 | msgid "%s for %s." |
28 | 28 | msgstr "" |
29 | 29 | |
30 | -#: src/objects/application/actions/about.c:125 | |
30 | +#: src/objects/application/actions/about.c:143 | |
31 | 31 | msgid "32 bits Linux" |
32 | 32 | msgstr "" |
33 | 33 | |
34 | -#: src/objects/application/actions/about.c:123 | |
34 | +#: src/objects/application/actions/about.c:141 | |
35 | 35 | msgid "32 bits Windows" |
36 | 36 | msgstr "" |
37 | 37 | |
38 | 38 | #: src/objects/actions/save.c:167 src/objects/os/linux/savedesktopicon.c:233 |
39 | -#: src/objects/os/windows/savedesktopicon.c:224 | |
39 | +#: src/objects/os/windows/savedesktopicon.c:214 | |
40 | 40 | msgid "3270 session files" |
41 | 41 | msgstr "" |
42 | 42 | |
43 | -#: src/objects/application/actions/about.c:127 | |
43 | +#: src/objects/application/actions/about.c:145 | |
44 | 44 | msgid "64 bits Linux" |
45 | 45 | msgstr "" |
46 | 46 | |
47 | -#: src/objects/application/actions/about.c:121 | |
47 | +#: src/objects/application/actions/about.c:139 | |
48 | 48 | msgid "64 bits Windows" |
49 | 49 | msgstr "" |
50 | 50 | |
... | ... | @@ -53,7 +53,7 @@ msgid "" |
53 | 53 | "<small><b>The toolbar position only takes effect after restart</b></small>" |
54 | 54 | msgstr "" |
55 | 55 | |
56 | -#: src/objects/application/actions/about.c:217 ui/windows.ui.xml:40 | |
56 | +#: src/objects/application/actions/about.c:235 ui/windows.ui.xml:40 | |
57 | 57 | #: ui/windows.ui.xml:553 ui/macos.ui.xml:40 ui/macos.ui.xml:553 |
58 | 58 | #: ui/linux.ui.xml:40 ui/linux.ui.xml:553 |
59 | 59 | msgid "About PW3270" |
... | ... | @@ -63,7 +63,7 @@ msgstr "" |
63 | 63 | msgid "Action Name" |
64 | 64 | msgstr "" |
65 | 65 | |
66 | -#: src/objects/window/window.c:205 | |
66 | +#: src/objects/window/window.c:206 | |
67 | 67 | msgid "Action Names" |
68 | 68 | msgstr "" |
69 | 69 | |
... | ... | @@ -73,7 +73,7 @@ msgstr "" |
73 | 73 | msgid "Alert sound" |
74 | 74 | msgstr "" |
75 | 75 | |
76 | -#: src/main/tools.c:79 | |
76 | +#: src/main/tools.c:68 | |
77 | 77 | msgid "All files" |
78 | 78 | msgstr "" |
79 | 79 | |
... | ... | @@ -82,7 +82,7 @@ msgstr "" |
82 | 82 | msgid "Append to copy" |
83 | 83 | msgstr "" |
84 | 84 | |
85 | -#: src/objects/application/actions/about.c:160 | |
85 | +#: src/objects/application/actions/about.c:178 | |
86 | 86 | msgid "Apple version" |
87 | 87 | msgstr "" |
88 | 88 | |
... | ... | @@ -112,7 +112,7 @@ msgstr "" |
112 | 112 | msgid "Available" |
113 | 113 | msgstr "" |
114 | 114 | |
115 | -#: src/objects/application/actions/about.c:163 | |
115 | +#: src/objects/application/actions/about.c:181 | |
116 | 116 | msgid "Based on X3270 from" |
117 | 117 | msgstr "" |
118 | 118 | |
... | ... | @@ -142,10 +142,6 @@ msgstr "" |
142 | 142 | msgid "Can't load session preferences" |
143 | 143 | msgstr "" |
144 | 144 | |
145 | -#: src/objects/settings/gsettings.c:128 | |
146 | -msgid "Can't load system settings" | |
147 | -msgstr "" | |
148 | - | |
149 | 145 | #: src/objects/application/actions/open.c:99 src/objects/window/terminal.c:192 |
150 | 146 | #, c-format |
151 | 147 | msgid "Can't use \"%s\"" |
... | ... | @@ -220,11 +216,11 @@ msgstr "" |
220 | 216 | msgid "Connect to host" |
221 | 217 | msgstr "" |
222 | 218 | |
223 | -#: src/objects/window/window.c:778 src/objects/window/page.c:218 | |
219 | +#: src/objects/window/window.c:779 src/objects/window/page.c:218 | |
224 | 220 | msgid "Connected to host" |
225 | 221 | msgstr "" |
226 | 222 | |
227 | -#: src/objects/application/actions/about.c:161 | |
223 | +#: src/objects/application/actions/about.c:179 | |
228 | 224 | msgid "Contributors" |
229 | 225 | msgstr "" |
230 | 226 | |
... | ... | @@ -251,12 +247,12 @@ msgstr "" |
251 | 247 | msgid "Copy as text" |
252 | 248 | msgstr "" |
253 | 249 | |
254 | -#: src/objects/application/actions/about.c:167 | |
250 | +#: src/objects/application/actions/about.c:185 | |
255 | 251 | msgid "Copyright © 2008 Banco do Brasil S.A." |
256 | 252 | msgstr "" |
257 | 253 | |
258 | 254 | #: src/objects/os/linux/savedesktopicon.c:114 |
259 | -#: src/objects/os/windows/savedesktopicon.c:109 | |
255 | +#: src/objects/os/windows/savedesktopicon.c:99 | |
260 | 256 | #: src/objects/os/macos/savedesktopicon.c:54 |
261 | 257 | msgid "Create shortcut for the current session" |
262 | 258 | msgstr "" |
... | ... | @@ -291,7 +287,7 @@ msgstr "" |
291 | 287 | msgid "Delete Field" |
292 | 288 | msgstr "" |
293 | 289 | |
294 | -#: src/objects/os/windows/savedesktopicon.c:82 | |
290 | +#: src/objects/os/windows/savedesktopicon.c:72 | |
295 | 291 | msgid "Description" |
296 | 292 | msgstr "" |
297 | 293 | |
... | ... | @@ -300,7 +296,7 @@ msgstr "" |
300 | 296 | msgid "Disconnect" |
301 | 297 | msgstr "" |
302 | 298 | |
303 | -#: src/objects/window/window.c:778 src/objects/window/window.c:805 | |
299 | +#: src/objects/window/window.c:779 src/objects/window/window.c:806 | |
304 | 300 | #: src/objects/window/page.c:207 |
305 | 301 | msgid "Disconnected from host" |
306 | 302 | msgstr "" |
... | ... | @@ -361,7 +357,7 @@ msgstr "" |
361 | 357 | msgid "Field attributes" |
362 | 358 | msgstr "" |
363 | 359 | |
364 | -#: src/objects/os/windows/savedesktopicon.c:221 | |
360 | +#: src/objects/os/windows/savedesktopicon.c:211 | |
365 | 361 | msgid "File for session preferences" |
366 | 362 | msgstr "" |
367 | 363 | |
... | ... | @@ -388,9 +384,9 @@ msgstr "" |
388 | 384 | msgid "Host and Emulation settings" |
389 | 385 | msgstr "" |
390 | 386 | |
391 | -#: src/objects/application/actions/about.c:119 src/objects/window/window.c:564 | |
387 | +#: src/objects/application/actions/about.c:137 src/objects/window/window.c:565 | |
392 | 388 | #: src/objects/os/linux/savedesktopicon.c:102 |
393 | -#: src/objects/os/windows/savedesktopicon.c:271 | |
389 | +#: src/objects/os/windows/savedesktopicon.c:261 | |
394 | 390 | msgid "IBM 3270 Terminal emulator" |
395 | 391 | msgstr "" |
396 | 392 | |
... | ... | @@ -430,6 +426,10 @@ msgstr "" |
430 | 426 | msgid "If the action can be activated" |
431 | 427 | msgstr "" |
432 | 428 | |
429 | +#: src/objects/application/application.c:541 | |
430 | +msgid "Initialization has failed" | |
431 | +msgstr "" | |
432 | + | |
433 | 433 | #: ui/windows.ui.xml:1022 ui/macos.ui.xml:1022 ui/linux.ui.xml:1022 |
434 | 434 | msgid "Insert" |
435 | 435 | msgstr "" |
... | ... | @@ -474,11 +474,11 @@ msgstr "" |
474 | 474 | msgid "Keypad width in columns" |
475 | 475 | msgstr "" |
476 | 476 | |
477 | -#: src/main/builder.c:112 | |
477 | +#: src/main/builder.c:117 | |
478 | 478 | msgid "Keypads" |
479 | 479 | msgstr "" |
480 | 480 | |
481 | -#: src/objects/application/actions/about.c:171 | |
481 | +#: src/objects/application/actions/about.c:189 | |
482 | 482 | msgid "LICENSE" |
483 | 483 | msgstr "" |
484 | 484 | |
... | ... | @@ -514,7 +514,7 @@ msgstr "" |
514 | 514 | msgid "Main menu" |
515 | 515 | msgstr "" |
516 | 516 | |
517 | -#: src/objects/application/actions/about.c:159 | |
517 | +#: src/objects/application/actions/about.c:177 | |
518 | 518 | msgid "Maintainers" |
519 | 519 | msgstr "" |
520 | 520 | |
... | ... | @@ -639,7 +639,7 @@ msgid "Paste with left margin" |
639 | 639 | msgstr "" |
640 | 640 | |
641 | 641 | #: src/objects/os/linux/savedesktopicon.c:71 |
642 | -#: src/objects/os/windows/savedesktopicon.c:76 | |
642 | +#: src/objects/os/windows/savedesktopicon.c:66 | |
643 | 643 | msgid "Path for the new shortcut" |
644 | 644 | msgstr "" |
645 | 645 | |
... | ... | @@ -714,7 +714,7 @@ msgid "Save session preferences" |
714 | 714 | msgstr "" |
715 | 715 | |
716 | 716 | #: src/objects/os/linux/savedesktopicon.c:113 |
717 | -#: src/objects/os/windows/savedesktopicon.c:108 | |
717 | +#: src/objects/os/windows/savedesktopicon.c:98 | |
718 | 718 | #: src/objects/os/macos/savedesktopicon.c:53 |
719 | 719 | msgid "Save session shortcut" |
720 | 720 | msgstr "" |
... | ... | @@ -727,7 +727,7 @@ msgstr "" |
727 | 727 | msgid "Save to shortcut file" |
728 | 728 | msgstr "" |
729 | 729 | |
730 | -#: src/objects/os/windows/savedesktopicon.c:186 | |
730 | +#: src/objects/os/windows/savedesktopicon.c:176 | |
731 | 731 | msgid "Save to windows shortcut" |
732 | 732 | msgstr "" |
733 | 733 | |
... | ... | @@ -792,7 +792,7 @@ msgid "Session Trace" |
792 | 792 | msgstr "" |
793 | 793 | |
794 | 794 | #: src/objects/actions/save.c:63 src/objects/os/linux/savedesktopicon.c:85 |
795 | -#: src/objects/os/windows/savedesktopicon.c:96 | |
795 | +#: src/objects/os/windows/savedesktopicon.c:86 | |
796 | 796 | msgid "Session file" |
797 | 797 | msgstr "" |
798 | 798 | |
... | ... | @@ -807,7 +807,7 @@ msgid "Session in new window" |
807 | 807 | msgstr "" |
808 | 808 | |
809 | 809 | #: src/objects/actions/save.c:56 src/objects/os/linux/savedesktopicon.c:77 |
810 | -#: src/objects/os/windows/savedesktopicon.c:88 | |
810 | +#: src/objects/os/windows/savedesktopicon.c:78 | |
811 | 811 | msgid "Session name" |
812 | 812 | msgstr "" |
813 | 813 | |
... | ... | @@ -843,7 +843,7 @@ msgid "Setup toolbar" |
843 | 843 | msgstr "" |
844 | 844 | |
845 | 845 | #: src/objects/os/linux/savedesktopicon.c:70 |
846 | -#: src/objects/os/windows/savedesktopicon.c:75 | |
846 | +#: src/objects/os/windows/savedesktopicon.c:65 | |
847 | 847 | msgid "Shortcut file" |
848 | 848 | msgstr "" |
849 | 849 | |
... | ... | @@ -906,11 +906,11 @@ msgstr "" |
906 | 906 | msgid "System default" |
907 | 907 | msgstr "" |
908 | 908 | |
909 | -#: src/objects/settings/gsettings.c:133 | |
909 | +#: src/objects/application/application.c:546 | |
910 | 910 | msgid "System settings error" |
911 | 911 | msgstr "" |
912 | 912 | |
913 | -#: src/main/tools.c:75 | |
913 | +#: src/main/tools.c:64 | |
914 | 914 | msgid "TN3270 Session Files" |
915 | 915 | msgstr "" |
916 | 916 | |
... | ... | @@ -956,7 +956,7 @@ msgid "The file to save the current session preferences" |
956 | 956 | msgstr "" |
957 | 957 | |
958 | 958 | #: src/objects/os/linux/savedesktopicon.c:86 |
959 | -#: src/objects/os/windows/savedesktopicon.c:97 | |
959 | +#: src/objects/os/windows/savedesktopicon.c:87 | |
960 | 960 | msgid "The file with the session preferences for this shortcut" |
961 | 961 | msgstr "" |
962 | 962 | |
... | ... | @@ -972,7 +972,7 @@ msgstr "" |
972 | 972 | msgid "The name of associated action" |
973 | 973 | msgstr "" |
974 | 974 | |
975 | -#: src/objects/window/window.c:206 | |
975 | +#: src/objects/window/window.c:207 | |
976 | 976 | msgid "The name of the actions in the header bar" |
977 | 977 | msgstr "" |
978 | 978 | |
... | ... | @@ -1001,7 +1001,7 @@ msgid "The position of the keypad" |
1001 | 1001 | msgstr "" |
1002 | 1002 | |
1003 | 1003 | #: src/objects/actions/save.c:57 src/objects/os/linux/savedesktopicon.c:79 |
1004 | -#: src/objects/os/windows/savedesktopicon.c:90 | |
1004 | +#: src/objects/os/windows/savedesktopicon.c:80 | |
1005 | 1005 | msgid "The session name used in the window/tab title (empty for default)" |
1006 | 1006 | msgstr "" |
1007 | 1007 | |
... | ... | @@ -1085,10 +1085,8 @@ msgstr "" |
1085 | 1085 | msgid "UI Type" |
1086 | 1086 | msgstr "" |
1087 | 1087 | |
1088 | -#: src/objects/settings/gsettings.c:131 | |
1089 | -msgid "" | |
1090 | -"Unable to initialize system settings. Application may crash in unexpected " | |
1091 | -"ways" | |
1088 | +#: src/objects/application/application.c:544 | |
1089 | +msgid "Unable to initialize settings. Application may crash in unexpected ways" | |
1092 | 1090 | msgstr "" |
1093 | 1091 | |
1094 | 1092 | #: src/objects/os/windows/open.c:137 |
... | ... | @@ -1101,7 +1099,7 @@ msgstr "" |
1101 | 1099 | msgid "Unselect" |
1102 | 1100 | msgstr "" |
1103 | 1101 | |
1104 | -#: src/objects/application/actions/about.c:98 | |
1102 | +#: src/objects/application/actions/about.c:116 | |
1105 | 1103 | #, c-format |
1106 | 1104 | msgid "Unstable version %s-%s" |
1107 | 1105 | msgstr "" |
... | ... | @@ -1111,7 +1109,7 @@ msgstr "" |
1111 | 1109 | msgid "Use +/- for field navigation" |
1112 | 1110 | msgstr "" |
1113 | 1111 | |
1114 | -#: src/objects/application/actions/about.c:100 | |
1112 | +#: src/objects/application/actions/about.c:118 | |
1115 | 1113 | #, c-format |
1116 | 1114 | msgid "Version %s-%s" |
1117 | 1115 | msgstr "" |
... | ... | @@ -1123,7 +1121,7 @@ msgstr "" |
1123 | 1121 | msgid "View" |
1124 | 1122 | msgstr "" |
1125 | 1123 | |
1126 | -#: src/objects/application/actions/about.c:191 | |
1124 | +#: src/objects/application/actions/about.c:209 | |
1127 | 1125 | msgid "View this project on github" |
1128 | 1126 | msgstr "" |
1129 | 1127 | |
... | ... | @@ -1132,7 +1130,7 @@ msgstr "" |
1132 | 1130 | msgid "Window with default session" |
1133 | 1131 | msgstr "" |
1134 | 1132 | |
1135 | -#: src/objects/os/windows/savedesktopicon.c:189 | |
1133 | +#: src/objects/os/windows/savedesktopicon.c:179 | |
1136 | 1134 | msgid "Windows shortcuts" |
1137 | 1135 | msgstr "" |
1138 | 1136 | |
... | ... | @@ -1142,7 +1140,7 @@ msgstr "" |
1142 | 1140 | |
1143 | 1141 | #: src/objects/actions/save.c:103 src/objects/settings/dialog.c:78 |
1144 | 1142 | #: src/objects/os/linux/savedesktopicon.c:140 |
1145 | -#: src/objects/os/windows/savedesktopicon.c:134 | |
1143 | +#: src/objects/os/windows/savedesktopicon.c:124 | |
1146 | 1144 | msgid "_Cancel" |
1147 | 1145 | msgstr "" |
1148 | 1146 | |
... | ... | @@ -1192,7 +1190,7 @@ msgid "_Rename session" |
1192 | 1190 | msgstr "" |
1193 | 1191 | |
1194 | 1192 | #: src/objects/actions/save.c:104 src/objects/os/linux/savedesktopicon.c:141 |
1195 | -#: src/objects/os/windows/savedesktopicon.c:135 | |
1193 | +#: src/objects/os/windows/savedesktopicon.c:125 | |
1196 | 1194 | msgid "_Save" |
1197 | 1195 | msgstr "" |
1198 | 1196 | |
... | ... | @@ -1200,10 +1198,10 @@ msgstr "" |
1200 | 1198 | msgid "_View" |
1201 | 1199 | msgstr "" |
1202 | 1200 | |
1203 | -#: src/objects/application/actions/about.c:190 | |
1201 | +#: src/objects/application/actions/about.c:208 | |
1204 | 1202 | msgid "https://github.com/PerryWerneck/pw3270" |
1205 | 1203 | msgstr "" |
1206 | 1204 | |
1207 | -#: src/objects/application/actions/about.c:193 | |
1205 | +#: src/objects/application/actions/about.c:211 | |
1208 | 1206 | msgid "translator-credits" |
1209 | 1207 | msgstr "" | ... | ... |
... | ... | @@ -0,0 +1,24 @@ |
1 | +#!/bin/bash | |
2 | + | |
3 | +make all | |
4 | +if [ "$?" != "0" ]; then | |
5 | + exit -1 | |
6 | +fi | |
7 | + | |
8 | +make DESTDIR=${PWD}/.build install | |
9 | +if [ "$?" != "0" ]; then | |
10 | + exit -1 | |
11 | +fi | |
12 | + | |
13 | +bash ./win/makeruntime.sh | |
14 | +if [ "$?" != "0" ]; then | |
15 | + exit -1 | |
16 | +fi | |
17 | + | |
18 | +.build/mingw64/bin/pw3270.exe | |
19 | +if [ "$?" != "0" ]; then | |
20 | + exit -1 | |
21 | +fi | |
22 | + | |
23 | + | |
24 | + | ... | ... |
pushtag.sh
... | ... | @@ -1,32 +0,0 @@ |
1 | -#!/bin/bash | |
2 | -# | |
3 | -# https://help.github.com/articles/syncing-a-fork/ | |
4 | -# | |
5 | -# https://help.github.com/articles/configuring-a-remote-for-a-fork/ | |
6 | -# | |
7 | -# https://www.opentechguides.com/how-to/article/git/177/git-sync-repos.html | |
8 | -# | |
9 | -# Setup: | |
10 | -# | |
11 | -# git remote add github https://github.com/PerryWerneck/lib3270.git | |
12 | -# | |
13 | -# | |
14 | - | |
15 | -if [ -z ${1} ]; then | |
16 | - echo "Inform target tag" | |
17 | - exit -1 | |
18 | -fi | |
19 | - | |
20 | -git push | |
21 | - | |
22 | -git fetch origin | |
23 | - | |
24 | -git tag -f ${1} | |
25 | -git push -f --tags | |
26 | - | |
27 | -for repo in $(git remote -v | grep -v origin | grep "(push)" | awk '{print $1}') | |
28 | -do | |
29 | - echo "Updating ${repo} ..." | |
30 | - git push ${repo} -f --tags | |
31 | -done | |
32 | - |
pw3270.cbp
... | ... | @@ -58,6 +58,9 @@ |
58 | 58 | <Unit filename="src/main/builder.c"> |
59 | 59 | <Option compilerVar="CC" /> |
60 | 60 | </Unit> |
61 | + <Unit filename="src/main/linux/tools.c"> | |
62 | + <Option compilerVar="CC" /> | |
63 | + </Unit> | |
61 | 64 | <Unit filename="src/main/main.c"> |
62 | 65 | <Option compilerVar="CC" /> |
63 | 66 | </Unit> |
... | ... | @@ -69,6 +72,9 @@ |
69 | 72 | <Option compilerVar="CC" /> |
70 | 73 | </Unit> |
71 | 74 | <Unit filename="src/main/windows/resources.rc" /> |
75 | + <Unit filename="src/main/windows/tools.c"> | |
76 | + <Option compilerVar="CC" /> | |
77 | + </Unit> | |
72 | 78 | <Unit filename="src/objects/actions/abstract.c"> |
73 | 79 | <Option compilerVar="CC" /> |
74 | 80 | </Unit> | ... | ... |
schemas/Makefile.in
... | ... | @@ -55,15 +55,15 @@ all: |
55 | 55 | install: \ |
56 | 56 | all |
57 | 57 | |
58 | - @$(MKDIR) $(DESTDIR)/$(schemadir) | |
58 | + @$(MKDIR) $(DESTDIR)$(schemadir) | |
59 | 59 | @$(INSTALL_DATA) \ |
60 | 60 | application.gschema.xml \ |
61 | - $(DESTDIR)/$(schemadir)/$(PRODUCT_NAME)-application.gschema.xml | |
61 | + $(DESTDIR)$(schemadir)/$(PRODUCT_NAME)-application.gschema.xml | |
62 | 62 | |
63 | 63 | @$(INSTALL_DATA) \ |
64 | 64 | window.gschema.xml \ |
65 | - $(DESTDIR)/$(schemadir)/$(PRODUCT_NAME)-window.gschema.xml | |
65 | + $(DESTDIR)$(schemadir)/$(PRODUCT_NAME)-window.gschema.xml | |
66 | 66 | |
67 | 67 | @$(GLIB_SCHEMA_COMPILER) \ |
68 | - $(DESTDIR)/$(schemadir) | |
68 | + $(DESTDIR)$(schemadir) | |
69 | 69 | ... | ... |
src/include/pw3270.h
src/main/builder.c
... | ... | @@ -20,12 +20,17 @@ |
20 | 20 | #include "private.h" |
21 | 21 | #include <pw3270/application.h> |
22 | 22 | #include <pw3270/keypad.h> |
23 | + #include <pw3270.h> | |
23 | 24 | |
24 | 25 | GtkBuilder * pw3270_application_builder_new(GApplication *application) { |
25 | 26 | |
26 | 27 | #if !defined(DEBUG) |
27 | 28 | |
28 | - lib3270_autoptr(char) filename = lib3270_build_data_filename(G_STRINGIFY(PRODUCT_NAME) ".ui.xml",NULL); | |
29 | + #if defined(G_OS_WIN32) | |
30 | + g_autofree gchar * filename = pw3270_build_data_filename(G_STRINGIFY(PRODUCT_NAME) ".ui.xml"); | |
31 | + #else | |
32 | + lib3270_autoptr(char) filename = lib3270_build_data_filename(G_STRINGIFY(PRODUCT_NAME) ".ui.xml",NULL); | |
33 | + #endif // G_OS_WIN32 | |
29 | 34 | |
30 | 35 | #elif defined(G_OS_UNIX) |
31 | 36 | ... | ... |
... | ... | @@ -0,0 +1,49 @@ |
1 | +/* SPDX-License-Identifier: LGPL-3.0-or-later */ | |
2 | + | |
3 | +/* | |
4 | + * Copyright (C) <2008> <Banco do Brasil S.A.> | |
5 | + * | |
6 | + * This program is free software: you can redistribute it and/or modify | |
7 | + * it under the terms of the GNU Lesser General Public License as published | |
8 | + * by the Free Software Foundation, either version 3 of the License, or | |
9 | + * (at your option) any later version. | |
10 | + * | |
11 | + * This program is distributed in the hope that it will be useful, | |
12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | + * GNU General Public License for more details. | |
15 | + * | |
16 | + * You should have received a copy of the GNU Lesser General Public License | |
17 | + * along with this program. If not, see <https://www.gnu.org/licenses/>. | |
18 | + */ | |
19 | + | |
20 | + #include <config.h> | |
21 | + #include <pw3270.h> | |
22 | + | |
23 | + gchar * pw3270_build_data_path(const char *name) { | |
24 | + | |
25 | + gchar * path = g_build_filename(G_STRINGIFY(DATADIR),name,NULL); | |
26 | + | |
27 | + if(g_file_test(path,G_FILE_TEST_IS_DIR)) { | |
28 | + return path; | |
29 | + } | |
30 | + g_free(path); | |
31 | + | |
32 | + g_message("Cant find path for '%s'",path); | |
33 | + return NULL; | |
34 | + | |
35 | + } | |
36 | + | |
37 | + gchar * pw3270_build_data_filename(const char *filename) { | |
38 | + | |
39 | + gchar * path = g_build_filename(G_STRINGIFY(DATADIR),filename,NULL); | |
40 | + | |
41 | + if(g_file_test(path,G_FILE_TEST_IS_REGULAR)) { | |
42 | + return path; | |
43 | + } | |
44 | + g_free(path); | |
45 | + | |
46 | + g_error("Cant find '%s'",filename); | |
47 | + return NULL; | |
48 | + } | |
49 | + | ... | ... |
src/main/main.c
1 | +/* SPDX-License-Identifier: LGPL-3.0-or-later */ | |
2 | + | |
1 | 3 | /* |
2 | - * "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270 | |
3 | - * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a | |
4 | - * aplicativos mainframe. Registro no INPI sob o nome G3270. Registro no INPI sob | |
5 | - * o nome G3270. | |
6 | - * | |
7 | 4 | * Copyright (C) <2008> <Banco do Brasil S.A.> |
8 | 5 | * |
9 | - * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob | |
10 | - * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela | |
11 | - * Free Software Foundation. | |
12 | - * | |
13 | - * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER | |
14 | - * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO | |
15 | - * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para | |
16 | - * obter mais detalhes. | |
17 | - * | |
18 | - * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este | |
19 | - * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin | |
20 | - * St, Fifth Floor, Boston, MA 02110-1301 USA | |
21 | - * | |
22 | - * Este programa está nomeado como main.c e possui - linhas de código. | |
23 | - * | |
24 | - * Contatos: | |
6 | + * This program is free software: you can redistribute it and/or modify | |
7 | + * it under the terms of the GNU Lesser General Public License as published | |
8 | + * by the Free Software Foundation, either version 3 of the License, or | |
9 | + * (at your option) any later version. | |
25 | 10 | * |
26 | - * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck) | |
27 | - * erico.mendonca@gmail.com (Erico Mascarenhas Mendonça) | |
11 | + * This program is distributed in the hope that it will be useful, | |
12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | + * GNU General Public License for more details. | |
28 | 15 | * |
16 | + * You should have received a copy of the GNU Lesser General Public License | |
17 | + * along with this program. If not, see <https://www.gnu.org/licenses/>. | |
29 | 18 | */ |
30 | 19 | |
31 | 20 | /** |
... | ... | @@ -74,10 +63,19 @@ int main (int argc, char **argv) { |
74 | 63 | |
75 | 64 | #ifdef _WIN32 |
76 | 65 | { |
77 | - g_autofree gchar * appdir = g_win32_get_package_installation_directory_of_module(NULL); | |
78 | - g_autofree gchar * locdir = g_build_filename(appdir,"locale",NULL); | |
79 | - debug("Locale from \"%s\"\n",locdir); | |
80 | - bindtextdomain( G_STRINGIFY(PRODUCT_NAME), locdir ); | |
66 | + g_autofree gchar * pkgdir = g_win32_get_package_installation_directory_of_module(NULL); | |
67 | + { | |
68 | + g_autofree gchar * appdir = g_build_filename(pkgdir,"locale",NULL); | |
69 | + if(g_file_test(appdir,G_FILE_TEST_IS_DIR)) { | |
70 | + bindtextdomain( PACKAGE_NAME, appdir ); | |
71 | + } else { | |
72 | + g_autofree gchar * sysdir = g_build_filename(pkgdir,"share","locale",NULL); | |
73 | + if(g_file_test(sysdir,G_FILE_TEST_IS_DIR)) { | |
74 | + bindtextdomain( PACKAGE_NAME, sysdir ); | |
75 | + } | |
76 | + } | |
77 | + | |
78 | + } | |
81 | 79 | } |
82 | 80 | #endif // _WIN32 |
83 | 81 | ... | ... |
src/main/tools.c
1 | +/* SPDX-License-Identifier: LGPL-3.0-or-later */ | |
2 | + | |
1 | 3 | /* |
2 | - * "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270 | |
3 | - * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a | |
4 | - * aplicativos mainframe. Registro no INPI sob o nome G3270. Registro no INPI sob | |
5 | - * o nome G3270. | |
6 | - * | |
7 | 4 | * Copyright (C) <2008> <Banco do Brasil S.A.> |
8 | 5 | * |
9 | - * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob | |
10 | - * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela | |
11 | - * Free Software Foundation. | |
12 | - * | |
13 | - * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER | |
14 | - * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO | |
15 | - * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para | |
16 | - * obter mais detalhes. | |
17 | - * | |
18 | - * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este | |
19 | - * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin | |
20 | - * St, Fifth Floor, Boston, MA 02110-1301 USA | |
21 | - * | |
22 | - * Este programa está nomeado como main.c e possui - linhas de código. | |
23 | - * | |
24 | - * Contatos: | |
6 | + * This program is free software: you can redistribute it and/or modify | |
7 | + * it under the terms of the GNU Lesser General Public License as published | |
8 | + * by the Free Software Foundation, either version 3 of the License, or | |
9 | + * (at your option) any later version. | |
25 | 10 | * |
26 | - * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck) | |
27 | - * erico.mendonca@gmail.com (Erico Mascarenhas Mendonça) | |
11 | + * This program is distributed in the hope that it will be useful, | |
12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | + * GNU General Public License for more details. | |
28 | 15 | * |
16 | + * You should have received a copy of the GNU Lesser General Public License | |
17 | + * along with this program. If not, see <https://www.gnu.org/licenses/>. | |
29 | 18 | */ |
30 | 19 | |
31 | 20 | /** | ... | ... |
... | ... | @@ -0,0 +1,62 @@ |
1 | +/* SPDX-License-Identifier: LGPL-3.0-or-later */ | |
2 | + | |
3 | +/* | |
4 | + * Copyright (C) <2008> <Banco do Brasil S.A.> | |
5 | + * | |
6 | + * This program is free software: you can redistribute it and/or modify | |
7 | + * it under the terms of the GNU Lesser General Public License as published | |
8 | + * by the Free Software Foundation, either version 3 of the License, or | |
9 | + * (at your option) any later version. | |
10 | + * | |
11 | + * This program is distributed in the hope that it will be useful, | |
12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | + * GNU General Public License for more details. | |
15 | + * | |
16 | + * You should have received a copy of the GNU Lesser General Public License | |
17 | + * along with this program. If not, see <https://www.gnu.org/licenses/>. | |
18 | + */ | |
19 | + | |
20 | + #include <config.h> | |
21 | + #include <pw3270.h> | |
22 | + | |
23 | + gchar * pw3270_build_data_path(const char *name) { | |
24 | + | |
25 | + g_autofree gchar * pkgdir = g_win32_get_package_installation_directory_of_module(NULL); | |
26 | + | |
27 | + gchar * path = g_build_filename(pkgdir,name,NULL); | |
28 | + if(g_file_test(path,G_FILE_TEST_IS_DIR)) { | |
29 | + return path; | |
30 | + } | |
31 | + g_free(path); | |
32 | + | |
33 | + path = g_build_filename(pkgdir,"share",G_STRINGIFY(PRODUCT_NAME),name,NULL); | |
34 | + if(g_file_test(path,G_FILE_TEST_IS_DIR)) { | |
35 | + return path; | |
36 | + } | |
37 | + | |
38 | + g_free(path); | |
39 | + g_message("Cant find path for '%s'",path); | |
40 | + return NULL; | |
41 | + | |
42 | + } | |
43 | + | |
44 | + gchar * pw3270_build_data_filename(const char *filename) { | |
45 | + | |
46 | + g_autofree gchar * pkgdir = g_win32_get_package_installation_directory_of_module(NULL); | |
47 | + | |
48 | + gchar * path = g_build_filename(pkgdir,filename,NULL); | |
49 | + if(g_file_test(path,G_FILE_TEST_IS_REGULAR)) { | |
50 | + return path; | |
51 | + } | |
52 | + g_free(path); | |
53 | + | |
54 | + path = g_build_filename(pkgdir,"share",G_STRINGIFY(PRODUCT_NAME),filename,NULL); | |
55 | + if(g_file_test(path,G_FILE_TEST_IS_REGULAR)) { | |
56 | + return path; | |
57 | + } | |
58 | + | |
59 | + g_free(path); | |
60 | + g_error("Cant find '%s'",filename); | |
61 | + return NULL; | |
62 | + } | ... | ... |
src/objects/application/actions/about.c
... | ... | @@ -32,6 +32,55 @@ |
32 | 32 | #include <pw3270/actions.h> |
33 | 33 | #include <pw3270/application.h> |
34 | 34 | |
35 | +static char * find_logo() { | |
36 | + | |
37 | + static const char * names[] = { | |
38 | +#ifdef _WIN32 | |
39 | + | |
40 | + G_STRINGIFY(PRODUCT_NAME) "-about.png", | |
41 | + G_STRINGIFY(PRODUCT_NAME) "-logo.png", | |
42 | + G_STRINGIFY(PRODUCT_NAME) ".png", | |
43 | + G_STRINGIFY(PACKAGE_NAME) "-about.png", | |
44 | + G_STRINGIFY(PACKAGE_NAME) "-logo.png", | |
45 | + G_STRINGIFY(PACKAGE_NAME) ".png", | |
46 | + | |
47 | +#else | |
48 | + | |
49 | + G_STRINGIFY(PRODUCT_NAME) "-about.svg", | |
50 | + G_STRINGIFY(PRODUCT_NAME) "-logo.svg", | |
51 | + G_STRINGIFY(PRODUCT_NAME) ".svg", | |
52 | + G_STRINGIFY(PRODUCT_NAME) "-about.png", | |
53 | + G_STRINGIFY(PRODUCT_NAME) "-logo.png", | |
54 | + G_STRINGIFY(PRODUCT_NAME) ".png", | |
55 | + | |
56 | + G_STRINGIFY(PACKAGE_NAME) "-about.svg", | |
57 | + G_STRINGIFY(PACKAGE_NAME) "-logo.svg", | |
58 | + G_STRINGIFY(PACKAGE_NAME) ".svg", | |
59 | + G_STRINGIFY(PACKAGE_NAME) "-about.png", | |
60 | + G_STRINGIFY(PACKAGE_NAME) "-logo.png", | |
61 | + G_STRINGIFY(PACKAGE_NAME) ".png", | |
62 | +#endif // _WIN32 | |
63 | + }; | |
64 | + | |
65 | + size_t ix; | |
66 | + | |
67 | + for(ix = 0; ix < G_N_ELEMENTS(names); ix++) { | |
68 | + | |
69 | + char * filename = lib3270_build_data_filename(names[ix],NULL); | |
70 | + | |
71 | + if(filename) { | |
72 | + | |
73 | + if(g_file_test(filename,G_FILE_TEST_IS_REGULAR)) | |
74 | + return filename; | |
75 | + free(filename); | |
76 | + | |
77 | + } | |
78 | + | |
79 | + } | |
80 | + | |
81 | + return NULL; | |
82 | +} | |
83 | + | |
35 | 84 | static GtkWidget * factory(PW3270Action G_GNUC_UNUSED(*action), GtkApplication *application) { |
36 | 85 | |
37 | 86 | GtkAboutDialog * dialog = GTK_ABOUT_DIALOG(gtk_about_dialog_new()); |
... | ... | @@ -46,49 +95,18 @@ static GtkWidget * factory(PW3270Action G_GNUC_UNUSED(*action), GtkApplication * |
46 | 95 | |
47 | 96 | // Get application logo |
48 | 97 | { |
49 | - static const char * names[] = { | |
50 | - G_STRINGIFY(PRODUCT_NAME) "-about.svg", | |
51 | - G_STRINGIFY(PRODUCT_NAME) "-logo.svg", | |
52 | - G_STRINGIFY(PRODUCT_NAME) ".svg", | |
53 | - G_STRINGIFY(PRODUCT_NAME) "-logo.png", | |
54 | - G_STRINGIFY(PRODUCT_NAME) ".png", | |
55 | - | |
56 | - G_STRINGIFY(PACKAGE_NAME) "-about.svg", | |
57 | - G_STRINGIFY(PACKAGE_NAME) "-logo.svg", | |
58 | - G_STRINGIFY(PACKAGE_NAME) ".svg", | |
59 | - G_STRINGIFY(PACKAGE_NAME) "-logo.png", | |
60 | - G_STRINGIFY(PACKAGE_NAME) ".png", | |
61 | - }; | |
62 | - | |
63 | - size_t ix; | |
64 | - | |
65 | - for(ix = 0; ix < G_N_ELEMENTS(names); ix++) { | |
66 | - | |
67 | -#ifdef DEBUG | |
68 | - g_autofree gchar * filename = g_build_filename(".","branding",names[ix],NULL); | |
69 | - debug("Searching for '%s'",filename); | |
70 | -#else | |
71 | - lib3270_autoptr(char) filename = lib3270_build_data_filename(names[ix],NULL); | |
72 | -#endif // DEBUG | |
73 | - | |
74 | - if(!g_file_test(filename,G_FILE_TEST_IS_REGULAR)) | |
75 | - continue; | |
76 | - | |
77 | - GError * error = NULL; | |
78 | - g_autoptr(GdkPixbuf) pix = gdk_pixbuf_new_from_file_at_size(filename,-1,150,&error); | |
98 | + char * logo = find_logo(); | |
99 | + if(logo) { | |
100 | + GError * error = NULL; | |
101 | + g_autoptr(GdkPixbuf) pix = gdk_pixbuf_new_from_file_at_size(logo,-1,150,&error); | |
79 | 102 | if(error) { |
80 | - g_warning("Can't load \"%s\": %s",filename,error->message); | |
103 | + g_message("Can't load \"%s\": %s",logo,error->message); | |
81 | 104 | g_error_free(error); |
82 | - continue; | |
83 | - } | |
84 | - | |
85 | - if(pix) { | |
105 | + } else { | |
86 | 106 | gtk_about_dialog_set_logo(dialog,pix); |
87 | - break; | |
88 | 107 | } |
89 | - | |
108 | + free(logo); | |
90 | 109 | } |
91 | - | |
92 | 110 | } |
93 | 111 | |
94 | 112 | // Set version | ... | ... |
src/objects/application/application.c
... | ... | @@ -430,8 +430,6 @@ void startup(GApplication *application) { |
430 | 430 | |
431 | 431 | G_APPLICATION_CLASS(pw3270Application_parent_class)->startup(application); |
432 | 432 | |
433 | -// GSettings *settings = pw3270_application_get_settings(application); | |
434 | - | |
435 | 433 | // |
436 | 434 | // Common actions |
437 | 435 | // |
... | ... | @@ -488,25 +486,33 @@ void startup(GApplication *application) { |
488 | 486 | // Load keypad models |
489 | 487 | // |
490 | 488 | { |
491 | - lib3270_autoptr(char) keypad_path = lib3270_build_data_filename("keypad",NULL); | |
489 | + g_autofree gchar *keypad_path = pw3270_build_data_path("keypad"); | |
490 | + | |
491 | + if(keypad_path) { | |
492 | + | |
493 | + g_message("Searching for keypads in '%s'",keypad_path); | |
492 | 494 | |
493 | - g_autoptr(GError) error = NULL; | |
494 | - g_autoptr(GDir) dir = g_dir_open(keypad_path,0,&error); | |
495 | + g_autoptr(GError) error = NULL; | |
496 | + g_autoptr(GDir) dir = g_dir_open(keypad_path,0,&error); | |
495 | 497 | |
496 | - if(dir) { | |
498 | + if(dir) { | |
499 | + | |
500 | + const gchar *name = g_dir_read_name(dir); | |
501 | + while(!error && name) { | |
502 | + g_autofree gchar * path = g_build_filename(keypad_path,name,NULL); | |
503 | + app->keypads = pw3270_keypad_model_new_from_xml(app->keypads,path); | |
504 | + name = g_dir_read_name(dir); | |
505 | + } | |
497 | 506 | |
498 | - const gchar *name = g_dir_read_name(dir); | |
499 | - while(!error && name) { | |
500 | - g_autofree gchar * path = g_build_filename(keypad_path,name,NULL); | |
501 | - app->keypads = pw3270_keypad_model_new_from_xml(app->keypads,path); | |
502 | - name = g_dir_read_name(dir); | |
503 | 507 | } |
504 | 508 | |
505 | - } | |
509 | + if(error) { | |
510 | + g_message("Can't read %s: %s",keypad_path,error->message); | |
511 | + } | |
512 | + | |
506 | 513 | |
507 | - if(error) { | |
508 | - g_message("Can't read %s: %s",keypad_path,error->message); | |
509 | 514 | } |
515 | + | |
510 | 516 | } |
511 | 517 | |
512 | 518 | // |
... | ... | @@ -525,6 +531,32 @@ void activate(GApplication *application) { |
525 | 531 | |
526 | 532 | GtkWidget * window = pw3270_application_window_new(GTK_APPLICATION(application),NULL); |
527 | 533 | |
534 | + if(!PW3270_APPLICATION(application)->settings) { | |
535 | + | |
536 | + GtkWidget * dialog = gtk_message_dialog_new_with_markup( | |
537 | + NULL, | |
538 | + 0, | |
539 | + GTK_MESSAGE_ERROR, | |
540 | + GTK_BUTTONS_CLOSE, | |
541 | + _("Initialization has failed") | |
542 | + ); | |
543 | + | |
544 | + gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(dialog),_("Unable to initialize settings. Application may crash in unexpected ways")); | |
545 | + | |
546 | + gtk_window_set_title(GTK_WINDOW(dialog),_("System settings error")); | |
547 | + | |
548 | + gtk_window_set_position(GTK_WINDOW(dialog), GTK_WIN_POS_CENTER); | |
549 | + | |
550 | + gtk_widget_show_all(dialog); | |
551 | + | |
552 | + gtk_dialog_run(GTK_DIALOG(dialog)); | |
553 | + | |
554 | + gtk_widget_destroy(dialog); | |
555 | + | |
556 | + g_application_quit(G_APPLICATION(application)); | |
557 | + | |
558 | + } | |
559 | + | |
528 | 560 | // Present the new window |
529 | 561 | pw3270_window_set_current_page(window,0); |
530 | 562 | gtk_window_present(GTK_WINDOW(window)); | ... | ... |
src/objects/os/windows/savedesktopicon.c
1 | +/* SPDX-License-Identifier: LGPL-3.0-or-later */ | |
2 | + | |
1 | 3 | /* |
2 | - * "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270 | |
3 | - * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a | |
4 | - * aplicativos mainframe. Registro no INPI sob o nome G3270. | |
5 | - * | |
6 | - * Copyright (C) <2008> <Banco do Brasil S.A.> | |
7 | - * | |
8 | - * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob | |
9 | - * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela | |
10 | - * Free Software Foundation. | |
11 | - * | |
12 | - * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER | |
13 | - * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO | |
14 | - * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para | |
15 | - * obter mais detalhes. | |
16 | - * | |
17 | - * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este | |
18 | - * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin | |
19 | - * St, Fifth Floor, Boston, MA 02110-1301 USA | |
20 | - * | |
21 | - * Este programa está nomeado como - e possui - linhas de código. | |
4 | + * Copyright (C) 2008 Banco do Brasil S.A. | |
22 | 5 | * |
23 | - * Contatos: | |
6 | + * This program is free software: you can redistribute it and/or modify | |
7 | + * it under the terms of the GNU Lesser General Public License as published | |
8 | + * by the Free Software Foundation, either version 3 of the License, or | |
9 | + * (at your option) any later version. | |
24 | 10 | * |
25 | - * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck) | |
26 | - * erico.mendonca@gmail.com (Erico Mascarenhas Mendonça) | |
11 | + * This program is distributed in the hope that it will be useful, | |
12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | + * GNU General Public License for more details. | |
27 | 15 | * |
16 | + * You should have received a copy of the GNU Lesser General Public License | |
17 | + * along with this program. If not, see <https://www.gnu.org/licenses/>. | |
28 | 18 | */ |
29 | 19 | |
30 | 20 | /** | ... | ... |
src/objects/settings/gsettings.c
... | ... | @@ -30,11 +30,94 @@ |
30 | 30 | #include <pw3270/application.h> |
31 | 31 | #include <pw3270/window.h> |
32 | 32 | |
33 | + /* | |
34 | + static void failed() { | |
35 | + | |
36 | + GtkWidget * dialog = gtk_message_dialog_new_with_markup( | |
37 | + NULL, | |
38 | + 0, | |
39 | + GTK_MESSAGE_ERROR, | |
40 | + GTK_BUTTONS_CLOSE, | |
41 | + _("Can't load system settings") | |
42 | + ); | |
43 | + | |
44 | + gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(dialog),_("Unable to initialize system settings. Application may crash in unexpected ways")); | |
45 | + | |
46 | + gtk_window_set_title(GTK_WINDOW(dialog),_("System settings error")); | |
47 | + | |
48 | + gtk_window_set_position(GTK_WINDOW(dialog), GTK_WIN_POS_CENTER); | |
49 | + | |
50 | + gtk_widget_show_all(dialog); | |
51 | + | |
52 | + gtk_dialog_run(GTK_DIALOG(dialog)); | |
53 | + | |
54 | + gtk_widget_destroy(dialog); | |
55 | + | |
56 | + g_application_quit(g_application_get_default()); | |
57 | + | |
58 | + } | |
59 | + */ | |
60 | + | |
33 | 61 | static GSettings * settings_new(const gchar *schema_id) { |
34 | 62 | |
35 | 63 | GSettings *settings = NULL; |
36 | 64 | |
37 | -#if defined(DEBUG) | |
65 | +#if defined(_WIN32) | |
66 | + | |
67 | + { | |
68 | + g_autofree gchar * pkgdir = g_win32_get_package_installation_directory_of_module(NULL); | |
69 | + | |
70 | + g_autofree gchar * appdir = g_build_filename(pkgdir,"gschemas.compiled",NULL); | |
71 | + g_autofree gchar * sysdir = g_build_filename(pkgdir,"share","glib-2.0","schemas","gschemas.compiled",NULL); | |
72 | + | |
73 | + const char * names[] = { appdir, sysdir }; | |
74 | + size_t ix; | |
75 | + | |
76 | + for(ix = 0; ix < G_N_ELEMENTS(names); ix++) { | |
77 | + | |
78 | + if(g_file_test(names[ix],G_FILE_TEST_IS_REGULAR)) { | |
79 | + | |
80 | + GError * error = NULL; | |
81 | + g_autofree gchar *dirname = g_path_get_dirname(names[ix]); | |
82 | + | |
83 | + GSettingsSchemaSource * source = | |
84 | + g_settings_schema_source_new_from_directory( | |
85 | + dirname, | |
86 | + NULL, | |
87 | + TRUE, | |
88 | + &error | |
89 | + ); | |
90 | + | |
91 | + if(error) { | |
92 | + g_warning("Error loading '%s': %s",names[ix],error->message); | |
93 | + g_error_free(error); | |
94 | + return NULL; | |
95 | + } | |
96 | + | |
97 | + GSettingsSchema * schema = | |
98 | + g_settings_schema_source_lookup( | |
99 | + source, | |
100 | + schema_id, | |
101 | + TRUE); | |
102 | + | |
103 | + g_message("Loading '%s'",names[ix]); | |
104 | + settings = g_settings_new_full(schema, NULL, NULL); | |
105 | + | |
106 | + g_settings_schema_source_unref(source); | |
107 | + | |
108 | + if(settings) { | |
109 | + g_message("Got gsettings from %s",names[ix]); | |
110 | + return settings; | |
111 | + } | |
112 | + | |
113 | + } | |
114 | + } | |
115 | + | |
116 | + | |
117 | + } | |
118 | + | |
119 | +#elif defined(DEBUG) | |
120 | + | |
38 | 121 | { |
39 | 122 | GError * error = NULL; |
40 | 123 | GSettingsSchemaSource * source = |
... | ... | @@ -62,87 +145,12 @@ |
62 | 145 | |
63 | 146 | g_settings_schema_source_unref(source); |
64 | 147 | } |
65 | -#elif defined(_WIN32) | |
66 | - { | |
67 | - g_autofree gchar * appdir = g_win32_get_package_installation_directory_of_module(NULL); | |
68 | - g_autofree gchar * filename = g_build_filename(appdir,"gschemas.compiled",NULL); | |
69 | - | |
70 | - if(g_file_test(filename,G_FILE_TEST_IS_REGULAR)) { | |
71 | - | |
72 | - GError * error = NULL; | |
73 | - g_autofree gchar *dirname = g_path_get_dirname(filename); | |
74 | - | |
75 | - GSettingsSchemaSource * source = | |
76 | - g_settings_schema_source_new_from_directory( | |
77 | - dirname, | |
78 | - NULL, | |
79 | - TRUE, | |
80 | - &error | |
81 | - ); | |
82 | - | |
83 | - if(error) { | |
84 | - g_warning("Error loading '%s': %s",filename,error->message); | |
85 | - g_error_free(error); | |
86 | - return NULL; | |
87 | - } | |
88 | - | |
89 | - GSettingsSchema * schema = | |
90 | - g_settings_schema_source_lookup( | |
91 | - source, | |
92 | - schema_id, | |
93 | - TRUE); | |
94 | - | |
95 | - g_message("Loading '%s'",filename); | |
96 | - settings = g_settings_new_full(schema, NULL, NULL); | |
97 | 148 | |
98 | - g_settings_schema_source_unref(source); | |
99 | - | |
100 | - } else { | |
101 | - | |
102 | -#ifdef DEBUG | |
103 | - g_message("Can't find '%s' loading from default path",filename); | |
104 | -#endif // DEBUG | |
105 | - settings = g_settings_new(schema_id); | |
106 | - | |
107 | - } | |
108 | - } | |
109 | 149 | #else |
110 | 150 | |
111 | -#ifdef DEBUG | |
112 | - g_message("Loading '%s' from default path","gschemas.compiled"); | |
113 | -#endif // DEBUG | |
114 | - | |
115 | 151 | settings = g_settings_new(schema_id); |
116 | 152 | |
117 | -#endif // DEBUG | |
118 | - | |
119 | - if(!settings) { | |
120 | - | |
121 | - g_warning("Error loading system settings"); | |
122 | - | |
123 | - GtkWidget * dialog = gtk_message_dialog_new_with_markup( | |
124 | - NULL, | |
125 | - 0, | |
126 | - GTK_MESSAGE_ERROR, | |
127 | - GTK_BUTTONS_CLOSE, | |
128 | - _("Can't load system settings") | |
129 | - ); | |
130 | - | |
131 | - gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(dialog),_("Unable to initialize system settings. Application may crash in unexpected ways")); | |
132 | - | |
133 | - gtk_window_set_title(GTK_WINDOW(dialog),_("System settings error")); | |
134 | - | |
135 | - gtk_window_set_position(GTK_WINDOW(dialog), GTK_WIN_POS_CENTER); | |
136 | - | |
137 | - gtk_widget_show_all(dialog); | |
138 | - | |
139 | - //g_signal_connect(dialog,"close",G_CALLBACK(gtk_widget_destroy),NULL); | |
140 | - //g_signal_connect(dialog,"response",G_CALLBACK(gtk_widget_destroy),NULL); | |
141 | - gtk_dialog_run(GTK_DIALOG(dialog)); | |
142 | - | |
143 | - g_application_quit(g_application_get_default()); | |
144 | - | |
145 | - } | |
153 | +#endif | |
146 | 154 | |
147 | 155 | return settings; |
148 | 156 | } | ... | ... |
src/objects/window/window.c
... | ... | @@ -138,15 +138,16 @@ static void pw3270ApplicationWindow_class_init(pw3270ApplicationWindowClass *kla |
138 | 138 | #ifdef _WIN32 |
139 | 139 | "share/icons", |
140 | 140 | #endif // _WIN32 |
141 | + "share/" G_STRINGIFY(PRODUCT_NAME) "/icons" | |
141 | 142 | }; |
142 | 143 | |
143 | 144 | size_t ix; |
144 | 145 | for(ix = 0; ix < G_N_ELEMENTS(icon_search_paths); ix++) { |
145 | 146 | #if defined(DEBUG) |
146 | - lib3270_autoptr(char) path = g_build_filename(g_get_current_dir(),icon_search_paths[ix],NULL); | |
147 | + g_autofree gchar * path = g_build_filename(g_get_current_dir(),icon_search_paths[ix],NULL); | |
147 | 148 | #elif defined(_WIN32) |
148 | 149 | g_autofree gchar * appdir = g_win32_get_package_installation_directory_of_module(NULL); |
149 | - lib3270_autoptr(char) path = g_build_filename(appdir,icon_search_paths[ix],NULL); | |
150 | + g_autofree gchar * path = g_build_filename(appdir,icon_search_paths[ix],NULL); | |
150 | 151 | #else |
151 | 152 | lib3270_autoptr(char) path = lib3270_build_data_filename(icon_search_paths[ix],NULL); |
152 | 153 | #endif | ... | ... |
update.sh
win/building_on_windows-the-hard-way.txt
... | ... | @@ -1,24 +0,0 @@ |
1 | - | |
2 | - 1. Instalar o mingw e o pacote básico do msys ( http://www.mingw.org/wiki/Getting_Started ) | |
3 | - | |
4 | - 2. Abrir o shell mingw e executar (não é o cmd normal do windows, o ícone fica no menu do mingw). | |
5 | - . mingw-get install autotools | |
6 | - . mingw-get install gettext | |
7 | - . mingw-get install msys-openssl | |
8 | - . mingw-get install msys-libopenssl | |
9 | - | |
10 | - 3. Instalar o tortoise SVN ( http://tortoisesvn.net/downloads.html ) | |
11 | - | |
12 | - 4. Instalar o pacote completo do gtk | |
13 | - . Baixar o bundle em http://www.gtk.org/download/win32.php | |
14 | - . Descompactar o bundle em c:\mingw | |
15 | - | |
16 | - 5. Abrir uma linha de comando do mingw (não é o cmd normal do windows | |
17 | - . Mudar para o diretório dos fontes (PS: usei o tortoise svn para baixar os arquivos) | |
18 | - | |
19 | - 6. Executar ./autogen.sh (atente para o lado da barra, é "/" mesmo já que o prompt do mingw é um bash | |
20 | - . Vai dar alguns error relacionados a linguagem; não me preocupei com eles nessa etapa. | |
21 | - | |
22 | - 7. Executar ./configure - Ele vai dar falta da libssl porque, por algum motivo, a libssl do mingw4windows não se registra no pkg-config | |
23 | - | |
24 | - 8. Executar make |
win/building_windows_on_SuSE-the-easy-way.txt
... | ... | @@ -1,22 +0,0 @@ |
1 | - | |
2 | -The proposal of this document is to show how to build pw3270 installers for windows using the cross-compilers available on SuSE linux. | |
3 | - | |
4 | -1. First install the MinGW Repositories to your SuSE version from: | |
5 | - | |
6 | - * 32 bits: https://build.opensuse.org/project/show/windows:mingw:win32 | |
7 | - * 64 bits: https://build.opensuse.org/project/show/windows:mingw:win64 | |
8 | - | |
9 | -2. Get pw3270 sources from git | |
10 | - | |
11 | - * git clone http://softwarepublico.gov.br/gitlab/pw3270/principal.git ./pw3270 | |
12 | - | |
13 | -3. Install cross compilers | |
14 | - | |
15 | - * ./pw3270/win/install-cross.sh --all | |
16 | - | |
17 | - | |
18 | -4. Build pw3270 windows installers | |
19 | - | |
20 | - * cd pw3270/ && ./win/pack.sh | |
21 | - | |
22 | - |
... | ... | @@ -0,0 +1,480 @@ |
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 | +# Check command-line arguments | |
29 | +argument() { | |
30 | + | |
31 | + local cmdline | |
32 | + for cmdline in ${BASH_ARGV[*]} | |
33 | + do | |
34 | + if [ "$(echo ${cmdline} | sed "s@^--@@g" | sed "s@^-@@g" | cut -d= -f1)" == "${1}" ]; then | |
35 | + local value | |
36 | + value="$(echo ${cmdline} | cut -d= -f2)" | |
37 | + if [ -z "${value}" ]; then | |
38 | + echo "1" | |
39 | + else | |
40 | + echo "${value}" | |
41 | + fi | |
42 | + return 0 | |
43 | + fi | |
44 | + done | |
45 | + echo "" | |
46 | + return 2 | |
47 | +} | |
48 | + | |
49 | +argument "help" > /dev/null | |
50 | +if [ "$?" == "0" ]; then | |
51 | + echo "Use ${0} options" | |
52 | + echo "" | |
53 | + echo " --help Help options (this screen)" | |
54 | + echo " --zip Build zipfile" | |
55 | + echo " --nsi Build nsi installer" | |
56 | + echo " --upload Upload bundle to github" | |
57 | +fi | |
58 | + | |
59 | +# Setup default paths | |
60 | +srcdir="$(dirname $(dirname $(readlink -f "${0}")))" | |
61 | +cd ${srcdir} | |
62 | +if [ "$?" != "0" ]; then | |
63 | + echo "Cant cd to ${srcdir}" | |
64 | + exit -1 | |
65 | +fi | |
66 | + | |
67 | +if [ -z ${MINGW_PREFIX} ]; then | |
68 | + if [ -d "/usr/x86_64-w64-mingw32/sys-root/mingw" ]; then | |
69 | + MINGW_PREFIX="/usr/x86_64-w64-mingw32/sys-root/mingw" | |
70 | + PKG_CONFIG="/usr/bin/x86_64-w64-mingw32-pkg-config" | |
71 | + else | |
72 | + echo "Cant determine mingw prefix" | |
73 | + exit -1 | |
74 | + fi | |
75 | +fi | |
76 | + | |
77 | +if [ -z ${PKG_CONFIG} ]; then | |
78 | + PKG_CONFIG=${MINGW_PREFX}/bin/pkg-config | |
79 | +fi | |
80 | + | |
81 | +PACKAGE_NAME=$(grep AC_INIT configure.ac | cut -d[ -f2 | cut -d] -f1) | |
82 | +if [ -z ${PACKAGE_NAME} ]; then | |
83 | + echo "Cant determine package name" | |
84 | + exit -1 | |
85 | +fi | |
86 | + | |
87 | +PACKAGE_VERSION=$(grep AC_INIT configure.ac | cut -d[ -f3 | cut -d] -f1) | |
88 | +if [ -z ${PACKAGE_VERSION} ]; then | |
89 | + echo "Cant determine package name" | |
90 | + exit -1 | |
91 | +fi | |
92 | + | |
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 | |
99 | +if [ "$?" != "0" ]; then | |
100 | + echo "Cant mkdir base buildroot" | |
101 | + exit -1 | |
102 | +fi | |
103 | + | |
104 | +buildroot=$(readlink -f .bin/bundle) | |
105 | +if [ -z ${buildroot} ]; then | |
106 | + echo "Cant detect buildroot ${buildroot}" | |
107 | + exit -1 | |
108 | +fi | |
109 | + | |
110 | +mkdir -p "${buildroot}" | |
111 | +if [ "$?" != "0" ]; then | |
112 | + echo "Cant mkdir ${buildroot}" | |
113 | + exit -1 | |
114 | +fi | |
115 | + | |
116 | +rm -fr "${buildroot}/*" | |
117 | +if [ "$?" != "0" ]; then | |
118 | + echo "Cant clean ${buildroot}" | |
119 | + exit -1 | |
120 | +fi | |
121 | + | |
122 | +bindir="${buildroot}${MINGW_PREFIX}/bin" | |
123 | + | |
124 | +if [ -z "${WIN_ROOT}" ]; then | |
125 | + WIN_ROOT="/c/Windows" | |
126 | +fi | |
127 | + | |
128 | +export LANG=C | |
129 | + | |
130 | +prepare() { | |
131 | + | |
132 | + argument "help" > /dev/null | |
133 | + if [ "$?" == "0" ]; then | |
134 | + exit 0 | |
135 | + fi | |
136 | + | |
137 | + rm -fr "${buildroot}" | |
138 | + mkdir -p "${buildroot}" | |
139 | +} | |
140 | + | |
141 | +install_bin() { | |
142 | + | |
143 | + mkdir -p "${bindir}" | |
144 | + | |
145 | + AGAIN=1 | |
146 | + until [ $AGAIN = 0 ]; do | |
147 | + | |
148 | + SOURCES=$(mktemp) | |
149 | + REQUIRES=$(mktemp) | |
150 | + | |
151 | + find "${buildroot}" -iname "*.dll" > ${SOURCES} | |
152 | + find "${buildroot}" -iname "*.exe" >> ${SOURCES} | |
153 | + | |
154 | + while read FILENAME | |
155 | + do | |
156 | + echo ${FILENAME} | |
157 | + objdump -p ${FILENAME} | grep "DLL Name:" | cut -d: -f2 | tr "[:upper:]" "[:lower:]" >> ${REQUIRES} | |
158 | + done < ${SOURCES} | |
159 | + | |
160 | + libs_to_exclude=" | |
161 | + advapi32.dll | |
162 | + cfgmgr32.dll | |
163 | + comctl32.dll | |
164 | + comdlg32.dll | |
165 | + crypt32.dll | |
166 | + d3d8.dll | |
167 | + d3d9.dll | |
168 | + ddraw.dll | |
169 | + dnsapi.dll | |
170 | + dsound.dll | |
171 | + dwmapi.dll | |
172 | + gdi32.dll | |
173 | + gdiplus.dll | |
174 | + glu32.dll | |
175 | + glut32.dll | |
176 | + imm32.dll | |
177 | + iphlpapi.dll | |
178 | + kernel32.dll | |
179 | + ksuser.dll | |
180 | + mpr.dll | |
181 | + mscms.dll | |
182 | + mscoree.dll | |
183 | + msimg32.dll | |
184 | + msvcr71.dll | |
185 | + msvcr80.dll | |
186 | + msvcr90.dll | |
187 | + msvcrt.dll | |
188 | + mswsock.dll | |
189 | + netapi32.dll | |
190 | + odbc32.dll | |
191 | + ole32.dll | |
192 | + oleacc.dll | |
193 | + oleaut32.dll | |
194 | + opengl32.dll | |
195 | + psapi.dll | |
196 | + rpcrt4.dll | |
197 | + secur32.dll | |
198 | + setupapi.dll | |
199 | + shell32.dll | |
200 | + shlwapi.dll | |
201 | + user32.dll | |
202 | + usp10.dll | |
203 | + version.dll | |
204 | + wininet.dll | |
205 | + winmm.dll | |
206 | + wldap32.dll | |
207 | + ws2_32.dll | |
208 | + wsock32.dll | |
209 | + winspool.drv | |
210 | + ntdll.dll | |
211 | + winhttp.dll | |
212 | + hid.dll | |
213 | + bcrypt.dll | |
214 | + " | |
215 | + | |
216 | + # Remove system DLLs from list | |
217 | + for i in $libs_to_exclude; do | |
218 | + sed -i -e "/${i}/d" ${REQUIRES} | |
219 | + done | |
220 | + | |
221 | + AGAIN=0 | |
222 | + while read FILENAME | |
223 | + do | |
224 | + | |
225 | + echo ${FILENAME} | |
226 | + | |
227 | + if [ ! -e "${bindir}/${FILENAME}" ]; then | |
228 | + | |
229 | + if [ -e ${MINGW_PREFIX}/bin/${FILENAME} ]; then | |
230 | + | |
231 | + AGAIN=1 | |
232 | + cp -v "${MINGW_PREFIX}/bin/${FILENAME}" "${bindir}/${FILENAME}" | |
233 | + if [ "$?" != "0" ]; then | |
234 | + exit -1 | |
235 | + fi | |
236 | + | |
237 | + elif [ -e ${MINGW_PREFIX}/lib/${FILENAME} ]; then | |
238 | + | |
239 | + AGAIN=1 | |
240 | + cp -v "${MINGW_PREFIX}/lib/${FILENAME}" "${bindir}/${FILENAME}" | |
241 | + if [ "$?" != "0" ]; then | |
242 | + exit -1 | |
243 | + fi | |
244 | + | |
245 | + elif [ -e "${WIN_ROOT}/System32/${FILENAME}" ]; then | |
246 | + | |
247 | + echo "Ignoring ${WIN_ROOT}/System32/${FILENAME}" | |
248 | + | |
249 | + else | |
250 | + | |
251 | + echo "Can't find ${MINGW_PREFIX}/bin/${FILENAME} or ${WIN_ROOT}/System32/${FILENAME}" | |
252 | + find "${MINGW_PREFIX}" -iname "${FILENAME}" | |
253 | + exit -1 | |
254 | + | |
255 | + fi | |
256 | + | |
257 | + fi | |
258 | + | |
259 | + done < ${REQUIRES} | |
260 | + | |
261 | + rm -f ${SOURCES} | |
262 | + rm -f ${REQUIRES} | |
263 | + | |
264 | + done | |
265 | + | |
266 | +} | |
267 | + | |
268 | +install_locale() { | |
269 | + | |
270 | + mkdir -p ${buildroot}${MINGW_PREFIX}/share/locale/pt_BR/LC_MESSAGES | |
271 | + | |
272 | + locales=" | |
273 | + gettext-runtime.mo | |
274 | + gettext-tools.mo | |
275 | + glib20.mo | |
276 | + gtk30.mo | |
277 | + gtk30-properties.mo | |
278 | + " | |
279 | + | |
280 | + FILENAMES=$(mktemp) | |
281 | + for i in ${locales} | |
282 | + do | |
283 | + find "${MINGW_PREFIX}/share/locale" -name ${i} >> ${FILENAMES} | |
284 | + done | |
285 | + | |
286 | + while read FILENAME | |
287 | + do | |
288 | + mkdir -p $(dirname "${buildroot}${FILENAME}") | |
289 | + cp -v "${FILENAME}" "${buildroot}${FILENAME}" | |
290 | + if [ "$?" != "0" ]; then | |
291 | + exit -1 | |
292 | + fi | |
293 | + done < ${FILENAMES} | |
294 | + rm -f ${FILENAMES} | |
295 | +} | |
296 | + | |
297 | +install_schemas() { | |
298 | + | |
299 | + mkdir -p ${buildroot}${MINGW_PREFIX}/share/glib-2.0/schemas | |
300 | + | |
301 | + schemas=" | |
302 | + org.gtk.Settings.FileChooser.gschema.xml | |
303 | + gschema.dtd | |
304 | + " | |
305 | + | |
306 | + for schema in ${schemas} | |
307 | + do | |
308 | + cp -v "${MINGW_PREFIX}/share/glib-2.0/schemas/${schema}" "${buildroot}${MINGW_PREFIX}/share/glib-2.0/schemas" | |
309 | + if [ "$?" != "0" ]; then | |
310 | + exit -1 | |
311 | + fi | |
312 | + done | |
313 | + | |
314 | + glib-compile-schemas \ | |
315 | + --targetdir="${buildroot}${MINGW_PREFIX}/share/glib-2.0/schemas" \ | |
316 | + "${buildroot}${MINGW_PREFIX}/share/glib-2.0/schemas" | |
317 | + | |
318 | + if [ "$?" != "0" ]; then | |
319 | + exit -1 | |
320 | + fi | |
321 | +} | |
322 | + | |
323 | +install_theme() { | |
324 | + | |
325 | + mkdir -p "${buildroot}${MINGW_PREFIX}/etc" | |
326 | + cp -rv "${MINGW_PREFIX}/etc/gtk-3.0" "${buildroot}${MINGW_PREFIX}/etc" | |
327 | + if [ "$?" != "0" ]; then | |
328 | + exit -1 | |
329 | + fi | |
330 | + | |
331 | + # https://stackoverflow.com/questions/37035936/how-to-get-native-windows-decorations-on-gtk3-on-windows-7-and-msys2 | |
332 | + mkdir -p ${buildroot}${MINGW_PREFIX}/etc/gtk-3.0 | |
333 | + rm -f ${buildroot}${MINGW_PREFIX}/etc/gtk-3.0/settings.ini | |
334 | + rm -f ${buildroot}${MINGW_PREFIX}/etc/gtk-3.0/gtkrc | |
335 | + | |
336 | + echo "[Settings]" > ${buildroot}${MINGW_PREFIX}/etc/gtk-3.0/settings.ini | |
337 | + echo "gtk-theme-name=${1}" >> ${buildroot}${MINGW_PREFIX}/etc/gtk-3.0/settings.ini | |
338 | + | |
339 | + if [ -e "${srcdir}/win/gtk.css" ]; then | |
340 | + mkdir -p "${buildroot}${MINGW_PREFIX}/share/themes/Default/gtk-3.0" | |
341 | + cp "${srcdir}/win/gtk.css" "${buildroot}${MINGW_PREFIX}/share/themes/Default/gtk-3.0/gtk.css" | |
342 | + fi | |
343 | + | |
344 | +} | |
345 | + | |
346 | +install_icons() { | |
347 | + | |
348 | + mkdir -p "${buildroot}${MINGW_PREFIX}/share/icons" | |
349 | + | |
350 | + if [ -d "${MINGW_PREFIX}/share/icons/${1}" ]; then | |
351 | + | |
352 | + cp -rv "${MINGW_PREFIX}/share/icons/${1}" "${buildroot}${MINGW_PREFIX}/share/icons" | |
353 | + if [ "$?" != 0 ]; then | |
354 | + echo "Can´t copy ${1} icons" | |
355 | + exit -1 | |
356 | + fi | |
357 | + | |
358 | + elif [ -d "/usr/share/icons/${1}" ]; then | |
359 | + | |
360 | + cp -rv "/usr/share/icons/${1}" "${buildroot}${MINGW_PREFIX}/share/icons" | |
361 | + if [ "$?" != 0 ]; then | |
362 | + echo "Can´t copy ${1} icons" | |
363 | + exit -1 | |
364 | + fi | |
365 | + | |
366 | + else | |
367 | + | |
368 | + echo "Can´t find ${1} icons" | |
369 | + exit -1 | |
370 | + | |
371 | + fi | |
372 | + | |
373 | +} | |
374 | + | |
375 | +install_loaders() { | |
376 | + | |
377 | + if [ -d "${MINGW_PREFIX}${GDK_LOADERS}" ]; then | |
378 | + mkdir -p "${buildroot}/${MINGW_PREFIX}${GDK_LOADERS}" | |
379 | + cp -rv ${MINGW_PREFIX}${GDK_LOADERS}/* "${buildroot}/${MINGW_PREFIX}${GDK_LOADERS}" | |
380 | + if [ "$?" != "0" ]; then | |
381 | + exit -1 | |
382 | + fi | |
383 | + | |
384 | + find ${buildroot}/${MINGW_PREFIX}${GDK_LOADERS} -iname "*.a" -exec rm -f {} \; | |
385 | + | |
386 | + fi | |
387 | + | |
388 | +} | |
389 | + | |
390 | +make_zip() { | |
391 | + | |
392 | + cd ${buildroot}${MINGW_PREFIX} | |
393 | + if [ "$?" != "0" ]; then | |
394 | + exit -1 | |
395 | + fi | |
396 | + | |
397 | + rm -f ${srcdir}/${MINGW_PACKAGE_PREFIX}-${PACKAGE_NAME}-${PACKAGE_VERSION}.bundle.zip | |
398 | + | |
399 | + zip -9 -r ${srcdir}/${MINGW_PACKAGE_PREFIX}-${PACKAGE_NAME}-${PACKAGE_VERSION}.bundle.zip . | |
400 | + if [ "$?" != "0" ]; then | |
401 | + exit -1 | |
402 | + fi | |
403 | + | |
404 | + cd ${srcdir} | |
405 | + if [ "$?" != "0" ]; then | |
406 | + exit -1 | |
407 | + fi | |
408 | + | |
409 | + if [ -z $(which gh) ]; then | |
410 | + return 0 | |
411 | + fi | |
412 | + | |
413 | + argument "upload" > /dev/null | |
414 | + if [ "$?" == "0" ]; then | |
415 | + gh release upload --clobber "${PACKAGE_VERSION}" ${srcdir}/${MINGW_PACKAGE_PREFIX}-${PACKAGE_NAME}-${PACKAGE_VERSION}.bundle.zip | |
416 | + fi | |
417 | + | |
418 | +} | |
419 | + | |
420 | +make_nsis() { | |
421 | + makensis \ | |
422 | + -INPUTCHARSET UTF8 \ | |
423 | + -DWITHIPC \ | |
424 | + -DWITHPLUGINS \ | |
425 | + -DWITHSDK \ | |
426 | + ${buildroot}${MINGW_PREFIX}/${PACKAGE_NAME}.nsi | |
427 | + if [ "$?" != "0" ]; then | |
428 | + echo "Cant build nsis script" | |
429 | + fi | |
430 | + | |
431 | + if [ ! -z $(which gh) ]; then | |
432 | + argument "upload" > /dev/null | |
433 | + if [ "$?" == "0" ]; then | |
434 | + gh release upload --clobber "${PACKAGE_VERSION}" ${buildroot}${MINGW_PREFIX}/${PACKAGE_NAME}*.exe | |
435 | + if [ "$?" != "0" ]; then | |
436 | + echo "Cant upload nsis installer" | |
437 | + exit -1 | |
438 | + fi | |
439 | + fi | |
440 | + fi | |
441 | + | |
442 | + mv -f ${buildroot}${MINGW_PREFIX}/${PACKAGE_NAME}*.exe "${srcdir}" | |
443 | + if [ "$?" != "0" ]; then | |
444 | + echo "Cant copy nsis installer" | |
445 | + exit -1 | |
446 | + fi | |
447 | +} | |
448 | + | |
449 | +install_runtime() { | |
450 | + | |
451 | + install_loaders | |
452 | + install_bin | |
453 | + install_locale | |
454 | + install_schemas | |
455 | + install_theme "Adwaita" | |
456 | + install_icons "Adwaita" | |
457 | + | |
458 | +} | |
459 | + | |
460 | +make_packages() { | |
461 | + | |
462 | + mkdir -p "${buildroot}${MINGW_PREFIX}/nsi" | |
463 | + cp "${srcdir}/win/pw3270.nsi" "${buildroot}${MINGW_PREFIX}/${PACKAGE_NAME}.nsi" | |
464 | + if [ "$?" != "0" ]; then | |
465 | + echo "Cant copy nsis script" | |
466 | + fi | |
467 | + | |
468 | + argument "zip" > /dev/null | |
469 | + if [ "$?" == "0" ]; then | |
470 | + make_zip | |
471 | + fi | |
472 | + | |
473 | + argument "nsi" > /dev/null | |
474 | + if [ "$?" == "0" ]; then | |
475 | + make_nsis | |
476 | + fi | |
477 | + | |
478 | +} | |
479 | + | |
480 | + | ... | ... |
... | ... | @@ -0,0 +1,213 @@ |
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 | +MINGW_PREFIX="/usr/x86_64-w64-mingw32/sys-root/mingw" | |
29 | +PKG_CONFIG="/usr/bin/x86_64-w64-mingw32-pkg-config" | |
30 | +MINGW_PACKAGE_PREFIX="mingw64" | |
31 | +REPOSITORY_NAME="pw3270" | |
32 | + | |
33 | +# Load bundle functions | |
34 | +. "$(dirname $(readlink -f "${0}"))/bundle.common" | |
35 | + | |
36 | +argument "help" > /dev/null | |
37 | +if [ "$?" == "0" ]; then | |
38 | + echo " --install-requires Install required packages" | |
39 | + echo " --build Build application from source" | |
40 | +fi | |
41 | + | |
42 | +prepare | |
43 | + | |
44 | +# List of pre-req packages | |
45 | +# gdk-pixbuf-loader-rsvg | |
46 | + | |
47 | +# List of pre-built packages | |
48 | +packages="lib3270 libv3270 libipc3270 libhllapi pw3270-plugin-ipc" | |
49 | +dev_packages="lib3270 libv3270 libipc3270" | |
50 | + | |
51 | +install_prereqs() { | |
52 | + | |
53 | + local list | |
54 | + local package | |
55 | + | |
56 | + list="${packages}" | |
57 | + for package in ${dev_packages} | |
58 | + do | |
59 | + list="${list} ${package}-devel" | |
60 | + done | |
61 | + | |
62 | + echo "Installing: ${list}" | |
63 | + | |
64 | + REPONUMBER=$(zypper lr | grep "${REPOSITORY_NAME}" | cut -d\| -f1) | |
65 | + if [ -z "${REPONUMBER}" ]; then | |
66 | + echo "Cant locate repository ${REPOSITORY_NAME}" | |
67 | + exit -1 | |
68 | + fi | |
69 | + | |
70 | + sudo zypper ref ${REPONUMBER} | |
71 | + if [ "$?" != "0" ]; then | |
72 | + echo "Cant refresh repository ${REPOSITORY_NAME}" | |
73 | + exit -1 | |
74 | + fi | |
75 | + | |
76 | + for package in ${list} | |
77 | + do | |
78 | + sudo zypper in --repo ${REPONUMBER} "${MINGW_PACKAGE_PREFIX}-${package}" | |
79 | + if [ "$?" != "0" ]; then | |
80 | + echo "Cant install ${MINGW_PACKAGE_PREFIX}-${package} from ${REPOSITORY_NAME}" | |
81 | + exit -1 | |
82 | + fi | |
83 | + done | |
84 | +} | |
85 | + | |
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 | |
104 | +if [ "$?" == "0" ]; then | |
105 | + install_prereqs | |
106 | +fi | |
107 | + | |
108 | +argument "build" > /dev/null | |
109 | +if [ "$?" == "0" ]; then | |
110 | + | |
111 | + NOCONFIGURE=1 ./autogen.sh | |
112 | + if [ "$?" != "0" ]; then | |
113 | + echo "Configure failed" | |
114 | + exit -1 | |
115 | + fi | |
116 | + | |
117 | + ${MINGW_PACKAGE_PREFIX}-configure | |
118 | + if [ "$?" != "0" ]; then | |
119 | + echo "Configure failed" | |
120 | + exit -1 | |
121 | + fi | |
122 | + | |
123 | + build_package | |
124 | + | |
125 | +else | |
126 | + | |
127 | + packages="${packages} pw3270" | |
128 | + | |
129 | +fi | |
130 | + | |
131 | +unpack_rpm() { | |
132 | + | |
133 | + local package | |
134 | + local list | |
135 | + local PACKAGE_NAME | |
136 | + | |
137 | + for package in ${packages} | |
138 | + do | |
139 | + PACKAGE_NAME=$(rpm -qa | grep "${MINGW_PACKAGE_PREFIX}-${package}" | grep -v devel | head --lines=1) | |
140 | + if [ -z "${PACKAGE_NAME}" ]; then | |
141 | + echo "No data from ${MINGW_PACKAGE_PREFIX}-${package}" | |
142 | + exit -1 | |
143 | + fi | |
144 | + echo "Copy ${PACKAGE_NAME}" | |
145 | + for FILE in $(rpm -ql "${PACKAGE_NAME}") | |
146 | + do | |
147 | + if [ ! -d ${FILE} ]; then | |
148 | + | |
149 | + FILEPATH="${buildroot}${FILE}" | |
150 | + mkdir -p "$(dirname ${FILEPATH})" | |
151 | + if [ "$?" != "0" ]; then | |
152 | + exit -1 | |
153 | + fi | |
154 | + | |
155 | + cp "${FILE}" "${FILEPATH}" | |
156 | + if [ "$?" != "0" ]; then | |
157 | + echo "Cant copy '${FILE}' from '${PACKAGE_NAME}'" | |
158 | + exit -1 | |
159 | + fi | |
160 | + fi | |
161 | + done | |
162 | + | |
163 | + done | |
164 | + | |
165 | + | |
166 | + for package in ${dev_packages} | |
167 | + do | |
168 | + PACKAGE_NAME=$(rpm -qa | grep "${MINGW_PACKAGE_PREFIX}-${package}" | grep devel | head --lines=1) | |
169 | + if [ -z "${PACKAGE_NAME}" ]; then | |
170 | + echo "No data from ${MINGW_PACKAGE_PREFIX}-${package}-devel" | |
171 | + exit -1 | |
172 | + fi | |
173 | + echo "Copy ${PACKAGE_NAME}" | |
174 | + for FILE in $(rpm -ql "${PACKAGE_NAME}") | |
175 | + do | |
176 | + if [ ! -d ${FILE} ]; then | |
177 | + | |
178 | + FILEPATH="${buildroot}${FILE}" | |
179 | + mkdir -p "$(dirname ${FILEPATH})" | |
180 | + if [ "$?" != "0" ]; then | |
181 | + exit -1 | |
182 | + fi | |
183 | + | |
184 | + cp "${FILE}" "${FILEPATH}" | |
185 | + if [ "$?" != "0" ]; then | |
186 | + echo "Cant copy '${FILE}' from '${PACKAGE_NAME}'" | |
187 | + exit -1 | |
188 | + fi | |
189 | + fi | |
190 | + done | |
191 | + | |
192 | + done | |
193 | + | |
194 | +} | |
195 | + | |
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 | |
206 | + | |
207 | +install_runtime | |
208 | +install_license | |
209 | + | |
210 | +make_packages | |
211 | + | |
212 | +echo "Bundle build complete" | |
213 | + | ... | ... |
... | ... | @@ -0,0 +1,50 @@ |
1 | +#!/bin/bash | |
2 | +# | |
3 | +# SPDX-License-Identifier: LGPL-3.0-or-later | |
4 | +# | |
5 | +# Copyright (C) 2021 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 | +prepare | |
32 | + | |
33 | +for package in ${srcdir}/*.pkg.tar.zst | |
34 | +do | |
35 | + echo ${package} | |
36 | + tar -C ${buildroot} --zstd -xf ${package} | |
37 | + if [ "$?" != "0" ]; then | |
38 | + echo "Error unpacking ${package}" | |
39 | + exit -1 | |
40 | + fi | |
41 | +done | |
42 | + | |
43 | +install_loaders | |
44 | +install_bin | |
45 | +install_locale | |
46 | +install_schemas | |
47 | +install_theme "Adwaita" | |
48 | +install_icons "Adwaita" | |
49 | + | |
50 | + | ... | ... |
win/copydeps.sh.in
... | ... | @@ -1,133 +0,0 @@ |
1 | -#!/bin/bash | |
2 | -myDIR=$(dirname $(readlink -f $0)) | |
3 | - | |
4 | -# Updated by ./configure | |
5 | -BUILDDIR=@BUILDDIR@ | |
6 | -prefix=@prefix@ | |
7 | - | |
8 | -# Crio diretório temporário | |
9 | -TEMPDIR=$(mktemp -d) | |
10 | - | |
11 | -# Cleanup em caso de falha | |
12 | -ontrap() | |
13 | -{ | |
14 | - # | |
15 | - # Apaga diretorio temporário caso o script seja interrompido | |
16 | - # | |
17 | - cd ${myDIR} | |
18 | - rm -fr ${TEMPDIR} | |
19 | - exit -1 | |
20 | -} | |
21 | - | |
22 | -trap ontrap INT | |
23 | - | |
24 | -# | |
25 | -# Lista de DLLs a ignorar | |
26 | -# | |
27 | -libs_to_exclude=" | |
28 | - advapi32 | |
29 | - cfgmgr32 | |
30 | - comctl32 | |
31 | - comdlg32 | |
32 | - crypt32 | |
33 | - d3d8 | |
34 | - d3d9 | |
35 | - ddraw | |
36 | - dnsapi | |
37 | - dsound | |
38 | - dwmapi | |
39 | - gdi32 | |
40 | - gdiplus | |
41 | - glu32 | |
42 | - glut32 | |
43 | - imm32 | |
44 | - iphlpapi | |
45 | - kernel32 | |
46 | - ksuser | |
47 | - mpr | |
48 | - mscms | |
49 | - mscoree | |
50 | - msimg32 | |
51 | - msvcr71 | |
52 | - msvcr80 | |
53 | - msvcr90 | |
54 | - msvcrt | |
55 | - mswsock | |
56 | - netapi32 | |
57 | - odbc32 | |
58 | - ole32 | |
59 | - oleacc | |
60 | - oleaut32 | |
61 | - opengl32 | |
62 | - psapi | |
63 | - rpcrt4 | |
64 | - secur32 | |
65 | - setupapi | |
66 | - shell32 | |
67 | - shlwapi | |
68 | - user32 | |
69 | - usp10 | |
70 | - version | |
71 | - wininet | |
72 | - winmm | |
73 | - wldap32 | |
74 | - ws2_32 | |
75 | - wsock32 | |
76 | - winspool.drv | |
77 | -" | |
78 | - | |
79 | -# | |
80 | -# Fico em loop montando dependências | |
81 | -# | |
82 | -APPLICATION_PATH=${BUILDDIR}/.bin/Release | |
83 | -RUNTIME_PATH=${BUILDDIR}/.bin/runtime | |
84 | - | |
85 | -mkdir -p ${RUNTIME_PATH} | |
86 | - | |
87 | -AGAIN=1 | |
88 | -until [ $AGAIN = 0 ]; do | |
89 | - | |
90 | - AGAIN=0 | |
91 | - | |
92 | - find ${APPLICATION_PATH} -iname *.exe > ${TEMPDIR}/binaries.txt | |
93 | - find ${APPLICATION_PATH} -iname *.dll >> ${TEMPDIR}/binaries.txt | |
94 | - find ${RUNTIME_PATH} -iname *.dll >> ${TEMPDIR}/binaries.txt | |
95 | - | |
96 | - # Obtenho a lista de DLLs | |
97 | - rm -f ${TEMPDIR}/requires.txt | |
98 | - touch ${TEMPDIR}/requires.txt | |
99 | - while read FILENAME | |
100 | - do | |
101 | - objdump -p ${FILENAME} | grep "DLL Name:" | cut -d: -f2 | tr "[:upper:]" "[:lower:]" >> ${TEMPDIR}/requires.txt | |
102 | - done < ${TEMPDIR}/binaries.txt | |
103 | - | |
104 | - # Excluo DLLs do sistema | |
105 | - for i in $libs_to_exclude; do | |
106 | - sed -i -e "/${i}/d" ${TEMPDIR}/requires.txt | |
107 | - done | |
108 | - | |
109 | - while read FILENAME | |
110 | - do | |
111 | - | |
112 | - if [ -e ${APPLICATION_PATH}/${FILENAME} ]; then | |
113 | - touch ${APPLICATION_PATH}/${FILENAME} | |
114 | - | |
115 | - elif [ -e ${RUNTIME_PATH}/${FILENAME} ]; then | |
116 | - touch ${RUNTIME_PATH}/${FILENAME} | |
117 | - | |
118 | - elif [ -e ${prefix}/bin/${FILENAME} ]; then | |
119 | - AGAIN=1 | |
120 | - echo ${prefix}/bin/${FILENAME} | |
121 | - cp ${prefix}/bin/${FILENAME} ${RUNTIME_PATH} | |
122 | - | |
123 | - fi | |
124 | - | |
125 | - done < ${TEMPDIR}/requires.txt | |
126 | - rm -f ${TEMPDIR}/requires.txt | |
127 | - | |
128 | - | |
129 | -done | |
130 | - | |
131 | -cd ${myDIR} | |
132 | -rm -fr ${TEMPDIR} | |
133 | - |
win/force_inet_ntop.patch
... | ... | @@ -1,11 +0,0 @@ |
1 | ---- src/include/lib3270/config.h.in 2017-01-20 15:37:46.462843502 -0200 | |
2 | -+++ src/include/lib3270/config.h.in 2017-01-24 15:19:45.547022420 -0200 | |
3 | -@@ -44,7 +44,7 @@ | |
4 | - #undef HAVE_SYSLOG | |
5 | - #undef HAVE_DBUS | |
6 | - #undef HAVE_VASPRINTF | |
7 | -- #undef HAVE_INET_NTOP | |
8 | -+ #define HAVE_INET_NTOP | |
9 | - | |
10 | - #undef HAVE_ICONV | |
11 | - #undef ICONV_CONST |
win/makeruntime.sh.in
... | ... | @@ -1,350 +0,0 @@ |
1 | -#!/bin/bash | |
2 | -# | |
3 | -# "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270 | |
4 | -# (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a | |
5 | -# aplicativos mainframe. Registro no INPI sob o nome G3270. | |
6 | -# | |
7 | -# Copyright (C) <2008> <Banco do Brasil S.A.> | |
8 | -# | |
9 | -# Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob | |
10 | -# os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela | |
11 | -# Free Software Foundation. | |
12 | -# | |
13 | -# Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER | |
14 | -# GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO | |
15 | -# A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para | |
16 | -# obter mais detalhes. | |
17 | -# | |
18 | -# Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este | |
19 | -# programa; se não, escreva para a Free Software Foundation, Inc., 59 Temple | |
20 | -# Place, Suite 330, Boston, MA, 02111-1307, USA | |
21 | -# | |
22 | -# Contatos: | |
23 | -# | |
24 | -# perry.werneck@gmail.com (Alexandre Perry de Souza Werneck) | |
25 | -# erico.mendonca@gmail.com (Erico Mascarenhas de Mendonça) | |
26 | -# | |
27 | - | |
28 | -# | |
29 | -# Referencias: | |
30 | -# | |
31 | -# https://www.gtk.org/docs/installations/windows/ | |
32 | -# http://drup.org/gtk-warning-error-loading-icon-couldnt-recognize-image-file-format | |
33 | -# | |
34 | - | |
35 | -# Get myDIR | |
36 | -myDIR=$(dirname $(readlink -f "${0}")) | |
37 | - | |
38 | -# Disable i18n | |
39 | -export LANG=C | |
40 | - | |
41 | -prefix="@prefix@" | |
42 | -PKG_CONFIG="@PKG_CONFIG@" | |
43 | -GTK_VERSION="gtk+-@GTK_VERSION@" | |
44 | - | |
45 | -GTK_PREFIX=$($PKG_CONFIG --variable=prefix ${GTK_VERSION}) | |
46 | -GDK_LOADERS=$(${PKG_CONFIG} --variable=gdk_pixbuf_binarydir gdk-pixbuf-2.0 | sed -e "s@${prefix}@@g") | |
47 | - | |
48 | -TARGET="@BUILDDIR@/.bin/runtime" | |
49 | -BINDIR="@BUILDDIR@/.bin/Release/" | |
50 | -SCHEMADIR="@BUILDDIR@/schemas/" | |
51 | - | |
52 | -# Change to bin path | |
53 | -mkdir -p ${TARGET} | |
54 | -rm -fr ${TARGET}/* | |
55 | - | |
56 | -copy_dll() { | |
57 | - | |
58 | - AGAIN=1 | |
59 | - until [ $AGAIN = 0 ]; do | |
60 | - | |
61 | - SOURCES=$(mktemp) | |
62 | - REQUIRES=$(mktemp) | |
63 | - | |
64 | - find "${BINDIR}" -iname "*.dll" > ${SOURCES} | |
65 | - find "${BINDIR}" -iname "*.exe" >> ${SOURCES} | |
66 | - find "${TARGET}" -iname *.dll >> ${SOURCES} | |
67 | - | |
68 | - while read FILENAME | |
69 | - do | |
70 | - objdump -p ${FILENAME} | grep "DLL Name:" | cut -d: -f2 | tr "[:upper:]" "[:lower:]" >> ${REQUIRES} | |
71 | - done < ${SOURCES} | |
72 | - | |
73 | - libs_to_exclude=" | |
74 | - advapi32 | |
75 | - cfgmgr32 | |
76 | - comctl32 | |
77 | - comdlg32 | |
78 | - crypt32 | |
79 | - d3d8 | |
80 | - d3d9 | |
81 | - ddraw | |
82 | - dnsapi | |
83 | - dsound | |
84 | - dwmapi | |
85 | - gdi32 | |
86 | - gdiplus | |
87 | - glu32 | |
88 | - glut32 | |
89 | - imm32 | |
90 | - iphlpapi | |
91 | - kernel32 | |
92 | - ksuser | |
93 | - mpr | |
94 | - mscms | |
95 | - mscoree | |
96 | - msimg32 | |
97 | - msvcr71 | |
98 | - msvcr80 | |
99 | - msvcr90 | |
100 | - msvcrt | |
101 | - mswsock | |
102 | - netapi32 | |
103 | - odbc32 | |
104 | - ole32 | |
105 | - oleacc | |
106 | - oleaut32 | |
107 | - opengl32 | |
108 | - psapi | |
109 | - rpcrt4 | |
110 | - secur32 | |
111 | - setupapi | |
112 | - shell32 | |
113 | - shlwapi | |
114 | - user32 | |
115 | - usp10 | |
116 | - version | |
117 | - wininet | |
118 | - winmm | |
119 | - wldap32 | |
120 | - ws2_32 | |
121 | - wsock32 | |
122 | - winspool.drv | |
123 | - ntdll | |
124 | - winhttp | |
125 | - " | |
126 | - | |
127 | - # Excluo DLLs do sistema | |
128 | - for i in $libs_to_exclude; do | |
129 | - sed -i -e "/${i}/d" ${REQUIRES} | |
130 | - done | |
131 | - | |
132 | - # Procuro pelas DLLs que faltam | |
133 | - AGAIN=0 | |
134 | - while read FILENAME | |
135 | - do | |
136 | - if [ ! -e "${TARGET}/${FILENAME}" ]; then | |
137 | - | |
138 | - COUNT=$(find "${BINDIR}" -iname ${FILENAME} | wc --lines) | |
139 | - if [ "${COUNT}" == "0" ]; then | |
140 | - | |
141 | - echo ${FILENAME} | |
142 | - | |
143 | - if [ -e ${prefix}/bin/${FILENAME} ]; then | |
144 | - | |
145 | - echo "Copiando $(basename ${FILENAME})..." | |
146 | - | |
147 | - AGAIN=1 | |
148 | - cp -v "${prefix}/bin/${FILENAME}" "${TARGET}/${FILENAME}" | |
149 | - if [ "$?" != "0" ]; then | |
150 | - exit -1 | |
151 | - fi | |
152 | - | |
153 | - elif [ -e ${prefix}/lib/${FILENAME} ]; then | |
154 | - | |
155 | - echo "Copiando $(basename ${FILENAME})..." | |
156 | - | |
157 | - AGAIN=1 | |
158 | - cp -v "${prefix}/lib/${FILENAME}" "${TARGET}/${FILENAME}" | |
159 | - if [ "$?" != "0" ]; then | |
160 | - exit -1 | |
161 | - fi | |
162 | - | |
163 | - else | |
164 | - | |
165 | - echo "Can't find ${FILENAME}" | |
166 | - exit -1 | |
167 | - | |
168 | - fi | |
169 | - | |
170 | - fi | |
171 | - | |
172 | - | |
173 | - fi | |
174 | - | |
175 | - done < ${REQUIRES} | |
176 | - | |
177 | - rm -f ${SOURCES} | |
178 | - rm -f ${REQUIRES} | |
179 | - | |
180 | - done | |
181 | - | |
182 | -} | |
183 | - | |
184 | -copy_locale() { | |
185 | - | |
186 | - rm -fr ${TARGET}/share/locale/pt_BR/LC_MESSAGES | |
187 | - mkdir -p ${TARGET}/share/locale/pt_BR/LC_MESSAGES | |
188 | - | |
189 | - locales=" | |
190 | - gettext-runtime.mo | |
191 | - gettext-tools.mo | |
192 | - glib20.mo | |
193 | - gtk30.mo | |
194 | - gtk30-properties.mo | |
195 | - " | |
196 | - | |
197 | - for i in $locales; do | |
198 | - if [ -e "${GTK_PREFIX}/share/locale/pt_BR/LC_MESSAGES/${i}" ]; then | |
199 | - echo "${GTK_PREFIX}/share/locale/pt_BR/LC_MESSAGES/${i} ..." | |
200 | - cp "${GTK_PREFIX}/share/locale/pt_BR/LC_MESSAGES/${i}" "${TARGET}/share/locale/pt_BR/LC_MESSAGES" | |
201 | - if [ "$?" != "0" ]; then | |
202 | - exit -1 | |
203 | - fi | |
204 | - fi | |
205 | - done | |
206 | - | |
207 | -} | |
208 | - | |
209 | -copy_loaders() { | |
210 | - | |
211 | - mkdir -p "${TARGET}/${GDK_LOADERS}" | |
212 | - cp -rv "${prefix}/${GDK_LOADERS}/loaders" "${TARGET}/${GDK_LOADERS}" | |
213 | - if [ "$?" != "0" ]; then | |
214 | - exit -1 | |
215 | - fi | |
216 | - | |
217 | -} | |
218 | - | |
219 | -copy_schemes() { | |
220 | - | |
221 | - mkdir -p "${TARGET}/share/glib-2.0/schemas" | |
222 | - | |
223 | - cp -v \ | |
224 | - ${SCHEMADIR}/windows/*.xml \ | |
225 | - "${TARGET}/share/glib-2.0/schemas" | |
226 | - | |
227 | - if [ "$?" != "0" ]; then | |
228 | - exit -1 | |
229 | - fi | |
230 | - | |
231 | - cp -rv \ | |
232 | - "${prefix}/share/glib-2.0/schemas/org.gtk.Settings.FileChooser.gschema.xml" \ | |
233 | - "${TARGET}/share/glib-2.0/schemas" | |
234 | - | |
235 | - if [ "$?" != "0" ]; then | |
236 | - exit -1 | |
237 | - fi | |
238 | - | |
239 | - cp -rv \ | |
240 | - "${prefix}/share/glib-2.0/schemas/gschema.dtd" \ | |
241 | - "${TARGET}/share/glib-2.0/schemas" | |
242 | - | |
243 | - if [ "$?" != "0" ]; then | |
244 | - exit -1 | |
245 | - fi | |
246 | - | |
247 | - glib-compile-schemas \ | |
248 | - --targetdir="${TARGET}/share/glib-2.0/schemas" \ | |
249 | - "${TARGET}/share/glib-2.0/schemas" | |
250 | - | |
251 | - if [ "$?" != "0" ]; then | |
252 | - exit -1 | |
253 | - fi | |
254 | -} | |
255 | - | |
256 | - | |
257 | -copy_theme() { | |
258 | - | |
259 | - mkdir -p "${TARGET}/etc" | |
260 | - cp -rv "${prefix}/etc/gtk-3.0" "${TARGET}/etc" | |
261 | - | |
262 | - # https://stackoverflow.com/questions/37035936/how-to-get-native-windows-decorations-on-gtk3-on-windows-7-and-msys2 | |
263 | - mkdir -p ${TARGET}/etc/gtk-3.0 | |
264 | - rm -f ${TARGET}/etc/gtk-3.0/settings.ini | |
265 | - rm -f ${TARGET}/etc/gtk-3.0/gtkrc | |
266 | - | |
267 | - mkdir -p ${TARGET}/share/icons | |
268 | - if [ "$?" != 0 ]; then | |
269 | - echo "Can´t create icons folder" | |
270 | - exit -1 | |
271 | - fi | |
272 | - | |
273 | - cp -rv /usr/share/icons/${1} ${TARGET}/share/icons | |
274 | - if [ "$?" != 0 ]; then | |
275 | - echo "Can´t copy ${1} icons" | |
276 | - exit -1 | |
277 | - fi | |
278 | - | |
279 | - mkdir -p ${TARGET}/share/themes | |
280 | - if [ "$?" != 0 ]; then | |
281 | - echo "Can´t create themes folder" | |
282 | - exit -1 | |
283 | - fi | |
284 | - | |
285 | -# cp -rv /usr/share/themes/${1} ${TARGET}/share/themes | |
286 | -# if [ "$?" != 0 ]; then | |
287 | -# echo "Can´t copy ${1} theme" | |
288 | -# exit -1 | |
289 | -# fi | |
290 | - | |
291 | - echo "${myDIR}/gtk.css" | |
292 | - if [ -e "${myDIR}/gtk.css" ]; then | |
293 | - cp "${myDIR}/gtk.css" "${TARGET}/share/themes/${1}/gtk-3.0/gtk.css" | |
294 | - fi | |
295 | - | |
296 | -} | |
297 | - | |
298 | -# | |
299 | -# Check command line parameters | |
300 | -# | |
301 | -until [ -z "$1" ] | |
302 | -do | |
303 | - if [ ${1:0:2} = '--' ]; then | |
304 | - tmp=${1:2} | |
305 | - parameter=${tmp%%=*} | |
306 | - parameter=$(echo $parameter | tr "[:lower:]" "[:upper:]") | |
307 | - value=${tmp##*=} | |
308 | - | |
309 | - case "$parameter" in | |
310 | - OUTPUT-DIR) | |
311 | - TARGET=$value | |
312 | - ;; | |
313 | - | |
314 | - BINDIR) | |
315 | - BINDIR=$value | |
316 | - ;; | |
317 | - | |
318 | - HELP) | |
319 | - echo "${0} [options]" | |
320 | - echo "" | |
321 | - echo "Options:" | |
322 | - echo "" | |
323 | - echo " --path Set runtime instalation path (default is $TARGET)" | |
324 | - echo " --bindir Set binaries source path (default is $BINDIR)" | |
325 | - echo "" | |
326 | - exit 0 | |
327 | - | |
328 | - ;; | |
329 | - | |
330 | - esac | |
331 | - fi | |
332 | - | |
333 | - shift | |
334 | - | |
335 | -done | |
336 | - | |
337 | -# | |
338 | -# Make runtime | |
339 | -# | |
340 | -copy_dll | |
341 | -copy_locale | |
342 | -copy_loaders | |
343 | -copy_schemes | |
344 | -copy_theme "Adwaita" | |
345 | - | |
346 | -# Otimiza todos os pngs | |
347 | -#echo "Optimizing..." | |
348 | -#find ${TARGET} -iname *.png -exec optipng -o7 -quiet {} \; 2>&1 > /dev/null | |
349 | - | |
350 | -echo "Runtime ok" |
win/msys2-install-tn3270-libs.sh
... | ... | @@ -1,72 +0,0 @@ |
1 | -#!/bin/bash | |
2 | -# | |
3 | -# "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270 | |
4 | -# (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a | |
5 | -# aplicativos mainframe. Registro no INPI sob o nome G3270. | |
6 | -# | |
7 | -# Copyright (C) <2008> <Banco do Brasil S.A.> | |
8 | -# | |
9 | -# Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob | |
10 | -# os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela | |
11 | -# Free Software Foundation. | |
12 | -# | |
13 | -# Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER | |
14 | -# GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO | |
15 | -# A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para | |
16 | -# obter mais detalhes. | |
17 | -# | |
18 | -# Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este | |
19 | -# programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin | |
20 | -# St, Fifth Floor, Boston, MA 02110-1301 USA | |
21 | -# | |
22 | -# Contatos: | |
23 | -# | |
24 | -# perry.werneck@gmail.com (Alexandre Perry de Souza Werneck) | |
25 | -# erico.mendonca@gmail.com (Erico Mascarenhas Mendonça) | |
26 | -# | |
27 | -# | |
28 | -VERSION="5.2" | |
29 | - | |
30 | -install() { | |
31 | - | |
32 | - BUILD_DIR=${TEMPDIR}/${1} | |
33 | - | |
34 | - mkdir -p ${BUILD_DIR} | |
35 | - if [ "$?" != "0" ]; then | |
36 | - exit -1 | |
37 | - fi | |
38 | - | |
39 | - pushd ${BUILD_DIR} | |
40 | - if [ "$?" != "0" ]; then | |
41 | - exit -1 | |
42 | - fi | |
43 | - | |
44 | - wget https://github.com/PerryWerneck/${1}/releases/download/${VERSION}/PKGBUILD | |
45 | - if [ "$?" != "0" ]; then | |
46 | - exit -1 | |
47 | - fi | |
48 | - | |
49 | - makepkg | |
50 | - if [ "$?" != "0" ]; then | |
51 | - exit -1 | |
52 | - fi | |
53 | - | |
54 | - popd | |
55 | - | |
56 | - cp ${BUILD_DIR}/mingw*-${1}*.tar.xz . | |
57 | - | |
58 | - rm -fr ${BUILD_DIR} | |
59 | - | |
60 | - pacman -U mingw*-${1}*.tar.xz | |
61 | - if [ "$?" != "0" ]; then | |
62 | - exit -1 | |
63 | - fi | |
64 | - | |
65 | -} | |
66 | - | |
67 | -TEMPDIR=$(mktemp -d) | |
68 | - | |
69 | -install lib3270 | |
70 | -install libv3270 | |
71 | - | |
72 | -rm -fr ${TEMPDIR} |
win/pw3270.nsi.in
... | ... | @@ -24,20 +24,16 @@ |
24 | 24 | |
25 | 25 | Name "@PRODUCT_NAME@" |
26 | 26 | Caption "@PRODUCT_NAME@ - @PACKAGE_DESCRIPTION@" |
27 | -!ifdef WITHGTK | |
28 | -outfile "@PRODUCT_NAME@-@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@.@PACKAGE_MAJOR_RELEASE@.@PACKAGE_MINOR_RELEASE@-gtk-@GTK_MODVERSION@-@host_cpu@.exe" | |
29 | -!else | |
30 | -outfile "@PRODUCT_NAME@-@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@.@PACKAGE_MAJOR_RELEASE@.@PACKAGE_MINOR_RELEASE@-requires-gtk-@GTK_MODVERSION@-@host_cpu@.exe" | |
31 | -!endif | |
27 | +outfile "@PRODUCT_NAME@-@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@-@host_cpu@.exe" | |
32 | 28 | |
33 | 29 | XPStyle on |
34 | 30 | |
35 | 31 | installDir "$@PROGRAMFILES@\@PRODUCT_NAME@" |
36 | 32 | |
37 | 33 | #define the installer icon |
38 | -!define MUI_ICON "@PRODUCT_NAME@.ico" | |
39 | -!define MUI_UNICON "@PRODUCT_NAME@.ico" | |
40 | -icon "@PRODUCT_NAME@.ico" | |
34 | +!define MUI_ICON "bin\@PRODUCT_NAME@.ico" | |
35 | +!define MUI_UNICON "bin\@PRODUCT_NAME@.ico" | |
36 | +icon "bin\@PRODUCT_NAME@.ico" | |
41 | 37 | |
42 | 38 | # Get installation folder from registry if available |
43 | 39 | InstallDirRegKey HKLM "Software\@PRODUCT_NAME@" "InstallLocation" |
... | ... | @@ -60,16 +56,16 @@ VIAddVersionKey "LegalCopyright" "(C) 2017 Banco do Brasil S/A. All Rights Reser |
60 | 56 | # Interface |
61 | 57 | |
62 | 58 | !define MUI_ABORTWARNING |
63 | -# !insertmacro MUI_PAGE_WELCOME | |
64 | -!insertmacro MUI_PAGE_LICENSE "LICENSE" | |
59 | +!insertmacro MUI_PAGE_WELCOME | |
60 | +!insertmacro MUI_PAGE_LICENSE "share\@PRODUCT_NAME@\LICENSE" | |
65 | 61 | !insertmacro MUI_PAGE_COMPONENTS |
66 | 62 | !insertmacro MUI_PAGE_DIRECTORY |
67 | 63 | !insertmacro MUI_PAGE_INSTFILES |
68 | 64 | |
69 | -# !insertmacro MUI_UNPAGE_WELCOME | |
65 | +!insertmacro MUI_UNPAGE_WELCOME | |
70 | 66 | !insertmacro MUI_UNPAGE_CONFIRM |
71 | 67 | !insertmacro MUI_UNPAGE_INSTFILES |
72 | -# !insertmacro MUI_UNPAGE_FINISH | |
68 | +!insertmacro MUI_UNPAGE_FINISH | |
73 | 69 | |
74 | 70 | # Languages |
75 | 71 | !insertmacro MUI_LANGUAGE "English" |
... | ... | @@ -80,71 +76,51 @@ VIAddVersionKey "LegalCopyright" "(C) 2017 Banco do Brasil S/A. All Rights Reser |
80 | 76 | # default section |
81 | 77 | SubSection "@PRODUCT_NAME@" SecMain |
82 | 78 | |
83 | - Section "Core" SecCore | |
79 | + Section "@PRODUCT_NAME@" SecCore | |
84 | 80 | |
85 | 81 | SetRegView @WINARCH@ |
86 | 82 | ${DisableX64FSRedirection} |
87 | 83 | |
88 | 84 | # define the output path for this file |
89 | - setOutPath $INSTDIR | |
90 | 85 | SetShellVarContext all |
91 | 86 | |
92 | - createShortCut "$SMPROGRAMS\@PRODUCT_NAME@.lnk" "$INSTDIR\@PRODUCT_NAME@.exe" | |
93 | - createShortCut "$DESKTOP\@PRODUCT_NAME@.lnk" "$INSTDIR\@PRODUCT_NAME@.exe" | |
87 | + createShortCut "$SMPROGRAMS\@PRODUCT_NAME@.lnk" "$INSTDIR\bin\@PRODUCT_NAME@.exe" | |
88 | + createShortCut "$DESKTOP\@PRODUCT_NAME@.lnk" "$INSTDIR\bin\@PRODUCT_NAME@.exe" | |
94 | 89 | |
95 | 90 | # Binary files |
96 | - file "/oname=$INSTDIR\@PRODUCT_NAME@.exe" "bin\@PRODUCT_NAME@.exe" | |
97 | - file "/oname=$INSTDIR\@PRODUCT_NAME@.ico" "bin\@PRODUCT_NAME@.ico" | |
98 | - file "/oname=$INSTDIR\lib@LIBRARY_NAME@.dll" "bin\lib@LIBRARY_NAME@.dll" | |
99 | - file "/oname=$INSTDIR\libv3270.dll" "bin\libv3270.dll" | |
100 | - | |
101 | - # Register file association | |
102 | - | |
103 | - # icons & logos | |
104 | - CreateDirectory "$INSTDIR\icons" | |
105 | - file "/oname=$INSTDIR\icons\gtk-connect-symbolic.svg" "share\@PRODUCT_NAME@\icons\gtk-connect-symbolic.svg" | |
106 | - file "/oname=$INSTDIR\icons\gtk-disconnect-symbolic.svg" "share\@PRODUCT_NAME@\icons\gtk-disconnect-symbolic.svg" | |
107 | - file "/oname=$INSTDIR\icons\connect-symbolic.svg" "share\@PRODUCT_NAME@\icons\connect-symbolic.svg" | |
108 | - file "/oname=$INSTDIR\icons\disconnect-symbolic.svg" "share\@PRODUCT_NAME@\icons\disconnect-symbolic.svg" | |
109 | - file "/oname=$INSTDIR\icons\@PRODUCT_NAME@.svg" "share\@PRODUCT_NAME@\@PRODUCT_NAME@.svg" | |
110 | - | |
111 | - file "/oname=$INSTDIR\@PRODUCT_NAME@-logo.svg" "share\@PRODUCT_NAME@\@PRODUCT_NAME@-logo.svg" | |
112 | - file "/oname=$INSTDIR\@PRODUCT_NAME@.svg" "share\@PRODUCT_NAME@\@PRODUCT_NAME@.svg" | |
113 | - file "/oname=$INSTDIR\@PRODUCT_NAME@.png" "share\@PRODUCT_NAME@\@PRODUCT_NAME@.png" | |
114 | - | |
115 | - # Schema | |
116 | - CreateDirectory "$INSTDIR\schemas" | |
117 | - file "/oname=$INSTDIR\schemas\@PRODUCT_NAME@-application.gschema.xml" "share\glib-2.0\schemas\@PRODUCT_NAME@-application.gschema.xml" | |
118 | - file "/oname=$INSTDIR\schemas\@PRODUCT_NAME@-window.gschema.xml" "share\glib-2.0\schemas\@PRODUCT_NAME@-window.gschema.xml" | |
119 | - | |
120 | - file "/oname=$INSTDIR\gschemas.compiled" "runtime/share/glib-2.0/schemas/gschemas.compiled" | |
121 | - | |
122 | - # Configuration files | |
123 | - file "/oname=$INSTDIR\colors.conf" "share\@PRODUCT_NAME@\colors.conf" | |
124 | - | |
125 | - # Documentation files | |
126 | - file "/oname=$INSTDIR\AUTHORS" "AUTHORS" | |
127 | - file "/oname=$INSTDIR\LICENSE" "LICENSE" | |
128 | - | |
129 | - # Misc folders | |
130 | - CreateDirectory "$INSTDIR\certs" | |
131 | - CreateDirectory "$INSTDIR\plugins" | |
132 | - CreateDirectory "$INSTDIR\keypad" | |
133 | - | |
134 | - # UI definition files | |
135 | - CreateDirectory "$INSTDIR\ui" | |
136 | - file "/oname=$INSTDIR\@PRODUCT_NAME@.ui.xml" "share\@PRODUCT_NAME@\@PRODUCT_NAME@.ui.xml" | |
137 | - | |
138 | - # Charset definition files | |
139 | - CreateDirectory "$INSTDIR\remap" | |
140 | - file "/oname=$INSTDIR\remap\bracket.xml" "share\@PRODUCT_NAME@\remap\bracket.xml" | |
141 | - | |
142 | - # Locale files | |
143 | - CreateDirectory "$INSTDIR\locale\pt_BR\LC_MESSAGES" | |
144 | - file "/oname=$INSTDIR\locale\pt_BR\LC_MESSAGES\@PACKAGE_NAME@.mo" "share\locale\pt_BR\LC_MESSAGES\@PACKAGE_NAME@.mo" | |
145 | - file "/oname=$INSTDIR\locale\pt_BR\LC_MESSAGES\lib@LIBRARY_NAME@-@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@.mo" "share\locale\pt_BR\LC_MESSAGES\lib@LIBRARY_NAME@-@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@.mo" | |
146 | - file "/oname=$INSTDIR\locale\pt_BR\LC_MESSAGES\libv3270-@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@.mo" "share\locale\pt_BR\LC_MESSAGES\libv3270-@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@.mo" | |
91 | + setOutPath "$INSTDIR" | |
92 | + file /r "bin" | |
93 | + | |
94 | + setOutPath "$INSTDIR\share\@PRODUCT_NAME@" | |
95 | + file /r "share\@PRODUCT_NAME@\*.png" | |
96 | + file /r "share\@PRODUCT_NAME@\*.svg" | |
97 | + file /r "share\@PRODUCT_NAME@\*.ui.xml" | |
98 | + file /r "share\@PRODUCT_NAME@\*.conf" | |
99 | + | |
100 | + setOutPath "$INSTDIR\share\@PRODUCT_NAME@\remap" | |
101 | + file /r "share\@PRODUCT_NAME@\remap\*" | |
102 | + | |
103 | + setOutPath "$INSTDIR\lib\gdk-pixbuf-2.0" | |
104 | + file /r "lib\gdk-pixbuf-2.0\*" | |
105 | + | |
106 | + setOutPath "$INSTDIR\etc" | |
107 | + file /r "etc\*" | |
147 | 108 | |
109 | + setOutPath "$INSTDIR\share\locale" | |
110 | + file /r "share\locale\*" | |
111 | + | |
112 | + setOutPath "$INSTDIR\share\themes" | |
113 | + file /r "share\themes\*" | |
114 | + | |
115 | + setOutPath "$INSTDIR\share\icons" | |
116 | + file /r "share\icons\*" | |
117 | + | |
118 | + setOutPath "$INSTDIR\share\glib-2.0" | |
119 | + file /r "share\glib-2.0\*" | |
120 | + | |
121 | + setOutPath "$INSTDIR\share\@PRODUCT_NAME@\icons" | |
122 | + file /r "share\@PRODUCT_NAME@\icons\*" | |
123 | + | |
148 | 124 | # define uninstaller name |
149 | 125 | SetRegView 32 |
150 | 126 | |
... | ... | @@ -211,122 +187,49 @@ SubSection "@PRODUCT_NAME@" SecMain |
211 | 187 | |
212 | 188 | sectionEnd |
213 | 189 | |
214 | -!ifdef WITHCERTS | |
215 | - Section "SSL Certificates" SSLCerts | |
216 | - setOutPath $INSTDIR\certs | |
217 | - file /r "sslcerts\*.*" | |
218 | - sectionEnd | |
219 | -!endif | |
220 | - | |
221 | - SubSection "Plugins" SecPLugin | |
222 | - | |
223 | - Section "Remote control" IPCPlugin | |
224 | - | |
225 | - setOutPath $INSTDIR | |
226 | - | |
227 | - ${DisableX64FSRedirection} | |
228 | - | |
229 | - CreateDirectory "$INSTDIR\plugins" | |
230 | - file "/oname=$INSTDIR\plugins\ipcserver.dll" "lib\@PRODUCT_NAME@-plugins\ipcserver.dll" | |
231 | - | |
232 | - CreateDirectory "$INSTDIR\locale\pt_BR\LC_MESSAGES" | |
233 | - file "/oname=$INSTDIR\locale\pt_BR\LC_MESSAGES\libipc3270-@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@.mo" "share\locale\pt_BR\LC_MESSAGES\libipc3270-@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@.mo" | |
234 | - | |
235 | - ${@NSISREDIR@} | |
236 | - file "/oname=$SYSDIR\libipc3270.dll" "bin\libipc3270.dll" | |
237 | - | |
238 | - sectionEnd | |
239 | - | |
240 | - SubSectionEnd | |
241 | - | |
242 | -!ifdef WITHEXTRAS | |
243 | - SubSection "Extra modules" Languages | |
244 | - | |
245 | -!ifdef WITHLIBHLLAPI | |
246 | - Section "HLLAPI" HLLAPIBinding | |
247 | - | |
248 | - ${@NSISREDIR@} | |
249 | - | |
250 | - # Install HLLAPI connector | |
251 | - file "/oname=$SYSDIR\hllapi.dll" "bin\libhllapi.dll" | |
252 | - | |
253 | - # Install with "lib" prefix for compatibility. | |
254 | - file "/oname=$SYSDIR\libhllapi.dll" "bin\libhllapi.dll" | |
255 | - | |
256 | - CreateDirectory "$INSTDIR\locale\pt_BR\LC_MESSAGES" | |
257 | - file "/oname=$INSTDIR\locale\pt_BR\LC_MESSAGES\libhllapi-@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@.mo" "share\locale\pt_BR\LC_MESSAGES\libhllapi-@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@.mo" | |
258 | - | |
259 | - SectionEnd | |
260 | -!endif | |
261 | - | |
262 | - Section "KEYPADS" Keypads | |
263 | - | |
264 | - file "/oname=$INSTDIR\keypad\00-right.xml" "share\@PRODUCT_NAME@\keypad\00-right.xml" | |
265 | - file "/oname=$INSTDIR\keypad\10-bottom.xml" "share\@PRODUCT_NAME@\keypad\10-bottom.xml" | |
266 | - | |
267 | - SectionEnd | |
268 | - | |
269 | -!ifdef WITHMONO-TN3270 | |
270 | - Section /o ".NET" DOTNET | |
271 | - | |
272 | - CreateDirectory "$INSTDIR\dotnet" | |
273 | - | |
274 | - ${DisableX64FSRedirection} | |
275 | - file "/oname=$INSTDIR\dotnet\tn3270.dll" "mono/lib/tn3270-5.2/tn3270.dll" | |
276 | - file "/oname=$INSTDIR\dotnet\tn3270.xml" "mono/gapi-2.0/tn3270/tn3270.xml" | |
277 | - | |
278 | - ${@NSISREDIR@} | |
279 | - file "/oname=$SYSDIR\mono-tn3270.dll" "mono-tn3270.dll" | |
280 | - | |
281 | - SectionEnd | |
282 | -!endif | |
283 | - | |
284 | - SubSectionEnd | |
285 | -!endif | |
286 | - | |
287 | 190 | !ifdef WITHSDK |
288 | - Section /o "Software Development Kit" SDK | |
191 | + Section /o "Software Development Kit" SDK | |
289 | 192 | |
290 | 193 | setOutPath $INSTDIR\sdk\include |
291 | 194 | file /r "include\*.*" |
292 | 195 | |
293 | - CreateDirectory "$INSTDIR\sdk" | |
294 | - CreateDirectory "$INSTDIR\sdk\def" | |
295 | - CreateDirectory "$INSTDIR\sdk\lib" | |
296 | - | |
297 | - file "/oname=$INSTDIR\sdk\lib\lib3270.dll.a" "lib\lib@LIBRARY_NAME@.dll.a" | |
298 | - file "/oname=$INSTDIR\sdk\lib\lib3270.delayed.a" "lib\lib@LIBRARY_NAME@.delayed.a" | |
299 | - file "/oname=$INSTDIR\sdk\lib\lib3270.static.a" "lib\lib@LIBRARY_NAME@.static.a" | |
300 | - file "/oname=$INSTDIR\sdk\lib\libv3270.dll.a" "lib\libv3270.dll.a" | |
301 | - file "/oname=$INSTDIR\sdk\lib\libipc3270.dll.a" "lib\libipc3270.dll.a" | |
302 | - file "/oname=$INSTDIR\sdk\lib\libipc3270.static.a" "lib\libipc3270.static.a" | |
303 | - file "/oname=$INSTDIR\sdk\lib\libhllapi.dll.a" "lib\libhllapi.dll.a" | |
196 | + setOutPath $INSTDIR\sdk\lib | |
197 | + file /r "lib\*.a" | |
304 | 198 | |
305 | - file "/oname=$INSTDIR\sdk\lib3270.mak" "share\@PRODUCT_NAME@\def\lib3270.mak" | |
199 | + setOutPath $INSTDIR\sdk\lib\pkgconfig | |
200 | + file /r "lib\pkgconfig\*.pc" | |
306 | 201 | |
307 | - file "/oname=$INSTDIR\sdk\def\lib@LIBRARY_NAME@.def" "share\@PRODUCT_NAME@\def\lib@LIBRARY_NAME@.def" | |
308 | - file "/oname=$INSTDIR\sdk\def\libv3270.def" "share\@PRODUCT_NAME@\def\libv3270.def" | |
309 | - file "/oname=$INSTDIR\sdk\def\libipc3270.def" "share\@PRODUCT_NAME@\def\libipc3270.def" | |
310 | - file "/oname=$INSTDIR\sdk\def\libhllapi.def" "share\@PRODUCT_NAME@\def\libhllapi.def" | |
202 | + setOutPath $INSTDIR\sdk\msvc | |
203 | + file /r "share\@PRODUCT_NAME@\def\*.def" | |
204 | + file /r "share\@PRODUCT_NAME@\def\*.mak" | |
311 | 205 | |
312 | 206 | SetRegView @WINARCH@ |
313 | 207 | WriteRegExpandStr HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "PW3270_SDK_PATH" "$INSTDIR\sdk" |
314 | 208 | SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment" /TIMEOUT=5000 |
315 | 209 | |
316 | - SectionEnd | |
210 | + SectionEnd | |
317 | 211 | !endif |
318 | 212 | |
319 | -SubSectionEnd | |
213 | +!ifdef WITHCERTS | |
214 | + Section "SSL Certificates" SSLCerts | |
215 | + setOutPath $INSTDIR\certs | |
216 | + file /r "sslcerts\*.*" | |
217 | + sectionEnd | |
218 | +!endif | |
320 | 219 | |
220 | + SubSection "Plugins" SecPLugin | |
321 | 221 | |
322 | -!ifdef WITHGTK | |
323 | -Section "GTK+ Runtime" SecGTK | |
222 | + Section "Remote control" IPCPlugin | |
223 | + | |
224 | + ${DisableX64FSRedirection} | |
225 | + CreateDirectory "$INSTDIR\lib\@PRODUCT_NAME@-plugins" | |
226 | + file "/oname=$INSTDIR\lib\@PRODUCT_NAME@-plugins\ipcserver.dll" "lib\@PRODUCT_NAME@-plugins\ipcserver.dll" | |
324 | 227 | |
325 | - setOutPath $INSTDIR | |
326 | - file /r "runtime\*.*" | |
228 | + sectionEnd | |
327 | 229 | |
328 | -SectionEnd | |
329 | -!endif | |
230 | + SubSectionEnd | |
231 | + | |
232 | +SubSectionEnd | |
330 | 233 | |
331 | 234 | Section "Uninstall" |
332 | 235 | |
... | ... | @@ -343,15 +246,7 @@ Section "Uninstall" |
343 | 246 | delete $SMPROGRAMS\@PRODUCT_NAME@.lnk |
344 | 247 | delete $DESKTOP\@PRODUCT_NAME@.lnk |
345 | 248 | |
346 | - RMDir /r "$INSTDIR\locale" | |
347 | - RMDir /r "$INSTDIR\share" | |
348 | - RMDir /r "$INSTDIR\etc" | |
349 | - RMDir /r "$INSTDIR\plugins" | |
350 | - RMDir /r "$INSTDIR\sdk" | |
351 | - RMDir /r "$INSTDIR\gtk2-runtime" | |
352 | - | |
353 | - # Delete all files | |
354 | - delete "$INSTDIR\*.dll" | |
249 | + RMDir /r "$INSTDIR" | |
355 | 250 | |
356 | 251 | # Remove registry |
357 | 252 | SetRegView 32 | ... | ... |
win/win32-configure
... | ... | @@ -1,37 +0,0 @@ |
1 | -#!/bin/bash | |
2 | - | |
3 | -export HOST_CC=/usr/bin/gcc | |
4 | -export cache=win32.cache | |
5 | - | |
6 | -OPT=$@ | |
7 | - | |
8 | -OFFICE=$(grep -c 'AC_ARG_ENABLE(\[office' configure.ac) | |
9 | - | |
10 | -if [ "$OFFICE" != "0" ]; then | |
11 | - OPT="$OPT --disable-office" | |
12 | -fi | |
13 | - | |
14 | -if [ -d ~/win32/jdk ]; then | |
15 | - export JDK_HOME=$(readlink -f ~/win32/jdk) | |
16 | -else | |
17 | - unset JDK_HOME | |
18 | -fi | |
19 | - | |
20 | -if [ -d ~/win32/jre ]; then | |
21 | - export JRE_HOME=$(readlink -f ~/win32/jre) | |
22 | -else | |
23 | - unset JRE_HOME | |
24 | -fi | |
25 | - | |
26 | -./configure --cache-file=$cache \ | |
27 | - --host=i686-w64-mingw32 \ | |
28 | - --prefix=/usr/i686-w64-mingw32/sys-root/mingw \ | |
29 | - --libdir=/usr/i686-w64-mingw32/sys-root/mingw/lib \ | |
30 | - $OPT | |
31 | - | |
32 | - | |
33 | -status=$? | |
34 | - | |
35 | -rm -f "$cache" | |
36 | -exit $status | |
37 | - |
win/win64-configure
... | ... | @@ -1,33 +0,0 @@ |
1 | -#!/bin/bash | |
2 | - | |
3 | -export HOST_CC=/usr/bin/gcc | |
4 | -export cache=win64.cache | |
5 | - | |
6 | -OPT=$@ | |
7 | - | |
8 | -OFFICE=$(grep -c 'AC_ARG_ENABLE(\[office' configure.ac) | |
9 | - | |
10 | -if [ "$OFFICE" != "0" ]; then | |
11 | - OPT="$OPT --disable-office" | |
12 | -fi | |
13 | - | |
14 | -if [ -d ~/win64/jdk ]; then | |
15 | - export JDK_HOME=$(readlink -f ~/win64/jdk) | |
16 | -fi | |
17 | - | |
18 | -if [ -d ~/win64/jre ]; then | |
19 | - export JRE_HOME=$(readlink -f ~/win64/jre) | |
20 | -fi | |
21 | - | |
22 | - | |
23 | -./configure --cache-file=$cache \ | |
24 | - --host=x86_64-w64-mingw32 \ | |
25 | - --prefix=/usr/x86_64-w64-mingw32/sys-root/mingw \ | |
26 | - --libdir=/usr/x86_64-w64-mingw32/sys-root/mingw/lib \ | |
27 | - $OPT | |
28 | - | |
29 | -status=$? | |
30 | - | |
31 | -rm -f "$cache" | |
32 | -exit $status | |
33 | - |
wine-run.sh
1 | 1 | #!/bin/bash |
2 | 2 | |
3 | -make Debug | |
4 | -make gschemas.compiled | |
3 | +rm -fr ${PWD}/.build | |
4 | + | |
5 | +make DESTDIR=${PWD}/.build install | |
6 | +if [ "$?" != "0" ]; then | |
7 | + exit -1 | |
8 | +fi | |
9 | + | |
10 | +bash ./win/makeruntime.sh | |
11 | +if [ "$?" != "0" ]; then | |
12 | + exit -1 | |
13 | +fi | |
14 | + | |
15 | +wine .build/usr/x86_64-w64-mingw32/sys-root/mingw/bin/pw3270.exe | |
16 | +if [ "$?" != "0" ]; then | |
17 | + exit -1 | |
18 | +fi | |
5 | 19 | |
6 | -cp gschemas.compiled .bin/Debug | |
7 | 20 | |
8 | -wine .bin/Debug/pw3270.exe | |
9 | 21 | ... | ... |