Edit

kc3-lang/freetype/docs/INSTALL.GNU

Branch :

  • Show log

    Commit

  • Author : Alexei Podtelezhnikov
    Date : 2024-01-27 11:11:22
    Hash : 47574f7e
    Message : Update all copyright notices.

  • docs/INSTALL.GNU
  • This document contains instructions how  to build the FreeType library
    on non-Unix systems with  the help of GNU Make.  Note  that if you are
    running  Cygwin  or  MinGW/MSYS  in Windows,  you  should  follow  the
    instructions in the file `INSTALL.UNIX' instead.
    
    
      FreeType 2 includes a powerful and flexible build system that allows
      you to  easily compile it on  a great variety of  platforms from the
      command line.  To do so, just follow these simple instructions.
    
      1. Install GNU Make
      -------------------
    
        The FreeType 2 build system relies on many features special to GNU
        Make.
    
        NEARLY ALL OTHER MAKE TOOLS  FAIL, INCLUDING `BSD MAKE', SO REALLY
        INSTALL A RECENT VERSION OF GNU MAKE ON YOUR SYSTEM!
    
        Note that  make++, a  make tool written  in Perl,  supports enough
        features of GNU make to compile FreeType.  See
    
          https://makepp.sourceforge.net
    
        for more information;  you need version 2.0 or newer, and you must
        pass option `--norc-substitution'.
    
        Make sure that you are invoking GNU Make from the command line, by
        typing something like:
    
          make -v
    
        to display its version number.
    
        VERSION 3.81 OR NEWER IS NEEDED!
    
    
      2. Invoke `make'
      ----------------
    
        Go to  the root  directory of FreeType  2, then simply  invoke GNU
        Make from the command line.   This will launch the FreeType 2 host
        platform  detection routines.   A summary  will be  displayed, for
        example, on Win32.
    
    
          ==============================================================
          FreeType build system -- automatic system detection
    
          The following settings are used:
    
            platform                     windows
            compiler                     gcc
            configuration directory      .\builds\windows
            configuration rules          .\builds\windows\w32-gcc.mk
    
          If this does not correspond to your system or settings please
          remove the file 'config.mk' from this directory then read the
          INSTALL file for help.
    
          Otherwise, simply type 'make' again to build the library
          or 'make refdoc' to build the API reference (the latter needs
          Python >= 3.5).
          =============================================================
    
    
        If the detected settings correspond to your platform and compiler,
        skip to step 5.  Note that if your platform is completely alien to
        the build system, the detected platform will be `ansi'.
    
    
      3. Configure the build system for a different compiler
      ------------------------------------------------------
    
        If the build system correctly detected your platform, but you want
        to use a different compiler  than the one specified in the summary
        (for most platforms, gcc is the default compiler), invoke GNU Make
        with
    
          make setup <compiler>
    
        Examples:
    
          to use Visual C++ on Win32, type:  `make setup visualc'
          to use Borland C++ on Win32, type  `make setup bcc32'
          to use Watcom C++ on Win32, type   `make setup watcom'
          to use Intel C++ on Win32, type    `make setup intelc'
          to use LCC-Win32 on Win32, type:   `make setup lcc'
          to use Watcom C++ on OS/2, type    `make setup watcom'
          to use VisualAge C++ on OS/2, type `make setup visualage'
    
        The  <compiler> name to  use is  platform-dependent.  The  list of
        available  compilers for  your  system is  available  in the  file
        `builds/<system>/detect.mk'.
    
        If you  are satisfied  by the new  configuration summary,  skip to
        step 5.
    
    
      3a. Use clang instead of gcc
      ----------------------------
    
        The `clang'  compiler can  use FreeType's setup  for `gcc';  it is
        sufficient to set the `CC' variable, for example
    
          make CC=clang
    
    
      3b. Compiling with a C++ compiler
      ---------------------------------
    
        FreeType can be built with a C++ compiler, for example
    
          make CC="g++"
    
        If `clang++' should  be used it is necessary to  also override the
        `ANSIFLAGS' variable:
    
          make CC="clang++" ANSIFLAGS=""
    
    
      4. Configure the build system for an unknown platform/compiler
      --------------------------------------------------------------
    
        The auto-detection/setup  phase of the build system  copies a file
        to the current directory under the name `config.mk'.
    
        For    example,    on    OS/2+gcc,    it   would    simply    copy
        `builds/os2/os2-gcc.mk' to `./config.mk'.
    
        If for  some reason your  platform isn't correctly  detected, copy
        manually the configuration sub-makefile to `./config.mk' and go to
        step 5.
    
        Note  that  this file  is  a  sub-Makefile  used to  specify  Make
        variables  for compiler  and linker  invocation during  the build.
        You can  easily create your own  version from one  of the existing
        configuration files,  then copy it to the  current directory under
        the name `./config.mk'.
    
    
      5. Build the library
      --------------------
    
        The auto-detection/setup  phase should have  copied a file  in the
        current  directory,  called  `./config.mk'.   This  file  contains
        definitions of various Make  variables used to invoke the compiler
        and linker during the build.  [It has also generated a file called
        `ftmodule.h'   in  the  objects   directory  (which   is  normally
        `<toplevel>/objs/');  please read  the  file `docs/CUSTOMIZE'  for
        customization of FreeType.]
    
        To  launch  the build,  simply  invoke  GNU  Make again:  The  top
        Makefile will detect the configuration file and run the build with
        it.  If you have used variables in  step 3, you must use  the same
        variables here, too.
    
    
      Final note
    
        The above instructions build a  _statically_ linked library of the
        font engine in the `objs' directory.   On Windows, you can build a
        DLL  either  with  MinGW  (within an  MSYS  shell,  following  the
        instructions in `INSTALL.UNIX'), or you  use one of the Visual C++
        project files; see  the  subdirectories  of `builds/windows'.  For
        everything else,  you are on  your own,  and you might  follow the
        instructions in `INSTALL.ANY' to create your own Makefiles.
    
    ----------------------------------------------------------------------
    
    Copyright (C) 2003-2024 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.
    
    
    --- end of INSTALL.GNU ---