1# Main scons file 2 3import shutil 4import sys 5 6Import('env') 7 8########################################################## [ Root environment ] 9root_env = env.Clone() 10root_env.Append( 11 CPPDEFINES = [ 12 "CASE_SENSITIVE_FILESYSTEM", 13 "_THREAD_SAFE" 14 ], 15 16 CXXFLAGS = [ 17 "--ansi", 18 "-Wall", 19 "-Wno-sign-compare", 20 "-Wno-narrowing", 21 "-Wno-write-strings", # For XPM support 22 "-std=c++11" 23 ] 24) 25 26# if root_env['PLATFORM'] == 'darwin': 27# root_env.Append(FRAMEWORKS=["OpenGL"]) 28# else: 29 30root_env.ParseConfig("sdl-config --libs") 31 32######################################################################### 33 34# We used to set this just for an autogenerated header, but now it's wrapped 35# its tentacles everywhere. 36root_env.Append( 37 CPPPATH = ["$BUILD_DIR"] 38) 39 40######################################################################### 41 42librlvm_files = [ 43 "src/base/notification_details.cc", 44 "src/base/notification_registrar.cc", 45 "src/base/notification_service.cc", 46 "src/base/notification_source.cc", 47 "src/effects/blind_effect.cc", 48 "src/effects/effect.cc", 49 "src/effects/effect_factory.cc", 50 "src/effects/fade_effect.cc", 51 "src/effects/scroll_on_scroll_off.cc", 52 "src/effects/wipe_effect.cc", 53 "src/encodings/codepage.cc", 54 "src/encodings/cp932.cc", 55 "src/encodings/cp936.cc", 56 "src/encodings/cp949.cc", 57 "src/encodings/han2zen.cc", 58 "src/encodings/western.cc", 59 "src/libreallive/archive.cc", 60 "src/libreallive/bytecode.cc", 61 "src/libreallive/compression.cc", 62 "src/libreallive/expression.cc", 63 "src/libreallive/filemap.cc", 64 "src/libreallive/gameexe.cc", 65 "src/libreallive/intmemref.cc", 66 "src/libreallive/scenario.cc", 67 "src/long_operations/button_object_select_long_operation.cc", 68 "src/long_operations/load_game_long_operation.cc", 69 "src/long_operations/pause_long_operation.cc", 70 "src/long_operations/select_long_operation.cc", 71 "src/long_operations/textout_long_operation.cc", 72 "src/long_operations/wait_long_operation.cc", 73 "src/long_operations/zoom_long_operation.cc", 74 "src/machine/dump_scenario.cc", 75 "src/machine/game_hacks.cc", 76 "src/machine/general_operations.cc", 77 "src/machine/long_operation.cc", 78 "src/machine/mapped_rlmodule.cc", 79 "src/machine/memory.cc", 80 "src/machine/memory_intmem.cc", 81 "src/machine/opcode_log.cc", 82 "src/machine/reallive_dll.cc", 83 "src/machine/reference.cc", 84 "src/machine/rlmachine.cc", 85 "src/machine/rlmodule.cc", 86 "src/machine/rloperation.cc", 87 "src/machine/rloperation/argc_t.cc", 88 "src/machine/rloperation/complex_t.cc", 89 "src/machine/rloperation/rlop_store.cc", 90 "src/machine/save_game_header.cc", 91 "src/machine/serialization_global.cc", 92 "src/machine/serialization_local.cc", 93 "src/machine/stack_frame.cc", 94 "src/modules/module_bgm.cc", 95 "src/modules/object_mutator_operations.cc", 96 "src/modules/module_bgr.cc", 97 "src/modules/module_dll.cc", 98 "src/modules/module_debug.cc", 99 "src/modules/module_event_loop.cc", 100 "src/modules/module_g00.cc", 101 "src/modules/module_gan.cc", 102 "src/modules/module_grp.cc", 103 "src/modules/module_jmp.cc", 104 "src/modules/module_koe.cc", 105 "src/modules/module_mem.cc", 106 "src/modules/module_mov.cc", 107 "src/modules/module_msg.cc", 108 "src/modules/module_obj.cc", 109 "src/modules/module_obj_creation.cc", 110 "src/modules/module_obj_fg_bg.cc", 111 "src/modules/module_obj_management.cc", 112 "src/modules/module_obj_getters.cc", 113 "src/modules/module_os.cc", 114 "src/modules/module_pcm.cc", 115 "src/modules/module_refresh.cc", 116 "src/modules/module_scr.cc", 117 "src/modules/module_se.cc", 118 "src/modules/module_sel.cc", 119 "src/modules/module_shk.cc", 120 "src/modules/module_shl.cc", 121 "src/modules/module_str.cc", 122 "src/modules/module_sys.cc", 123 "src/modules/module_sys_date.cc", 124 "src/modules/module_sys_frame.cc", 125 "src/modules/module_sys_name.cc", 126 "src/modules/module_sys_save.cc", 127 "src/modules/module_sys_syscom.cc", 128 "src/modules/module_sys_timer.cc", 129 "src/modules/module_sys_wait.cc", 130 "src/modules/module_sys_index_series.cc", 131 "src/modules/module_sys_timetable2.cc", 132 "src/modules/modules.cc", 133 "src/modules/object_module.cc", 134 "src/systems/base/anm_graphics_object_data.cc", 135 "src/systems/base/cgm_table.cc", 136 "src/systems/base/colour.cc", 137 "src/systems/base/colour_filter_object_data.cc", 138 "src/systems/base/digits_graphics_object.cc", 139 "src/systems/base/drift_graphics_object.cc", 140 "src/systems/base/event_listener.cc", 141 "src/systems/base/event_system.cc", 142 "src/systems/base/frame_counter.cc", 143 "src/systems/base/gan_graphics_object_data.cc", 144 "src/systems/base/graphics_object.cc", 145 "src/systems/base/graphics_object_data.cc", 146 "src/systems/base/graphics_object_of_file.cc", 147 "src/systems/base/graphics_stack_frame.cc", 148 "src/systems/base/graphics_system.cc", 149 "src/systems/base/graphics_text_object.cc", 150 "src/systems/base/hik_renderer.cc", 151 "src/systems/base/hik_script.cc", 152 "src/systems/base/koepac_voice_archive.cc", 153 "src/systems/base/little_busters_ef00dll.cc", 154 "src/systems/base/little_busters_pt00dll.cc", 155 "src/systems/base/mouse_cursor.cc", 156 "src/systems/base/nwk_voice_archive.cc", 157 "src/systems/base/object_mutator.cc", 158 "src/systems/base/object_settings.cc", 159 "src/systems/base/ovk_voice_archive.cc", 160 "src/systems/base/ovk_voice_sample.cc", 161 "src/systems/base/parent_graphics_object_data.cc", 162 "src/systems/base/platform.cc", 163 "src/systems/base/rltimer.cc", 164 "src/systems/base/rlbabel_dll.cc", 165 "src/systems/base/rect.cc", 166 "src/systems/base/selection_element.cc", 167 "src/systems/base/sound_system.cc", 168 "src/systems/base/surface.cc", 169 "src/systems/base/system.cc", 170 "src/systems/base/system_error.cc", 171 "src/systems/base/text_key_cursor.cc", 172 "src/systems/base/text_page.cc", 173 "src/systems/base/text_system.cc", 174 "src/systems/base/text_waku.cc", 175 "src/systems/base/text_waku_normal.cc", 176 "src/systems/base/text_waku_type4.cc", 177 "src/systems/base/text_window.cc", 178 "src/systems/base/text_window_button.cc", 179 "src/systems/base/tomoyo_after_dt00dll.cc", 180 "src/systems/base/tone_curve.cc", 181 "src/systems/base/voice_archive.cc", 182 "src/systems/base/voice_cache.cc", 183 "src/utilities/exception.cc", 184 "src/utilities/file.cc", 185 "src/utilities/graphics.cc", 186 "src/utilities/string_utilities.cc", 187 "src/utilities/date_util.cc", 188 "src/utilities/find_font_file.cc", 189 "src/utilities/math_util.cc", 190 "vendor/xclannad/endian.cpp", 191 "vendor/xclannad/file.cc", 192 "vendor/xclannad/koedec_ogg.cc", 193 "vendor/xclannad/nwatowav.cc", 194 "vendor/xclannad/wavfile.cc" 195] 196 197root_env.StaticLibrary('rlvm', librlvm_files) 198 199libsystemsdl_files = [ 200 "src/systems/sdl/sdl_audio_locker.cc", 201 "src/systems/sdl/sdl_colour_filter.cc", 202 "src/systems/sdl/sdl_event_system.cc", 203 "src/systems/sdl/sdl_graphics_system.cc", 204 "src/systems/sdl/sdl_music.cc", 205 "src/systems/sdl/sdl_render_to_texture_surface.cc", 206 "src/systems/sdl/sdl_sound_chunk.cc", 207 "src/systems/sdl/sdl_sound_system.cc", 208 "src/systems/sdl/sdl_surface.cc", 209 "src/systems/sdl/sdl_system.cc", 210 "src/systems/sdl/sdl_text_system.cc", 211 "src/systems/sdl/sdl_text_window.cc", 212 "src/systems/sdl/sdl_utils.cc", 213 "src/systems/sdl/shaders.cc", 214 "src/systems/sdl/texture.cc", 215 216 # Parts of zresample 217 "src/systems/sdl/resample.cc", 218 "src/systems/sdl/audiofile.cc", 219 "src/systems/sdl/dither.cc", 220 "src/systems/sdl/zresample.cc", 221 222 # Parts of pygame. 223 "vendor/pygame/alphablit.cc" 224] 225 226root_env.StaticLibrary('system_sdl', libsystemsdl_files) 227 228guichan_platform = [ 229 "src/platforms/gcn/gcn_button.cc", 230 "src/platforms/gcn/gcn_graphics.cc", 231 "src/platforms/gcn/gcn_info_window.cc", 232 "src/platforms/gcn/gcn_menu.cc", 233 "src/platforms/gcn/gcn_platform.cc", 234 "src/platforms/gcn/gcn_save_load_window.cc", 235 "src/platforms/gcn/gcn_scroll_area.cc", 236 "src/platforms/gcn/gcn_true_type_font.cc", 237 "src/platforms/gcn/gcn_utils.cc", 238 "src/platforms/gcn/gcn_window.cc", 239] 240 241root_env.StaticLibrary('guichan_platform', guichan_platform) 242