Skip to content

Commit

Permalink
test: windows
Browse files Browse the repository at this point in the history
  • Loading branch information
richard-ramos committed Jan 31, 2025
1 parent 50f2bcc commit 979cade
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 7 deletions.
5 changes: 5 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -101,11 +101,16 @@ jobs:
# Set GCC-14 as the default
sudo update-alternatives --set gcc /usr/bin/gcc-14
- name: Install deps
run: |
pacman -S --noconfirm base-devel gcc
- name: Run tests
run: |
nim --version
nimble --version
gcc --version
NIMFLAGS="${NIMFLAGS} --mm:${{ matrix.nim.memory_management }}"
./build.sh
nimble test --styleCheck:off --verbose --debug
9 changes: 7 additions & 2 deletions build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ echo >> "${root}/ngtcp2.nim"

# assemble list of C files to be compiled
picotls=(
"${sources}/picotls/picotlsvs/picotls/wintimeofday.c"
"${sources}/picotls/lib/pembase64.c"
"${sources}/picotls/lib/hpke.c"
"${sources}/picotls/lib/picotls.c"
Expand All @@ -33,14 +34,18 @@ for file in `ls "${sources}/ngtcp2/lib"/*.c`; do
compile="${compile} --compile=${file}"
done


cp ${sources}/picotls/picotlsvs/picotls/wincompat.h ${root}/build/lib/includes/.

# generate nim wrapper with nimterop
toast \

nimble dump nimterop

nimterop/toast \
$compile \
--pnim \
--preprocess \
--noHeader \
--defines=_WINDOWS \
--defines=NGTCP2_STATICLIB \
--replace=sockaddr=SockAddr,SockAddr_storage=Sockaddr_storage,socklen_t=SockLen \
--replace=clone_=ptlsXXclone,destroy_=ptlsXXdestroy,random_=ptlsXXrandom,_output=XXoutput,__=xXx \
Expand Down
11 changes: 6 additions & 5 deletions ngtcp2.nim
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import nativesockets

when defined(windows):
{.passl: "-lws2_32".}
{.passc: "-D_WINDOWS".}
else:
{.passc: "-DHAVE_UNISTD_H".}

Expand All @@ -28,7 +29,7 @@ type
st_ptls_log_t = object
in_addr = object

# Generated @ 2025-01-30T17:34:36-04:00
# Generated @ 2025-01-30T19:59:17-04:00
# Command line:
# /home/richard/.nimble/pkgs2/nimterop-0.6.13-a93246b2ad5531db11e51de7b2d188c42d95576a/nimterop/toast --compile=./sources/picotls/lib/pembase64.c --compile=./sources/picotls/lib/hpke.c --compile=./sources/picotls/lib/picotls.c --compile=./sources/picotls/lib/openssl.c --compile=./sources/ngtcp2/crypto/shared.c --compile=./sources/ngtcp2/crypto/picotls/picotls.c --compile=./sources/ngtcp2/lib/ngtcp2_acktr.c --compile=./sources/ngtcp2/lib/ngtcp2_addr.c --compile=./sources/ngtcp2/lib/ngtcp2_balloc.c --compile=./sources/ngtcp2/lib/ngtcp2_bbr.c --compile=./sources/ngtcp2/lib/ngtcp2_buf.c --compile=./sources/ngtcp2/lib/ngtcp2_cc.c --compile=./sources/ngtcp2/lib/ngtcp2_cid.c --compile=./sources/ngtcp2/lib/ngtcp2_conn.c --compile=./sources/ngtcp2/lib/ngtcp2_conv.c --compile=./sources/ngtcp2/lib/ngtcp2_crypto.c --compile=./sources/ngtcp2/lib/ngtcp2_dcidtr.c --compile=./sources/ngtcp2/lib/ngtcp2_err.c --compile=./sources/ngtcp2/lib/ngtcp2_frame_chain.c --compile=./sources/ngtcp2/lib/ngtcp2_gaptr.c --compile=./sources/ngtcp2/lib/ngtcp2_idtr.c --compile=./sources/ngtcp2/lib/ngtcp2_ksl.c --compile=./sources/ngtcp2/lib/ngtcp2_log.c --compile=./sources/ngtcp2/lib/ngtcp2_map.c --compile=./sources/ngtcp2/lib/ngtcp2_mem.c --compile=./sources/ngtcp2/lib/ngtcp2_objalloc.c --compile=./sources/ngtcp2/lib/ngtcp2_opl.c --compile=./sources/ngtcp2/lib/ngtcp2_path.c --compile=./sources/ngtcp2/lib/ngtcp2_pkt.c --compile=./sources/ngtcp2/lib/ngtcp2_pmtud.c --compile=./sources/ngtcp2/lib/ngtcp2_ppe.c --compile=./sources/ngtcp2/lib/ngtcp2_pq.c --compile=./sources/ngtcp2/lib/ngtcp2_pv.c --compile=./sources/ngtcp2/lib/ngtcp2_qlog.c --compile=./sources/ngtcp2/lib/ngtcp2_range.c --compile=./sources/ngtcp2/lib/ngtcp2_ringbuf.c --compile=./sources/ngtcp2/lib/ngtcp2_rob.c --compile=./sources/ngtcp2/lib/ngtcp2_rst.c --compile=./sources/ngtcp2/lib/ngtcp2_rtb.c --compile=./sources/ngtcp2/lib/ngtcp2_settings.c --compile=./sources/ngtcp2/lib/ngtcp2_str.c --compile=./sources/ngtcp2/lib/ngtcp2_strm.c --compile=./sources/ngtcp2/lib/ngtcp2_transport_params.c --compile=./sources/ngtcp2/lib/ngtcp2_unreachable.c --compile=./sources/ngtcp2/lib/ngtcp2_vec.c --compile=./sources/ngtcp2/lib/ngtcp2_version.c --compile=./sources/ngtcp2/lib/ngtcp2_window_filter.c --pnim --preprocess --noHeader --defines=NGTCP2_STATICLIB --replace=sockaddr=SockAddr,SockAddr_storage=Sockaddr_storage,socklen_t=SockLen --replace=clone_=ptlsXXclone,destroy_=ptlsXXdestroy,random_=ptlsXXrandom,_output=XXoutput,__=xXx --includeDirs=./sources/ngtcp2/crypto --includeDirs=./sources/picotls/include --includeDirs=./sources/ngtcp2/lib --includeDirs=./sources/ngtcp2/crypto/includes --includeDirs=./sources/ngtcp2/lib/includes --includeDirs=./build/lib/includes --includeDirs=/opt/homebrew/Cellar/openssl@3/3.4.0/include ./sources/picotls/include/picotls.h ./sources/ngtcp2/lib/includes/ngtcp2/ngtcp2.h ./sources/ngtcp2/crypto/includes/ngtcp2/ngtcp2_crypto_picotls.h

Expand Down Expand Up @@ -443,10 +444,10 @@ const
NGTCP2_STATELESS_RESET_TOKENLEN* = 16
NGTCP2_MIN_STATELESS_RESET_RANDLEN* = 5
NGTCP2_PATH_CHALLENGE_DATALEN* = 8
NGTCP2_RETRY_KEY_V1* = "\fi\vfWZ\x1DvkT�h�N"
NGTCP2_RETRY_NONCE_V1* = "F\x15��]c+�#�%�"
NGTCP2_RETRY_KEY_V2* = "���\eV�H�`��έ|̒"
NGTCP2_RETRY_NONCE_V2* = "�ii�-|m���J"
NGTCP2_RETRY_KEY_V1* = "¾\fi\vŸfWZ\x1DvkTãhÈN"
NGTCP2_RETRY_NONCE_V1* = "F\x15™Ó]c+ò#˜%»"
NGTCP2_RETRY_KEY_V2* = "´°\eV¬Hâ`ûËέ|̒"
NGTCP2_RETRY_NONCE_V2* = "Øii¼-|m™ï°J"
NGTCP2_HP_MASKLEN* = 5
NGTCP2_HP_SAMPLELEN* = 16
NGTCP2_DEFAULT_INITIAL_RTT* = (333 * typeof(333)(NGTCP2_MILLISECONDS))
Expand Down
1 change: 1 addition & 0 deletions prelude.nim
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import nativesockets

when defined(windows):
{.passl: "-lws2_32".}
{.passc: "-D_WINDOWS".}
else:
{.passc: "-DHAVE_UNISTD_H".}

Expand Down

0 comments on commit 979cade

Please sign in to comment.