office-gobmx/jpeg/jpeg-6b.patch
Ivo Hinkelmann 57249bdb17 CWS-TOOLING: integrate CWS sb107
2009-04-14 13:09:13 +0200 sb  r270758 : CWS-TOOLING: rebase CWS sb107 to trunk@270723 (milestone: DEV300:m46)
2009-04-06 14:11:54 +0200 sb  r270545 : #i100884# improve pagein effectiveness: wrap system libs in --as-needed on unxlngi6/unxlngx6 to avoid needing them where unneeded; link pagein as C program to avoid unneeded C++ runtime dependency; reorder pagein and javaldx in soffice startup script so that javaldx benefits from pagein
2009-03-31 16:40:23 +0200 sb  r270287 : decrease collisions in hashCode computation
2009-03-30 11:48:39 +0200 sb  r270207 : #i100668# corrected explicit template instantiation
2009-03-26 14:16:26 +0100 sb  r270078 : #i100408# inadvertently dropped libexslt dynamic library in previous rev 269789
2009-03-26 10:52:51 +0100 sb  r270058 : #i100576# fixed erroneous modification of RPM in previous rev 270057
2009-03-26 10:46:36 +0100 sb  r270057 : #i100576# Enable HAVE_LD_HASH_STYLE in sdev300.ini for unxlgni6 and unxlngx6; corrected unxlngx6.mk so that HAVE_LD_HASH_STYLE actually has an effect on ultimate LINKFLAGS value.
2009-03-25 16:53:39 +0100 sb  r270038 : #i85679# applied speed-symbolic-functions.diff provided by pmladek; re-ran autoconf; enabled HAVE_LD_BSYMBOLIC_FUNCTIONS for unxlngi6 and unxlngx6 in sdev300.ini
2009-03-25 15:29:12 +0100 sb  r270031 : #i100408# missing fixes in addition to -c 269789 (to actually only put single instances of certain libraries into installation sets)
2009-03-25 15:17:10 +0100 sb  r270029 : #i10084# revert masterfix additions of libraries to APPnSTDLIBs (during -r269000:269199) and instead use -rpath-link to avoid linker warnings on unxlngi6 and unxlngx6
2009-03-25 14:15:23 +0100 sb  r270023 : added svn:ignore
2009-03-25 10:25:08 +0100 sb  r270002 : #i10000# copied over trunk -c 269820
2009-03-23 10:16:00 +0100 sb  r269858 : CWS-TOOLING: rebase CWS sb107 to trunk@269781 (milestone: DEV300:m44)
2009-03-20 11:22:27 +0100 sb  r269789 : #i100408# reduce (multiple copies of) libraries delivered to solver; for that to work fine, deliver symlink feature got improved to only create a symlink if the original file exists
2009-03-20 09:21:32 +0100 sb  r269782 : #i100396# replace s(HTML|RTF)_xxx declarations with OOO_STRING_SVTOOLS_(HTML|RTF)_xxx macros to reduce symbolic relocations at load time (at least on ELF systems).
2009-03-19 11:34:56 +0100 sb  r269734 : #i100348# added VISIBILITY_HIDDEN=TRUE so that symbols from the resulting archive are not erroneously exported from dynamic libraries including the archive
2009-03-19 11:32:20 +0100 sb  r269733 : #i100348# as a prerequisite for following changes, brought jpeg-6b.patch into "dmake create_patch" format and removed application/octet-stream svn:mime-type
2009-03-12 10:39:08 +0100 sb  r269370 : duplicated cws/odfmetadata2/solenv/inc/target.mk -c 268831
2009-03-04 17:25:16 +0100 sb  r268849 : #i99880# missing AUGMENT_LIBRARY_PATH
2009-02-25 17:54:34 +0100 sb  r268459 : CWS-TOOLING: rebase CWS sb107 to trunk@268395 (milestone: DEV300:m42)
2009-02-25 09:23:15 +0100 sb  r268413 : #i99584# avoid undefined operations on nOffset (patch by cmc)
2009-02-23 10:02:25 +0100 sb  r268344 : #i99519 removed unnecessary library dependencies
2009-02-18 17:54:24 +0100 sb  r268250 : avoid warnings about format specifier and argument mismatch (on 64bit debug builds)
2009-02-18 17:50:34 +0100 sb  r268249 : avoid erroneous warning that control reaches end of non-void function
2009-02-18 17:33:53 +0100 sb  r268248 : sdext/source/pdfimport/misc/pdfihelper.cxx: #include <vcl/canvastools.hxx>
2009-04-27 11:24:10 +00:00

236 lines
6.9 KiB
Diff

