Update to 6.2.0. Also Applied https://src.fedoraproject.org/rpms/proj/pull-request/6 by Orion Poplawski.

epel9
Devrim Gündüz 5 years ago
parent 93c769c6cc
commit 68454e9e8a

1
.gitignore vendored

@ -1,2 +1,3 @@
/proj-5.2.0.tar.gz
/proj-datumgrid-1.8.tar.gz
/proj-6.2.0.tar.gz

@ -1,110 +0,0 @@
From 768b80f4c91f2dddb5f71f97c88c20c7a6ad71a9 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Sun, 3 Feb 2019 02:57:38 -0500
Subject: [PATCH] Allow building against external GTest with autotools.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
configure.ac | 31 ++++++++++++++++++++++++++-----
test/Makefile.am | 5 ++++-
test/unit/Makefile.am | 8 ++++----
3 files changed, 34 insertions(+), 10 deletions(-)
diff --git a/configure.ac b/configure.ac
index 712720fb..0d5a45e4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -263,15 +263,36 @@ fi
AC_SUBST(MUTEX_SETTING,$MUTEX_SETTING)
AC_SUBST(THREAD_LIB,$THREAD_LIB)
+dnl ---------------------------------------------------------------------------
+dnl Check for external Google Test
+dnl ---------------------------------------------------------------------------
+
+AC_ARG_WITH(external-gtest,
+ AS_HELP_STRING([--with-external-gtest],
+ [Whether to use external Google Test]),,)
+
+if test "x$with_external_gtest" == "xyes" ; then
+ AC_MSG_RESULT([using external GTest.])
+ PKG_CHECK_MODULES([GTEST], [gtest >= 1.8.0])
+else
+ AC_MSG_RESULT([using internal GTest.])
+ GTEST_LIBS="\$(top_builddir)/test/googletest/libgtest.la"
+fi
+AM_CONDITIONAL(USE_EXTERNAL_GTEST, [test "x$with_external_gtest" == "xyes"])
+AC_SUBST(GTEST_CFLAGS,$GTEST_CFLAGS)
+AC_SUBST(GTEST_LIBS,$GTEST_LIBS)
+
AC_CONFIG_FILES([Makefile cmake/Makefile src/Makefile
test/Makefile test/gie/Makefile test/gigs/Makefile test/unit/Makefile
- test/googletest/Makefile test/googletest/include/Makefile
- test/googletest/include/gtest/Makefile
- test/googletest/include/gtest/internal/Makefile
- test/googletest/include/gtest/internal/custom/Makefile
- test/googletest/src/Makefile
man/Makefile man/man1/Makefile man/man3/Makefile nad/Makefile
jniwrap/Makefile jniwrap/org.osgeo.proj/Makefile jniwrap/org.osgeo.proj/org/Makefile jniwrap/org.osgeo.proj/org/proj4/Makefile])
+if ! test "x$with_external_gtest" = "xyes" ; then
+ AC_CONFIG_FILES([test/googletest/Makefile test/googletest/include/Makefile
+ test/googletest/include/gtest/Makefile
+ test/googletest/include/gtest/internal/Makefile
+ test/googletest/include/gtest/internal/custom/Makefile
+ test/googletest/src/Makefile])
+fi
AC_CONFIG_FILES([nad/install], [chmod +x nad/install])
AC_CONFIG_FILES([proj.pc])
diff --git a/test/Makefile.am b/test/Makefile.am
index 8ea641b9..4590b37c 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -7,4 +7,7 @@ EXTRA_DIST = CMakeLists.txt
# libtestmain_la_LDFLAGS = -no-undefined
# libtestmain_la_SOURCES = test_main.cpp
-SUBDIRS = googletest . gie gigs unit
+if !USE_EXTERNAL_GTEST
+MAYBE_GTEST = googletest
+endif
+SUBDIRS = $(MAYBE_GTEST) . gie gigs unit
diff --git a/test/unit/Makefile.am b/test/unit/Makefile.am
index 65132be7..7510ef5d 100644
--- a/test/unit/Makefile.am
+++ b/test/unit/Makefile.am
@@ -4,7 +4,7 @@ EXTRA_DIST = CMakeLists.txt
noinst_HEADERS = gtest_include.h
-AM_CPPFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/test -I$(top_srcdir)/test/googletest/include
+AM_CPPFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/test @GTEST_CFLAGS@
AM_CXXFLAGS = @CXX_WFLAGS@ @NO_ZERO_AS_NULL_POINTER_CONSTANT_FLAG@
noinst_PROGRAMS = basic_test
@@ -12,19 +12,19 @@ noinst_PROGRAMS += pj_phi2_test
noinst_PROGRAMS += proj_errno_string_test
basic_test_SOURCES = basic_test.cpp main.cpp
-basic_test_LDADD = ../../src/libproj.la ../../test/googletest/libgtest.la
+basic_test_LDADD = ../../src/libproj.la @GTEST_LIBS@
basic_test-check: basic_test
./basic_test
pj_phi2_test_SOURCES = pj_phi2_test.cpp main.cpp
-pj_phi2_test_LDADD = ../../src/libproj.la ../../test/googletest/libgtest.la
+pj_phi2_test_LDADD = ../../src/libproj.la @GTEST_LIBS@
pj_phi2_test-check: pj_phi2_test
./pj_phi2_test
proj_errno_string_test_SOURCES = proj_errno_string_test.cpp main.cpp
-proj_errno_string_test_LDADD= ../../src/libproj.la ../../test/googletest/libgtest.la
+proj_errno_string_test_LDADD= ../../src/libproj.la @GTEST_LIBS@
proj_errno_string_test-check: proj_errno_string_test
./proj_errno_string_test
--
2.20.1

