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 | ... | ... |