--- misc/jpeg-6b/jconfig.h 2009-03-19 11:30:46.000000000 +0100
+++ misc/build/jpeg-6b/jconfig.h 2009-03-19 11:30:30.000000000 +0100
@@ -1 +1,16 @@
-dummy
+#define HAVE_PROTOTYPES
+#define HAVE_UNSIGNED_CHAR
+#define HAVE_UNSIGNED_SHORT
+#undef CHAR_IS_UNSIGNED
+#define HAVE_STDDEF_H
+#define HAVE_STDLIB_H
+#undef NEED_BSD_STRINGS
+#undef NEED_SYS_TYPES_H
+#undef NEED_FAR_POINTERS
+#undef NEED_SHORT_EXTERNAL_NAMES
+#undef INCOMPLETE_TYPES_BROKEN
+
+#ifdef JPEG_INTERNALS
+#undef RIGHT_SHIFT_IS_UNSIGNED
+#define NO_GETENV
+#endif
--- misc/jpeg-6b/jdcolor.c 1997-08-04 01:39:16.000000000 +0200
+++ misc/build/jpeg-6b/jdcolor.c 2009-03-19 11:30:30.000000000 +0100
@@ -284,6 +284,90 @@
}
}
+METHODDEF(void)
+ycck_rgb_convert (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION input_row,
+ JSAMPARRAY output_buf, int num_rows)
+{
+ my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert;
+ JDIMENSION num_cols = cinfo->output_width;
+ long cc, cm, cy, ck;
+ long y, cb, cr;
+ register JSAMPROW outptr;
+ register JSAMPROW inptr0, inptr1, inptr2, inptr3;
+ register JDIMENSION col;
+ register JSAMPLE* range_limit = cinfo->sample_range_limit;
+ register int* Crrtab = cconvert->Cr_r_tab;
+ register int* Cbbtab = cconvert->Cb_b_tab;
+ register INT32* Crgtab = cconvert->Cr_g_tab;
+ register INT32* Cbgtab = cconvert->Cb_g_tab;
+ SHIFT_TEMPS
+
+ while( --num_rows >= 0 )
+ {
+ inptr0 = input_buf[0][input_row];
+ inptr1 = input_buf[1][input_row];
+ inptr2 = input_buf[2][input_row];
+ inptr3 = input_buf[3][input_row++];
+
+ for( col = 0, outptr = *output_buf++; col < num_cols; col++ )
+ {
+ y = GETJSAMPLE(inptr0[col]);
+ cb = GETJSAMPLE(inptr1[col]);
+ cr = GETJSAMPLE(inptr2[col]);
+
+ // YCCK => CMYK
+ cc = 255L - range_limit[MAXJSAMPLE - (y + Crrtab[cr])];
+ cm = 255L - range_limit[MAXJSAMPLE - (y + ((int) RIGHT_SHIFT(Cbgtab[cb] + Crgtab[cr], SCALEBITS)))];
+ cy = 255L - range_limit[MAXJSAMPLE - (y + Cbbtab[cb])];
+ ck = 255L - inptr3[col];
+
+ // CMYK => RGB
+ outptr[ RGB_RED ] = range_limit[ 255L - ( cc + ck ) ];
+ outptr[ RGB_GREEN ] = range_limit[ 255L - ( cm + ck ) ];
+ outptr[ RGB_BLUE ] = range_limit[ 255L - ( cy + ck ) ];
+ outptr += RGB_PIXELSIZE;
+ }
+ }
+}
+
+METHODDEF(void)
+cmyk_rgb_convert (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION input_row,
+ JSAMPARRAY output_buf, int num_rows)
+{
+ my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert;
+ JDIMENSION num_cols = cinfo->output_width;
+ long cc, cm, cy, ck;
+ long y, cb, cr;
+ register JSAMPROW outptr;
+ register JSAMPROW inptr0, inptr1, inptr2, inptr3;
+ register JDIMENSION col;
+ register JSAMPLE* range_limit = cinfo->sample_range_limit;
+ SHIFT_TEMPS
+
+ while( --num_rows >= 0 )
+ {
+ inptr0 = input_buf[0][input_row];
+ inptr1 = input_buf[1][input_row];
+ inptr2 = input_buf[2][input_row];
+ inptr3 = input_buf[3][input_row++];
+
+ for( col = 0, outptr = *output_buf++; col < num_cols; col++ )
+ {
+ cc = 255 - GETJSAMPLE(inptr0[col]);
+ cm = 255 - GETJSAMPLE(inptr1[col]);
+ cy = 255 - GETJSAMPLE(inptr2[col]);
+ ck = 255 - GETJSAMPLE(inptr3[col]);
+
+ // CMYK => RGB
+ outptr[ RGB_RED ] = range_limit[ 255L - ( cc + ck ) ];
+ outptr[ RGB_GREEN ] = range_limit[ 255L - ( cm + ck ) ];
+ outptr[ RGB_BLUE ] = range_limit[ 255L - ( cy + ck ) ];
+ outptr += RGB_PIXELSIZE;
+ }
+ }
+}
/*
* Empty method for start_pass.
@@ -364,6 +448,11 @@
cconvert->pub.color_convert = gray_rgb_convert;
} else if (cinfo->jpeg_color_space == JCS_RGB && RGB_PIXELSIZE == 3) {
cconvert->pub.color_convert = null_convert;
+ } else if (cinfo->jpeg_color_space == JCS_YCCK) {
+ cconvert->pub.color_convert = ycck_rgb_convert;
+ build_ycc_rgb_table(cinfo);
+ } else if (cinfo->jpeg_color_space == JCS_CMYK) {
+ cconvert->pub.color_convert = cmyk_rgb_convert;
} else
ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
break;
--- misc/jpeg-6b/jmorecfg.h 1997-08-10 01:58:56.000000000 +0200
+++ misc/build/jpeg-6b/jmorecfg.h 2009-03-19 11:30:30.000000000 +0100
@@ -157,8 +157,8 @@
/* INT32 must hold at least signed 32-bit values. */
-#ifndef XMD_H /* X11/xmd.h correctly defines INT32 */
-typedef long INT32;
+#if !defined XMD_H && !defined _SOLAR_H /* X11/xmd.h correctly defines INT32 */
+typedef int INT32;
#endif
/* Datatype used for image dimensions. The JPEG standard only supports
@@ -311,9 +311,9 @@
* can't use color quantization if you change that value.
*/
-#define RGB_RED 0 /* Offset of Red in an RGB scanline element */
+#define RGB_RED 2 /* Offset of Red in an RGB scanline element */
#define RGB_GREEN 1 /* Offset of Green */
-#define RGB_BLUE 2 /* Offset of Blue */
+#define RGB_BLUE 0 /* Offset of Blue */
#define RGB_PIXELSIZE 3 /* JSAMPLEs per RGB scanline element */
--- misc/jpeg-6b/makefile.mk 2009-03-19 11:30:46.000000000 +0100
+++ misc/build/jpeg-6b/makefile.mk 2009-03-19 11:30:30.000000000 +0100
@@ -1 +1,82 @@
-dummy
+#*************************************************************************
+#
+# $RCSfile: makefile.mk,v $
+#
+# $Revision: 1.5 $
+#
+# last change: $Author: thb $ $Date: 2001/08/14 12:53:46 $
+#
+# Copyright according the GNU Public License.
+#
+#*************************************************************************
+
+PRJ=..$/..$/..$/..
+
+PRJNAME=jpeg
+TARGET=jpeglib
+LIBTARGET=NO
+EXTERNAL_WARNINGS_NOT_ERRORS=TRUE
+VISIBILITY_HIDDEN=TRUE
+
+# --- Settings -----------------------------------------------------------
+
+.INCLUDE : settings.mk
+
+
+.IF "$(GUI)$(CPU)"=="WNTP"
+CFLAGS=$(CFLAGS) -Od
+.ENDIF
+
+# --- Files --------------------------------------------------------
+
+SLOFILES= $(SLO)$/jcapimin.obj \
+ $(SLO)$/jcapistd.obj \
+ $(SLO)$/jccoefct.obj \
+ $(SLO)$/jccolor.obj \
+ $(SLO)$/jcdctmgr.obj \
+ $(SLO)$/jcinit.obj \
+ $(SLO)$/jchuff.obj \
+ $(SLO)$/jcphuff.obj \
+ $(SLO)$/jcmainct.obj \
+ $(SLO)$/jcmarker.obj \
+ $(SLO)$/jcmaster.obj \
+ $(SLO)$/jcomapi.obj \
+ $(SLO)$/jcparam.obj \
+ $(SLO)$/jcprepct.obj \
+ $(SLO)$/jcsample.obj \
+ $(SLO)$/jdhuff.obj \
+ $(SLO)$/jdinput.obj \
+ $(SLO)$/jdtrans.obj \
+ $(SLO)$/jdapimin.obj \
+ $(SLO)$/jdapistd.obj \
+ $(SLO)$/jdatadst.obj \
+ $(SLO)$/jdatasrc.obj \
+ $(SLO)$/jdcoefct.obj \
+ $(SLO)$/jdcolor.obj \
+ $(SLO)$/jddctmgr.obj \
+ $(SLO)$/jdphuff.obj \
+ $(SLO)$/jdmainct.obj \
+ $(SLO)$/jdmarker.obj \
+ $(SLO)$/jdmaster.obj \
+ $(SLO)$/jdmerge.obj \
+ $(SLO)$/jdpostct.obj \
+ $(SLO)$/jdsample.obj \
+ $(SLO)$/jerror.obj \
+ $(SLO)$/jfdctflt.obj \
+ $(SLO)$/jfdctfst.obj \
+ $(SLO)$/jfdctint.obj \
+ $(SLO)$/jidctflt.obj \
+ $(SLO)$/jidctfst.obj \
+ $(SLO)$/jidctint.obj \
+ $(SLO)$/jidctred.obj \
+ $(SLO)$/jmemmgr.obj \
+ $(SLO)$/jmemnobs.obj \
+ $(SLO)$/jquant1.obj \
+ $(SLO)$/jquant2.obj \
+ $(SLO)$/jutils.obj
+
+LIB1TARGET=$(SLB)$/$(TARGET).lib
+LIB1ARCHIV=$(LB)$/lib$(TARGET).a
+LIB1OBJFILES=$(SLOFILES)
+
+.INCLUDE : target.mk