public inbox for cygwin-patches@cygwin.com
 help / color / mirror / Atom feed
* [PATCH 0/3] CI update
@ 2020-08-26 21:04 Jon Turney
  2020-08-26 21:04 ` [PATCH 1/3] Cygwin: Add .appveyor.yml Jon Turney
                   ` (4 more replies)
  0 siblings, 5 replies; 9+ messages in thread
From: Jon Turney @ 2020-08-26 21:04 UTC (permalink / raw)
  To: cygwin-patches; +Cc: Jon Turney

Since we recently had the unpleasant surprise of discovering that Cygwin
doesn't build on F32 when trying to make a release, this adds some CI to
test that.

Open issues: Since there don't seem to be RedHat packages for cocom, this
grabs a cocom package from some random 3rd party I found on the internet.
That might not be the best idea :).

This also updates other CI configurations.

Jon Turney (3):
  Cygwin: Add .appveyor.yml
  Cygwin: Add github action to cross-build on Fedora
  Cygwin: Remove .drone.yml

 .appveyor.yml                | 69 ++++++++++++++++++++++++++++++++++++
 .drone.yml                   | 58 ------------------------------
 .github/workflows/cygwin.yml | 45 +++++++++++++++++++++++
 3 files changed, 114 insertions(+), 58 deletions(-)
 create mode 100644 .appveyor.yml
 delete mode 100644 .drone.yml
 create mode 100644 .github/workflows/cygwin.yml

-- 
2.28.0


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH 1/3] Cygwin: Add .appveyor.yml
  2020-08-26 21:04 [PATCH 0/3] CI update Jon Turney
@ 2020-08-26 21:04 ` Jon Turney
  2020-08-26 21:04 ` [PATCH 2/3] Cygwin: Add github action to cross-build on Fedora Jon Turney
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 9+ messages in thread
From: Jon Turney @ 2020-08-26 21:04 UTC (permalink / raw)
  To: cygwin-patches; +Cc: Jon Turney

This is a slightly more polished version of the configuration being used
for CI builds at https://ci.appveyor.com/project/cygwin/cygwin, which is
not currently under version control.
---
 .appveyor.yml | 69 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 69 insertions(+)
 create mode 100644 .appveyor.yml