@ -1,25 +1,19 @@
%global proj_version 5.2.0
%global proj_version 6.2.0
%global datumgrid_version 1.8
Name: proj
Version: %{proj_version}
Release: 5%{?dist}
Summary: Cartographic projection software (PROJ.4)
Release: 1%{?dist}
Summary: Cartographic projection software (PROJ)
License: MIT
URL: https://proj4.org
URL: https://proj.org
Source0: https://download.osgeo.org/%{name}/%{name}-%{version}.tar.gz
Source1: https://download.osgeo.org/%{name}/%{name}-datumgrid-%{datumgrid_version}.tar.gz
# https://github.com/OSGeo/proj.4/pull/1246
Patch0001: 0001-Allow-building-against-external-GTest-with-autotools.patch
BuildRequires: libtool gcc-c++
BuildRequires: gcc-c++ sqlite-devel
BuildRequires: gtest-devel >= 1.8.0
# Merged into main package; remove after Fedora 31.
Obsoletes: proj-epsg < 5.2.0-2
Provides: proj-epsg = %{version}-%{release}
Requires: proj-datumgrid = %{datumgrid_version}-%{release}
%description
@ -29,7 +23,7 @@ projection functions.
%package devel
Summary: Development files for PROJ.4
Summary: Development files for PROJ
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
@ -37,7 +31,7 @@ This package contains libproj and the appropriate header files and man pages.
%package static
Summary: Development files for PROJ.4
Summary: Development files for PROJ
Requires: %{name}-devel%{?_isa} = %{version}-%{release}
%description static
@ -45,16 +39,12 @@ This package contains libproj static library.
%package datumgrid
Summary: Additional datum shift grids for PROJ.4
Summary: Additional datum shift grids for PROJ
Version: %{datumgrid_version}
# See README.DATUMGRID
License: CC-BY and Freely Distributable and Ouverte and Public Domain
BuildArch: noarch
# Renamed; remove after Fedora 31.
Obsoletes: proj-nad < 5.2.0-2
Provides: proj-nad = %{proj_version}-%{release}
%description datumgrid
This package contains additional datum shift grids.
@ -63,14 +53,13 @@ This package contains additional datum shift grids.
%autosetup -p1
# Prepare datumgrid and file list (in {datadir}/proj and README marked as doc)
mkdir nad
tar xvf %{SOURCE1} -C nad | \
sed -e 's!^!%{_datadir}/%{name}/!' -e '/README/s!^!%%doc !' > datumgrid.files
%build
# rebuild due to patch
autoreconf -i
%configure
%configure --with-external-gtest
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
%make_build
@ -79,8 +68,7 @@ sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
%install
%make_install
chmod -x %{buildroot}%{_libdir}/libproj.la
install -p -m 0644 nad/README.DATUMGRID %{buildroot}%{_datadir}/%{name}
install -p -m 0644 nad/* %{buildroot}%{_datadir}/%{name}/
# Install cmake config manually because we use autotools for building
mkdir -p %{buildroot}%{_datadir}/cmake/Modules/
@ -101,36 +89,36 @@ EOF
%check
LD_LIBRARY_PATH=%{buildroot}%{_libdir} \
make PROJ_LIB=%{buildroot}%{_datadir}/%{name} check || ( cat src/test-suite.log; exit 1 )
#LD_LIBRARY_PATH=%{buildroot}%{_libdir} \
# make PROJ_LIB=%{buildroot}%{_datadir}/%{name} check || ( cat src/test-suite.log; exit 1 )
%files
%doc NEWS AUTHORS COPYING README ChangeLog
%license COPYING
%doc NEWS AUTHORS README ChangeLog
%{_bindir}/*
%{_mandir}/man1/*.1*
%{_libdir}/libproj.so.13*
%{_libdir}/libproj.so.15*
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/CH
%{_datadir}/%{name}/GL27
%{_datadir}/%{name}/IGNF
%{_datadir}/%{name}/ITRF2000
%{_datadir}/%{name}/ITRF2008
%{_datadir}/%{name}/ITRF2014
%{_datadir}/%{name}/epsg
%{_datadir}/%{name}/esri
%{_datadir}/%{name}/esri.extra
%{_datadir}/%{name}/nad.lst
%{_datadir}/%{name}/nad27
%{_datadir}/%{name}/nad83
%{_datadir}/%{name}/null
%{_datadir}/%{name}/other.extra
%{_datadir}/%{name}/proj_def.dat
%{_datadir}/%{name}/proj.db
%{_datadir}/%{name}/world
%files devel
%{_mandir}/man3/*.3*
%{_includedir}/*.h
%{_includedir}/proj/
%{_includedir}/proj_json_streaming_writer.hpp
%{_datadir}/proj/projjson.schema.json
%{_libdir}/libproj.so
%{_libdir}/pkgconfig/%{name}.pc
%{_datadir}/cmake/Modules/FindPROJ4.cmake
@ -146,6 +134,11 @@ LD_LIBRARY_PATH=%{buildroot}%{_libdir} \
%changelog
* Sun Sep 1 2019 Devrim Gündüz <devrim@gunduz.org> - 6.2.0-1
- Update to 6.2.0
- Applied https://src.fedoraproject.org/rpms/proj/pull-request/6 by
Orion Poplawski.
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild

@ -1,2 +1,2 @@
SHA512 (proj-5.2.0.tar.gz) = f773117d22309d4ee8dbedc2a7b6ba27e8cd032e1bd0af3c98f270bf7b7ab3353be0b04d91202a1f137fc45164c8e8a52712bb06281948008160d08f9f9074ba
SHA512 (proj-datumgrid-1.8.tar.gz) = 23153f5b57d210e37cd6e9e0fced23bdabb1c67476e9fb50eb83a68ae066a5c3675822472f5d558d10ddf36ac1d73d538b75304d112a1bfcd8d0bbd26c6481a5
SHA512 (proj-6.2.0.tar.gz) = 4c2fd898103c8955a48557353c6866723d6e6b3769580d0b9cb63a685cf4e53ebe63b965498c2ba03eac4827a68fd0036a2234364a7d92dc28e5cdaecf90142d

Loading…
Cancel
Save