Remove some crates and rename others

This commit is contained in:
Maximilian Ammann 2022-04-22 21:13:58 +02:00
parent b178518705
commit 24bd16c112
55 changed files with 76 additions and 144 deletions

View File

@ -19,8 +19,8 @@ runs:
run: sudo apt-get install -y libwayland-dev libxkbcommon-dev # Required for winit run: sudo apt-get install -y libwayland-dev libxkbcommon-dev # Required for winit
- name: Build - name: Build
shell: bash shell: bash
run: cargo build -p maplibre-example run: cargo build -p maplibre-demo
- uses: actions/upload-artifact@v2 - uses: actions/upload-artifact@v2
with: with:
name: maplibre-rs name: maplibre-rs
path: target/x86_64-unknown-linux-gnu/debug/maplibre-example path: target/x86_64-unknown-linux-gnu/debug/maplibre-demo

3
.gitignore vendored
View File

@ -6,9 +6,6 @@ target/
# Remove Cargo.lock from gitignore if creating an executable, leave it for libraries # Remove Cargo.lock from gitignore if creating an executable, leave it for libraries
# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html # More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
Cargo.lock Cargo.lock
!maplibre-android/Cargo.lock
!maplibre-apple/Cargo.lock
!maplibre-example/Cargo.lock
# These are backup files generated by rustfmt # These are backup files generated by rustfmt
**/*.rs.bk **/*.rs.bk

12
.idea/maplibre-rs.iml generated
View File

@ -5,17 +5,17 @@
<sourceFolder url="file://$MODULE_DIR$/examples" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/examples" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/libs/mbtiles/src" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/libs/mbtiles/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/maplibre-android/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/maplibre-apple/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/maplibre-benchmark/benches" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/maplibre-benchmark/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/maplibre-build-tools/src" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/maplibre-build-tools/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/maplibre-core/src" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/maplibre-core/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/maplibre-example/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/maplibre-style/src" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/maplibre-style/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/maplibre-tilejson/src" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/maplibre-tilejson/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/maplibre-web/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/maplibre/src" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/maplibre/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/android/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/apple/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/benchmarks/benches" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/benchmarks/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/maplibre-demo/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/web/src" isTestSource="false" />
<excludeFolder url="file://$MODULE_DIR$/target" /> <excludeFolder url="file://$MODULE_DIR$/target" />
</content> </content>
<orderEntry type="inheritedJdk" /> <orderEntry type="inheritedJdk" />

View File

@ -1,6 +1,6 @@
<component name="ProjectRunConfigurationManager"> <component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run desktop (release)" type="CargoCommandRunConfiguration" factoryName="Cargo Command"> <configuration default="false" name="Run demo (debug+enable-tracing)" type="CargoCommandRunConfiguration" factoryName="Cargo Command">
<option name="command" value="run -p maplibre-example --release" /> <option name="command" value="run -p maplibre-demo --features enable-tracing" />
<option name="workingDirectory" value="file://$PROJECT_DIR$" /> <option name="workingDirectory" value="file://$PROJECT_DIR$" />
<option name="channel" value="DEFAULT" /> <option name="channel" value="DEFAULT" />
<option name="requiredFeatures" value="true" /> <option name="requiredFeatures" value="true" />

View File

@ -1,6 +1,6 @@
<component name="ProjectRunConfigurationManager"> <component name="ProjectRunConfigurationManager">
<configuration default="false" name="Render" type="CargoCommandRunConfiguration" factoryName="Cargo Command"> <configuration default="false" name="Run demo (release)" type="CargoCommandRunConfiguration" factoryName="Cargo Command">
<option name="command" value="bench --bench render" /> <option name="command" value="run -p maplibre-demo --release" />
<option name="workingDirectory" value="file://$PROJECT_DIR$" /> <option name="workingDirectory" value="file://$PROJECT_DIR$" />
<option name="channel" value="DEFAULT" /> <option name="channel" value="DEFAULT" />
<option name="requiredFeatures" value="true" /> <option name="requiredFeatures" value="true" />

View File

@ -1,6 +1,6 @@
<component name="ProjectRunConfigurationManager"> <component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run desktop (debug+enable-tracing)" type="CargoCommandRunConfiguration" factoryName="Cargo Command"> <configuration default="false" name="Run demo (release+enable-tracing)" type="CargoCommandRunConfiguration" factoryName="Cargo Command">
<option name="command" value="run -p maplibre-example --features enable-tracing" /> <option name="command" value="run -p maplibre-demo --release --features enable-tracing" />
<option name="workingDirectory" value="file://$PROJECT_DIR$" /> <option name="workingDirectory" value="file://$PROJECT_DIR$" />
<option name="channel" value="DEFAULT" /> <option name="channel" value="DEFAULT" />
<option name="requiredFeatures" value="true" /> <option name="requiredFeatures" value="true" />