diff --git a/.appveyor.yml b/.appveyor.yml
new file mode 100644
index 000000000..602c189cd
--- /dev/null
+++ b/.appveyor.yml
@@ -0,0 +1,69 @@
+version: '{build}'
+
+branches:
+  only:
+  - master
+  - /cygwin/
+
+skip_tags: true
+shallow_clone: true
+
+environment:
+  APPVEYOR_SAVE_CACHE_ON_ERROR: true
+  CACHE: C:\cache
+  CYGWIN_MIRROR: http://cygwin.mirror.constant.com
+  matrix:
+  - BUILD: x86_64-pc-cygwin
+    CYGWIN_ROOT: C:\cygwin64
+    PKGARCH: mingw64-x86_64
+    SETUP: setup-x86_64.exe
+  - BUILD: i686-pc-cygwin
+    CYGWIN_ROOT: C:\cygwin
+    PKGARCH: mingw64-i686
+    SETUP: setup-x86.exe
+
+cache: C:\cache
+
+install:
+- if not exist %CACHE% mkdir %CACHE%
+- appveyor DownloadFile http://cygwin.com/%SETUP% -FileName %CACHE%\%SETUP%
+- "%CACHE%\\%SETUP% -qnNdO -R %CYGWIN_ROOT% -s %CYGWIN_MIRROR% -l %CACHE% -g -P \
+gcc-core,\
+gcc-g++,\
+make,\
+perl,\
+patch,\
+cocom,\
+gettext-devel,\
+libiconv-devel,\
+zlib-devel,\
+%PKGARCH%-gcc-core,\
+%PKGARCH%-gcc-g++,\
+%PKGARCH%-zlib,\
+dblatex,\
+docbook2X,\
+docbook-xml45,\
+docbook-xsl,\
+xmlto,\
+python3-lxml,\
+python3-ply"
+
+build_script:
+- '%CYGWIN_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER; mkdir build install"'
+- '%CYGWIN_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER/build; ../configure --prefix=$(realpath $(pwd)/../install) -v"'
+- '%CYGWIN_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER/build; make"'
+- '%CYGWIN_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER/build; make install"'
+- '%CYGWIN_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER/build; cd */newlib; make info man"'
+- '%CYGWIN_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER/build; cd */newlib; make install-info install-man"'
+
+test: off
+deploy: off
+
+# irc notification via notifico
+notifications:
+- provider: Webhook
+  url: http://n.tkte.ch/h/4848/0nqixIBiOFzf-S_N2PY83dGB
+  method: GET
+  on_build_success: false
+  on_build_failure: false
+  on_build_status_changed: true
-- 
2.28.0


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH 2/3] Cygwin: Add github action to cross-build on Fedora
  2020-08-26 21:04 [PATCH 0/3] CI update Jon Turney
  2020-08-26 21:04 ` [PATCH 1/3] Cygwin: Add .appveyor.yml Jon Turney
@ 2020-08-26 21:04 ` Jon Turney
  2020-08-26 21:04 ` [PATCH 3/3] Cygwin: Remove .drone.yml Jon Turney
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 9+ messages in thread
From: Jon Turney @ 2020-08-26 21:04 UTC (permalink / raw)
  To: cygwin-patches; +Cc: Jon Turney

This helps avoid unpleasant surprises when we come to actually make a
release (which are cross-built in this manner)
---
 .github/workflows/cygwin.yml | 45 ++++++++++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)
 create mode 100644 .github/workflows/cygwin.yml

diff --git a/.github/workflows/cygwin.yml b/.github/workflows/cygwin.yml
new file mode 100644
index 000000000..cdad8e67b
--- /dev/null
+++ b/.github/workflows/cygwin.yml
@@ -0,0 +1,45 @@
+name: cygwin
+
+on: push
+
+jobs:
+  fedora-build:
+    runs-on: ubuntu-latest
+    container: fedora:latest
+    strategy:
+      fail-fast: false
+      matrix:
+        include:
+        - target: x86_64-pc-cygwin
+          pkgarch: 64
+        - target: i686-pc-cygwin
+          pkgarch: 32
+    name: Fedora cross ${{ matrix.target }}
+
+    steps:
+    - uses: actions/checkout@v2
+
+    # install build tools
+    - run: dnf install -y make patch perl
+    - run: dnf install -y mingw${{ matrix.pkgarch }}-gcc-c++ mingw${{ matrix.pkgarch }}-winpthreads-static mingw${{ matrix.pkgarch }}-zlib-static
+
+    # cocom isn't packaged in Fedora, so we install from a 3rd party repo
+    - run: dnf install -y https://github.com/rpmsphere/noarch/raw/master/r/rpmsphere-release-$(rpm -E %fedora)-1.noarch.rpm
+    - run: dnf install -y cocom
+
+    # install cross-cygwin toolchain and libs from copr
+    - run: dnf install -y dnf-plugins-core
+    - run: dnf copr enable -y yselkowitz/cygwin
+    - run: dnf install -y cygwin${{ matrix.pkgarch }}-gcc-c++ cygwin${{ matrix.pkgarch }}-gettext cygwin${{ matrix.pkgarch }}-libbfd cygwin${{ matrix.pkgarch }}-libiconv cygwin${{ matrix.pkgarch }}-zlib
+
+    # install doc tools
+    - run: dnf install -y dblatex docbook2X docbook-xsl xmlto
+    - run: dnf install -y python3 python3-lxml python3-ply
+
+    # build
+    - run: mkdir build install
+    - run: cd build && ../configure --target=${{ matrix.target }} --prefix=$(realpath $(pwd)/../install)
+    - run: make -C build
+    - run: make -C build/*/newlib info man
+    - run: make -C build install
+    - run: make -C build/*/newlib install-info install-man
-- 
2.28.0


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH 3/3] Cygwin: Remove .drone.yml
  2020-08-26 21:04 [PATCH 0/3] CI update Jon Turney
  2020-08-26 21:04 ` [PATCH 1/3] Cygwin: Add .appveyor.yml Jon Turney
  2020-08-26 21:04 ` [PATCH 2/3] Cygwin: Add github action to cross-build on Fedora Jon Turney
@ 2020-08-26 21:04 ` Jon Turney
  2020-08-27  8:49 ` [PATCH 0/3] CI update Corinna Vinschen
  2020-08-28 13:24 ` Corinna Vinschen
  4 siblings, 0 replies; 9+ messages in thread
