3 Commits

3 changed files with 74 additions and 3 deletions

62
libpano-gcc15.patch Normal file
View File

@@ -0,0 +1,62 @@
Index: libpano13-2.9.22/filter.h
===================================================================
--- libpano13-2.9.22.orig/filter.h
+++ libpano13-2.9.22/filter.h
@@ -410,7 +410,7 @@ struct LMStruct{ // Parameters us
// function to minimize in Levenberg-Marquardt solver
-typedef int (*lmfunc)();
+typedef int (*lmfunc)(int m, int n, double x[], double fvec[], int *iflag);
struct triangle
{
@@ -776,13 +776,19 @@ PANO13_IMPEX void matrix_mult ( doubl
PANO13_IMPEX void matrix_inv_mult ( double m[3][3], double vector[3] );
PANO13_IMPEX double smallestRoot ( double *p );
PANO13_IMPEX void SetCorrectionRadius ( cPrefs *cP );
-PANO13_IMPEX int lmdif ();
+PANO13_IMPEX int lmdif(int m, int n, double x[], double fvec[],
+ double ftol, double xtol, double gtol,
+ int maxfev, double epsfcn, double diag[],
+ int mode, double factor, int nprint,
+ int *info, int *nfev, double fjac[],
+ int ldfjac, int ipvt[], double qtf[],
+ double wa1[], double wa2[], double wa3[], double wa4[]);
PANO13_IMPEX void fourier ( TrformStr *TrPtr, cPrefs *cP );
PANO13_IMPEX unsigned short gamma_correct( double pix );
PANO13_IMPEX int EqualCPrefs( cPrefs *c1, cPrefs *c2 );
PANO13_IMPEX double OverlapRMS ( MultiLayerImage *mim );
PANO13_IMPEX double distSquared ( int num );
-PANO13_IMPEX int fcnPano();
+PANO13_IMPEX int fcnPano(int m, int n, double x[], double fvec[], int *iflag);
PANO13_IMPEX int EvaluateControlPointError ( int num, double *errptr, double errComponent[2]);
PANO13_IMPEX void doCoordinateTransform( CoordInfo *c, tMatrix *t );
PANO13_IMPEX void findOptimumtMatrix( transformCoord *tP, tMatrix *tM, lmfunc f);
--- libpano13-2.9.22.orig/lmdif.c 2025-06-05 11:11:03.600393341 +0000
+++ libpano13-2.9.22/lmdif.c 2025-06-05 11:15:03.737777100 +0000
@@ -11,6 +11,7 @@
*/
#include "filter.h"
#include <float.h>
+#include <math.h>
extern lmfunc fcn;
@@ -1222,7 +1223,6 @@ double cos,cotan,qtbpj,sin,sum,tan,temp;
static double zero = 0.0;
static double p25 = 0.25;
static double p5 = 0.5;
-double fabs(), sqrt();
/*
* copy r and (q transpose)*b to preserve input and initialize s.
@@ -1416,7 +1416,6 @@ static double rdwarf = 3.834e-20;
static double rgiant = 1.304e19;
static double zero = 0.0;
static double one = 1.0;
-double fabs(), sqrt();
s1 = zero;
s2 = zero;

View File

@@ -1,3 +1,10 @@
-------------------------------------------------------------------
Thu Jun 5 11:32:19 UTC 2025 - pgajdos@suse.com
- added patches
https://sourceforge.net/p/panotools/libpano13/ci/e21a089e92377916977abcc2d73701527a31a8a8/
+ libpano-gcc15.patch
-------------------------------------------------------------------
Sat Nov 18 19:47:31 UTC 2023 - Dirk Müller <dmueller@suse.com>
@@ -38,7 +45,7 @@ Wed Apr 14 13:12:03 UTC 2021 - Ferdinand Thiessen <rpm@fthiessen.de>
- Do not ship build instructions and outdated docs
-------------------------------------------------------------------
Mon Oct 13 11:38:02 NOVT 2014 - salsergey@gmail.com
Mon Oct 13 11:38:02 UTC 2014 - salsergey@gmail.com
- Upgraded to version 2.9.19
* There are new Tpy and Tpr parameters

View File

@@ -1,7 +1,7 @@
#
# spec file for package libpano
#
# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -26,6 +26,8 @@ License: GPL-2.0-or-later
Group: Development/Libraries/C and C++
URL: https://panotools.sourceforge.net/
Source: https://sourceforge.net/projects/panotools/files/libpano13/libpano13-%{version}/libpano13-%{version}.tar.gz
# https://sourceforge.net/p/panotools/libpano13/ci/e21a089e92377916977abcc2d73701527a31a8a8/
Patch0: libpano-gcc15.patch
BuildRequires: cmake
BuildRequires: gcc-c++
%if %{with java}
@@ -63,7 +65,7 @@ Recommends: %{name}-utils
Development files for library for working with panoramas.
%prep
%setup -q -n libpano13-%{version}
%autosetup -p1 -n libpano13-%{version}
%build
%cmake \