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 Mon Jun 11 12:47:56 UTC 2018 - bruno@ioda-net.ch

106
PDAL.spec
View File

@ -1,8 +1,8 @@
# #
# spec file for package PDAL # spec file for package PDAL
# #
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2018 Friedmann Bruno, Ioda-Net Sàrl, Charmoille, Switzerland. # Copyright (c) 2019 Friedmann Bruno, Ioda-Net Sàrl, Charmoille, Switzerland.
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # 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) # license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative. # 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 # Ask upstream to clarify seems sofull_version is build version
%define soname 6 %define soname 7
%define sovers 6 %define sovers 7
%define sofull_version 7.0.2 %define sofull_version 8.0.0
%define lname pdal %define lname pdal
# Temporary fix for Leap 42.3
%if ! %{defined make_build}
%define make_build %{_bindir}/make %{?_smp_mflags}
%endif
Name: PDAL Name: PDAL
Version: 1.7.2 Version: 1.8.0
Release: 0 Release: 0
Summary: Point Data Abstraction Library. GDAL for point cloud data Summary: Point Data Abstraction Library. GDAL for point cloud data
License: BSD-3-Clause License: BSD-3-Clause
Group: Productivity/Graphics/CAD Group: Productivity/Graphics/CAD
Url: http://www.pdal.io/ URL: https://www.pdal.io/
Source0: http://download.osgeo.org/pdal/%{name}-%{version}-src.tar.gz Source0: https://github.com/PDAL/PDAL/releases/download/%{version}/%{name}-%{version}-src.tar.gz
Source1: http://download.osgeo.org/pdal/%{name}-%{version}-src.tar.gz.md5 Source1: https://github.com/PDAL/PDAL/releases/download/%{version}/%{name}-%{version}-src.tar.gz.md5
# Source2: https://www.pdal.io/PDAL.pdf # 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 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: cairo-devel
BuildRequires: cmake >= 2.8 BuildRequires: cmake >= 2.8
BuildRequires: cunit-devel BuildRequires: cunit-devel
BuildRequires: curl-devel BuildRequires: curl-devel
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: freeglut-devel BuildRequires: freeglut-devel
# Needed for tests
BuildRequires: gdal
BuildRequires: gcc-c++ BuildRequires: gcc-c++
# For tests but don't exist for Leap 42.3 BuildRequires: gdal
# BuildRequires: gtest
BuildRequires: libgdal-devel
BuildRequires: libgeos-devel
BuildRequires: geotiff-devel BuildRequires: geotiff-devel
BuildRequires: jsoncpp-devel BuildRequires: jsoncpp-devel
# We need 3.1.1+ for 1.6 # We need 3.1.1+ for 1.6
BuildRequires: laszip-devel 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: libproj-devel
BuildRequires: libspatialindex-devel BuildRequires: libspatialindex-devel
BuildRequires: libtiff-devel BuildRequires: libtiff-devel
BuildRequires: libxml2-devel BuildRequires: libxml2-devel
BuildRequires: xz-devel BuildRequires: pkgconfig
BuildRequires: pkg-config BuildRequires: python3
BuildRequires: pkgconfig(libpq)
# We don't have it yet # We don't have it yet
# BuildRequires: pointcloud-devel # BuildRequires: pointcloud-devel
# Python extension will be build separately. # Python extension will be build separately.
BuildRequires: python3-Cython BuildRequires: python3-Cython
BuildRequires: python3
BuildRequires: python3-devel BuildRequires: python3-devel
BuildRequires: python3-numpy-devel BuildRequires: python3-numpy-devel
BuildRequires: python3-setuptools BuildRequires: python3-setuptools
BuildRequires: sqlite3-devel BuildRequires: sqlite3-devel
BuildRequires: xz-devel
BuildRequires: zlib-devel BuildRequires: zlib-devel
BuildRequires: pkgconfig(libpq)
# Needed for documentation but we don't build it. # Needed for documentation but we don't build it.
# BuildRequires: dblatex # BuildRequires: dblatex
# BuildRequires: doxygen # BuildRequires: doxygen
@ -99,10 +81,19 @@ BuildRequires: zlib-devel
# BuildRequires: python-sphinxcontrib-breathe # BuildRequires: python-sphinxcontrib-breathe
# Doesn't exist on obs BuildRequires: python3-breathe # Doesn't exist on obs BuildRequires: python3-breathe
Requires: lib%{name}%{soname} = %{version} Requires: lib%{name}%{soname} = %{version}
Provides: pdal = %{version}
Recommends: bash-completion Recommends: bash-completion
Provides: pdal = %{version}
BuildRoot: %{_tmppath}/%{name}-%{version}-build # 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 %description
PDAL is a C++ BSD library for translating and manipulating point cloud data. 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 This package provides tools & utilities using PDAL library libpdal
%package -n lib%{name}%{soname} %package -n lib%{name}%{soname}
Provides: lib%{lname}%{soname} Summary: Point Data Abstraction Library. GDAL for point cloud data
Provides: libpdal%{soname} Provides: lib%{lname}%{soname}
Summary: Point Data Abstraction Library. GDAL for point cloud data Provides: libpdal%{soname}
%description -n lib%{name}%{soname} %description -n lib%{name}%{soname}
PDAL is a C++ BSD library for translating and manipulating point cloud data. 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 : Website :
https://www.pdal.io https://www.pdal.io
Note Note
PDAL should not be confused with PCL (Point Cloud Library). PDAL should not be confused with PCL (Point Cloud Library).
PCL is a library specifically designed to provide algorithmic analysis and 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 PDAL is focused more on data access and translation than PCL. See
filters.pclblock for more background. filters.pclblock for more background.
%package -n %{name}-devel %package -n %{name}-devel
Summary: Development files and tools for PDAL applications Summary: Development files and tools for PDAL applications
Group: Development/Libraries/C and C++ 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: 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: xz-devel
Requires: zlib-devel
Provides: lib%{name}%{soname}-devel = %{version} Provides: lib%{name}%{soname}-devel = %{version}
Provides: lib%{lname}%{soname}-devel = %{version} Provides: lib%{lname}%{soname}-devel = %{version}
Provides: lib%{name}-devel Provides: lib%{name}-devel
@ -179,7 +168,7 @@ develop applications using PDAL.
Summary: Documentation, examples and demos for PDAL Summary: Documentation, examples and demos for PDAL
Group: Productivity/Graphics/CAD Group: Productivity/Graphics/CAD
Requires: %{name} = %{version} Requires: %{name} = %{version}
BuildArch: noarch BuildArch: noarch
%description -n %{name}-doc %description -n %{name}-doc
This package provides the documentation and sources of examples and data demos of This package provides the documentation and sources of examples and data demos of
@ -187,9 +176,8 @@ PDAL algorithms.
%prep %prep
%setup -q -n %{name}-%{version}-src %setup -q -n %{name}-%{version}-src
%patch0 -p1
# Fix all wrong shebang and move to python3 only # 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 #Cleanup spurious perms in documentation
find ./doc/ -type f -exec chmod -v 0644 {} \; 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} %{_libdir}/libpdal_base.so.%{sofull_version}
# Plugins # Plugins
%{_libdir}/libpdal_plugin_filter_python.so.%{sofull_version} %{_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_numpy.so.%{sofull_version}
%{_libdir}/libpdal_plugin_reader_sqlite.so.%{sofull_version} %{_libdir}/libpdal_plugin_reader_sqlite.so.%{sofull_version}
%{_libdir}/libpdal_plugin_writer_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_plugin_writer_pgpointcloud.so.%{sofull_version}
%{_libdir}/libpdal_util.so.%{sofull_version} %{_libdir}/libpdal_util.so.%{sofull_version}
%files -n %{name}-devel %files -n %{name}-devel
%defattr(-,root,root,-) %defattr(-,root,root,-)
%license LICENSE.txt %license LICENSE.txt
@ -286,6 +274,8 @@ find %{buildroot} -type f -name "*.la" -o -name "*.a" -delete -print
%{_libdir}/libpdal_base.so %{_libdir}/libpdal_base.so
%{_libdir}/libpdal_plugin_filter_python.so %{_libdir}/libpdal_plugin_filter_python.so
%{_libdir}/libpdal_plugin_filter_python.so.%{sovers} %{_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
%{_libdir}/libpdal_plugin_reader_numpy.so.%{sovers} %{_libdir}/libpdal_plugin_reader_numpy.so.%{sovers}
%{_libdir}/libpdal_plugin_reader_sqlite.so %{_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())