Accepting request 781708 from home:sbrabec:branches:new-gcc
- Update to version 2.1.2... - Fix build with with -fno-common, which is the default in gcc-10 (bsc#1160256, argyllcms--gcc--fno-common.patch). OBS-URL: https://build.opensuse.org/request/show/781708 OBS-URL: https://build.opensuse.org/package/show/multimedia:color_management/argyllcms?expand=0&rev=46
This commit is contained in:
parent
9addb59370
commit
cebe1578f5
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:51269bcafc4d95679354b796685c3f0a41b44b78443cbe360cda4a2d72f32acb
|
||||
size 13825860
|
3
Argyll_V2.1.2_src.zip
Normal file
3
Argyll_V2.1.2_src.zip
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:be378ca836b17b8684db05e9feaab138d711835ef00a04a76ac0ceacd386a3e3
|
||||
size 13837056
|
133
argyllcms--gcc--fno-common.patch
Normal file
133
argyllcms--gcc--fno-common.patch
Normal file
@ -0,0 +1,133 @@
|
||||
argyllcms: Fix compilation with GCC 10
|
||||
|
||||
A common mistake in C is omitting extern when declaring a global variable
|
||||
in a header file. If the header is included by several files it results
|
||||
in multiple definitions of the same variable. In previous GCC versions
|
||||
this error is ignored. GCC 10 defaults to -fno-common, which means a
|
||||
linker error will now be reported. To fix this, use extern in header
|
||||
files when declaring global variables, and ensure each global is defined
|
||||
in exactly one C file. As a workaround, legacy C code can be compiled
|
||||
with -fcommon.
|
||||
|
||||
int x; // tentative definition - avoid in header files
|
||||
extern int y; // correct declaration in a header file
|
||||
|
||||
References:
|
||||
https://bugzilla.opensuse.org/show_bug.cgi?id=1160244
|
||||
https://bugzilla.opensuse.org/show_bug.cgi?id=1160256
|
||||
|
||||
In case of vinflate.c and inflate.c, both files define local variables
|
||||
with the same name as global. It is no more possible with GCC 10. To
|
||||
prevent sharing variables across files, add "static" to all local
|
||||
variables.
|
||||
|
||||
Index: Argyll_V2.1.2/gamut/gamut.h
|
||||
===================================================================
|
||||
--- Argyll_V2.1.2.orig/gamut/gamut.h
|
||||
+++ Argyll_V2.1.2/gamut/gamut.h
|
||||
@@ -36,7 +36,7 @@
|
||||
#define MAXGAMN 10 /* Maximum gamut point neighbors returned */
|
||||
#define NSLOTS 6 /* Number of maximum direction slots */
|
||||
|
||||
-struct _vrml *wrl; /* Declared in vrml.h, which may be #included after this */
|
||||
+extern struct _vrml *wrl; /* Declared in vrml.h, which may be #included after this */
|
||||
|
||||
/* ------------------------------------ */
|
||||
#define NODE_STRUCT \
|
||||
Index: Argyll_V2.1.2/spectro/vinflate.c
|
||||
===================================================================
|
||||
--- Argyll_V2.1.2.orig/spectro/vinflate.c
|
||||
+++ Argyll_V2.1.2/spectro/vinflate.c
|
||||
@@ -92,7 +92,7 @@ int vinflate(void);
|
||||
*/
|
||||
|
||||
#define WSIZE 0x8000
|
||||
-unsigned int wp; /* current position in slide */
|
||||
+static unsigned int wp; /* current position in slide */
|
||||
uch slide[32768];
|
||||
|
||||
static int vflush_output(unsigned int w) {
|
||||
@@ -160,8 +160,8 @@ static ush cpdext[] = { /* Extra
|
||||
the stream.
|
||||
*/
|
||||
|
||||
-ulg bb; /* bit buffer */
|
||||
-unsigned bk; /* bits in bit buffer */
|
||||
+static ulg bb; /* bit buffer */
|
||||
+static unsigned bk; /* bits in bit buffer */
|
||||
|
||||
ush vmask_bits[] = {
|
||||
0x0000,
|
||||
@@ -230,8 +230,8 @@ ush vmask_bits[] = {
|
||||
*/
|
||||
|
||||
|
||||
-int vlbits = 9; /* bits in base literal/length lookup table */
|
||||
-int vdbits = 6; /* bits in base distance lookup table */
|
||||
+static int vlbits = 9; /* bits in base literal/length lookup table */
|
||||
+static int vdbits = 6; /* bits in base distance lookup table */
|
||||
|
||||
|
||||
/* If BMAX needs to be larger than 16, then h and x[] should be ulg. */
|
||||
@@ -239,7 +239,7 @@ int vdbits = 6; /* bits in base
|
||||
#define N_MAX 288 /* maximum number of codes in any set */
|
||||
|
||||
|
||||
-unsigned hufts; /* track memory usage */
|
||||
+static unsigned hufts; /* track memory usage */
|
||||
|
||||
/* Given a list of code lengths and a maximum table size, make a set of
|
||||
tables to decode that set of codes. Return zero on success, one if
|
||||
Index: Argyll_V2.1.2/spectro/inflate.c
|
||||
===================================================================
|
||||
--- Argyll_V2.1.2.orig/spectro/inflate.c
|
||||
+++ Argyll_V2.1.2/spectro/inflate.c
|
||||
@@ -49,7 +49,7 @@ typedef unsigned int ulg;
|
||||
the next table, which codes e - 16 bits, and lastly e == 99 indicates
|
||||
an unused code. If a code with e == 99 is looked up, this implies an
|
||||
error in the data. */
|
||||
-struct huft {
|
||||
+static struct huft {
|
||||
uch e; /* number of extra bits or operation */
|
||||
uch b; /* number of bits in this code or subcode */
|
||||
union {
|
||||
@@ -87,7 +87,7 @@ int inflate(void);
|
||||
/* unsigned wp; current position in slide */
|
||||
|
||||
#define WSIZE 0x8000
|
||||
-unsigned int wp; /* current position in slide */
|
||||
+static unsigned int wp; /* current position in slide */
|
||||
uch slide[32768];
|
||||
|
||||
static int flush_output(unsigned int w) {
|
||||
@@ -155,8 +155,8 @@ static ush cpdext[] = { /* Extra
|
||||
the stream.
|
||||
*/
|
||||
|
||||
-ulg bb; /* bit buffer */
|
||||
-unsigned bk; /* bits in bit buffer */
|
||||
+static ulg bb; /* bit buffer */
|
||||
+static unsigned bk; /* bits in bit buffer */
|
||||
|
||||
ush mask_bits[] = {
|
||||
0x0000,
|
||||
@@ -201,8 +201,8 @@ ush mask_bits[] = {
|
||||
*/
|
||||
|
||||
|
||||
-int lbits = 9; /* bits in base literal/length lookup table */
|
||||
-int dbits = 6; /* bits in base distance lookup table */
|
||||
+static int lbits = 9; /* bits in base literal/length lookup table */
|
||||
+static int dbits = 6; /* bits in base distance lookup table */
|
||||
|
||||
|
||||
/* If BMAX needs to be larger than 16, then h and x[] should be ulg. */
|
||||
@@ -210,7 +210,7 @@ int dbits = 6; /* bits in base
|
||||
#define N_MAX 288 /* maximum number of codes in any set */
|
||||
|
||||
|
||||
-unsigned hufts; /* track memory usage */
|
||||
+static unsigned hufts; /* track memory usage */
|
||||
|
||||
|
||||
static int huft_build(b, n, s, d, e, t, m)
|
@ -1,3 +1,33 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 5 02:49:25 CET 2020 - sbrabec@suse.com
|
||||
|
||||
- Update to version 2.1.2:
|
||||
* Added -d option to spotread to print out Density values.
|
||||
* Many i1Pro2 fixes.
|
||||
* Changed targen round down/up to 0%/100% to have a tighter
|
||||
tollerance of 0.5% rather than 2%, so that -n values of
|
||||
L* 1 and 99 are not rounded.
|
||||
* Fix bug in xicclu -v2 option when operating on a .cal file.
|
||||
* Added -M option to ccxxmake.
|
||||
* Added -Yk flag to spectro/dispread.
|
||||
* Fixed bug in xicc/xmatrix.c when creating input profile from
|
||||
XYZ input data.
|
||||
* Modified txt2ti3 to cope with files that don't have
|
||||
SampleName/SampleID fields.
|
||||
* Added instrument ambient mode (-a flag) to dispcal, dispread
|
||||
and ccxxmake.
|
||||
* Fixed latent data sensitivity problem with i1Pro and Munki
|
||||
Spectro high res-mode.
|
||||
* Added spotread -rw option.
|
||||
* Added check in dispwin for sanity of calibration curves.
|
||||
* Added spectral support to namedc/cxf parser.
|
||||
* Fixed profile/txt2ti3.c to properly handle i1profiler
|
||||
SPECTRAL_NMXXX format.
|
||||
* Changed dispcal ADJ_THRESH mode MIN_THRESH value to 0.25 from
|
||||
0.05.
|
||||
- Fix build with with -fno-common, which is the default in gcc-10
|
||||
(bsc#1160256, argyllcms--gcc--fno-common.patch).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jan 5 02:53:35 UTC 2020 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package argyllcms
|
||||
#
|
||||
# Copyright (c) 2019 SUSE LLC
|
||||
# Copyright (c) 2020 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@ -19,7 +19,7 @@
|
||||
%define tarname Argyll
|
||||
|
||||
Name: argyllcms
|
||||
Version: 2.1.1
|
||||
Version: 2.1.2
|
||||
Release: 0
|
||||
Summary: ICC compatible color management system
|
||||
License: AGPL-3.0-only AND GPL-2.0-or-later AND MIT
|
||||
@ -30,7 +30,8 @@ Source1: 19-color.fdi
|
||||
Source2: color-device-file.policy
|
||||
Source3: ajam-2.5.2-1.3.3.tgz
|
||||
Patch1: ajam-include.patch
|
||||
|
||||
# PATCH-FIX-OPENSUSE argyllcms--gcc--fno-common.patch boo1160256 sbrabec@suse.com -- Fix build with GCC 10.
|
||||
Patch2: argyllcms--gcc--fno-common.patch
|
||||
BuildRequires: libjpeg-devel
|
||||
BuildRequires: libtiff-devel
|
||||
BuildRequires: libtool
|
||||
@ -72,8 +73,8 @@ viewer.
|
||||
|
||||
%package doc
|
||||
Summary: Argyll CMS documentation
|
||||
Group: System/X11/Utilities
|
||||
# Does not really make sense without Argyll CMS itself
|
||||
Group: System/X11/Utilities
|
||||
Requires: %{name} = %{version}
|
||||
|
||||
%description doc
|
||||
@ -88,6 +89,7 @@ This package contains the Argyll color management system documentation.
|
||||
cd ajam-2.5.2-1.3.3
|
||||
%patch1 -p1 -b .include
|
||||
cd ..
|
||||
%patch2 -p1
|
||||
|
||||
# remove unused source code
|
||||
rm -fr usb/{*.inf,*.rtf,*.inf,*.cat,*.vcproj,*.sys,*.dsw,*.sln,*.dsp,*template*,WinCo*,winsub*,*kext*,KDRIVER_LICENSE,README_MSVC.txt,msvc,*.cmd,bin,driver,binfiles.*}
|
||||
|
Loading…
x
Reference in New Issue
Block a user