From e3db1a826e2dc9f5fb45b547251c766a5988aac75af663ed5bc63650e08c41b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Mon, 17 Mar 2014 16:22:26 +0000 Subject: [PATCH 1/2] update OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/lcms2?expand=0&rev=59 --- lcms-endian.patch | 62 +++++++++++++++++++++++++++++++++-------------- lcms2-2.5.tar.gz | 3 --- lcms2-2.6.tar.gz | 3 +++ lcms2.changes | 16 ++++++++++++ lcms2.spec | 2 +- 5 files changed, 64 insertions(+), 22 deletions(-) delete mode 100644 lcms2-2.5.tar.gz create mode 100644 lcms2-2.6.tar.gz diff --git a/lcms-endian.patch b/lcms-endian.patch index 56c655a..18f512e 100644 --- a/lcms-endian.patch +++ b/lcms-endian.patch @@ -1,3 +1,5 @@ +Index: include/lcms2.h +=================================================================== --- include/lcms2.h.orig +++ include/lcms2.h @@ -30,9 +30,6 @@ @@ -10,40 +12,56 @@ // Uncomment this one if your compiler/machine does NOT support the // "long long" type. // #define CMS_DONT_USE_INT64 1 -@@ -170,33 +167,6 @@ typedef int cmsBool; +@@ -173,47 +170,6 @@ typedef int cmsBool; # define CMS_IS_WINDOWS_ 1 #endif -// Try to detect big endian platforms. This list can be endless, so only some checks are performed over here. -// you can pass this toggle to the compiler by using -DCMS_USE_BIG_ENDIAN or something similar - +-#if defined(__sgi__) || defined(__sgi) || defined(sparc) +-# define CMS_USE_BIG_ENDIAN 1 +-#endif +- +-#if defined(__s390__) || defined(__s390x__) +-# define CMS_USE_BIG_ENDIAN 1 +-#endif +- +-# ifdef TARGET_CPU_PPC +-# if TARGET_CPU_PPC +-# define CMS_USE_BIG_ENDIAN 1 +-# endif +-# endif +- +-#if defined(__powerpc__) || defined(__ppc__) || defined(TARGET_CPU_PPC) +-# define CMS_USE_BIG_ENDIAN 1 +-# if defined (__GNUC__) && defined(__BYTE_ORDER) && defined(__LITTLE_ENDIAN) +-# if __BYTE_ORDER == __LITTLE_ENDIAN +-// // Don't use big endian for PowerPC little endian mode +-# undef CMS_USE_BIG_ENDIAN +-# endif +-# endif +-#endif +- +-// WORDS_BIGENDIAN takes precedence -#if defined(_HOST_BIG_ENDIAN) || defined(__BIG_ENDIAN__) || defined(WORDS_BIGENDIAN) -# define CMS_USE_BIG_ENDIAN 1 -#endif - --#if defined(__sgi__) || defined(__sgi) || defined(__powerpc__) || defined(sparc) --# define CMS_USE_BIG_ENDIAN 1 --#endif -- --#if defined(__ppc__) || defined(__s390__) || defined(__s390x__) --# define CMS_USE_BIG_ENDIAN 1 --#endif -- --#ifdef TARGET_CPU_PPC --# if TARGET_CPU_PPC --# define CMS_USE_BIG_ENDIAN 1 --# endif --#endif -- -#ifdef macintosh -# ifdef __BIG_ENDIAN__ -# define CMS_USE_BIG_ENDIAN 1 -# endif +-# ifdef __LITTLE_ENDIAN__ +-# undef CMS_USE_BIG_ENDIAN +-# endif -#endif - // Calling convention -- this is hardly platform and compiler dependent #ifdef CMS_IS_WINDOWS_ # if defined(CMS_DLL) || defined(CMS_DLL_BUILD) +Index: src/cmsmd5.c +=================================================================== --- src/cmsmd5.c.orig +++ src/cmsmd5.c @@ -26,7 +26,7 @@ @@ -55,6 +73,8 @@ static void byteReverse(cmsUInt8Number * buf, cmsUInt32Number longs) +Index: src/cmsplugin.c +=================================================================== --- src/cmsplugin.c.orig +++ src/cmsplugin.c @@ -36,7 +36,7 @@ @@ -84,9 +104,11 @@ cmsUInt8Number* pIn = (cmsUInt8Number*) QWord; cmsUInt8Number* pOut = (cmsUInt8Number*) Result; +Index: testbed/testcms2.c +=================================================================== --- testbed/testcms2.c.orig +++ testbed/testcms2.c -@@ -719,15 +719,15 @@ cmsInt32Number CheckEndianess(void) +@@ -761,15 +761,15 @@ cmsInt32Number CheckEndianess(void) u.l = 1; BigEndian = (u.c[sizeof (long) - 1] == 1); @@ -105,6 +127,8 @@ return 0; } +Index: src/lcms2_internal.h +=================================================================== --- src/lcms2_internal.h.orig +++ src/lcms2_internal.h @@ -140,7 +140,7 @@ cmsINLINE int _cmsQuickFloor(cmsFloat64N @@ -116,9 +140,11 @@ return temp.halves[1] >> 16; #else return temp.halves[0] >> 16; +Index: configure.ac +=================================================================== --- configure.ac.orig +++ configure.ac -@@ -65,7 +65,8 @@ AC_ARG_WITH(zlib, +@@ -51,7 +51,8 @@ AM_INIT_AUTOMAKE([foreign 1.7.2 no-defin AC_PROG_CC_STDC AC_PROG_CPP AC_PROG_CXX @@ -128,7 +154,7 @@ #AM_PROG_LD #AC_SUBST(LD) #AC_PROG_INSTALL -@@ -79,11 +80,7 @@ AC_EXEEXT +@@ -65,11 +66,7 @@ AC_EXEEXT AC_OBJEXT # Configure libtool diff --git a/lcms2-2.5.tar.gz b/lcms2-2.5.tar.gz deleted file mode 100644 index 96b9fc9..0000000 --- a/lcms2-2.5.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6727772b44470a2111dba53b9ce4c952b87e7d1b72a31c5ebdf44ba6eb0aa72b -size 7000396 diff --git a/lcms2-2.6.tar.gz b/lcms2-2.6.tar.gz new file mode 100644 index 0000000..dabf83b --- /dev/null +++ b/lcms2-2.6.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5172528839647c54c3da211837225e221be93e4733f5b5e9f57668f7107e14b1 +size 4583389 diff --git a/lcms2.changes b/lcms2.changes index b8d0dbf..a4c79e5 100644 --- a/lcms2.changes +++ b/lcms2.changes @@ -1,3 +1,19 @@ +------------------------------------------------------------------- +Mon Mar 17 16:20:45 UTC 2014 - adrian@suse.de + +- update to version 2.6 + * Fixed a double free in recovering from a previous error in default intent handler. + * Fixed some indexing out of bounds in floating point interpolation + * Fixed a bug in PCS/Colorspace order when reading V2 Lab devicelinks + * Added a way to retrieve matrix shaper always, no matter LUT is present + * Changed endianess detection for PowerPC + * Fixed memory leaks on error handling + * Big revamp on Contexts, from Artifex + * New locking plug-in, from Artifex + * Added directories for tiff, jpeg in configure script + * Fix for delete tag memory corruption + * Added pthread dependency. From now lcms supports multithreading + ------------------------------------------------------------------- Mon Jan 6 06:02:04 UTC 2014 - crrodriguez@opensuse.org diff --git a/lcms2.spec b/lcms2.spec index a176728..89d9bad 100644 --- a/lcms2.spec +++ b/lcms2.spec @@ -21,7 +21,7 @@ Summary: Little CMS Engine - A color managment library and tools License: MIT Group: Productivity/Graphics/Other Url: http://www.littlecms.com/ -Version: 2.5 +Version: 2.6 Release: 0 %if 0%{?suse_version} From 486b562150c527893f286dad02dd55fcbd53077511c149a114767fb37d9daa79 Mon Sep 17 00:00:00 2001 From: OBS User mrdocs Date: Mon, 19 May 2014 06:24:06 +0000 Subject: [PATCH 2/2] Accepting request 234258 from home:Mailaender:branches:multimedia:libs fixed the build, but did not manage to enable multi-threading support OBS-URL: https://build.opensuse.org/request/show/234258 OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/lcms2?expand=0&rev=60 --- lcms2.changes | 5 +++++ lcms2.spec | 13 ++++++------- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/lcms2.changes b/lcms2.changes index a4c79e5..ee9478b 100644 --- a/lcms2.changes +++ b/lcms2.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Fri May 16 06:27:26 UTC 2014 - mailaender@opensuse.org + +- Fixed missing dependency pthread + ------------------------------------------------------------------- Mon Mar 17 16:20:45 UTC 2014 - adrian@suse.de diff --git a/lcms2.spec b/lcms2.spec index 89d9bad..eaddffb 100644 --- a/lcms2.spec +++ b/lcms2.spec @@ -25,6 +25,8 @@ Version: 2.6 Release: 0 %if 0%{?suse_version} +BuildRequires: autoconf +BuildRequires: glibc-devel BuildRequires: libjpeg-devel BuildRequires: libtiff-devel BuildRequires: libtool @@ -102,7 +104,8 @@ chmod a-x doc/* COPYING AUTHORS #export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" #export CXXFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" autoreconf -fiv -%configure --disable-static +# FIXME --without-threads is a workaround for a linker error +%configure --disable-static --without-threads make %{?_smp_flags} @@ -112,13 +115,9 @@ make %{?_smp_flags} # make utils %install +make install DESTDIR=%{buildroot} -%makeinstall - -rm $RPM_BUILD_ROOT/%_libdir/liblcms2.la - -%clean -rm -rf $RPM_BUILD_ROOT +rm %{buildroot}/%{_libdir}/liblcms2.la %post -n liblcms2-2 -p /sbin/ldconfig