summaryrefslogtreecommitdiff
path: root/ament_cmake.spec
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2026-10-09 03:20:08 +0000
committerCoprDistGit <infra@openeuler.org>2026-10-09 03:20:08 +0000
commitad16a5f96b1fdd067a3bc0c16883df05ee400fd3 (patch)
treea563233e5ab30b79ab0a07d96df09488ac5e35e4 /ament_cmake.spec
parent9c7eff0240372fb53a7587486313d4a1e227b990 (diff)
automatic import of ament_cmake
Diffstat (limited to 'ament_cmake.spec')
-rw-r--r--ament_cmake.spec91
1 files changed, 91 insertions, 0 deletions
diff --git a/ament_cmake.spec b/ament_cmake.spec
new file mode 100644
index 0000000..2dba03a
--- /dev/null
+++ b/ament_cmake.spec
@@ -0,0 +1,91 @@
+# topdir: ament_cmake-2.9.2
+# ROS 2 ament_cmake meta-package: 22 CMake-based sub-packages built in staged order
+# Build type: ament_cmake (CMake with ROS ament macros)
+# Staged build: sub-packages built in dependency order, each installed to staging
+# area so subsequent packages can find_package() their dependencies
+
+%global debug_package %{nil}
+%global __provides_exclude_from ^/opt/ros/.*
+%global __requires_exclude_from ^/opt/ros/.*
+%global __os_install_post %{nil}
+
+Name: ament_cmake
+Version: 2.9.2
+Release: 1%{?dist}
+Summary: The entry point package for the ament buildsystem in CMake
+
+License: Apache-2.0
+URL: https://github.com/ament/ament_cmake
+Source0: https://github.com/ament/ament_cmake/archive/3148e68c3a0fe34cec40c6563c9020261f010fab.tar.gz#/ament_cmake-%{version}.tar.gz
+
+BuildArch: noarch
+
+BuildRequires: cmake
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-ament-package
+BuildRequires: python3-catkin-pkg-modules
+
+%description
+The entry point package for the ament buildsystem in CMake.
+Contains the core CMake macros and utilities used by ROS 2 packages
+to build with the ament build system. This meta-package aggregates
+all ament_cmake sub-packages including ament_cmake_core,
+ament_cmake_export_*, ament_cmake_test, ament_cmake_python, and others.
+
+%prep
+%autosetup -n %{name}-%{version} -p1
+
+%build
+# Staged build: each sub-package built and installed to staging area
+# so subsequent packages can find_package() their dependencies
+STAGING=%{_builddir}/staging
+ROS_PREFIX=/opt/ros/humble
+
+# Build order (topological by find_package dependencies):
+# Level 0: ament_cmake_core (self-referencing cmake dir, no ament deps)
+# Level 1: packages depending only on ament_cmake_core
+# Level 2: packages depending on level 1 (e.g. ament_cmake_test -> python)
+# Level 3: packages depending on level 2 (e.g. ament_cmake_auto -> ament_cmake)
+for pkg in \
+ ament_cmake_core \
+ ament_cmake_version \
+ ament_cmake_export_dependencies \
+ ament_cmake_export_definitions \
+ ament_cmake_export_include_directories \
+ ament_cmake_export_libraries \
+ ament_cmake_export_link_flags \
+ ament_cmake_export_targets \
+ ament_cmake_libraries \
+ ament_cmake_include_directories \
+ ament_cmake_target_dependencies \
+ ament_cmake_python \
+ ament_cmake_gtest \
+ ament_cmake_gmock \
+ ament_cmake_google_benchmark \
+ ament_cmake_gen_version_h \
+ ament_cmake_vendor_package \
+ ament_cmake_test \
+ ament_cmake_pytest \
+ ament_cmake_python_test \
+ ament_cmake \
+ ament_cmake_auto
+do
+ cmake -S ${pkg} -B build/${pkg} \
+ -DCMAKE_INSTALL_PREFIX=${ROS_PREFIX} \
+ -DCMAKE_PREFIX_PATH=${STAGING}${ROS_PREFIX} \
+ -DBUILD_TESTING=OFF
+ cmake --build build/${pkg}
+ DESTDIR=${STAGING} cmake --install build/${pkg}
+done
+
+%install
+cp -a %{_builddir}/staging/opt %{buildroot}/opt
+
+%files
+%license LICENSE
+/opt/ros/humble/
+
+%changelog
+* Fri Oct 09 2026 openEuler Builder <builder@openeuler.org> - 2.9.2-1
+- Initial package