From: Jon Turney @ 2020-08-26 21:04 UTC (permalink / raw)
  To: cygwin-patches; +Cc: Jon Turney

tea-ci.org was a CI service for MSYS2, but is no longer operating.
---
 .drone.yml | 58 ------------------------------------------------------
 1 file changed, 58 deletions(-)
 delete mode 100644 .drone.yml

diff --git a/.drone.yml b/.drone.yml
deleted file mode 100644
index ad512a031..000000000
--- a/.drone.yml
+++ /dev/null
@@ -1,58 +0,0 @@
-# Build configuration for https://tea-ci.org
-# Tea CI is a fork of Drone CI with Cygwin/Msys2 support
-# Feel free to share Tea CI to more open source developers
-# https://docs.tea-ci.org/usage/overview/
-
-debug: true
-
-build:
-  stage1:
-    image: teaci/cygwin$$arch
-    pull: true
-    shell: cygwin$$arch
-    commands:
-      - uname -a
-      - id
-      - C:/cygwin-installer.exe --site http://mirrors.tea-ci.org/cygwin --local-package-dir Z:/tmp/cygwin -W -P gettext-devel,zlib-devel,libiconv,libiconv-devel,mingw64-i686-gcc-g++,mingw64-i686-zlib,mingw64-x86_64-gcc-core,mingw64-x86_64-gcc-g++,mingw64-x86_64-zlib,dejagnu,dblatex,docbook-xml45,docbook-xsl,xmlto -q &> /dev/null
-      - srcdir=`pwd`
-      - builddir=/oss/build-stage1
-      - installdir=/oss/install-stage1
-      - mkdir -p ${builddir} ${installdir}
-      - cd ${builddir}
-      - ${srcdir}/configure --prefix=${installdir} -v
-      - make
-      - make install
-      - sha1sum ${installdir}/bin/cygwin1.dll /bin/cygwin1.dll
-      # FIXME: Is there an easy way to package new Cygwin then install locally using setup_x86{,-64}.exe?
-      - cp -vf ${installdir}/bin/cygwin1.dll /bin/cygwin1.dll
-
-  test:
-    image: teaci/cygwin$$arch
-    pull: true
-    shell: /bin/bash # Call from Linux native shell, which is a special bonus of Tea CI.
-    commands:
-      # In the worst case, new cygwin1.dll might fail to start with exit status 0, which fools the CI as status success.
-      # The following test does not rely on cygwin exit status, instead we trust Linux grep result.
-      - cygwin$$arch -c "uname -a" | grep CYGWIN_NT
-      - cygwin$$arch -c "id" | grep uid
-      - cygwin$$arch -c "sha1sum --tag /bin/cygwin1.dll" | grep SHA1
-
-  # Compile Cygwin again using the new cygwin1.dll
-  stage2:
-    image: teaci/cygwin$$arch
-    pull: true
-    shell: cygwin$$arch
-    commands:
-      - srcdir=`pwd`
-      - builddir=/oss/build-stage2
-      - installdir=/oss/install-stage2
-      - mkdir -p ${builddir} ${installdir}
-      - cd ${builddir}
-      - ${srcdir}/configure --prefix=${installdir} -v
-      - make
-      - make install
-
-matrix:
-  arch:
-    - 64
-    - 32
-- 
2.28.0


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 0/3] CI update
  2020-08-26 21:04 [PATCH 0/3] CI update Jon Turney
                   ` (2 preceding siblings ...)
  2020-08-26 21:04 ` [PATCH 3/3] Cygwin: Remove .drone.yml Jon Turney