View File

@ -1,18 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run desktop (release+enable-tracing)" type="CargoCommandRunConfiguration" factoryName="Cargo Command">
<option name="command" value="run -p maplibre-example --release --features enable-tracing" />
<option name="workingDirectory" value="file://$PROJECT_DIR$" />
<option name="channel" value="DEFAULT" />
<option name="requiredFeatures" value="true" />
<option name="allFeatures" value="false" />
<option name="emulateTerminal" value="false" />
<option name="withSudo" value="false" />
<option name="backtrace" value="SHORT" />
<envs />
<option name="isRedirectInput" value="false" />
<option name="redirectInputPath" value="" />
<method v="2">
<option name="CARGO.BUILD_TASK_PROVIDER" enabled="true" />
</method>
</configuration>
</component>

View File

@ -1,18 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Tesselation" type="CargoCommandRunConfiguration" factoryName="Cargo Command">
<option name="command" value="bench --bench tessellation" />
<option name="workingDirectory" value="file://$PROJECT_DIR$" />
<option name="channel" value="DEFAULT" />
<option name="requiredFeatures" value="true" />
<option name="allFeatures" value="false" />
<option name="emulateTerminal" value="false" />
<option name="withSudo" value="false" />
<option name="backtrace" value="SHORT" />
<envs />
<option name="isRedirectInput" value="false" />
<option name="redirectInputPath" value="" />
<method v="2">
<option name="CARGO.BUILD_TASK_PROVIDER" enabled="true" />
</method>
</configuration>
</component>

View File

@ -5,17 +5,14 @@ resolver = "2"
members = [ members = [
"maplibre", "maplibre",
"maplibre-core", "maplibre-core",
"maplibre-android",
"maplibre-apple",
"maplibre-web",
"maplibre-style",
"maplibre-tilejson",
"maplibre-benchmark",
"maplibre-build-tools", "maplibre-build-tools",
"maplibre-demo",
"maplibre-example", "android",
"apple",
"web",
"benchmarks",
] ]
[profile.release] [profile.release]

View File

@ -1,9 +1,10 @@
[package] [package]
name = "maplibre-android" name = "android"
version = "0.1.0" version = "0.1.0"
description = "" description = ""
categories = [] categories = []
edition = "2021" edition = "2021"
publish = false
[dependencies] [dependencies]
maplibre = { path = "../maplibre" } maplibre = { path = "../maplibre" }
@ -13,6 +14,7 @@ env_logger = "0.9"
ndk-glue = "0.5.0" # version is required by winit ndk-glue = "0.5.0" # version is required by winit
[lib] [lib]
name = "maplibre_android"
crate-type = ["rlib", "cdylib"] crate-type = ["rlib", "cdylib"]
[package.metadata.android] [package.metadata.android]

View File

