Skip to content

Commit

Permalink
Merge pull request #39 from tomsjansons/fix-win-release
Browse files Browse the repository at this point in the history
fix: msvc on win
  • Loading branch information
tomsjansons authored Jan 8, 2025
2 parents 4956c17 + 10dc8a7 commit 853ce33
Show file tree
Hide file tree
Showing 6 changed files with 76 additions and 26 deletions.
50 changes: 41 additions & 9 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,44 @@ jobs:
name: RELEASE_NOTES
path: RELEASE_NOTES.md

build-debug-viewer:
needs: prepare-version
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
targets: x86_64-unknown-linux-gnu

- name: Cache cargo and build files
uses: actions/cache@v4
with:
path: |
~/.cargo/bin/
~/.cargo/registry/
~/.cargo/git/
target/
key: ubuntu-x86_64-cargo-debug-viewer-${{ hashFiles('**/Cargo.lock') }}
restore-keys: |
ubuntu-x86_64-cargo-debug-viewer-
- name: Build with debug-viewer
run: cargo build --release --target x86_64-unknown-linux-gnu --features debug-viewer

- name: Prepare debug-viewer binary
run: |
mkdir dist
cp "target/x86_64-unknown-linux-gnu/release/ridi-router" "dist/ridi-router-debug-viewer-linux-amd64"
chmod +x "dist/ridi-router-debug-viewer-linux-amd64"
- name: Upload debug-viewer binary
uses: actions/upload-artifact@v3
with:
name: binary-debug-viewer-linux-amd64
path: dist/*

build:
needs: prepare-version
strategy:
Expand All @@ -69,10 +107,10 @@ jobs:
target: x86_64-unknown-linux-gnu
name: linux-amd64
- os: windows-latest
target: x86_64-pc-windows-gcc
target: x86_64-pc-windows-msvc
name: windows-amd64
# - os: windows-latest
# target: aarch64-pc-windows-gcc
# target: aarch64-pc-windows-msvc
# name: windows-arm64
- os: macos-latest
target: x86_64-apple-darwin
Expand All @@ -90,12 +128,6 @@ jobs:
with:
targets: ${{ matrix.target }}

- name: Install MinGW-w64 (Windows)
if: matrix.os == 'windows-latest'
uses: egor-tensin/setup-mingw@v2
with:
platform: x64

- name: Cache cargo and build files
uses: actions/cache@v4
with:
Expand Down Expand Up @@ -129,7 +161,7 @@ jobs:
path: dist/*

create-release:
needs: [prepare-version, build]
needs: [prepare-version, build, build-debug-viewer]
runs-on: ubuntu-latest
permissions:
contents: write
Expand Down
14 changes: 11 additions & 3 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 9 additions & 7 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,32 +3,34 @@ name = "ridi-router"
version = "0.5.1"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[features]
default = []
debug-viewer = ["dep:duckdb", "dep:qstring", "dep:sql-builder", "dep:tiny_http"]

[dependencies]
anyhow = "1.0.95"
bincode = "1.3.3"
clap = { version = "4.5.9", features = ["derive"] }
csv = "1.3.1"
derive-name = "1.1.0"
duckdb = { version = "1.1.1", features = ["bundled"] }
duckdb = { version = "1.1.1", features = ["bundled"] , optional = true }
geo = "0.29.3"
gpx = "0.10.0"
hdbscan = "0.9.0"
interprocess = "2.2.1"
# json-tools = "1.1.2"
json-tools = { git = "https://github.com/tomsjansons/json-tools.git", branch = "value-pairs" }
json-tools = "1.1.3"
osmpbfreader = "0.16.1"
qstring = "0.7.2"
qstring = { version = "0.7.2", optional = true }
rayon = "1.10.0"
serde = { version = "1.0.201", features = ["derive"] }
serde_derive = "1.0.201"
serde_json = "1.0.117"
smartstring = "1.0.1"
sql-builder = "3.1.1"
sql-builder = { version = "3.1.1", optional = true }
static_vcruntime = "2.0.0"
struct-field-names-as-array = "0.3.0"
thiserror = "2.0.9"
tiny_http = "0.12.0"
tiny_http = { version = "0.12.0", optional = true }
tracing = "0.1.40"
tracing-subscriber = { version = "0.3.18", features = ["json"] }
typeshare = { version = "1.0.4", default-features = false }
Expand Down
3 changes: 3 additions & 0 deletions src/build.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
fn main() {
static_vcruntime::metabuild();
}
1 change: 1 addition & 0 deletions src/debug/mod.rs
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
#[cfg(feature = "debug-viewer")]
pub mod viewer;
pub mod writer;
18 changes: 11 additions & 7 deletions src/router_runner.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,7 @@ use serde::{Deserialize, Serialize};
use tracing::info;

use crate::{
debug::{
viewer::{DebugViewer, DebugViewerError},
writer::DebugWriter,
},
debug::writer::DebugWriter,
ipc_handler::{IpcHandler, IpcHandlerError, ResponseMessage, RouteMessage, RouterResult},
map_data::graph::MapDataGraph,
map_data_cache::{MapDataCache, MapDataCacheError},
Expand Down Expand Up @@ -55,8 +52,11 @@ pub enum RouterRunnerError {
#[error("Failed to write cache: {error}")]
CacheWrite { error: MapDataCacheError },

#[cfg(feature = "debug-viewer")]
#[error("Failed run debug viewer: {error}")]
DebugViewer { error: DebugViewerError },
DebugViewer {
error: crate::debug::viewer::DebugViewerError,
},
}

#[derive(Parser)]
Expand Down Expand Up @@ -232,6 +232,7 @@ enum CliMode {
#[command(subcommand)]
routing_mode: RoutingMode,
},
#[cfg(feature = "debug-viewer")]
DebugViewer {
#[arg(long, value_name = "DIR")]
debug_dir: PathBuf,
Expand Down Expand Up @@ -489,8 +490,11 @@ impl RouterRunner {
socket_name.clone(),
rule_file.clone(),
),
CliMode::DebugViewer { debug_dir } => Ok(DebugViewer::run(debug_dir.clone())
.map_err(|error| RouterRunnerError::DebugViewer { error })?),
#[cfg(feature = "debug-viewer")]
CliMode::DebugViewer { debug_dir } => {
Ok(crate::debug::viewer::DebugViewer::run(debug_dir.clone())
.map_err(|error| RouterRunnerError::DebugViewer { error })?)
}
}
}
}

0 comments on commit 853ce33

Please sign in to comment.