aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--projects/pcl/Dockerfile45
-rwxr-xr-xprojects/pcl/build.sh19
-rw-r--r--projects/pcl/project.yaml2
3 files changed, 65 insertions, 1 deletions
diff --git a/projects/pcl/Dockerfile b/projects/pcl/Dockerfile
new file mode 100644
index 00000000..740a3b35
--- /dev/null
+++ b/projects/pcl/Dockerfile
@@ -0,0 +1,45 @@
+# Copyright 2021 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+################################################################################
+
+FROM gcr.io/oss-fuzz-base/base-builder
+RUN apt-get update && apt-get install -y make cmake autoconf \
+ automake libtool gettext pkg-config build-essential \
+ mercurial wget libeigen3-dev libflann-dev python python-dev
+
+# VTK deps
+RUN apt-get update && apt-get install -y \
+ libavcodec-dev libavformat-dev libavutil-dev libboost-dev \
+ libdouble-conversion-dev libeigen3-dev libexpat1-dev \
+ libfontconfig-dev libfreetype6-dev libgdal-dev libglew-dev \
+ libhdf5-dev libjpeg-dev libjsoncpp-dev liblz4-dev liblzma-dev \
+ libnetcdf-dev libnetcdf-cxx-legacy-dev libogg-dev libpng-dev \
+ libpython3-dev libqt5opengl5-dev libqt5x11extras5-dev libsqlite3-dev \
+ libswscale-dev libtheora-dev libtiff-dev libxml2-dev libxt-dev \
+ qtbase5-dev qttools5-dev zlib1g-dev
+
+# Install and build boost from source so we can have it use libc++
+RUN wget https://sourceforge.net/projects/boost/files/boost/1.70.0/boost_1_70_0.tar.gz && \
+ tar xzf boost_1_70_0.tar.gz && \
+ cd boost_1_70_0 && \
+ ./bootstrap.sh --with-toolset=clang && \
+ ./b2 clean && \
+ ./b2 toolset=clang cxxflags="-stdlib=libc++" linkflags="-stdlib=libc++" -j$(nproc) install && \
+ cd .. && \
+ rm -rf boost_1_70_0]
+
+RUN git clone --depth 1 https://github.com/PointCloudLibrary/pcl
+COPY build.sh $SRC/
+WORKDIR $SRC/
diff --git a/projects/pcl/build.sh b/projects/pcl/build.sh
new file mode 100755
index 00000000..c08aeac0
--- /dev/null
+++ b/projects/pcl/build.sh
@@ -0,0 +1,19 @@
+#!/bin/bash -eu
+# Copyright 2021 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+################################################################################
+
+chmod +x $SRC/pcl/test/fuzz/build.sh
+$SRC/pcl/test/fuzz/build.sh
diff --git a/projects/pcl/project.yaml b/projects/pcl/project.yaml
index 83d05068..2e2421b2 100644
--- a/projects/pcl/project.yaml
+++ b/projects/pcl/project.yaml
@@ -1,4 +1,4 @@
-help_url: "https://github.com/pointcloudlibrary/pcl"
+main_repo: "https://github.com/pointcloudlibrary/pcl"
homepage: "http://pointclouds.org"
language: c++
primary_contact: "kunal.tyagi.3.1994@gmail.com"