Sane C++ Libraries
C++ Platform Abstraction Libraries
SC::Build::Link Struct Reference

Linking switches (library paths, LTO etc.) More...

#include <Build.h>

Public Types

enum  Type {
  libraryPaths ,
  linkFrameworksAny ,
  linkFrameworksMacOS ,
  linkFrameworksIOS ,
  linkLibraries ,
  guiApplication ,
  enableLTO ,
  enableASAN ,
  enableStdCpp
}
 
template<Type E, typename T >
using Tag = TaggedType< Type, E, T >
 
using FieldsTypes = TypeTraits::TypeList< Tag< libraryPaths, Vector< String > >, Tag< linkFrameworksAny, Vector< String > >, Tag< linkFrameworksMacOS, Vector< String > >, Tag< linkFrameworksIOS, Vector< String > >, Tag< linkLibraries, Vector< String > >, Tag< guiApplication, bool >, Tag< enableLTO, bool >, Tag< enableASAN, bool >, Tag< enableStdCpp, bool > >
 
using Union = TaggedUnion< Link >
 

Static Public Member Functions

static constexpr StringView typeToString (Type type)
 Get StringView describing Link::Type. More...
 

Detailed Description

Linking switches (library paths, LTO etc.)

Member Enumeration Documentation

◆ Type

Enumerator
libraryPaths 

Library paths.

linkFrameworksAny 

Frameworks to link on any Apple Platform.

linkFrameworksMacOS 

Frameworks to link on macOS.

linkFrameworksIOS 

Frameworks to link on iOS.

linkLibraries 

Libraries to link.

guiApplication 

gui application

enableLTO 

Link Time Optimization.

enableASAN 

Address Sanitizer.

enableStdCpp 

C++ Standard Library.

Member Function Documentation

◆ typeToString()

static constexpr StringView SC::Build::Link::typeToString ( Type  type)
inlinestaticconstexpr

Get StringView describing Link::Type.


The documentation for this struct was generated from the following file: