blob: 1d5178574c551206a0be745b6f1b56e0e5c3fcf7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
|
# Maintainer: Achmad Fathoni<fathoni.id(at)gmail.com>
pkgdesc="ROS - Cartographer is a system that provides real-time simultaneous localization and mapping (SLAM) in 2D and 3D across multiple platforms and sensor configurations."
url='https://github.com/googlecartographer/cartographer_ros'
pkgname='ros-noetic-cartographer-ros-git'
pkgver=r584.151c563
arch=('i686' 'x86_64' 'aarch64' 'armv7h' 'armv6h')
pkgrel=2
license=('Apache 2.0')
provides=(${pkgname::-4})
ros_makedepends=(
ros-noetic-tf2-ros
ros-noetic-cartographer-ros-msgs
ros-noetic-roslib
ros-noetic-eigen-conversions
ros-noetic-tf2
ros-noetic-pcl-conversions
ros-noetic-message-runtime
ros-noetic-cartographer
ros-noetic-urdf
ros-noetic-rosbag
ros-noetic-sensor-msgs
ros-noetic-geometry-msgs
ros-noetic-robot-state-publisher
ros-noetic-nav-msgs
ros-noetic-roslaunch
ros-noetic-visualization-msgs
ros-noetic-tf2-eigen
ros-noetic-catkin
ros-noetic-std-msgs
ros-noetic-roscpp
)
makedepends=(
cmake
ros-build-tools
google-glog
protobuf
gcc
python-sphinx
gflags
gmock
pcl
${ros_makedepends[@]}
)
ros_depends=(
ros-noetic-tf2-ros
ros-noetic-cartographer-ros-msgs
ros-noetic-roslib
ros-noetic-eigen-conversions
ros-noetic-tf2
ros-noetic-pcl-conversions
ros-noetic-message-runtime
ros-noetic-cartographer
ros-noetic-urdf
ros-noetic-rosbag
ros-noetic-sensor-msgs
ros-noetic-geometry-msgs
ros-noetic-robot-state-publisher
ros-noetic-nav-msgs
ros-noetic-roslaunch
ros-noetic-visualization-msgs
ros-noetic-tf2-eigen
ros-noetic-std-msgs
ros-noetic-roscpp
)
depends=(
google-glog
gflags
pcl
${ros_depends[@]}
)
source=(
$pkgname::git://github.com/cartographer-project/cartographer_ros.git
CMakeLists.patch
)
sha256sums=('SKIP'
'18bafe6a7b7c0a894ce2055ace65925dedab29aab0183f56ba01cb8937013b86')
pkgver() {
cd "$pkgname"
printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
}
prepare() {
cd "${srcdir}/${pkgname}/cartographer_ros"
patch -uN CMakeLists.txt ../../CMakeLists.patch || return 1
}
build() {
# Use ROS environment variables
source /usr/share/ros-build-tools/clear-ros-env.sh
[ -f /opt/ros/noetic/setup.bash ] && source /opt/ros/noetic/setup.bash
# Create build directory
[ -d ${srcdir}/build ] || mkdir ${srcdir}/build
cd ${srcdir}/build
# Build project
cmake ${srcdir}/${pkgname}/cartographer_ros \
-DCMAKE_BUILD_TYPE=Release \
-DCATKIN_ENABLE_TESTING=0 \
-DCATKIN_BUILD_BINARY_PACKAGE=ON \
-DCMAKE_INSTALL_PREFIX=/opt/ros/noetic \
-DPYTHON_EXECUTABLE=/usr/bin/python3 \
-DPYTHON_INCLUDE_DIR=/usr/include/python3.9 \
-DPYTHON_LIBRARY=/usr/lib/libpython3.9.so \
-DPYTHON_BASENAME=-python3.9 \
-DSETUPTOOLS_DEB_LAYOUT=OFF \
-DCMAKE_CXX_STANDARD=17
make
}
package() {
cd "${srcdir}/build"
make DESTDIR="${pkgdir}/" install
}
|