diff --git a/CMakeLists.txt b/CMakeLists.txt index 73aeabc..5befba2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.10) -project(fun VERSION 0.37.24 LANGUAGES C) +project(fun VERSION 0.37.25 LANGUAGES C) set(CMAKE_C_STANDARD 99) set(CMAKE_C_STANDARD_REQUIRED ON) diff --git a/src/vm/os/random_number.c b/src/vm/os/random_number.c index 36e3dab..a84244d 100644 --- a/src/vm/os/random_number.c +++ b/src/vm/os/random_number.c @@ -24,8 +24,9 @@ #if defined(_WIN32) || defined(_WIN64) #include #include -#elif defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) +#elif defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(__DragonFly__) #include + #include #elif defined(__unix__) #if __has_include() #include @@ -85,7 +86,7 @@ case OP_RANDOM_NUMBER: { NTSTATUS st = BCryptGenRandom(NULL, raw, (ULONG)len, BCRYPT_USE_SYSTEM_PREFERRED_RNG); ok = (st == 0); } -#elif defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) +#elif defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(__DragonFly__) { arc4random_buf(raw, (size_t)len); ok = 1; diff --git a/src/vm/os/serial_open.c b/src/vm/os/serial_open.c index 02c8d73..772776a 100644 --- a/src/vm/os/serial_open.c +++ b/src/vm/os/serial_open.c @@ -13,6 +13,21 @@ #include #include #include + +/* Fallbacks for baud rates that might be missing on some systems */ +#ifndef B57600 +#define B57600 0010001 +#endif +#ifndef B115200 +#define B115200 0010002 +#endif +#ifndef B230400 +#define B230400 0010003 +#endif + +#ifndef O_NDELAY +#define O_NDELAY O_NONBLOCK +#endif #endif case OP_SERIAL_OPEN: {