]> git.imager.perl.org - imager.git/blobdiff - README
fuzz testing
[imager.git] / README
diff --git a/README b/README
index 0dde365467b439a18cb845b3ee928970f6e1a172..f11a2872b15e9fc672645d0b2db70c824b87564f 100644 (file)
--- a/README
+++ b/README
@@ -1,12 +1,14 @@
 ================================================================
-Copyright (c) 1999-2001 Arnar M. Hrafnkelsson. All rights reserved.
+Copyright (c) 1999-2004 Arnar M. Hrafnkelsson. All rights reserved.
+Copyright (c) 2004-2007 Anthony Cook.
 This program is free software; you can redistribute it and/or
 modify it under the same terms as Perl itself.
 ================================================================
 
 >> THIS SOFTWARE COMES WITH ABSOLUTELY NO WARRANTY WHATSOEVER <<
-If you like or hate Imager, please let us know by sending mail 
-to imager@imager.perl.org
+
+If you like or hate Imager, please let me know by sending mail 
+to imager@imager.perl.org - I love feedback.
 
 ================================================================
 
@@ -70,7 +72,7 @@ If either fails do take a peek at the file errep.perl.  It's creates a
 file report.txt.  This is some information which will help me discover
 where the problem is so I can try to fix it in future releases.  If
 you find running it ok (just remember - no warranty!) please send the
-report.txt via email to addi@umich.edu .
+report.txt via email to imager@imager.perl.org.
 
 Troubleshooting tips:
 
@@ -87,7 +89,7 @@ included since libgif has been linked with it).
 Otherwise you could just build giflib without any X11 dependencies:
 
   # must be a clean tree
-  cd giflib-4.1.0
+  cd giflib-4.1.4
   ./configure --without-x ...
 
 Also note that libgif has a few bugs: You can run something like
@@ -104,7 +106,7 @@ not libungif on RedHat then you will probably get lots of errors
 like undefined symbol: FreeSavedImages when running make test.
 Install libungif package to fix it.
 
-Stock libungif 4.1.2 or later seems to fix all of the bugs, if you
+Stock libungif 4.1.4 or later seems to fix all of the bugs, if you
 have a problem that version of linungif (or later), let us know and
 we'll look into it.
 
@@ -118,10 +120,57 @@ $ IM_MANUAL=1 perl Makefile.PL
 and simply say no to tiff support when asked if you want it, the same thing
 can be used to circumvent problems in gifs to get Imager going.
 
-
 If it worked just continue with the installation as normally 
 (with make install).
 
+Freetype 1.x vs Freetype 2.x
+----------------------------
+
+These two libraries have some conflicting include file names, but as
+long as you don't put the Freetype 2.x freetype.h directory in the
+include path it should all work.
+
+Put the directory containing ft2build.h in the include path, but not
+the directory containing the freetype 2.x freetype.h.
+
+If you see compilation errors from font.c you've probably made the
+mistake of putting the Freetype 2.x freetype.h directory into the
+include path.
+
+To see which directories should be in the include path, try:
+
+  freetype-config --cflags
+
+Ideally, freetype-config should be in the PATH when building Imager
+with freetype 2.x support.
+
+
+Macintosh dfont and suitcase font support
+-----------------------------------------
+
+Through Freetype 2.1, Imager can use Macintosh DFON (.dfont) fonts and
+suitcase font files.
+
+If you want to be able to use more than just the first face in the
+font file though, you will need to configure freetype2 with the
+--with-old-mac-fonts option:
+
+  ./configure --with-old-mac-fonts
+
+You can use the index option to get to the other font faces in the
+file:
+
+  # get the second face from $file
+  my $font = Imager::Font->new(file=>$file, index=>1)
+    or die Imager->errstr;
+
+If you're using a suitcase font, you will also need to force the use
+of freetype 2 with the type argument:
+
+  my $font = Imager::Font->new(file=>$suitcase, type=>'ft2', index=>$index)
+    or die Imager->errstr;
+
+
 ========================
 3. External dependencies
 ========================
@@ -144,19 +193,19 @@ potential security problem.
 
   gif: http://sourceforge.net/projects/libungif
 
-giflib/libungif has come a long way since the buggy versions around
+giflib/libungif has come a long way since the buggy versions available
 when Imager's gif support code was written.  Preferably you should get
-at least version 4.1.2.  If you have a recent Linux distribution you
+at least version 4.1.4.  If you have a recent Linux distribution you
 should be safe with whatever giflib it provides, but if you're
 building from source, please try to use the latest version.
 
-At the time of writing you will need to manually select to install the
-4.1.2-1 of cygwin's libungif package.
+libgif 4.1.4 has no problems known to me at this point.
 
  tiff: http://www.libtiff.org/
 
    t1: http://www.ibiblio.org/pub/Linux/libs/graphics/
 
+freetype2 or
    tt: http://www.freetype.org/
 
 Precompiled versions of some of the libraries might be found at:
@@ -178,17 +227,8 @@ pretty pointless to have malloc debug enabled with no logging since you
 can never see the malloc information that way.
 
 
-========================
-5. Truetype information
-========================
-
-If you enable the truetype part and want it to be TESTED you MUST set
-the environment variable TTFONTTEST to a complete path to a truetype
-font.
-
-
 =================
-6. Win32 Support
+5. Win32 Support
 =================
 
 Imager can be installed on Win32 systems.  This was ported and tested
@@ -207,14 +247,46 @@ you will need to install the cygwin rebase package and run:
 
   $ rebaseall -v
 
-Under cygwin you will need at least libungif 4.1.2 installed to
-prevent lockups in the gif test scripts.  At the time of writing you
-need to select libungif-4.1.2-1 manually in the setup.exe installation
-tool.
+If you get errors from your make tool, make sure you're using the same
+make that was used to build your perl - generally GNU make for cygwin,
+nmake for Visual C/C++ and dmake for MinGW.
+
+============
+6. Mac OS X
+============
+
+Building Imager under OS X is generally straightforward.  There are
+some exceptions though:
+
+a) you may find to need to ranlib library files in place after you've 
+   installed them, for example:
+
+     ranlib /usr/local/lib/libgif.a
+
+b) the version of GCC enabled by default on OS X 10.4 generates
+   incorrect code for some functions.  To work around this run:
+
+     gcc_select 3
+
+   before building Imager and:
+
+     gcc_select 4
+
+   after building Imager.
+
+   This problem exhibits itself as test failures in t/t20fill.t
+
+   Imager 0.56 includes a workaround for this problem, but I wasn't
+   able to test it.
+
+c) if you want to build GCC 4.0 from scratch and use that you will
+   need to adjust the command-line supplied during the link stage, so
+   that there is some other option before the -bundle option.
 
-If you have any problems with the Win32 support, please email
-tony@develop-help.com (don't forget to use nmake instead of make).
+   For example:
 
+     perl Makefile.PL LDDLFLAGS="`perl -MConfig -e 'print "-g $Config{lddlflags}"'`"
+   
 =======================
 7. General information
 =======================
@@ -223,12 +295,9 @@ The Imager module homepage is currently at:
 
  http://imager.perl.org/
 
-The current docs are rather bad as I've been busy adding features
-but hopefully they will be updated soon.  Until then you'll just
-have to use the source. The test scripts might also be a good idea.
-By activating the the #init_log lines in the test script you can get
-rather verbose debugging output from the C code.
+You can report bugs by pointing your browser at:
 
+  https://rt.cpan.org/NoAuth/ReportBug.html?Queue=Imager
 
 ========================
 8. Thanks