On Thu, Jun 4, 2026 at 10:20 PM Mark Michelson via dev <
[email protected]> wrote:

> On Thu, Jun 4, 2026 at 4:13 PM Mark Michelson <[email protected]> wrote:
> >
> > Thanks for the this Ilya. I applied this patch and did a cursory
> > search. I couldn't find any remaining "shards" (lol) of Windows
> > support in the code.
>
> Just to clarify, I mean I applied the patch locally to check it. I did
> not apply this patch yet to the github origin remote.
>
> >
> > Acked-by: Mark Michelson <[email protected]>
> >
> > On Thu, Jun 4, 2026 at 11:56 AM Ilya Maximets <[email protected]>
> wrote:
> > >
> > > Windows build was broken since the split from OVS.  OVS also recently
> > > fully dropped support for building and running on Windows.  Let's
> > > remove the bits of the Windows build system to avoid any confusion.
> > >
> > > Some notes:
> > >  * debian/copyright.in is very outdated.  Only removing bits directly
> > >    related to the Windows build.
> > >  * Comment in ovn-controller-vtep.at is removed without touching any
> > >    code because it's just an outdated comment that should've been
> > >    removed while moving to Python 3.
> > >  * m4/absolute-header.m4 still has one Windows reference, but it is
> > >    coming from the original sources and it should remain.
> > >  * HOST_NAME_MAX is needed for BSD/OSX, not only for Windows.
> > >
> > > Signed-off-by: Ilya Maximets <[email protected]>
> > > ---
> > >  Documentation/automake.mk                 |   1 -
> > >  Documentation/index.rst                   |   3 +-
> > >  Documentation/intro/install/index.rst     |   1 -
> > >  Documentation/intro/install/windows.rst   |  31 ---
> > >  Makefile.am                               |  50 +----
> > >  NEWS                                      |   2 +
> > >  README.rst                                |   2 -
> > >  build-aux/automake.mk                     |   1 -
> > >  build-aux/cccl                            | 221 ----------------------
> > >  configure.ac                              |   3 -
> > >  controller-vtep/ovn-controller-vtep.8.xml |   7 +-
> > >  controller/chassis.c                      |   1 -
> > >  debian/copyright.in                       |  18 --
> > >  lib/ovn-util.c                            |  19 --
> > >  m4/ax_check_openssl.m4                    |   9 +-
> > >  m4/ovn.m4                                 | 133 -------------
> > >  northd/lflow-mgr.c                        |  12 --
> > >  tests/atlocal.in                          |  15 --
> > >  tests/automake.mk                         |  13 +-
> > >  tests/ovn-controller-vtep.at              |   1 -
> > >  tests/ovs-macros.at                       |  37 ----
> > >  tests/test-ovn.c                          |  12 +-
> > >  tests/testsuite.patch                     |  76 --------
> > >  utilities/checkpatch.py                   |   5 +-
> > >  utilities/ovn-appctl.8.xml                |   7 -
> > >  utilities/ovn-appctl.c                    |   7 -
> > >  26 files changed, 15 insertions(+), 672 deletions(-)
> > >  delete mode 100644 Documentation/intro/install/windows.rst
> > >  delete mode 100644 build-aux/cccl
> > >  delete mode 100644 tests/testsuite.patch
> > >
> > > diff --git a/Documentation/automake.mk b/Documentation/automake.mk
> > > index aa286ebd9..aa6a81224 100644
> > > --- a/Documentation/automake.mk
> > > +++ b/Documentation/automake.mk
> > > @@ -11,7 +11,6 @@ DOC_SOURCE = \
> > >         Documentation/intro/install/fedora.rst \
> > >         Documentation/intro/install/general.rst \
> > >         Documentation/intro/install/ovn-upgrades.rst \
> > > -       Documentation/intro/install/windows.rst \
> > >         Documentation/tutorials/index.rst \
> > >         Documentation/tutorials/ovn-openstack.rst \
> > >         Documentation/tutorials/ovn-sandbox.rst \
> > > diff --git a/Documentation/index.rst b/Documentation/index.rst
> > > index 36fabb2cc..0b7cbc8f2 100644
> > > --- a/Documentation/index.rst
> > > +++ b/Documentation/index.rst
> > > @@ -49,8 +49,7 @@ First Steps
> > >
> > >  Getting started with Open Virtual Network (OVN) for Open vSwitch?
> Start here.
> > >
> > > -- **Install:** :doc:`intro/install/general` |
> > > -  :doc:`intro/install/windows`
> > > +- **Install:** :doc:`intro/install/general`
> > >
> > >  - **Tutorials:** :doc:`tutorials/ovn-sandbox` |
> > >    :doc:`tutorials/ovn-openstack` |
> > > diff --git a/Documentation/intro/install/index.rst
> b/Documentation/intro/install/index.rst
> > > index 2093cbbfa..1db6254b9 100644
> > > --- a/Documentation/intro/install/index.rst
> > > +++ b/Documentation/intro/install/index.rst
> > > @@ -40,7 +40,6 @@ Installation from Source
> > >     :maxdepth: 2
> > >
> > >     general
> > > -   windows
> > >
> > >  Installation from Packages
> > >  --------------------------
> > > diff --git a/Documentation/intro/install/windows.rst
> b/Documentation/intro/install/windows.rst
> > > deleted file mode 100644
> > > index e5e08e69d..000000000
> > > --- a/Documentation/intro/install/windows.rst
> > > +++ /dev/null
> > > @@ -1,31 +0,0 @@
> > > -..
> > > -      Licensed under the Apache License, Version 2.0 (the "License");
> you may
> > > -      not use this file except in compliance with the License. You
> may obtain
> > > -      a copy of the License at
> > > -
> > > -          http://www.apache.org/licenses/LICENSE-2.0
> > > -
> > > -      Unless required by applicable law or agreed to in writing,
> software
> > > -      distributed under the License is distributed on an "AS IS"
> BASIS, WITHOUT
> > > -      WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied. See the
> > > -      License for the specific language governing permissions and
> limitations
> > > -      under the License.
> > > -
> > > -      Convention for heading levels in OVN documentation:
> > > -
> > > -      =======  Heading 0 (reserved for the title in a document)
> > > -      -------  Heading 1
> > > -      ~~~~~~~  Heading 2
> > > -      +++++++  Heading 3
> > > -      '''''''  Heading 4
> > > -
> > > -      Avoid deeper levels because they do not render well.
> > > -
> > > -=======================
> > > -OVN on Windows
> > > -=======================
> > > -
> > > -OVN on Windows is not currently tested or built.  While the build
> > > -system contains some Windows-related scaffolding inherited from
> > > -Open vSwitch, there are no maintained build instructions or CI
> > > -coverage for this platform.
> > > diff --git a/Makefile.am b/Makefile.am
> > > index 4d62da3c2..212aeb314 100644
> > > --- a/Makefile.am
> > > +++ b/Makefile.am
> > > @@ -21,14 +21,6 @@ AM_LDFLAGS += $(OVS_LDFLAGS)
> > >
> > >  AM_CPPFLAGS += -I $(top_srcdir)/include
> > >
> > > -if WIN32
> > > -AM_CPPFLAGS += $(PTHREAD_INCLUDES)
> > > -AM_CPPFLAGS += $(MSVC_CFLAGS)
> > > -AM_LDFLAGS += $(PTHREAD_LDFLAGS)
> > > -AM_LDFLAGS += $(MSVC64_LDFLAGS)
> > > -PLATFORM = $(MSVC_PLATFORM)
> > > -endif
> > > -
> > >  AM_CPPFLAGS += -I $(top_srcdir)/include
>

