/***************************************************************************/
/*                                                                         */
/*  ft2build.h                                                             */
/*                                                                         */
/*    FreeType 2 build and setup macros.                                   */
/*    (Generic version)                                                    */
/*                                                                         */
/*  Copyright 1996-2001 by                                                 */
/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
/*                                                                         */
/*  This file is part of the FreeType project, and may only be used,       */
/*  modified, and distributed under the terms of the FreeType project      */
/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
/*  this file you indicate that you have read the license and              */
/*  understand and accept it fully.                                        */
/*                                                                         */
/***************************************************************************/


 /*
  *  this is a development version of <ft2build.h> that is used
  *  to build the library in debug mode. Its only difference with
  *  the reference is that is forces the use of the local "ftoption.h"
  *  which contains different settings for all configuration macros
  *
  *  to use it, you must define the environment variable FT2_BUILD_INCLUDE
  *  to point to the directory containing these two files ("ft2build.h" and
  *  "ftoption.h"), then invoke Jam as usual
  */

#ifndef __FT2_BUILD_GENERIC_H__
#define __FT2_BUILD_GENERIC_H__

#define  FT_CONFIG_OPTIONS_H   <ftoption.h>

#include <freetype/config/ftheader.h>

#endif /* __FT2_BUILD_GENERIC_H__ */


/* END */
