tools_def.template 192 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139
  1. #
  2. # Copyright (c) 2006 - 2022, Intel Corporation. All rights reserved.<BR>
  3. # Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
  4. # Portions copyright (c) 2011 - 2019, ARM Ltd. All rights reserved.<BR>
  5. # Copyright (c) 2015, Hewlett-Packard Development Company, L.P.<BR>
  6. # (C) Copyright 2020, Hewlett Packard Enterprise Development LP<BR>
  7. # Copyright (c) 2022, Loongson Technology Corporation Limited. All rights reserved.<BR>
  8. # Copyright (c) Microsoft Corporation
  9. #
  10. # SPDX-License-Identifier: BSD-2-Clause-Patent
  11. #
  12. #
  13. # Increase this version tag any time you want user to get warning about updating this
  14. # file in the Conf dir. By default it does not do update existing conf dirs.
  15. #
  16. # 2.00 - Initial version with changes for CI
  17. # - Change RC path to use plugin
  18. #
  19. #!VERSION=2.00
  20. IDENTIFIER = Default TOOL_CHAIN_CONF
  21. # common path macros
  22. DEFINE VS2008_BIN = ENV(VS2008_PREFIX)Vc\bin
  23. DEFINE VS2008_DLL = ENV(VS2008_PREFIX)Common7\IDE;DEF(VS2008_BIN)
  24. DEFINE VS2008_BINX64 = DEF(VS2008_BIN)\x86_amd64
  25. DEFINE VS2008_BIN64 = DEF(VS2008_BIN)\x86_ia64
  26. DEFINE VS2008x86_BIN = ENV(VS2008_PREFIX)Vc\bin
  27. DEFINE VS2008x86_DLL = ENV(VS2008_PREFIX)Common7\IDE;DEF(VS2008x86_BIN)
  28. DEFINE VS2008x86_BINX64 = DEF(VS2008x86_BIN)\x86_amd64
  29. DEFINE VS2008x86_BIN64 = DEF(VS2008x86_BIN)\x86_ia64
  30. DEFINE VS2010_BIN = ENV(VS2010_PREFIX)Vc\bin
  31. DEFINE VS2010_DLL = ENV(VS2010_PREFIX)Common7\IDE;DEF(VS2010_BIN)
  32. DEFINE VS2010_BINX64 = DEF(VS2010_BIN)\x86_amd64
  33. DEFINE VS2010_BIN64 = DEF(VS2010_BIN)\x86_ia64
  34. DEFINE VS2010x86_BIN = ENV(VS2010_PREFIX)Vc\bin
  35. DEFINE VS2010x86_DLL = ENV(VS2010_PREFIX)Common7\IDE;DEF(VS2010x86_BIN)
  36. DEFINE VS2010x86_BINX64 = DEF(VS2010x86_BIN)\x86_amd64
  37. DEFINE VS2010x86_BIN64 = DEF(VS2010x86_BIN)\x86_ia64
  38. DEFINE VS2012_BIN = ENV(VS2012_PREFIX)Vc\bin
  39. DEFINE VS2012_DLL = ENV(VS2012_PREFIX)Common7\IDE;DEF(VS2012_BIN)
  40. DEFINE VS2012_BINX64 = DEF(VS2012_BIN)\x86_amd64
  41. DEFINE VS2012x86_BIN = ENV(VS2012_PREFIX)Vc\bin
  42. DEFINE VS2012x86_DLL = ENV(VS2012_PREFIX)Common7\IDE;DEF(VS2012x86_BIN)
  43. DEFINE VS2012x86_BINX64 = DEF(VS2012x86_BIN)\x86_amd64
  44. DEFINE VS2013_BIN = ENV(VS2013_PREFIX)Vc\bin
  45. DEFINE VS2013_DLL = ENV(VS2013_PREFIX)Common7\IDE;DEF(VS2013_BIN)
  46. DEFINE VS2013_BINX64 = DEF(VS2013_BIN)\x86_amd64
  47. DEFINE VS2013x86_BIN = ENV(VS2013_PREFIX)Vc\bin
  48. DEFINE VS2013x86_DLL = ENV(VS2013_PREFIX)Common7\IDE;DEF(VS2013x86_BIN)
  49. DEFINE VS2013x86_BINX64 = DEF(VS2013x86_BIN)\x86_amd64
  50. DEFINE VS2015_BIN = ENV(VS2015_PREFIX)Vc\bin
  51. DEFINE VS2015_DLL = ENV(VS2015_PREFIX)Common7\IDE;DEF(VS2015_BIN)
  52. DEFINE VS2015_BINX64 = DEF(VS2015_BIN)\x86_amd64
  53. DEFINE VS2015x86_BIN = ENV(VS2015_PREFIX)Vc\bin
  54. DEFINE VS2015x86_DLL = ENV(VS2015_PREFIX)Common7\IDE;DEF(VS2015x86_BIN)
  55. DEFINE VS2015x86_BINX64 = DEF(VS2015x86_BIN)\x86_amd64
  56. DEFINE VS_HOST = x86
  57. DEFINE VS2017_BIN = ENV(VS2017_PREFIX)bin
  58. DEFINE VS2017_BIN_HOST = DEF(VS2017_BIN)\HostDEF(VS_HOST)\DEF(VS_HOST)
  59. DEFINE VS2017_BIN_IA32 = DEF(VS2017_BIN)\HostDEF(VS_HOST)\x86
  60. DEFINE VS2017_BIN_X64 = DEF(VS2017_BIN)\HostDEF(VS_HOST)\x64
  61. DEFINE VS2017_BIN_ARM = DEF(VS2017_BIN)\HostDEF(VS_HOST)\arm
  62. DEFINE VS2017_BIN_AARCH64 = DEF(VS2017_BIN)\HostDEF(VS_HOST)\arm64
  63. DEFINE VS2019_BIN = ENV(VS2019_PREFIX)bin
  64. DEFINE VS2019_BIN_HOST = DEF(VS2019_BIN)\HostDEF(VS_HOST)\DEF(VS_HOST)
  65. DEFINE VS2019_BIN_IA32 = DEF(VS2019_BIN)\HostDEF(VS_HOST)\x86
  66. DEFINE VS2019_BIN_X64 = DEF(VS2019_BIN)\HostDEF(VS_HOST)\x64
  67. DEFINE VS2019_BIN_ARM = DEF(VS2019_BIN)\HostDEF(VS_HOST)\arm
  68. DEFINE VS2019_BIN_AARCH64 = DEF(VS2019_BIN)\HostDEF(VS_HOST)\arm64
  69. #
  70. # Resource compiler
  71. #
  72. DEFINE RC_PATH = ENV(WINSDK_PATH_FOR_RC_EXE)\rc.exe
  73. DEFINE WINSDK_BIN = ENV(WINSDK_PREFIX)
  74. DEFINE WINSDKx86_BIN = ENV(WINSDKx86_PREFIX)
  75. # Microsoft Visual Studio 2010
  76. DEFINE WINSDK7_BIN = ENV(WINSDK7_PREFIX)
  77. DEFINE WINSDK7x86_BIN = ENV(WINSDK7x86_PREFIX)
  78. # Microsoft Visual Studio 2012 Update 1 (required for rc.exe that was not included in the initial release)
  79. DEFINE WINSDK71_BIN = ENV(WINSDK71_PREFIX)
  80. DEFINE WINSDK71x86_BIN = ENV(WINSDK71x86_PREFIX)
  81. # Microsoft Visual Studio 2013 Professional Edition
  82. DEFINE WINSDK8_BIN = ENV(WINSDK8_PREFIX)x86\
  83. DEFINE WINSDK8x86_BIN = ENV(WINSDK8x86_PREFIX)x64
  84. # Microsoft Visual Studio 2015 Professional Edition
  85. DEFINE WINSDK81_BIN = ENV(WINSDK81_PREFIX)x86\
  86. DEFINE WINSDK81x86_BIN = ENV(WINSDK81x86_PREFIX)x64
  87. # Microsoft Visual Studio 2017/2019 Professional Edition
  88. DEFINE WINSDK10_BIN = ENV(WINSDK10_PREFIX)DEF(VS_HOST)
  89. # These defines are needed for certain Microsoft Visual Studio tools that
  90. # are used by other toolchains. An example is that ICC on Windows normally
  91. # uses Microsoft's nmake.exe.
  92. # Some MS_VS_BIN options: DEF(VS2008_BIN), DEF(VS2008x86_BIN)
  93. DEFINE MS_VS_BIN = DEF(VS2008_BIN)
  94. # Some MS_VS_DLL options: DEF(VS2008_DLL), DEF(VS2008x86_DLL)
  95. DEFINE MS_VS_DLL = DEF(VS2008_DLL)
  96. DEFINE WINDDK_BIN16 = ENV(WINDDK3790_PREFIX)bin16
  97. DEFINE WINDDK_BINX64 = ENV(WINDDK3790_PREFIX)win64\x86\amd64
  98. DEFINE EBC_BIN = C:\Program Files\Intel\EBC\Bin
  99. DEFINE EBC_BINx86 = C:\Program Files (x86)\Intel\EBC\Bin
  100. DEFINE CYGWIN_BIN = c:/cygwin/bin
  101. DEFINE CYGWIN_BINIA32 = c:/cygwin/opt/tiano/i386-tiano-pe/i386-tiano-pe/bin/
  102. DEFINE CYGWIN_BINX64 = c:/cygwin/opt/tiano/x86_64-pc-mingw64/x86_64-pc-mingw64/bin/
  103. DEFINE GCC48_IA32_PREFIX = ENV(GCC48_BIN)
  104. DEFINE GCC48_X64_PREFIX = ENV(GCC48_BIN)
  105. DEFINE GCC49_IA32_PREFIX = ENV(GCC49_BIN)
  106. DEFINE GCC49_X64_PREFIX = ENV(GCC49_BIN)
  107. DEFINE GCC5_IA32_PREFIX = ENV(GCC5_BIN)
  108. DEFINE GCC5_X64_PREFIX = ENV(GCC5_BIN)
  109. DEFINE GCC_HOST_PREFIX = ENV(GCC_HOST_BIN)
  110. DEFINE UNIX_IASL_BIN = ENV(IASL_PREFIX)iasl
  111. DEFINE WIN_IASL_BIN = ENV(IASL_PREFIX)iasl.exe
  112. DEFINE IASL_FLAGS =
  113. DEFINE IASL_OUTFLAGS = -p
  114. DEFINE DEFAULT_WIN_ASL_BIN = DEF(WIN_IASL_BIN)
  115. DEFINE DEFAULT_WIN_ASL_FLAGS = DEF(IASL_FLAGS)
  116. DEFINE DEFAULT_WIN_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
  117. # MSFT Build Flag for included header file list generation
  118. DEFINE MSFT_DEPS_FLAGS = /showIncludes
  119. DEFINE MSFT_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h
  120. DEFINE MSFT_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable
  121. DEFINE MSFT_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
  122. DEFINE IPHONE_TOOLS = /Developer/Platforms/iPhoneOS.platform/Developer
  123. DEFINE SOURCERY_CYGWIN_TOOLS = /cygdrive/c/Program Files/CodeSourcery/Sourcery G++ Lite/bin
  124. DEFINE DTCPP_BIN = ENV(DTCPP_PREFIX)cpp
  125. DEFINE DTC_BIN = ENV(DTC_PREFIX)dtc
  126. ####################################################################################
  127. #
  128. # format: TARGET_TOOLCHAIN_ARCH_COMMANDTYPE_ATTRIBUTE = <string>
  129. # priority:
  130. # TARGET_TOOLCHAIN_ARCH_COMMANDTYPE_ATTRIBUTE (Highest)
  131. # ******_TOOLCHAIN_ARCH_COMMANDTYPE_ATTRIBUTE
  132. # TARGET_*********_ARCH_COMMANDTYPE_ATTRIBUTE
  133. # ******_*********_ARCH_COMMANDTYPE_ATTRIBUTE
  134. # TARGET_TOOLCHAIN_****_COMMANDTYPE_ATTRIBUTE
  135. # ******_TOOLCHAIN_****_COMMANDTYPE_ATTRIBUTE
  136. # TARGET_*********_****_COMMANDTYPE_ATTRIBUTE
  137. # ******_*********_****_COMMANDTYPE_ATTRIBUTE
  138. # TARGET_TOOLCHAIN_ARCH_***********_ATTRIBUTE
  139. # ******_TOOLCHAIN_ARCH_***********_ATTRIBUTE
  140. # TARGET_*********_ARCH_***********_ATTRIBUTE
  141. # ******_*********_ARCH_***********_ATTRIBUTE
  142. # TARGET_TOOLCHAIN_****_***********_ATTRIBUTE
  143. # ******_TOOLCHAIN_****_***********_ATTRIBUTE
  144. # TARGET_*********_****_***********_ATTRIBUTE
  145. # ******_*********_****_***********_ATTRIBUTE (Lowest)
  146. #
  147. ####################################################################################
  148. ####################################################################################
  149. #
  150. # Supported Tool Chains
  151. # =====================
  152. # VS2008 -win32- Requires:
  153. # Microsoft Visual Studio 2008 Team Suite Edition
  154. # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
  155. # Optional:
  156. # Required to build EBC drivers:
  157. # Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
  158. # Required to build platforms or ACPI tables:
  159. # Intel(r) ACPI Compiler (iasl.exe) from
  160. # https://acpica.org/downloads
  161. # VS2010 -win32- Requires:
  162. # Microsoft Visual Studio 2010 Premium Edition
  163. # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
  164. # Optional:
  165. # Required to build EBC drivers:
  166. # Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
  167. # Required to build platforms or ACPI tables:
  168. # Intel(r) ACPI Compiler (iasl.exe) from
  169. # https://acpica.org/downloads
  170. # VS2012 -win32- Requires:
  171. # Microsoft Visual Studio 2012 Professional Edition
  172. # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
  173. # Optional:
  174. # Required to build EBC drivers:
  175. # Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
  176. # Required to build platforms or ACPI tables:
  177. # Intel(r) ACPI Compiler (iasl.exe) from
  178. # https://acpica.org/downloads
  179. # VS2013 -win32- Requires:
  180. # Microsoft Visual Studio 2013 Professional Edition
  181. # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
  182. # Optional:
  183. # Required to build EBC drivers:
  184. # Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
  185. # Required to build platforms or ACPI tables:
  186. # Intel(r) ACPI Compiler (iasl.exe) from
  187. # https://acpica.org/downloads
  188. # VS2015 -win32- Requires:
  189. # Microsoft Visual Studio 2015 Professional Edition
  190. # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
  191. # Optional:
  192. # Required to build EBC drivers:
  193. # Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
  194. # Required to build platforms or ACPI tables:
  195. # Intel(r) ACPI Compiler (iasl.exe) from
  196. # https://acpica.org/downloads
  197. # VS2017 -win32- Requires:
  198. # Microsoft Visual Studio 2017 version 15.2 (15.4 for ARM64) or later
  199. # Optional:
  200. # Required to build EBC drivers:
  201. # Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
  202. # Required to build platforms or ACPI tables:
  203. # Intel(r) ACPI Compiler (iasl.exe) from
  204. # https://acpica.org/downloads
  205. # Note:
  206. # Building of XIP firmware images for ARM/ARM64 is not currently supported (only applications).
  207. # /FILEALIGN:4096 and other changes are needed for ARM firmware builds.
  208. # VS2019 -win32- Requires:
  209. # Microsoft Visual Studio 2019 version 16.2 or later
  210. # Optional:
  211. # Required to build EBC drivers:
  212. # Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
  213. # Required to build platforms or ACPI tables:
  214. # Intel(r) ACPI Compiler (iasl.exe) from
  215. # https://acpica.org/downloads
  216. # Note:
  217. # Building of XIP firmware images for ARM/ARM64 is not currently supported (only applications).
  218. # /FILEALIGN:4096 and other changes are needed for ARM firmware builds.
  219. # GCC48 -Linux,Windows- Requires:
  220. # GCC 4.8 targeting x86_64-linux-gnu, aarch64-linux-gnu, or arm-linux-gnueabi
  221. # Optional:
  222. # Required to build platforms or ACPI tables:
  223. # Intel(r) ACPI Compiler from
  224. # https://acpica.org/downloads
  225. # GCC49 -Linux,Windows- Requires:
  226. # GCC 4.9 targeting x86_64-linux-gnu, aarch64-linux-gnu, or arm-linux-gnueabi
  227. # Optional:
  228. # Required to build platforms or ACPI tables:
  229. # Intel(r) ACPI Compiler from
  230. # https://acpica.org/downloads
  231. # GCC5 -Linux,Windows- Requires:
  232. # GCC 5 with LTO support, targeting x86_64-linux-gnu, aarch64-linux-gnu, arm-linux-gnueabi, riscv64-linux-gnu or loongarch64-linux-gnu
  233. # Optional:
  234. # Required to build platforms or ACPI tables:
  235. # Intel(r) ACPI Compiler from
  236. # https://acpica.org/downloads
  237. #
  238. # CLANG35 -Linux,Windows- Requires:
  239. # Clang v3.5 or later, and GNU binutils targeting aarch64-linux-gnu or arm-linux-gnueabi
  240. # Optional:
  241. # Required to build platforms or ACPI tables:
  242. # Intel(r) ACPI Compiler from
  243. # https://acpica.org/downloads
  244. # CLANG38 -Linux- Requires:
  245. # Clang v3.8, LLVMgold plugin and GNU binutils 2.26 targeting x86_64-linux-gnu, aarch64-linux-gnu or arm-linux-gnueabi
  246. # Clang v3.9 or later, LLVMgold plugin and GNU binutils 2.28 targeting x86_64-linux-gnu, aarch64-linux-gnu or arm-linux-gnueabi
  247. # Optional:
  248. # Required to build platforms or ACPI tables:
  249. # Intel(r) ACPI Compiler from
  250. # https://acpica.org/downloads
  251. # CLANGPDB -Linux, Windows, Mac- Requires:
  252. # Clang 9 or above from http://releases.llvm.org/
  253. # Optional:
  254. # Required to compile nasm source:
  255. # nasm compiler from
  256. # NASM -- http://www.nasm.us/
  257. # CLANGDWARF -Linux, Windows, Mac- Requires:
  258. # Clang 9 or above from http://releases.llvm.org/
  259. # Optional:
  260. # Required to compile nasm source:
  261. # nasm compiler from
  262. # NASM -- http://www.nasm.us/
  263. # VS2008x86 -win64- Requires:
  264. # Microsoft Visual Studio 2008 (x86)
  265. # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
  266. # Optional:
  267. # Required to build platforms or ACPI tables:
  268. # Intel(r) ACPI Compiler (iasl.exe) from
  269. # https://acpica.org/downloads
  270. # VS2010x86 -win64- Requires:
  271. # Microsoft Visual Studio 2010 (x86) Premium Edition
  272. # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
  273. # Optional:
  274. # Required to build platforms or ACPI tables:
  275. # Intel(r) ACPI Compiler (iasl.exe) from
  276. # https://acpica.org/downloads
  277. # VS2012x86 -win64- Requires:
  278. # Microsoft Visual Studio 2012 (x86) Professional Edition
  279. # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
  280. # Optional:
  281. # Required to build platforms or ACPI tables:
  282. # Intel(r) ACPI Compiler (iasl.exe) from
  283. # https://acpica.org/downloads
  284. # VS2013x86 -win64- Requires:
  285. # Microsoft Visual Studio 2013 (x86) Professional Edition
  286. # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
  287. # Optional:
  288. # Required to build platforms or ACPI tables:
  289. # Intel(r) ACPI Compiler (iasl.exe) from
  290. # https://acpica.org/downloads
  291. # VS2015x86 -win64- Requires:
  292. # Microsoft Visual Studio 2015 (x86) Update 2 or above
  293. # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
  294. # Optional:
  295. # Required to build platforms or ACPI tables:
  296. # Intel(r) ACPI Compiler (iasl.exe) from
  297. # https://acpica.org/downloads
  298. # * Commented out - All versions of VS2005 use the same standard install directory
  299. #
  300. ####################################################################################
  301. ####################################################################################
  302. #
  303. # Supported Tool Chain Family
  304. # ===========================
  305. # MSFT - Microsoft
  306. # GCC - GNU GCC
  307. # INTEL - INTEL
  308. ####################################################################################
  309. ####################################################################################
  310. #
  311. # Other Supported Tools
  312. # =====================
  313. # NASM -- http://www.nasm.us/
  314. # - NASM 2.15.05 or later for use with the GCC toolchain family
  315. # - NASM 2.15.05 or later for use with all other toolchain families
  316. #
  317. ####################################################################################
  318. ####################################################################################
  319. #
  320. # Intel EFI Byte Code Compiler (Template)
  321. #
  322. ####################################################################################
  323. # *_*_EBC_*_FAMILY = INTEL
  324. #
  325. # *_*_EBC_PP_PATH = C:\Program Files\Intel\EBC\Bin\iec.exe
  326. # *_*_EBC_CC_PATH = C:\Program Files\Intel\EBC\Bin\iec.exe
  327. # *_*_EBC_SLINK_PATH = C:\Program Files\Intel\EBC\Bin\link.exe
  328. #
  329. # *_*_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
  330. # *_*_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  331. # *_*_EBC_CC_FLAGS = /nologo /FAcs /c /W3 /WX /FIAutoGen.h
  332. # *_*_EBC_DLINK_FLAGS = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /MACHINE:EBC /OPT:REF /NODEFAULTLIB /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /ALIGN:32 /DRIVER
  333. #
  334. ####################################################################################
  335. #
  336. # Intel ACPI Source Language Compiler (Template)
  337. #
  338. ####################################################################################
  339. # *_*_*_ASL_FAMILY = INTEL
  340. #
  341. # *_*_*_ASL_PATH = C:\ASL\iasl.exe
  342. #
  343. ####################################################################################
  344. #
  345. # Microsoft ACPI Source Language Compiler (Template)
  346. #
  347. ####################################################################################
  348. # *_*_*_ASL_FAMILY = MSFT
  349. #
  350. # *_*_*_ASL_PATH = C:\ASL\asl.exe
  351. #
  352. ####################################################################################
  353. ####################################################################################
  354. #
  355. # Microsoft Visual Studio 2008
  356. #
  357. # VS2008 - Microsoft Visual Studio 2005 All Edition, including Standard, Professional, Express, TeamSuite
  358. # ASL - Intel ACPI Source Language Compiler
  359. ####################################################################################
  360. # VS2008 - Microsoft Visual Studio 2008 ALL Edition, including Standard, Professional, Express, TeamSuite
  361. *_VS2008_*_*_FAMILY = MSFT
  362. *_VS2008_*_MAKE_PATH = DEF(VS2008_BIN)\nmake.exe
  363. *_VS2008_*_MAKE_FLAGS = /nologo
  364. *_VS2008_*_RC_PATH = DEF(WINSDK_BIN)\rc.exe
  365. *_VS2008_*_SLINK_FLAGS = /NOLOGO /LTCG
  366. *_VS2008_*_APP_FLAGS = /nologo /E /TC
  367. *_VS2008_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  368. *_VS2008_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  369. *_VS2008_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
  370. *_VS2008_*_ASM16_PATH = DEF(VS2008_BIN)\ml.exe
  371. ##################
  372. # ASL definitions
  373. ##################
  374. *_VS2008_*_ASL_PATH = DEF(DEFAULT_WIN_ASL_BIN)
  375. *_VS2008_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
  376. *_VS2008_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
  377. *_VS2008_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
  378. *_VS2008_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
  379. *_VS2008_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
  380. ##################
  381. # IA32 definitions
  382. ##################
  383. *_VS2008_IA32_*_DLL = DEF(VS2008_DLL)
  384. *_VS2008_IA32_CC_PATH = DEF(VS2008_BIN)\cl.exe
  385. *_VS2008_IA32_VFRPP_PATH = DEF(VS2008_BIN)\cl.exe
  386. *_VS2008_IA32_SLINK_PATH = DEF(VS2008_BIN)\lib.exe
  387. *_VS2008_IA32_DLINK_PATH = DEF(VS2008_BIN)\link.exe
  388. *_VS2008_IA32_APP_PATH = DEF(VS2008_BIN)\cl.exe
  389. *_VS2008_IA32_PP_PATH = DEF(VS2008_BIN)\cl.exe
  390. *_VS2008_IA32_ASM_PATH = DEF(VS2008_BIN)\ml.exe
  391. *_VS2008_IA32_ASLCC_PATH = DEF(VS2008_BIN)\cl.exe
  392. *_VS2008_IA32_ASLPP_PATH = DEF(VS2008_BIN)\cl.exe
  393. *_VS2008_IA32_ASLDLINK_PATH = DEF(VS2008_BIN)\link.exe
  394. DEBUG_VS2008_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm
  395. RELEASE_VS2008_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF
  396. NOOPT_VS2008_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /Od
  397. DEBUG_VS2008_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  398. RELEASE_VS2008_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
  399. NOOPT_VS2008_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  400. DEBUG_VS2008_IA32_NASM_FLAGS = -Ox -f win32 -g
  401. RELEASE_VS2008_IA32_NASM_FLAGS = -Ox -f win32
  402. NOOPT_VS2008_IA32_NASM_FLAGS = -O0 -f win32 -g
  403. DEBUG_VS2008_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  404. RELEASE_VS2008_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  405. NOOPT_VS2008_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  406. ##################
  407. # X64 definitions
  408. ##################
  409. *_VS2008_X64_*_DLL = DEF(VS2008_DLL)
  410. *_VS2008_X64_CC_PATH = DEF(VS2008_BINX64)\cl.exe
  411. *_VS2008_X64_PP_PATH = DEF(VS2008_BINX64)\cl.exe
  412. *_VS2008_X64_APP_PATH = DEF(VS2008_BINX64)\cl.exe
  413. *_VS2008_X64_VFRPP_PATH = DEF(VS2008_BINX64)\cl.exe
  414. *_VS2008_X64_ASM_PATH = DEF(VS2008_BINX64)\ml64.exe
  415. *_VS2008_X64_SLINK_PATH = DEF(VS2008_BINX64)\lib.exe
  416. *_VS2008_X64_DLINK_PATH = DEF(VS2008_BINX64)\link.exe
  417. *_VS2008_X64_ASLCC_PATH = DEF(VS2008_BINX64)\cl.exe
  418. *_VS2008_X64_ASLPP_PATH = DEF(VS2008_BINX64)\cl.exe
  419. *_VS2008_X64_ASLDLINK_PATH = DEF(VS2008_BINX64)\link.exe
  420. DEBUG_VS2008_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7
  421. RELEASE_VS2008_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
  422. NOOPT_VS2008_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
  423. DEBUG_VS2008_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  424. RELEASE_VS2008_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
  425. NOOPT_VS2008_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  426. DEBUG_VS2008_X64_NASM_FLAGS = -Ox -f win64 -g
  427. RELEASE_VS2008_X64_NASM_FLAGS = -Ox -f win64
  428. NOOPT_VS2008_X64_NASM_FLAGS = -O0 -f win64 -g
  429. DEBUG_VS2008_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  430. RELEASE_VS2008_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  431. NOOPT_VS2008_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  432. ##################
  433. # EBC definitions
  434. ##################
  435. *_VS2008_EBC_*_FAMILY = INTEL
  436. *_VS2008_EBC_*_DLL = DEF(VS2008_DLL)
  437. *_VS2008_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe
  438. *_VS2008_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe
  439. *_VS2008_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe
  440. *_VS2008_EBC_SLINK_PATH = DEF(VS2008_BIN)\link.exe
  441. *_VS2008_EBC_DLINK_PATH = DEF(VS2008_BIN)\link.exe
  442. *_VS2008_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  443. *_VS2008_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
  444. *_VS2008_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  445. *_VS2008_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
  446. *_VS2008_EBC_DLINK_FLAGS = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
  447. ####################################################################################
  448. # VS2008x86 - Microsoft Visual Studio 2008 (x86) with Intel ASL
  449. # ASL - Intel ACPI Source Language Compiler (iasl.exe)
  450. ####################################################################################
  451. # VS2008x86 - Microsoft Visual Studio 2008 (x86) ALL Edition with Intel ASL
  452. *_VS2008x86_*_*_FAMILY = MSFT
  453. *_VS2008x86_*_MAKE_PATH = DEF(VS2008x86_BIN)\nmake.exe
  454. *_VS2008x86_*_MAKE_FLAGS = /nologo
  455. *_VS2008x86_*_RC_PATH = DEF(WINSDK_BIN)\rc.exe
  456. *_VS2008x86_*_SLINK_FLAGS = /NOLOGO /LTCG
  457. *_VS2008x86_*_APP_FLAGS = /nologo /E /TC
  458. *_VS2008x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  459. *_VS2008x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  460. *_VS2008x86_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
  461. *_VS2008x86_*_ASM16_PATH = DEF(VS2008x86_BIN)\ml.exe
  462. ##################
  463. # ASL definitions
  464. ##################
  465. *_VS2008x86_*_ASL_PATH = DEF(WIN_IASL_BIN)
  466. *_VS2008x86_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
  467. *_VS2008x86_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
  468. *_VS2008x86_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
  469. *_VS2008x86_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
  470. *_VS2008x86_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
  471. ##################
  472. # IA32 definitions
  473. ##################
  474. *_VS2008x86_IA32_*_DLL = DEF(VS2008x86_DLL)
  475. *_VS2008x86_IA32_CC_PATH = DEF(VS2008x86_BIN)\cl.exe
  476. *_VS2008x86_IA32_VFRPP_PATH = DEF(VS2008x86_BIN)\cl.exe
  477. *_VS2008x86_IA32_ASLCC_PATH = DEF(VS2008x86_BIN)\cl.exe
  478. *_VS2008x86_IA32_ASLPP_PATH = DEF(VS2008x86_BIN)\cl.exe
  479. *_VS2008x86_IA32_SLINK_PATH = DEF(VS2008x86_BIN)\lib.exe
  480. *_VS2008x86_IA32_DLINK_PATH = DEF(VS2008x86_BIN)\link.exe
  481. *_VS2008x86_IA32_ASLDLINK_PATH= DEF(VS2008x86_BIN)\link.exe
  482. *_VS2008x86_IA32_APP_PATH = DEF(VS2008x86_BIN)\cl.exe
  483. *_VS2008x86_IA32_PP_PATH = DEF(VS2008x86_BIN)\cl.exe
  484. *_VS2008x86_IA32_ASM_PATH = DEF(VS2008x86_BIN)\ml.exe
  485. DEBUG_VS2008x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7
  486. RELEASE_VS2008x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF
  487. NOOPT_VS2008x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
  488. DEBUG_VS2008x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  489. RELEASE_VS2008x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
  490. NOOPT_VS2008x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  491. DEBUG_VS2008x86_IA32_NASM_FLAGS = -Ox -f win32 -g
  492. RELEASE_VS2008x86_IA32_NASM_FLAGS = -Ox -f win32
  493. NOOPT_VS2008x86_IA32_NASM_FLAGS = -O0 -f win32 -g
  494. DEBUG_VS2008x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  495. RELEASE_VS2008x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  496. NOOPT_VS2008x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  497. ##################
  498. # X64 definitions
  499. ##################
  500. *_VS2008x86_X64_*_DLL = DEF(VS2008x86_DLL)
  501. *_VS2008x86_X64_CC_PATH = DEF(VS2008x86_BINX64)\cl.exe
  502. *_VS2008x86_X64_PP_PATH = DEF(VS2008x86_BINX64)\cl.exe
  503. *_VS2008x86_X64_APP_PATH = DEF(VS2008x86_BINX64)\cl.exe
  504. *_VS2008x86_X64_VFRPP_PATH = DEF(VS2008x86_BINX64)\cl.exe
  505. *_VS2008x86_X64_ASLCC_PATH = DEF(VS2008x86_BINX64)\cl.exe
  506. *_VS2008x86_X64_ASLPP_PATH = DEF(VS2008x86_BINX64)\cl.exe
  507. *_VS2008x86_X64_ASM_PATH = DEF(VS2008x86_BINX64)\ml64.exe
  508. *_VS2008x86_X64_SLINK_PATH = DEF(VS2008x86_BINX64)\lib.exe
  509. *_VS2008x86_X64_DLINK_PATH = DEF(VS2008x86_BINX64)\link.exe
  510. *_VS2008x86_X64_ASLDLINK_PATH = DEF(VS2008x86_BINX64)\link.exe
  511. DEBUG_VS2008x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7
  512. RELEASE_VS2008x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
  513. NOOPT_VS2008x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
  514. DEBUG_VS2008x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  515. RELEASE_VS2008x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
  516. NOOPT_VS2008x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  517. DEBUG_VS2008x86_X64_NASM_FLAGS = -Ox -f win64 -g
  518. RELEASE_VS2008x86_X64_NASM_FLAGS = -Ox -f win64
  519. NOOPT_VS2008x86_X64_NASM_FLAGS = -O0 -f win64 -g
  520. DEBUG_VS2008x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  521. RELEASE_VS2008x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  522. NOOPT_VS2008x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  523. ##################
  524. # EBC definitions
  525. ##################
  526. *_VS2008x86_EBC_*_FAMILY = INTEL
  527. *_VS2008x86_EBC_*_DLL = DEF(VS2008x86_DLL)
  528. *_VS2008x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
  529. *_VS2008x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
  530. *_VS2008x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
  531. *_VS2008x86_EBC_SLINK_PATH = DEF(VS2008x86_BIN)\link.exe
  532. *_VS2008x86_EBC_DLINK_PATH = DEF(VS2008x86_BIN)\link.exe
  533. *_VS2008x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  534. *_VS2008x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
  535. *_VS2008x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  536. *_VS2008x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
  537. *_VS2008x86_EBC_DLINK_FLAGS = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
  538. ####################################################################################
  539. #
  540. # Microsoft Visual Studio 2010
  541. #
  542. # VS2010 - Microsoft Visual Studio 2010 Premium Edition with Intel ASL
  543. # ASL - Intel ACPI Source Language Compiler
  544. ####################################################################################
  545. # VS2010 - Microsoft Visual Studio 2010 Premium Edition
  546. *_VS2010_*_*_FAMILY = MSFT
  547. *_VS2010_*_MAKE_PATH = DEF(VS2010_BIN)\nmake.exe
  548. *_VS2010_*_MAKE_FLAGS = /nologo
  549. *_VS2010_*_RC_PATH = DEF(WINSDK7_BIN)\rc.exe
  550. *_VS2010_*_SLINK_FLAGS = /NOLOGO /LTCG
  551. *_VS2010_*_APP_FLAGS = /nologo /E /TC
  552. *_VS2010_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  553. *_VS2010_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  554. *_VS2010_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
  555. *_VS2010_*_ASM16_PATH = DEF(VS2010_BIN)\ml.exe
  556. ##################
  557. # ASL definitions
  558. ##################
  559. *_VS2010_*_ASL_PATH = DEF(DEFAULT_WIN_ASL_BIN)
  560. *_VS2010_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
  561. *_VS2010_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
  562. *_VS2010_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
  563. *_VS2010_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
  564. *_VS2010_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
  565. ##################
  566. # IA32 definitions
  567. ##################
  568. *_VS2010_IA32_*_DLL = DEF(VS2010_DLL)
  569. *_VS2010_IA32_CC_PATH = DEF(VS2010_BIN)\cl.exe
  570. *_VS2010_IA32_VFRPP_PATH = DEF(VS2010_BIN)\cl.exe
  571. *_VS2010_IA32_SLINK_PATH = DEF(VS2010_BIN)\lib.exe
  572. *_VS2010_IA32_DLINK_PATH = DEF(VS2010_BIN)\link.exe
  573. *_VS2010_IA32_APP_PATH = DEF(VS2010_BIN)\cl.exe
  574. *_VS2010_IA32_PP_PATH = DEF(VS2010_BIN)\cl.exe
  575. *_VS2010_IA32_ASM_PATH = DEF(VS2010_BIN)\ml.exe
  576. *_VS2010_IA32_ASLCC_PATH = DEF(VS2010_BIN)\cl.exe
  577. *_VS2010_IA32_ASLPP_PATH = DEF(VS2010_BIN)\cl.exe
  578. *_VS2010_IA32_ASLDLINK_PATH = DEF(VS2010_BIN)\link.exe
  579. DEBUG_VS2010_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7
  580. RELEASE_VS2010_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF
  581. NOOPT_VS2010_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /Od
  582. DEBUG_VS2010_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  583. RELEASE_VS2010_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
  584. NOOPT_VS2010_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  585. DEBUG_VS2010_IA32_NASM_FLAGS = -Ox -f win32 -g
  586. RELEASE_VS2010_IA32_NASM_FLAGS = -Ox -f win32
  587. NOOPT_VS2010_IA32_NASM_FLAGS = -O0 -f win32 -g
  588. DEBUG_VS2010_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  589. RELEASE_VS2010_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  590. NOOPT_VS2010_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  591. ##################
  592. # X64 definitions
  593. ##################
  594. *_VS2010_X64_*_DLL = DEF(VS2010_DLL)
  595. *_VS2010_X64_CC_PATH = DEF(VS2010_BINX64)\cl.exe
  596. *_VS2010_X64_PP_PATH = DEF(VS2010_BINX64)\cl.exe
  597. *_VS2010_X64_APP_PATH = DEF(VS2010_BINX64)\cl.exe
  598. *_VS2010_X64_VFRPP_PATH = DEF(VS2010_BINX64)\cl.exe
  599. *_VS2010_X64_ASM_PATH = DEF(VS2010_BINX64)\ml64.exe
  600. *_VS2010_X64_SLINK_PATH = DEF(VS2010_BINX64)\lib.exe
  601. *_VS2010_X64_DLINK_PATH = DEF(VS2010_BINX64)\link.exe
  602. *_VS2010_X64_ASLCC_PATH = DEF(VS2010_BINX64)\cl.exe
  603. *_VS2010_X64_ASLPP_PATH = DEF(VS2010_BINX64)\cl.exe
  604. *_VS2010_X64_ASLDLINK_PATH = DEF(VS2010_BINX64)\link.exe
  605. DEBUG_VS2010_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7
  606. RELEASE_VS2010_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
  607. NOOPT_VS2010_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
  608. DEBUG_VS2010_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  609. RELEASE_VS2010_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
  610. NOOPT_VS2010_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  611. DEBUG_VS2010_X64_NASM_FLAGS = -Ox -f win64 -g
  612. RELEASE_VS2010_X64_NASM_FLAGS = -Ox -f win64
  613. NOOPT_VS2010_X64_NASM_FLAGS = -O0 -f win64 -g
  614. DEBUG_VS2010_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  615. RELEASE_VS2010_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  616. NOOPT_VS2010_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  617. ##################
  618. # EBC definitions
  619. ##################
  620. *_VS2010_EBC_*_FAMILY = INTEL
  621. *_VS2010_EBC_*_DLL = DEF(VS2010_DLL)
  622. *_VS2010_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe
  623. *_VS2010_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe
  624. *_VS2010_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe
  625. *_VS2010_EBC_SLINK_PATH = DEF(VS2010_BIN)\link.exe
  626. *_VS2010_EBC_DLINK_PATH = DEF(VS2010_BIN)\link.exe
  627. *_VS2010_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  628. *_VS2010_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
  629. *_VS2010_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  630. *_VS2010_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
  631. *_VS2010_EBC_DLINK_FLAGS = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
  632. ####################################################################################
  633. # VS2010x86 - Microsoft Visual Studio 2010 (x86) with Intel ASL
  634. # ASL - Intel ACPI Source Language Compiler (iasl.exe)
  635. ####################################################################################
  636. # VS2010x86 - Microsoft Visual Studio 2010 (x86) ALL Edition with Intel ASL
  637. *_VS2010x86_*_*_FAMILY = MSFT
  638. *_VS2010x86_*_MAKE_PATH = DEF(VS2010x86_BIN)\nmake.exe
  639. *_VS2010x86_*_MAKE_FLAGS = /nologo
  640. *_VS2010x86_*_RC_PATH = DEF(WINSDK7x86_BIN)\rc.exe
  641. *_VS2010x86_*_SLINK_FLAGS = /NOLOGO /LTCG
  642. *_VS2010x86_*_APP_FLAGS = /nologo /E /TC
  643. *_VS2010x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  644. *_VS2010x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  645. *_VS2010x86_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
  646. *_VS2010x86_*_ASM16_PATH = DEF(VS2010x86_BIN)\ml.exe
  647. ##################
  648. # ASL definitions
  649. ##################
  650. *_VS2010x86_*_ASL_PATH = DEF(WIN_IASL_BIN)
  651. *_VS2010x86_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
  652. *_VS2010x86_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
  653. *_VS2010x86_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
  654. *_VS2010x86_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
  655. *_VS2010x86_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
  656. ##################
  657. # IA32 definitions
  658. ##################
  659. *_VS2010x86_IA32_*_DLL = DEF(VS2010x86_DLL)
  660. *_VS2010x86_IA32_CC_PATH = DEF(VS2010x86_BIN)\cl.exe
  661. *_VS2010x86_IA32_VFRPP_PATH = DEF(VS2010x86_BIN)\cl.exe
  662. *_VS2010x86_IA32_ASLCC_PATH = DEF(VS2010x86_BIN)\cl.exe
  663. *_VS2010x86_IA32_ASLPP_PATH = DEF(VS2010x86_BIN)\cl.exe
  664. *_VS2010x86_IA32_SLINK_PATH = DEF(VS2010x86_BIN)\lib.exe
  665. *_VS2010x86_IA32_DLINK_PATH = DEF(VS2010x86_BIN)\link.exe
  666. *_VS2010x86_IA32_ASLDLINK_PATH= DEF(VS2010x86_BIN)\link.exe
  667. *_VS2010x86_IA32_APP_PATH = DEF(VS2010x86_BIN)\cl.exe
  668. *_VS2010x86_IA32_PP_PATH = DEF(VS2010x86_BIN)\cl.exe
  669. *_VS2010x86_IA32_ASM_PATH = DEF(VS2010x86_BIN)\ml.exe
  670. DEBUG_VS2010x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7
  671. RELEASE_VS2010x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF
  672. NOOPT_VS2010x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
  673. DEBUG_VS2010x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  674. RELEASE_VS2010x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
  675. NOOPT_VS2010x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  676. DEBUG_VS2010x86_IA32_NASM_FLAGS = -Ox -f win32 -g
  677. RELEASE_VS2010x86_IA32_NASM_FLAGS = -Ox -f win32
  678. NOOPT_VS2010x86_IA32_NASM_FLAGS = -O0 -f win32 -g
  679. DEBUG_VS2010x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  680. RELEASE_VS2010x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  681. NOOPT_VS2010x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  682. ##################
  683. # X64 definitions
  684. ##################
  685. *_VS2010x86_X64_*_DLL = DEF(VS2010x86_DLL)
  686. *_VS2010x86_X64_CC_PATH = DEF(VS2010x86_BINX64)\cl.exe
  687. *_VS2010x86_X64_PP_PATH = DEF(VS2010x86_BINX64)\cl.exe
  688. *_VS2010x86_X64_APP_PATH = DEF(VS2010x86_BINX64)\cl.exe
  689. *_VS2010x86_X64_VFRPP_PATH = DEF(VS2010x86_BINX64)\cl.exe
  690. *_VS2010x86_X64_ASLCC_PATH = DEF(VS2010x86_BINX64)\cl.exe
  691. *_VS2010x86_X64_ASLPP_PATH = DEF(VS2010x86_BINX64)\cl.exe
  692. *_VS2010x86_X64_ASM_PATH = DEF(VS2010x86_BINX64)\ml64.exe
  693. *_VS2010x86_X64_SLINK_PATH = DEF(VS2010x86_BINX64)\lib.exe
  694. *_VS2010x86_X64_DLINK_PATH = DEF(VS2010x86_BINX64)\link.exe
  695. *_VS2010x86_X64_ASLDLINK_PATH = DEF(VS2010x86_BINX64)\link.exe
  696. DEBUG_VS2010x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7
  697. RELEASE_VS2010x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
  698. NOOPT_VS2010x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
  699. DEBUG_VS2010x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  700. RELEASE_VS2010x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
  701. NOOPT_VS2010x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  702. DEBUG_VS2010x86_X64_NASM_FLAGS = -Ox -f win64 -g
  703. RELEASE_VS2010x86_X64_NASM_FLAGS = -Ox -f win64
  704. NOOPT_VS2010x86_X64_NASM_FLAGS = -O0 -f win64 -g
  705. DEBUG_VS2010x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  706. RELEASE_VS2010x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  707. NOOPT_VS2010x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  708. ##################
  709. # EBC definitions
  710. ##################
  711. *_VS2010x86_EBC_*_FAMILY = INTEL
  712. *_VS2010x86_EBC_*_DLL = DEF(VS2010x86_DLL)
  713. *_VS2010x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
  714. *_VS2010x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
  715. *_VS2010x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
  716. *_VS2010x86_EBC_SLINK_PATH = DEF(VS2010x86_BIN)\link.exe
  717. *_VS2010x86_EBC_DLINK_PATH = DEF(VS2010x86_BIN)\link.exe
  718. *_VS2010x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  719. *_VS2010x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
  720. *_VS2010x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  721. *_VS2010x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
  722. *_VS2010x86_EBC_DLINK_FLAGS = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
  723. ####################################################################################
  724. #
  725. # Microsoft Visual Studio 2012
  726. #
  727. # VS2012 - Microsoft Visual Studio 2012 Professional Edition with Intel ASL
  728. # ASL - Intel ACPI Source Language Compiler
  729. ####################################################################################
  730. # VS2012 - Microsoft Visual Studio 2012 Professional Edition
  731. *_VS2012_*_*_FAMILY = MSFT
  732. *_VS2012_*_MAKE_PATH = DEF(VS2012_BIN)\nmake.exe
  733. *_VS2012_*_MAKE_FLAGS = /nologo
  734. *_VS2012_*_RC_PATH = DEF(WINSDK71_BIN)\rc.exe
  735. *_VS2012_*_SLINK_FLAGS = /NOLOGO /LTCG
  736. *_VS2012_*_APP_FLAGS = /nologo /E /TC
  737. *_VS2012_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  738. *_VS2012_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  739. *_VS2012_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
  740. *_VS2012_*_ASM16_PATH = DEF(VS2012_BIN)\ml.exe
  741. ##################
  742. # ASL definitions
  743. ##################
  744. *_VS2012_*_ASL_PATH = DEF(DEFAULT_WIN_ASL_BIN)
  745. *_VS2012_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
  746. *_VS2012_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
  747. *_VS2012_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
  748. *_VS2012_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
  749. *_VS2012_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
  750. ##################
  751. # IA32 definitions
  752. ##################
  753. *_VS2012_IA32_*_DLL = DEF(VS2012_DLL)
  754. *_VS2012_IA32_CC_PATH = DEF(VS2012_BIN)\cl.exe
  755. *_VS2012_IA32_VFRPP_PATH = DEF(VS2012_BIN)\cl.exe
  756. *_VS2012_IA32_SLINK_PATH = DEF(VS2012_BIN)\lib.exe
  757. *_VS2012_IA32_DLINK_PATH = DEF(VS2012_BIN)\link.exe
  758. *_VS2012_IA32_APP_PATH = DEF(VS2012_BIN)\cl.exe
  759. *_VS2012_IA32_PP_PATH = DEF(VS2012_BIN)\cl.exe
  760. *_VS2012_IA32_ASM_PATH = DEF(VS2012_BIN)\ml.exe
  761. *_VS2012_IA32_ASLCC_PATH = DEF(VS2012_BIN)\cl.exe
  762. *_VS2012_IA32_ASLPP_PATH = DEF(VS2012_BIN)\cl.exe
  763. *_VS2012_IA32_ASLDLINK_PATH = DEF(VS2012_BIN)\link.exe
  764. DEBUG_VS2012_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7
  765. RELEASE_VS2012_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF
  766. NOOPT_VS2012_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
  767. DEBUG_VS2012_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  768. RELEASE_VS2012_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
  769. NOOPT_VS2012_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  770. DEBUG_VS2012_IA32_NASM_FLAGS = -Ox -f win32 -g
  771. RELEASE_VS2012_IA32_NASM_FLAGS = -Ox -f win32
  772. NOOPT_VS2012_IA32_NASM_FLAGS = -O0 -f win32 -g
  773. DEBUG_VS2012_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  774. RELEASE_VS2012_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  775. NOOPT_VS2012_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  776. ##################
  777. # X64 definitions
  778. ##################
  779. *_VS2012_X64_*_DLL = DEF(VS2012_DLL)
  780. *_VS2012_X64_CC_PATH = DEF(VS2012_BINX64)\cl.exe
  781. *_VS2012_X64_PP_PATH = DEF(VS2012_BINX64)\cl.exe
  782. *_VS2012_X64_APP_PATH = DEF(VS2012_BINX64)\cl.exe
  783. *_VS2012_X64_VFRPP_PATH = DEF(VS2012_BINX64)\cl.exe
  784. *_VS2012_X64_ASM_PATH = DEF(VS2012_BINX64)\ml64.exe
  785. *_VS2012_X64_SLINK_PATH = DEF(VS2012_BINX64)\lib.exe
  786. *_VS2012_X64_DLINK_PATH = DEF(VS2012_BINX64)\link.exe
  787. *_VS2012_X64_ASLCC_PATH = DEF(VS2012_BINX64)\cl.exe
  788. *_VS2012_X64_ASLPP_PATH = DEF(VS2012_BINX64)\cl.exe
  789. *_VS2012_X64_ASLDLINK_PATH = DEF(VS2012_BINX64)\link.exe
  790. DEBUG_VS2012_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7
  791. RELEASE_VS2012_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
  792. NOOPT_VS2012_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
  793. DEBUG_VS2012_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  794. RELEASE_VS2012_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
  795. NOOPT_VS2012_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  796. DEBUG_VS2012_X64_NASM_FLAGS = -Ox -f win64 -g
  797. RELEASE_VS2012_X64_NASM_FLAGS = -Ox -f win64
  798. NOOPT_VS2012_X64_NASM_FLAGS = -O0 -f win64 -g
  799. DEBUG_VS2012_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  800. RELEASE_VS2012_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  801. NOOPT_VS2012_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  802. ##################
  803. # EBC definitions
  804. ##################
  805. *_VS2012_EBC_*_FAMILY = INTEL
  806. *_VS2012_EBC_*_DLL = DEF(VS2012_DLL)
  807. *_VS2012_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe
  808. *_VS2012_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe
  809. *_VS2012_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe
  810. *_VS2012_EBC_SLINK_PATH = DEF(VS2012_BIN)\link.exe
  811. *_VS2012_EBC_DLINK_PATH = DEF(VS2012_BIN)\link.exe
  812. *_VS2012_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  813. *_VS2012_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
  814. *_VS2012_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  815. *_VS2012_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
  816. *_VS2012_EBC_DLINK_FLAGS = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
  817. ####################################################################################
  818. # VS2012x86 - Microsoft Visual Studio 2012 (x86) professional with Intel ASL
  819. # ASL - Intel ACPI Source Language Compiler (iasl.exe)
  820. ####################################################################################
  821. # VS2012x86 - Microsoft Visual Studio 2012 (x86) professional Edition with Intel ASL
  822. *_VS2012x86_*_*_FAMILY = MSFT
  823. *_VS2012x86_*_MAKE_PATH = DEF(VS2012x86_BIN)\nmake.exe
  824. *_VS2012x86_*_MAKE_FLAGS = /nologo
  825. *_VS2012x86_*_RC_PATH = DEF(WINSDK71x86_BIN)\rc.exe
  826. *_VS2012x86_*_SLINK_FLAGS = /NOLOGO /LTCG
  827. *_VS2012x86_*_APP_FLAGS = /nologo /E /TC
  828. *_VS2012x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  829. *_VS2012x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  830. *_VS2012x86_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
  831. *_VS2012x86_*_ASM16_PATH = DEF(VS2012x86_BIN)\ml.exe
  832. ##################
  833. # ASL definitions
  834. ##################
  835. *_VS2012x86_*_ASL_PATH = DEF(WIN_IASL_BIN)
  836. *_VS2012x86_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
  837. *_VS2012x86_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
  838. *_VS2012x86_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
  839. *_VS2012x86_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
  840. *_VS2012x86_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
  841. ##################
  842. # IA32 definitions
  843. ##################
  844. *_VS2012x86_IA32_*_DLL = DEF(VS2012x86_DLL)
  845. *_VS2012x86_IA32_CC_PATH = DEF(VS2012x86_BIN)\cl.exe
  846. *_VS2012x86_IA32_VFRPP_PATH = DEF(VS2012x86_BIN)\cl.exe
  847. *_VS2012x86_IA32_ASLCC_PATH = DEF(VS2012x86_BIN)\cl.exe
  848. *_VS2012x86_IA32_ASLPP_PATH = DEF(VS2012x86_BIN)\cl.exe
  849. *_VS2012x86_IA32_SLINK_PATH = DEF(VS2012x86_BIN)\lib.exe
  850. *_VS2012x86_IA32_DLINK_PATH = DEF(VS2012x86_BIN)\link.exe
  851. *_VS2012x86_IA32_ASLDLINK_PATH= DEF(VS2012x86_BIN)\link.exe
  852. *_VS2012x86_IA32_APP_PATH = DEF(VS2012x86_BIN)\cl.exe
  853. *_VS2012x86_IA32_PP_PATH = DEF(VS2012x86_BIN)\cl.exe
  854. *_VS2012x86_IA32_ASM_PATH = DEF(VS2012x86_BIN)\ml.exe
  855. DEBUG_VS2012x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7
  856. RELEASE_VS2012x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF
  857. NOOPT_VS2012x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
  858. DEBUG_VS2012x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  859. RELEASE_VS2012x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
  860. NOOPT_VS2012x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  861. DEBUG_VS2012x86_IA32_NASM_FLAGS = -Ox -f win32 -g
  862. RELEASE_VS2012x86_IA32_NASM_FLAGS = -Ox -f win32
  863. NOOPT_VS2012x86_IA32_NASM_FLAGS = -O0 -f win32 -g
  864. DEBUG_VS2012x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  865. RELEASE_VS2012x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  866. NOOPT_VS2012x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  867. ##################
  868. # X64 definitions
  869. ##################
  870. *_VS2012x86_X64_*_DLL = DEF(VS2012x86_DLL)
  871. *_VS2012x86_X64_CC_PATH = DEF(VS2012x86_BINX64)\cl.exe
  872. *_VS2012x86_X64_PP_PATH = DEF(VS2012x86_BINX64)\cl.exe
  873. *_VS2012x86_X64_APP_PATH = DEF(VS2012x86_BINX64)\cl.exe
  874. *_VS2012x86_X64_VFRPP_PATH = DEF(VS2012x86_BINX64)\cl.exe
  875. *_VS2012x86_X64_ASLCC_PATH = DEF(VS2012x86_BINX64)\cl.exe
  876. *_VS2012x86_X64_ASLPP_PATH = DEF(VS2012x86_BINX64)\cl.exe
  877. *_VS2012x86_X64_ASM_PATH = DEF(VS2012x86_BINX64)\ml64.exe
  878. *_VS2012x86_X64_SLINK_PATH = DEF(VS2012x86_BINX64)\lib.exe
  879. *_VS2012x86_X64_DLINK_PATH = DEF(VS2012x86_BINX64)\link.exe
  880. *_VS2012x86_X64_ASLDLINK_PATH = DEF(VS2012x86_BINX64)\link.exe
  881. DEBUG_VS2012x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7
  882. RELEASE_VS2012x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
  883. NOOPT_VS2012x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
  884. DEBUG_VS2012x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  885. RELEASE_VS2012x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
  886. NOOPT_VS2012x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  887. DEBUG_VS2012x86_X64_NASM_FLAGS = -Ox -f win64 -g
  888. RELEASE_VS2012x86_X64_NASM_FLAGS = -Ox -f win64
  889. NOOPT_VS2012x86_X64_NASM_FLAGS = -O0 -f win64 -g
  890. DEBUG_VS2012x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  891. RELEASE_VS2012x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  892. NOOPT_VS2012x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  893. ##################
  894. # EBC definitions
  895. ##################
  896. *_VS2012x86_EBC_*_FAMILY = INTEL
  897. *_VS2012x86_EBC_*_DLL = DEF(VS2012x86_DLL)
  898. *_VS2012x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
  899. *_VS2012x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
  900. *_VS2012x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
  901. *_VS2012x86_EBC_SLINK_PATH = DEF(VS2012x86_BIN)\link.exe
  902. *_VS2012x86_EBC_DLINK_PATH = DEF(VS2012x86_BIN)\link.exe
  903. *_VS2012x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  904. *_VS2012x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
  905. *_VS2012x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  906. *_VS2012x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
  907. *_VS2012x86_EBC_DLINK_FLAGS = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
  908. ####################################################################################
  909. #
  910. # Microsoft Visual Studio 2013
  911. #
  912. # VS2013 - Microsoft Visual Studio 2013 Professional Edition with Intel ASL
  913. # ASL - Intel ACPI Source Language Compiler
  914. ####################################################################################
  915. # VS2013 - Microsoft Visual Studio 2013 Professional Edition
  916. *_VS2013_*_*_FAMILY = MSFT
  917. *_VS2013_*_MAKE_PATH = DEF(VS2013_BIN)\nmake.exe
  918. *_VS2013_*_MAKE_FLAGS = /nologo
  919. *_VS2013_*_RC_PATH = DEF(WINSDK8_BIN)\rc.exe
  920. *_VS2013_*_SLINK_FLAGS = /NOLOGO /LTCG
  921. *_VS2013_*_APP_FLAGS = /nologo /E /TC
  922. *_VS2013_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  923. *_VS2013_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  924. *_VS2013_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
  925. *_VS2013_*_ASM16_PATH = DEF(VS2013_BIN)\ml.exe
  926. ##################
  927. # ASL definitions
  928. ##################
  929. *_VS2013_*_ASL_PATH = DEF(DEFAULT_WIN_ASL_BIN)
  930. *_VS2013_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
  931. *_VS2013_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
  932. *_VS2013_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
  933. *_VS2013_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
  934. *_VS2013_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
  935. ##################
  936. # IA32 definitions
  937. ##################
  938. *_VS2013_IA32_*_DLL = DEF(VS2013_DLL)
  939. *_VS2013_IA32_CC_PATH = DEF(VS2013_BIN)\cl.exe
  940. *_VS2013_IA32_VFRPP_PATH = DEF(VS2013_BIN)\cl.exe
  941. *_VS2013_IA32_SLINK_PATH = DEF(VS2013_BIN)\lib.exe
  942. *_VS2013_IA32_DLINK_PATH = DEF(VS2013_BIN)\link.exe
  943. *_VS2013_IA32_APP_PATH = DEF(VS2013_BIN)\cl.exe
  944. *_VS2013_IA32_PP_PATH = DEF(VS2013_BIN)\cl.exe
  945. *_VS2013_IA32_ASM_PATH = DEF(VS2013_BIN)\ml.exe
  946. *_VS2013_IA32_ASLCC_PATH = DEF(VS2013_BIN)\cl.exe
  947. *_VS2013_IA32_ASLPP_PATH = DEF(VS2013_BIN)\cl.exe
  948. *_VS2013_IA32_ASLDLINK_PATH = DEF(VS2013_BIN)\link.exe
  949. DEBUG_VS2013_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Gw
  950. RELEASE_VS2013_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw
  951. NOOPT_VS2013_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
  952. DEBUG_VS2013_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  953. RELEASE_VS2013_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
  954. NOOPT_VS2013_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  955. DEBUG_VS2013_IA32_NASM_FLAGS = -Ox -f win32 -g
  956. RELEASE_VS2013_IA32_NASM_FLAGS = -Ox -f win32
  957. NOOPT_VS2013_IA32_NASM_FLAGS = -O0 -f win32 -g
  958. DEBUG_VS2013_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  959. RELEASE_VS2013_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  960. NOOPT_VS2013_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  961. ##################
  962. # X64 definitions
  963. ##################
  964. *_VS2013_X64_*_DLL = DEF(VS2013_DLL)
  965. *_VS2013_X64_CC_PATH = DEF(VS2013_BINX64)\cl.exe
  966. *_VS2013_X64_PP_PATH = DEF(VS2013_BINX64)\cl.exe
  967. *_VS2013_X64_APP_PATH = DEF(VS2013_BINX64)\cl.exe
  968. *_VS2013_X64_VFRPP_PATH = DEF(VS2013_BINX64)\cl.exe
  969. *_VS2013_X64_ASM_PATH = DEF(VS2013_BINX64)\ml64.exe
  970. *_VS2013_X64_SLINK_PATH = DEF(VS2013_BINX64)\lib.exe
  971. *_VS2013_X64_DLINK_PATH = DEF(VS2013_BINX64)\link.exe
  972. *_VS2013_X64_ASLCC_PATH = DEF(VS2013_BINX64)\cl.exe
  973. *_VS2013_X64_ASLPP_PATH = DEF(VS2013_BINX64)\cl.exe
  974. *_VS2013_X64_ASLDLINK_PATH = DEF(VS2013_BINX64)\link.exe
  975. DEBUG_VS2013_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Gw
  976. RELEASE_VS2013_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw
  977. NOOPT_VS2013_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
  978. DEBUG_VS2013_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  979. RELEASE_VS2013_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
  980. NOOPT_VS2013_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  981. DEBUG_VS2013_X64_NASM_FLAGS = -Ox -f win64 -g
  982. RELEASE_VS2013_X64_NASM_FLAGS = -Ox -f win64
  983. NOOPT_VS2013_X64_NASM_FLAGS = -O0 -f win64 -g
  984. DEBUG_VS2013_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  985. RELEASE_VS2013_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  986. NOOPT_VS2013_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  987. ##################
  988. # EBC definitions
  989. ##################
  990. *_VS2013_EBC_*_FAMILY = INTEL
  991. *_VS2013_EBC_*_DLL = DEF(VS2013_DLL)
  992. *_VS2013_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe
  993. *_VS2013_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe
  994. *_VS2013_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe
  995. *_VS2013_EBC_SLINK_PATH = DEF(VS2013_BIN)\link.exe
  996. *_VS2013_EBC_DLINK_PATH = DEF(VS2013_BIN)\link.exe
  997. *_VS2013_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  998. *_VS2013_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
  999. *_VS2013_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  1000. *_VS2013_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
  1001. *_VS2013_EBC_DLINK_FLAGS = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
  1002. ####################################################################################
  1003. # VS2013x86 - Microsoft Visual Studio 2013 (x86) professional with Intel ASL
  1004. # ASL - Intel ACPI Source Language Compiler (iasl.exe)
  1005. ####################################################################################
  1006. # VS2013x86 - Microsoft Visual Studio 2013 (x86) professional Edition with Intel ASL
  1007. *_VS2013x86_*_*_FAMILY = MSFT
  1008. *_VS2013x86_*_MAKE_PATH = DEF(VS2013x86_BIN)\nmake.exe
  1009. *_VS2013x86_*_MAKE_FLAGS = /nologo
  1010. *_VS2013x86_*_RC_PATH = DEF(WINSDK8x86_BIN)\rc.exe
  1011. *_VS2013x86_*_SLINK_FLAGS = /NOLOGO /LTCG
  1012. *_VS2013x86_*_APP_FLAGS = /nologo /E /TC
  1013. *_VS2013x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  1014. *_VS2013x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  1015. *_VS2013x86_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
  1016. *_VS2013x86_*_ASM16_PATH = DEF(VS2013x86_BIN)\ml.exe
  1017. ##################
  1018. # ASL definitions
  1019. ##################
  1020. *_VS2013x86_*_ASL_PATH = DEF(WIN_IASL_BIN)
  1021. *_VS2013x86_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
  1022. *_VS2013x86_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
  1023. *_VS2013x86_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
  1024. *_VS2013x86_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
  1025. *_VS2013x86_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
  1026. ##################
  1027. # IA32 definitions
  1028. ##################
  1029. *_VS2013x86_IA32_*_DLL = DEF(VS2013x86_DLL)
  1030. *_VS2013x86_IA32_CC_PATH = DEF(VS2013x86_BIN)\cl.exe
  1031. *_VS2013x86_IA32_VFRPP_PATH = DEF(VS2013x86_BIN)\cl.exe
  1032. *_VS2013x86_IA32_ASLCC_PATH = DEF(VS2013x86_BIN)\cl.exe
  1033. *_VS2013x86_IA32_ASLPP_PATH = DEF(VS2013x86_BIN)\cl.exe
  1034. *_VS2013x86_IA32_SLINK_PATH = DEF(VS2013x86_BIN)\lib.exe
  1035. *_VS2013x86_IA32_DLINK_PATH = DEF(VS2013x86_BIN)\link.exe
  1036. *_VS2013x86_IA32_ASLDLINK_PATH= DEF(VS2013x86_BIN)\link.exe
  1037. *_VS2013x86_IA32_APP_PATH = DEF(VS2013x86_BIN)\cl.exe
  1038. *_VS2013x86_IA32_PP_PATH = DEF(VS2013x86_BIN)\cl.exe
  1039. *_VS2013x86_IA32_ASM_PATH = DEF(VS2013x86_BIN)\ml.exe
  1040. DEBUG_VS2013x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Gw
  1041. RELEASE_VS2013x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw
  1042. NOOPT_VS2013x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
  1043. DEBUG_VS2013x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  1044. RELEASE_VS2013x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
  1045. NOOPT_VS2013x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  1046. DEBUG_VS2013x86_IA32_NASM_FLAGS = -Ox -f win32 -g
  1047. RELEASE_VS2013x86_IA32_NASM_FLAGS = -Ox -f win32
  1048. NOOPT_VS2013x86_IA32_NASM_FLAGS = -O0 -f win32 -g
  1049. DEBUG_VS2013x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1050. RELEASE_VS2013x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  1051. NOOPT_VS2013x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1052. ##################
  1053. # X64 definitions
  1054. ##################
  1055. *_VS2013x86_X64_*_DLL = DEF(VS2013x86_DLL)
  1056. *_VS2013x86_X64_CC_PATH = DEF(VS2013x86_BINX64)\cl.exe
  1057. *_VS2013x86_X64_PP_PATH = DEF(VS2013x86_BINX64)\cl.exe
  1058. *_VS2013x86_X64_APP_PATH = DEF(VS2013x86_BINX64)\cl.exe
  1059. *_VS2013x86_X64_VFRPP_PATH = DEF(VS2013x86_BINX64)\cl.exe
  1060. *_VS2013x86_X64_ASLCC_PATH = DEF(VS2013x86_BINX64)\cl.exe
  1061. *_VS2013x86_X64_ASLPP_PATH = DEF(VS2013x86_BINX64)\cl.exe
  1062. *_VS2013x86_X64_ASM_PATH = DEF(VS2013x86_BINX64)\ml64.exe
  1063. *_VS2013x86_X64_SLINK_PATH = DEF(VS2013x86_BINX64)\lib.exe
  1064. *_VS2013x86_X64_DLINK_PATH = DEF(VS2013x86_BINX64)\link.exe
  1065. *_VS2013x86_X64_ASLDLINK_PATH = DEF(VS2013x86_BINX64)\link.exe
  1066. DEBUG_VS2013x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Gw
  1067. RELEASE_VS2013x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw
  1068. NOOPT_VS2013x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
  1069. DEBUG_VS2013x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  1070. RELEASE_VS2013x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
  1071. NOOPT_VS2013x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  1072. DEBUG_VS2013x86_X64_NASM_FLAGS = -Ox -f win64 -g
  1073. RELEASE_VS2013x86_X64_NASM_FLAGS = -Ox -f win64
  1074. NOOPT_VS2013x86_X64_NASM_FLAGS = -O0 -f win64 -g
  1075. DEBUG_VS2013x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1076. RELEASE_VS2013x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  1077. NOOPT_VS2013x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1078. ##################
  1079. # EBC definitions
  1080. ##################
  1081. *_VS2013x86_EBC_*_FAMILY = INTEL
  1082. *_VS2013x86_EBC_*_DLL = DEF(VS2013x86_DLL)
  1083. *_VS2013x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
  1084. *_VS2013x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
  1085. *_VS2013x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
  1086. *_VS2013x86_EBC_SLINK_PATH = DEF(VS2013x86_BIN)\link.exe
  1087. *_VS2013x86_EBC_DLINK_PATH = DEF(VS2013x86_BIN)\link.exe
  1088. *_VS2013x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  1089. *_VS2013x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
  1090. *_VS2013x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  1091. *_VS2013x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
  1092. *_VS2013x86_EBC_DLINK_FLAGS = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
  1093. ####################################################################################
  1094. #
  1095. # Microsoft Visual Studio 2015
  1096. #
  1097. # VS2015 - Microsoft Visual Studio 2015 Professional Edition with Intel ASL
  1098. # ASL - Intel ACPI Source Language Compiler
  1099. ####################################################################################
  1100. # VS2015 - Microsoft Visual Studio 2015 Professional Edition
  1101. *_VS2015_*_*_FAMILY = MSFT
  1102. *_VS2015_*_MAKE_PATH = DEF(VS2015_BIN)\nmake.exe
  1103. *_VS2015_*_MAKE_FLAGS = /nologo
  1104. *_VS2015_*_RC_PATH = DEF(WINSDK81_BIN)\rc.exe
  1105. *_VS2015_*_SLINK_FLAGS = /NOLOGO /LTCG
  1106. *_VS2015_*_APP_FLAGS = /nologo /E /TC
  1107. *_VS2015_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  1108. *_VS2015_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  1109. *_VS2015_*_DLINK2_FLAGS =
  1110. *_VS2015_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
  1111. *_VS2015_*_ASM16_PATH = DEF(VS2015_BIN)\ml.exe
  1112. ##################
  1113. # ASL definitions
  1114. ##################
  1115. *_VS2015_*_ASL_PATH = DEF(DEFAULT_WIN_ASL_BIN)
  1116. *_VS2015_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
  1117. *_VS2015_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
  1118. *_VS2015_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
  1119. *_VS2015_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
  1120. *_VS2015_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
  1121. ##################
  1122. # IA32 definitions
  1123. ##################
  1124. *_VS2015_IA32_*_DLL = DEF(VS2015_DLL)
  1125. *_VS2015_IA32_CC_PATH = DEF(VS2015_BIN)\cl.exe
  1126. *_VS2015_IA32_VFRPP_PATH = DEF(VS2015_BIN)\cl.exe
  1127. *_VS2015_IA32_SLINK_PATH = DEF(VS2015_BIN)\lib.exe
  1128. *_VS2015_IA32_DLINK_PATH = DEF(VS2015_BIN)\link.exe
  1129. *_VS2015_IA32_APP_PATH = DEF(VS2015_BIN)\cl.exe
  1130. *_VS2015_IA32_PP_PATH = DEF(VS2015_BIN)\cl.exe
  1131. *_VS2015_IA32_ASM_PATH = DEF(VS2015_BIN)\ml.exe
  1132. *_VS2015_IA32_ASLCC_PATH = DEF(VS2015_BIN)\cl.exe
  1133. *_VS2015_IA32_ASLPP_PATH = DEF(VS2015_BIN)\cl.exe
  1134. *_VS2015_IA32_ASLDLINK_PATH = DEF(VS2015_BIN)\link.exe
  1135. DEBUG_VS2015_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Gw
  1136. RELEASE_VS2015_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw
  1137. NOOPT_VS2015_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
  1138. DEBUG_VS2015_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  1139. RELEASE_VS2015_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
  1140. NOOPT_VS2015_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  1141. DEBUG_VS2015_IA32_NASM_FLAGS = -Ox -f win32 -g
  1142. RELEASE_VS2015_IA32_NASM_FLAGS = -Ox -f win32
  1143. NOOPT_VS2015_IA32_NASM_FLAGS = -O0 -f win32 -g
  1144. DEBUG_VS2015_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1145. RELEASE_VS2015_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  1146. NOOPT_VS2015_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1147. ##################
  1148. # X64 definitions
  1149. ##################
  1150. *_VS2015_X64_*_DLL = DEF(VS2015_DLL)
  1151. *_VS2015_X64_CC_PATH = DEF(VS2015_BINX64)\cl.exe
  1152. *_VS2015_X64_PP_PATH = DEF(VS2015_BINX64)\cl.exe
  1153. *_VS2015_X64_APP_PATH = DEF(VS2015_BINX64)\cl.exe
  1154. *_VS2015_X64_VFRPP_PATH = DEF(VS2015_BINX64)\cl.exe
  1155. *_VS2015_X64_ASM_PATH = DEF(VS2015_BINX64)\ml64.exe
  1156. *_VS2015_X64_SLINK_PATH = DEF(VS2015_BINX64)\lib.exe
  1157. *_VS2015_X64_DLINK_PATH = DEF(VS2015_BINX64)\link.exe
  1158. *_VS2015_X64_ASLCC_PATH = DEF(VS2015_BINX64)\cl.exe
  1159. *_VS2015_X64_ASLPP_PATH = DEF(VS2015_BINX64)\cl.exe
  1160. *_VS2015_X64_ASLDLINK_PATH = DEF(VS2015_BINX64)\link.exe
  1161. DEBUG_VS2015_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Gw
  1162. RELEASE_VS2015_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw
  1163. NOOPT_VS2015_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
  1164. DEBUG_VS2015_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  1165. RELEASE_VS2015_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
  1166. NOOPT_VS2015_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  1167. DEBUG_VS2015_X64_NASM_FLAGS = -Ox -f win64 -g
  1168. RELEASE_VS2015_X64_NASM_FLAGS = -Ox -f win64
  1169. NOOPT_VS2015_X64_NASM_FLAGS = -O0 -f win64 -g
  1170. DEBUG_VS2015_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1171. RELEASE_VS2015_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  1172. NOOPT_VS2015_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1173. ##################
  1174. # EBC definitions
  1175. ##################
  1176. *_VS2015_EBC_*_FAMILY = INTEL
  1177. *_VS2015_EBC_*_DLL = DEF(VS2015_DLL)
  1178. *_VS2015_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe
  1179. *_VS2015_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe
  1180. *_VS2015_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe
  1181. *_VS2015_EBC_SLINK_PATH = DEF(VS2015_BIN)\link.exe
  1182. *_VS2015_EBC_DLINK_PATH = DEF(VS2015_BIN)\link.exe
  1183. *_VS2015_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  1184. *_VS2015_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
  1185. *_VS2015_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  1186. *_VS2015_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
  1187. *_VS2015_EBC_DLINK_FLAGS = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
  1188. ####################################################################################
  1189. # VS2015x86 - Microsoft Visual Studio 2015 (x86) professional with Intel ASL
  1190. # ASL - Intel ACPI Source Language Compiler (iasl.exe)
  1191. ####################################################################################
  1192. # VS2015x86 - Microsoft Visual Studio 2015 (x86) professional Edition with Intel ASL
  1193. *_VS2015x86_*_*_FAMILY = MSFT
  1194. *_VS2015x86_*_MAKE_PATH = DEF(VS2015x86_BIN)\nmake.exe
  1195. *_VS2015x86_*_MAKE_FLAGS = /nologo
  1196. *_VS2015x86_*_RC_PATH = DEF(WINSDK81x86_BIN)\rc.exe
  1197. *_VS2015x86_*_SLINK_FLAGS = /NOLOGO /LTCG
  1198. *_VS2015x86_*_APP_FLAGS = /nologo /E /TC
  1199. *_VS2015x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  1200. *_VS2015x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  1201. *_VS2015x86_*_DLINK2_FLAGS =
  1202. *_VS2015x86_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
  1203. *_VS2015x86_*_ASM16_PATH = DEF(VS2015x86_BIN)\ml.exe
  1204. ##################
  1205. # ASL definitions
  1206. ##################
  1207. *_VS2015x86_*_ASL_PATH = DEF(WIN_IASL_BIN)
  1208. *_VS2015x86_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
  1209. *_VS2015x86_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
  1210. *_VS2015x86_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
  1211. *_VS2015x86_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
  1212. *_VS2015x86_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
  1213. ##################
  1214. # IA32 definitions
  1215. ##################
  1216. *_VS2015x86_IA32_*_DLL = DEF(VS2015x86_DLL)
  1217. *_VS2015x86_IA32_CC_PATH = DEF(VS2015x86_BIN)\cl.exe
  1218. *_VS2015x86_IA32_VFRPP_PATH = DEF(VS2015x86_BIN)\cl.exe
  1219. *_VS2015x86_IA32_ASLCC_PATH = DEF(VS2015x86_BIN)\cl.exe
  1220. *_VS2015x86_IA32_ASLPP_PATH = DEF(VS2015x86_BIN)\cl.exe
  1221. *_VS2015x86_IA32_SLINK_PATH = DEF(VS2015x86_BIN)\lib.exe
  1222. *_VS2015x86_IA32_DLINK_PATH = DEF(VS2015x86_BIN)\link.exe
  1223. *_VS2015x86_IA32_ASLDLINK_PATH= DEF(VS2015x86_BIN)\link.exe
  1224. *_VS2015x86_IA32_APP_PATH = DEF(VS2015x86_BIN)\cl.exe
  1225. *_VS2015x86_IA32_PP_PATH = DEF(VS2015x86_BIN)\cl.exe
  1226. *_VS2015x86_IA32_ASM_PATH = DEF(VS2015x86_BIN)\ml.exe
  1227. DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Gw
  1228. RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw
  1229. NOOPT_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
  1230. DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  1231. RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
  1232. NOOPT_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  1233. DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g
  1234. RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32
  1235. NOOPT_VS2015x86_IA32_NASM_FLAGS = -O0 -f win32 -g
  1236. DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1237. RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  1238. NOOPT_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1239. ##################
  1240. # X64 definitions
  1241. ##################
  1242. *_VS2015x86_X64_*_DLL = DEF(VS2015x86_DLL)
  1243. *_VS2015x86_X64_CC_PATH = DEF(VS2015x86_BINX64)\cl.exe
  1244. *_VS2015x86_X64_PP_PATH = DEF(VS2015x86_BINX64)\cl.exe
  1245. *_VS2015x86_X64_APP_PATH = DEF(VS2015x86_BINX64)\cl.exe
  1246. *_VS2015x86_X64_VFRPP_PATH = DEF(VS2015x86_BINX64)\cl.exe
  1247. *_VS2015x86_X64_ASLCC_PATH = DEF(VS2015x86_BINX64)\cl.exe
  1248. *_VS2015x86_X64_ASLPP_PATH = DEF(VS2015x86_BINX64)\cl.exe
  1249. *_VS2015x86_X64_ASM_PATH = DEF(VS2015x86_BINX64)\ml64.exe
  1250. *_VS2015x86_X64_SLINK_PATH = DEF(VS2015x86_BINX64)\lib.exe
  1251. *_VS2015x86_X64_DLINK_PATH = DEF(VS2015x86_BINX64)\link.exe
  1252. *_VS2015x86_X64_ASLDLINK_PATH = DEF(VS2015x86_BINX64)\link.exe
  1253. DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Gw
  1254. RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw
  1255. NOOPT_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
  1256. DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  1257. RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
  1258. NOOPT_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  1259. DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g
  1260. RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64
  1261. NOOPT_VS2015x86_X64_NASM_FLAGS = -O0 -f win64 -g
  1262. DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1263. RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  1264. NOOPT_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1265. ##################
  1266. # EBC definitions
  1267. ##################
  1268. *_VS2015x86_EBC_*_FAMILY = INTEL
  1269. *_VS2015x86_EBC_*_DLL = DEF(VS2015x86_DLL)
  1270. *_VS2015x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
  1271. *_VS2015x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
  1272. *_VS2015x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
  1273. *_VS2015x86_EBC_SLINK_PATH = DEF(VS2015x86_BIN)\link.exe
  1274. *_VS2015x86_EBC_DLINK_PATH = DEF(VS2015x86_BIN)\link.exe
  1275. *_VS2015x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  1276. *_VS2015x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
  1277. *_VS2015x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  1278. *_VS2015x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
  1279. *_VS2015x86_EBC_DLINK_FLAGS = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
  1280. ####################################################################################
  1281. # VS2017 - Microsoft Visual Studio 2017 with Intel ASL
  1282. # ASL - Intel ACPI Source Language Compiler (iasl.exe)
  1283. ####################################################################################
  1284. # VS2017 - Microsoft Visual Studio 2017 professional Edition with Intel ASL
  1285. *_VS2017_*_*_FAMILY = MSFT
  1286. *_VS2017_*_*_DLL = DEF(VS2017_BIN_HOST)
  1287. *_VS2017_*_MAKE_PATH = DEF(VS2017_BIN_HOST)\nmake.exe
  1288. *_VS2017_*_MAKE_FLAGS = /nologo
  1289. *_VS2017_*_RC_PATH = DEF(RC_PATH)
  1290. *_VS2017_*_SLINK_FLAGS = /NOLOGO /LTCG
  1291. *_VS2017_*_APP_FLAGS = /nologo /E /TC
  1292. *_VS2017_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  1293. *_VS2017_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  1294. *_VS2017_*_DLINK2_FLAGS = /WHOLEARCHIVE
  1295. *_VS2017_*_ASM16_PATH = DEF(VS2017_BIN_IA32)\ml.exe
  1296. *_VS2017_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
  1297. ##################
  1298. # ASL definitions
  1299. ##################
  1300. *_VS2017_*_ASL_PATH = DEF(WIN_IASL_BIN)
  1301. *_VS2017_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
  1302. *_VS2017_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
  1303. *_VS2017_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
  1304. *_VS2017_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
  1305. *_VS2017_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
  1306. ##################
  1307. # IA32 definitions
  1308. ##################
  1309. *_VS2017_IA32_CC_PATH = DEF(VS2017_BIN_IA32)\cl.exe
  1310. *_VS2017_IA32_VFRPP_PATH = DEF(VS2017_BIN_IA32)\cl.exe
  1311. *_VS2017_IA32_ASLCC_PATH = DEF(VS2017_BIN_IA32)\cl.exe
  1312. *_VS2017_IA32_ASLPP_PATH = DEF(VS2017_BIN_IA32)\cl.exe
  1313. *_VS2017_IA32_SLINK_PATH = DEF(VS2017_BIN_IA32)\lib.exe
  1314. *_VS2017_IA32_DLINK_PATH = DEF(VS2017_BIN_IA32)\link.exe
  1315. *_VS2017_IA32_ASLDLINK_PATH= DEF(VS2017_BIN_IA32)\link.exe
  1316. *_VS2017_IA32_APP_PATH = DEF(VS2017_BIN_IA32)\cl.exe
  1317. *_VS2017_IA32_PP_PATH = DEF(VS2017_BIN_IA32)\cl.exe
  1318. *_VS2017_IA32_ASM_PATH = DEF(VS2017_BIN_IA32)\ml.exe
  1319. DEBUG_VS2017_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Gw
  1320. RELEASE_VS2017_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw
  1321. NOOPT_VS2017_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
  1322. DEBUG_VS2017_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  1323. RELEASE_VS2017_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
  1324. NOOPT_VS2017_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  1325. DEBUG_VS2017_IA32_NASM_FLAGS = -Ox -f win32 -g
  1326. RELEASE_VS2017_IA32_NASM_FLAGS = -Ox -f win32
  1327. NOOPT_VS2017_IA32_NASM_FLAGS = -O0 -f win32 -g
  1328. DEBUG_VS2017_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1329. RELEASE_VS2017_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  1330. NOOPT_VS2017_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1331. ##################
  1332. # X64 definitions
  1333. ##################
  1334. *_VS2017_X64_CC_PATH = DEF(VS2017_BIN_X64)\cl.exe
  1335. *_VS2017_X64_PP_PATH = DEF(VS2017_BIN_X64)\cl.exe
  1336. *_VS2017_X64_APP_PATH = DEF(VS2017_BIN_X64)\cl.exe
  1337. *_VS2017_X64_VFRPP_PATH = DEF(VS2017_BIN_X64)\cl.exe
  1338. *_VS2017_X64_ASLCC_PATH = DEF(VS2017_BIN_X64)\cl.exe
  1339. *_VS2017_X64_ASLPP_PATH = DEF(VS2017_BIN_X64)\cl.exe
  1340. *_VS2017_X64_ASM_PATH = DEF(VS2017_BIN_X64)\ml64.exe
  1341. *_VS2017_X64_SLINK_PATH = DEF(VS2017_BIN_X64)\lib.exe
  1342. *_VS2017_X64_DLINK_PATH = DEF(VS2017_BIN_X64)\link.exe
  1343. *_VS2017_X64_ASLDLINK_PATH = DEF(VS2017_BIN_X64)\link.exe
  1344. DEBUG_VS2017_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Gw
  1345. RELEASE_VS2017_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw
  1346. NOOPT_VS2017_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
  1347. DEBUG_VS2017_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  1348. RELEASE_VS2017_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
  1349. NOOPT_VS2017_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  1350. DEBUG_VS2017_X64_NASM_FLAGS = -Ox -f win64 -g
  1351. RELEASE_VS2017_X64_NASM_FLAGS = -Ox -f win64
  1352. NOOPT_VS2017_X64_NASM_FLAGS = -O0 -f win64 -g
  1353. DEBUG_VS2017_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4281 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1354. RELEASE_VS2017_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4281 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  1355. NOOPT_VS2017_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4281 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1356. #################
  1357. # ARM definitions
  1358. #################
  1359. *_VS2017_ARM_CC_PATH = DEF(VS2017_BIN_ARM)\cl.exe
  1360. *_VS2017_ARM_VFRPP_PATH = DEF(VS2017_BIN_ARM)\cl.exe
  1361. *_VS2017_ARM_SLINK_PATH = DEF(VS2017_BIN_ARM)\lib.exe
  1362. *_VS2017_ARM_DLINK_PATH = DEF(VS2017_BIN_ARM)\link.exe
  1363. *_VS2017_ARM_APP_PATH = DEF(VS2017_BIN_ARM)\cl.exe
  1364. *_VS2017_ARM_PP_PATH = DEF(VS2017_BIN_ARM)\cl.exe
  1365. *_VS2017_ARM_ASM_PATH = DEF(VS2017_BIN_ARM)\armasm.exe
  1366. *_VS2017_ARM_ASLCC_PATH = DEF(VS2017_BIN_ARM)\cl.exe
  1367. *_VS2017_ARM_ASLPP_PATH = DEF(VS2017_BIN_ARM)\cl.exe
  1368. *_VS2017_ARM_ASLDLINK_PATH = DEF(VS2017_BIN_ARM)\link.exe
  1369. DEBUG_VS2017_ARM_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gw /Oi-
  1370. RELEASE_VS2017_ARM_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw /Oi-
  1371. NOOPT_VS2017_ARM_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Od /Oi-
  1372. DEBUG_VS2017_ARM_ASM_FLAGS = /nologo /g
  1373. RELEASE_VS2017_ARM_ASM_FLAGS = /nologo
  1374. NOOPT_VS2017_ARM_ASM_FLAGS = /nologo
  1375. DEBUG_VS2017_ARM_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1376. RELEASE_VS2017_ARM_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  1377. NOOPT_VS2017_ARM_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1378. #####################
  1379. # AARCH64 definitions
  1380. #####################
  1381. *_VS2017_AARCH64_CC_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
  1382. *_VS2017_AARCH64_VFRPP_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
  1383. *_VS2017_AARCH64_SLINK_PATH = DEF(VS2017_BIN_AARCH64)\lib.exe
  1384. *_VS2017_AARCH64_DLINK_PATH = DEF(VS2017_BIN_AARCH64)\link.exe
  1385. *_VS2017_AARCH64_APP_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
  1386. *_VS2017_AARCH64_PP_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
  1387. *_VS2017_AARCH64_ASM_PATH = DEF(VS2017_BIN_AARCH64)\armasm64.exe
  1388. *_VS2017_AARCH64_ASLCC_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
  1389. *_VS2017_AARCH64_ASLPP_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
  1390. *_VS2017_AARCH64_ASLDLINK_PATH = DEF(VS2017_BIN_AARCH64)\link.exe
  1391. DEBUG_VS2017_AARCH64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gw /Oi-
  1392. RELEASE_VS2017_AARCH64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw /Oi-
  1393. NOOPT_VS2017_AARCH64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Od /Oi-
  1394. DEBUG_VS2017_AARCH64_ASM_FLAGS = /nologo /g
  1395. RELEASE_VS2017_AARCH64_ASM_FLAGS = /nologo
  1396. NOOPT_VS2017_AARCH64_ASM_FLAGS = /nologo
  1397. DEBUG_VS2017_AARCH64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /DRIVER /DEBUG
  1398. RELEASE_VS2017_AARCH64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /DRIVER /MERGE:.rdata=.data
  1399. NOOPT_VS2017_AARCH64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /DRIVER /DEBUG
  1400. ##################
  1401. # EBC definitions
  1402. ##################
  1403. *_VS2017_EBC_*_FAMILY = INTEL
  1404. *_VS2017_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
  1405. *_VS2017_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
  1406. *_VS2017_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
  1407. *_VS2017_EBC_SLINK_PATH = DEF(VS2017_BIN_IA32)\link.exe
  1408. *_VS2017_EBC_DLINK_PATH = DEF(VS2017_BIN_IA32)\link.exe
  1409. *_VS2017_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  1410. *_VS2017_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
  1411. *_VS2017_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  1412. *_VS2017_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
  1413. *_VS2017_EBC_DLINK_FLAGS = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
  1414. ####################################################################################
  1415. # VS2019 - Microsoft Visual Studio 2019 with Intel ASL
  1416. # ASL - Intel ACPI Source Language Compiler (iasl.exe)
  1417. ####################################################################################
  1418. # VS2019 - Microsoft Visual Studio 2017 professional Edition with Intel ASL
  1419. *_VS2019_*_*_FAMILY = MSFT
  1420. *_VS2019_*_*_DLL = DEF(VS2019_BIN_HOST)
  1421. *_VS2019_*_MAKE_PATH = DEF(VS2019_BIN_HOST)\nmake.exe
  1422. *_VS2019_*_MAKE_FLAGS = /nologo
  1423. *_VS2019_*_RC_PATH = DEF(RC_PATH)
  1424. *_VS2019_*_SLINK_FLAGS = /NOLOGO /LTCG
  1425. *_VS2019_*_APP_FLAGS = /nologo /E /TC
  1426. *_VS2019_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  1427. *_VS2019_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  1428. *_VS2019_*_DLINK2_FLAGS = /WHOLEARCHIVE
  1429. *_VS2019_*_ASM16_PATH = DEF(VS2019_BIN_IA32)\ml.exe
  1430. *_VS2019_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
  1431. ##################
  1432. # ASL definitions
  1433. ##################
  1434. *_VS2019_*_ASL_PATH = DEF(WIN_IASL_BIN)
  1435. *_VS2019_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
  1436. *_VS2019_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
  1437. *_VS2019_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
  1438. *_VS2019_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
  1439. *_VS2019_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
  1440. ##################
  1441. # IA32 definitions
  1442. ##################
  1443. *_VS2019_IA32_CC_PATH = DEF(VS2019_BIN_IA32)\cl.exe
  1444. *_VS2019_IA32_VFRPP_PATH = DEF(VS2019_BIN_IA32)\cl.exe
  1445. *_VS2019_IA32_ASLCC_PATH = DEF(VS2019_BIN_IA32)\cl.exe
  1446. *_VS2019_IA32_ASLPP_PATH = DEF(VS2019_BIN_IA32)\cl.exe
  1447. *_VS2019_IA32_SLINK_PATH = DEF(VS2019_BIN_IA32)\lib.exe
  1448. *_VS2019_IA32_DLINK_PATH = DEF(VS2019_BIN_IA32)\link.exe
  1449. *_VS2019_IA32_ASLDLINK_PATH= DEF(VS2019_BIN_IA32)\link.exe
  1450. *_VS2019_IA32_APP_PATH = DEF(VS2019_BIN_IA32)\cl.exe
  1451. *_VS2019_IA32_PP_PATH = DEF(VS2019_BIN_IA32)\cl.exe
  1452. *_VS2019_IA32_ASM_PATH = DEF(VS2019_BIN_IA32)\ml.exe
  1453. DEBUG_VS2019_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Gw
  1454. RELEASE_VS2019_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw
  1455. NOOPT_VS2019_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
  1456. DEBUG_VS2019_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  1457. RELEASE_VS2019_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
  1458. NOOPT_VS2019_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
  1459. DEBUG_VS2019_IA32_NASM_FLAGS = -Ox -f win32 -g
  1460. RELEASE_VS2019_IA32_NASM_FLAGS = -Ox -f win32
  1461. NOOPT_VS2019_IA32_NASM_FLAGS = -O0 -f win32 -g
  1462. DEBUG_VS2019_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1463. RELEASE_VS2019_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  1464. NOOPT_VS2019_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1465. ##################
  1466. # X64 definitions
  1467. ##################
  1468. *_VS2019_X64_CC_PATH = DEF(VS2019_BIN_X64)\cl.exe
  1469. *_VS2019_X64_PP_PATH = DEF(VS2019_BIN_X64)\cl.exe
  1470. *_VS2019_X64_APP_PATH = DEF(VS2019_BIN_X64)\cl.exe
  1471. *_VS2019_X64_VFRPP_PATH = DEF(VS2019_BIN_X64)\cl.exe
  1472. *_VS2019_X64_ASLCC_PATH = DEF(VS2019_BIN_X64)\cl.exe
  1473. *_VS2019_X64_ASLPP_PATH = DEF(VS2019_BIN_X64)\cl.exe
  1474. *_VS2019_X64_ASM_PATH = DEF(VS2019_BIN_X64)\ml64.exe
  1475. *_VS2019_X64_SLINK_PATH = DEF(VS2019_BIN_X64)\lib.exe
  1476. *_VS2019_X64_DLINK_PATH = DEF(VS2019_BIN_X64)\link.exe
  1477. *_VS2019_X64_ASLDLINK_PATH = DEF(VS2019_BIN_X64)\link.exe
  1478. DEBUG_VS2019_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Gw
  1479. RELEASE_VS2019_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw
  1480. NOOPT_VS2019_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
  1481. DEBUG_VS2019_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  1482. RELEASE_VS2019_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
  1483. NOOPT_VS2019_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
  1484. DEBUG_VS2019_X64_NASM_FLAGS = -Ox -f win64 -g
  1485. RELEASE_VS2019_X64_NASM_FLAGS = -Ox -f win64
  1486. NOOPT_VS2019_X64_NASM_FLAGS = -O0 -f win64 -g
  1487. DEBUG_VS2019_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4281 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1488. RELEASE_VS2019_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4281 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  1489. NOOPT_VS2019_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4281 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1490. #################
  1491. # ARM definitions
  1492. #################
  1493. *_VS2019_ARM_CC_PATH = DEF(VS2019_BIN_ARM)\cl.exe
  1494. *_VS2019_ARM_VFRPP_PATH = DEF(VS2019_BIN_ARM)\cl.exe
  1495. *_VS2019_ARM_SLINK_PATH = DEF(VS2019_BIN_ARM)\lib.exe
  1496. *_VS2019_ARM_DLINK_PATH = DEF(VS2019_BIN_ARM)\link.exe
  1497. *_VS2019_ARM_APP_PATH = DEF(VS2019_BIN_ARM)\cl.exe
  1498. *_VS2019_ARM_PP_PATH = DEF(VS2019_BIN_ARM)\cl.exe
  1499. *_VS2019_ARM_ASM_PATH = DEF(VS2019_BIN_ARM)\armasm.exe
  1500. *_VS2019_ARM_ASLCC_PATH = DEF(VS2019_BIN_ARM)\cl.exe
  1501. *_VS2019_ARM_ASLPP_PATH = DEF(VS2019_BIN_ARM)\cl.exe
  1502. *_VS2019_ARM_ASLDLINK_PATH = DEF(VS2019_BIN_ARM)\link.exe
  1503. DEBUG_VS2019_ARM_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gw /Oi-
  1504. RELEASE_VS2019_ARM_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw /Oi-
  1505. NOOPT_VS2019_ARM_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Od /Oi-
  1506. DEBUG_VS2019_ARM_ASM_FLAGS = /nologo /g
  1507. RELEASE_VS2019_ARM_ASM_FLAGS = /nologo
  1508. NOOPT_VS2019_ARM_ASM_FLAGS = /nologo
  1509. DEBUG_VS2019_ARM_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1510. RELEASE_VS2019_ARM_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
  1511. NOOPT_VS2019_ARM_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
  1512. #####################
  1513. # AARCH64 definitions
  1514. #####################
  1515. *_VS2019_AARCH64_CC_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe
  1516. *_VS2019_AARCH64_VFRPP_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe
  1517. *_VS2019_AARCH64_SLINK_PATH = DEF(VS2019_BIN_AARCH64)\lib.exe
  1518. *_VS2019_AARCH64_DLINK_PATH = DEF(VS2019_BIN_AARCH64)\link.exe
  1519. *_VS2019_AARCH64_APP_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe
  1520. *_VS2019_AARCH64_PP_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe
  1521. *_VS2019_AARCH64_ASM_PATH = DEF(VS2019_BIN_AARCH64)\armasm64.exe
  1522. *_VS2019_AARCH64_ASLCC_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe
  1523. *_VS2019_AARCH64_ASLPP_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe
  1524. *_VS2019_AARCH64_ASLDLINK_PATH = DEF(VS2019_BIN_AARCH64)\link.exe
  1525. DEBUG_VS2019_AARCH64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gw /Oi-
  1526. RELEASE_VS2019_AARCH64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw /Oi-
  1527. NOOPT_VS2019_AARCH64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Od /Oi-
  1528. DEBUG_VS2019_AARCH64_ASM_FLAGS = /nologo /g
  1529. RELEASE_VS2019_AARCH64_ASM_FLAGS = /nologo
  1530. NOOPT_VS2019_AARCH64_ASM_FLAGS = /nologo
  1531. DEBUG_VS2019_AARCH64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /DRIVER /DEBUG
  1532. RELEASE_VS2019_AARCH64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /DRIVER /MERGE:.rdata=.data
  1533. NOOPT_VS2019_AARCH64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /DRIVER /DEBUG
  1534. ##################
  1535. # EBC definitions
  1536. ##################
  1537. *_VS2019_EBC_*_FAMILY = INTEL
  1538. *_VS2019_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
  1539. *_VS2019_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
  1540. *_VS2019_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
  1541. *_VS2019_EBC_SLINK_PATH = DEF(VS2019_BIN_IA32)\link.exe
  1542. *_VS2019_EBC_DLINK_PATH = DEF(VS2019_BIN_IA32)\link.exe
  1543. *_VS2019_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
  1544. *_VS2019_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
  1545. *_VS2019_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
  1546. *_VS2019_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
  1547. *_VS2019_EBC_DLINK_FLAGS = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
  1548. ####################################################################################
  1549. # GCC Common
  1550. ####################################################################################
  1551. *_*_*_OBJCOPY_PATH = echo
  1552. *_*_*_OBJCOPY_FLAGS = objcopy not needed for
  1553. *_*_*_SYMRENAME_PATH = echo
  1554. *_*_*_SYMRENAME_FLAGS = Symbol renaming not needed for
  1555. DEBUG_*_*_OBJCOPY_ADDDEBUGFLAG = --add-gnu-debuglink=$(DEBUG_DIR)/$(MODULE_NAME).debug
  1556. RELEASE_*_*_OBJCOPY_ADDDEBUGFLAG =
  1557. NOOPT_*_*_OBJCOPY_ADDDEBUGFLAG = --add-gnu-debuglink=$(DEBUG_DIR)/$(MODULE_NAME).debug
  1558. *_*_*_OBJCOPY_STRIPFLAG = --strip-unneeded -R .eh_frame
  1559. *_*_*_DTC_FLAGS = -H epapr
  1560. *_*_*_DTCPP_PATH = DEF(DTCPP_BIN)
  1561. *_*_*_DTC_PATH = DEF(DTC_BIN)
  1562. DEFINE GCC_ALL_CC_FLAGS = -g -Os -fshort-wchar -fno-builtin -fno-strict-aliasing -Wall -Werror -Wno-array-bounds -include AutoGen.h -fno-common
  1563. DEFINE GCC_ARM_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mlittle-endian -mabi=aapcs -fno-short-enums -funsigned-char -ffunction-sections -fdata-sections -fomit-frame-pointer -Wno-address -mthumb -fno-pic -fno-pie
  1564. DEFINE GCC_LOONGARCH64_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mabi=lp64d -fno-asynchronous-unwind-tables -fno-plt -Wno-address -fno-short-enums -fsigned-char -ffunction-sections -fdata-sections
  1565. DEFINE GCC_ARM_CC_XIPFLAGS = -mno-unaligned-access
  1566. DEFINE GCC_AARCH64_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mlittle-endian -fno-short-enums -fverbose-asm -funsigned-char -ffunction-sections -fdata-sections -Wno-address -fno-asynchronous-unwind-tables -fno-unwind-tables -fno-pic -fno-pie -ffixed-x18
  1567. DEFINE GCC_AARCH64_CC_XIPFLAGS = -mstrict-align -mgeneral-regs-only
  1568. DEFINE GCC_DLINK_FLAGS_COMMON = -nostdlib --pie
  1569. DEFINE GCC_DLINK2_FLAGS_COMMON = -Wl,--script=$(EDK_TOOLS_PATH)/Scripts/GccBase.lds
  1570. DEFINE GCC_IA32_X64_DLINK_COMMON = DEF(GCC_DLINK_FLAGS_COMMON) --gc-sections
  1571. DEFINE GCC_ARM_AARCH64_DLINK_COMMON= -Wl,--emit-relocs -nostdlib -Wl,--gc-sections -u $(IMAGE_ENTRY_POINT) -Wl,-e,$(IMAGE_ENTRY_POINT),-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map
  1572. DEFINE GCC_LOONGARCH64_DLINK_COMMON= -Wl,--emit-relocs -nostdlib -Wl,--gc-sections -u $(IMAGE_ENTRY_POINT) -Wl,-e,$(IMAGE_ENTRY_POINT),-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map
  1573. DEFINE GCC_ARM_DLINK_FLAGS = DEF(GCC_ARM_AARCH64_DLINK_COMMON) -z common-page-size=0x20 -Wl,--pic-veneer
  1574. DEFINE GCC_AARCH64_DLINK_FLAGS = DEF(GCC_ARM_AARCH64_DLINK_COMMON) -z common-page-size=0x20
  1575. DEFINE GCC_LOONGARCH64_DLINK_FLAGS = DEF(GCC_LOONGARCH64_DLINK_COMMON) -z common-page-size=0x20
  1576. DEFINE GCC_ARM_AARCH64_ASLDLINK_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0 DEF(GCC_DLINK2_FLAGS_COMMON) -z common-page-size=0x20
  1577. DEFINE GCC_IA32_X64_ASLDLINK_FLAGS = DEF(GCC_IA32_X64_DLINK_COMMON) --entry _ReferenceAcpiTable -u $(IMAGE_ENTRY_POINT)
  1578. DEFINE GCC_ARM_ASLDLINK_FLAGS = DEF(GCC_ARM_DLINK_FLAGS) -Wl,--entry,ReferenceAcpiTable -u $(IMAGE_ENTRY_POINT) DEF(GCC_ARM_AARCH64_ASLDLINK_FLAGS)
  1579. DEFINE GCC_AARCH64_ASLDLINK_FLAGS = DEF(GCC_AARCH64_DLINK_FLAGS) -Wl,--entry,ReferenceAcpiTable -u $(IMAGE_ENTRY_POINT) DEF(GCC_ARM_AARCH64_ASLDLINK_FLAGS)
  1580. DEFINE GCC_LOONGARCH64_ASLDLINK_FLAGS = DEF(GCC_LOONGARCH64_DLINK_FLAGS) -Wl,--entry,ReferenceAcpiTable -u $(IMAGE_ENTRY_POINT)
  1581. DEFINE GCC_IA32_X64_DLINK_FLAGS = DEF(GCC_IA32_X64_DLINK_COMMON) --entry _$(IMAGE_ENTRY_POINT) --file-alignment 0x20 --section-alignment 0x20 -Map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
  1582. DEFINE GCC_ASM_FLAGS = -c -x assembler -imacros AutoGen.h
  1583. DEFINE GCC_PP_FLAGS = -E -x assembler-with-cpp -include AutoGen.h
  1584. DEFINE GCC_VFRPP_FLAGS = -x c -E -P -DVFRCOMPILE --include $(MODULE_NAME)StrDefs.h
  1585. DEFINE GCC_ASLPP_FLAGS = -x c -E -include AutoGen.h
  1586. DEFINE GCC_ASLCC_FLAGS = -x c
  1587. DEFINE GCC_WINDRES_FLAGS = -J rc -O coff
  1588. DEFINE GCC_DTCPP_FLAGS = -E -x assembler-with-cpp -imacros AutoGen.h -nostdinc -undef
  1589. DEFINE GCC_IA32_RC_FLAGS = -I binary -O elf32-i386 -B i386 --rename-section .data=.hii
  1590. DEFINE GCC_X64_RC_FLAGS = -I binary -O elf64-x86-64 -B i386 --rename-section .data=.hii
  1591. DEFINE GCC_ARM_RC_FLAGS = -I binary -O elf32-littlearm -B arm --rename-section .data=.hii
  1592. DEFINE GCC_AARCH64_RC_FLAGS = -I binary -O elf64-littleaarch64 -B aarch64 --rename-section .data=.hii
  1593. DEFINE GCC_RISCV64_RC_FLAGS = -I binary -O elf64-littleriscv -B riscv --rename-section .data=.hii
  1594. DEFINE GCC_LOONGARCH64_RC_FLAGS = -I binary -O elf64-loongarch -B loongarch64 --rename-section .data=.hii
  1595. # GCC Build Flag for included header file list generation
  1596. DEFINE GCC_DEPS_FLAGS = -MMD -MF $@.deps
  1597. DEFINE GCC48_ALL_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -ffunction-sections -fdata-sections -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
  1598. DEFINE GCC48_IA32_X64_DLINK_COMMON = -nostdlib -Wl,-n,-q,--gc-sections -z common-page-size=0x20
  1599. DEFINE GCC48_IA32_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) -m32 -march=i586 -malign-double -fno-stack-protector -D EFI32 -fno-asynchronous-unwind-tables -Wno-address -fno-omit-frame-pointer
  1600. DEFINE GCC48_X64_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) -m64 -fno-stack-protector "-DEFIAPI=__attribute__((ms_abi))" -maccumulate-outgoing-args -mno-red-zone -Wno-address -mcmodel=small -fpie -fno-asynchronous-unwind-tables -Wno-address -fno-omit-frame-pointer
  1601. DEFINE GCC48_IA32_X64_ASLDLINK_FLAGS = DEF(GCC48_IA32_X64_DLINK_COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable
  1602. DEFINE GCC48_IA32_X64_DLINK_FLAGS = DEF(GCC48_IA32_X64_DLINK_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map,--whole-archive
  1603. DEFINE GCC48_IA32_DLINK2_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0x220 DEF(GCC_DLINK2_FLAGS_COMMON)
  1604. DEFINE GCC48_X64_DLINK_FLAGS = DEF(GCC48_IA32_X64_DLINK_FLAGS) -Wl,-melf_x86_64,--oformat=elf64-x86-64,-pie
  1605. DEFINE GCC48_X64_DLINK2_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0x228 DEF(GCC_DLINK2_FLAGS_COMMON)
  1606. DEFINE GCC48_ASM_FLAGS = DEF(GCC_ASM_FLAGS)
  1607. DEFINE GCC48_ARM_ASM_FLAGS = $(PLATFORM_FLAGS) DEF(GCC_ASM_FLAGS) -mlittle-endian
  1608. DEFINE GCC48_AARCH64_ASM_FLAGS = $(PLATFORM_FLAGS) DEF(GCC_ASM_FLAGS) -mlittle-endian
  1609. DEFINE GCC48_ARM_CC_FLAGS = $(PLATFORM_FLAGS) DEF(GCC_ARM_CC_FLAGS) -fstack-protector -mword-relocations
  1610. DEFINE GCC48_ARM_CC_XIPFLAGS = DEF(GCC_ARM_CC_XIPFLAGS)
  1611. DEFINE GCC48_AARCH64_CC_FLAGS = $(PLATFORM_FLAGS) -mcmodel=large DEF(GCC_AARCH64_CC_FLAGS)
  1612. DEFINE GCC48_AARCH64_CC_XIPFLAGS = DEF(GCC_AARCH64_CC_XIPFLAGS)
  1613. DEFINE GCC48_ARM_DLINK_FLAGS = DEF(GCC_ARM_DLINK_FLAGS) -Wl,--oformat=elf32-littlearm
  1614. DEFINE GCC48_ARM_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x220
  1615. DEFINE GCC48_AARCH64_DLINK_FLAGS = DEF(GCC_AARCH64_DLINK_FLAGS)
  1616. DEFINE GCC48_AARCH64_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x228
  1617. DEFINE GCC48_ARM_ASLDLINK_FLAGS = DEF(GCC_ARM_ASLDLINK_FLAGS) -Wl,--oformat=elf32-littlearm
  1618. DEFINE GCC48_AARCH64_ASLDLINK_FLAGS = DEF(GCC_AARCH64_ASLDLINK_FLAGS)
  1619. DEFINE GCC48_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
  1620. DEFINE GCC49_IA32_CC_FLAGS = DEF(GCC48_IA32_CC_FLAGS) -fno-pic -fno-pie
  1621. DEFINE GCC49_X64_CC_FLAGS = DEF(GCC48_X64_CC_FLAGS)
  1622. DEFINE GCC49_IA32_X64_DLINK_COMMON = -nostdlib -Wl,-n,-q,--gc-sections -z common-page-size=0x40
  1623. DEFINE GCC49_IA32_X64_ASLDLINK_FLAGS = DEF(GCC49_IA32_X64_DLINK_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0 DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable
  1624. DEFINE GCC49_IA32_X64_DLINK_FLAGS = DEF(GCC49_IA32_X64_DLINK_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map,--whole-archive
  1625. DEFINE GCC49_IA32_DLINK2_FLAGS = DEF(GCC48_IA32_DLINK2_FLAGS)
  1626. DEFINE GCC49_X64_DLINK_FLAGS = DEF(GCC49_IA32_X64_DLINK_FLAGS) -Wl,-melf_x86_64,--oformat=elf64-x86-64,-pie
  1627. DEFINE GCC49_X64_DLINK2_FLAGS = DEF(GCC48_X64_DLINK2_FLAGS)
  1628. DEFINE GCC49_ASM_FLAGS = DEF(GCC48_ASM_FLAGS)
  1629. DEFINE GCC49_ARM_ASM_FLAGS = DEF(GCC48_ARM_ASM_FLAGS)
  1630. DEFINE GCC49_AARCH64_ASM_FLAGS = DEF(GCC48_AARCH64_ASM_FLAGS)
  1631. DEFINE GCC49_ARM_CC_FLAGS = DEF(GCC48_ARM_CC_FLAGS)
  1632. DEFINE GCC49_ARM_CC_XIPFLAGS = DEF(GCC48_ARM_CC_XIPFLAGS)
  1633. DEFINE GCC49_AARCH64_CC_FLAGS = $(PLATFORM_FLAGS) DEF(GCC48_ALL_CC_FLAGS) DEF(GCC_AARCH64_CC_FLAGS) -mcmodel=small
  1634. DEFINE GCC49_AARCH64_CC_XIPFLAGS = DEF(GCC48_AARCH64_CC_XIPFLAGS)
  1635. DEFINE GCC49_ARM_DLINK_FLAGS = DEF(GCC48_ARM_DLINK_FLAGS)
  1636. DEFINE GCC49_ARM_DLINK2_FLAGS = DEF(GCC48_ARM_DLINK2_FLAGS)
  1637. DEFINE GCC49_AARCH64_DLINK_FLAGS = DEF(GCC48_AARCH64_DLINK_FLAGS) -z common-page-size=0x1000
  1638. DEFINE GCC49_AARCH64_DLINK2_FLAGS = DEF(GCC48_AARCH64_DLINK2_FLAGS)
  1639. DEFINE GCC49_ARM_ASLDLINK_FLAGS = DEF(GCC48_ARM_ASLDLINK_FLAGS)
  1640. DEFINE GCC49_AARCH64_ASLDLINK_FLAGS = DEF(GCC48_AARCH64_ASLDLINK_FLAGS)
  1641. DEFINE GCC49_ASLCC_FLAGS = DEF(GCC48_ASLCC_FLAGS)
  1642. DEFINE GCC5_IA32_CC_FLAGS = DEF(GCC49_IA32_CC_FLAGS)
  1643. DEFINE GCC5_X64_CC_FLAGS = DEF(GCC49_X64_CC_FLAGS)
  1644. DEFINE GCC5_IA32_X64_DLINK_COMMON = DEF(GCC49_IA32_X64_DLINK_COMMON)
  1645. DEFINE GCC5_IA32_X64_ASLDLINK_FLAGS = DEF(GCC49_IA32_X64_ASLDLINK_FLAGS)
  1646. DEFINE GCC5_IA32_X64_DLINK_FLAGS = DEF(GCC49_IA32_X64_DLINK_FLAGS)
  1647. DEFINE GCC5_IA32_DLINK2_FLAGS = DEF(GCC49_IA32_DLINK2_FLAGS) -Wno-error
  1648. DEFINE GCC5_X64_DLINK_FLAGS = DEF(GCC49_X64_DLINK_FLAGS)
  1649. DEFINE GCC5_X64_DLINK2_FLAGS = DEF(GCC49_X64_DLINK2_FLAGS) -Wno-error
  1650. DEFINE GCC5_ASM_FLAGS = DEF(GCC49_ASM_FLAGS)
  1651. DEFINE GCC5_ARM_ASM_FLAGS = DEF(GCC49_ARM_ASM_FLAGS)
  1652. DEFINE GCC5_AARCH64_ASM_FLAGS = DEF(GCC49_AARCH64_ASM_FLAGS)
  1653. DEFINE GCC5_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS)
  1654. DEFINE GCC5_ARM_CC_XIPFLAGS = DEF(GCC49_ARM_CC_XIPFLAGS)
  1655. DEFINE GCC5_AARCH64_CC_FLAGS = DEF(GCC49_AARCH64_CC_FLAGS)
  1656. DEFINE GCC5_AARCH64_CC_XIPFLAGS = DEF(GCC49_AARCH64_CC_XIPFLAGS)
  1657. DEFINE GCC5_ARM_DLINK_FLAGS = DEF(GCC49_ARM_DLINK_FLAGS)
  1658. DEFINE GCC5_ARM_DLINK2_FLAGS = DEF(GCC49_ARM_DLINK2_FLAGS) -Wno-error
  1659. DEFINE GCC5_AARCH64_DLINK_FLAGS = DEF(GCC49_AARCH64_DLINK_FLAGS)
  1660. DEFINE GCC5_AARCH64_DLINK2_FLAGS = DEF(GCC49_AARCH64_DLINK2_FLAGS) -Wno-error
  1661. DEFINE GCC5_ARM_ASLDLINK_FLAGS = DEF(GCC49_ARM_ASLDLINK_FLAGS)
  1662. DEFINE GCC5_AARCH64_ASLDLINK_FLAGS = DEF(GCC49_AARCH64_ASLDLINK_FLAGS)
  1663. DEFINE GCC5_ASLCC_FLAGS = DEF(GCC49_ASLCC_FLAGS) -fno-lto
  1664. DEFINE GCC5_RISCV_ALL_CC_FLAGS = -g -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-array-bounds -ffunction-sections -fdata-sections -include AutoGen.h -fno-common -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings -msmall-data-limit=0
  1665. DEFINE GCC5_RISCV_ALL_DLINK_COMMON = -nostdlib -Wl,-n,-q,--gc-sections -z common-page-size=0x40
  1666. DEFINE GCC5_RISCV_ALL_DLINK_FLAGS = DEF(GCC5_RISCV_ALL_DLINK_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map
  1667. DEFINE GCC5_RISCV_ALL_DLINK2_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0x220,--script=$(EDK_TOOLS_PATH)/Scripts/GccBase.lds
  1668. DEFINE GCC5_RISCV_ALL_ASM_FLAGS = -c -x assembler -imacros $(DEST_DIR_DEBUG)/AutoGen.h
  1669. DEFINE GCC5_RISCV_ALL_CC_FLAGS_WARNING_DISABLE = -Wno-tautological-compare -Wno-pointer-compare
  1670. DEFINE GCC5_RISCV_OPENSBI_TYPES = -DOPENSBI_EXTERNAL_SBI_TYPES=OpensbiTypes.h
  1671. DEFINE GCC5_RISCV64_ARCH = rv64gc
  1672. DEFINE GCC5_RISCV32_RISCV64_ASLDLINK_FLAGS = DEF(GCC5_RISCV_ALL_DLINK_COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable
  1673. DEFINE GCC5_RISCV64_CC_FLAGS = DEF(GCC5_RISCV_ALL_CC_FLAGS) DEF(GCC5_RISCV_ALL_CC_FLAGS_WARNING_DISABLE) DEF(GCC5_RISCV_OPENSBI_TYPES) -march=DEF(GCC5_RISCV64_ARCH) -fno-builtin -fno-builtin-memcpy -fno-stack-protector -Wno-address -fno-asynchronous-unwind-tables -Wno-unused-but-set-variable -fpack-struct=8 -mcmodel=medany -mabi=lp64 -mno-relax
  1674. DEFINE GCC5_RISCV64_DLINK_FLAGS = DEF(GCC5_RISCV_ALL_DLINK_FLAGS) -Wl,-melf64lriscv,--oformat=elf64-littleriscv,--no-relax
  1675. DEFINE GCC5_RISCV64_DLINK2_FLAGS = DEF(GCC5_RISCV_ALL_DLINK2_FLAGS)
  1676. DEFINE GCC5_RISCV64_ASM_FLAGS = DEF(GCC5_RISCV_ALL_ASM_FLAGS) -march=DEF(GCC5_RISCV64_ARCH) -mcmodel=medany -mabi=lp64
  1677. DEFINE GCC5_LOONGARCH64_CC_FLAGS = DEF(GCC_LOONGARCH64_CC_FLAGS) -march=loongarch64 -mno-memcpy -Werror -Wno-maybe-uninitialized -Wno-stringop-overflow -Wno-pointer-to-int-cast -no-pie -fno-stack-protector -mno-explicit-relocs
  1678. DEFINE GCC5_LOONGARCH64_DLINK_FLAGS = DEF(GCC_LOONGARCH64_DLINK_FLAGS)
  1679. DEFINE GCC5_LOONGARCH64_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x228
  1680. DEFINE GCC5_LOONGARCH64_ASLDLINK_FLAGS = DEF(GCC_LOONGARCH64_ASLDLINK_FLAGS) DEF(GCC5_LOONGARCH64_DLINK2_FLAGS)
  1681. DEFINE GCC5_LOONGARCH64_ASM_FLAGS = -x assembler-with-cpp -mabi=lp64d -march=loongarch64 -fno-builtin -c -Wall -mno-explicit-relocs
  1682. DEFINE GCC5_LOONGARCH64_PP_FLAGS = -mabi=lp64d -march=loongarch64 DEF(GCC_PP_FLAGS)
  1683. ####################################################################################
  1684. #
  1685. # GCC 4.8 - This configuration is used to compile under Linux to produce
  1686. # PE/COFF binaries using GCC 4.8.
  1687. #
  1688. ####################################################################################
  1689. *_GCC48_*_*_FAMILY = GCC
  1690. *_GCC48_*_MAKE_PATH = DEF(GCC_HOST_PREFIX)make
  1691. *_GCC48_*_*_DLL = ENV(GCC48_DLL)
  1692. *_GCC48_*_ASL_PATH = DEF(UNIX_IASL_BIN)
  1693. *_GCC48_*_PP_FLAGS = DEF(GCC_PP_FLAGS)
  1694. *_GCC48_*_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS)
  1695. *_GCC48_*_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
  1696. *_GCC48_*_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS)
  1697. *_GCC48_*_APP_FLAGS =
  1698. *_GCC48_*_ASL_FLAGS = DEF(IASL_FLAGS)
  1699. *_GCC48_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
  1700. *_GCC48_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS)
  1701. ##################
  1702. # GCC48 IA32 definitions
  1703. ##################
  1704. *_GCC48_IA32_OBJCOPY_PATH = DEF(GCC48_IA32_PREFIX)objcopy
  1705. *_GCC48_IA32_CC_PATH = DEF(GCC48_IA32_PREFIX)gcc
  1706. *_GCC48_IA32_SLINK_PATH = DEF(GCC48_IA32_PREFIX)ar
  1707. *_GCC48_IA32_DLINK_PATH = DEF(GCC48_IA32_PREFIX)gcc
  1708. *_GCC48_IA32_ASLDLINK_PATH = DEF(GCC48_IA32_PREFIX)gcc
  1709. *_GCC48_IA32_ASM_PATH = DEF(GCC48_IA32_PREFIX)gcc
  1710. *_GCC48_IA32_PP_PATH = DEF(GCC48_IA32_PREFIX)gcc
  1711. *_GCC48_IA32_VFRPP_PATH = DEF(GCC48_IA32_PREFIX)gcc
  1712. *_GCC48_IA32_ASLCC_PATH = DEF(GCC48_IA32_PREFIX)gcc
  1713. *_GCC48_IA32_ASLPP_PATH = DEF(GCC48_IA32_PREFIX)gcc
  1714. *_GCC48_IA32_RC_PATH = DEF(GCC48_IA32_PREFIX)objcopy
  1715. *_GCC48_IA32_ASLCC_FLAGS = DEF(GCC48_ASLCC_FLAGS) -m32
  1716. *_GCC48_IA32_ASLDLINK_FLAGS = DEF(GCC48_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_i386
  1717. *_GCC48_IA32_ASM_FLAGS = DEF(GCC48_ASM_FLAGS) -m32 -march=i386
  1718. *_GCC48_IA32_DLINK_FLAGS = DEF(GCC48_IA32_X64_DLINK_FLAGS) -Wl,-m,elf_i386,--oformat=elf32-i386
  1719. *_GCC48_IA32_DLINK2_FLAGS = DEF(GCC48_IA32_DLINK2_FLAGS)
  1720. *_GCC48_IA32_RC_FLAGS = DEF(GCC_IA32_RC_FLAGS)
  1721. *_GCC48_IA32_OBJCOPY_FLAGS =
  1722. *_GCC48_IA32_NASM_FLAGS = -f elf32
  1723. DEBUG_GCC48_IA32_CC_FLAGS = DEF(GCC48_IA32_CC_FLAGS)
  1724. RELEASE_GCC48_IA32_CC_FLAGS = DEF(GCC48_IA32_CC_FLAGS) -Wno-unused-but-set-variable
  1725. NOOPT_GCC48_IA32_CC_FLAGS = DEF(GCC48_IA32_CC_FLAGS) -O0
  1726. ##################
  1727. # GCC48 X64 definitions
  1728. ##################
  1729. *_GCC48_X64_OBJCOPY_PATH = DEF(GCC48_X64_PREFIX)objcopy
  1730. *_GCC48_X64_CC_PATH = DEF(GCC48_X64_PREFIX)gcc
  1731. *_GCC48_X64_SLINK_PATH = DEF(GCC48_X64_PREFIX)ar
  1732. *_GCC48_X64_DLINK_PATH = DEF(GCC48_X64_PREFIX)gcc
  1733. *_GCC48_X64_ASLDLINK_PATH = DEF(GCC48_X64_PREFIX)gcc
  1734. *_GCC48_X64_ASM_PATH = DEF(GCC48_X64_PREFIX)gcc
  1735. *_GCC48_X64_PP_PATH = DEF(GCC48_X64_PREFIX)gcc
  1736. *_GCC48_X64_VFRPP_PATH = DEF(GCC48_X64_PREFIX)gcc
  1737. *_GCC48_X64_ASLCC_PATH = DEF(GCC48_X64_PREFIX)gcc
  1738. *_GCC48_X64_ASLPP_PATH = DEF(GCC48_X64_PREFIX)gcc
  1739. *_GCC48_X64_RC_PATH = DEF(GCC48_X64_PREFIX)objcopy
  1740. *_GCC48_X64_ASLCC_FLAGS = DEF(GCC48_ASLCC_FLAGS) -m64
  1741. *_GCC48_X64_ASLDLINK_FLAGS = DEF(GCC48_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_x86_64
  1742. *_GCC48_X64_ASM_FLAGS = DEF(GCC48_ASM_FLAGS) -m64
  1743. *_GCC48_X64_DLINK_FLAGS = DEF(GCC48_X64_DLINK_FLAGS)
  1744. *_GCC48_X64_DLINK2_FLAGS = DEF(GCC48_X64_DLINK2_FLAGS)
  1745. *_GCC48_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS)
  1746. *_GCC48_X64_OBJCOPY_FLAGS =
  1747. *_GCC48_X64_NASM_FLAGS = -f elf64
  1748. DEBUG_GCC48_X64_CC_FLAGS = DEF(GCC48_X64_CC_FLAGS)
  1749. RELEASE_GCC48_X64_CC_FLAGS = DEF(GCC48_X64_CC_FLAGS) -Wno-unused-but-set-variable
  1750. NOOPT_GCC48_X64_CC_FLAGS = DEF(GCC48_X64_CC_FLAGS) -O0
  1751. ##################
  1752. # GCC48 ARM definitions
  1753. ##################
  1754. *_GCC48_ARM_CC_PATH = ENV(GCC48_ARM_PREFIX)gcc
  1755. *_GCC48_ARM_SLINK_PATH = ENV(GCC48_ARM_PREFIX)ar
  1756. *_GCC48_ARM_DLINK_PATH = ENV(GCC48_ARM_PREFIX)gcc
  1757. *_GCC48_ARM_ASLDLINK_PATH = ENV(GCC48_ARM_PREFIX)gcc
  1758. *_GCC48_ARM_ASM_PATH = ENV(GCC48_ARM_PREFIX)gcc
  1759. *_GCC48_ARM_PP_PATH = ENV(GCC48_ARM_PREFIX)gcc
  1760. *_GCC48_ARM_VFRPP_PATH = ENV(GCC48_ARM_PREFIX)gcc
  1761. *_GCC48_ARM_ASLCC_PATH = ENV(GCC48_ARM_PREFIX)gcc
  1762. *_GCC48_ARM_ASLPP_PATH = ENV(GCC48_ARM_PREFIX)gcc
  1763. *_GCC48_ARM_RC_PATH = ENV(GCC48_ARM_PREFIX)objcopy
  1764. *_GCC48_ARM_ASLCC_FLAGS = DEF(GCC48_ASLCC_FLAGS)
  1765. *_GCC48_ARM_ASLDLINK_FLAGS = DEF(GCC48_ARM_ASLDLINK_FLAGS)
  1766. *_GCC48_ARM_ASM_FLAGS = DEF(GCC48_ARM_ASM_FLAGS)
  1767. *_GCC48_ARM_DLINK_FLAGS = DEF(GCC48_ARM_DLINK_FLAGS)
  1768. *_GCC48_ARM_DLINK2_FLAGS = DEF(GCC48_ARM_DLINK2_FLAGS)
  1769. *_GCC48_ARM_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
  1770. *_GCC48_ARM_PLATFORM_FLAGS = -march=armv7-a
  1771. *_GCC48_ARM_PP_FLAGS = $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS)
  1772. *_GCC48_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS)
  1773. *_GCC48_ARM_VFRPP_FLAGS = $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS)
  1774. *_GCC48_ARM_CC_XIPFLAGS = DEF(GCC48_ARM_CC_XIPFLAGS)
  1775. DEBUG_GCC48_ARM_CC_FLAGS = DEF(GCC48_ARM_CC_FLAGS) -O0
  1776. RELEASE_GCC48_ARM_CC_FLAGS = DEF(GCC48_ARM_CC_FLAGS) -Wno-unused-but-set-variable
  1777. NOOPT_GCC48_ARM_CC_FLAGS = DEF(GCC48_ARM_CC_FLAGS) -O0
  1778. ##################
  1779. # GCC48 AARCH64 definitions
  1780. ##################
  1781. *_GCC48_AARCH64_CC_PATH = ENV(GCC48_AARCH64_PREFIX)gcc
  1782. *_GCC48_AARCH64_SLINK_PATH = ENV(GCC48_AARCH64_PREFIX)ar
  1783. *_GCC48_AARCH64_DLINK_PATH = ENV(GCC48_AARCH64_PREFIX)gcc
  1784. *_GCC48_AARCH64_ASLDLINK_PATH = ENV(GCC48_AARCH64_PREFIX)gcc
  1785. *_GCC48_AARCH64_ASM_PATH = ENV(GCC48_AARCH64_PREFIX)gcc
  1786. *_GCC48_AARCH64_PP_PATH = ENV(GCC48_AARCH64_PREFIX)gcc
  1787. *_GCC48_AARCH64_VFRPP_PATH = ENV(GCC48_AARCH64_PREFIX)gcc
  1788. *_GCC48_AARCH64_ASLCC_PATH = ENV(GCC48_AARCH64_PREFIX)gcc
  1789. *_GCC48_AARCH64_ASLPP_PATH = ENV(GCC48_AARCH64_PREFIX)gcc
  1790. *_GCC48_AARCH64_RC_PATH = ENV(GCC48_AARCH64_PREFIX)objcopy
  1791. *_GCC48_AARCH64_ASLCC_FLAGS = DEF(GCC48_ASLCC_FLAGS)
  1792. *_GCC48_AARCH64_ASLDLINK_FLAGS = DEF(GCC48_AARCH64_ASLDLINK_FLAGS)
  1793. *_GCC48_AARCH64_ASM_FLAGS = DEF(GCC48_AARCH64_ASM_FLAGS)
  1794. *_GCC48_AARCH64_DLINK_FLAGS = DEF(GCC48_AARCH64_DLINK_FLAGS)
  1795. *_GCC48_AARCH64_DLINK2_FLAGS = DEF(GCC48_AARCH64_DLINK2_FLAGS)
  1796. *_GCC48_AARCH64_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
  1797. *_GCC48_AARCH64_PLATFORM_FLAGS =
  1798. *_GCC48_AARCH64_PP_FLAGS = $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS)
  1799. *_GCC48_AARCH64_RC_FLAGS = DEF(GCC_AARCH64_RC_FLAGS)
  1800. *_GCC48_AARCH64_VFRPP_FLAGS = $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS)
  1801. *_GCC48_AARCH64_CC_XIPFLAGS = DEF(GCC48_AARCH64_CC_XIPFLAGS)
  1802. DEBUG_GCC48_AARCH64_CC_FLAGS = DEF(GCC48_AARCH64_CC_FLAGS) -O0
  1803. RELEASE_GCC48_AARCH64_CC_FLAGS = DEF(GCC48_AARCH64_CC_FLAGS) -Wno-unused-but-set-variable
  1804. NOOPT_GCC48_AARCH64_CC_FLAGS = DEF(GCC48_AARCH64_CC_FLAGS) -O0
  1805. ####################################################################################
  1806. #
  1807. # GCC 4.9 - This configuration is used to compile under Linux to produce
  1808. # PE/COFF binaries using GCC 4.9.
  1809. #
  1810. ####################################################################################
  1811. *_GCC49_*_*_FAMILY = GCC
  1812. *_GCC49_*_MAKE_PATH = DEF(GCC_HOST_PREFIX)make
  1813. *_GCC49_*_*_DLL = ENV(GCC49_DLL)
  1814. *_GCC49_*_ASL_PATH = DEF(UNIX_IASL_BIN)
  1815. *_GCC49_*_PP_FLAGS = DEF(GCC_PP_FLAGS)
  1816. *_GCC49_*_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS)
  1817. *_GCC49_*_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
  1818. *_GCC49_*_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS)
  1819. *_GCC49_*_APP_FLAGS =
  1820. *_GCC49_*_ASL_FLAGS = DEF(IASL_FLAGS)
  1821. *_GCC49_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
  1822. *_GCC49_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS)
  1823. ##################
  1824. # GCC49 IA32 definitions
  1825. ##################
  1826. *_GCC49_IA32_OBJCOPY_PATH = DEF(GCC49_IA32_PREFIX)objcopy
  1827. *_GCC49_IA32_CC_PATH = DEF(GCC49_IA32_PREFIX)gcc
  1828. *_GCC49_IA32_SLINK_PATH = DEF(GCC49_IA32_PREFIX)ar
  1829. *_GCC49_IA32_DLINK_PATH = DEF(GCC49_IA32_PREFIX)gcc
  1830. *_GCC49_IA32_ASLDLINK_PATH = DEF(GCC49_IA32_PREFIX)gcc
  1831. *_GCC49_IA32_ASM_PATH = DEF(GCC49_IA32_PREFIX)gcc
  1832. *_GCC49_IA32_PP_PATH = DEF(GCC49_IA32_PREFIX)gcc
  1833. *_GCC49_IA32_VFRPP_PATH = DEF(GCC49_IA32_PREFIX)gcc
  1834. *_GCC49_IA32_ASLCC_PATH = DEF(GCC49_IA32_PREFIX)gcc
  1835. *_GCC49_IA32_ASLPP_PATH = DEF(GCC49_IA32_PREFIX)gcc
  1836. *_GCC49_IA32_RC_PATH = DEF(GCC49_IA32_PREFIX)objcopy
  1837. *_GCC49_IA32_ASLCC_FLAGS = DEF(GCC49_ASLCC_FLAGS) -m32
  1838. *_GCC49_IA32_ASLDLINK_FLAGS = DEF(GCC49_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_i386
  1839. *_GCC49_IA32_ASM_FLAGS = DEF(GCC49_ASM_FLAGS) -m32 -march=i386
  1840. *_GCC49_IA32_DLINK_FLAGS = DEF(GCC49_IA32_X64_DLINK_FLAGS) -Wl,-m,elf_i386,--oformat=elf32-i386
  1841. *_GCC49_IA32_DLINK2_FLAGS = DEF(GCC49_IA32_DLINK2_FLAGS)
  1842. *_GCC49_IA32_RC_FLAGS = DEF(GCC_IA32_RC_FLAGS)
  1843. *_GCC49_IA32_OBJCOPY_FLAGS =
  1844. *_GCC49_IA32_NASM_FLAGS = -f elf32
  1845. DEBUG_GCC49_IA32_CC_FLAGS = DEF(GCC49_IA32_CC_FLAGS)
  1846. RELEASE_GCC49_IA32_CC_FLAGS = DEF(GCC49_IA32_CC_FLAGS) -Wno-unused-but-set-variable -Wno-unused-const-variable
  1847. NOOPT_GCC49_IA32_CC_FLAGS = DEF(GCC49_IA32_CC_FLAGS) -O0
  1848. ##################
  1849. # GCC49 X64 definitions
  1850. ##################
  1851. *_GCC49_X64_OBJCOPY_PATH = DEF(GCC49_X64_PREFIX)objcopy
  1852. *_GCC49_X64_CC_PATH = DEF(GCC49_X64_PREFIX)gcc
  1853. *_GCC49_X64_SLINK_PATH = DEF(GCC49_X64_PREFIX)ar
  1854. *_GCC49_X64_DLINK_PATH = DEF(GCC49_X64_PREFIX)gcc
  1855. *_GCC49_X64_ASLDLINK_PATH = DEF(GCC49_X64_PREFIX)gcc
  1856. *_GCC49_X64_ASM_PATH = DEF(GCC49_X64_PREFIX)gcc
  1857. *_GCC49_X64_PP_PATH = DEF(GCC49_X64_PREFIX)gcc
  1858. *_GCC49_X64_VFRPP_PATH = DEF(GCC49_X64_PREFIX)gcc
  1859. *_GCC49_X64_ASLCC_PATH = DEF(GCC49_X64_PREFIX)gcc
  1860. *_GCC49_X64_ASLPP_PATH = DEF(GCC49_X64_PREFIX)gcc
  1861. *_GCC49_X64_RC_PATH = DEF(GCC49_X64_PREFIX)objcopy
  1862. *_GCC49_X64_ASLCC_FLAGS = DEF(GCC49_ASLCC_FLAGS) -m64
  1863. *_GCC49_X64_ASLDLINK_FLAGS = DEF(GCC49_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_x86_64
  1864. *_GCC49_X64_ASM_FLAGS = DEF(GCC49_ASM_FLAGS) -m64
  1865. *_GCC49_X64_DLINK_FLAGS = DEF(GCC49_X64_DLINK_FLAGS)
  1866. *_GCC49_X64_DLINK2_FLAGS = DEF(GCC49_X64_DLINK2_FLAGS)
  1867. *_GCC49_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS)
  1868. *_GCC49_X64_OBJCOPY_FLAGS =
  1869. *_GCC49_X64_NASM_FLAGS = -f elf64
  1870. DEBUG_GCC49_X64_CC_FLAGS = DEF(GCC49_X64_CC_FLAGS)
  1871. RELEASE_GCC49_X64_CC_FLAGS = DEF(GCC49_X64_CC_FLAGS) -Wno-unused-but-set-variable -Wno-unused-const-variable
  1872. NOOPT_GCC49_X64_CC_FLAGS = DEF(GCC49_X64_CC_FLAGS) -O0
  1873. ##################
  1874. # GCC49 ARM definitions
  1875. ##################
  1876. *_GCC49_ARM_CC_PATH = ENV(GCC49_ARM_PREFIX)gcc
  1877. *_GCC49_ARM_SLINK_PATH = ENV(GCC49_ARM_PREFIX)ar
  1878. *_GCC49_ARM_DLINK_PATH = ENV(GCC49_ARM_PREFIX)gcc
  1879. *_GCC49_ARM_ASLDLINK_PATH = ENV(GCC49_ARM_PREFIX)gcc
  1880. *_GCC49_ARM_ASM_PATH = ENV(GCC49_ARM_PREFIX)gcc
  1881. *_GCC49_ARM_PP_PATH = ENV(GCC49_ARM_PREFIX)gcc
  1882. *_GCC49_ARM_VFRPP_PATH = ENV(GCC49_ARM_PREFIX)gcc
  1883. *_GCC49_ARM_ASLCC_PATH = ENV(GCC49_ARM_PREFIX)gcc
  1884. *_GCC49_ARM_ASLPP_PATH = ENV(GCC49_ARM_PREFIX)gcc
  1885. *_GCC49_ARM_RC_PATH = ENV(GCC49_ARM_PREFIX)objcopy
  1886. *_GCC49_ARM_ASLCC_FLAGS = DEF(GCC49_ASLCC_FLAGS)
  1887. *_GCC49_ARM_ASLDLINK_FLAGS = DEF(GCC49_ARM_ASLDLINK_FLAGS)
  1888. *_GCC49_ARM_ASM_FLAGS = DEF(GCC49_ARM_ASM_FLAGS)
  1889. *_GCC49_ARM_DLINK_FLAGS = DEF(GCC49_ARM_DLINK_FLAGS)
  1890. *_GCC49_ARM_DLINK2_FLAGS = DEF(GCC49_ARM_DLINK2_FLAGS)
  1891. *_GCC49_ARM_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
  1892. *_GCC49_ARM_PLATFORM_FLAGS = -march=armv7-a
  1893. *_GCC49_ARM_PP_FLAGS = $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS)
  1894. *_GCC49_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS)
  1895. *_GCC49_ARM_VFRPP_FLAGS = $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS)
  1896. *_GCC49_ARM_CC_XIPFLAGS = DEF(GCC49_ARM_CC_XIPFLAGS)
  1897. DEBUG_GCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) -O0
  1898. RELEASE_GCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) -Wno-unused-but-set-variable -Wno-unused-const-variable
  1899. NOOPT_GCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) -O0
  1900. ##################
  1901. # GCC49 AARCH64 definitions
  1902. ##################
  1903. *_GCC49_AARCH64_CC_PATH = ENV(GCC49_AARCH64_PREFIX)gcc
  1904. *_GCC49_AARCH64_SLINK_PATH = ENV(GCC49_AARCH64_PREFIX)ar
  1905. *_GCC49_AARCH64_DLINK_PATH = ENV(GCC49_AARCH64_PREFIX)gcc
  1906. *_GCC49_AARCH64_ASLDLINK_PATH = ENV(GCC49_AARCH64_PREFIX)gcc
  1907. *_GCC49_AARCH64_ASM_PATH = ENV(GCC49_AARCH64_PREFIX)gcc
  1908. *_GCC49_AARCH64_PP_PATH = ENV(GCC49_AARCH64_PREFIX)gcc
  1909. *_GCC49_AARCH64_VFRPP_PATH = ENV(GCC49_AARCH64_PREFIX)gcc
  1910. *_GCC49_AARCH64_ASLCC_PATH = ENV(GCC49_AARCH64_PREFIX)gcc
  1911. *_GCC49_AARCH64_ASLPP_PATH = ENV(GCC49_AARCH64_PREFIX)gcc
  1912. *_GCC49_AARCH64_RC_PATH = ENV(GCC49_AARCH64_PREFIX)objcopy
  1913. *_GCC49_AARCH64_ASLCC_FLAGS = DEF(GCC49_ASLCC_FLAGS)
  1914. *_GCC49_AARCH64_ASLDLINK_FLAGS = DEF(GCC49_AARCH64_ASLDLINK_FLAGS)
  1915. *_GCC49_AARCH64_ASM_FLAGS = DEF(GCC49_AARCH64_ASM_FLAGS)
  1916. *_GCC49_AARCH64_DLINK2_FLAGS = DEF(GCC49_AARCH64_DLINK2_FLAGS)
  1917. *_GCC49_AARCH64_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
  1918. *_GCC49_AARCH64_PLATFORM_FLAGS =
  1919. *_GCC49_AARCH64_PP_FLAGS = $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS)
  1920. *_GCC49_AARCH64_RC_FLAGS = DEF(GCC_AARCH64_RC_FLAGS)
  1921. *_GCC49_AARCH64_VFRPP_FLAGS = $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS)
  1922. *_GCC49_AARCH64_CC_XIPFLAGS = DEF(GCC49_AARCH64_CC_XIPFLAGS)
  1923. DEBUG_GCC49_AARCH64_CC_FLAGS = DEF(GCC49_AARCH64_CC_FLAGS) -O0
  1924. DEBUG_GCC49_AARCH64_DLINK_FLAGS = DEF(GCC49_AARCH64_DLINK_FLAGS)
  1925. DEBUG_GCC49_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20
  1926. RELEASE_GCC49_AARCH64_CC_FLAGS = DEF(GCC49_AARCH64_CC_FLAGS) -Wno-unused-but-set-variable -Wno-unused-const-variable
  1927. RELEASE_GCC49_AARCH64_DLINK_FLAGS = DEF(GCC49_AARCH64_DLINK_FLAGS)
  1928. RELEASE_GCC49_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20
  1929. NOOPT_GCC49_AARCH64_CC_FLAGS = DEF(GCC49_AARCH64_CC_FLAGS) -O0
  1930. NOOPT_GCC49_AARCH64_DLINK_FLAGS = DEF(GCC49_AARCH64_DLINK_FLAGS) -O0
  1931. NOOPT_GCC49_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20 -O0
  1932. ####################################################################################
  1933. #
  1934. # GCC 5 - This configuration is used to compile under Linux to produce
  1935. # PE/COFF binaries using GCC 5
  1936. #
  1937. ####################################################################################
  1938. *_GCC5_*_*_FAMILY = GCC
  1939. *_GCC5_*_MAKE_PATH = DEF(GCC_HOST_PREFIX)make
  1940. *_GCC5_*_*_DLL = ENV(GCC5_DLL)
  1941. *_GCC5_*_ASL_PATH = DEF(UNIX_IASL_BIN)
  1942. *_GCC5_*_PP_FLAGS = DEF(GCC_PP_FLAGS)
  1943. *_GCC5_*_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS)
  1944. *_GCC5_*_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
  1945. *_GCC5_*_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS)
  1946. *_GCC5_*_APP_FLAGS =
  1947. *_GCC5_*_ASL_FLAGS = DEF(IASL_FLAGS)
  1948. *_GCC5_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
  1949. *_GCC5_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS)
  1950. ##################
  1951. # GCC5 IA32 definitions
  1952. ##################
  1953. *_GCC5_IA32_OBJCOPY_PATH = DEF(GCC5_IA32_PREFIX)objcopy
  1954. *_GCC5_IA32_CC_PATH = DEF(GCC5_IA32_PREFIX)gcc
  1955. *_GCC5_IA32_SLINK_PATH = DEF(GCC5_IA32_PREFIX)gcc-ar
  1956. *_GCC5_IA32_DLINK_PATH = DEF(GCC5_IA32_PREFIX)gcc
  1957. *_GCC5_IA32_ASLDLINK_PATH = DEF(GCC5_IA32_PREFIX)gcc
  1958. *_GCC5_IA32_ASM_PATH = DEF(GCC5_IA32_PREFIX)gcc
  1959. *_GCC5_IA32_PP_PATH = DEF(GCC5_IA32_PREFIX)gcc
  1960. *_GCC5_IA32_VFRPP_PATH = DEF(GCC5_IA32_PREFIX)gcc
  1961. *_GCC5_IA32_ASLCC_PATH = DEF(GCC5_IA32_PREFIX)gcc
  1962. *_GCC5_IA32_ASLPP_PATH = DEF(GCC5_IA32_PREFIX)gcc
  1963. *_GCC5_IA32_RC_PATH = DEF(GCC5_IA32_PREFIX)objcopy
  1964. *_GCC5_IA32_ASLCC_FLAGS = DEF(GCC5_ASLCC_FLAGS) -m32
  1965. *_GCC5_IA32_ASLDLINK_FLAGS = DEF(GCC5_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_i386 -no-pie
  1966. *_GCC5_IA32_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m32 -march=i386
  1967. *_GCC5_IA32_DLINK2_FLAGS = DEF(GCC5_IA32_DLINK2_FLAGS) -no-pie
  1968. *_GCC5_IA32_RC_FLAGS = DEF(GCC_IA32_RC_FLAGS)
  1969. *_GCC5_IA32_OBJCOPY_FLAGS =
  1970. *_GCC5_IA32_NASM_FLAGS = -f elf32
  1971. DEBUG_GCC5_IA32_CC_FLAGS = DEF(GCC5_IA32_CC_FLAGS) -flto
  1972. DEBUG_GCC5_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Os -Wl,-m,elf_i386,--oformat=elf32-i386
  1973. RELEASE_GCC5_IA32_CC_FLAGS = DEF(GCC5_IA32_CC_FLAGS) -flto -Wno-unused-but-set-variable -Wno-unused-const-variable
  1974. RELEASE_GCC5_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Os -Wl,-m,elf_i386,--oformat=elf32-i386
  1975. NOOPT_GCC5_IA32_CC_FLAGS = DEF(GCC5_IA32_CC_FLAGS) -O0
  1976. NOOPT_GCC5_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -Wl,-m,elf_i386,--oformat=elf32-i386 -O0
  1977. ##################
  1978. # GCC5 X64 definitions
  1979. ##################
  1980. *_GCC5_X64_OBJCOPY_PATH = DEF(GCC5_X64_PREFIX)objcopy
  1981. *_GCC5_X64_CC_PATH = DEF(GCC5_X64_PREFIX)gcc
  1982. *_GCC5_X64_SLINK_PATH = DEF(GCC5_X64_PREFIX)gcc-ar
  1983. *_GCC5_X64_DLINK_PATH = DEF(GCC5_X64_PREFIX)gcc
  1984. *_GCC5_X64_ASLDLINK_PATH = DEF(GCC5_X64_PREFIX)gcc
  1985. *_GCC5_X64_ASM_PATH = DEF(GCC5_X64_PREFIX)gcc
  1986. *_GCC5_X64_PP_PATH = DEF(GCC5_X64_PREFIX)gcc
  1987. *_GCC5_X64_VFRPP_PATH = DEF(GCC5_X64_PREFIX)gcc
  1988. *_GCC5_X64_ASLCC_PATH = DEF(GCC5_X64_PREFIX)gcc
  1989. *_GCC5_X64_ASLPP_PATH = DEF(GCC5_X64_PREFIX)gcc
  1990. *_GCC5_X64_RC_PATH = DEF(GCC5_X64_PREFIX)objcopy
  1991. *_GCC5_X64_ASLCC_FLAGS = DEF(GCC5_ASLCC_FLAGS) -m64
  1992. *_GCC5_X64_ASLDLINK_FLAGS = DEF(GCC5_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_x86_64
  1993. *_GCC5_X64_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m64
  1994. *_GCC5_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS)
  1995. *_GCC5_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS)
  1996. *_GCC5_X64_OBJCOPY_FLAGS =
  1997. *_GCC5_X64_NASM_FLAGS = -f elf64
  1998. DEBUG_GCC5_X64_CC_FLAGS = DEF(GCC5_X64_CC_FLAGS) -flto -DUSING_LTO
  1999. DEBUG_GCC5_X64_DLINK_FLAGS = DEF(GCC5_X64_DLINK_FLAGS) -flto -Os
  2000. RELEASE_GCC5_X64_CC_FLAGS = DEF(GCC5_X64_CC_FLAGS) -flto -DUSING_LTO -Wno-unused-but-set-variable -Wno-unused-const-variable
  2001. RELEASE_GCC5_X64_DLINK_FLAGS = DEF(GCC5_X64_DLINK_FLAGS) -flto -Os
  2002. NOOPT_GCC5_X64_CC_FLAGS = DEF(GCC5_X64_CC_FLAGS) -O0
  2003. NOOPT_GCC5_X64_DLINK_FLAGS = DEF(GCC5_X64_DLINK_FLAGS) -O0
  2004. ##################
  2005. # GCC5 ARM definitions
  2006. ##################
  2007. *_GCC5_ARM_CC_PATH = ENV(GCC5_ARM_PREFIX)gcc
  2008. *_GCC5_ARM_SLINK_PATH = ENV(GCC5_ARM_PREFIX)gcc-ar
  2009. *_GCC5_ARM_DLINK_PATH = ENV(GCC5_ARM_PREFIX)gcc
  2010. *_GCC5_ARM_ASLDLINK_PATH = ENV(GCC5_ARM_PREFIX)gcc
  2011. *_GCC5_ARM_ASM_PATH = ENV(GCC5_ARM_PREFIX)gcc
  2012. *_GCC5_ARM_PP_PATH = ENV(GCC5_ARM_PREFIX)gcc
  2013. *_GCC5_ARM_VFRPP_PATH = ENV(GCC5_ARM_PREFIX)gcc
  2014. *_GCC5_ARM_ASLCC_PATH = ENV(GCC5_ARM_PREFIX)gcc
  2015. *_GCC5_ARM_ASLPP_PATH = ENV(GCC5_ARM_PREFIX)gcc
  2016. *_GCC5_ARM_RC_PATH = ENV(GCC5_ARM_PREFIX)objcopy
  2017. *_GCC5_ARM_ASLCC_FLAGS = DEF(GCC5_ASLCC_FLAGS)
  2018. *_GCC5_ARM_ASLDLINK_FLAGS = DEF(GCC5_ARM_ASLDLINK_FLAGS)
  2019. *_GCC5_ARM_ASM_FLAGS = DEF(GCC5_ARM_ASM_FLAGS)
  2020. *_GCC5_ARM_DLINK2_FLAGS = DEF(GCC5_ARM_DLINK2_FLAGS)
  2021. *_GCC5_ARM_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
  2022. *_GCC5_ARM_PLATFORM_FLAGS = -march=armv7-a -mfloat-abi=soft
  2023. *_GCC5_ARM_PP_FLAGS = $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS)
  2024. *_GCC5_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS)
  2025. *_GCC5_ARM_VFRPP_FLAGS = $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS)
  2026. *_GCC5_ARM_CC_XIPFLAGS = DEF(GCC5_ARM_CC_XIPFLAGS)
  2027. DEBUG_GCC5_ARM_CC_FLAGS = DEF(GCC5_ARM_CC_FLAGS) -flto -Wno-unused-but-set-variable -Wno-unused-const-variable
  2028. DEBUG_GCC5_ARM_DLINK_FLAGS = DEF(GCC5_ARM_DLINK_FLAGS) -flto -Os -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-arm -Wl,-plugin-opt=-pass-through=-llto-arm
  2029. RELEASE_GCC5_ARM_CC_FLAGS = DEF(GCC5_ARM_CC_FLAGS) -flto -Wno-unused-but-set-variable -Wno-unused-const-variable
  2030. RELEASE_GCC5_ARM_DLINK_FLAGS = DEF(GCC5_ARM_DLINK_FLAGS) -flto -Os -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-arm -Wl,-plugin-opt=-pass-through=-llto-arm
  2031. NOOPT_GCC5_ARM_CC_FLAGS = DEF(GCC5_ARM_CC_FLAGS) -O0
  2032. NOOPT_GCC5_ARM_DLINK_FLAGS = DEF(GCC5_ARM_DLINK_FLAGS) -O0
  2033. ##################
  2034. # GCC5 AARCH64 definitions
  2035. ##################
  2036. *_GCC5_AARCH64_CC_PATH = ENV(GCC5_AARCH64_PREFIX)gcc
  2037. *_GCC5_AARCH64_SLINK_PATH = ENV(GCC5_AARCH64_PREFIX)gcc-ar
  2038. *_GCC5_AARCH64_DLINK_PATH = ENV(GCC5_AARCH64_PREFIX)gcc
  2039. *_GCC5_AARCH64_ASLDLINK_PATH = ENV(GCC5_AARCH64_PREFIX)gcc
  2040. *_GCC5_AARCH64_ASM_PATH = ENV(GCC5_AARCH64_PREFIX)gcc
  2041. *_GCC5_AARCH64_PP_PATH = ENV(GCC5_AARCH64_PREFIX)gcc
  2042. *_GCC5_AARCH64_VFRPP_PATH = ENV(GCC5_AARCH64_PREFIX)gcc
  2043. *_GCC5_AARCH64_ASLCC_PATH = ENV(GCC5_AARCH64_PREFIX)gcc
  2044. *_GCC5_AARCH64_ASLPP_PATH = ENV(GCC5_AARCH64_PREFIX)gcc
  2045. *_GCC5_AARCH64_RC_PATH = ENV(GCC5_AARCH64_PREFIX)objcopy
  2046. *_GCC5_AARCH64_ASLCC_FLAGS = DEF(GCC5_ASLCC_FLAGS)
  2047. *_GCC5_AARCH64_ASLDLINK_FLAGS = DEF(GCC5_AARCH64_ASLDLINK_FLAGS)
  2048. *_GCC5_AARCH64_ASM_FLAGS = DEF(GCC5_AARCH64_ASM_FLAGS)
  2049. *_GCC5_AARCH64_DLINK2_FLAGS = DEF(GCC5_AARCH64_DLINK2_FLAGS)
  2050. *_GCC5_AARCH64_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
  2051. *_GCC5_AARCH64_PLATFORM_FLAGS =
  2052. *_GCC5_AARCH64_PP_FLAGS = $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS)
  2053. *_GCC5_AARCH64_RC_FLAGS = DEF(GCC_AARCH64_RC_FLAGS)
  2054. *_GCC5_AARCH64_VFRPP_FLAGS = $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS)
  2055. *_GCC5_AARCH64_CC_XIPFLAGS = DEF(GCC5_AARCH64_CC_XIPFLAGS)
  2056. DEBUG_GCC5_AARCH64_CC_FLAGS = DEF(GCC5_AARCH64_CC_FLAGS) -flto -Wno-unused-but-set-variable -Wno-unused-const-variable
  2057. DEBUG_GCC5_AARCH64_DLINK_FLAGS = DEF(GCC5_AARCH64_DLINK_FLAGS) -flto -Os -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-aarch64 -Wl,-plugin-opt=-pass-through=-llto-aarch64 -Wno-lto-type-mismatch
  2058. DEBUG_GCC5_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20
  2059. RELEASE_GCC5_AARCH64_CC_FLAGS = DEF(GCC5_AARCH64_CC_FLAGS) -flto -Wno-unused-but-set-variable -Wno-unused-const-variable
  2060. RELEASE_GCC5_AARCH64_DLINK_FLAGS = DEF(GCC5_AARCH64_DLINK_FLAGS) -flto -Os -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-aarch64 -Wl,-plugin-opt=-pass-through=-llto-aarch64 -Wno-lto-type-mismatch
  2061. RELEASE_GCC5_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20
  2062. NOOPT_GCC5_AARCH64_CC_FLAGS = DEF(GCC5_AARCH64_CC_FLAGS) -O0
  2063. NOOPT_GCC5_AARCH64_DLINK_FLAGS = DEF(GCC5_AARCH64_DLINK_FLAGS) -O0
  2064. NOOPT_GCC5_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20 -O0
  2065. ####################################################################################
  2066. #
  2067. # GCC RISC-V This configuration is used to compile under Linux to produce
  2068. # PE/COFF binaries using GCC RISC-V tool chain
  2069. #
  2070. ####################################################################################
  2071. ##################
  2072. # GCC5 RISCV64 definitions
  2073. ##################
  2074. *_GCC5_RISCV64_OBJCOPY_PATH = ENV(GCC5_RISCV64_PREFIX)objcopy
  2075. *_GCC5_RISCV64_CC_PATH = ENV(GCC5_RISCV64_PREFIX)gcc
  2076. *_GCC5_RISCV64_SLINK_PATH = ENV(GCC5_RISCV64_PREFIX)gcc-ar
  2077. *_GCC5_RISCV64_DLINK_PATH = ENV(GCC5_RISCV64_PREFIX)gcc
  2078. *_GCC5_RISCV64_ASLDLINK_PATH = ENV(GCC5_RISCV64_PREFIX)gcc
  2079. *_GCC5_RISCV64_ASM_PATH = ENV(GCC5_RISCV64_PREFIX)gcc
  2080. *_GCC5_RISCV64_PP_PATH = ENV(GCC5_RISCV64_PREFIX)gcc
  2081. *_GCC5_RISCV64_VFRPP_PATH = ENV(GCC5_RISCV64_PREFIX)gcc
  2082. *_GCC5_RISCV64_ASLCC_PATH = ENV(GCC5_RISCV64_PREFIX)gcc
  2083. *_GCC5_RISCV64_ASLPP_PATH = ENV(GCC5_RISCV64_PREFIX)gcc
  2084. *_GCC5_RISCV64_RC_PATH = ENV(GCC5_RISCV64_PREFIX)objcopy
  2085. *_GCC5_RISCV64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
  2086. *_GCC5_RISCV64_ASLDLINK_FLAGS = DEF(GCC5_RISCV32_RISCV64_ASLDLINK_FLAGS)
  2087. *_GCC5_RISCV64_ASM_FLAGS = DEF(GCC5_RISCV64_ASM_FLAGS)
  2088. *_GCC5_RISCV64_CC_FLAGS = DEF(GCC5_RISCV64_CC_FLAGS) -save-temps
  2089. *_GCC5_RISCV64_DLINK_FLAGS = DEF(GCC5_RISCV64_DLINK_FLAGS)
  2090. *_GCC5_RISCV64_DLINK2_FLAGS = DEF(GCC5_RISCV64_DLINK2_FLAGS)
  2091. *_GCC5_RISCV64_RC_FLAGS = DEF(GCC_RISCV64_RC_FLAGS)
  2092. *_GCC5_RISCV64_OBJCOPY_FLAGS =
  2093. *_GCC5_RISCV64_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
  2094. *_GCC5_RISCV64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(GCC5_RISCV_OPENSBI_TYPES)
  2095. ##################
  2096. # GCC5 LOONGARCH64 definitions
  2097. ##################
  2098. *_GCC5_LOONGARCH64_OBJCOPY_PATH = ENV(GCC5_LOONGARCH64_PREFIX)objcopy
  2099. *_GCC5_LOONGARCH64_CC_PATH = ENV(GCC5_LOONGARCH64_PREFIX)gcc
  2100. *_GCC5_LOONGARCH64_SLINK_PATH = ENV(GCC5_LOONGARCH64_PREFIX)gcc-ar
  2101. *_GCC5_LOONGARCH64_DLINK_PATH = ENV(GCC5_LOONGARCH64_PREFIX)gcc
  2102. *_GCC5_LOONGARCH64_ASLDLINK_PATH = ENV(GCC5_LOONGARCH64_PREFIX)gcc
  2103. *_GCC5_LOONGARCH64_ASM_PATH = ENV(GCC5_LOONGARCH64_PREFIX)gcc
  2104. *_GCC5_LOONGARCH64_PP_PATH = ENV(GCC5_LOONGARCH64_PREFIX)gcc
  2105. *_GCC5_LOONGARCH64_VFRPP_PATH = ENV(GCC5_LOONGARCH64_PREFIX)gcc
  2106. *_GCC5_LOONGARCH64_ASLCC_PATH = ENV(GCC5_LOONGARCH64_PREFIX)gcc
  2107. *_GCC5_LOONGARCH64_ASLPP_PATH = ENV(GCC5_LOONGARCH64_PREFIX)gcc
  2108. *_GCC5_LOONGARCH64_RC_PATH = ENV(GCC5_LOONGARCH64_PREFIX)objcopy
  2109. *_GCC5_LOONGARCH64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
  2110. *_GCC5_LOONGARCH64_ASLDLINK_FLAGS = DEF(GCC5_LOONGARCH64_ASLDLINK_FLAGS)
  2111. *_GCC5_LOONGARCH64_ASM_FLAGS = DEF(GCC5_LOONGARCH64_ASM_FLAGS)
  2112. *_GCC5_LOONGARCH64_DLINK_FLAGS = DEF(GCC5_LOONGARCH64_DLINK_FLAGS)
  2113. *_GCC5_LOONGARCH64_DLINK2_FLAGS = DEF(GCC5_LOONGARCH64_DLINK2_FLAGS)
  2114. *_GCC5_LOONGARCH64_RC_FLAGS = DEF(GCC_LOONGARCH64_RC_FLAGS)
  2115. *_GCC5_LOONGARCH64_OBJCOPY_FLAGS =
  2116. *_GCC5_LOONGARCH64_NASM_FLAGS = -f elf32
  2117. *_GCC5_LOONGARCH64_PP_FLAGS = DEF(GCC5_LOONGARCH64_PP_FLAGS)
  2118. DEBUG_GCC5_LOONGARCH64_CC_FLAGS = DEF(GCC5_LOONGARCH64_CC_FLAGS)
  2119. RELEASE_GCC5_LOONGARCH64_CC_FLAGS = DEF(GCC5_LOONGARCH64_CC_FLAGS) -Wno-unused-but-set-variable -Wno-unused-variable
  2120. ####################################################################################
  2121. #
  2122. # CLANG35 - This configuration is used to compile under Linux to produce
  2123. # PE/COFF binaries using the clang compiler and assembler (v3.5 and up)
  2124. # and GNU linker
  2125. #
  2126. ####################################################################################
  2127. *_CLANG35_*_*_FAMILY = GCC
  2128. *_CLANG35_*_MAKE_PATH = make
  2129. *_CLANG35_*_*_DLL = ENV(CLANG35_DLL)
  2130. *_CLANG35_*_ASL_PATH = DEF(UNIX_IASL_BIN)
  2131. *_CLANG35_*_PP_FLAGS = DEF(GCC_PP_FLAGS)
  2132. *_CLANG35_*_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
  2133. *_CLANG35_*_APP_FLAGS =
  2134. *_CLANG35_*_ASL_FLAGS = DEF(IASL_FLAGS)
  2135. *_CLANG35_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
  2136. *_CLANG35_*_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
  2137. *_CLANG35_*_CC_PATH = ENV(CLANG35_BIN)clang
  2138. *_CLANG35_*_ASM_PATH = ENV(CLANG35_BIN)clang
  2139. *_CLANG35_*_PP_PATH = ENV(CLANG35_BIN)clang
  2140. *_CLANG35_*_VFRPP_PATH = ENV(CLANG35_BIN)clang
  2141. *_CLANG35_*_ASLCC_PATH = ENV(CLANG35_BIN)clang
  2142. *_CLANG35_*_ASLPP_PATH = ENV(CLANG35_BIN)clang
  2143. *_CLANG35_*_DLINK_PATH = ENV(CLANG35_BIN)clang
  2144. *_CLANG35_*_ASLDLINK_PATH = ENV(CLANG35_BIN)clang
  2145. *_CLANG35_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS)
  2146. DEFINE CLANG35_ARM_TARGET = -target arm-linux-gnueabi
  2147. DEFINE CLANG35_AARCH64_TARGET = -target aarch64-linux-gnu
  2148. DEFINE CLANG35_WARNING_OVERRIDES = -Wno-parentheses-equality -Wno-tautological-compare -Wno-tautological-constant-out-of-range-compare -Wno-empty-body -Wno-unknown-warning-option -Wno-unused-but-set-variable -Wno-unused-const-variable
  2149. DEFINE CLANG35_ARM_CC_FLAGS = DEF(GCC_ARM_CC_FLAGS) DEF(CLANG35_ARM_TARGET) DEF(CLANG35_WARNING_OVERRIDES)
  2150. DEFINE CLANG35_AARCH64_CC_FLAGS = DEF(GCC_AARCH64_CC_FLAGS) DEF(CLANG35_AARCH64_TARGET) -mcmodel=small DEF(CLANG35_WARNING_OVERRIDES)
  2151. ##################
  2152. # CLANG35 ARM definitions
  2153. ##################
  2154. *_CLANG35_ARM_SLINK_PATH = ENV(CLANG35_ARM_PREFIX)ar
  2155. *_CLANG35_ARM_RC_PATH = ENV(CLANG35_ARM_PREFIX)objcopy
  2156. *_CLANG35_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
  2157. *_CLANG35_ARM_ASLDLINK_FLAGS = DEF(CLANG35_ARM_TARGET) DEF(GCC_ARM_ASLDLINK_FLAGS)
  2158. *_CLANG35_ARM_ASM_FLAGS = DEF(GCC_ASM_FLAGS) DEF(CLANG35_ARM_TARGET) $(PLATFORM_FLAGS) -Qunused-arguments
  2159. *_CLANG35_ARM_DLINK_FLAGS = DEF(CLANG35_ARM_TARGET) DEF(GCC_ARM_DLINK_FLAGS)
  2160. *_CLANG35_ARM_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x220
  2161. *_CLANG35_ARM_PLATFORM_FLAGS = -march=armv7-a -mkernel -Qunused-arguments
  2162. *_CLANG35_ARM_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG35_ARM_TARGET) $(PLATFORM_FLAGS)
  2163. *_CLANG35_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS)
  2164. *_CLANG35_ARM_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG35_ARM_TARGET) $(PLATFORM_FLAGS)
  2165. *_CLANG35_ARM_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG35_ARM_TARGET)
  2166. *_CLANG35_ARM_CC_XIPFLAGS = DEF(GCC_ARM_CC_XIPFLAGS)
  2167. DEBUG_CLANG35_ARM_CC_FLAGS = DEF(CLANG35_ARM_CC_FLAGS) $(PLATFORM_FLAGS) -O1
  2168. RELEASE_CLANG35_ARM_CC_FLAGS = DEF(CLANG35_ARM_CC_FLAGS) $(PLATFORM_FLAGS) -Oz
  2169. NOOPT_CLANG35_ARM_CC_FLAGS = DEF(CLANG35_ARM_CC_FLAGS) $(PLATFORM_FLAGS) -O0
  2170. ##################
  2171. # CLANG35 AARCH64 definitions
  2172. ##################
  2173. *_CLANG35_AARCH64_SLINK_PATH = ENV(CLANG35_AARCH64_PREFIX)ar
  2174. *_CLANG35_AARCH64_RC_PATH = ENV(CLANG35_AARCH64_PREFIX)objcopy
  2175. *_CLANG35_AARCH64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
  2176. *_CLANG35_AARCH64_ASLDLINK_FLAGS = DEF(CLANG35_AARCH64_TARGET) DEF(GCC_AARCH64_ASLDLINK_FLAGS)
  2177. *_CLANG35_AARCH64_ASM_FLAGS = DEF(GCC_ASM_FLAGS) DEF(CLANG35_AARCH64_TARGET) $(PLATFORM_FLAGS) -Qunused-arguments
  2178. *_CLANG35_AARCH64_DLINK_FLAGS = DEF(CLANG35_AARCH64_TARGET) DEF(GCC_AARCH64_DLINK_FLAGS) -z common-page-size=0x1000
  2179. *_CLANG35_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20
  2180. *_CLANG35_AARCH64_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x228
  2181. *_CLANG35_AARCH64_PLATFORM_FLAGS =
  2182. *_CLANG35_AARCH64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG35_AARCH64_TARGET) $(PLATFORM_FLAGS)
  2183. *_CLANG35_AARCH64_RC_FLAGS = DEF(GCC_AARCH64_RC_FLAGS)
  2184. *_CLANG35_AARCH64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG35_AARCH64_TARGET) $(PLATFORM_FLAGS)
  2185. *_CLANG35_AARCH64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG35_AARCH64_TARGET)
  2186. *_CLANG35_AARCH64_CC_XIPFLAGS = DEF(GCC_AARCH64_CC_XIPFLAGS)
  2187. DEBUG_CLANG35_AARCH64_CC_FLAGS = DEF(CLANG35_AARCH64_CC_FLAGS) $(PLATFORM_FLAGS) -O1
  2188. RELEASE_CLANG35_AARCH64_CC_FLAGS = DEF(CLANG35_AARCH64_CC_FLAGS) $(PLATFORM_FLAGS) -Oz
  2189. NOOPT_CLANG35_AARCH64_CC_FLAGS = DEF(CLANG35_AARCH64_CC_FLAGS) $(PLATFORM_FLAGS) -O0
  2190. ####################################################################################
  2191. #
  2192. # Clang 3.8 - This configuration is used to compile under Linux to produce
  2193. # PE/COFF binaries using LLVM/Clang 3.8 with Link Time Optimization enabled
  2194. #
  2195. ####################################################################################
  2196. *_CLANG38_*_*_FAMILY = GCC
  2197. *_CLANG38_*_MAKE_PATH = make
  2198. *_CLANG38_*_*_DLL = ENV(CLANG38_DLL)
  2199. *_CLANG38_*_ASL_PATH = DEF(UNIX_IASL_BIN)
  2200. *_CLANG38_*_APP_FLAGS =
  2201. *_CLANG38_*_ASL_FLAGS = DEF(IASL_FLAGS)
  2202. *_CLANG38_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
  2203. *_CLANG38_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS)
  2204. DEFINE CLANG38_IA32_PREFIX = ENV(CLANG38_BIN)
  2205. DEFINE CLANG38_X64_PREFIX = ENV(CLANG38_BIN)
  2206. DEFINE CLANG38_IA32_TARGET = -target i686-pc-linux-gnu
  2207. DEFINE CLANG38_X64_TARGET = -target x86_64-pc-linux-gnu
  2208. DEFINE CLANG38_WARNING_OVERRIDES = -Wno-parentheses-equality -Wno-tautological-compare -Wno-tautological-constant-out-of-range-compare -Wno-empty-body -Wno-unused-const-variable -Wno-varargs -Wno-unknown-warning-option -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-unaligned-access
  2209. DEFINE CLANG38_ALL_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) DEF(CLANG38_WARNING_OVERRIDES) -fno-stack-protector -mms-bitfields -Wno-address -Wno-shift-negative-value -Wno-unknown-pragmas -Wno-incompatible-library-redeclaration -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -msoft-float -mno-implicit-float -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang -funsigned-char -fno-ms-extensions -Wno-null-dereference
  2210. ###########################
  2211. # CLANG38 IA32 definitions
  2212. ###########################
  2213. *_CLANG38_IA32_OBJCOPY_PATH = objcopy
  2214. *_CLANG38_IA32_CC_PATH = DEF(CLANG38_IA32_PREFIX)clang
  2215. *_CLANG38_IA32_SLINK_PATH = DEF(CLANG38_IA32_PREFIX)llvm-ar
  2216. *_CLANG38_IA32_DLINK_PATH = DEF(CLANG38_IA32_PREFIX)clang
  2217. *_CLANG38_IA32_ASLDLINK_PATH = DEF(CLANG38_IA32_PREFIX)clang
  2218. *_CLANG38_IA32_ASM_PATH = DEF(CLANG38_IA32_PREFIX)clang
  2219. *_CLANG38_IA32_PP_PATH = DEF(CLANG38_IA32_PREFIX)clang
  2220. *_CLANG38_IA32_VFRPP_PATH = DEF(CLANG38_IA32_PREFIX)clang
  2221. *_CLANG38_IA32_ASLCC_PATH = DEF(CLANG38_IA32_PREFIX)clang
  2222. *_CLANG38_IA32_ASLPP_PATH = DEF(CLANG38_IA32_PREFIX)clang
  2223. *_CLANG38_IA32_RC_PATH = objcopy
  2224. *_CLANG38_IA32_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m32 -fno-lto DEF(CLANG38_IA32_TARGET)
  2225. *_CLANG38_IA32_ASLDLINK_FLAGS = DEF(GCC5_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_i386
  2226. *_CLANG38_IA32_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m32 -march=i386 DEF(CLANG38_IA32_TARGET)
  2227. *_CLANG38_IA32_RC_FLAGS = DEF(GCC_IA32_RC_FLAGS)
  2228. *_CLANG38_IA32_OBJCOPY_FLAGS =
  2229. *_CLANG38_IA32_NASM_FLAGS = -f elf32
  2230. *_CLANG38_IA32_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_IA32_TARGET)
  2231. *_CLANG38_IA32_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_IA32_TARGET)
  2232. *_CLANG38_IA32_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_IA32_TARGET)
  2233. DEBUG_CLANG38_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 DEF(CLANG38_IA32_TARGET) -g -malign-double
  2234. DEBUG_CLANG38_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_i386 -Wl,--oformat=elf32-i386
  2235. DEBUG_CLANG38_IA32_DLINK2_FLAGS = DEF(GCC5_IA32_DLINK2_FLAGS) -O3
  2236. RELEASE_CLANG38_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 DEF(CLANG38_IA32_TARGET) -malign-double
  2237. RELEASE_CLANG38_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_i386 -Wl,--oformat=elf32-i386
  2238. RELEASE_CLANG38_IA32_DLINK2_FLAGS = DEF(GCC5_IA32_DLINK2_FLAGS) -O3
  2239. NOOPT_CLANG38_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m32 -O0 -march=i586 DEF(CLANG38_IA32_TARGET) -g -malign-double
  2240. NOOPT_CLANG38_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_i386 -Wl,--oformat=elf32-i386
  2241. NOOPT_CLANG38_IA32_DLINK2_FLAGS = DEF(GCC5_IA32_DLINK2_FLAGS) -O0
  2242. ##########################
  2243. # CLANG38 X64 definitions
  2244. ##########################
  2245. *_CLANG38_X64_OBJCOPY_PATH = objcopy
  2246. *_CLANG38_X64_CC_PATH = DEF(CLANG38_X64_PREFIX)clang
  2247. *_CLANG38_X64_SLINK_PATH = DEF(CLANG38_X64_PREFIX)llvm-ar
  2248. *_CLANG38_X64_DLINK_PATH = DEF(CLANG38_X64_PREFIX)clang
  2249. *_CLANG38_X64_ASLDLINK_PATH = DEF(CLANG38_X64_PREFIX)clang
  2250. *_CLANG38_X64_ASM_PATH = DEF(CLANG38_X64_PREFIX)clang
  2251. *_CLANG38_X64_PP_PATH = DEF(CLANG38_X64_PREFIX)clang
  2252. *_CLANG38_X64_VFRPP_PATH = DEF(CLANG38_X64_PREFIX)clang
  2253. *_CLANG38_X64_ASLCC_PATH = DEF(CLANG38_X64_PREFIX)clang
  2254. *_CLANG38_X64_ASLPP_PATH = DEF(CLANG38_X64_PREFIX)clang
  2255. *_CLANG38_X64_RC_PATH = objcopy
  2256. *_CLANG38_X64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m64 -fno-lto DEF(CLANG38_X64_TARGET)
  2257. *_CLANG38_X64_ASLDLINK_FLAGS = DEF(GCC5_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_x86_64
  2258. *_CLANG38_X64_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m64 DEF(CLANG38_X64_TARGET)
  2259. *_CLANG38_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS)
  2260. *_CLANG38_X64_OBJCOPY_FLAGS =
  2261. *_CLANG38_X64_NASM_FLAGS = -f elf64
  2262. *_CLANG38_X64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_X64_TARGET)
  2263. *_CLANG38_X64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_X64_TARGET)
  2264. *_CLANG38_X64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_X64_TARGET)
  2265. DEBUG_CLANG38_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto DEF(CLANG38_X64_TARGET) -g
  2266. DEBUG_CLANG38_X64_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_x86_64 -Wl,--oformat=elf64-x86-64 -Wl,-pie -mcmodel=small
  2267. DEBUG_CLANG38_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS) -O3
  2268. RELEASE_CLANG38_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto DEF(CLANG38_X64_TARGET)
  2269. RELEASE_CLANG38_X64_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_x86_64 -Wl,--oformat=elf64-x86-64 -Wl,-pie -mcmodel=small
  2270. RELEASE_CLANG38_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS) -O3
  2271. NOOPT_CLANG38_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -O0 DEF(CLANG38_X64_TARGET) -g
  2272. NOOPT_CLANG38_X64_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_x86_64 -Wl,--oformat=elf64-x86-64 -Wl,-pie -mcmodel=small
  2273. NOOPT_CLANG38_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS) -O0
  2274. ##################
  2275. # CLANG38 ARM definitions
  2276. ##################
  2277. DEFINE CLANG38_ARM_TARGET = -target arm-linux-gnueabi
  2278. DEFINE CLANG38_ARM_CC_FLAGS = DEF(GCC_ARM_CC_FLAGS) DEF(CLANG38_ARM_TARGET) DEF(CLANG38_WARNING_OVERRIDES) -mno-movt
  2279. DEFINE CLANG38_ARM_DLINK_FLAGS = DEF(CLANG38_ARM_TARGET) DEF(GCC_ARM_DLINK_FLAGS)
  2280. *_CLANG38_ARM_PP_FLAGS = DEF(GCC_PP_FLAGS)
  2281. *_CLANG38_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
  2282. *_CLANG38_ARM_APP_FLAGS =
  2283. *_CLANG38_ARM_ASL_FLAGS = DEF(IASL_FLAGS)
  2284. *_CLANG38_ARM_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
  2285. *_CLANG38_ARM_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
  2286. *_CLANG38_ARM_CC_PATH = ENV(CLANG38_BIN)clang
  2287. *_CLANG38_ARM_ASM_PATH = ENV(CLANG38_BIN)clang
  2288. *_CLANG38_ARM_PP_PATH = ENV(CLANG38_BIN)clang
  2289. *_CLANG38_ARM_VFRPP_PATH = ENV(CLANG38_BIN)clang
  2290. *_CLANG38_ARM_ASLCC_PATH = ENV(CLANG38_BIN)clang
  2291. *_CLANG38_ARM_ASLPP_PATH = ENV(CLANG38_BIN)clang
  2292. *_CLANG38_ARM_DLINK_PATH = ENV(CLANG38_BIN)clang
  2293. *_CLANG38_ARM_ASLDLINK_PATH = ENV(CLANG38_BIN)clang
  2294. *_CLANG38_ARM_SLINK_PATH = ENV(CLANG38_BIN)llvm-ar
  2295. *_CLANG38_ARM_RC_PATH = ENV(CLANG38_ARM_PREFIX)objcopy
  2296. *_CLANG38_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -fno-lto
  2297. *_CLANG38_ARM_ASLDLINK_FLAGS = DEF(CLANG38_ARM_TARGET) DEF(GCC_ARM_ASLDLINK_FLAGS)
  2298. *_CLANG38_ARM_ASM_FLAGS = DEF(GCC_ASM_FLAGS) DEF(CLANG38_ARM_TARGET) $(PLATFORM_FLAGS) -Qunused-arguments
  2299. *_CLANG38_ARM_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x220
  2300. *_CLANG38_ARM_PLATFORM_FLAGS = -march=armv7-a
  2301. *_CLANG38_ARM_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_ARM_TARGET) $(PLATFORM_FLAGS)
  2302. *_CLANG38_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS)
  2303. *_CLANG38_ARM_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_ARM_TARGET) $(PLATFORM_FLAGS)
  2304. *_CLANG38_ARM_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_ARM_TARGET)
  2305. *_CLANG38_ARM_CC_XIPFLAGS = DEF(GCC_ARM_CC_XIPFLAGS)
  2306. DEBUG_CLANG38_ARM_CC_FLAGS = DEF(CLANG38_ARM_CC_FLAGS) $(PLATFORM_FLAGS) -flto -O1
  2307. DEBUG_CLANG38_ARM_DLINK_FLAGS = DEF(CLANG38_ARM_DLINK_FLAGS) -flto -Wl,-O1 -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-arm -Wl,-plugin-opt=-pass-through=-llto-arm
  2308. NOOPT_CLANG38_ARM_CC_FLAGS = DEF(CLANG38_ARM_CC_FLAGS) $(PLATFORM_FLAGS) -O0
  2309. NOOPT_CLANG38_ARM_DLINK_FLAGS = DEF(CLANG38_ARM_DLINK_FLAGS)
  2310. RELEASE_CLANG38_ARM_CC_FLAGS = DEF(CLANG38_ARM_CC_FLAGS) $(PLATFORM_FLAGS) -flto -O3
  2311. RELEASE_CLANG38_ARM_DLINK_FLAGS = DEF(CLANG38_ARM_DLINK_FLAGS) -flto -Wl,-O3 -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-arm -Wl,-plugin-opt=-pass-through=-llto-arm
  2312. ##################
  2313. # CLANG38 AARCH64 definitions
  2314. ##################
  2315. DEFINE CLANG38_AARCH64_TARGET = -target aarch64-linux-gnu
  2316. DEFINE CLANG38_AARCH64_CC_FLAGS = DEF(GCC_AARCH64_CC_FLAGS) DEF(CLANG38_AARCH64_TARGET) -mcmodel=small DEF(CLANG38_WARNING_OVERRIDES)
  2317. DEFINE CLANG38_AARCH64_DLINK_FLAGS = DEF(CLANG38_AARCH64_TARGET) DEF(GCC_AARCH64_DLINK_FLAGS) -z common-page-size=0x1000
  2318. *_CLANG38_AARCH64_PP_FLAGS = DEF(GCC_PP_FLAGS)
  2319. *_CLANG38_AARCH64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
  2320. *_CLANG38_AARCH64_APP_FLAGS =
  2321. *_CLANG38_AARCH64_ASL_FLAGS = DEF(IASL_FLAGS)
  2322. *_CLANG38_AARCH64_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
  2323. *_CLANG38_AARCH64_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
  2324. *_CLANG38_AARCH64_CC_PATH = ENV(CLANG38_BIN)clang
  2325. *_CLANG38_AARCH64_ASM_PATH = ENV(CLANG38_BIN)clang
  2326. *_CLANG38_AARCH64_PP_PATH = ENV(CLANG38_BIN)clang
  2327. *_CLANG38_AARCH64_VFRPP_PATH = ENV(CLANG38_BIN)clang
  2328. *_CLANG38_AARCH64_ASLCC_PATH = ENV(CLANG38_BIN)clang
  2329. *_CLANG38_AARCH64_ASLPP_PATH = ENV(CLANG38_BIN)clang
  2330. *_CLANG38_AARCH64_DLINK_PATH = ENV(CLANG38_BIN)clang
  2331. *_CLANG38_AARCH64_ASLDLINK_PATH = ENV(CLANG38_BIN)clang
  2332. *_CLANG38_AARCH64_SLINK_PATH = ENV(CLANG38_BIN)llvm-ar
  2333. *_CLANG38_AARCH64_RC_PATH = ENV(CLANG38_AARCH64_PREFIX)objcopy
  2334. *_CLANG38_AARCH64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -fno-lto
  2335. *_CLANG38_AARCH64_ASLDLINK_FLAGS = DEF(CLANG38_AARCH64_TARGET) DEF(GCC_AARCH64_ASLDLINK_FLAGS)
  2336. *_CLANG38_AARCH64_ASM_FLAGS = DEF(GCC_ASM_FLAGS) DEF(CLANG38_AARCH64_TARGET) $(PLATFORM_FLAGS) -Qunused-arguments
  2337. *_CLANG38_AARCH64_DLINK_FLAGS = DEF(CLANG38_AARCH64_TARGET) DEF(GCC_AARCH64_DLINK_FLAGS) -z common-page-size=0x1000
  2338. *_CLANG38_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20
  2339. *_CLANG38_AARCH64_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x228
  2340. *_CLANG38_AARCH64_PLATFORM_FLAGS =
  2341. *_CLANG38_AARCH64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_AARCH64_TARGET) $(PLATFORM_FLAGS)
  2342. *_CLANG38_AARCH64_RC_FLAGS = DEF(GCC_AARCH64_RC_FLAGS)
  2343. *_CLANG38_AARCH64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_AARCH64_TARGET) $(PLATFORM_FLAGS)
  2344. *_CLANG38_AARCH64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_AARCH64_TARGET)
  2345. *_CLANG38_AARCH64_CC_XIPFLAGS = DEF(GCC_AARCH64_CC_XIPFLAGS)
  2346. DEBUG_CLANG38_AARCH64_CC_FLAGS = DEF(CLANG38_AARCH64_CC_FLAGS) $(PLATFORM_FLAGS) -flto -O1
  2347. DEBUG_CLANG38_AARCH64_DLINK_FLAGS = DEF(CLANG38_AARCH64_DLINK_FLAGS) -flto -Wl,-O1 -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-aarch64 -Wl,-plugin-opt=-pass-through=-llto-aarch64
  2348. NOOPT_CLANG38_AARCH64_CC_FLAGS = DEF(CLANG38_AARCH64_CC_FLAGS) $(PLATFORM_FLAGS) -O0
  2349. NOOPT_CLANG38_AARCH64_DLINK_FLAGS = DEF(CLANG38_AARCH64_DLINK_FLAGS)
  2350. RELEASE_CLANG38_AARCH64_CC_FLAGS = DEF(CLANG38_AARCH64_CC_FLAGS) $(PLATFORM_FLAGS) -flto -O3
  2351. RELEASE_CLANG38_AARCH64_DLINK_FLAGS = DEF(CLANG38_AARCH64_DLINK_FLAGS) -flto -Wl,-O3 -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-aarch64 -Wl,-plugin-opt=-pass-through=-llto-aarch64
  2352. ####################################################################################
  2353. #
  2354. # CLANGPDB - This configuration is used to compile under Windows/Linux/Mac to produce
  2355. # PE/COFF binaries using LLVM/Clang/LLD with Link Time Optimization enabled
  2356. #
  2357. ####################################################################################
  2358. *_CLANGPDB_*_*_FAMILY = GCC
  2359. *_CLANGPDB_*_*_BUILDRULEFAMILY = CLANGPDB
  2360. *_CLANGPDB_*_MAKE_PATH = ENV(CLANG_HOST_BIN)make
  2361. *_CLANGPDB_*_*_DLL = ENV(CLANGPDB_DLL)
  2362. *_CLANGPDB_*_ASL_PATH = DEF(UNIX_IASL_BIN)
  2363. *_CLANGPDB_*_APP_FLAGS =
  2364. *_CLANGPDB_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
  2365. *_CLANGPDB_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
  2366. *_CLANGPDB_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
  2367. *_CLANGPDB_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS)
  2368. DEFINE CLANGPDB_IA32_PREFIX = ENV(CLANG_BIN)
  2369. DEFINE CLANGPDB_X64_PREFIX = ENV(CLANG_BIN)
  2370. DEFINE CLANGPDB_IA32_TARGET = -target i686-unknown-windows-gnu
  2371. DEFINE CLANGPDB_X64_TARGET = -target x86_64-unknown-windows-gnu
  2372. DEFINE CLANGPDB_WARNING_OVERRIDES = -Wno-parentheses-equality -Wno-tautological-compare -Wno-tautological-constant-out-of-range-compare -Wno-empty-body -Wno-unused-const-variable -Wno-varargs -Wno-unknown-warning-option -Wno-microsoft-enum-forward-reference
  2373. DEFINE CLANGPDB_ALL_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) DEF(CLANGPDB_WARNING_OVERRIDES) -fno-stack-protector -funsigned-char -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang -Wno-address -Wno-shift-negative-value -Wno-unknown-pragmas -Wno-incompatible-library-redeclaration -Wno-null-dereference -mno-implicit-float -mms-bitfields -mno-stack-arg-probe -nostdlib -nostdlibinc -fseh-exceptions
  2374. ###########################
  2375. # CLANGPDB IA32 definitions
  2376. ###########################
  2377. *_CLANGPDB_IA32_CC_PATH = DEF(CLANGPDB_IA32_PREFIX)clang
  2378. *_CLANGPDB_IA32_SLINK_PATH = DEF(CLANGPDB_IA32_PREFIX)llvm-lib
  2379. *_CLANGPDB_IA32_DLINK_PATH = DEF(CLANGPDB_IA32_PREFIX)lld-link
  2380. *_CLANGPDB_IA32_ASLDLINK_PATH = DEF(CLANGPDB_IA32_PREFIX)lld-link
  2381. *_CLANGPDB_IA32_ASM_PATH = DEF(CLANGPDB_IA32_PREFIX)clang
  2382. *_CLANGPDB_IA32_PP_PATH = DEF(CLANGPDB_IA32_PREFIX)clang
  2383. *_CLANGPDB_IA32_VFRPP_PATH = DEF(CLANGPDB_IA32_PREFIX)clang
  2384. *_CLANGPDB_IA32_ASLCC_PATH = DEF(CLANGPDB_IA32_PREFIX)clang
  2385. *_CLANGPDB_IA32_ASLPP_PATH = DEF(CLANGPDB_IA32_PREFIX)clang
  2386. *_CLANGPDB_IA32_RC_PATH = DEF(CLANGPDB_IA32_PREFIX)llvm-rc
  2387. *_CLANGPDB_IA32_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m32 -fno-lto DEF(CLANGPDB_IA32_TARGET)
  2388. *_CLANGPDB_IA32_ASM_FLAGS = DEF(GCC_ASM_FLAGS) -m32 -march=i386 DEF(CLANGPDB_IA32_TARGET)
  2389. *_CLANGPDB_IA32_OBJCOPY_FLAGS =
  2390. *_CLANGPDB_IA32_NASM_FLAGS = -f win32
  2391. *_CLANGPDB_IA32_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANGPDB_IA32_TARGET)
  2392. *_CLANGPDB_IA32_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANGPDB_IA32_TARGET)
  2393. *_CLANGPDB_IA32_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANGPDB_IA32_TARGET)
  2394. DEBUG_CLANGPDB_IA32_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 DEF(CLANGPDB_IA32_TARGET) -gcodeview -malign-double
  2395. DEBUG_CLANGPDB_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /ALIGN:32 /FILEALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DEBUG:GHASH /MLLVM:-exception-model=wineh /lldmap
  2396. DEBUG_CLANGPDB_IA32_DLINK2_FLAGS =
  2397. RELEASE_CLANGPDB_IA32_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 DEF(CLANGPDB_IA32_TARGET) -malign-double
  2398. RELEASE_CLANGPDB_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /ALIGN:32 /FILEALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /MERGE:.rdata=.data /MLLVM:-exception-model=wineh /lldmap
  2399. RELEASE_CLANGPDB_IA32_DLINK2_FLAGS =
  2400. NOOPT_CLANGPDB_IA32_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m32 -O0 -march=i586 DEF(CLANGPDB_IA32_TARGET) -gcodeview -malign-double
  2401. NOOPT_CLANGPDB_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /ALIGN:32 /FILEALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DEBUG:GHASH /MLLVM:-exception-model=wineh /lldmap
  2402. NOOPT_CLANGPDB_IA32_DLINK2_FLAGS =
  2403. ##########################
  2404. # CLANGWIN X64 definitions
  2405. ##########################
  2406. *_CLANGPDB_X64_CC_PATH = DEF(CLANGPDB_X64_PREFIX)clang
  2407. *_CLANGPDB_X64_SLINK_PATH = DEF(CLANGPDB_X64_PREFIX)llvm-lib
  2408. *_CLANGPDB_X64_DLINK_PATH = DEF(CLANGPDB_X64_PREFIX)lld-link
  2409. *_CLANGPDB_X64_ASLDLINK_PATH = DEF(CLANGPDB_X64_PREFIX)lld-link
  2410. *_CLANGPDB_X64_ASM_PATH = DEF(CLANGPDB_X64_PREFIX)clang
  2411. *_CLANGPDB_X64_PP_PATH = DEF(CLANGPDB_X64_PREFIX)clang
  2412. *_CLANGPDB_X64_VFRPP_PATH = DEF(CLANGPDB_X64_PREFIX)clang
  2413. *_CLANGPDB_X64_ASLCC_PATH = DEF(CLANGPDB_X64_PREFIX)clang
  2414. *_CLANGPDB_X64_ASLPP_PATH = DEF(CLANGPDB_X64_PREFIX)clang
  2415. *_CLANGPDB_X64_RC_PATH = DEF(CLANGPDB_IA32_PREFIX)llvm-rc
  2416. *_CLANGPDB_X64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m64 -fno-lto DEF(CLANGPDB_X64_TARGET)
  2417. *_CLANGPDB_X64_ASM_FLAGS = DEF(GCC_ASM_FLAGS) -m64 DEF(CLANGPDB_X64_TARGET)
  2418. *_CLANGPDB_X64_OBJCOPY_FLAGS =
  2419. *_CLANGPDB_X64_NASM_FLAGS = -f win64
  2420. *_CLANGPDB_X64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANGPDB_X64_TARGET)
  2421. *_CLANGPDB_X64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANGPDB_X64_TARGET)
  2422. *_CLANGPDB_X64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANGPDB_X64_TARGET)
  2423. DEBUG_CLANGPDB_X64_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -Oz -flto DEF(CLANGPDB_X64_TARGET) -gcodeview -funwind-tables
  2424. DEBUG_CLANGPDB_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /ALIGN:32 /FILEALIGN:32 /Machine:X64 /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DEBUG:GHASH /MLLVM:-exception-model=wineh /lldmap
  2425. DEBUG_CLANGPDB_X64_DLINK2_FLAGS =
  2426. DEBUG_CLANGPDB_X64_GENFW_FLAGS = --keepexceptiontable
  2427. RELEASE_CLANGPDB_X64_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -Oz -flto DEF(CLANGPDB_X64_TARGET) -fno-unwind-tables
  2428. RELEASE_CLANGPDB_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /ALIGN:32 /FILEALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /MERGE:.rdata=.data /MLLVM:-exception-model=wineh /lldmap
  2429. RELEASE_CLANGPDB_X64_DLINK2_FLAGS =
  2430. RELEASE_CLANGPDB_X64_GENFW_FLAGS =
  2431. NOOPT_CLANGPDB_X64_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -O0 DEF(CLANGPDB_X64_TARGET) -gcodeview -funwind-tables
  2432. NOOPT_CLANGPDB_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /ALIGN:32 /FILEALIGN:32 /Machine:X64 /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DEBUG:GHASH /MLLVM:-exception-model=wineh /lldmap
  2433. NOOPT_CLANGPDB_X64_DLINK2_FLAGS =
  2434. NOOPT_CLANGPDB_X64_GENFW_FLAGS = --keepexceptiontable
  2435. ####################################################################################
  2436. #
  2437. # CLANGDWARF - This configuration is used to compile under Windows/Linux/Mac to produce
  2438. # ELF binaries using LLVM/Clang/LLD with Link Time Optimization enabled
  2439. #
  2440. ####################################################################################
  2441. *_CLANGDWARF_*_*_FAMILY = GCC
  2442. *_CLANGDWARF_*_*_BUILDRULEFAMILY = CLANGGCC
  2443. *_CLANGDWARF_*_MAKE_PATH = ENV(CLANG_HOST_BIN)make
  2444. *_CLANGDWARF_*_*_DLL = ENV(CLANGDWARF_DLL)
  2445. *_CLANGDWARF_*_ASL_PATH = DEF(UNIX_IASL_BIN)
  2446. *_CLANGDWARF_*_APP_FLAGS =
  2447. *_CLANGDWARF_*_ASL_FLAGS = DEF(IASL_FLAGS)
  2448. *_CLANGDWARF_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
  2449. DEFINE CLANGDWARF_IA32_PREFIX = ENV(CLANG_BIN)
  2450. DEFINE CLANGDWARF_X64_PREFIX = ENV(CLANG_BIN)
  2451. # LLVM/CLANG doesn't support -n link option. So, it can't share the same IA32_X64_DLINK_COMMON flag.
  2452. # LLVM/CLANG doesn't support common page size. So, it can't share the same GccBase.lds script.
  2453. DEFINE CLANGDWARF_IA32_X64_DLINK_COMMON = -nostdlib -Wl,-q,--gc-sections -z max-page-size=0x40
  2454. DEFINE CLANGDWARF_DLINK2_FLAGS_COMMON = -Wl,--script=$(EDK_TOOLS_PATH)/Scripts/ClangBase.lds
  2455. DEFINE CLANGDWARF_IA32_X64_ASLDLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0 DEF(CLANGDWARF_DLINK2_FLAGS_COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable
  2456. DEFINE CLANGDWARF_IA32_X64_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map,--whole-archive
  2457. DEFINE CLANGDWARF_IA32_DLINK2_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0x220 DEF(CLANGDWARF_DLINK2_FLAGS_COMMON)
  2458. DEFINE CLANGDWARF_X64_DLINK2_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0x228 DEF(CLANGDWARF_DLINK2_FLAGS_COMMON)
  2459. ###########################
  2460. # CLANGDWARF IA32 definitions
  2461. ###########################
  2462. *_CLANGDWARF_IA32_CC_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang
  2463. *_CLANGDWARF_IA32_SLINK_PATH = DEF(CLANGDWARF_IA32_PREFIX)llvm-ar
  2464. *_CLANGDWARF_IA32_DLINK_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang
  2465. *_CLANGDWARF_IA32_ASLDLINK_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang
  2466. *_CLANGDWARF_IA32_ASM_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang
  2467. *_CLANGDWARF_IA32_PP_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang
  2468. *_CLANGDWARF_IA32_VFRPP_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang
  2469. *_CLANGDWARF_IA32_ASLCC_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang
  2470. *_CLANGDWARF_IA32_ASLPP_PATH = DEF(CLANGDWARF_IA32_PREFIX)clang
  2471. *_CLANGDWARF_IA32_RC_PATH = DEF(CLANGDWARF_IA32_PREFIX)llvm-rc
  2472. *_CLANGDWARF_IA32_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m32 -fno-lto DEF(CLANG38_IA32_TARGET)
  2473. *_CLANGDWARF_IA32_ASLDLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_i386 -fuse-ld=lld
  2474. *_CLANGDWARF_IA32_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m32 -march=i386 DEF(CLANG38_IA32_TARGET)
  2475. *_CLANGDWARF_IA32_RC_FLAGS = DEF(GCC_IA32_RC_FLAGS)
  2476. *_CLANGDWARF_IA32_OBJCOPY_FLAGS =
  2477. *_CLANGDWARF_IA32_NASM_FLAGS = -f elf32
  2478. *_CLANGDWARF_IA32_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_IA32_TARGET)
  2479. *_CLANGDWARF_IA32_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_IA32_TARGET)
  2480. *_CLANGDWARF_IA32_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_IA32_TARGET)
  2481. DEBUG_CLANGDWARF_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 DEF(CLANG38_IA32_TARGET) -g -malign-double
  2482. DEBUG_CLANGDWARF_IA32_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_i386 -Wl,--oformat,elf32-i386
  2483. DEBUG_CLANGDWARF_IA32_DLINK2_FLAGS = DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O3 -fuse-ld=lld
  2484. RELEASE_CLANGDWARF_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 DEF(CLANG38_IA32_TARGET) -malign-double
  2485. RELEASE_CLANGDWARF_IA32_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_i386 -Wl,--oformat,elf32-i386
  2486. RELEASE_CLANGDWARF_IA32_DLINK2_FLAGS = DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O3 -fuse-ld=lld
  2487. NOOPT_CLANGDWARF_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m32 -O0 -march=i586 DEF(CLANG38_IA32_TARGET) -g -malign-double
  2488. NOOPT_CLANGDWARF_IA32_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_i386 -Wl,--oformat,elf32-i386
  2489. NOOPT_CLANGDWARF_IA32_DLINK2_FLAGS = DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O0 -fuse-ld=lld
  2490. ##########################
  2491. # CLANGDWARF X64 definitions
  2492. ##########################
  2493. *_CLANGDWARF_X64_CC_PATH = DEF(CLANGDWARF_X64_PREFIX)clang
  2494. *_CLANGDWARF_X64_SLINK_PATH = DEF(CLANGDWARF_X64_PREFIX)llvm-ar
  2495. *_CLANGDWARF_X64_DLINK_PATH = DEF(CLANGDWARF_X64_PREFIX)clang
  2496. *_CLANGDWARF_X64_ASLDLINK_PATH = DEF(CLANGDWARF_X64_PREFIX)clang
  2497. *_CLANGDWARF_X64_ASM_PATH = DEF(CLANGDWARF_X64_PREFIX)clang
  2498. *_CLANGDWARF_X64_PP_PATH = DEF(CLANGDWARF_X64_PREFIX)clang
  2499. *_CLANGDWARF_X64_VFRPP_PATH = DEF(CLANGDWARF_X64_PREFIX)clang
  2500. *_CLANGDWARF_X64_ASLCC_PATH = DEF(CLANGDWARF_X64_PREFIX)clang
  2501. *_CLANGDWARF_X64_ASLPP_PATH = DEF(CLANGDWARF_X64_PREFIX)clang
  2502. *_CLANGDWARF_X64_RC_PATH = DEF(CLANGDWARF_X64_PREFIX)llvm-rc
  2503. *_CLANGDWARF_X64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m64 -fno-lto DEF(CLANG38_X64_TARGET)
  2504. *_CLANGDWARF_X64_ASLDLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_x86_64 -fuse-ld=lld
  2505. *_CLANGDWARF_X64_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m64 DEF(CLANG38_X64_TARGET)
  2506. *_CLANGDWARF_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS)
  2507. *_CLANGDWARF_X64_OBJCOPY_FLAGS =
  2508. *_CLANGDWARF_X64_NASM_FLAGS = -f elf64
  2509. *_CLANGDWARF_X64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_X64_TARGET)
  2510. *_CLANGDWARF_X64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_X64_TARGET)
  2511. *_CLANGDWARF_X64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_X64_TARGET)
  2512. DEBUG_CLANGDWARF_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto DEF(CLANG38_X64_TARGET) -g
  2513. DEBUG_CLANGDWARF_X64_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=small -Wl,--apply-dynamic-relocs
  2514. DEBUG_CLANGDWARF_X64_DLINK2_FLAGS = DEF(CLANGDWARF_X64_DLINK2_FLAGS) -O3 -fuse-ld=lld
  2515. RELEASE_CLANGDWARF_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto DEF(CLANG38_X64_TARGET)
  2516. RELEASE_CLANGDWARF_X64_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=small -Wl,--apply-dynamic-relocs
  2517. RELEASE_CLANGDWARF_X64_DLINK2_FLAGS = DEF(CLANGDWARF_X64_DLINK2_FLAGS) -O3 -fuse-ld=lld
  2518. NOOPT_CLANGDWARF_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -O0 DEF(CLANG38_X64_TARGET) -g
  2519. NOOPT_CLANGDWARF_X64_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=small -Wl,--apply-dynamic-relocs
  2520. NOOPT_CLANGDWARF_X64_DLINK2_FLAGS = DEF(CLANGDWARF_X64_DLINK2_FLAGS) -O0 -fuse-ld=lld
  2521. #
  2522. #
  2523. # XCODE5 support
  2524. #
  2525. *_XCODE5_*_*_FAMILY = GCC
  2526. *_XCODE5_*_*_BUILDRULEFAMILY = XCODE
  2527. #
  2528. # use xcode-select to change Xcode version of command line tools
  2529. #
  2530. *_XCODE5_*_MAKE_PATH = make
  2531. *_XCODE5_*_CC_PATH = clang
  2532. *_XCODE5_*_SLINK_PATH = libtool
  2533. *_XCODE5_*_DLINK_PATH = ld
  2534. *_XCODE5_*_ASM_PATH = as
  2535. *_XCODE5_*_PP_PATH = clang
  2536. *_XCODE5_*_VFRPP_PATH = clang
  2537. *_XCODE5_*_ASL_PATH = iasl
  2538. *_XCODE5_*_ASLCC_PATH = clang
  2539. *_XCODE5_*_ASLPP_PATH = clang
  2540. *_XCODE5_*_ASLDLINK_PATH = ld
  2541. *_XCODE5_*_DSYMUTIL_PATH = /usr/bin/dsymutil
  2542. *_XCODE5_*_MTOC_PATH = /usr/local/bin/mtoc
  2543. *_XCODE5_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS)
  2544. ##################
  2545. # ASL definitions
  2546. ##################
  2547. *_XCODE5_*_ASLCC_FLAGS = -x c -save-temps -g -O0 -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-missing-braces -c -include AutoGen.h
  2548. *_XCODE5_*_ASLDLINK_FLAGS = -e _ReferenceAcpiTable -preload -segalign 0x20 -pie -seg1addr 0x240 -read_only_relocs suppress -map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
  2549. *_XCODE5_*_ASLPP_FLAGS = -x c -E -include AutoGen.h
  2550. *_XCODE5_*_ASL_FLAGS =
  2551. *_XCODE5_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
  2552. ##################
  2553. # MTOC definitions
  2554. ##################
  2555. DEBUG_XCODE5_*_MTOC_FLAGS = -align 0x20 -d $(DEBUG_DIR)/$(MODULE_NAME).dll
  2556. NOOPT_XCODE5_*_MTOC_FLAGS = -align 0x20 -d $(DEBUG_DIR)/$(MODULE_NAME).dll
  2557. RELEASE_XCODE5_*_MTOC_FLAGS = -align 0x20
  2558. ####################
  2559. # IA-32 definitions
  2560. ####################
  2561. DEBUG_XCODE5_IA32_DLINK_FLAGS = -arch i386 -u _$(IMAGE_ENTRY_POINT) -e _$(IMAGE_ENTRY_POINT) -preload -segalign 0x20 -pie -all_load -dead_strip -seg1addr 0x240 -read_only_relocs suppress -map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
  2562. NOOPT_XCODE5_IA32_DLINK_FLAGS = -arch i386 -u _$(IMAGE_ENTRY_POINT) -e _$(IMAGE_ENTRY_POINT) -preload -segalign 0x20 -pie -all_load -dead_strip -seg1addr 0x240 -read_only_relocs suppress -map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
  2563. RELEASE_XCODE5_IA32_DLINK_FLAGS = -arch i386 -u _$(IMAGE_ENTRY_POINT) -e _$(IMAGE_ENTRY_POINT) -preload -segalign 0x20 -pie -all_load -dead_strip -seg1addr 0x240 -read_only_relocs suppress -map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
  2564. *_XCODE5_IA32_SLINK_FLAGS = -static -o
  2565. DEBUG_XCODE5_IA32_ASM_FLAGS = -arch i386 -g
  2566. NOOPT_XCODE5_IA32_ASM_FLAGS = -arch i386 -g
  2567. RELEASE_XCODE5_IA32_ASM_FLAGS = -arch i386
  2568. *_XCODE5_IA32_NASM_FLAGS = -f macho32
  2569. DEBUG_XCODE5_IA32_CC_FLAGS = -arch i386 -c -g -Os -Wall -Werror -include AutoGen.h -funsigned-char -fno-stack-protector -fno-builtin -fshort-wchar -fasm-blocks -mdynamic-no-pic -mno-implicit-float -mms-bitfields -msoft-float -Wno-unused-parameter -Wno-missing-braces -Wno-missing-field-initializers -Wno-tautological-compare -Wno-sign-compare -Wno-varargs -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang $(PLATFORM_FLAGS)
  2570. RELEASE_XCODE5_IA32_CC_FLAGS = -arch i386 -c -Os -Wall -Werror -include AutoGen.h -funsigned-char -fno-stack-protector -fno-builtin -fshort-wchar -fasm-blocks -mdynamic-no-pic -mno-implicit-float -mms-bitfields -msoft-float -Wno-unused-parameter -Wno-missing-braces -Wno-missing-field-initializers -Wno-tautological-compare -Wno-sign-compare -Wno-varargs -Wno-unused-const-variable -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang $(PLATFORM_FLAGS)
  2571. NOOPT_XCODE5_IA32_CC_FLAGS = -arch i386 -c -g -O0 -Wall -Werror -include AutoGen.h -funsigned-char -fno-stack-protector -fno-builtin -fshort-wchar -fasm-blocks -mdynamic-no-pic -mno-implicit-float -mms-bitfields -msoft-float -Wno-unused-parameter -Wno-missing-braces -Wno-missing-field-initializers -Wno-tautological-compare -Wno-sign-compare -Wno-varargs -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang $(PLATFORM_FLAGS)
  2572. ##################
  2573. # X64 definitions
  2574. ##################
  2575. DEBUG_XCODE5_X64_DLINK_FLAGS = -arch x86_64 -u _$(IMAGE_ENTRY_POINT) -e _$(IMAGE_ENTRY_POINT) -preload -segalign 0x20 -pie -all_load -dead_strip -seg1addr 0x240 -map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
  2576. NOOPT_XCODE5_X64_DLINK_FLAGS = -arch x86_64 -u _$(IMAGE_ENTRY_POINT) -e _$(IMAGE_ENTRY_POINT) -preload -segalign 0x20 -pie -all_load -dead_strip -seg1addr 0x240 -map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
  2577. RELEASE_XCODE5_X64_DLINK_FLAGS = -arch x86_64 -u _$(IMAGE_ENTRY_POINT) -e _$(IMAGE_ENTRY_POINT) -preload -segalign 0x20 -pie -all_load -dead_strip -seg1addr 0x240 -map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
  2578. *_XCODE5_X64_SLINK_FLAGS = -static -o
  2579. DEBUG_XCODE5_X64_ASM_FLAGS = -arch x86_64 -g
  2580. NOOPT_XCODE5_X64_ASM_FLAGS = -arch x86_64 -g
  2581. RELEASE_XCODE5_X64_ASM_FLAGS = -arch x86_64
  2582. *_XCODE5_X64_NASM_FLAGS = -f macho64
  2583. *_XCODE5_*_PP_FLAGS = -E -x assembler-with-cpp -include AutoGen.h
  2584. *_XCODE5_*_VFRPP_FLAGS = -x c -E -P -DVFRCOMPILE -include $(MODULE_NAME)StrDefs.h
  2585. DEBUG_XCODE5_X64_CC_FLAGS = -target x86_64-pc-win32-macho -c -g -gdwarf -Os -Wall -Werror -Wextra -include AutoGen.h -funsigned-char -fno-ms-extensions -fno-stack-protector -fno-builtin -fshort-wchar -mno-implicit-float -mms-bitfields -Wno-unused-parameter -Wno-missing-braces -Wno-missing-field-initializers -Wno-tautological-compare -Wno-sign-compare -Wno-varargs -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang -D NO_MSABI_VA_FUNCS $(PLATFORM_FLAGS)
  2586. NOOPT_XCODE5_X64_CC_FLAGS = -target x86_64-pc-win32-macho -c -g -gdwarf -O0 -Wall -Werror -Wextra -include AutoGen.h -funsigned-char -fno-ms-extensions -fno-stack-protector -fno-builtin -fshort-wchar -mno-implicit-float -mms-bitfields -Wno-unused-parameter -Wno-missing-braces -Wno-missing-field-initializers -Wno-tautological-compare -Wno-sign-compare -Wno-varargs -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang -D NO_MSABI_VA_FUNCS $(PLATFORM_FLAGS)
  2587. RELEASE_XCODE5_X64_CC_FLAGS = -target x86_64-pc-win32-macho -c -Os -Wall -Werror -Wextra -include AutoGen.h -funsigned-char -fno-ms-extensions -fno-stack-protector -fno-builtin -fshort-wchar -mno-implicit-float -mms-bitfields -Wno-unused-parameter -Wno-missing-braces -Wno-missing-field-initializers -Wno-tautological-compare -Wno-sign-compare -Wno-varargs -Wno-unused-const-variable -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang -D NO_MSABI_VA_FUNCS $(PLATFORM_FLAGS)
  2588. #################
  2589. # ASM 16 linker definitions
  2590. #################
  2591. *_*_*_ASMLINK_PATH = DEF(WINDDK_BIN16)\link16.exe
  2592. *_*_*_ASMLINK_FLAGS = /nologo /tiny
  2593. ##################
  2594. # VfrCompiler definitions
  2595. ##################
  2596. *_*_*_VFR_PATH = VfrCompile
  2597. *_*_*_VFR_FLAGS = -l -n
  2598. ##################
  2599. # OptionRom tool definitions
  2600. ##################
  2601. *_*_*_OPTROM_PATH = EfiRom
  2602. *_*_*_OPTROM_FLAGS = -e
  2603. ##################
  2604. # GenFw tool definitions
  2605. ##################
  2606. *_*_*_GENFW_PATH = GenFw
  2607. *_*_*_GENFW_FLAGS =
  2608. ##################
  2609. # Asl Compiler definitions
  2610. ##################
  2611. *_*_*_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable
  2612. *_*_*_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
  2613. *_*_*_ASLPP_FLAGS = /nologo /EP /C
  2614. *_*_*_ASL_FLAGS =
  2615. ##################
  2616. # GenCrc32 tool definitions
  2617. ##################
  2618. *_*_*_CRC32_PATH = GenCrc32
  2619. *_*_*_CRC32_GUID = FC1BCDB0-7D31-49AA-936A-A4600D9DD083
  2620. ##################
  2621. # Rsa2048Sha256Sign tool definitions
  2622. #
  2623. # Notes: This tool definition uses a test signing key for development purposes only.
  2624. # The tool Rsa2048Sha256GenerateKeys can be used to generate a new private/public key
  2625. # and the gEfiSecurityPkgTokenSpaceGuid.PcdRsa2048Sha256PublicKeyBuffer PCD value.
  2626. # A custom tool/script can be implemented using the new private/public key with
  2627. # the Rsa2048Sha256Sign tool and this tool definition can be updated to use a
  2628. # custom tool/script.
  2629. #
  2630. # Generate new private/public key and gEfiSecurityPkgTokenSpaceGuid.PcdRsa2048Sha256PublicKeyBuffer PCD value
  2631. #
  2632. # Rsa2048Sha256GenerateKeys.py -o MyKey.pem --public-key-hash-c MyKey.pcd
  2633. #
  2634. # Custom script example (MyRsa2048Sha256Sign.cmd):
  2635. #
  2636. # Rsa2048Sha256Sign --private-key MyKey.pem %1 %2 %3 %4 %5 %6 %7 %8 %9
  2637. #
  2638. # WARNING: Vendors that uses private keys are responsible for proper management and protection
  2639. # of private keys. Vendors may choose to use infrastructure such as signing servers
  2640. # or signing portals to support the management and protection of private keys.
  2641. #
  2642. ##################
  2643. *_*_*_RSA2048SHA256SIGN_PATH = Rsa2048Sha256Sign
  2644. *_*_*_RSA2048SHA256SIGN_GUID = A7717414-C616-4977-9420-844712A735BF
  2645. ##################
  2646. # BrotliCompress tool definitions
  2647. ##################
  2648. *_*_*_BROTLI_PATH = BrotliCompress
  2649. *_*_*_BROTLI_GUID = 3D532050-5CDA-4FD0-879E-0F7F630D5AFB
  2650. ##################
  2651. # LzmaCompress tool definitions
  2652. ##################
  2653. *_*_*_LZMA_PATH = LzmaCompress
  2654. *_*_*_LZMA_GUID = EE4E5898-3914-4259-9D6E-DC7BD79403CF
  2655. ##################
  2656. # LzmaF86Compress tool definitions with converter for x86 code.
  2657. # It can improve the compression ratio if the input file is IA32 or X64 PE image.
  2658. ##################
  2659. *_*_*_LZMAF86_PATH = LzmaF86Compress
  2660. *_*_*_LZMAF86_GUID = D42AE6BD-1352-4bfb-909A-CA72A6EAE889
  2661. ##################
  2662. # TianoCompress tool definitions
  2663. ##################
  2664. *_*_*_TIANO_PATH = TianoCompress
  2665. *_*_*_TIANO_GUID = A31280AD-481E-41B6-95E8-127F4C984779
  2666. ##################
  2667. # BPDG tool definitions
  2668. ##################
  2669. *_*_*_VPDTOOL_PATH = BPDG
  2670. *_*_*_VPDTOOL_GUID = 8C3D856A-9BE6-468E-850A-24F7A8D38E08
  2671. ##################
  2672. # Pkcs7Sign tool definitions
  2673. ##################
  2674. *_*_*_PKCS7SIGN_PATH = Pkcs7Sign
  2675. *_*_*_PKCS7SIGN_GUID = 4AAFD29D-68DF-49EE-8AA9-347D375665A7
  2676. ##################
  2677. # NASM tool definitions
  2678. ##################
  2679. *_*_*_NASM_PATH = ENV(NASM_PREFIX)nasm
  2680. # NASMB uses NASM produce a .bin from a .nasmb NASM source file
  2681. *_*_*_NASMB_FLAGS = -f bin
  2682. #################
  2683. # Build rule order
  2684. #################
  2685. *_*_*_*_BUILDRULEORDER = nasm asm Asm ASM S s nasmb asm16