@ -4,7 +4,7 @@ pub use std::time::Instant;
// TODO clippy // TODO clippy
// #[cfg(not(target_os = "android"))] // #[cfg(not(target_os = "android"))]
// compile_error!("maplibre-android works only on android."); // compile_error!("android works only on android.");
#[cfg_attr(target_os = "android", ndk_glue::main(backtrace = "on"))] #[cfg_attr(target_os = "android", ndk_glue::main(backtrace = "on"))]
pub fn main() { pub fn main() {

View File

@ -1,13 +1,15 @@
[package] [package]
name = "maplibre-apple" name = "apple"
version = "0.1.0" version = "0.1.0"
description = "" description = ""
categories = [] categories = []
edition = "2021" edition = "2021"
publish = false
[dependencies] [dependencies]
maplibre = { path = "../maplibre" } maplibre = { path = "../maplibre" }
env_logger = "0.9" env_logger = "0.9"
[lib] [lib]
name = "maplibre_apple"
crate-type = ["staticlib"] crate-type = ["staticlib"]

View File

@ -4,7 +4,7 @@ pub use std::time::Instant;
// TODO clippy // TODO clippy
// #[cfg(not(any(target_os = "macos", target_os = "ios")))] // #[cfg(not(any(target_os = "macos", target_os = "ios")))]
// compile_error!("maplibre-apple works only on macOS and iOS."); // compile_error!("apple works only on macOS and iOS.");
#[no_mangle] #[no_mangle]
pub fn maplibre_apple_main() { pub fn maplibre_apple_main() {

View File

@ -27,10 +27,10 @@ nightly-toolchain:
rustup component add rust-src --toolchain $RUSTUP_TOOLCHAIN rustup component add rust-src --toolchain $RUSTUP_TOOLCHAIN
webpack-webgl-production: nightly-toolchain webpack-webgl-production: nightly-toolchain
cd maplibre-web/web && npm install && npm run webgl-production-build cd web/web && npm install && npm run webgl-production-build
webpack-production: nightly-toolchain webpack-production: nightly-toolchain
cd maplibre-web/web && npm install && npm run production-build cd web/web && npm install && npm run production-build
# TODO # TODO
# wasm-pack-webgl: nightly-toolchain # wasm-pack-webgl: nightly-toolchain
@ -65,10 +65,10 @@ install-cargo-apk:
cargo install cargo-apk cargo install cargo-apk
run-apk: nightly-toolchain install-cargo-apk run-apk: nightly-toolchain install-cargo-apk
cargo apk run -p maplibre-android --lib -Zbuild-std cargo apk run -p android --lib -Zbuild-std
build-apk: nightly-toolchain install-cargo-apk build-apk: nightly-toolchain install-cargo-apk
cargo apk build -p maplibre-android --lib -Zbuild-std cargo apk build -p android --lib -Zbuild-std
# language=bash # language=bash
print-android-env: print-android-env:

View File

@ -52,9 +52,6 @@ raw-window-handle = "0.4"
tracing = { version = "0.1" } tracing = { version = "0.1" }
tracing-subscriber = { version = "0.3", optional = true } tracing-subscriber = { version = "0.3", optional = true }
maplibre-style = { path = "../maplibre-style" }
maplibre-tilejson = { path = "../maplibre-tilejson" }
cgmath = "0.18" cgmath = "0.18"
geo = { version = "0.19" } geo = { version = "0.19" }
@ -80,5 +77,9 @@ bytemuck_derive = "1.0"
include_dir = "0.7.2" include_dir = "0.7.2"
serde = { version = "1.0", features = ["derive"] }
csscolorparser = { version = "0.5", features = ["serde", "cint"]}
cint = "0.2"
[build-dependencies] [build-dependencies]
maplibre-build-tools = { path = "../maplibre-build-tools" } maplibre-build-tools = { path = "../maplibre-build-tools" }

View File

@ -21,6 +21,28 @@ fn clean_static_tiles() -> PathBuf {
out out
} }
/*use std::fs::File;
use std::io::BufReader;
use serde_json::Value;*/
fn generate_type_def() -> Option<u32> {
/* let f = File::open("style-spec-v8.json").unwrap();
let mut reader = BufReader::new(f);
let result = serde_json::from_reader::<_, Value>(&mut reader).unwrap();
let spec_root = result.as_object()?;
let version = &spec_root["$version"].as_i64()?;
let root = &spec_root["$root"].as_object()?;
for x in spec_root {
}
println!("cargo:warning={:?}", version);*/
Some(5)
}
fn embed_tiles_statically() { fn embed_tiles_statically() {
let out = clean_static_tiles(); let out = clean_static_tiles();

View File

@ -6,7 +6,7 @@ use std::fmt::Formatter;
use cgmath::num_traits::Pow; use cgmath::num_traits::Pow;
use cgmath::{AbsDiffEq, Matrix4, Point3, Vector3}; use cgmath::{AbsDiffEq, Matrix4, Point3, Vector3};
use maplibre_style::source::TileAddressingScheme; use crate::style::source::TileAddressingScheme;
use crate::util::math::{div_floor, Aabb2}; use crate::util::math::{div_floor, Aabb2};
use crate::util::SignificantlyDifferent; use crate::util::SignificantlyDifferent;

View File

@ -1,6 +1,6 @@
use crate::coords::WorldTileCoords; use crate::coords::WorldTileCoords;
use crate::error::Error; use crate::error::Error;
use maplibre_style::source::TileAddressingScheme; use crate::style::source::TileAddressingScheme;
pub struct HttpSourceClient { pub struct HttpSourceClient {
#[cfg(not(target_arch = "wasm32"))] #[cfg(not(target_arch = "wasm32"))]

View File

@ -11,6 +11,8 @@ pub(crate) mod render;
pub(crate) mod tessellation; pub(crate) mod tessellation;
pub(crate) mod util; pub(crate) mod util;
pub(crate) mod winit; pub(crate) mod winit;
pub(crate) mod style;
pub(crate) mod tilejson;
// Used for benchmarking // Used for benchmarking
pub mod benchmarking; pub mod benchmarking;
@ -20,7 +22,7 @@ use crate::map_state::{MapState, Runnable};
use crate::render::render_state::RenderState; use crate::render::render_state::RenderState;
use crate::window::{WindowFactory, WindowSize}; use crate::window::{WindowFactory, WindowSize};
pub use io::scheduler::ScheduleMethod; pub use io::scheduler::ScheduleMethod;
use maplibre_style::Style; use crate::style::Style;
pub use platform::schedule_method::*; pub use platform::schedule_method::*;
pub struct Map<W, E> { pub struct Map<W, E> {

View File

@ -17,7 +17,7 @@ use crate::io::source_client::{HttpSourceClient, SourceClient};
use crate::io::tile_cache::TileCache; use crate::io::tile_cache::TileCache;
use crate::io::tile_request_state::TileRequestState; use crate::io::tile_request_state::TileRequestState;
use crate::io::{TessellateMessage, TileRequest, TileTessellateMessage}; use crate::io::{TessellateMessage, TileRequest, TileTessellateMessage};
use maplibre_style::Style; use crate::style::Style;
use wgpu::SurfaceError; use wgpu::SurfaceError;
pub trait Runnable<E> { pub trait Runnable<E> {

View File

@ -4,7 +4,7 @@ use std::marker::PhantomData;
use std::mem::size_of; use std::mem::size_of;
use std::ops::Range; use std::ops::Range;
use maplibre_style::layer::StyleLayer; use crate::style::layer::StyleLayer;
use wgpu::BufferAddress; use wgpu::BufferAddress;
use crate::coords::{Quadkey, WorldTileCoords}; use crate::coords::{Quadkey, WorldTileCoords};

View File

@ -5,7 +5,7 @@ use std::{cmp, iter};
use tracing; use tracing;
use wgpu::{Buffer, Limits, Queue}; use wgpu::{Buffer, Limits, Queue};
use maplibre_style::Style; use crate::style::Style;
use crate::coords::{ViewRegion, Zoom}; use crate::coords::{ViewRegion, Zoom};

View File

@ -2,6 +2,6 @@ pub mod layer;
pub mod source; pub mod source;
mod style; mod style;
pub use crate::style::*; pub use style::*;
pub use cint::*; pub use cint::*;

View File

@ -1,5 +1,5 @@
use crate::layer::{LayerPaint, LinePaint, StyleLayer}; use crate::style::layer::{LayerPaint, LinePaint, StyleLayer};
use crate::source::Source; use crate::style::source::Source;
use csscolorparser::Color; use csscolorparser::Color;
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use std::collections::HashMap; use std::collections::HashMap;

View File

@ -0,0 +1,3 @@
mod tilejson;
pub use tilejson::*;

View File

@ -1,5 +1,5 @@
[package] [package]
name = "maplibre-example" name = "maplibre-demo"
version = "0.1.0" version = "0.1.0"
description = "" description = ""
categories = [] categories = []

View File

View File

@ -1,19 +0,0 @@
[package]
name = "maplibre-style"
version = "0.1.0"
description = "A library for decoding style specs"
readme = "README.md"
categories = ["encoding"]
edition = "2021"
build = "build.rs"
[dependencies]
serde = { version = "1.0", features = ["derive"] }
csscolorparser = { version = "0.5", features = ["serde", "cint"]}
cint = "0.2"
[build-dependencies]
serde_json = "1.0"
[dev-dependencies]
serde_json = "1.0"

View File

@ -1,25 +0,0 @@
/*use std::fs::File;
use std::io::BufReader;
use serde_json::Value;*/
fn generate_type_def() -> Option<u32> {
/* let f = File::open("style-spec-v8.json").unwrap();
let mut reader = BufReader::new(f);
let result = serde_json::from_reader::<_, Value>(&mut reader).unwrap();
let spec_root = result.as_object()?;
let version = &spec_root["$version"].as_i64()?;
let root = &spec_root["$root"].as_object()?;
for x in spec_root {
}
println!("cargo:warning={:?}", version);*/
Some(5)
}
fn main() {
generate_type_def();
}

View File

View File

@ -1,12 +0,0 @@
[package]
name = "maplibre-tilejson"
version = "0.1.0"
description = "A library for decoding and encoding tilejson specs"
categories = []
edition = "2021"
[dependencies]
serde = { version = "1.0", features = ["derive"] }
[dev-dependencies]
serde_json = "1.0"

View File

@ -1,3 +0,0 @@
mod tilejson;
pub use crate::tilejson::*;

View File

@ -1,9 +1,10 @@
[package] [package]
name = "maplibre-web" name = "web"
version = "0.1.0" version = "0.1.0"
description = "" description = ""
categories = [] categories = []
edition = "2021" edition = "2021"
publish = false
[features] [features]
web-webgl = ["maplibre-core/web-webgl"] web-webgl = ["maplibre-core/web-webgl"]

View File

@ -2,4 +2,4 @@ pub use maplibre_core::*;
// TODO clippy // TODO clippy
// #[cfg(not(target_arch = "wasm32"))] // #[cfg(not(target_arch = "wasm32"))]
// compile_error!("maplibre-web works only on wasm32."); // compile_error!("web works only on wasm32.");