1-- license:BSD-3-Clause 2-- copyright-holders:MAMEdev Team 3 4--------------------------------------------------------------------------- 5-- 6-- windows.lua 7-- 8-- Rules for the building for Windows 9-- 10--------------------------------------------------------------------------- 11 12dofile("modules.lua") 13 14 15function maintargetosdoptions(_target,_subtarget) 16 osdmodulestargetconf() 17 18 configuration { "mingw*" } 19 links { 20 "mingw32", 21 } 22 23 configuration { } 24 25 if _OPTIONS["DIRECTINPUT"] == "8" then 26 links { 27 "dinput8", 28 } 29 else 30 links { 31 "dinput", 32 } 33 end 34 35 36 if _OPTIONS["USE_SDL"] == "1" then 37 links { 38 "SDL.dll", 39 } 40 end 41 42 links { 43 "comctl32", 44 "comdlg32", 45 "psapi", 46 "ole32", 47 "shlwapi", 48 } 49end 50 51 52newoption { 53 trigger = "DIRECTINPUT", 54 description = "Minimum DirectInput version to support", 55 allowed = { 56 { "7", "Support DirectInput 7 or later" }, 57 { "8", "Support DirectInput 8 or later" }, 58 }, 59} 60 61if not _OPTIONS["DIRECTINPUT"] then 62 _OPTIONS["DIRECTINPUT"] = "8" 63end 64 65newoption { 66 trigger = "USE_SDL", 67 description = "Enable SDL sound output", 68 allowed = { 69 { "0", "Disable SDL sound output" }, 70 { "1", "Enable SDL sound output" }, 71 }, 72} 73 74if not _OPTIONS["USE_SDL"] then 75 _OPTIONS["USE_SDL"] = "0" 76end 77 78newoption { 79 trigger = "CYGWIN_BUILD", 80 description = "Build with Cygwin tools", 81 allowed = { 82 { "0", "Build with MinGW tools" }, 83 { "1", "Build with Cygwin tools" }, 84 }, 85} 86 87if not _OPTIONS["CYGWIN_BUILD"] then 88 _OPTIONS["CYGWIN_BUILD"] = "0" 89end 90 91 92if _OPTIONS["CYGWIN_BUILD"] == "1" then 93 buildoptions { 94 "-mmo-cygwin", 95 } 96 linkoptions { 97 "-mno-cygwin", 98 } 99end 100 101 102project ("qtdbg_" .. _OPTIONS["osd"]) 103 uuid (os.uuid("qtdbg_" .. _OPTIONS["osd"])) 104 kind (LIBTYPE) 105 106 dofile("windows_cfg.lua") 107 includedirs { 108 MAME_DIR .. "src/emu", 109 MAME_DIR .. "src/devices", -- accessing imagedev from debugger 110 MAME_DIR .. "src/osd", 111 MAME_DIR .. "src/lib", 112 MAME_DIR .. "src/lib/util", 113 MAME_DIR .. "src/osd/modules/render", 114 MAME_DIR .. "3rdparty", 115 } 116 qtdebuggerbuild() 117 118project ("osd_" .. _OPTIONS["osd"]) 119 uuid (os.uuid("osd_" .. _OPTIONS["osd"])) 120 kind (LIBTYPE) 121 122 dofile("windows_cfg.lua") 123 osdmodulesbuild() 124 125 defines { 126 "DIRECT3D_VERSION=0x0900", 127 } 128 129 if _OPTIONS["DIRECTINPUT"] == "8" then 130 defines { 131 "DIRECTINPUT_VERSION=0x0800", 132 } 133 else 134 defines { 135 "DIRECTINPUT_VERSION=0x0700", 136 } 137 end 138 139 includedirs { 140 MAME_DIR .. "src/emu", 141 MAME_DIR .. "src/devices", -- accessing imagedev from debugger 142 MAME_DIR .. "src/osd", 143 MAME_DIR .. "src/lib", 144 MAME_DIR .. "src/lib/util", 145 MAME_DIR .. "src/osd/modules/file", 146 MAME_DIR .. "src/osd/modules/render", 147 MAME_DIR .. "3rdparty", 148 } 149 150 includedirs { 151 MAME_DIR .. "src/osd/windows", 152 } 153 154 files { 155 MAME_DIR .. "src/osd/modules/render/d3d/d3dhlsl.cpp", 156 MAME_DIR .. "src/osd/modules/render/d3d/d3dcomm.h", 157 MAME_DIR .. "src/osd/modules/render/d3d/d3dhlsl.h", 158 MAME_DIR .. "src/osd/modules/render/drawd3d.cpp", 159 MAME_DIR .. "src/osd/modules/render/drawd3d.h", 160 MAME_DIR .. "src/osd/modules/render/drawgdi.cpp", 161 MAME_DIR .. "src/osd/modules/render/drawgdi.h", 162 MAME_DIR .. "src/osd/modules/render/drawnone.cpp", 163 MAME_DIR .. "src/osd/modules/render/drawnone.h", 164 MAME_DIR .. "src/osd/windows/video.cpp", 165 MAME_DIR .. "src/osd/windows/video.h", 166 MAME_DIR .. "src/osd/windows/window.cpp", 167 MAME_DIR .. "src/osd/windows/window.h", 168 MAME_DIR .. "src/osd/modules/osdwindow.cpp", 169 MAME_DIR .. "src/osd/modules/osdwindow.h", 170 MAME_DIR .. "src/osd/windows/winmenu.cpp", 171 MAME_DIR .. "src/osd/windows/winmain.cpp", 172 MAME_DIR .. "src/osd/windows/winmain.h", 173 MAME_DIR .. "src/osd/osdepend.h", 174 MAME_DIR .. "src/osd/modules/debugger/win/consolewininfo.cpp", 175 MAME_DIR .. "src/osd/modules/debugger/win/consolewininfo.h", 176 MAME_DIR .. "src/osd/modules/debugger/win/debugbaseinfo.cpp", 177 MAME_DIR .. "src/osd/modules/debugger/win/debugbaseinfo.h", 178 MAME_DIR .. "src/osd/modules/debugger/win/debugviewinfo.cpp", 179 MAME_DIR .. "src/osd/modules/debugger/win/debugviewinfo.h", 180 MAME_DIR .. "src/osd/modules/debugger/win/debugwininfo.cpp", 181 MAME_DIR .. "src/osd/modules/debugger/win/debugwininfo.h", 182 MAME_DIR .. "src/osd/modules/debugger/win/disasmbasewininfo.cpp", 183 MAME_DIR .. "src/osd/modules/debugger/win/disasmbasewininfo.h", 184 MAME_DIR .. "src/osd/modules/debugger/win/disasmviewinfo.cpp", 185 MAME_DIR .. "src/osd/modules/debugger/win/disasmviewinfo.h", 186 MAME_DIR .. "src/osd/modules/debugger/win/disasmwininfo.cpp", 187 MAME_DIR .. "src/osd/modules/debugger/win/disasmwininfo.h", 188 MAME_DIR .. "src/osd/modules/debugger/win/editwininfo.cpp", 189 MAME_DIR .. "src/osd/modules/debugger/win/editwininfo.h", 190 MAME_DIR .. "src/osd/modules/debugger/win/logwininfo.cpp", 191 MAME_DIR .. "src/osd/modules/debugger/win/logwininfo.h", 192 MAME_DIR .. "src/osd/modules/debugger/win/logviewinfo.cpp", 193 MAME_DIR .. "src/osd/modules/debugger/win/logviewinfo.h", 194 MAME_DIR .. "src/osd/modules/debugger/win/memoryviewinfo.cpp", 195 MAME_DIR .. "src/osd/modules/debugger/win/memoryviewinfo.h", 196 MAME_DIR .. "src/osd/modules/debugger/win/memorywininfo.cpp", 197 MAME_DIR .. "src/osd/modules/debugger/win/memorywininfo.h", 198 MAME_DIR .. "src/osd/modules/debugger/win/pointswininfo.cpp", 199 MAME_DIR .. "src/osd/modules/debugger/win/pointswininfo.h", 200 MAME_DIR .. "src/osd/modules/debugger/win/uimetrics.cpp", 201 MAME_DIR .. "src/osd/modules/debugger/win/uimetrics.h", 202 MAME_DIR .. "src/osd/modules/debugger/win/debugwin.h", 203 } 204 205 206project ("ocore_" .. _OPTIONS["osd"]) 207 uuid (os.uuid("ocore_" .. _OPTIONS["osd"])) 208 kind (LIBTYPE) 209 210 removeflags { 211 "SingleOutputDir", 212 } 213 214 dofile("windows_cfg.lua") 215 216 includedirs { 217 MAME_DIR .. "3rdparty", 218 MAME_DIR .. "src/emu", 219 MAME_DIR .. "src/osd", 220 MAME_DIR .. "src/osd/modules/file", 221 MAME_DIR .. "src/lib", 222 MAME_DIR .. "src/lib/util", 223 } 224 225 BASE_TARGETOS = "win32" 226 SDLOS_TARGETOS = "win32" 227 228 includedirs { 229 MAME_DIR .. "src/osd/windows", 230 } 231 232 files { 233 MAME_DIR .. "src/osd/eigccppc.h", 234 MAME_DIR .. "src/osd/eigccx86.h", 235 MAME_DIR .. "src/osd/eivc.h", 236 MAME_DIR .. "src/osd/eivcx86.h", 237 MAME_DIR .. "src/osd/eminline.h", 238 MAME_DIR .. "src/osd/osdcomm.h", 239 MAME_DIR .. "src/osd/osdcore.cpp", 240 MAME_DIR .. "src/osd/osdcore.h", 241 MAME_DIR .. "src/osd/strconv.cpp", 242 MAME_DIR .. "src/osd/strconv.h", 243 MAME_DIR .. "src/osd/osdsync.cpp", 244 MAME_DIR .. "src/osd/osdsync.h", 245 MAME_DIR .. "src/osd/windows/main.cpp", 246 MAME_DIR .. "src/osd/windows/winutf8.cpp", 247 MAME_DIR .. "src/osd/windows/winutf8.h", 248 MAME_DIR .. "src/osd/windows/winutil.cpp", 249 MAME_DIR .. "src/osd/windows/winutil.h", 250 MAME_DIR .. "src/osd/modules/osdmodule.cpp", 251 MAME_DIR .. "src/osd/modules/osdmodule.h", 252 MAME_DIR .. "src/osd/modules/file/windir.cpp", 253 MAME_DIR .. "src/osd/modules/file/winfile.cpp", 254 MAME_DIR .. "src/osd/modules/file/winfile.h", 255 MAME_DIR .. "src/osd/modules/file/winptty.cpp", 256 MAME_DIR .. "src/osd/modules/file/winsocket.cpp", 257 MAME_DIR .. "src/osd/modules/lib/osdlib_win32.cpp", 258 } 259 260 261 262-------------------------------------------------- 263-- ledutil 264-------------------------------------------------- 265 266if _OPTIONS["with-tools"] then 267 project("ledutil") 268 uuid ("061293ca-7290-44ac-b2b5-5913ae8dc9c0") 269 kind "ConsoleApp" 270 271 flags { 272 "Symbols", -- always include minimum symbols for executables 273 } 274 275 if _OPTIONS["SEPARATE_BIN"]~="1" then 276 targetdir(MAME_DIR) 277 end 278 279 links { 280 "ocore_" .. _OPTIONS["osd"], 281 } 282 283 includedirs { 284 MAME_DIR .. "src/osd", 285 } 286 287 files { 288 MAME_DIR .. "src/osd/windows/ledutil.cpp", 289 } 290end 291