From 708e50f8e640540198a24798b1bacd349f3c11dd Mon Sep 17 00:00:00 2001 From: leso-kn Date: Fri, 27 Oct 2023 11:34:39 +0200 Subject: [PATCH 1/2] refactor(core): Replace check for SO_BINDTODEVICE support with platform independent version --- src/options.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/options.c b/src/options.c index 6581cae..9dea6bd 100644 --- a/src/options.c +++ b/src/options.c @@ -58,7 +58,7 @@ int opt_meth_getoption(lua_State *L, p_opt opt, p_socket ps) /* binds socket to network interface */ int opt_set_bindtodevice(lua_State *L, p_socket ps) { -#if defined(__APPLE__) || defined(__WIN32__) || defined(_MSC_VER) +#ifndef SO_BINDTODEVICE return luaL_error(L, "SO_BINDTODEVICE is not supported on this operating system"); #else const char *dev = luaL_checkstring(L, 3); @@ -68,7 +68,7 @@ int opt_set_bindtodevice(lua_State *L, p_socket ps) int opt_get_bindtodevice(lua_State *L, p_socket ps) { -#if defined(__APPLE__) || defined(__WIN32__) || defined(_MSC_VER) +#ifndef SO_BINDTODEVICE return luaL_error(L, "SO_BINDTODEVICE is not supported on this operating system"); #else char dev[IFNAMSIZ]; From 9c6195ea629077bd7f6bf73e3e9991c89ec5ba7e Mon Sep 17 00:00:00 2001 From: leso-kn Date: Fri, 27 Oct 2023 19:31:18 +0200 Subject: [PATCH 2/2] ci: Enable windows build --- .github/workflows/build.yml | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ee6e1d4..432bafb 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -13,22 +13,27 @@ jobs: fail-fast: false matrix: luaVersion: [ "5.4", "5.3", "5.2", "5.1", "luajit", "luajit-openresty" ] - platform: [ "ubuntu-20.04", "macos-11" ] # "windows-2022" not supported by gh-actions-lua + platform: [ "ubuntu-20.04", "macos-11", "windows-2022" ] runs-on: ${{ matrix.platform }} steps: - name: Checkout uses: actions/checkout@v3 + - name: Setup ’msvc’ + uses: ilammy/msvc-dev-cmd@v1 + if: ${{ !startsWith(matrix.luaVersion, 'luajit') }} - name: Setup ‘lua’ - uses: leafo/gh-actions-lua@v9 + uses: leso-kn/gh-actions-lua@v11-staging with: luaVersion: ${{ matrix.luaVersion }} - name: Setup ‘luarocks’ - uses: leafo/gh-actions-luarocks@v4 + uses: hishamhm/gh-actions-luarocks@master - name: Make and install run: | - export DEBUG=DEBUG luarocks make -- luasocket-scm-3.rockspec + env: + DEBUG: DEBUG - name: Run regression tests + shell: bash run: | cd test lua hello.lua