nit: Same thing twice right next to each other.

> >  AM_CPPFLAGS += -I $(top_srcdir)/ovn
> > >  AM_CPPFLAGS += -I $(top_builddir)/include
> > > @@ -57,18 +49,13 @@ endif
> > >
> > >  AM_CTAGSFLAGS = $(OVS_CTAGS_IDENTIFIERS_LIST)
> > >
> > > -if WIN32
> > > -psep=";"
> > > -else
> > > -psep=":"
> > > -endif
> > >  # PYTHONDONTWRITEBYTECODE=yes keeps Python from creating .pyc and .pyo
> > >  # files.  Creating .py[co] works OK for any given version of Open
> > >  # vSwitch, but it causes trouble if you switch from a version with
> > >  # foo/__init__.py into an (older) version with plain foo.py, since
> > >  # foo/__init__.pyc will cause Python to ignore foo.py.
> > >  run_python = \
> > > -       PYTHONPATH=$(OVS_SRCDIR)/python$(psep)$$PYTHONPATH \
> > > +       PYTHONPATH=$(OVS_SRCDIR)/python:$$PYTHONPATH \
> > >         PYTHONDONTWRITEBYTECODE=yes $(PYTHON3)
> > >
> > >  ALL_LOCAL =
> > > @@ -176,7 +163,7 @@ submodules = $(shell grep 'path ='
> $(srcdir)/.gitmodules | sed -E 's/[\t ]*path
> > >
> > >  SUFFIXES += .in
> > >  .in:
> > > -
>  
> $(AM_V_GEN)PYTHONPATH=$(OVS_SRCDIR)/python$(psep)$$PYTHONPATH$(psep)$(srcdir)/python
> $(PYTHON3) $(srcdir)/build-aux/soexpand.py -I$(srcdir) -I$(OVS_SRCDIR) < $<
> | \
> > > +
>  $(AM_V_GEN)PYTHONPATH=$(OVS_SRCDIR)/python:$$PYTHONPATH:$(srcdir)/python
> $(PYTHON3) $(srcdir)/build-aux/soexpand.py -I$(srcdir) -I$(OVS_SRCDIR) < $<
> | \
> > >           $(PYTHON3) $(srcdir)/build-aux/dpdkstrip.py
> $(DPDKSTRIP_FLAGS) | \
> > >           sed \
> > >             -e 's,[@]PKIDIR[@],$(PKIDIR),g' \
> > > @@ -275,7 +262,7 @@ config-h-check:
> > >         fi
> > >  .PHONY: config-h-check
> > >
> > > -# Check for printf() type modifiers that MSVC doesn't support.
> > > +# Check for non-portable printf() type modifiers.
> > >  ALL_LOCAL += printf-check
> > >  printf-check:
> > >         @cd $(srcdir); \
> > > @@ -444,7 +431,7 @@ CLEANFILES += flake8-check
> > >
> > >  include $(srcdir)/manpages.mk
> > >  $(srcdir)/manpages.mk: $(MAN_ROOTS) build-aux/sodepends.py
> $(OVS_SRCDIR)/python/ovs_build_helpers/soutil.py
> > > -
>  @PYTHONPATH=$(OVS_SRCDIR)/python$(psep)$$PYTHONPATH$(psep)$(srcdir)/python
> $(PYTHON3) $(srcdir)/build-aux/sodepends.py -I. -Isrcdir,$(srcdir)
> -IOVS_MANDIR,$(OVS_MANDIR) $(MAN_ROOTS) >$(@F).tmp
> > > +       @PYTHONPATH=$(OVS_SRCDIR)/python:$$PYTHONPATH:$(srcdir)/python
> $(PYTHON3) $(srcdir)/build-aux/sodepends.py -I. -Isrcdir,$(srcdir)
> -IOVS_MANDIR,$(OVS_MANDIR) $(MAN_ROOTS) >$(@F).tmp
> > >         @if cmp -s $(@F).tmp $@; then \
> > >           touch $@; \
> > >           rm -f $(@F).tmp; \
> > > @@ -453,35 +440,6 @@ $(srcdir)/manpages.mk: $(MAN_ROOTS)
> build-aux/sodepends.py $(OVS_SRCDIR)/python/
> > >         fi
> > >  CLEANFILES += manpage-dep-check
> > >
> > > -if VSTUDIO_DDK
> > > -ALL_LOCAL += ovsext
> > > -ARCH = x64
> > > -ovsext: datapath-windows/ovsext.sln
> $(srcdir)/datapath-windows/include/OvsDpInterface.h
> > > -if VSTUDIO_WIN8
> > > -       MSBuild.exe //nologo //maxcpucount datapath-windows/ovsext.sln
> /target:Build /property:Configuration="Win8$(VSTUDIO_CONFIG)"
> /property:Version="$(PACKAGE_VERSION)" //p:Platform=$(ARCH)
> > > -endif
> > > -if VSTUDIO_WIN8_1
> > > -       MSBuild.exe //nologo //maxcpucount datapath-windows/ovsext.sln
> /target:Build /property:Configuration="Win8.1$(VSTUDIO_CONFIG)"
> /property:Version="$(PACKAGE_VERSION)" //p:Platform=$(ARCH)
> > > -endif
> > > -if VSTUDIO_WIN10
> > > -       MSBuild.exe //nologo //maxcpucount datapath-windows/ovsext.sln
> /target:Build /property:Configuration="Win10$(VSTUDIO_CONFIG)"
> /property:Version="$(PACKAGE_VERSION)" //p:Platform=$(ARCH)
> > > -endif
> > > -
> > > -
> > > -CLEAN_LOCAL += ovsext_clean
> > > -ovsext_clean: datapath-windows/ovsext.sln
> > > -if VSTUDIO_WIN8
> > > -       MSBuild.exe //nologo //maxcpucount datapath-windows/ovsext.sln
> /target:Clean /property:Configuration="Win8$(VSTUDIO_CONFIG)"
> /property:Version="$(PACKAGE_VERSION)" //p:Platform=$(ARCH)
> > > -endif
> > > -if VSTUDIO_WIN8_1
> > > -       MSBuild.exe //nologo //maxcpucount datapath-windows/ovsext.sln
> /target:Clean /property:Configuration="Win8.1$(VSTUDIO_CONFIG)"
> /property:Version="$(PACKAGE_VERSION)" //p:Platform=$(ARCH)
> > > -endif
> > > -if VSTUDIO_WIN10
> > > -       MSBuild.exe //nologo //maxcpucount datapath-windows/ovsext.sln
> /target:Clean /property:Configuration="Win10$(VSTUDIO_CONFIG)"
> /property:Version="$(PACKAGE_VERSION)" //p:Platform=$(ARCH)
> > > -endif
> > > -endif
> > > -.PHONY: ovsext
> > > -
> > >  clang-analyze: clean
> > >         @which clang scan-build >/dev/null 2>&1 || \
> > >           (echo "Unable to find clang/scan-build, Install
> clang,clang-analyzer packages"; exit 1)
> > > diff --git a/NEWS b/NEWS
> > > index c7cec2c33..8328b7bc8 100644
> > > --- a/NEWS
> > > +++ b/NEWS
> > > @@ -18,6 +18,8 @@ Post v26.03.0
> > >       static routes as higher-priority than connected routes, which in
> turn led
> > >       to changes in administrative distance for specific route types.
> Please see
> > >       the "Route Administrative Distance" section of the ovn-northd
> manpage.
> > > +   - Windows support was broken since the split from OVS repository.
> > > +     Remaining bits of the build system and the documentation are now
> removed.
> > >
> > >  OVN v26.03.0 - xxx xx xxxx
> > >  --------------------------
> > > diff --git a/README.rst b/README.rst
> > > index 0dac01986..9b09e22ff 100644
> > > --- a/README.rst
> > > +++ b/README.rst
> > > @@ -91,8 +91,6 @@ As mentioned, OVN is licensed under the open source
> Apache 2 license. Some
> > >  files may be marked specifically with a different license, in which
> case that
> > >  license applies to the file in question.
> > >
> > > -File build-aux/cccl is licensed under the GNU General Public License,
> version 2.
> > > -
> > >  Contact
> > >  -------
> > >
> > > diff --git a/build-aux/automake.mk b/build-aux/automake.mk
> > > index 046d7d84f..cd9c9dfea 100644
> > > --- a/build-aux/automake.mk
> > > +++ b/build-aux/automake.mk
> > > @@ -1,7 +1,6 @@
> > >  EXTRA_DIST += \
> > >         build-aux/calculate-pipeline-cksum \
> > >         build-aux/calculate-schema-cksum \
> > > -       build-aux/cccl \
> > >         build-aux/cksum-pipeline-check \
> > >         build-aux/cksum-schema-check \
> > >         build-aux/dist-docs \
> > > diff --git a/build-aux/cccl b/build-aux/cccl
> > > deleted file mode 100644
> > > index e2426fb3e..000000000
> > > --- a/build-aux/cccl
> > > +++ /dev/null
> > > @@ -1,221 +0,0 @@
> > > -#!/bin/sh
> > > -
> > > -# cccl
> > > -# Wrapper around MS's cl.exe and link.exe to make them act more like
> > > -# Unix cc and ld
> > > -#
> > > -# Copyright (C) 2000-2003 Geoffrey Wossum ([email protected])
> > > -#
> > > -# This program is free software; you can redistribute it and/or modify
> > > -# it under the terms of the GNU General Public License as published by
> > > -# the Free Software Foundation; either version 2 of the License, or
> > > -# (at your option) any later version.
> > > -#
> > > -# This program is distributed in the hope that it will be useful, but
> > > -# WITHOUT ANY WARRANTY; without even the implied warranty of
> > > -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.    See the GNU
> > > -# General Public License for more details.
> > > -#
> > > -# You should have received a copy of the GNU General Public License
> > > -# along with this program; if not, write to the Free Software
> > > -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
> 02111-1307, USA.
> > > -#
> > > -
> > > -usage()
> > > -{
> > > -    cat <<EOF
> > > -Usage: cccl [OPTIONS]
> > > -
> > > -cccl is a wrapper around Microsoft's cl.exe and link.exe.  It
> translates
> > > -parameters that Unix cc's and ld's understand to parameters that cl
> and link
> > > -understand.
> > > -EOF
> > > -    exit $1
> > > -}
> > > -
> > > -case $MACHTYPE in
> > > -    *-msys)
> > > -        slash="-"
> > > -        ;;
> > > -    *)
> > > -        slash="/"
> > > -        ;;
> > > -esac
> > > -# prog specifies the program that should be run (cl.exe or link.exe)
> > > -# We'll assume cl to start out
> > > -prog=cl
> > > -# opts specifies the command line to pass to the MSVC program
> > > -clopt="${slash}nologo ${slash}FS"
> > > -linkopt="${slash}nologo"
> > > -# gotparam is 0 if we didn't ever see a param, in which case we show
> usage()
> > > -gotparam=
> > > -
> > > -# We want exceptions
> > > -clopt="$clopt ${slash}EHsc"
> > > -
> > > -### Run through every option and convert it to the proper MS one
> > > -while test $# -gt 0; do
> > > -    case "$1" in
> > > -    -D*) optarg= ;;
> > > -    -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
> > > -    *) optarg= ;;
> > > -    esac
> > > -    gotparam=1
> > > -
> > > -    case "$1" in
> > > -    --version)
> > > -        cat <<EOF
> > > -cccl 0.03
> > > -
> > > -Copyright 2000-2003 Geoffrey Wossum
> > > -This is free software; see the source for copying conditions.  There
> is NO
> > > -waranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
> PURPOSE.
> > > -EOF
> > > -        exit 1;
> > > -        ;;
> > > -
> > > -    -ansi)
> > > -        clopt="$clopt ${slash}Za"
> > > -        ;;
> > > -
> > > -    -c)
> > > -        # -c (compile only) is actually the same, but for clarity...
> > > -        clopt="$clopt ${slash}c"
> > > -        ;;
> > > -
> > > -    -g[0-9] | -g)
> > > -        # cl only supports one debugging level
> > > -        clopt="$clopt ${slash}Zi"
> > > -        linkopt="$linkopt ${slash}DEBUG"
> > > -        ;;
> > > -
> > > -    -O0)
> > > -        clopt="$clopt ${slash}Od ${slash}D_DEBUG ${slash}MTd"
> > > -        ;;
> > > -
> > > -    -O2)
> > > -        clopt="$clopt ${slash}O2 ${slash}MT"
> > > -        ;;
> > > -
> > > -    -L*)
> > > -        path=`echo "$1" | sed 's/-L//'`
> > > -        linkopt="$linkopt ${slash}LIBPATH:$path"
> > > -        cl_linkopt="${slash}link ${slash}LIBPATH:\"$path\""
> > > -        ;;
> > > -
> > > -    -l*)
> > > -        lib=`echo "$1" | sed 's/-l//'`
> > > -        lib="$lib.lib"
> > > -
> > > -        clopt="$clopt $lib"
> > > -        linkopt="$linkopt $lib"
> > > -        ;;
> > > -
> > > -    -m386)
> > > -        clopt="$clopt ${slash}G3"
> > > -        ;;
> > > -
> > > -    -m486)
> > > -        clopt="$clopt ${slash}G4"
> > > -        ;;
> > > -
> > > -    -mpentium)
> > > -        clopt="$clopt ${slash}G5"
> > > -        ;;
> > > -
> > > -    -mpentiumpro)
> > > -        clopt="$clopt ${slash}G6"
> > > -        ;;
> > > -
> > > -    -o)
> > > -        # specifying output file, is it an object or an executable
> > > -        shift
> > > -        case "$1" in
> > > -        *.o | *.obj)
> > > -            clopt="$clopt ${slash}Fo$1"
> > > -        ;;
> > > -        *)
> > > -            clopt="$clopt ${slash}Fe$1";
> > > -            linkopt="$linkopt ${slash}out:$1"
> > > -        ;;
> > > -        esac;;
> > > -
> > > -    -pedantic)
> > > -        #ignore pedantic
> > > -        ;;
> > > -
> > > -    -Wall)
> > > -        # not all warnings are implemented
> > > -        # the following is equivalent to
> > > -        # Wimplicit-function-declaration but we will issue a compiler
> > > -        # error
> > > -        clopt="$clopt ${slash}we4013"
> > > -        ;;
> > > -
> > > -    -W*)
> > > -        #ignore warnings
> > > -        ;;
> > > -
> > > -    -Q*)
> > > -        #ignore link warnings
> > > -        ;;
> > > -
> > > -    -fno-strict-aliasing*)
> > > -        #ignore aliasing
> > > -        ;;
> > > -
> > > -    -isystem)
> > > -        shift
> > > -        clopt="$clopt -I$1"
> > > -        ;;
> > > -
> > > -    -MT)
> > > -        exit 0
> > > -        ;;
> > > -
> > > -    -mno-cygwin)
> > > -        ;;
> > > -
> > > -    *.cc | *.cxx | *.C)
> > > -        # C++ source file with non .cpp extension, make sure cl
> understand
> > > -        # that it is C++
> > > -        clopt="$clopt ${slash}Tp$1"
> > > -        ;;
> > > -
> > > -    *.o | *.obj | *.a | *.lib)
> > > -        # Object files/libraries seen, this command will require link
> > > -        # Switch the prog to link
> > > -        linkopt="$linkopt $1"
> > > -        prog="link"
> > > -        ;;
> > > -
> > > -    *)
> > > -        clopt="$clopt $1"
> > > -        linkopt="$linkopt $1"
> > > -        if test x$optarg != x ; then
> > > -            clopt="$clopt=$optarg"
> > > -            linkopt="$linkopt=$optarg"
> > > -        fi
> > > -        ;;
> > > -
> > > -    esac
> > > -    shift
> > > -done
> > > -
> > > -if test x$gotparam = x ; then
> > > -    usage
> > > -    exit 1
> > > -fi
> > > -
> > > -# choose which opts we built up based on which program will actually
> run
> > > -if test x$prog = xcl ; then
> > > -    opts="$clopt $cl_linkopt"
> > > -else
> > > -    opts=$linkopt
> > > -fi
> > > -
> > > -if test x$V = x1 ; then
> > > -    echo "$prog $opts"
> > > -fi
> > > -exec $prog $opts
> > > -exit 0
> > > diff --git a/configure.ac b/configure.ac
> > > index 025dccc63..cfa4cc386 100644
> > > --- a/configure.ac
> > > +++ b/configure.ac
> > > @@ -82,9 +82,6 @@ AC_SEARCH_LIBS([pthread_rwlock_tryrdlock], [pthread])
> > >  AC_SEARCH_LIBS([pthread_rwlockattr_destroy], [pthread])
> > >  AC_FUNC_STRERROR_R
> > >
> > > -OVS_CHECK_WIN64
> > > -OVS_CHECK_WIN32
> > > -OVS_CHECK_VISUAL_STUDIO_DDK
> > >  OVN_CHECK_COVERAGE
> > >  OVS_CHECK_NDEBUG
> > >  OVS_CHECK_NETLINK
> > > diff --git a/controller-vtep/ovn-controller-vtep.8.xml
> b/controller-vtep/ovn-controller-vtep.8.xml
> > > index 9d470cd63..ea3ac155e 100644
> > > --- a/controller-vtep/ovn-controller-vtep.8.xml
> > > +++ b/controller-vtep/ovn-controller-vtep.8.xml
> > > @@ -74,12 +74,7 @@
> > >            <code>unix:<var>file</var></code>
> > >          </p>
> > >          <p>
> > > -          On POSIX, connect to the Unix domain server socket named
> > > -          <var>file</var>.
> > > -        </p>
> > > -        <p>
> > > -          On Windows, connect to a localhost TCP port whose value is
> written
> > > -          in <var>file</var>.
> > > +          Connect to the Unix domain server socket named
> <var>file</var>.
> > >          </p>
> > >        </li>
> > >      </ul>
> > > diff --git a/controller/chassis.c b/controller/chassis.c
> > > index 4afb6da93..ea64c9f81 100644
> > > --- a/controller/chassis.c
> > > +++ b/controller/chassis.c
> > > @@ -33,7 +33,6 @@
> > >  VLOG_DEFINE_THIS_MODULE(chassis);
> > >
> > >  #ifndef HOST_NAME_MAX
> > > -/* For windows. */
> > >  #define HOST_NAME_MAX 255
> > >  #endif /* HOST_NAME_MAX */
> > >
> > > diff --git a/debian/copyright.in b/debian/copyright.in
> > > index 335fd6af8..bc5cb37a1 100644
> > > --- a/debian/copyright.in
> > > +++ b/debian/copyright.in
> > > @@ -49,24 +49,6 @@ License:
> > >    On Debian systems, the complete text of the GNU General Public
> License
> > >    version 2 can be found in `/usr/share/common-licenses/GPL-2'
> > >
> > > -* The following file is licensed under the GNU General Public License
> > > -  version 2.
> > > -
> > > -        build-aux/cccl
> > > -
> > > -* The following files are licensed under the 2-clause BSD license.
> > > -
> > > -        lib/getopt_long.c
> > > -        include/windows/getopt.h
> > > -        datapath-windows/ovsext/Conntrack-tcp.c
> > > -        lib/conntrack-tcp.c
> > > -
> > > -* The following files are licensed under the 3-clause BSD-license
> > > -
> > > -        include/windows/netinet/icmp6.h
> > > -        include/windows/netinet/ip6.h
> > > -        lib/strsep.c
> > > -
> > >  * The following components are dual-licensed under the
> > >    GNU General Public License version 2 and the Apache License Version
> 2.0.
> > >
> > > diff --git a/lib/ovn-util.c b/lib/ovn-util.c
> > > index fb02825ac..e6143d7a9 100644
> > > --- a/lib/ovn-util.c
> > > +++ b/lib/ovn-util.c
> > > @@ -670,16 +670,9 @@ default_br_db(void)
> > >  char *
> > >  get_abs_unix_ctl_path(const char *path)
> > >  {
> > > -#ifdef _WIN32
> > > -    enum { WINDOWS = 1 };
> > > -#else
> > > -    enum { WINDOWS = 0 };
> > > -#endif
> > > -
> > >      long int pid = getpid();
> > >      char *abs_path
> > >          = (path ? abs_file_name(ovn_rundir(), path)
> > > -           : WINDOWS ? xasprintf("%s/%s.ctl", ovn_rundir(),
> program_name)
> > >             : xasprintf("%s/%s.%ld.ctl", ovn_rundir(), program_name,
> pid));
> > >      return abs_path;
> > >  }
> > > @@ -689,20 +682,8 @@ ovn_set_pidfile(const char *name)
> > >  {
> > >      char *pidfile_name = NULL;
> > >
> > > -#ifndef _WIN32
> > >      pidfile_name = name ? abs_file_name(ovn_rundir(), name)
> > >                          : xasprintf("%s/%s.pid", ovn_rundir(),
> program_name);
> > > -#else
> > > -    if (name) {
> > > -        if (strchr(name, ':')) {
> > > -            pidfile_name = xstrdup(name);
> > > -        } else {
> > > -            pidfile_name = xasprintf("%s/%s", ovn_rundir(), name);
> > > -        }
> > > -    } else {
> > > -        pidfile_name = xasprintf("%s/%s.pid", ovn_rundir(),
> program_name);
> > > -    }
> > > -#endif
> > >
> > >      /* Call openvswitch lib function. */
> > >      set_pidfile(pidfile_name);
> > > diff --git a/m4/ax_check_openssl.m4 b/m4/ax_check_openssl.m4
> > > index 281d4dc65..9fbdf9eb1 100644
> > > --- a/m4/ax_check_openssl.m4
> > > +++ b/m4/ax_check_openssl.m4
> > > @@ -80,13 +80,8 @@ AC_DEFUN([AX_CHECK_OPENSSL], [
> > >              if test -f "$ssldir/include/openssl/ssl.h"; then
> > >                  SSL_INCLUDES="-I$ssldir/include"
> > >                  SSL_LDFLAGS="-L$ssldir/lib"
> > > -                if test "$WIN32" = "yes"; then
> > > -                    SSL_LIBS="-lssleay32 -llibeay32"
> > > -                    SSL_DIR=/$(echo ${ssldir} | ${SED} -e 's/://')
> > > -                else
> > > -                    SSL_LIBS="-lssl -lcrypto"
> > > -                    SSL_DIR="$ssldir"
> > > -                fi
> > > +                SSL_LIBS="-lssl -lcrypto"
> > > +                SSL_DIR="$ssldir"
> > >                  found=true
> > >                  AC_MSG_RESULT([yes])
> > >                  break
> > > diff --git a/m4/ovn.m4 b/m4/ovn.m4
> > > index 93a959224..22ad1a27f 100644
> > > --- a/m4/ovn.m4
> > > +++ b/m4/ovn.m4
> > > @@ -60,139 +60,6 @@ AC_DEFUN([OVS_CHECK_NDEBUG],
> > >       [ndebug=false])
> > >     AM_CONDITIONAL([NDEBUG], [test x$ndebug = xtrue])])
> > >
> > > -dnl Checks for MSVC x64 compiler.
> > > -AC_DEFUN([OVS_CHECK_WIN64],
> > > -  [AC_CACHE_CHECK(
> > > -    [for MSVC x64 compiler],
> > > -    [cl_cv_x64],
> > > -    [dnl "cl" writes x64 output to stdin:
> > > -     if (cl) 2>&1 | grep 'x64' >/dev/null 2>&1; then
> > > -       cl_cv_x64=yes
> > > -       MSVC64_LDFLAGS=" /MACHINE:X64 "
> > > -       MSVC_PLATFORM="x64"
> > > -     else
> > > -       cl_cv_x64=no
> > > -       MSVC64_LDFLAGS=""
> > > -       MSVC_PLATFORM="x86"
> > > -     fi])
> > > -     AC_SUBST([MSVC64_LDFLAGS])
> > > -     AC_SUBST([MSVC_PLATFORM])
> > > -])
> > > -
> > > -dnl Checks for WINDOWS.
> > > -AC_DEFUN([OVS_CHECK_WIN32],
> > > -  [AC_CHECK_HEADER([windows.h],
> > > -                   [WIN32=yes],
> > > -                   [WIN32=no])
> > > -   AM_CONDITIONAL([WIN32], [test "$WIN32" = yes])
> > > -   if test "$WIN32" = yes; then
> > > -      AC_ARG_WITH([pthread],
> > > -         [AS_HELP_STRING([--with-pthread=DIR],
> > > -            [root of the pthread-win32 directory])],
> > > -         [
> > > -            case "$withval" in
> > > -            "" | y | ye | yes | n | no)
> > > -            AC_MSG_ERROR([Invalid --with-pthread value])
> > > -              ;;
> > > -            *)
> > > -            if (cl) 2>&1 | grep 'x64' >/dev/null 2>&1; then
> > > -              cl_cv_x64=yes
> > > -            else
> > > -              cl_cv_x64=no
> > > -            fi
> > > -            if test "$cl_cv_x64" = yes; then
> > > -                PTHREAD_WIN32_DIR=$withval/lib/x64
> > > -                PTHREAD_WIN32_DIR_DLL=/$(echo ${withval} | ${SED} -e
> 's/://')/dll/x64
> > > -                PTHREAD_WIN32_DIR_DLL_WIN_FORM=$withval/dll/x64
> > > -            else
> > > -                PTHREAD_WIN32_DIR=$withval/lib/x86
> > > -                PTHREAD_WIN32_DIR_DLL=/$(echo ${withval} | ${SED} -e
> 's/://')/dll/x86
> > > -                PTHREAD_WIN32_DIR_DLL_WIN_FORM=$withval/dll/x86
> > > -            fi
> > > -            PTHREAD_INCLUDES=-I$withval/include
> > > -            PTHREAD_LDFLAGS=-L$PTHREAD_WIN32_DIR
> > > -            PTHREAD_LIBS="-lpthreadVC2"
> > > -            AC_SUBST([PTHREAD_WIN32_DIR_DLL_WIN_FORM])
> > > -            AC_SUBST([PTHREAD_WIN32_DIR_DLL])
> > > -            AC_SUBST([PTHREAD_INCLUDES])
> > > -            AC_SUBST([PTHREAD_LDFLAGS])
> > > -            AC_SUBST([PTHREAD_LIBS])
> > > -              ;;
> > > -            esac
> > > -         ], [
> > > -            AC_MSG_ERROR([pthread directory not specified])
> > > -         ]
> > > -      )
> > > -      AC_ARG_WITH([debug],
> > > -         [AS_HELP_STRING([--with-debug],
> > > -            [Build without compiler optimizations])],
> > > -         [
> > > -            MSVC_CFLAGS="-O0"
> > > -            AC_SUBST([MSVC_CFLAGS])
> > > -         ], [
> > > -            MSVC_CFLAGS="-O2"
> > > -            AC_SUBST([MSVC_CFLAGS])
> > > -         ]
> > > -      )
> > > -
> > > -      AC_DEFINE([WIN32], [1], [Define to 1 if building on WIN32.])
> > > -      AC_CHECK_TYPES([struct timespec], [], [], [[#include <time.h>]])
> > > -      AH_BOTTOM([#ifdef WIN32
> > > -#include "include/windows/windefs.h"
> > > -#endif])
> > > -   fi])
> > > -
> > > -dnl OVS_CHECK_WINDOWS
> > > -dnl
> > > -dnl Configure Visual Studio solution build
> > > -AC_DEFUN([OVS_CHECK_VISUAL_STUDIO_DDK], [
> > > -AC_ARG_WITH([vstudiotarget],
> > > -         [AS_HELP_STRING([--with-vstudiotarget=target_type],
> > > -            [Target type: Debug/Release])],
> > > -         [
> > > -            case "$withval" in
> > > -            "Release") ;;
> > > -            "Debug") ;;
> > > -            *) AC_MSG_ERROR([No valid Visual Studio configuration
> found]) ;;
> > > -            esac
> > > -
> > > -            VSTUDIO_CONFIG=$withval
> > > -         ], [
> > > -            VSTUDIO_CONFIG=
> > > -         ]
> > > -      )
> > > -
> > > -  AC_SUBST([VSTUDIO_CONFIG])
> > > -
> > > -AC_ARG_WITH([vstudiotargetver],
> > > -
>  [AS_HELP_STRING([--with-vstudiotargetver=target_ver1,target_ver2],
> > > -            [Target versions: Win8,Win8.1,Win10])],
> > > -         [
> > > -            targetver=`echo "$withval" | tr -s , ' ' `
> > > -            for ver in $targetver; do
> > > -                case "$ver" in
> > > -                "Win8") VSTUDIO_WIN8=true ;;
> > > -                "Win8.1")  VSTUDIO_WIN8_1=true ;;
> > > -                "Win10") VSTUDIO_WIN10=true ;;
> > > -                *) AC_MSG_ERROR([No valid Visual Studio target
> version found]) ;;
> > > -                esac
> > > -            done
> > > -
> > > -         ], [
> > > -            VSTUDIO_WIN8=true
> > > -            VSTUDIO_WIN8_1=true
> > > -            VSTUDIO_WIN10=true
> > > -         ]
> > > -      )
> > > -
> > > -  AM_CONDITIONAL([VSTUDIO_WIN8], [test -n "$VSTUDIO_WIN8"])
> > > -  AM_CONDITIONAL([VSTUDIO_WIN8_1], [test -n "$VSTUDIO_WIN8_1"])
> > > -  AM_CONDITIONAL([VSTUDIO_WIN10], [test -n "$VSTUDIO_WIN10"])
> > > -
> > > -  AC_DEFINE([VSTUDIO_DDK], [1], [System uses the Visual Studio build
> target.])
> > > -  AM_CONDITIONAL([VSTUDIO_DDK], [test -n "$VSTUDIO_CONFIG"])
> > > -])
> > > -
> > >  dnl Checks for OpenSSL.
> > >  AC_DEFUN([OVS_CHECK_OPENSSL],
> > >    [AC_ARG_ENABLE(
> > > diff --git a/northd/lflow-mgr.c b/northd/lflow-mgr.c
> > > index 3b8cbe472..ce9c4f854 100644
> > > --- a/northd/lflow-mgr.c
> > > +++ b/northd/lflow-mgr.c
> > > @@ -1168,12 +1168,6 @@ sync_lflow_to_sb(struct ovn_lflow *lflow,
> > >           * "ovn/northd/northd.c:1234", down to just the part
> following the
> > >           * last slash, e.g. "northd.c:1234". */
> > >          const char *slash = strrchr(lflow->where, '/');
> > > -#if _WIN32
> > > -        const char *backslash = strrchr(lflow->where, '\\');
> > > -        if (!slash || backslash > slash) {
> > > -            slash = backslash;
> > > -        }
> > > -#endif
> > >          const char *where = slash ? slash + 1 : lflow->where;
> > >
> > >          struct smap ids = SMAP_INITIALIZER(&ids);
> > > @@ -1213,12 +1207,6 @@ sync_lflow_to_sb(struct ovn_lflow *lflow,
> > >                   * like "ovn/northd/northd.c:1234", down to just the
> part
> > >                   * following the last slash, e.g. "northd.c:1234". */
> > >                  const char *slash = strrchr(lflow->where, '/');
> > > -#if _WIN32
> > > -                const char *backslash = strrchr(lflow->where, '\\');
> > > -                if (!slash || backslash > slash) {
> > > -                    slash = backslash;
> > > -                }
> > > -#endif
> > >                  const char *where = slash ? slash + 1 : lflow->where;
> > >
> > >                  if (strcmp(source, where)) {
> > > diff --git a/tests/atlocal.in b/tests/atlocal.in
> > > index 477d56a0f..2683e9a2f 100644
> > > --- a/tests/atlocal.in
> > > +++ b/tests/atlocal.in
> > > @@ -74,29 +74,14 @@ esac
> > >
> > >  # Check for platform.
> > >  case `uname` in
> > > -MINGW*|MSYS*)
> > > -    IS_WIN32="yes"
> > > -    IS_BSD="no"
> > > -    ;;
> > >  FreeBSD|NetBSD)
> > > -    IS_WIN32="no"
> > >      IS_BSD="yes"
> > >      ;;
> > >  *)
> > > -    IS_WIN32="no"
> > >      IS_BSD="no"
> > >      ;;
> > >  esac
> > >
> > > -if test x"$PYTHON3" != x && test "$IS_WIN32" = yes; then
> > > -    # enables legacy windows unicode printing needed for Python3
> compatibility
> > > -    # with the Python2 tests
> > > -    PYTHONLEGACYWINDOWSFSENCODING=true
> > > -    export PYTHONLEGACYWINDOWSFSENCODING
> > > -    PYTHONLEGACYWINDOWSSTDIO=true
> > > -    export PYTHONLEGACYWINDOWSSTDIO
> > > -fi
> > > -
> > >  # Check whether to run IPv6 tests.
> > >  $PYTHON -c '
> > >  import errno
> > > diff --git a/tests/automake.mk b/tests/automake.mk
> > > index 46be217ae..76ef4fda0 100644
> > > --- a/tests/automake.mk
> > > +++ b/tests/automake.mk
> > > @@ -15,8 +15,7 @@ EXTRA_DIST += \
> > >         $(MULTINODE_TESTSUITE) \
> > >         tests/atlocal.in \
> > >         $(srcdir)/package.m4 \
> > > -       $(srcdir)/tests/testsuite \
> > > -       $(srcdir)/tests/testsuite.patch
> > > +       $(srcdir)/tests/testsuite
> > >
> > >  COMMON_MACROS_AT = \
> > >         tests/ovsdb-macros.at \
> > > @@ -81,7 +80,6 @@ MULTINODE_TESTSUITE_AT = \
> > >  check_SCRIPTS += tests/atlocal
> > >
> > >  TESTSUITE = $(srcdir)/tests/testsuite
> > > -TESTSUITE_PATCH = $(srcdir)/tests/testsuite.patch
> > >  TESTSUITE_DIR = $(abs_top_builddir)/tests/testsuite.dir
> > >  SYSTEM_DPDK_TESTSUITE = $(srcdir)/tests/system-dpdk-testsuite
> > >  SYSTEM_KMOD_TESTSUITE = $(srcdir)/tests/system-kmod-testsuite
> > > @@ -93,7 +91,7 @@ DISTCLEANFILES += tests/atconfig tests/atlocal
> > >  MULTINODE_TESTSUITE = $(srcdir)/tests/multinode-testsuite
> > >  MULTINODE_TESTSUITE_DIR =
> $(abs_top_builddir)/tests/multinode-testsuite.dir
> > >  MULTINODE_TESTSUITE_RESULTS = $(MULTINODE_TESTSUITE_DIR)/results
> > > -AUTOTEST_PATH =
> $(ovs_builddir)/utilities:$(ovs_builddir)/vswitchd:$(ovs_builddir)/ovsdb:$(ovs_builddir)/vtep:tests:$(PTHREAD_WIN32_DIR_DLL):$(SSL_DIR):controller-vtep:northd:utilities:controller:ic:br-controller
> > > +AUTOTEST_PATH =
> $(ovs_builddir)/utilities:$(ovs_builddir)/vswitchd:$(ovs_builddir)/ovsdb:$(ovs_builddir)/vtep:tests:$(SSL_DIR):controller-vtep:northd:utilities:controller:ic:br-controller
> > >
> > >  export ovs_srcdir
> > >  export ovs_builddir
> > > @@ -237,16 +235,9 @@ check-multinode: all
> > >
> > >  AUTOTEST = $(AUTOM4TE) --language=autotest
> > >
> > > -if WIN32
> > > -$(TESTSUITE): package.m4 $(TESTSUITE_AT) $(COMMON_MACROS_AT)
> $(TESTSUITE_PATCH)
> > > -       $(AM_V_GEN)$(AUTOTEST) -I '$(srcdir)' -o testsuite.tmp [email protected]
> > > -       patch -p0 testsuite.tmp $(TESTSUITE_PATCH)
> > > -       $(AM_V_at)mv testsuite.tmp $@
> > > -else
> > >  $(TESTSUITE): package.m4 $(TESTSUITE_AT) $(COMMON_MACROS_AT)
> > >         $(AM_V_GEN)$(AUTOTEST) -I '$(srcdir)' -o [email protected] [email protected]
> > >         $(AM_V_at)mv [email protected] $@
> > > -endif
> > >
> > >  $(SYSTEM_DPDK_TESTSUITE): package.m4 $(SYSTEM_TESTSUITE_AT)
> $(SYSTEM_DPDK_TESTSUITE_AT) $(COMMON_MACROS_AT)
> > >         $(AM_V_GEN)$(AUTOTEST) -I '$(srcdir)' -o [email protected] [email protected]
> > > diff --git a/tests/ovn-controller-vtep.at b/tests/
> ovn-controller-vtep.at
> > > index caf53e291..213e222ed 100644
> > > --- a/tests/ovn-controller-vtep.at
> > > +++ b/tests/ovn-controller-vtep.at
> > > @@ -13,7 +13,6 @@ AT_BANNER([ovn_controller_vtep])
> > >  #
> > >  m4_define([OVN_CONTROLLER_VTEP_START], [
> > >     AT_KEYWORDS([ovn])
> > > -   # this will cause skip when 'make check' using Windows setup.
> > >     sim="$1"
> > >     tunnel_ip="$2"
> > >     vtep_chassis=${sim:-br-vtep}
> > > diff --git a/tests/ovs-macros.at b/tests/ovs-macros.at
> > > index 6e6e52080..95d522b70 100644
> > > --- a/tests/ovs-macros.at
> > > +++ b/tests/ovs-macros.at
> > > @@ -105,43 +105,6 @@ seq () {
> > >      done
> > >  }
> > >
> > > -if test "$IS_WIN32" = "yes"; then
> > > -    pwd () {
> > > -        command pwd -W "$@"
> > > -    }
> > > -
> > > -    diff () {
> > > -        command diff --strip-trailing-cr "$@"
> > > -    }
> > > -
> > > -    # tskill is more effective than taskkill but it isn't always
> installed.
> > > -    if (tskill //?) >/dev/null 2>&1; then :; else
> > > -        tskill () { taskkill //F //PID $1 >/dev/null; }
> > > -    fi
> > > -
> > > -    kill () {
> > > -        signal=
> > > -        retval=0
> > > -        for arg; do
> > > -            case $arg in
> > > -            -*) signal=$arg ;;
> > > -            [1-9][0-9]*)
> > > -                # tasklist always returns 0.
> > > -                # If pid does exist, there will be a line with the
> pid.
> > > -                if tasklist //fi "PID eq $arg" | grep $arg
> >/dev/null; then
> > > -                    if test "X$signal" != "X-0"; then
> > > -                        tskill $arg
> > > -                    fi
> > > -                else
> > > -                    retval=1
> > > -                fi
> > > -                ;;
> > > -            esac
> > > -        done
> > > -        return $retval
> > > -    }
> > > -fi
> > > -
> > >  # parent_pid PID
> > >  #
> > >  # Prints the PID of the parent of process PID.
> > > diff --git a/tests/test-ovn.c b/tests/test-ovn.c
> > > index 3c89eeba0..114e60d65 100644
> > > --- a/tests/test-ovn.c
> > > +++ b/tests/test-ovn.c
> > > @@ -1058,7 +1058,6 @@ test_tree_shape_exhaustively(struct expr *expr,
> struct shash *symtab,
> > >      }
> > >  }
> > >
> > > -#ifndef _WIN32
> > >  static void
> > >  wait_pid(pid_t *pids, int *n)
> > >  {
> > > @@ -1087,7 +1086,6 @@ wait_pid(pid_t *pids, int *n)
> > >      }
> > >      ovs_fatal(0, "waitpid returned unknown child");
> > >  }
> > > -#endif
> > >
> > >  static void
> > >  test_exhaustive(struct ovs_cmdl_context *ctx OVS_UNUSED)
> > > @@ -1118,10 +1116,8 @@ test_exhaustive(struct ovs_cmdl_context *ctx
> OVS_UNUSED)
> > >          free(name);
> > >      }
> > >
> > > -#ifndef _WIN32
> > >      pid_t *children = xmalloc(test_parallel * sizeof *children);
> > >      int n_children = 0;
> > > -#endif
> > >
> > >      int n_tested = 0;
> > >      for (int i = 0; i < 2; i++) {
> > > @@ -1144,7 +1140,6 @@ test_exhaustive(struct ovs_cmdl_context *ctx
> OVS_UNUSED)
> > >                  ds_destroy(&s);
> > >              }
> > >
> > > -#ifndef _WIN32
> > >              if (test_parallel > 1) {
> > >                  pid_t pid = xfork();
> > >                  if (!pid) {
> > > @@ -1160,9 +1155,7 @@ test_exhaustive(struct ovs_cmdl_context *ctx
> OVS_UNUSED)
> > >                      }
> > >                      children[n_children++] = pid;
> > >                  }
> > > -            } else
> > > -#endif
> > > -            {
> > > +            } else {
> > >                  n_tested += test_tree_shape_exhaustively(
> > >                      expr, &symtab, terminals, n_terminals,
> > >                      nvars, test_nvars, test_bits,
> > > @@ -1171,12 +1164,11 @@ test_exhaustive(struct ovs_cmdl_context *ctx
> OVS_UNUSED)
> > >              expr_destroy(expr);
> > >          }
> > >      }
> > > -#ifndef _WIN32
> > > +
> > >      while (n_children > 0) {
> > >          wait_pid(children, &n_children);
> > >      }
> > >      free(children);
> > > -#endif
> > >
> > >      printf("Tested ");
> > >      switch (operation) {
> > > diff --git a/tests/testsuite.patch b/tests/testsuite.patch
> > > deleted file mode 100644
> > > index e0c6bb35a..000000000
> > > --- a/tests/testsuite.patch
> > > +++ /dev/null
> > > @@ -1,76 +0,0 @@
> > > ---- testsuite  2015-02-11 17:19:21.654646439 -0800
> > > -+++ testsuite  2015-02-11 17:15:03.810653032 -0800
> > > -@@ -4669,6 +4669,73 @@
> > > -   fi
> > > -   exec 6<&-
> > > -   wait
> > > -+elif test $at_jobs -ne 1 &&
> > > -+     test "$IS_WIN32" = "yes"; then
> > > -+  # FIFO job dispatcher.
> > > -+  trap 'at_pids=
> > > -+      for at_pid in `jobs -p`; do
> > > -+        at_pids="$at_pids $at_job_group$at_pid"
> > > -+      done
> > > -+      if test -n "$at_pids"; then
> > > -+        at_sig=TSTP
> > > -+        test "${TMOUT+set}" = set && at_sig=STOP
> > > -+        kill -$at_sig $at_pids 2>/dev/null
> > > -+      fi
> > > -+      kill -STOP $$
> > > -+      test -z "$at_pids" || kill -CONT $at_pids 2>/dev/null' TSTP
> > > -+
> > > -+  echo
> > > -+  # Turn jobs into a list of numbers, starting from 1.
> > > -+  running_jobs="`pwd`/tests/jobdispatcher"
> > > -+  mkdir -p $running_jobs
> > > -+  at_joblist=`$as_echo "$at_groups" | sed -n 1,${at_jobs}p`
> > > -+
> > > -+  set X $at_joblist
> > > -+  shift
> > > -+  for at_group in $at_groups; do
> > > -+    $at_job_control_on 2>/dev/null
> > > -+    (
> > > -+      # Start one test group.
> > > -+      $at_job_control_off
> > > -+      touch $running_jobs/$at_group
> > > -+      trap 'set +x; set +e
> > > -+          trap "" PIPE
> > > -+          echo stop > "$at_stop_file"
> > > -+          rm -f $running_jobs/$at_group
> > > -+          as_fn_exit 141' PIPE
> > > -+      at_fn_group_prepare
> > > -+      if cd "$at_group_dir" &&
> > > -+       at_fn_test $at_group &&
> > > -+       . "$at_test_source"
> > > -+      then :; else
> > > -+      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unable to
> parse test group: $at_group" >&5
> > > -+$as_echo "$as_me: WARNING: unable to parse test group: $at_group"
> >&2;}
> > > -+      at_failed=:
> > > -+      fi
> > > -+      rm -f $running_jobs/$at_group
> > > -+      at_fn_group_postprocess
> > > -+    ) &
> > > -+    $at_job_control_off
> > > -+    shift # Consume one token.
> > > -+    if test $# -gt 0; then :; else
> > > -+      while [ "`ls -l $running_jobs 2>/dev/null | wc -l`" -gt
> "$at_jobs" ]; do
> > > -+        sleep 0.1
> > > -+      done
> > > -+      set x $*
> > > -+    fi
> > > -+    test -f "$at_stop_file" && break
> > > -+  done
> > > -+  # Read back the remaining ($at_jobs - 1) tokens.
> > > -+  set X $at_joblist
> > > -+  shift
> > > -+  if test $# -gt 0; then
> > > -+    shift
> > > -+    while [ "`ls -l $running_jobs | wc -l`" -gt 1 ]; do
> > > -+      sleep 0.1
> > > -+    done
> > > -+  fi
> > > -+  rmdir $running_jobs
> > > -+  wait
> > > - else
> > > -   # Run serially, avoid forks and other potential surprises.
> > > -   for at_group in $at_groups; do
> > > diff --git a/utilities/checkpatch.py b/utilities/checkpatch.py
> > > index c19e34442..ad1199f0c 100755
> > > --- a/utilities/checkpatch.py
> > > +++ b/utilities/checkpatch.py
> > > @@ -1073,10 +1073,7 @@ def ovs_checkpatch_parse(text, filename,
> author=None, committer=None):
> > >                  interim_line_check(current_file, cmp_line, lineno)
> > >                  continue
> > >
> > > -            # Skip files which have /datapath in them, since they are
> > > -            # linux or windows coding standards
> > > -            if current_file.startswith('datapath'):
> > > -                continue
> > > +            # Linux headers use Linux kernel coding style for the
> most part.
> > >              if current_file.startswith('include/linux'):
> > >                  continue
> > >              # "sparse" includes could be copy-pasted from different
> sources
> > > diff --git a/utilities/ovn-appctl.8.xml b/utilities/ovn-appctl.8.xml
> > > index e3d024da1..b6d7e3dbd 100644
> > > --- a/utilities/ovn-appctl.8.xml
> > > +++ b/utilities/ovn-appctl.8.xml
> > > @@ -142,13 +142,6 @@
> > >                to limit the log level change to only to the system
> log, to the
> > >                console, or to a file, respectively.
> > >              </p>
> > > -
> > > -            <p>
> > > -              On Windows platform, <code>syslog</code> is accepted as
> a word
> > > -              and is only useful if the target was started with the
> > > -              <code>--syslog-target</code> option (the word has no
> effect
> > > -              otherwise).
> > > -            </p>
> > >            </li>
> > >
> > >            <li>
> > > diff --git a/utilities/ovn-appctl.c b/utilities/ovn-appctl.c
> > > index dff7d1295..1e872a401 100644
> > > --- a/utilities/ovn-appctl.c
> > > +++ b/utilities/ovn-appctl.c
> > > @@ -214,7 +214,6 @@ connect_to_target(const char *target)
> > >      char *socket_name;
> > >      int error;
> > >
> > > -#ifndef _WIN32
> > >      if (target[0] != '/') {
> > >          char *pidfile_name;
> > >          pid_t pid;
> > > @@ -227,12 +226,6 @@ connect_to_target(const char *target)
> > >          free(pidfile_name);
> > >          socket_name = xasprintf("%s/%s.%ld.ctl",
> > >                                  ovn_rundir(), target, (long int) pid);
> > > -#else
> > > -    /* On windows, if the 'target' contains ':', we make an
> assumption that
> > > -     * it is an absolute path. */
> > > -    if (!strchr(target, ':')) {
> > > -        socket_name = xasprintf("%s/%s.ctl", ovn_rundir(), target);
> > > -#endif
> > >      } else {
> > >          socket_name = xstrdup(target);
> > >      }
> > > --
> > > 2.54.0
> > >
> > > _______________________________________________
> > > dev mailing list
> > > [email protected]
> > > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
> > >
>
> _______________________________________________
> dev mailing list
> [email protected]
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>
>
Thank you Mark and Ilya,

I took care of the and applied this to main.

Reagrds,
Ales
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to