os module uses wrong path separator in nimvm when cross-compiling
### Description

The VM used for compile time evaluation does not appear to be using `hostOS` to pick which path style to use in functions like `joinPath()` (possibly `targetOS` is being used?). This is a problem I encountered while trying to cross compile my project for Windows while being on Linux: part of the code tries to statically read the contents of two JSON files into two `const`s and fails because the path is incorrect


```nim
import os


func buildPath: string {.compileTime.} =
    result = joinPath(currentSourcePath().parentDir(), "resources")

const x = buildPath()
echo x
```
### Nim Version

Nim Compiler Version 2.0.4 [Linux: amd64]
Compiled at 2024-03-28
Copyright (c) 2006-2023 by Andreas Rumpf

git hash: b47747d31844c6bd9af4322efe55e24fefea544c
active boot switches: -d:release

### Current Output

```text
\home\nocturn9x\heimdall\resources
```


### Expected Output

```text
/home/nocturn9x/heimdall/resources
```


### Possible Solution

The nim compile time evaluator should use `hostOS` for picking the path separator to use

### Additional Information

_No response_