Commit d310058af21d1e23c3227fdbcb8e64da61e7b9a6

Authored by Perry Werneck
Committed by GitHub
2 parents 1a287c8e f975fe95
Exists in develop

Merge pull request #46 from PerryWerneck/develop

Publishing mingw package instead of .tar.xz
.github/workflows/codeql.yml
@@ -3,12 +3,11 @@ name: CodeQL @@ -3,12 +3,11 @@ name: CodeQL
3 on: 3 on:
4 push: 4 push:
5 branches: 5 branches:
6 - [ develop ] 6 + - develop
  7 + - master
7 pull_request: 8 pull_request:
8 branches: 9 branches:
9 - [ master, develop ]  
10 - schedule:  
11 - - cron: 48 7 * * 1 10 + - develop
12 jobs: 11 jobs:
13 analyze: 12 analyze:
14 name: Analyze 13 name: Analyze
.github/workflows/publish.yml
@@ -5,7 +5,7 @@ on: @@ -5,7 +5,7 @@ on:
5 - master 5 - master
6 jobs: 6 jobs:
7 msys2-mingw: 7 msys2-mingw:
8 - name: Publish for Windows 64 8 + name: Publish for MinGW 64
9 runs-on: windows-latest 9 runs-on: windows-latest
10 defaults: 10 defaults:
11 run: 11 run:
@@ -21,13 +21,43 @@ jobs: @@ -21,13 +21,43 @@ jobs:
21 with: 21 with:
22 msystem: mingw64 22 msystem: mingw64
23 update: true 23 update: true
24 - install: xz mingw-w64-x86_64-gcc automake autoconf make git pkgconf mingw-w64-x86_64-gettext gettext-devel mingw-w64-x86_64-openssl libtool 24 + install: dos2unix mingw-w64-x86_64-gcc automake autoconf make git pkgconf mingw-w64-x86_64-gettext gettext-devel mingw-w64-x86_64-openssl libtool
25 - name: CI-Build 25 - name: CI-Build
26 - run: ./win/ci-build.sh 26 + run: ./win/mingw-build.sh
27 - uses: ncipollo/release-action@v1 27 - uses: ncipollo/release-action@v1
28 with: 28 with:
29 tag: ${{ steps.gettag.outputs.tag }} 29 tag: ${{ steps.gettag.outputs.tag }}
30 - artifacts: "*-lib3270.tar.xz" 30 + artifacts: "*-lib3270-*.pkg.tar.zst"
  31 + allowUpdates: true
  32 + draft: false
  33 + makeLatest: true
  34 + omitBody: true
  35 + omitPrereleaseDuringUpdate: true
  36 + replacesArtifacts: true
  37 + msys2-msvc:
  38 + name: Publish for MSVC 64
  39 + runs-on: windows-latest
  40 + defaults:
  41 + run:
  42 + shell: msys2 {0}
  43 + steps:
  44 + - uses: actions/checkout@v3
  45 + - uses: oprypin/find-latest-tag@v1
  46 + id: gettag
  47 + with:
  48 + repository: PerryWerneck/lib3270
  49 + releases-only: true
  50 + - uses: msys2/setup-msys2@v2
  51 + with:
  52 + msystem: mingw64
  53 + update: true
  54 + install: zip dos2unix mingw-w64-x86_64-gcc automake autoconf make git pkgconf mingw-w64-x86_64-gettext gettext-devel mingw-w64-x86_64-openssl libtool
  55 + - name: CI-Build
  56 + run: ./win/msvc-build.sh
  57 + - uses: ncipollo/release-action@v1
  58 + with:
  59 + tag: ${{ steps.gettag.outputs.tag }}
  60 + artifacts: "*-lib3270-*.zip"
