Commit 347c4a98 authored by runge's avatar runge

fix some build issues WRT ultravnc code.

parent 279f3549
2006-05-13 Karl Runge <runge@karlrunge.com>
* minilzo.c,minilzo.h,lzoconf.h: switch to non-CRLF versions.
* libvncclient/Makefile.am: add minilzo.c, minilzo.h, lzoconf.h
and ultra.c to materials lists.
* libvncserver/scale.c: remove libm dependency with CEIL and
FLOOR macros.
* libvncserver/rfbserver.c: remove C99 declarations.
* vncterm/Makefile.am: fix VPATH build.
2006-05-06 Karl Runge <runge@karlrunge.com> 2006-05-06 Karl Runge <runge@karlrunge.com>
* configure.ac: add linux/videodev.h and linux/fb.h detection. * configure.ac: add linux/videodev.h and linux/fb.h detection.
......
...@@ -2,9 +2,11 @@ AM_CFLAGS=-g -I $(top_srcdir) -I. -Wall ...@@ -2,9 +2,11 @@ AM_CFLAGS=-g -I $(top_srcdir) -I. -Wall
libvncclient_a_SOURCES=cursor.c listen.c rfbproto.c sockets.c vncviewer.c minilzo.c libvncclient_a_SOURCES=cursor.c listen.c rfbproto.c sockets.c vncviewer.c minilzo.c
noinst_HEADERS=lzoconf.h minilzo.h
rfbproto.o: rfbproto.c corre.c hextile.c rre.c tight.c zlib.c zrle.c ultra.c rfbproto.o: rfbproto.c corre.c hextile.c rre.c tight.c zlib.c zrle.c ultra.c
EXTRA_DIST=corre.c hextile.c rre.c tight.c zlib.c zrle.c EXTRA_DIST=corre.c hextile.c rre.c tight.c zlib.c zrle.c ultra.c
$(libvncclient_a_OBJECTS): ../rfb/rfbclient.h $(libvncclient_a_OBJECTS): ../rfb/rfbclient.h
......
This diff is collapsed.
This diff is collapsed.
/* minilzo.h -- mini subset of the LZO real-time data compression library /* minilzo.h -- mini subset of the LZO real-time data compression library
This file is part of the LZO real-time data compression library. This file is part of the LZO real-time data compression library.
Copyright (C) 2002 Markus Franz Xaver Johannes Oberhumer Copyright (C) 2002 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2001 Markus Franz Xaver Johannes Oberhumer Copyright (C) 2001 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2000 Markus Franz Xaver Johannes Oberhumer Copyright (C) 2000 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1999 Markus Franz Xaver Johannes Oberhumer Copyright (C) 1999 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1998 Markus Franz Xaver Johannes Oberhumer Copyright (C) 1998 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1997 Markus Franz Xaver Johannes Oberhumer Copyright (C) 1997 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1996 Markus Franz Xaver Johannes Oberhumer Copyright (C) 1996 Markus Franz Xaver Johannes Oberhumer
All Rights Reserved. All Rights Reserved.
The LZO library is free software; you can redistribute it and/or The LZO library is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of published by the Free Software Foundation; either version 2 of
the License, or (at your option) any later version. the License, or (at your option) any later version.
The LZO library is distributed in the hope that it will be useful, The LZO library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with the LZO library; see the file COPYING. along with the LZO library; see the file COPYING.
If not, write to the Free Software Foundation, Inc., If not, write to the Free Software Foundation, Inc.,
59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
Markus F.X.J. Oberhumer Markus F.X.J. Oberhumer
<markus@oberhumer.com> <markus@oberhumer.com>
http://www.oberhumer.com/opensource/lzo/ http://www.oberhumer.com/opensource/lzo/
*/ */
/* /*
* NOTE: * NOTE:
* the full LZO package can be found at * the full LZO package can be found at
* http://www.oberhumer.com/opensource/lzo/ * http://www.oberhumer.com/opensource/lzo/
*/ */
#ifndef __MINILZO_H #ifndef __MINILZO_H
#define __MINILZO_H #define __MINILZO_H
#define MINILZO_VERSION 0x1080 #define MINILZO_VERSION 0x1080
#ifdef __LZOCONF_H #ifdef __LZOCONF_H
# error "you cannot use both LZO and miniLZO" # error "you cannot use both LZO and miniLZO"
#endif #endif
#undef LZO_HAVE_CONFIG_H #undef LZO_HAVE_CONFIG_H
#include "lzoconf.h" #include "lzoconf.h"
#if !defined(LZO_VERSION) || (LZO_VERSION != MINILZO_VERSION) #if !defined(LZO_VERSION) || (LZO_VERSION != MINILZO_VERSION)
# error "version mismatch in header files" # error "version mismatch in header files"
#endif #endif
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
/*********************************************************************** /***********************************************************************
// //
************************************************************************/ ************************************************************************/
/* Memory required for the wrkmem parameter. /* Memory required for the wrkmem parameter.
* When the required size is 0, you can also pass a NULL pointer. * When the required size is 0, you can also pass a NULL pointer.
*/ */
#define LZO1X_MEM_COMPRESS LZO1X_1_MEM_COMPRESS #define LZO1X_MEM_COMPRESS LZO1X_1_MEM_COMPRESS
#define LZO1X_1_MEM_COMPRESS ((lzo_uint32) (16384L * lzo_sizeof_dict_t)) #define LZO1X_1_MEM_COMPRESS ((lzo_uint32) (16384L * lzo_sizeof_dict_t))
#define LZO1X_MEM_DECOMPRESS (0) #define LZO1X_MEM_DECOMPRESS (0)
/* compression */ /* compression */
LZO_EXTERN(int) LZO_EXTERN(int)
lzo1x_1_compress ( const lzo_byte *src, lzo_uint src_len, lzo1x_1_compress ( const lzo_byte *src, lzo_uint src_len,
lzo_byte *dst, lzo_uintp dst_len, lzo_byte *dst, lzo_uintp dst_len,
lzo_voidp wrkmem ); lzo_voidp wrkmem );
/* decompression */ /* decompression */
LZO_EXTERN(int) LZO_EXTERN(int)
lzo1x_decompress ( const lzo_byte *src, lzo_uint src_len, lzo1x_decompress ( const lzo_byte *src, lzo_uint src_len,
lzo_byte *dst, lzo_uintp dst_len, lzo_byte *dst, lzo_uintp dst_len,
lzo_voidp wrkmem /* NOT USED */ ); lzo_voidp wrkmem /* NOT USED */ );
/* safe decompression with overrun testing */ /* safe decompression with overrun testing */
LZO_EXTERN(int) LZO_EXTERN(int)
lzo1x_decompress_safe ( const lzo_byte *src, lzo_uint src_len, lzo1x_decompress_safe ( const lzo_byte *src, lzo_uint src_len,
lzo_byte *dst, lzo_uintp dst_len, lzo_byte *dst, lzo_uintp dst_len,
lzo_voidp wrkmem /* NOT USED */ ); lzo_voidp wrkmem /* NOT USED */ );
#ifdef __cplusplus #ifdef __cplusplus
} /* extern "C" */ } /* extern "C" */
#endif #endif
#endif /* already included */ #endif /* already included */
This diff is collapsed.
This diff is collapsed.
/* minilzo.h -- mini subset of the LZO real-time data compression library /* minilzo.h -- mini subset of the LZO real-time data compression library
This file is part of the LZO real-time data compression library. This file is part of the LZO real-time data compression library.
Copyright (C) 2002 Markus Franz Xaver Johannes Oberhumer Copyright (C) 2002 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2001 Markus Franz Xaver Johannes Oberhumer Copyright (C) 2001 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2000 Markus Franz Xaver Johannes Oberhumer Copyright (C) 2000 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1999 Markus Franz Xaver Johannes Oberhumer Copyright (C) 1999 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1998 Markus Franz Xaver Johannes Oberhumer Copyright (C) 1998 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1997 Markus Franz Xaver Johannes Oberhumer Copyright (C) 1997 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1996 Markus Franz Xaver Johannes Oberhumer Copyright (C) 1996 Markus Franz Xaver Johannes Oberhumer
All Rights Reserved. All Rights Reserved.
The LZO library is free software; you can redistribute it and/or The LZO library is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of published by the Free Software Foundation; either version 2 of
the License, or (at your option) any later version. the License, or (at your option) any later version.
The LZO library is distributed in the hope that it will be useful, The LZO library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with the LZO library; see the file COPYING. along with the LZO library; see the file COPYING.
If not, write to the Free Software Foundation, Inc., If not, write to the Free Software Foundation, Inc.,
59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
Markus F.X.J. Oberhumer Markus F.X.J. Oberhumer
<markus@oberhumer.com> <markus@oberhumer.com>
http://www.oberhumer.com/opensource/lzo/ http://www.oberhumer.com/opensource/lzo/
*/ */
/* /*
* NOTE: * NOTE:
* the full LZO package can be found at * the full LZO package can be found at
* http://www.oberhumer.com/opensource/lzo/ * http://www.oberhumer.com/opensource/lzo/
*/ */
#ifndef __MINILZO_H #ifndef __MINILZO_H
#define __MINILZO_H #define __MINILZO_H
#define MINILZO_VERSION 0x1080 #define MINILZO_VERSION 0x1080
#ifdef __LZOCONF_H #ifdef __LZOCONF_H
# error "you cannot use both LZO and miniLZO" # error "you cannot use both LZO and miniLZO"
#endif #endif
#undef LZO_HAVE_CONFIG_H #undef LZO_HAVE_CONFIG_H
#include "lzoconf.h" #include "lzoconf.h"
#if !defined(LZO_VERSION) || (LZO_VERSION != MINILZO_VERSION) #if !defined(LZO_VERSION) || (LZO_VERSION != MINILZO_VERSION)
# error "version mismatch in header files" # error "version mismatch in header files"
#endif #endif
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
/*********************************************************************** /***********************************************************************
// //
************************************************************************/ ************************************************************************/
/* Memory required for the wrkmem parameter. /* Memory required for the wrkmem parameter.
* When the required size is 0, you can also pass a NULL pointer. * When the required size is 0, you can also pass a NULL pointer.
*/ */
#define LZO1X_MEM_COMPRESS LZO1X_1_MEM_COMPRESS #define LZO1X_MEM_COMPRESS LZO1X_1_MEM_COMPRESS
#define LZO1X_1_MEM_COMPRESS ((lzo_uint32) (16384L * lzo_sizeof_dict_t)) #define LZO1X_1_MEM_COMPRESS ((lzo_uint32) (16384L * lzo_sizeof_dict_t))
#define LZO1X_MEM_DECOMPRESS (0) #define LZO1X_MEM_DECOMPRESS (0)
/* compression */ /* compression */
LZO_EXTERN(int) LZO_EXTERN(int)
lzo1x_1_compress ( const lzo_byte *src, lzo_uint src_len, lzo1x_1_compress ( const lzo_byte *src, lzo_uint src_len,
lzo_byte *dst, lzo_uintp dst_len, lzo_byte *dst, lzo_uintp dst_len,
lzo_voidp wrkmem ); lzo_voidp wrkmem );
/* decompression */ /* decompression */
LZO_EXTERN(int) LZO_EXTERN(int)
lzo1x_decompress ( const lzo_byte *src, lzo_uint src_len, lzo1x_decompress ( const lzo_byte *src, lzo_uint src_len,
lzo_byte *dst, lzo_uintp dst_len, lzo_byte *dst, lzo_uintp dst_len,
lzo_voidp wrkmem /* NOT USED */ ); lzo_voidp wrkmem /* NOT USED */ );
/* safe decompression with overrun testing */ /* safe decompression with overrun testing */
LZO_EXTERN(int) LZO_EXTERN(int)
lzo1x_decompress_safe ( const lzo_byte *src, lzo_uint src_len, lzo1x_decompress_safe ( const lzo_byte *src, lzo_uint src_len,
lzo_byte *dst, lzo_uintp dst_len, lzo_byte *dst, lzo_uintp dst_len,
lzo_voidp wrkmem /* NOT USED */ ); lzo_voidp wrkmem /* NOT USED */ );
#ifdef __cplusplus #ifdef __cplusplus
} /* extern "C" */ } /* extern "C" */
#endif #endif
#endif /* already included */ #endif /* already included */
...@@ -1703,11 +1703,12 @@ rfbSendFramebufferUpdate(rfbClientPtr cl, ...@@ -1703,11 +1703,12 @@ rfbSendFramebufferUpdate(rfbClientPtr cl,
int y = rect.y1; int y = rect.y1;
int w = rect.x2 - x; int w = rect.x2 - x;
int h = rect.y2 - y; int h = rect.y2 - y;
int rectsPerRow, rows;
/* We need to count the number of rects in the scaled screen */ /* We need to count the number of rects in the scaled screen */
if (cl->screen!=cl->scaledScreen) if (cl->screen!=cl->scaledScreen)
rfbScaledCorrection(cl->screen, cl->scaledScreen, &x, &y, &w, &h, "rfbSendFramebufferUpdate"); rfbScaledCorrection(cl->screen, cl->scaledScreen, &x, &y, &w, &h, "rfbSendFramebufferUpdate");
int rectsPerRow = (w-1)/cl->correMaxWidth+1; rectsPerRow = (w-1)/cl->correMaxWidth+1;
int rows = (h-1)/cl->correMaxHeight+1; rows = (h-1)/cl->correMaxHeight+1;
nUpdateRegionRects += rectsPerRow*rows; nUpdateRegionRects += rectsPerRow*rows;
} }
sraRgnReleaseIterator(i); sraRgnReleaseIterator(i);
...@@ -1749,10 +1750,11 @@ rfbSendFramebufferUpdate(rfbClientPtr cl, ...@@ -1749,10 +1750,11 @@ rfbSendFramebufferUpdate(rfbClientPtr cl,
int y = rect.y1; int y = rect.y1;
int w = rect.x2 - x; int w = rect.x2 - x;
int h = rect.y2 - y; int h = rect.y2 - y;
int n;
/* We need to count the number of rects in the scaled screen */ /* We need to count the number of rects in the scaled screen */
if (cl->screen!=cl->scaledScreen) if (cl->screen!=cl->scaledScreen)
rfbScaledCorrection(cl->screen, cl->scaledScreen, &x, &y, &w, &h, "rfbSendFramebufferUpdate"); rfbScaledCorrection(cl->screen, cl->scaledScreen, &x, &y, &w, &h, "rfbSendFramebufferUpdate");
int n = rfbNumCodedRectsTight(cl, x, y, w, h); n = rfbNumCodedRectsTight(cl, x, y, w, h);
if (n == 0) { if (n == 0) {
nUpdateRegionRects = 0xFFFF; nUpdateRegionRects = 0xFFFF;
break; break;
......
...@@ -66,7 +66,10 @@ ...@@ -66,7 +66,10 @@
#endif #endif
/****************************/ /****************************/
#include <math.h> #define CEIL(x) ( (double) ((int) (x)) == (x) ? \
(double) ((int) (x)) : (double) ((int) (x) + 1) )
#define FLOOR(x) ( (double) ((int) (x)) )
int ScaleX(rfbScreenInfoPtr from, rfbScreenInfoPtr to, int x) int ScaleX(rfbScreenInfoPtr from, rfbScreenInfoPtr to, int x)
{ {
...@@ -105,12 +108,12 @@ void rfbScaledCorrection(rfbScreenInfoPtr from, rfbScreenInfoPtr to, int *x, int ...@@ -105,12 +108,12 @@ void rfbScaledCorrection(rfbScreenInfoPtr from, rfbScreenInfoPtr to, int *x, int
/*cast from double to int is same as "*x = floor(x1);" */ /*cast from double to int is same as "*x = floor(x1);" */
x2 = floor(x1); x2 = FLOOR(x1);
y2 = floor(y1); y2 = FLOOR(y1);
/* include into W and H the jitter of scaling X and Y */ /* include into W and H the jitter of scaling X and Y */
w2 = ceil(w1 + ( x1 - x2 )); w2 = CEIL(w1 + ( x1 - x2 ));
h2 = ceil(h1 + ( y1 - y2 )); h2 = CEIL(h1 + ( y1 - y2 ));
/* /*
* rfbLog("%s (%dXx%dY-%dWx%dH -> %fXx%fY-%fWx%fH) {%dWx%dH -> %dWx%dH}\n", * rfbLog("%s (%dXx%dY-%dWx%dH -> %fXx%fY-%fWx%fH) {%dWx%dH -> %dWx%dH}\n",
......
AM_CFLAGS=-I $(top_srcdir)
CONSOLE_SRCS=VNConsole.c CONSOLE_SRCS=VNConsole.c
noinst_HEADERS=VNConsole.h vga.h noinst_HEADERS=VNConsole.h vga.h
CFLAGS_ADD=-I..
LDADD=../libvncserver/libvncserver.a @WSOCKLIB@ LDADD=../libvncserver/libvncserver.a @WSOCKLIB@
INCLUDES=-I. INCLUDES=-I.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment