SHA256
1
0
forked from pool/PDAL

Accepting request 678419 from home:bruno_friedmann:branches:Application:Geo

- Remove FindLASzip-cmake.patch with new laszip 3.2.2 

- Update to 1.8.0 version (fix broken build with python3.7)
  + changelog https://github.com/PDAL/PDAL/releases/tag/1.8.0
  + important issue about las 1.4 compressed with laszip
- Packaging
  + refresh patch FindLASzip-cmake.patch
  + spec-cleaner minimal
  + bump SONAME to 8.0.0, SOVER to 7
  + cleanup changes (trailling space)
  + delete orphan f717a4c.patch
  + add new plugin libpdal_plugin_kernel_fauxplugin

OBS-URL: https://build.opensuse.org/request/show/678419
OBS-URL: https://build.opensuse.org/package/show/Application:Geo/PDAL?expand=0&rev=9
This commit is contained in:
Bruno Friedmann 2019-02-24 09:15:38 +00:00 committed by Git OBS Bridge
parent f4f20e21ab
commit 8262873898
8 changed files with 98 additions and 164 deletions

View File

@ -1,18 +0,0 @@
diff -rup a/cmake/modules/FindLASzip.cmake b/cmake/modules/FindLASzip.cmake
--- a/cmake/modules/FindLASzip.cmake
+++ b/cmake/modules/FindLASzip.cmake
@@ -49,11 +49,13 @@ FIND_LIBRARY(LASZIP_LIBRARY
NAMES ${LASZIP_NAMES}
PATHS
/usr/lib
+ /usr/lib64
/usr/local/lib
+ /usr/local/lib64
${OSGEO4W_ROOT_DIR}/lib)
# Comment out laszip.hpp version info
-SET(LASZIP_VERSION_H "${LASZIP_INCLUDE_DIR}/laszip/laszip_api_version.h")
+SET(LASZIP_VERSION_H "${LASZIP_INCLUDE_DIR}/laszip_api_version.h")
IF(LASZIP_INCLUDE_DIR AND EXISTS ${LASZIP_VERSION_H})
SET(LASZIP_VERSION 0)

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f5dd28c7f25bcd13c460a845860eded67446f3abb6b6a2e2f394a776ad03428a
size 68321591

View File

@ -1 +0,0 @@
a89710005fd54e6d2436955e2e542838 PDAL-1.7.2RC3-src.tar.gz

3
PDAL-1.8.0-src.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:cf5952ab0b9ba1fc07ed879128c64d21b6a22e32166a0fe03072a9589adc75d7
size 76466623

View File

@ -0,0 +1 @@
f2fb81abbd6b9a2fab0b7cb7bd025c86 PDAL-1.8.0-src.tar.gz

View File

@ -1,3 +1,22 @@
-------------------------------------------------------------------
Wed Feb 20 09:30:33 UTC 2019 - Bruno Friedmann <bruno@ioda-net.ch>
- Remove FindLASzip-cmake.patch with new laszip 3.2.2
-------------------------------------------------------------------
Mon Feb 18 17:57:26 UTC 2019 - Bruno Friedmann <bruno@ioda-net.ch>
- Update to 1.8.0 version (fix broken build with python3.7)
+ changelog https://github.com/PDAL/PDAL/releases/tag/1.8.0
+ important issue about las 1.4 compressed with laszip
- Packaging
+ refresh patch FindLASzip-cmake.patch
+ spec-cleaner minimal
+ bump SONAME to 8.0.0, SOVER to 7
+ cleanup changes (trailling space)
+ delete orphan f717a4c.patch
+ add new plugin libpdal_plugin_kernel_fauxplugin
-------------------------------------------------------------------
Mon Jun 11 12:47:56 UTC 2018 - bruno@ioda-net.ch

100
PDAL.spec
View File

