# Generated by rust2rpm 26 %bcond_without check %global debug_package %{nil} %global crate inc_orchestrator Name: rust-inc_orchestrator Version: 0.0.1 Release: 2%{?dist} Summary: Incubation repository for orchestration framework License: Apache-2.0 URL: https://github.com/eclipse-iceoryx/inc_orchestrator Source0: %{crate}-%{version}.tar.gz BuildRequires: rust-packaging >= 21 BuildRequires: rust-tracing-perfetto-sdk-layer-devel BuildRequires: rust-tracing-perfetto-sdk-schema-devel BuildRequires: rust-tracing-perfetto-sdk-sys-devel BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: gnuplot Requires: gnuplot # iceoryx2 dependencies from copr repository BuildRequires: rust-iceoryx2-devel BuildRequires: rust-iceoryx2-bb-container-devel BuildRequires: rust-iceoryx2-bb-derive-macros-devel BuildRequires: rust-iceoryx2-bb-elementary-devel BuildRequires: rust-iceoryx2-bb-elementary-traits-devel BuildRequires: rust-iceoryx2-bb-lock-free-devel BuildRequires: rust-iceoryx2-bb-memory-devel BuildRequires: rust-iceoryx2-bb-posix-devel BuildRequires: rust-iceoryx2-bb-system-types-devel BuildRequires: rust-iceoryx2-bb-testing-devel BuildRequires: rust-iceoryx2-bb-threadsafe-devel BuildRequires: rust-iceoryx2-pal-concurrency-sync-devel BuildRequires: rust-test_scenarios_rust+default-devel BuildRequires: testing-utils-devel %global _description %{expand: Score Inc Orchestrator is an incubation repository for orchestration framework providing async runtime, foundation libraries, and orchestration capabilities for high-performance applications. It includes logging/tracing support, testing frameworks, and integration with iceoryx2 for inter-process communication.} %description %{_description} %package -n %{crate} Summary: %{summary} License: Apache-2.0 %description -n %{crate} %{_description} %files -n %{crate} %license LICENSE %doc README.md %{_bindir}/xtask %package devel Summary: Development files for %{crate} BuildArch: noarch %description devel %{_description} This package contains library source intended for building other packages which use the "%{crate}" crate. %files devel %license LICENSE %doc README.md %{crate_instdir}/ # Individual crate packages for the workspace members %package -n rust-async_runtime+default-devel Summary: Async runtime crate BuildArch: noarch %description -n rust-async_runtime+default-devel Async runtime library for inc_orchestrator. %files -n rust-async_runtime+default-devel %ghost %{crate_instdir}/Cargo.toml %package -n rust-foundation+default-devel Summary: Foundation library crate BuildArch: noarch %description -n rust-foundation+default-devel Foundation library for inc_orchestrator. %files -n rust-foundation+default-devel %ghost %{crate_instdir}/Cargo.toml %package -n rust-orchestration+default-devel Summary: Orchestration framework crate BuildArch: noarch %description -n rust-orchestration+default-devel Orchestration framework library for inc_orchestrator. %files -n rust-orchestration+default-devel %ghost %{crate_instdir}/Cargo.toml %package -n rust-logging_tracing+default-devel Summary: Logging and tracing crate BuildArch: noarch %description -n rust-logging_tracing+default-devel Logging and tracing library for inc_orchestrator. %files -n rust-logging_tracing+default-devel %ghost %{crate_instdir}/Cargo.toml %package -n rust-testing+default-devel Summary: Testing framework crate BuildArch: noarch %description -n rust-testing+default-devel Testing framework library for inc_orchestrator. %files -n rust-testing+default-devel %ghost %{crate_instdir}/Cargo.toml %package -n rust-testing_macros+default-devel Summary: Testing macros crate BuildArch: noarch %description -n rust-testing_macros+default-devel Testing macros library for inc_orchestrator. %files -n rust-testing_macros+default-devel %ghost %{crate_instdir}/Cargo.toml %prep %autosetup -n %{crate}-%{version} -p1 # Replace tracing-perfetto git dependencies with version-based ones to use packaged dependencies sed -i 's/^tracing-perfetto-sdk-layer = { git.*/tracing-perfetto-sdk-layer = "0.12"/' Cargo.toml sed -i 's/^tracing-perfetto-sdk-schema = { git.*/tracing-perfetto-sdk-schema = "0.12"/' Cargo.toml sed -i 's/^tracing-perfetto-sdk-sys = { git.*/tracing-perfetto-sdk-sys = "0.12"/' Cargo.toml # Comment out the entire [patch.crates-io] section since we're using packaged dependencies sed -i '/^\[patch\.crates-io\]/,/^$/s/^/#/' Cargo.toml # Fix test_scenarios_rust dependency to use system package instead of git sed -i 's|test_scenarios_rust = { git = "https://github.com/qorix-group/testing_tools.git", tag = "v0.2.3" }|test_scenarios_rust = "0.2.3"|' component_integration_tests/rust_test_scenarios/Cargo.toml # Replace iceoryx2 git dependencies with version-based ones to use packaged versions sed -i 's/^iceoryx2 = { git.*/iceoryx2 = { version = "0.7", default-features = false }/' Cargo.toml sed -i 's/^iceoryx2-cal = { git.*/iceoryx2-cal = "0.7"/' Cargo.toml sed -i 's/^iceoryx2-bb-container = { git.*/iceoryx2-bb-container = "0.7"/' Cargo.toml sed -i 's/^iceoryx2-bb-derive-macros = { git.*/iceoryx2-bb-derive-macros = "0.7"/' Cargo.toml sed -i 's/^iceoryx2-bb-elementary = { git.*/iceoryx2-bb-elementary = "0.7"/' Cargo.toml sed -i 's/^iceoryx2-bb-elementary-traits = { git.*/iceoryx2-bb-elementary-traits = "0.7"/' Cargo.toml sed -i 's/^iceoryx2-bb-lock-free = { git.*/iceoryx2-bb-lock-free = "0.7"/' Cargo.toml sed -i 's/^iceoryx2-bb-memory = { git.*/iceoryx2-bb-memory = "0.7"/' Cargo.toml sed -i 's/^iceoryx2-bb-posix = { git.*/iceoryx2-bb-posix = "0.7"/' Cargo.toml sed -i 's/^iceoryx2-bb-system-types = { git.*/iceoryx2-bb-system-types = "0.7"/' Cargo.toml sed -i 's/^iceoryx2-bb-testing = { git.*/iceoryx2-bb-testing = "0.7"/' Cargo.toml sed -i 's/^iceoryx2-bb-threadsafe = { git.*/iceoryx2-bb-threadsafe = "0.7"/' Cargo.toml sed -i 's/^iceoryx2-pal-concurrency-sync = { git.*/iceoryx2-pal-concurrency-sync = "0.7"/' Cargo.toml echo "----------------------" cat Cargo.toml echo "----------------------" %cargo_prep %generate_buildrequires %cargo_generate_buildrequires %build export RUSTFLAGS="%build_rustflags" %cargo_build %{cargo_license_summary} %{cargo_license} > LICENSE.dependencies %install # Manual installation for workspace mkdir -p %{buildroot}%{_bindir} # Install xtask binary install -m 755 target/rpm/xtask %{buildroot}%{_bindir}/xtask # Install crate sources for -devel packages mkdir -p %{buildroot}%{crate_instdir} cp -a Cargo.toml %{buildroot}%{crate_instdir}/ cp -a src/ %{buildroot}%{crate_instdir}/ cp -a component_integration_tests/ %{buildroot}%{crate_instdir}/ %if %{with check} %check %cargo_test -- --lib --bins %endif %changelog * Thu Oct 02 2025 Assistant - 0.0.1-2 - Fix Cargo patch conflicts by properly commenting out [patch.crates-io] section - Add rust-testing-utils BuildRequires dependency - Fix test_scenarios_rust git dependency to use packaged version * Thu Sep 25 2025 Pierre-Yves Chibon - 0.0.1-1 - Initial package for rust-inc_orchestrator - Converted from custom Makefile to standard Rust packaging - Supports async runtime, foundation libraries, and orchestration framework - Includes iceoryx2 IPC integration and comprehensive logging/tracing