Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
61c7294
Add MSYS2 triplet
Alexpux Apr 14, 2019
e6895db
Fix msys library name in import libraries
ktbarrett Mar 14, 2021
e501600
Rename dll from cygwin to msys
Alexpux Apr 14, 2019
70cdcba
Add functionality for converting UNIX paths in arguments and environm…
Alexpux Apr 14, 2019
d6cd58e
Add functionality for changing OS name via MSYSTEM environment variab…
Alexpux Apr 14, 2019
e7d3c8f
- Move root to /usr. - Change sorting mount points. - By default moun…
Alexpux Apr 14, 2019
8c5cc28
Instead of creating Cygwin symlinks, use deep copy by default
Alexpux Apr 14, 2019
e907429
Automatically rewrite TERM=msys to TERM=cygwin
Alexpux Apr 14, 2019
8102cde
Do not convert environment for strace
Alexpux Apr 14, 2019
c68f8fd
strace.cc: Don't set MSYS=noglob
mingwandroid Aug 23, 2015
e6cc70d
Add debugging for strace make_command_line
mingwandroid Aug 21, 2015
e25ab86
strace --quiet: be *really* quiet
dscho May 17, 2017
8e18233
path_conv: special-case root directory to have trailing slash
Alexpux Apr 14, 2019
0c102ea
When converting to a Unix path, avoid double trailing slashes
dscho Nov 8, 2022
8ed6549
msys2_path_conv: pass PC_NOFULL to path_conv
lazka Nov 20, 2022
853cc54
path-conversion: Introduce ability to switch off conversion.
Jun 17, 2015
5d54a24
dcrt0.cc: Untangle allow_glob from winshell
mingwandroid Aug 21, 2015
d85da3a
dcrt0.cc (globify): Don't quote literal strings differently when dos_…
mingwandroid Aug 23, 2015
a3e7629
Add debugging for build_argv
mingwandroid Aug 21, 2015
ca226ec
environ.cc: New facility/environment variable MSYS2_ENV_CONV_EXCL
mingwandroid Apr 10, 2016
89f8cac
Fix native symbolic link spawn passing wrong arg0
SquallATF Sep 10, 2018
a46c753
Introduce the `enable_pcon` value for `MSYS`
dscho May 19, 2020
5f0df24
popen: call /usr/bin/sh instead of /bin/sh
lazka Jun 5, 2020
c1a9410
Disable the 'cygwin' GitHub workflow
dscho Mar 17, 2021
9354423
CI: add a GHA for doing a basic build test
lazka Aug 9, 2020
3edbe01
CI: fix the build with gcc 13
lazka Nov 10, 2023
d49861d
Set up a GitHub Action to keep in sync with Cygwin
dscho Nov 22, 2019
6d0c637
Expose full command-lines to other Win32 processes by default
dscho Aug 12, 2020
0e5a7de
Add a helper to obtain a function's address in kernel32.dll
dscho Apr 16, 2018
98632e1
Emulate GenerateConsoleCtrlEvent() upon Ctrl+C
dscho Mar 20, 2015
c890b0c
kill: kill Win32 processes more gently
dscho Mar 20, 2015
5ab3720
Cygwin: make option for native inner link handling.
jeremyd2019 Jul 22, 2021
1fcaaa3
docs: skip building texinfo and PDF files
dscho Nov 8, 2021
bbd5897
install-libs: depend on the "toollibs"
dscho Nov 8, 2021
7e40bdf
POSIX-ify the SHELL variable
dscho Nov 23, 2015
4c80b59
Handle ORIGINAL_PATH just like PATH
dscho Mar 21, 2017
0c124b9
uname: allow setting the system name to CYGWIN
lazka Jul 3, 2022
54d1ac9
Pass environment variables with empty values
dscho Feb 18, 2015
6fe00e2
Optionally disallow empty environment values again
dscho Sep 6, 2022
82d1e3b
build_env(): respect the `MSYS` environment variable
dscho Sep 6, 2022
855f33f
Revert "Cygwin: Enable dynamicbase on the Cygwin DLL by default"
lazka Dec 17, 2022
c8c911a
CI: set -Wno-error=maybe-uninitialized
lazka May 17, 2024
f840e12
Avoid sharing cygheaps across Cygwin versions
dscho Jan 30, 2023
905cab1
uname: report msys2-runtime commit hash, too
dscho Feb 21, 2023
856e949
Cygwin: find_fast_cwd: don't run assembler checking code on ARM64
github-cygwin Feb 13, 2024
c94b46b
cygthread: suspend thread before terminating.
jeremyd2019 Nov 12, 2024
62f6088
Cygwin: revert use of CancelSyncronousIo on wait_thread.
jeremyd2019 Nov 22, 2024
7f3ae80
Cygwin: cache IsWow64Process2 host arch in wincap.
jeremyd2019 Nov 27, 2024
7da06fd
Cygwin: uname: add host machine tag to sysname.
jeremyd2019 Nov 27, 2024
2c0e426
fixup! Instead of creating Cygwin symlinks, use deep copy by default
dscho Jan 27, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: build

