annotate src/zlib-1.2.7/contrib/pascal/readme.txt @ 94:d278df1123f9

Add liblo
author Chris Cannam <cannam@all-day-breakfast.com>
date Wed, 20 Mar 2013 15:25:02 +0000
parents 8a15ff55d9af
children
rev   line source
cannam@89 1
cannam@89 2 This directory contains a Pascal (Delphi, Kylix) interface to the
cannam@89 3 zlib data compression library.
cannam@89 4
cannam@89 5
cannam@89 6 Directory listing
cannam@89 7 =================
cannam@89 8
cannam@89 9 zlibd32.mak makefile for Borland C++
cannam@89 10 example.pas usage example of zlib
cannam@89 11 zlibpas.pas the Pascal interface to zlib
cannam@89 12 readme.txt this file
cannam@89 13
cannam@89 14
cannam@89 15 Compatibility notes
cannam@89 16 ===================
cannam@89 17
cannam@89 18 - Although the name "zlib" would have been more normal for the
cannam@89 19 zlibpas unit, this name is already taken by Borland's ZLib unit.
cannam@89 20 This is somehow unfortunate, because that unit is not a genuine
cannam@89 21 interface to the full-fledged zlib functionality, but a suite of
cannam@89 22 class wrappers around zlib streams. Other essential features,
cannam@89 23 such as checksums, are missing.
cannam@89 24 It would have been more appropriate for that unit to have a name
cannam@89 25 like "ZStreams", or something similar.
cannam@89 26
cannam@89 27 - The C and zlib-supplied types int, uInt, long, uLong, etc. are
cannam@89 28 translated directly into Pascal types of similar sizes (Integer,
cannam@89 29 LongInt, etc.), to avoid namespace pollution. In particular,
cannam@89 30 there is no conversion of unsigned int into a Pascal unsigned
cannam@89 31 integer. The Word type is non-portable and has the same size
cannam@89 32 (16 bits) both in a 16-bit and in a 32-bit environment, unlike
cannam@89 33 Integer. Even if there is a 32-bit Cardinal type, there is no
cannam@89 34 real need for unsigned int in zlib under a 32-bit environment.
cannam@89 35
cannam@89 36 - Except for the callbacks, the zlib function interfaces are
cannam@89 37 assuming the calling convention normally used in Pascal
cannam@89 38 (__pascal for DOS and Windows16, __fastcall for Windows32).
cannam@89 39 Since the cdecl keyword is used, the old Turbo Pascal does
cannam@89 40 not work with this interface.
cannam@89 41
cannam@89 42 - The gz* function interfaces are not translated, to avoid
cannam@89 43 interfacing problems with the C runtime library. Besides,
cannam@89 44 gzprintf(gzFile file, const char *format, ...)
cannam@89 45 cannot be translated into Pascal.
cannam@89 46
cannam@89 47
cannam@89 48 Legal issues
cannam@89 49 ============
cannam@89 50
cannam@89 51 The zlibpas interface is:
cannam@89 52 Copyright (C) 1995-2003 Jean-loup Gailly and Mark Adler.
cannam@89 53 Copyright (C) 1998 by Bob Dellaca.
cannam@89 54 Copyright (C) 2003 by Cosmin Truta.
cannam@89 55
cannam@89 56 The example program is:
cannam@89 57 Copyright (C) 1995-2003 by Jean-loup Gailly.
cannam@89 58 Copyright (C) 1998,1999,2000 by Jacques Nomssi Nzali.
cannam@89 59 Copyright (C) 2003 by Cosmin Truta.
cannam@89 60
cannam@89 61 This software is provided 'as-is', without any express or implied
cannam@89 62 warranty. In no event will the author be held liable for any damages
cannam@89 63 arising from the use of this software.
cannam@89 64
cannam@89 65 Permission is granted to anyone to use this software for any purpose,
cannam@89 66 including commercial applications, and to alter it and redistribute it
cannam@89 67 freely, subject to the following restrictions:
cannam@89 68
cannam@89 69 1. The origin of this software must not be misrepresented; you must not
cannam@89 70 claim that you wrote the original software. If you use this software
cannam@89 71 in a product, an acknowledgment in the product documentation would be
cannam@89 72 appreciated but is not required.
cannam@89 73 2. Altered source versions must be plainly marked as such, and must not be
cannam@89 74 misrepresented as being the original software.
cannam@89 75 3. This notice may not be removed or altered from any source distribution.
cannam@89 76