177ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao# Configurations to build
277ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#
377ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao# This section must define:
477ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#   Description - A description of this target.
577ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#   Configs - The names of each configuration to build; this is used to build
677ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#             multiple libraries inside a single configuration file (for
777ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#             example, Debug and Release builds, or builds with and without
877ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#             software floating point).
977ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#
1077ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao# This section must define one of:
1177ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#   UniveralArchs - A list of architectures to build for, when using universal build
1277ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#           support (e.g., on Darwin). This should only be used to build fat
1377ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#           libraries, simply building multiple libraries for different
1477ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#           architectures should do so using distinct configs, with the
1577ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#           appropriate choices for CC and CFLAGS.
1677ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#
1777ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#   Arch - The target architecture; this must match the compiler-rt name for the
1877ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#          architecture and is used to find the appropriate function
1977ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#          implementations.
2077ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#
2177ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao# When not universal builds, this section may define:
2277ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#   Arch.<Config Name> - Set the target architecture on a per-config basis.
2377ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao
2477ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoDescription := Target for building universal libraries for Darwin.
2577ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao
2677ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoConfigs := Debug Release Profile
2777ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoUniversalArchs := i386 ppc x86_64
2877ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao
2977ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao# Platform Options
3077ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#
3177ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao# This section may override any of the variables in make/options.mk, using:
3277ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#   <Option Name> := ... option value ...
3377ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#
3477ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao# See make/options.mk for the available options and their meanings. Options can
3577ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao# be override on a per-config, per-arch, or per-config-and-arch basis using:
3677ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#   <Option Name>.<Config Name> := ...
3777ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#   <Option Name>.<Arch Name> := ...
3877ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#   <Option Name>.<Config Name>.<Arch Name> := ...
3977ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao
4077ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoCC := gcc
4177ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao
4277ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoCFLAGS := -Wall -Werror
4377ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoCFLAGS.Debug := $(CFLAGS) -g
4477ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoCFLAGS.Release := $(CFLAGS) -O3 -fomit-frame-pointer
4577ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoCFLAGS.Profile := $(CFLAGS) -pg -g
4677ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao
4777ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoFUNCTIONS.i386 := $(CommonFunctions) $(ArchFunctions.i386)
4877ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoFUNCTIONS.ppc := $(CommonFunctions) $(ArchFunctions.ppc)
4977ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoFUNCTIONS.x86_64 := $(CommonFunctions) $(ArchFunctions.x86_64)
5077ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoFUNCTIONS.armv6 := $(CommonFunctions) $(ArchFunctions.armv6)
5177ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoFUNCTIONS.armv7 := $(CommonFunctions) $(ArchFunctions.armv7)
5277ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao
5377ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoOPTIMIZED.Debug := 0
5477ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao
5577ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoVISIBILITY_HIDDEN := 1
56