A Target consists of:
a target architecture and operating system
various bits of information about the platform
various toolchain components targetting that platform
Constructors
TargettgtArchOs :: ArchOStgtVendor :: Maybe StringThis is the vendor component of the triple, the other two components are found in
tgtArchOstgtLocallyExecutable :: BooltgtSupportsGnuNonexecStack :: BooltgtSupportsSubsectionsViaSymbols :: BooltgtSupportsIdentDirective :: BooltgtWordSize :: WordSizetgtEndianness :: ByteOrdertgtSymbolsHaveLeadingUnderscore :: BooltgtLlvmTarget :: StringtgtUnregisterised :: BooltgtTablesNextToCode :: BooltgtUseLibffiForAdjustors :: BoolWe need to know whether or not to include libffi headers, and generate additional code for it
tgtHasLibm :: BoolDoes this target have a libm library that should always be linked against?
tgtRTSWithLibdw :: Maybe LibraryWhether this target RTS is built with libdw support (for DWARF unwinding), and if yes, the Library configuration.
tgtCCompiler :: CctgtCxxCompiler :: CxxtgtCPreprocessor :: CpptgtHsCPreprocessor :: HsCpptgtJsCPreprocessor :: Maybe JsCpptgtCmmCPreprocessor :: CmmCppWe set it only in javascript target
tgtCCompilerLink :: CcLinktgtAr :: ArtgtRanlib :: Maybe RanlibN.B. Most
arimplementations will add an index by default withoutranlibso this is often optionaltgtNm :: NmtgtMergeObjs :: Maybe MergeObjsWe don't need a merge objects tool if we
Arsupports-LtgtLlc :: Maybe ProgramtgtOpt :: Maybe ProgramtgtLlvmAs :: Maybe Programassembler used to assemble LLVM backend output; typically
clangtgtWindres :: Maybe ProgramtgtOtool :: Maybe ProgramtgtInstallNameTool :: Maybe Program
Instances4Eq, Ord, Read, Show
Eq TargetDefined in ghc-toolchain-0.1.0.0 · GHC.Toolchain.TargetOrd TargetDefined in ghc-toolchain-0.1.0.0 · GHC.Toolchain.TargetRead TargetDefined in ghc-toolchain-0.1.0.0 · GHC.Toolchain.TargetShow TargetDefined in ghc-toolchain-0.1.0.0 · GHC.Toolchain.TargetHandwritten Show instance to have have better diffs against the toolchain targets generated by configure