31 allowUpdates: true 61 allowUpdates: true
32 draft: false 62 draft: false
33 makeLatest: true 63 makeLatest: true
PKGBUILD.mingw 0 → 100644
@@ -0,0 +1,62 @@ @@ -0,0 +1,62 @@
  1 +# Maintainer: Perry Werneck <perry.werneck@gmail.com>
  2 +# References: https://www.msys2.org/wiki/Creating-Packages/
  3 +
  4 +# SPDX-License-Identifier: LGPL-3.0-or-later
  5 +#
  6 +# Copyright (C) 2008 Banco do Brasil S.A.
  7 +#
  8 +# This program is free software: you can redistribute it and/or modify
  9 +# it under the terms of the GNU Lesser General Public License as published
  10 +# by the Free Software Foundation, either version 3 of the License, or
  11 +# (at your option) any later version.
  12 +#
  13 +# This program is distributed in the hope that it will be useful,
  14 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
  15 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  16 +# GNU General Public License for more details.
  17 +#
  18 +# You should have received a copy of the GNU Lesser General Public License
  19 +# along with this program. If not, see <https://www.gnu.org/licenses/>.
  20 +
  21 +_realname=$(grep AC_INIT "${startdir}/configure.ac" | cut -d[ -f2 | cut -d] -f1)
  22 +
  23 +pkgname=${MINGW_PACKAGE_PREFIX}-${_realname}
  24 +source=()
  25 +
  26 +pkgver=$(grep AC_INIT "${startdir}/configure.ac" | cut -d[ -f3 | cut -d] -f1)
  27 +pkgrel=0
  28 +pkgdesc="TN3270 Access library"
  29 +url="https://github.com/PerryWerneck/${_realname}"
  30 +arch=(i686 x86_64)
  31 +license=(LGPL-3.0-or-later)
  32 +depends=(${MINGW_PACKAGE_PREFIX}-openssl)
  33 +makedepends=(autoconf automake make libtool gzip dos2unix ${MINGW_PACKAGE_PREFIX}-openssl)
  34 +checkdepends=()
  35 +
  36 +provides=($pkgname)
  37 +conflicts=($pkgname)
  38 +
  39 +prepare() {
  40 + rm -fr "$srcdir/$pkgname"
  41 + ln -snf "$startdir" "$srcdir/$pkgname"
  42 +}
  43 +
  44 +build() {
  45 + cd $pkgname
  46 + ./autogen.sh \
  47 + --prefix=${MINGW_PREFIX} \
  48 + --build=${MINGW_CHOST} \
  49 + --host=${MINGW_CHOST} \
  50 + --target=${MINGW_CHOST}
  51 +
  52 + make all
  53 +}
  54 +
  55 +package() {
  56 + cd $pkgname
  57 + make DESTDIR="${pkgdir}" install
  58 + install \
  59 + -Dm644 \
  60 + "LICENSE" \
  61 + "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE"
  62 +}
gitsync.sh
@@ -1,34 +0,0 @@ @@ -1,34 +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 -REPOS=$(git remote -v | grep -v origin | grep "(push)" | awk '{print $1}')  
21 -  
22 -for repo in ${REPOS}  
23 -do  
24 - echo "Getting updates from ${repo} ..."  
25 - git fetch ${repo}  
26 - git merge  
27 -done  
28 -  
29 -for repo in ${REPOS}  
30 -do  
31 - echo "Updating ${repo} ..."  
32 - git push ${repo}  
33 -done  
34 -  
locale/pt_BR.po
@@ -2071,7 +2071,7 @@ msgstr &quot;Aguardando resposta do pedido de upload&quot; @@ -2071,7 +2071,7 @@ msgstr &quot;Aguardando resposta do pedido de upload&quot;
2071 msgid "Warning" 2071 msgid "Warning"
2072 msgstr "Alerta" 2072 msgstr "Alerta"
2073 2073
2074 -#: src/core/windows/util.c:123 src/core/windows/util.c:166 2074 +#: src/core/windows/util.c:124 src/core/windows/util.c:167
2075 #, c-format 2075 #, c-format
2076 msgid "Windows error %d" 2076 msgid "Windows error %d"
2077 msgstr "Erro windows foi %d" 2077 msgstr "Erro windows foi %d"
pushtag.sh
@@ -1,34 +0,0 @@ @@ -1,34 +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 -#git checkout master  
24 -#git merge origin/master  
25 -  
26 -git tag -f ${1}  
27 -git push -f --tags  
28 -  
29 -for repo in $(git remote -v | grep -v origin | grep "(push)" | awk '{print $1}')  
30 -do  
31 - echo "Updating ${repo} ..."  
32 - git push ${repo} -f --tags  
33 -done  
34 -  
win/PKGBUILD
@@ -1,51 +0,0 @@ @@ -1,51 +0,0 @@
1 -# Maintainer: Perry Werneck <perry.werneck@gmail.com>  
2 -# References: https://www.msys2.org/wiki/Creating-Packages/  
3 -  
4 -_realname=lib3270  
5 -pkgname=${MINGW_PACKAGE_PREFIX}-${_realname}  
6 -source=(git+https://github.com/PerryWerneck/lib3270#branch=develop)  
7 -  
8 -#pkgver() {  
9 -# cd ${srcdir}/${_realname}  
10 -# git describe --long --tags --abbrev=7 | sed 's/\([^-]*-g\)/r\1/;s/-/./g'  
11 -#}  
12 -  
13 -pkgver=5.4  
14 -pkgrel=1  
15 -pkgdesc="TN3270 Access library"  
16 -url="https://github.com/PerryWerneck/lib3270"  
17 -arch=(i686 x86_64)  
18 -license=(GPL)  
19 -depends=(openssl)  
20 -makedepends=(autoconf automake make libtool gzip ${MINGW_PACKAGE_PREFIX}-openssl)  
21 -checkdepends=()  
22 -  
23 -sha256sums=('SKIP')  
24 -  
25 -provides=($pkgname)  
26 -conflicts=($pkgname)  
27 -  
28 -prepare() {  
29 - cd ${srcdir}/${_realname}  
30 -}  
31 -  
32 -build() {  
33 - rm -fr "${srcdir}/build-${CARCH}"  
34 - mkdir -p "${srcdir}/build-${CARCH}"  
35 - cd "${srcdir}/build-${CARCH}"  
36 - ${srcdir}/${_realname}/autogen.sh \  
37 - --prefix=${MINGW_PREFIX} \  
38 - --build=${MINGW_CHOST} \  
39 - --host=${MINGW_CHOST} \  
40 - --target=${MINGW_CHOST}  
41 -  
42 - make all  
43 -}  
44 -  
45 -package() {  
46 - cd "${srcdir}/build-${CARCH}"  
47 - make DESTDIR="${pkgdir}" install  
48 - install -Dm644 "${srcdir}/${_realname}/LICENSE" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE"  
49 -}  
50 -  
51 -  
win/ci-build.sh
@@ -1,34 +0,0 @@ @@ -1,34 +0,0 @@
1 -#!/bin/bash  
2 -#  
3 -# References:  
4 -#  
5 -# * https://www.msys2.org/docs/ci/  
6 -#  
7 -#  
8 -echo "Running ${0}"  
9 -  
10 -LOGFILE=build.log  
11 -rm -f ${LOGFILE}  
12 -  
13 -die ( ) {  
14 - [ -s $LOGFILE ] && tail $LOGFILE  
15 - [ "$1" ] && echo "$*"  
16 - exit -1  
17 -}  
18 -  
19 -cd $(dirname $(dirname $(readlink -f ${0})))  
20 -  
21 -#  
22 -# Build LIB3270  
23 -#  
24 -echo "Building lib3270"  
25 -./autogen.sh > $LOGFILE 2>&1 || die "Autogen failure"  
26 -./configure > $LOGFILE 2>&1 || die "Configure failure"  
27 -make clean > $LOGFILE 2>&1 || die "Make clean failure"  
28 -make all > $LOGFILE 2>&1 || die "Make failure"  
29 -make DESTDIR=.bin/package install  
30 -  
31 -tar --create --xz --file=${MINGW_PACKAGE_PREFIX}-lib3270.tar.xz --directory=.bin/package --verbose .  
32 -  
33 -  
34 -  
win/mingw-build.sh 0 → 100755
@@ -0,0 +1,53 @@ @@ -0,0 +1,53 @@
  1 +#!/bin/bash
  2 +#
  3 +# SPDX-License-Identifier: LGPL-3.0-or-later
  4 +#
  5 +# Copyright (C) 2008 Banco do Brasil S.A.
  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 +# References:
  22 +#
  23 +# * https://www.msys2.org/docs/ci/
  24 +#
  25 +
  26 +echo "Running ${0}"
  27 +
  28 +LOGFILE=build.log
  29 +rm -f ${LOGFILE}
  30 +
  31 +die ( ) {
  32 + [ -s $LOGFILE ] && tail $LOGFILE
  33 + [ "$1" ] && echo "$*"
  34 + exit -1
  35 +}
  36 +
  37 +cd $(dirname $(dirname $(readlink -f ${0})))
  38 +
  39 +#
  40 +# Install pre-reqs
  41 +#
  42 +#echo "Installing pre-reqs..."
  43 +#pacman -U --noconfirm *.pkg.tar.zst || die "pacman failure"
  44 +
  45 +#
  46 +# Build
  47 +#
  48 +echo "Building package..."
  49 +dos2unix PKGBUILD.mingw || die "dos2unix failure"
  50 +makepkg BUILDDIR=/tmp/pkg -p PKGBUILD.mingw || die "makepkg failure"
  51 +
  52 +echo "Build complete"
  53 +
win/msvc-build.sh 0 → 100644
@@ -0,0 +1,40 @@ @@ -0,0 +1,40 @@
  1 +#!/bin/bash
  2 +#
  3 +# References:
  4 +#
  5 +# * https://www.msys2.org/docs/ci/
  6 +#
  7 +#
  8 +echo "Running ${0}"
  9 +
  10 +LOGFILE=build.log
  11 +rm -f ${LOGFILE}
  12 +
  13 +die ( ) {
  14 + [ -s $LOGFILE ] && tail $LOGFILE
  15 + [ "$1" ] && echo "$*"
  16 + exit -1
  17 +}
  18 +
  19 +cd $(dirname $(dirname $(readlink -f ${0})))
  20 +
  21 +#
  22 +# Build LIB3270
  23 +#
  24 +echo "Building lib3270"
  25 +./autogen.sh > $LOGFILE 2>&1 || die "Autogen failure"
  26 +./configure > $LOGFILE 2>&1 || die "Configure failure"
  27 +make clean > $LOGFILE 2>&1 || die "Make clean failure"
  28 +make all > $LOGFILE 2>&1 || die "Make failure"
  29 +make DESTDIR=.bin/package install > $LOGFILE 2>&1 || die "Install failure"
  30 +
  31 +cd .bin/package${MINGW_PREFIX}
  32 +zip \
  33 + -9 -r \
  34 + -x'*.a' \
  35 + -x'*.pc' \
  36 + ../../../${MINGW_PACKAGE_PREFIX}-lib3270-${MSYSTEM_CARCH}.zip * \
  37 + > $LOGFILE 2>&1 || die "Zip failure"
  38 +
  39 +
  40 +