on: [push, pull_request]

jobs:
build:
runs-on: windows-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: setup-msys2
uses: msys2/setup-msys2@v2
with:
msystem: MSYS
update: true
install: msys2-devel base-devel autotools cocom diffutils gcc gettext-devel libiconv-devel make mingw-w64-cross-crt mingw-w64-cross-gcc mingw-w64-cross-zlib perl zlib-devel xmlto docbook-xsl

- name: Build
shell: msys2 {0}
run: |
# XXX: cygwin still uses gcc v11 so we get new warnings with v13,
# resulting in errors due to -Werror. Disable them for now.
export CXXFLAGS="-Wno-error=stringop-truncation -Wno-error=array-bounds -Wno-error=overloaded-virtual -Wno-narrowing -Wno-use-after-free -Wno-error=maybe-uninitialized"
(cd winsup && ./autogen.sh)
./configure --disable-dependency-tracking --with-msys2-runtime-commit="$GITHUB_SHA"
make -j8

- name: Install
shell: msys2 {0}
run: |
make DESTDIR="$(pwd)"/_dest install

- name: Upload
uses: actions/upload-artifact@v4
with:
name: install
path: _dest/
8 changes: 1 addition & 7 deletions .github/workflows/cygwin.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,6 @@
name: cygwin

on:
push:
# since master is a symbolic reference to main, don't run for both
branches-ignore:
- 'master'
tags:
- '*'
on: workflow_dispatch

jobs:
fedora-build:
Expand Down
24 changes: 24 additions & 0 deletions .github/workflows/sync-with-cygwin.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: sync-with-cygwin

# File: .github/workflows/repo-sync.yml