@ -1,8 +1,8 @@
#
# spec file for package PDAL
#
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2018 Friedmann Bruno, Ioda-Net Sàrl, Charmoille, Switzerland.
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2019 Friedmann Bruno, Ioda-Net Sàrl, Charmoille, Switzerland.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -13,81 +13,63 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
#@TODO: plugins PCL P2G
# Mandatory : build -doc appart (too much texlive used otherwise)
# Temporary fix for Leap 42.3
%if ! %{defined make_build}
%define make_build /usr/bin/make %{?_smp_mflags}
%endif
# Ask upstream to clarify seems sofull_version is build version
%define soname 6
%define sovers 6
%define sofull_version 7.0.2
%define soname 7
%define sovers 7
%define sofull_version 8.0.0
%define lname pdal
# Temporary fix for Leap 42.3
%if ! %{defined make_build}
%define make_build %{_bindir}/make %{?_smp_mflags}
%endif
Name: PDAL
Version: 1.7.2
Version: 1.8.0
Release: 0
Summary: Point Data Abstraction Library. GDAL for point cloud data
License: BSD-3-Clause
Group: Productivity/Graphics/CAD
Url: http://www.pdal.io/
Source0: http://download.osgeo.org/pdal/%{name}-%{version}-src.tar.gz
Source1: http://download.osgeo.org/pdal/%{name}-%{version}-src.tar.gz.md5
URL: https://www.pdal.io/
Source0: https://github.com/PDAL/PDAL/releases/download/%{version}/%{name}-%{version}-src.tar.gz
Source1: https://github.com/PDAL/PDAL/releases/download/%{version}/%{name}-%{version}-src.tar.gz.md5
# Source2: https://www.pdal.io/PDAL.pdf
Patch0: FindLASzip-cmake.patch
# Override the problem of libpsl5 in tumbleweed
%if 0%{?suse_version} >= 1330
BuildRequires: libpsl5
%endif
BuildRequires: bash-completion
%if 0%{?suse_version} > 1325
BuildRequires: libboost_headers-devel
BuildRequires: libboost_filesystem-devel
BuildRequires: libboost_program_options-devel
%else
BuildRequires: boost-devel
%endif
BuildRequires: cairo-devel
BuildRequires: cmake >= 2.8
BuildRequires: cunit-devel
BuildRequires: curl-devel
BuildRequires: fdupes
BuildRequires: freeglut-devel
# Needed for tests
BuildRequires: gdal
BuildRequires: gcc-c++
# For tests but don't exist for Leap 42.3
# BuildRequires: gtest
BuildRequires: libgdal-devel
BuildRequires: libgeos-devel
BuildRequires: gdal
BuildRequires: geotiff-devel
BuildRequires: jsoncpp-devel
# We need 3.1.1+ for 1.6
BuildRequires: laszip-devel
# For tests but don't exist for Leap 42.3
# BuildRequires: gtest
BuildRequires: libgdal-devel
BuildRequires: libgeos-devel
BuildRequires: libproj-devel
BuildRequires: libspatialindex-devel
BuildRequires: libtiff-devel
BuildRequires: libxml2-devel
BuildRequires: xz-devel
BuildRequires: pkg-config
BuildRequires: pkgconfig(libpq)
BuildRequires: pkgconfig
BuildRequires: python3
# We don't have it yet
# BuildRequires: pointcloud-devel
# Python extension will be build separately.
BuildRequires: python3-Cython
BuildRequires: python3
BuildRequires: python3-devel
BuildRequires: python3-numpy-devel
BuildRequires: python3-setuptools
BuildRequires: sqlite3-devel
BuildRequires: xz-devel
BuildRequires: zlib-devel
BuildRequires: pkgconfig(libpq)
# Needed for documentation but we don't build it.
# BuildRequires: dblatex
# BuildRequires: doxygen
@ -99,10 +81,19 @@ BuildRequires: zlib-devel
# BuildRequires: python-sphinxcontrib-breathe
# Doesn't exist on obs BuildRequires: python3-breathe
Requires: lib%{name}%{soname} = %{version}
Provides: pdal = %{version}
Recommends: bash-completion
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Provides: pdal = %{version}
# Override the problem of libpsl5 in tumbleweed
%if 0%{?suse_version} >= 1330
BuildRequires: libpsl5
%endif
%if 0%{?suse_version} > 1325
BuildRequires: libboost_filesystem-devel
BuildRequires: libboost_headers-devel
BuildRequires: libboost_program_options-devel
%else
BuildRequires: boost-devel
%endif
%description
PDAL is a C++ BSD library for translating and manipulating point cloud data.
@ -124,9 +115,9 @@ https://www.pdal.io
This package provides tools & utilities using PDAL library libpdal
%package -n lib%{name}%{soname}
Summary: Point Data Abstraction Library. GDAL for point cloud data
Provides: lib%{lname}%{soname}
Provides: libpdal%{soname}
Summary: Point Data Abstraction Library. GDAL for point cloud data
%description -n lib%{name}%{soname}
PDAL is a C++ BSD library for translating and manipulating point cloud data.
@ -145,7 +136,6 @@ and others. Find out more about who contributes to PDAL at Contributors.
Website :
https://www.pdal.io
Note
PDAL should not be confused with PCL (Point Cloud Library).
PCL is a library specifically designed to provide algorithmic analysis and
@ -155,17 +145,16 @@ facilities, but does not in general attempt to duplicate its capabilites.
PDAL is focused more on data access and translation than PCL. See
filters.pclblock for more background.
%package -n %{name}-devel
Summary: Development files and tools for PDAL applications
Group: Development/Libraries/C and C++
Requires: lib%{name}%{soname} = %{version}
Requires: libboost_headers-devel
Requires: libboost_filesystem-devel
Requires: libboost_program_options-devel
Requires: cmake
Requires: zlib-devel
Requires: lib%{name}%{soname} = %{version}
Requires: libboost_filesystem-devel
Requires: libboost_headers-devel
Requires: libboost_program_options-devel
Requires: xz-devel
Requires: zlib-devel
Provides: lib%{name}%{soname}-devel = %{version}
Provides: lib%{lname}%{soname}-devel = %{version}
Provides: lib%{name}-devel
@ -187,9 +176,8 @@ PDAL algorithms.
%prep
%setup -q -n %{name}-%{version}-src
%patch0 -p1
# Fix all wrong shebang and move to python3 only
find . -type f -iname "*.py" -exec sed 's,^#!/usr/bin/env python,#!/usr/bin/python3,' {} \;
find . -type f -iname "*.py" -exec sed 's,^#!%{_bindir}/env python,#!%{_bindir}/python3,' {} \;
#Cleanup spurious perms in documentation
find ./doc/ -type f -exec chmod -v 0644 {} \;
@ -269,6 +257,7 @@ find %{buildroot} -type f -name "*.la" -o -name "*.a" -delete -print
%{_libdir}/libpdal_base.so.%{sofull_version}
# Plugins
%{_libdir}/libpdal_plugin_filter_python.so.%{sofull_version}
%{_libdir}/libpdal_plugin_kernel_fauxplugin.so.%{sofull_version}
%{_libdir}/libpdal_plugin_reader_numpy.so.%{sofull_version}
%{_libdir}/libpdal_plugin_reader_sqlite.so.%{sofull_version}
%{_libdir}/libpdal_plugin_writer_sqlite.so.%{sofull_version}
@ -276,7 +265,6 @@ find %{buildroot} -type f -name "*.la" -o -name "*.a" -delete -print
%{_libdir}/libpdal_plugin_writer_pgpointcloud.so.%{sofull_version}
%{_libdir}/libpdal_util.so.%{sofull_version}
%files -n %{name}-devel
%defattr(-,root,root,-)
%license LICENSE.txt
@ -286,6 +274,8 @@ find %{buildroot} -type f -name "*.la" -o -name "*.a" -delete -print
%{_libdir}/libpdal_base.so
%{_libdir}/libpdal_plugin_filter_python.so
%{_libdir}/libpdal_plugin_filter_python.so.%{sovers}
%{_libdir}/libpdal_plugin_kernel_fauxplugin.so
%{_libdir}/libpdal_plugin_kernel_fauxplugin.so.%{sovers}
%{_libdir}/libpdal_plugin_reader_numpy.so
%{_libdir}/libpdal_plugin_reader_numpy.so.%{sovers}
%{_libdir}/libpdal_plugin_reader_sqlite.so