@ 2020-08-27  8:49 ` Corinna Vinschen
  2020-08-27 19:29   ` Brian Inglis
  2020-08-28 13:24 ` Corinna Vinschen
  4 siblings, 1 reply; 9+ messages in thread
From: Corinna Vinschen @ 2020-08-27  8:49 UTC (permalink / raw)
  To: cygwin-patches

On Aug 26 22:04, Jon Turney wrote:
> Since we recently had the unpleasant surprise of discovering that Cygwin
> doesn't build on F32 when trying to make a release, this adds some CI to
> test that.
> 
> Open issues: Since there don't seem to be RedHat packages for cocom, this
> grabs a cocom package from some random 3rd party I found on the internet.
> That might not be the best idea :).
> 
> This also updates other CI configurations.
> 
> Jon Turney (3):
>   Cygwin: Add .appveyor.yml
>   Cygwin: Add github action to cross-build on Fedora
>   Cygwin: Remove .drone.yml
> 
>  .appveyor.yml                | 69 ++++++++++++++++++++++++++++++++++++
>  .drone.yml                   | 58 ------------------------------
>  .github/workflows/cygwin.yml | 45 +++++++++++++++++++++++
>  3 files changed, 114 insertions(+), 58 deletions(-)
>  create mode 100644 .appveyor.yml
>  delete mode 100644 .drone.yml
>  create mode 100644 .github/workflows/cygwin.yml
> 
> -- 
> 2.28.0

Fine with me.  Please push.


Thanks,
Corinna

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 0/3] CI update
  2020-08-27  8:49 ` [PATCH 0/3] CI update Corinna Vinschen
@ 2020-08-27 19:29   ` Brian Inglis
  2020-08-28  8:43     ` Corinna Vinschen
  0 siblings, 1 reply; 9+ messages in thread
From: Brian Inglis @ 2020-08-27 19:29 UTC (permalink / raw)
  To: cygwin-patches

On 2020-08-27 02:49, Corinna Vinschen wrote:
> On Aug 26 22:04, Jon Turney wrote:
>> Since we recently had the unpleasant surprise of discovering that Cygwin
>> doesn't build on F32 when trying to make a release, this adds some CI to
>> test that.
>>
>> Open issues: Since there don't seem to be RedHat packages for cocom, this
>> grabs a cocom package from some random 3rd party I found on the internet.

New official site V0.98 Unicode 8:

	https://github.com/dino-lang/dino/blob/master/cocom.spec

-- 
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.
[Data in IEC units and prefixes, physical quantities in SI.]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 0/3] CI update
  2020-08-27 19:29   ` Brian Inglis
@ 2020-08-28  8:43     ` Corinna Vinschen
  2020-08-28 13:57       ` Brian Inglis
  0 siblings, 1 reply; 9+ messages in thread
From: Corinna Vinschen @ 2020-08-28  8:43 UTC (permalink / raw)
  To: cygwin-patches

On Aug 27 13:29, Brian Inglis wrote:
> On 2020-08-27 02:49, Corinna Vinschen wrote:
> > On Aug 26 22:04, Jon Turney wrote:
> >> Since we recently had the unpleasant surprise of discovering that Cygwin
> >> doesn't build on F32 when trying to make a release, this adds some CI to
> >> test that.
> >>
> >> Open issues: Since there don't seem to be RedHat packages for cocom, this
> >> grabs a cocom package from some random 3rd party I found on the internet.
> 
> New official site V0.98 Unicode 8:
> 
> 	https://github.com/dino-lang/dino/blob/master/cocom.spec

Weird version numbering scheme.  Our cocom package is version 0.996.
Is it safe to assume this stuff is newer then ours?


Corinna

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 0/3] CI update
  2020-08-26 21:04 [PATCH 0/3] CI update Jon Turney
                   ` (3 preceding siblings ...)
  2020-08-27  8:49 ` [PATCH 0/3] CI update Corinna Vinschen
@ 2020-08-28 13:24 ` Corinna Vinschen
  4 siblings, 0 replies; 9+ messages in thread
From: Corinna Vinschen @ 2020-08-28 13:24 UTC (permalink / raw)
  To: cygwin-patches