on:
workflow_dispatch:
schedule:
- cron: "42 * * * *"
jobs:
repo-sync:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Fetch Cygwin's latest master and tags
run: |
git init --bare
# Potentially use git://sourceware.org/git/newlib-cygwin.git directly, but GitHub seems more reliable
git fetch https://github.com/cygwin/cygwin master:refs/heads/cygwin/master 'refs/tags/*:refs/tags/*'
- name: Push to our fork
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
git push https://$GITHUB_ACTOR:[email protected]/$GITHUB_REPOSITORY refs/heads/cygwin/master 'refs/tags/*:refs/tags/*'
4 changes: 2 additions & 2 deletions compile
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ func_file_conv ()
MINGW*)
file_conv=mingw
;;
CYGWIN*)
CYGWIN*|MSYS*)
file_conv=cygwin
;;
*)
Expand All @@ -67,7 +67,7 @@ func_file_conv ()
mingw/*)
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
;;
cygwin/*)
cygwin/*|msys/*)
file=`cygpath -m "$file" || echo "$file"`
;;
wine/*)
Expand Down
3 changes: 3 additions & 0 deletions config.guess
Original file line number Diff line number Diff line change
Expand Up @@ -914,6 +914,9 @@ EOF
amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
echo x86_64-pc-cygwin
exit ;;
amd64:MSYS*:*:* | x86_64:MSYS*:*:*)
echo x86_64-unknown-msys
exit ;;
prep*:SunOS:5.*:*)
echo powerpcle-unknown-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')"
exit ;;
Expand Down
8 changes: 4 additions & 4 deletions config.rpath
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ hardcode_direct=no
hardcode_minus_L=no

case "$host_os" in
cygwin* | mingw* | pw32*)
cygwin* | msys* | mingw* | pw32*)
# FIXME: the MSVC++ port hasn't been tested in a loooong time
# When not using gcc, we currently assume that we are using
# Microsoft Visual C++.
Expand Down Expand Up @@ -149,7 +149,7 @@ if test "$with_gnu_ld" = yes; then
ld_shlibs=no
fi
;;
cygwin* | mingw* | pw32*)
cygwin* | msys* | mingw* | pw32*)
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
hardcode_libdir_flag_spec='-L$libdir'
Expand Down Expand Up @@ -268,7 +268,7 @@ else
;;
bsdi4*)
;;
cygwin* | mingw* | pw32*)
cygwin* | msys* | mingw* | pw32*)
# When not using gcc, we currently assume that we are using
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
Expand Down Expand Up @@ -437,7 +437,7 @@ case "$host_os" in
;;
bsdi4*)
;;
cygwin* | mingw* | pw32*)
cygwin* | msys* | mingw* | pw32*)
shrext=.dll
;;
darwin* | rhapsody*)
Expand Down
3 changes: 2 additions & 1 deletion config/dfp.m4
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,8 @@ Valid choices are 'yes', 'bid', 'dpd', and 'no'.]) ;;
powerpc*-*-linux* | i?86*-*-linux* | x86_64*-*-linux* | s390*-*-linux* | \
i?86*-*-elfiamcu | i?86*-*-gnu* | \
i?86*-*-mingw* | x86_64*-*-mingw* | \
i?86*-*-cygwin* | x86_64*-*-cygwin*)
i?86*-*-cygwin* | x86_64*-*-cygwin* | \
i?86*-*-msys* | x86_64*-*-msys*)
enable_decimal_float=yes
;;
*)
Expand Down
2 changes: 1 addition & 1 deletion config/elf.m4
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ AC_REQUIRE([AC_CANONICAL_TARGET])

target_elf=no
case $target in
*-darwin* | *-aix* | *-cygwin* | *-mingw* | *-aout* | *-*coff* | \
*-darwin* | *-aix* | *-cygwin* | *-msys* | *-mingw* | *-aout* | *-*coff* | \
*-msdosdjgpp* | *-vms* | *-wince* | *-*-pe* | \
alpha*-dec-osf* | hppa[[12]]*-*-hpux* | \
nvptx-*-none)
Expand Down
2 changes: 1 addition & 1 deletion config/lthostflags.m4
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ AC_DEFUN([ACX_LT_HOST_FLAGS], [
AC_REQUIRE([AC_CANONICAL_SYSTEM])

case $host in
*-cygwin* | *-mingw*)
*-cygwin* | *-msys* | *-mingw*)
# 'host' will be top-level target in the case of a target lib,
# we must compare to with_cross_host to decide if this is a native
# or cross-compiler and select where to install dlls appropriately.
Expand Down
4 changes: 2 additions & 2 deletions config/mmap.m4
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ else
# Systems known to be in this category are Windows (all variants),
# VMS, and Darwin.
case "$host_os" in
*vms* | cygwin* | pe | mingw* | darwin* | ultrix* | hpux10* | hpux11.00)
*vms* | cygwin* | msys* | pe | mingw* | darwin* | ultrix* | hpux10* | hpux11.00)
gcc_cv_func_mmap_dev_zero=no ;;
*)
gcc_cv_func_mmap_dev_zero=yes;;
Expand Down Expand Up @@ -74,7 +74,7 @@ else
# above for use of /dev/zero.
# Systems known to be in this category are Windows, VMS, and SCO Unix.
case "$host_os" in
*vms* | cygwin* | pe | mingw* | sco* | udk* )
*vms* | cygwin* | msys* | pe | mingw* | sco* | udk* )
gcc_cv_func_mmap_anon=no ;;
*)
gcc_cv_func_mmap_anon=yes;;
Expand Down
2 changes: 2 additions & 0 deletions config/picflag.m4
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ case "${$2}" in
;;
i[[34567]]86-*-cygwin* | x86_64-*-cygwin*)
;;
i[[34567]]86-*-msys* | x86_64-*-msys*)
;;
i[[34567]]86-*-mingw* | x86_64-*-mingw*)
;;
i[[34567]]86-*-nto-qnx*)
Expand Down
4 changes: 2 additions & 2 deletions config/tcl.m4
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ AC_DEFUN([SC_PATH_TCLCONFIG], [

# First check to see if --with-tcl was specified.
case "${host}" in
*-*-cygwin*) platDir="win" ;;
*-*-cygwin* | *-*-msys*) platDir="win" ;;
*) platDir="unix" ;;
esac
if test x"${with_tclconfig}" != x ; then
Expand Down Expand Up @@ -165,7 +165,7 @@ AC_DEFUN([SC_PATH_TKCONFIG], [

# then check for a private Tk library
case "${host}" in
*-*-cygwin*) platDir="win" ;;
*-*-cygwin* | *-*-msys*) platDir="win" ;;
*) platDir="unix" ;;
esac
if test x"${ac_cv_c_tkconfig}" = x ; then
Expand Down
22 changes: 11 additions & 11 deletions configure
Original file line number Diff line number Diff line change
Expand Up @@ -3088,7 +3088,7 @@ fi
# Configure extra directories which are host specific

case "${host}" in
*-cygwin*)
*-cygwin* | *-msys*)
configdirs="$configdirs libtermcap" ;;
esac

Expand Down Expand Up @@ -3609,7 +3609,7 @@ esac
# Disable the go frontend on systems where it is known to not work. Please keep
# this in sync with contrib/config-list.mk.
case "${target}" in
*-*-darwin* | *-*-cygwin* | *-*-mingw* | *-*-aix*)
*-*-darwin* | *-*-cygwin* | *-*-msys* | *-*-mingw* | *-*-aix*)
unsupported_languages="$unsupported_languages go"
;;
esac
Expand All @@ -3622,7 +3622,7 @@ if test x$enable_libgo = x; then
# PR 46986
noconfigdirs="$noconfigdirs target-libgo"
;;
*-*-cygwin* | *-*-mingw*)
*-*-cygwin* | *-*-msys* | *-*-mingw*)
noconfigdirs="$noconfigdirs target-libgo"
;;
*-*-aix*)
Expand Down Expand Up @@ -3894,7 +3894,7 @@ case "${target}" in
i[3456789]86-*-mingw*)
target_configdirs="$target_configdirs target-winsup"
;;
*-*-cygwin*)
*-*-cygwin* | *-*-msys*)
target_configdirs="$target_configdirs target-libtermcap target-winsup"
noconfigdirs="$noconfigdirs target-libgloss"
# always build newlib if winsup directory is present.
Expand Down Expand Up @@ -4038,7 +4038,7 @@ case "${host}" in
i[3456789]86-*-msdosdjgpp*)
host_makefile_frag="config/mh-djgpp"
;;
*-cygwin*)
*-cygwin* | *-msys*)

{ $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if cat works as expected" >&5
$as_echo_n "checking to see if cat works as expected... " >&6; }
Expand Down Expand Up @@ -6206,7 +6206,7 @@ fi

target_elf=no
case $target in
*-darwin* | *-aix* | *-cygwin* | *-mingw* | *-aout* | *-*coff* | \
*-darwin* | *-aix* | *-cygwin* | *-msys* | *-mingw* | *-aout* | *-*coff* | \
*-msdosdjgpp* | *-vms* | *-wince* | *-*-pe* | \
alpha*-dec-osf* | hppa[12]*-*-hpux* | \
nvptx-*-none)
Expand All @@ -6224,7 +6224,7 @@ if test $target_elf = yes; then :
else
if test x"$default_enable_lto" = x"yes" ; then
case $target in
*-apple-darwin9* | *-cygwin* | *-mingw* | *djgpp*) ;;
*-apple-darwin9* | *-cygwin* | *-msys* | *-mingw* | *djgpp*) ;;
# On other non-ELF platforms, LTO has yet to be validated.
*) enable_lto=no ;;
esac
Expand All @@ -6235,7 +6235,7 @@ else
# warn during gcc/ subconfigure; unless you're bootstrapping with
# -flto it won't be needed until after installation anyway.
case $target in
*-cygwin* | *-mingw* | *-apple-darwin* | *djgpp*) ;;
*-cygwin* | *-msys* | *-mingw* | *-apple-darwin* | *djgpp*) ;;
*) if test x"$enable_lto" = x"yes"; then
as_fn_error $? "LTO support is not enabled for this target." "$LINENO" 5
fi
Expand All @@ -6245,7 +6245,7 @@ else
# Among non-ELF, only Windows platforms support the lto-plugin so far.
# Build it unless LTO was explicitly disabled.
case $target in
*-cygwin* | *-mingw*) build_lto_plugin=$enable_lto ;;
*-cygwin* | *-msys* | *-mingw*) build_lto_plugin=$enable_lto ;;
*) ;;
esac

Expand Down Expand Up @@ -7130,7 +7130,7 @@ rm -f conftest*
case "${host}" in
*-*-hpux*) RPATH_ENVVAR=SHLIB_PATH ;;
*-*-darwin*) RPATH_ENVVAR=DYLD_LIBRARY_PATH ;;
*-*-mingw* | *-*-cygwin ) RPATH_ENVVAR=PATH ;;
*-*-mingw* | *-*-cygwin | *-msys ) RPATH_ENVVAR=PATH ;;
*) RPATH_ENVVAR=LD_LIBRARY_PATH ;;
esac

Expand Down Expand Up @@ -7648,7 +7648,7 @@ case " $target_configdirs " in
case " $target_configargs " in
*" --with-newlib "*)
case "$target" in
*-cygwin*)
*-cygwin* | *-msys*)
FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/$(TARGET_SUBDIR)/winsup/cygwin -isystem $$s/winsup/cygwin/include'
;;
esac
Expand Down
Loading
Loading