Skip to content

Python 3.12 (WIP) #165

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 117 commits into from
Aug 5, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
117 commits
Select commit Hold shift + click to select a range
c8d3cb9
sysconfig: make _sysconfigdata.py relocatable
mingwandroid Jun 17, 2021
0f0a50f
build: add --with-nt-threads and make it default on mingw
Alexpux Jun 17, 2021
7fcd6ac
Define `MS_WINDOWS` (and others) when compiling with MINGW
Alexpux Jun 17, 2021
e63b822
configure: add `MACHDEP` and `platform` on MINGW
Alexpux Jun 17, 2021
62dbf33
Add default configuration for MINGW
Alexpux Jun 17, 2021
acac704
configure: enable largefile support by default for Mingw
Alexpux Jun 17, 2021
49bf87e
Add `PC/` to `CPPFLAGS` and to `SRCDIRS` on Mingw
Alexpux Jun 17, 2021
a7944c6
posixmodule.c: Define necessary headers for compiling on MINGW
Alexpux Jun 17, 2021
725f591
Build winreg by default when compiling for MINGW
Alexpux Jun 17, 2021
0a7751c
pyport.h: Add support for MINGW
Alexpux Jun 17, 2021
8244e4d
configure: add options so that shared build is possible on MINGW
Alexpux Jun 17, 2021
fcc9693
Add dynamic loading support for MINGW
Alexpux Jun 17, 2021
427ce8c
Ignore main program for frozen scripts on MINGW
Alexpux Jun 17, 2021
b77547c
Detect winsock2 and setup _socket module on MINGW
Alexpux Jun 17, 2021
9494d6c
Enable some windows specific modules
naveen521kk Feb 14, 2023
f13ded5
sysconfig: MINGW build extensions with GCC
lazka Sep 21, 2021
09b009b
sysconfig: treat MINGW builds as POSIX builds
Alexpux Jun 17, 2021
c1550ca
Add support for stdcall without underscore
Alexpux Jun 17, 2021
bef33ce
Customize site for MINGW
Alexpux Jun 17, 2021
bed1662
add python config sh
Alexpux Jun 17, 2021
6cf5e2f
mingw: prefer unix sep if MSYSTEM environment variable
mingwandroid Jun 17, 2021
4034dd0
msys cygwin semi native build sysconfig
Alexpux Jun 17, 2021
586e5cd
sysconfig: mingw sysconfig like posix
lazka Sep 21, 2021
d965811
mingw use backslashes in compileall py
Alexpux Jun 17, 2021
e591c47
mingw pdcurses_ISPAD
Alexpux Jun 17, 2021
94bb9eb
remove_path_max.default
Alexpux Jun 17, 2021
472609b
dont link with gettext
Alexpux Jun 17, 2021
9b67aa7
ctypes python dll
Alexpux Jun 17, 2021
97e0dfa
gdbm module includes
Alexpux Jun 17, 2021
ee3f5f6
use gnu_printf in format
Alexpux Jun 17, 2021
38f55f0
mingw fix ssl dont use enum_certificates
mingwandroid Jun 17, 2021
56a3997
fix using dllhandle and winver mingw
Alexpux Jun 17, 2021
fcb792f
Add AMD64 to sys config so msvccompiler get_build_version works
Alexpux Jun 17, 2021
3dd5309
MINGW link with additional library
Alexpux Jun 17, 2021
4f44558
install msilib
saghul Jun 17, 2021
0901f3f
fix signal module build
lazka Jun 17, 2021
be394e5
build: build winconsoleio and _testconsole
lazka Jun 17, 2021
b4cbb2e
expose sem_unlink
lazka Jun 17, 2021
71196d5
Use cygpty while using isatty
lazka Jun 17, 2021
4d64894
build: link win resource files and build pythonw
lazka Jun 17, 2021
d19ef43
fix isselectable
lazka Jun 17, 2021
fddf7f0
configure.ac: fix inet_pton check
lazka Jun 17, 2021
2c45059
pass gen profile ldflags
lazka Jun 17, 2021
e949154
pkg config windows must link ext with python lib
Alexpux Jun 17, 2021
b0ccdd0
importlib bootstrap path sep
lazka Jun 17, 2021
a9c607d
warnings fixes
Alexpux Jun 17, 2021
a49dbeb
fix build testinternalcapi
naveen521kk Jun 16, 2023
9c473d4
clang arm64
jeremyd2019 Jun 17, 2021
05e7a9d
configure.ac: set MINGW stack reserve
jeremyd2019 Jun 17, 2021
e11ac87
Don't use os.pathsep to find EOF
naveen521kk Jun 18, 2021
6c8b78c
Fix extension suffix for c-extensions on mingw
naveen521kk Jun 23, 2021
d2b0db2
Change the `get_platform()` method in sysconfig
naveen521kk Sep 21, 2021
e41476a
build: Fix ncursesw include lookup
Alexpux Jun 17, 2021
74fc1a1
tests: fix test_bytes
lazka Jul 23, 2021
feb122b
time: fix strftime not raising for invalid year values
lazka Jul 23, 2021
f3d0167
ctypes: find_library('c') should return None with ucrt
lazka Jul 23, 2021
5f9d4e5
build: Disable checks for dlopen/dlfcn
lazka Jul 25, 2021
c007826
Fix install location of the import library
lazka Jul 25, 2021
ad14ac7
build: Integrate venvlauncher build/installation into the Makefile
lazka Jul 25, 2021
72a41c5
configure.ac: set _WIN32_WINNT version
lazka Aug 1, 2021
d562a70
configure.ac: don't check for clock_ functions
lazka Aug 1, 2021
9416c53
expanduser: normpath paths coming from env vars
lazka Aug 8, 2021
10275ec
CI: test the build and add some mingw specific tests
naveen521kk Jun 18, 2021
1800b3f
Define PY3_DLLNAME to fix build
naveen521kk Oct 12, 2021
0874f4a
_testconsole.c: Fix casing & path sep
longnguyen2004 Nov 14, 2021
4a01e98
Return consistent architecture markers for python on mingw/armv7
mstorsjo Nov 19, 2021
2eceaaf
handle ncursesw pkg-config when cross-compiling
jeremyd2019 Nov 23, 2021
e1650eb
mingw_smoketests: fix _UCRT condition
jeremyd2019 Jan 22, 2022
298e5e0
Modify `sys.winver` to match upstream
naveen521kk Jan 19, 2022
2f75e6e
Change user site-packages path to include the environment info
naveen521kk Jan 19, 2022
52e4bef
configure: Include a header in the check for _beginthread
mstorsjo Apr 21, 2022
5023cfe
configure.ac: Default to --without-c-locale-coercion on Windows
lazka Apr 22, 2022
a084eac
Fix failing tests
naveen521kk Jun 5, 2022
882847e
Don't change os.sep with an empty MSYSTEM env var, not just a missing…
lazka Sep 22, 2022
d2edda2
def VPATH when compiling `Python/sysmodule.c`
naveen521kk Jun 18, 2023
a32f6f3
Make `_Py_CheckPython3` extern
naveen521kk Jun 18, 2023
5bcd096
link with bcrypt
naveen521kk Jun 18, 2023
4ff3181
correctly find native python
naveen521kk Jun 18, 2023
1ef883a
Add extra flags for `_bootstrap_python`
naveen521kk Jun 18, 2023
4890402
posixmodule: undefine `HAVE_OPENDIR`
naveen521kk Jun 20, 2023
1450dcd
getpath.py: add support for mingw
naveen521kk Jun 20, 2023
b2f6a8a
Don't build _posixsubprocess on Windows.
naveen521kk Jun 20, 2023
e6cee69
`_ssl`: link with `ws2_32`
naveen521kk Jun 20, 2023
bafdeb1
Always normalize path in abspath
naveen521kk Jun 20, 2023
7a7001c
Include `winsock.h` when checking for netdb function
naveen521kk Jun 21, 2023
b3d5200
include `_multiprocessing/semaphore.c` on win32
naveen521kk Jun 23, 2023
7967057
configure: build `mmap` module on win32
naveen521kk Jun 23, 2023
ef586c0
venv creation fixes
naveen521kk Jun 23, 2023
4f93f79
move the `shutdown` function where `winsock.h` is included
naveen521kk Jun 23, 2023
eb5694e
configure.ac: set BUILDEXEEXT and EXEEXT
lazka Jun 23, 2023
56dad7b
configure.ac: fix building some test modules
lazka Jun 23, 2023
e016e46
Don't convert `sysconfig.get_config_var('VPATH')` to an absolute path
naveen521kk Jun 25, 2023
7570cf9
Always convert `/` to `\\` before passing though pathcch functions
naveen521kk Jun 25, 2023
f8a4ccb
Build venvlauncher.exe from PC/launcher.c
naveen521kk Jun 25, 2023
5b935eb
getpath.py: fix `dirname`
naveen521kk Jun 25, 2023
9d1c6cf
getpath: use normpath on all generated paths
lazka Jul 28, 2023
2dd4adc
pathconfig: normpath sys.path[0]
lazka Jul 28, 2023
38873f0
smoketests: add some tests for sys/site paths
lazka Jul 28, 2023
d24842c
Search DLLs only on paths added using `add_dll_directory()`.
naveen521kk Aug 5, 2023
916d7a5
Build and install libpython3.dll
lazka Aug 21, 2023
b512334
Port GetPythonImport() to mingw
lazka Aug 27, 2023
4cc1d85
LoadLibraryExW: make sure to only use backslashes for paths
lazka Aug 27, 2023
4fcb42c
mingw_smoketests: add a test to check if sysconfig returns correct va…
naveen521kk Nov 8, 2023
5e23abe
Add missing library for multiprocessing module
naveen521kk Jan 1, 2024
33f59cc
selectmodule: add support for MINGW
naveen521kk Jan 1, 2024
4860edc
readline: disable on MINGW
naveen521kk Jan 1, 2024
6608efe
Add libraries to fix compile of ctypes on MINGW
naveen521kk Jan 1, 2024
ca4c135
Add `-lpython<version>` while linking stdlib
naveen521kk Jan 1, 2024
34e4e48
Enable `_uuid` on MINGW
naveen521kk Jan 1, 2024
c954ba6
Enable curses library on MINGW
naveen521kk Jan 1, 2024
93ab8ae
mingw_smoketests: disable distutils related tests
naveen521kk Feb 2, 2024
cd0b0f7
mingw_smoketests: skip test_c_ext_build for in-tree builds
naveen521kk Feb 19, 2024
69d924a
configure.ac: use autoconf 2.69
naveen521kk Feb 19, 2024
701b465
[3.12] gh-114440: Close writer pipe in multiprocessing.Queue, not con…
encukou Jan 24, 2024
95790f9
[3.12] gh-115133: Fix tests for XMLPullParser with Expat 2.6.0 (GH-11…
miss-islington Feb 11, 2024
0dad58a
CI: clean up ignored tests
naveen521kk Feb 20, 2024
1faafdb
gcc: make `incompatible-pointer-types` as warning
naveen521kk Jul 11, 2024
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
297 changes: 297 additions & 0 deletions .github/workflows/mingw.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,297 @@
name: Build
on: [push, pull_request, workflow_dispatch]

jobs:
build:
runs-on: windows-2022
strategy:
fail-fast: false
matrix:
msystem: ['MINGW64','MINGW32','UCRT64','CLANG64','CLANG32']
include:
- msystem: MINGW64
prefix: mingw-w64-x86_64
- msystem: MINGW32
prefix: mingw-w64-i686
- msystem: UCRT64
prefix: mingw-w64-ucrt-x86_64
- msystem: CLANG64
prefix: mingw-w64-clang-x86_64
- msystem: CLANG32
prefix: mingw-w64-clang-i686
steps:
- name: Setup git
run: |
git config --global core.autocrlf false
git config --global core.eol lf
- uses: actions/checkout@v3
- uses: msys2/setup-msys2@v2
with:
msystem: ${{ matrix.msystem }}
release: false
update: true
install: >-
make
binutils
autoconf
autoconf-archive
automake-wrapper
tar
gzip
${{ matrix.prefix }}-toolchain
${{ matrix.prefix }}-expat
${{ matrix.prefix }}-bzip2
${{ matrix.prefix }}-libffi
${{ matrix.prefix }}-mpdecimal
${{ matrix.prefix }}-ncurses
${{ matrix.prefix }}-openssl
${{ matrix.prefix }}-sqlite3
${{ matrix.prefix }}-tcl
${{ matrix.prefix }}-tk
${{ matrix.prefix }}-zlib
${{ matrix.prefix }}-xz
${{ matrix.prefix }}-tzdata

- name: Build Python
shell: msys2 {0}
run: |
set -ex

if [[ "${{ matrix.msystem }}" == "CLANG64" ]] || [[ "${{ matrix.msystem }}" == "CLANG32" ]]; then
export CC=clang
export CXX=clang++
fi
autoreconf -vfi

rm -Rf _build && mkdir _build && cd _build

../configure \
--prefix=${MINGW_PREFIX} \
--host=${MINGW_CHOST} \
--build=${MINGW_CHOST} \
--enable-shared \
--with-system-expat \
--with-system-libmpdec \
--without-ensurepip \
--enable-loadable-sqlite-extensions \
--with-tzpath=${MINGW_PREFIX}/share/zoneinfo \
--enable-optimizations

make -j8

- name: Run Smoke Test (build)
shell: msys2 {0}
run: |
SMOKETESTS="$(pwd)/mingw_smoketests.py"
cd _build
./python.exe "$SMOKETESTS"
MSYSTEM= ./python.exe "$SMOKETESTS"

- name: Run tests
shell: msys2 {0}
run: |
IGNOREFILE="$(pwd)/mingw_ignorefile.txt"
IGNOREFILE_EXTRA="$IGNOREFILE"
if [[ "${{ matrix.msystem }}" == "MINGW32" ]] || [[ "${{ matrix.msystem }}" == "MINGW64" ]]; then
IGNOREFILE_EXTRA="$(pwd)/mingw_ignorefile_msvcrt.txt"
fi
cd _build
MSYSTEM= ./python.exe -m test -j8 --ignorefile "$IGNOREFILE" --ignorefile "$IGNOREFILE_EXTRA" -W

- name: Run broken tests
continue-on-error: true
shell: msys2 {0}
run: |
IGNOREFILE="$(pwd)/mingw_ignorefile.txt"
IGNOREFILE_EXTRA="$IGNOREFILE"
if [[ "${{ matrix.msystem }}" == "MINGW32" ]] || [[ "${{ matrix.msystem }}" == "MINGW64" ]]; then
IGNOREFILE_EXTRA="$(pwd)/mingw_ignorefile_msvcrt.txt"
fi
cd _build
MSYSTEM= ./python.exe -m test -j8 --matchfile "$IGNOREFILE" --matchfile "$IGNOREFILE_EXTRA" -W

- name: Install
shell: msys2 {0}
run: |
set -ex
cd _build

pkgdir=python_pkgdir

make -j1 install DESTDIR="${pkgdir}"

# Fix shebangs
_pybasever=$(./python.exe -c "import sys; print(f'{sys.version_info[0]}.{sys.version_info[1]}');")
for fscripts in 2to3 2to3-${_pybasever} idle3 idle${_pybasever} pydoc3 pydoc${_pybasever}; do
sed -i "s|$(cygpath -w ${MINGW_PREFIX} | sed 's|\\|\\\\|g')/bin/python${_pybasever}.exe|/usr/bin/env python${_pybasever}.exe|g" "${pkgdir}${MINGW_PREFIX}"/bin/${fscripts}
done
sed -i "s|#!${MINGW_PREFIX}/bin/python${_pybasever}.exe|#!/usr/bin/env python${_pybasever}.exe|" "${pkgdir}${MINGW_PREFIX}"/lib/python${_pybasever}/config-${_pybasever}/python-config.py

# Create version-less aliases
cp "${pkgdir}${MINGW_PREFIX}"/bin/python3.exe "${pkgdir}${MINGW_PREFIX}"/bin/python.exe
cp "${pkgdir}${MINGW_PREFIX}"/bin/python3w.exe "${pkgdir}${MINGW_PREFIX}"/bin/pythonw.exe
cp "${pkgdir}${MINGW_PREFIX}"/bin/python3-config "${pkgdir}${MINGW_PREFIX}"/bin/python-config
cp "${pkgdir}${MINGW_PREFIX}"/bin/idle3 "${pkgdir}${MINGW_PREFIX}"/bin/idle
cp "${pkgdir}${MINGW_PREFIX}"/bin/pydoc3 "${pkgdir}${MINGW_PREFIX}"/bin/pydoc

# copy to /
cp -rf "${pkgdir}"/* /

- name: Run Smoke Test (installed)
shell: msys2 {0}
run: |
SMOKETESTS="$(pwd)/mingw_smoketests.py"
${MINGW_PREFIX}/bin/python.exe "$SMOKETESTS"
MSYSTEM= ${MINGW_PREFIX}/bin/python.exe "$SMOKETESTS"

- name: Compress
if: always()
shell: msys2 {0}
run: |
cd _build
tar -zcf python.tar.gz python_pkgdir/

- name: Upload
uses: actions/upload-artifact@v3
if: always()
with:
name: build-${{ matrix.msystem }}
path: _build/python.tar.gz

cross-gcc-x86_64:
runs-on: ubuntu-latest
container:
image: archlinux:base-devel
steps:
- uses: actions/checkout@v3
- name: Install deps
run: |
pacman --noconfirm -Suuy
pacman --needed --noconfirm -S mingw-w64-gcc autoconf-archive autoconf automake zip

- uses: actions/setup-python@v4
with:
python-version: '3.12'

- name: Check Python Version
run: |
which python
python --version

- name: Build
run: |
autoreconf -vfi

mkdir _build && cd _build

../configure \
--host=x86_64-w64-mingw32 \
--build=x86_64-pc-linux-gnu \
--enable-shared \
--with-system-expat \
--with-system-ffi \
--with-system-libmpdec \
--without-ensurepip \
--enable-loadable-sqlite-extensions \
--with-build-python=yes

make -j8

make install DESTDIR="$(pwd)/install"

- name: 'Zip files'
run: |
zip -r install.zip _build/install

- name: Upload
uses: actions/upload-artifact@v3
with:
name: build-cross-gcc-x86_64
path: install.zip

cross-gcc-x86_64-test:
needs: [cross-gcc-x86_64]
runs-on: windows-latest
steps:
- uses: actions/download-artifact@v3
with:
name: build-cross-gcc-x86_64

- name: 'Run tests'
run: |
7z x install.zip
./_build/install/usr/local/bin/python3.exe -c "import sysconfig, pprint; pprint.pprint(sysconfig.get_config_vars())"


cross-llvm-mingw:
runs-on: ubuntu-latest
container:
image: mstorsjo/llvm-mingw:latest
strategy:
fail-fast: false
matrix:
arch: ['x86_64', 'i686', 'aarch64', 'armv7']
steps:
- uses: actions/checkout@v3

- name: Install deps
run: |
export DEBIAN_FRONTEND=noninteractive
apt-get update -qq
apt-get install -qqy software-properties-common
add-apt-repository --yes ppa:deadsnakes/ppa
apt-get update -qq
apt-get install -qqy autoconf-archive python3.12-dev python3.12

- name: Build
run: |
autoreconf -vfi

mkdir _build && cd _build

export CC=${{ matrix.arch }}-w64-mingw32-clang
export CXX=${CC}++
../configure \
--host=${{ matrix.arch }}-w64-mingw32 \
--build=x86_64-pc-linux-gnu \
--enable-shared \
--with-system-expat \
--with-system-ffi \
--with-system-libmpdec \
--without-ensurepip \
--without-c-locale-coercion \
--enable-loadable-sqlite-extensions \
--with-build-python=yes

make -j8

make install DESTDIR="$(pwd)/install"

- name: 'Zip files'
run: |
zip -r install.zip _build/install

- name: Upload
uses: actions/upload-artifact@v3
with:
name: build-cross-llvm-mingw-${{ matrix.arch }}
path: install.zip

cross-llvm-mingw-test:
needs: [cross-llvm-mingw]
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
arch: ['x86_64', 'i686']
steps:
- uses: actions/download-artifact@v3
with:
name: build-cross-llvm-mingw-${{ matrix.arch }}

- name: 'Run tests'
run: |
7z x install.zip
./_build/install/usr/local/bin/python3.exe -c "import sysconfig, pprint; pprint.pprint(sysconfig.get_config_vars())"


4 changes: 2 additions & 2 deletions Include/bytesobject.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,9 +35,9 @@ PyAPI_FUNC(PyObject *) PyBytes_FromStringAndSize(const char *, Py_ssize_t);
PyAPI_FUNC(PyObject *) PyBytes_FromString(const char *);
PyAPI_FUNC(PyObject *) PyBytes_FromObject(PyObject *);
PyAPI_FUNC(PyObject *) PyBytes_FromFormatV(const char*, va_list)
Py_GCC_ATTRIBUTE((format(printf, 1, 0)));
Py_PRINTF(1, 0);
PyAPI_FUNC(PyObject *) PyBytes_FromFormat(const char*, ...)
Py_GCC_ATTRIBUTE((format(printf, 1, 2)));
Py_PRINTF(1, 2);
PyAPI_FUNC(Py_ssize_t) PyBytes_Size(PyObject *);
PyAPI_FUNC(char *) PyBytes_AsString(PyObject *);
PyAPI_FUNC(PyObject *) PyBytes_Repr(PyObject *, int);
Expand Down
2 changes: 1 addition & 1 deletion Include/fileobject.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_UTF8Mode;
#endif

/* A routine to check if a file descriptor can be select()-ed. */
#ifdef _MSC_VER
#ifdef MS_WINDOWS
/* On Windows, any socket fd can be select()-ed, no matter how high */
#define _PyIsSelectable_fd(FD) (1)
#else
Expand Down
10 changes: 10 additions & 0 deletions Include/internal/pycore_condvar.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@
# error "this header requires Py_BUILD_CORE define"
#endif

#ifdef __MINGW32__
# if !defined(HAVE_PTHREAD_H) || defined(NT_THREADS)
# undef _POSIX_THREADS
# endif
#endif

#ifndef _POSIX_THREADS
/* This means pthreads are not implemented in libc headers, hence the macro
not present in unistd.h. But they still can be implemented as an external
Expand Down Expand Up @@ -39,6 +45,10 @@
/* include windows if it hasn't been done before */
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
/* winpthreads are involved via windows header, so need undef _POSIX_THREADS after header include */
#if defined(_POSIX_THREADS)
#undef _POSIX_THREADS
#endif

/* options */
/* non-emulated condition variables are provided for those that want
Expand Down
41 changes: 41 additions & 0 deletions Include/iscygpty.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
/*
* iscygpty.h -- part of ptycheck
* https://github.com/k-takata/ptycheck
*
* Copyright (c) 2015-2017 K.Takata
*
* You can redistribute it and/or modify it under the terms of either
* the MIT license (as described below) or the Vim license.
*
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of this software and associated documentation files (the
* "Software"), to deal in the Software without restriction, including
* without limitation the rights to use, copy, modify, merge, publish,
* distribute, sublicense, and/or sell copies of the Software, and to
* permit persons to whom the Software is furnished to do so, subject to
* the following conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/

#ifndef _ISCYGPTY_H
#define _ISCYGPTY_H

#ifdef _WIN32
int is_cygpty(int fd);
int is_cygpty_used(void);
#else
#define is_cygpty(fd) 0
#define is_cygpty_used() 0
#endif

#endif /* _ISCYGPTY_H */
1 change: 0 additions & 1 deletion Include/osdefs.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ extern "C" {
#ifdef MS_WINDOWS
#define SEP L'\\'
#define ALTSEP L'/'
#define MAXPATHLEN 256
#define DELIM L';'
#endif

Expand Down
Loading
Loading