On Aug 26 22:04, Jon Turney wrote:
> Since we recently had the unpleasant surprise of discovering that Cygwin
> doesn't build on F32 when trying to make a release, this adds some CI to
> test that.
> 
> Open issues: Since there don't seem to be RedHat packages for cocom, this
> grabs a cocom package from some random 3rd party I found on the internet.
> That might not be the best idea :).
> 
> This also updates other CI configurations.
> 
> Jon Turney (3):
>   Cygwin: Add .appveyor.yml
>   Cygwin: Add github action to cross-build on Fedora
>   Cygwin: Remove .drone.yml
> 
>  .appveyor.yml                | 69 ++++++++++++++++++++++++++++++++++++
>  .drone.yml                   | 58 ------------------------------
>  .github/workflows/cygwin.yml | 45 +++++++++++++++++++++++
>  3 files changed, 114 insertions(+), 58 deletions(-)
>  create mode 100644 .appveyor.yml
>  delete mode 100644 .drone.yml
>  create mode 100644 .github/workflows/cygwin.yml

Go ahead.


Thanks,
Corinna

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 0/3] CI update
  2020-08-28  8:43     ` Corinna Vinschen
@ 2020-08-28 13:57       ` Brian Inglis
  0 siblings, 0 replies; 9+ messages in thread
From: Brian Inglis @ 2020-08-28 13:57 UTC (permalink / raw)
  To: cygwin-patches

On 2020-08-28 02:43, Corinna Vinschen wrote:
> On Aug 27 13:29, Brian Inglis wrote:
>> On 2020-08-27 02:49, Corinna Vinschen wrote:
>>> On Aug 26 22:04, Jon Turney wrote:
>>>> Since we recently had the unpleasant surprise of discovering that Cygwin
>>>> doesn't build on F32 when trying to make a release, this adds some CI to
>>>> test that.
>>>>
>>>> Open issues: Since there don't seem to be RedHat packages for cocom, this
>>>> grabs a cocom package from some random 3rd party I found on the internet.
>>
>> New official site V0.98 Unicode 8:
>>
>> 	https://github.com/dino-lang/dino/blob/master/cocom.spec
> 
> Weird version numbering scheme.  Our cocom package is version 0.996.
> Is it safe to assume this stuff is newer then ours?

Same guy Vladimir Makarov and link from previous SF to current GH sources; not
seeing the earlier emphasis on Russian armaments, rather focus is on Dino
language; affiliation RedHat Toronto; GH INSTALL files all date from 20 years
ago; our CHANGES says Win32 support was removed in 2007 at the top, and that
agrees with GH ChangeLog, which continues up to 2019; closed Issue mentions he
changed to autotools for Cygwin and MacOSX between 2015 and 2016; switches email
from users.sf.net to gcc.gnu.org in 2016, and redhat.com briefly 2016 Mar, about
when he switched to GH.

There are few mentions of versions; preference on GH seems to be dates, latest
mainly 2016, regenerated configure, Makefile.in, aclocal.m4 across directories 9
months ago: although our file dates are 2015, that version 0.996 applies to
Ammunition from 2002; version mentions include above Ammunition v0.996,
Onigurama 6.0.0, Dino updates to .5 and .55, http://dino-lang.github.io/download
offers V0.97 with Dino 0.5, GH says V0.98 with Dino 0.55.

-- 
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.
[Data in IEC units and prefixes, physical quantities in SI.]

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2020-08-28 13:57 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-26 21:04 [PATCH 0/3] CI update Jon Turney
2020-08-26 21:04 ` [PATCH 1/3] Cygwin: Add .appveyor.yml Jon Turney
2020-08-26 21:04 ` [PATCH 2/3] Cygwin: Add github action to cross-build on Fedora Jon Turney
2020-08-26 21:04 ` [PATCH 3/3] Cygwin: Remove .drone.yml Jon Turney
2020-08-27  8:49 ` [PATCH 0/3] CI update Corinna Vinschen
2020-08-27 19:29   ` Brian Inglis
2020-08-28  8:43     ` Corinna Vinschen
2020-08-28 13:57       ` Brian Inglis
2020-08-28 13:24 ` Corinna Vinschen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).