View File

@ -1,57 +0,0 @@
From f717a4ceabf2c23fcb03838945865cd54a4698c7 Mon Sep 17 00:00:00 2001
From: Howard Butler <howard@hobu.co>
Date: Thu, 28 Dec 2017 09:05:02 -0600
Subject: [PATCH] jsoncpp changed the return signature of removeMember and we
need to get the same behavior in two steps now (#1759)
---
dimbuilder/DimBuilder.cpp | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/dimbuilder/DimBuilder.cpp b/dimbuilder/DimBuilder.cpp
index dd2f4a4c7..96b978a67 100644
--- a/dimbuilder/DimBuilder.cpp
+++ b/dimbuilder/DimBuilder.cpp
@@ -174,9 +174,11 @@ bool DimBuilder::execute()
void DimBuilder::extractDim(Json::Value& dim)
{
DimSpec d;
+ Json::Value empty;
// Get dimension name.
- Json::Value name = dim.removeMember("name");
+ Json::Value name = dim.get("name", empty);
+ dim.removeMember("name");
if (name.isNull())
throw dimbuilder_error("Dimension missing name.");
if (!name.isString())
@@ -185,7 +187,8 @@ void DimBuilder::extractDim(Json::Value& dim)
validateDimension(d.m_name);
// Get dimension description.
- Json::Value description = dim.removeMember("description");
+ Json::Value description = dim.get("description", empty);
+ dim.removeMember("description");
if (description.isNull())
{
std::ostringstream oss;
@@ -204,7 +207,8 @@ void DimBuilder::extractDim(Json::Value& dim)
d.m_description = description.asString();
// Get dimension type
- Json::Value type = dim.removeMember("type");
+ Json::Value type = dim.get("type", empty);
+ dim.removeMember("type");
if (type.isNull())
{
std::ostringstream oss;
@@ -222,7 +226,8 @@ void DimBuilder::extractDim(Json::Value& dim)
throw dimbuilder_error(oss.str());
}
- Json::Value altNames = dim.removeMember("alt_names");
+ Json::Value altNames = dim.get("alt_names", empty);
+ dim.removeMember("alt_names");
if (!altNames.isNull())
{
if (!altNames.isString())