mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-07 23:41:26 +12:00
Merge pull request #1175 from danilaml/appveyor-cmake
Make it possible to compile rpcs3 on win via cmake and make win builds available for download on appveyor
This commit is contained in:
commit
d10c44ed3a
13 changed files with 1392 additions and 41 deletions
|
@ -12,4 +12,7 @@ if(NOT CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_subdirectory( asmjit )
|
add_subdirectory( asmjit )
|
||||||
|
# TODO: do real installation, including copying directory structure
|
||||||
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE "${PROJECT_BINARY_DIR}/bin")
|
||||||
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG "${PROJECT_BINARY_DIR}/bin")
|
||||||
add_subdirectory( rpcs3 )
|
add_subdirectory( rpcs3 )
|
||||||
|
|
Binary file not shown.
|
@ -348,6 +348,51 @@ AL_API void AL_APIENTRY alGetSourcei64vSOFT(ALuint source, ALenum param, ALint64
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef ALC_EXT_DEFAULT_FILTER_ORDER
|
||||||
|
#define ALC_EXT_DEFAULT_FILTER_ORDER 1
|
||||||
|
#define ALC_DEFAULT_FILTER_ORDER 0x1100
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef AL_SOFT_deferred_updates
|
||||||
|
#define AL_SOFT_deferred_updates 1
|
||||||
|
#define AL_DEFERRED_UPDATES_SOFT 0xC002
|
||||||
|
typedef ALvoid (AL_APIENTRY*LPALDEFERUPDATESSOFT)(void);
|
||||||
|
typedef ALvoid (AL_APIENTRY*LPALPROCESSUPDATESSOFT)(void);
|
||||||
|
#ifdef AL_ALEXT_PROTOTYPES
|
||||||
|
AL_API ALvoid AL_APIENTRY alDeferUpdatesSOFT(void);
|
||||||
|
AL_API ALvoid AL_APIENTRY alProcessUpdatesSOFT(void);
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef AL_SOFT_block_alignment
|
||||||
|
#define AL_SOFT_block_alignment 1
|
||||||
|
#define AL_UNPACK_BLOCK_ALIGNMENT_SOFT 0x200C
|
||||||
|
#define AL_PACK_BLOCK_ALIGNMENT_SOFT 0x200D
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef AL_SOFT_MSADPCM
|
||||||
|
#define AL_SOFT_MSADPCM 1
|
||||||
|
#define AL_FORMAT_MONO_MSADPCM_SOFT 0x1302
|
||||||
|
#define AL_FORMAT_STEREO_MSADPCM_SOFT 0x1303
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef AL_SOFT_source_length
|
||||||
|
#define AL_SOFT_source_length 1
|
||||||
|
/*#define AL_BYTE_LENGTH_SOFT 0x2009*/
|
||||||
|
/*#define AL_SAMPLE_LENGTH_SOFT 0x200A*/
|
||||||
|
/*#define AL_SEC_LENGTH_SOFT 0x200B*/
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef ALC_SOFT_pause_device
|
||||||
|
#define ALC_SOFT_pause_device 1
|
||||||
|
typedef void (ALC_APIENTRY*LPALCDEVICEPAUSESOFT)(ALCdevice *device);
|
||||||
|
typedef void (ALC_APIENTRY*LPALCDEVICERESUMESOFT)(ALCdevice *device);
|
||||||
|
#ifdef AL_ALEXT_PROTOTYPES
|
||||||
|
ALC_API void ALC_APIENTRY alcDevicePauseSOFT(ALCdevice *device);
|
||||||
|
ALC_API void ALC_APIENTRY alcDeviceResumeSOFT(ALCdevice *device);
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
187
OpenAL/libs/Win64/OpenAL32.def
Normal file
187
OpenAL/libs/Win64/OpenAL32.def
Normal file
|
@ -0,0 +1,187 @@
|
||||||
|
EXPORTS
|
||||||
|
alAuxiliaryEffectSlotf
|
||||||
|
alAuxiliaryEffectSlotfv
|
||||||
|
alAuxiliaryEffectSloti
|
||||||
|
alAuxiliaryEffectSlotiv
|
||||||
|
alBuffer3f
|
||||||
|
alBuffer3i
|
||||||
|
alBufferData
|
||||||
|
alBufferSamplesSOFT
|
||||||
|
alBufferSubDataSOFT
|
||||||
|
alBufferSubSamplesSOFT
|
||||||
|
alBufferf
|
||||||
|
alBufferfv
|
||||||
|
alBufferi
|
||||||
|
alBufferiv
|
||||||
|
alDeferUpdatesSOFT
|
||||||
|
alDeleteAuxiliaryEffectSlots
|
||||||
|
alDeleteBuffers
|
||||||
|
alDeleteEffects
|
||||||
|
alDeleteFilters
|
||||||
|
alDeleteFontsoundsSOFT
|
||||||
|
alDeletePresetsSOFT
|
||||||
|
alDeleteSoundfontsSOFT
|
||||||
|
alDeleteSources
|
||||||
|
alDisable
|
||||||
|
alDistanceModel
|
||||||
|
alDopplerFactor
|
||||||
|
alDopplerVelocity
|
||||||
|
alEffectf
|
||||||
|
alEffectfv
|
||||||
|
alEffecti
|
||||||
|
alEffectiv
|
||||||
|
alEnable
|
||||||
|
alFilterf
|
||||||
|
alFilterfv
|
||||||
|
alFilteri
|
||||||
|
alFilteriv
|
||||||
|
alFontsound2iSOFT
|
||||||
|
alFontsoundModulatoriSOFT
|
||||||
|
alFontsoundiSOFT
|
||||||
|
alFontsoundivSOFT
|
||||||
|
alGenAuxiliaryEffectSlots
|
||||||
|
alGenBuffers
|
||||||
|
alGenEffects
|
||||||
|
alGenFilters
|
||||||
|
alGenFontsoundsSOFT
|
||||||
|
alGenPresetsSOFT
|
||||||
|
alGenSoundfontsSOFT
|
||||||
|
alGenSources
|
||||||
|
alGetAuxiliaryEffectSlotf
|
||||||
|
alGetAuxiliaryEffectSlotfv
|
||||||
|
alGetAuxiliaryEffectSloti
|
||||||
|
alGetAuxiliaryEffectSlotiv
|
||||||
|
alGetBoolean
|
||||||
|
alGetBooleanv
|
||||||
|
alGetBuffer3f
|
||||||
|
alGetBuffer3i
|
||||||
|
alGetBufferSamplesSOFT
|
||||||
|
alGetBufferf
|
||||||
|
alGetBufferfv
|
||||||
|
alGetBufferi
|
||||||
|
alGetBufferiv
|
||||||
|
alGetDouble
|
||||||
|
alGetDoublev
|
||||||
|
alGetEffectf
|
||||||
|
alGetEffectfv
|
||||||
|
alGetEffecti
|
||||||
|
alGetEffectiv
|
||||||
|
alGetEnumValue
|
||||||
|
alGetError
|
||||||
|
alGetFilterf
|
||||||
|
alGetFilterfv
|
||||||
|
alGetFilteri
|
||||||
|
alGetFilteriv
|
||||||
|
alGetFloat
|
||||||
|
alGetFloatv
|
||||||
|
alGetFontsoundModulatorivSOFT
|
||||||
|
alGetFontsoundivSOFT
|
||||||
|
alGetInteger
|
||||||
|
alGetInteger64SOFT
|
||||||
|
alGetInteger64vSOFT
|
||||||
|
alGetIntegerv
|
||||||
|
alGetListener3f
|
||||||
|
alGetListener3i
|
||||||
|
alGetListenerf
|
||||||
|
alGetListenerfv
|
||||||
|
alGetListeneri
|
||||||
|
alGetListeneriv
|
||||||
|
alGetPresetivSOFT
|
||||||
|
alGetProcAddress
|
||||||
|
alGetSoundfontivSOFT
|
||||||
|
alGetSource3dSOFT
|
||||||
|
alGetSource3f
|
||||||
|
alGetSource3i
|
||||||
|
alGetSource3i64SOFT
|
||||||
|
alGetSourcedSOFT
|
||||||
|
alGetSourcedvSOFT
|
||||||
|
alGetSourcef
|
||||||
|
alGetSourcefv
|
||||||
|
alGetSourcei
|
||||||
|
alGetSourcei64SOFT
|
||||||
|
alGetSourcei64vSOFT
|
||||||
|
alGetSourceiv
|
||||||
|
alGetString
|
||||||
|
alIsAuxiliaryEffectSlot
|
||||||
|
alIsBuffer
|
||||||
|
alIsBufferFormatSupportedSOFT
|
||||||
|
alIsEffect
|
||||||
|
alIsEnabled
|
||||||
|
alIsExtensionPresent
|
||||||
|
alIsFilter
|
||||||
|
alIsFontsoundSOFT
|
||||||
|
alIsPresetSOFT
|
||||||
|
alIsSoundfontSOFT
|
||||||
|
alIsSource
|
||||||
|
alListener3f
|
||||||
|
alListener3i
|
||||||
|
alListenerf
|
||||||
|
alListenerfv
|
||||||
|
alListeneri
|
||||||
|
alListeneriv
|
||||||
|
alLoadSoundfontSOFT
|
||||||
|
alMidiEventSOFT
|
||||||
|
alMidiGainSOFT
|
||||||
|
alMidiPauseSOFT
|
||||||
|
alMidiPlaySOFT
|
||||||
|
alMidiResetSOFT
|
||||||
|
alMidiSoundfontSOFT
|
||||||
|
alMidiSoundfontvSOFT
|
||||||
|
alMidiStopSOFT
|
||||||
|
alMidiSysExSOFT
|
||||||
|
alPresetFontsoundsSOFT
|
||||||
|
alPresetiSOFT
|
||||||
|
alPresetivSOFT
|
||||||
|
alProcessUpdatesSOFT
|
||||||
|
alSoundfontPresetsSOFT
|
||||||
|
alSource3dSOFT
|
||||||
|
alSource3f
|
||||||
|
alSource3i
|
||||||
|
alSource3i64SOFT
|
||||||
|
alSourcePause
|
||||||
|
alSourcePausev
|
||||||
|
alSourcePlay
|
||||||
|
alSourcePlayv
|
||||||
|
alSourceQueueBuffers
|
||||||
|
alSourceRewind
|
||||||
|
alSourceRewindv
|
||||||
|
alSourceStop
|
||||||
|
alSourceStopv
|
||||||
|
alSourceUnqueueBuffers
|
||||||
|
alSourcedSOFT
|
||||||
|
alSourcedvSOFT
|
||||||
|
alSourcef
|
||||||
|
alSourcefv
|
||||||
|
alSourcei
|
||||||
|
alSourcei64SOFT
|
||||||
|
alSourcei64vSOFT
|
||||||
|
alSourceiv
|
||||||
|
alSpeedOfSound
|
||||||
|
alcCaptureCloseDevice
|
||||||
|
alcCaptureOpenDevice
|
||||||
|
alcCaptureSamples
|
||||||
|
alcCaptureStart
|
||||||
|
alcCaptureStop
|
||||||
|
alcCloseDevice
|
||||||
|
alcCreateContext
|
||||||
|
alcDestroyContext
|
||||||
|
alcDevicePauseSOFT
|
||||||
|
alcDeviceResumeSOFT
|
||||||
|
alcGetContextsDevice
|
||||||
|
alcGetCurrentContext
|
||||||
|
alcGetEnumValue
|
||||||
|
alcGetError
|
||||||
|
alcGetInteger64vSOFT
|
||||||
|
alcGetIntegerv
|
||||||
|
alcGetProcAddress
|
||||||
|
alcGetString
|
||||||
|
alcGetThreadContext
|
||||||
|
alcIsExtensionPresent
|
||||||
|
alcIsRenderFormatSupportedSOFT
|
||||||
|
alcLoopbackOpenDeviceSOFT
|
||||||
|
alcMakeContextCurrent
|
||||||
|
alcOpenDevice
|
||||||
|
alcProcessContext
|
||||||
|
alcRenderSamplesSOFT
|
||||||
|
alcSetThreadContext
|
||||||
|
alcSuspendContext
|
BIN
OpenAL/libs/Win64/OpenAL32.lib
Normal file
BIN
OpenAL/libs/Win64/OpenAL32.lib
Normal file
Binary file not shown.
32
appveyor.yml
32
appveyor.yml
|
@ -4,6 +4,7 @@ configuration: Release
|
||||||
platform: x64
|
platform: x64
|
||||||
clone_folder: c:\projects\rpcs3
|
clone_folder: c:\projects\rpcs3
|
||||||
clone_depth: 1
|
clone_depth: 1
|
||||||
|
test: off
|
||||||
|
|
||||||
branches:
|
branches:
|
||||||
except:
|
except:
|
||||||
|
@ -11,22 +12,21 @@ branches:
|
||||||
|
|
||||||
before_build:
|
before_build:
|
||||||
- git submodule update --init --depth 3 asmjit minidx9
|
- git submodule update --init --depth 3 asmjit minidx9
|
||||||
# until git for win 2.5 release
|
# until git for win 2.5 release with commit checkout
|
||||||
- git submodule update --init ffmpeg wxWidgets
|
- git submodule update --init ffmpeg
|
||||||
- if exist "c:\cache\wxWidgets\build" move c:\cache\wxWidgets\build wxWidgets\build
|
- 7z x wxWidgets.7z -aos -oC:\projects\rpcs3\wxWidgets > null
|
||||||
|
- cmake -G "Visual Studio 14 Win64"
|
||||||
|
|
||||||
|
build_script:
|
||||||
|
- cmake --build . --config Release -- /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
|
||||||
|
|
||||||
install:
|
install:
|
||||||
- set PATH=C:\Program Files (x86)\MSBuild\14.0\Bin;%PATH%
|
- ps: Start-FileDownload 'https://402331b94f8e4b87ae2ef4677347f7956cf3861f.googledrive.com/host/0B6v_qtb9hkicfmt0NG0wTTRtUmF4X3VTQk5Oc2JidEVKVnUteDA1dXdrYlNsVW9kREpsSHc/wxWidgets.7z'
|
||||||
|
- set WXWIN=C:\projects\rpcs3\wxWidgets;
|
||||||
|
- set OPENALDIR=C:\projects\rpcs3\OpenAL;
|
||||||
|
- set PATH=C:\Program Files (x86)\MSBuild\14.0\Bin;C:\wxWidgets;%PATH%
|
||||||
|
- set COMMIT_SHA=%APPVEYOR_REPO_COMMIT:~0,8%
|
||||||
|
|
||||||
after_build:
|
artifacts:
|
||||||
- mkdir c:\cache\wxWidgets\build
|
- path: bin
|
||||||
- move wxWidgets\lib\vc_x64_lib c:\cache\wxWidgets\build
|
name: rpcs3-$(COMMIT_SHA)
|
||||||
|
|
||||||
# not exactly the best dependency but works for now
|
|
||||||
cache:
|
|
||||||
- c:\cache\wxWidgets\build -> .gitmodules
|
|
||||||
|
|
||||||
test: off
|
|
||||||
build:
|
|
||||||
project: rpcs3.sln
|
|
||||||
verbosity: minimal
|
|
BIN
bin/OpenAL32.dll
Normal file
BIN
bin/OpenAL32.dll
Normal file
Binary file not shown.
BIN
bin/soft_oal.dll
BIN
bin/soft_oal.dll
Binary file not shown.
|
@ -17,8 +17,7 @@ if (CMAKE_COMPILER_IS_GNUCXX)
|
||||||
message(FATAL_ERROR "GCC ${CMAKE_CXX_COMPILER_VERSION} is too old.")
|
message(FATAL_ERROR "GCC ${CMAKE_CXX_COMPILER_VERSION} is too old.")
|
||||||
endif()
|
endif()
|
||||||
# Warnings
|
# Warnings
|
||||||
add_definitions(-Wno-attributes -Wno-enum-compare)
|
add_definitions(-Wno-attributes -Wno-enum-compare -Wno-invalid-offsetof)
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-invalid-offsetof")
|
|
||||||
elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
|
elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
|
||||||
# TODO: stdlib?
|
# TODO: stdlib?
|
||||||
endif()
|
endif()
|
||||||
|
@ -35,6 +34,8 @@ if (NOT MSVC)
|
||||||
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O1 -D_NDEBUG")
|
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O1 -D_NDEBUG")
|
||||||
set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -O1 -g -D_NDEBUG")
|
set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -O1 -g -D_NDEBUG")
|
||||||
add_definitions(-msse -msse2 -mcx16 -mssse3)
|
add_definitions(-msse -msse2 -mcx16 -mssse3)
|
||||||
|
else()
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHa /Zc:throwingNew /D _CRT_SECURE_NO_DEPRECATE=1 /D _CRT_NON_CONFORMING_SWPRINTFS=1 /D _SCL_SECURE_NO_WARNINGS=1")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (APPLE)
|
if (APPLE)
|
||||||
|
@ -53,7 +54,7 @@ else()
|
||||||
set(ADDITIONAL_LIBS "")
|
set(ADDITIONAL_LIBS "")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
If( NOT RPCS3_SRC_DIR)
|
If(NOT RPCS3_SRC_DIR)
|
||||||
SET(RPCS3_SRC_DIR ${CMAKE_CURRENT_LIST_DIR})
|
SET(RPCS3_SRC_DIR ${CMAKE_CURRENT_LIST_DIR})
|
||||||
Message("-- Initializing RPCS3_SRC_DIR=${RPCS3_SRC_DIR}")
|
Message("-- Initializing RPCS3_SRC_DIR=${RPCS3_SRC_DIR}")
|
||||||
Else()
|
Else()
|
||||||
|
@ -61,19 +62,19 @@ Else()
|
||||||
EndIf()
|
EndIf()
|
||||||
|
|
||||||
set(CMAKE_MODULE_PATH "${RPCS3_SRC_DIR}/cmake_modules")
|
set(CMAKE_MODULE_PATH "${RPCS3_SRC_DIR}/cmake_modules")
|
||||||
# TODO: do real installation, including copying directory structure
|
|
||||||
set(EXECUTABLE_OUTPUT_PATH "${PROJECT_BINARY_DIR}/../bin")
|
|
||||||
#include(cotire)
|
|
||||||
|
|
||||||
add_definitions(-DGL_GLEXT_PROTOTYPES)
|
if(NOT WIN32)
|
||||||
add_definitions(-DGLX_GLXEXT_PROTOTYPES)
|
add_definitions(-DGL_GLEXT_PROTOTYPES)
|
||||||
|
add_definitions(-DGLX_GLXEXT_PROTOTYPES)
|
||||||
|
endif()
|
||||||
|
|
||||||
find_package(wxWidgets COMPONENTS core base net aui gl xml REQUIRED)
|
find_package(wxWidgets COMPONENTS core base net aui gl xml REQUIRED)
|
||||||
find_package(GLEW REQUIRED)
|
if(NOT WIN32)
|
||||||
|
find_package(GLEW REQUIRED)
|
||||||
|
endif()
|
||||||
find_package(OpenGL REQUIRED)
|
find_package(OpenGL REQUIRED)
|
||||||
find_package(ZLIB REQUIRED)
|
|
||||||
find_package(OpenAL REQUIRED)
|
find_package(OpenAL REQUIRED)
|
||||||
find_package(LLVM REQUIRED CONFIG)
|
find_package(LLVM CONFIG)
|
||||||
|
|
||||||
include("${wxWidgets_USE_FILE}")
|
include("${wxWidgets_USE_FILE}")
|
||||||
|
|
||||||
|
@ -97,15 +98,22 @@ ${LLVM_INCLUDE_DIRS}
|
||||||
"${RPCS3_SRC_DIR}/../asmjit/src/asmjit"
|
"${RPCS3_SRC_DIR}/../asmjit/src/asmjit"
|
||||||
)
|
)
|
||||||
|
|
||||||
add_definitions(${LLVM_DEFINITIONS})
|
if(LLVM_FOUND)
|
||||||
add_definitions(-DLLVM_AVAILABLE)
|
add_definitions(${LLVM_DEFINITIONS})
|
||||||
if (CMAKE_BUILD_TYPE STREQUAL "Release")
|
add_definitions(-DLLVM_AVAILABLE)
|
||||||
|
if (CMAKE_BUILD_TYPE STREQUAL "Release")
|
||||||
llvm_map_components_to_libnames(LLVM_LIBS mcjit vectorize x86codegen x86disassembler)
|
llvm_map_components_to_libnames(LLVM_LIBS mcjit vectorize x86codegen x86disassembler)
|
||||||
else()
|
else()
|
||||||
llvm_map_components_to_libnames(LLVM_LIBS mcjit vectorize x86codegen x86disassembler mcdisassembler)
|
llvm_map_components_to_libnames(LLVM_LIBS mcjit vectorize x86codegen x86disassembler mcdisassembler)
|
||||||
|
endif()
|
||||||
|
if(MSVC)
|
||||||
|
set_source_files_properties(${RPCS3_SRC_DIR}/Emu/Cell/PPULLVMRecompiler.cpp PROPERTIES COMPILE_FLAGS /GR-)
|
||||||
|
else()
|
||||||
|
set_source_files_properties(${RPCS3_SRC_DIR}/Emu/Cell/PPULLVMRecompiler.cpp PROPERTIES COMPILE_FLAGS -fno-rtti)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
link_directories("${RPCS3_SRC_DIR}/../ffmpeg/${PLATFORM_ARCH}/lib")
|
link_directories("${RPCS3_SRC_DIR}/../ffmpeg/${PLATFORM_ARCH}/lib" "${RPCS3_SRC_DIR}/../asmjit/")
|
||||||
|
|
||||||
get_property(dirs DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY INCLUDE_DIRECTORIES)
|
get_property(dirs DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY INCLUDE_DIRECTORIES)
|
||||||
foreach(dir ${dirs})
|
foreach(dir ${dirs})
|
||||||
|
@ -126,12 +134,28 @@ RPCS3_SRC
|
||||||
)
|
)
|
||||||
|
|
||||||
list(REMOVE_ITEM RPCS3_SRC ${RPCS3_SRC_DIR}/../Utilities/simpleini/ConvertUTF.c)
|
list(REMOVE_ITEM RPCS3_SRC ${RPCS3_SRC_DIR}/../Utilities/simpleini/ConvertUTF.c)
|
||||||
set_source_files_properties(${RPCS3_SRC_DIR}/Emu/Cell/PPULLVMRecompiler.cpp PROPERTIES COMPILE_FLAGS -fno-rtti)
|
|
||||||
|
|
||||||
add_executable(rpcs3 ${RPCS3_SRC})
|
add_executable(rpcs3 ${RPCS3_SRC})
|
||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -L${CMAKE_CURRENT_BINARY_DIR}/../asmjit/") #hack because the asmjit cmake file force fno exceptions
|
if(NOT MSVC)
|
||||||
target_link_libraries(rpcs3 asmjit.a ${wxWidgets_LIBRARIES} ${OPENAL_LIBRARY} ${GLEW_LIBRARY} ${OPENGL_LIBRARIES} libavformat.a libavcodec.a libavutil.a libswresample.a libswscale.a ${ZLIB_LIBRARIES} ${LLVM_LIBS} ${ADDITIONAL_LIBS} )
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -L${CMAKE_CURRENT_BINARY_DIR}/../asmjit/") #hack because the asmjit cmake file force fno exceptions upd: not sure if vs2015 build is affected
|
||||||
|
else()
|
||||||
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /SUBSYSTEM:WINDOWS /NODEFAULTLIB:libc.lib /NODEFAULTLIB:libcmt.lib /NODEFAULTLIB:libcd.lib /NODEFAULTLIB:libcmtd.lib /NODEFAULTLIB:msvcrtd.lib")
|
||||||
|
endif()
|
||||||
|
if(WIN32) # I'm not sure we need all of these libs, but we link them in vs
|
||||||
|
target_link_libraries(rpcs3 odbc32.lib odbccp32.lib comctl32.lib ws2_32.lib shlwapi.lib winmm.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib)
|
||||||
|
if(LLVM_FOUND)
|
||||||
|
target_link_libraries(rpcs3 asmjit.lib xaudio2.lib ${wxWidgets_LIBRARIES} ${OPENAL_LIBRARY} avformat.lib avcodec.lib avutil.lib swresample.lib swscale.lib ${LLVM_LIBS} ${ADDITIONAL_LIBS})
|
||||||
|
else()
|
||||||
|
target_link_libraries(rpcs3 asmjit.lib xaudio2.lib ${wxWidgets_LIBRARIES} ${OPENAL_LIBRARY} avformat.lib avcodec.lib avutil.lib swresample.lib swscale.lib ${ADDITIONAL_LIBS})
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
if(LLVM_FOUND)
|
||||||
|
target_link_libraries(rpcs3 asmjit.a ${wxWidgets_LIBRARIES} ${OPENAL_LIBRARY} ${GLEW_LIBRARY} ${OPENGL_LIBRARIES} libavformat.a libavcodec.a libavutil.a libswresample.a libswscale.a ${LLVM_LIBS} ${ADDITIONAL_LIBS})
|
||||||
|
else()
|
||||||
|
target_link_libraries(rpcs3 asmjit.a ${wxWidgets_LIBRARIES} ${OPENAL_LIBRARY} ${GLEW_LIBRARY} ${OPENGL_LIBRARIES} libavformat.a libavcodec.a libavutil.a libswresample.a libswscale.a ${ADDITIONAL_LIBS})
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
set_target_properties(rpcs3 PROPERTIES COTIRE_CXX_PREFIX_HEADER_INIT "${RPCS3_SRC_DIR}/stdafx.h")
|
set_target_properties(rpcs3 PROPERTIES COTIRE_CXX_PREFIX_HEADER_INIT "${RPCS3_SRC_DIR}/stdafx.h")
|
||||||
cotire(rpcs3)
|
cotire(rpcs3)
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#include "stdafx.h"
|
#include "stdafx.h"
|
||||||
|
#ifdef LLVM_AVAILABLE
|
||||||
#include "Utilities/Log.h"
|
#include "Utilities/Log.h"
|
||||||
#include "Emu/System.h"
|
#include "Emu/System.h"
|
||||||
#include "Emu/Cell/PPUDisAsm.h"
|
#include "Emu/Cell/PPUDisAsm.h"
|
||||||
|
@ -764,3 +765,4 @@ u32 ppu_recompiler_llvm::CPUHybridDecoderRecompiler::ExecuteTillReturn(PPUThread
|
||||||
bool ppu_recompiler_llvm::CPUHybridDecoderRecompiler::PollStatus(PPUThread * ppu_state) {
|
bool ppu_recompiler_llvm::CPUHybridDecoderRecompiler::PollStatus(PPUThread * ppu_state) {
|
||||||
return ppu_state->check_status();
|
return ppu_state->check_status();
|
||||||
}
|
}
|
||||||
|
#endif // LLVM_AVAILABLE
|
|
@ -1,4 +1,5 @@
|
||||||
#include "stdafx.h"
|
#include "stdafx.h"
|
||||||
|
#ifdef LLVM_AVAILABLE
|
||||||
#include "Utilities/Log.h"
|
#include "Utilities/Log.h"
|
||||||
#include "Emu/Cell/PPULLVMRecompiler.h"
|
#include "Emu/Cell/PPULLVMRecompiler.h"
|
||||||
#include "llvm/Support/Host.h"
|
#include "llvm/Support/Host.h"
|
||||||
|
@ -983,3 +984,4 @@ void Compiler::RunAllTests() {
|
||||||
Emu.GetIdManager().remove<PPUThread>(s_ppu_state->get_id());
|
Emu.GetIdManager().remove<PPUThread>(s_ppu_state->get_id());
|
||||||
#endif // PPU_LLVM_RECOMPILER_UNIT_TESTS
|
#endif // PPU_LLVM_RECOMPILER_UNIT_TESTS
|
||||||
}
|
}
|
||||||
|
#endif // LLVM_AVAILABLE
|
1088
rpcs3/cmake_modules/FindwxWidgets.cmake
Normal file
1088
rpcs3/cmake_modules/FindwxWidgets.cmake
Normal file
File diff suppressed because it is too large
Load diff
|
@ -155,12 +155,12 @@
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
<AdditionalDependencies>wxmsw31u_adv.lib;wxbase31u.lib;wxmsw31u_core.lib;wxmsw31u_aui.lib;odbc32.lib;odbccp32.lib;comctl32.lib;ws2_32.lib;shlwapi.lib;winmm.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;rpcrt4.lib;wxtiff.lib;wxjpeg.lib;wxpng.lib;wxzlib.lib;wxregexu.lib;wxexpat.lib;wsock32.lib;wininet.lib;avcodec.lib;avformat.lib;avutil.lib;swresample.lib;swscale.lib;libOpenAL32.dll.a;asmjit.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
<AdditionalDependencies>wxmsw31u_adv.lib;wxbase31u.lib;wxmsw31u_core.lib;wxmsw31u_aui.lib;odbc32.lib;odbccp32.lib;comctl32.lib;ws2_32.lib;shlwapi.lib;winmm.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;rpcrt4.lib;wxtiff.lib;wxjpeg.lib;wxpng.lib;wxzlib.lib;wxregexu.lib;wxexpat.lib;wsock32.lib;wininet.lib;avcodec.lib;avformat.lib;avutil.lib;swresample.lib;swscale.lib;OpenAL32.lib;asmjit.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
<IgnoreAllDefaultLibraries>
|
<IgnoreAllDefaultLibraries>
|
||||||
</IgnoreAllDefaultLibraries>
|
</IgnoreAllDefaultLibraries>
|
||||||
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
<IgnoreSpecificDefaultLibraries>libc.lib;libcmt.lib;libcd.lib;libcmtd.lib;msvcrtd.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||||
<AdditionalLibraryDirectories>..\wxWidgets\lib\vc_x64_lib;..\ffmpeg\Windows\x86_64\lib;..\OpenAL\Win64</AdditionalLibraryDirectories>
|
<AdditionalLibraryDirectories>..\wxWidgets\lib\vc_x64_lib;..\ffmpeg\Windows\x86_64\lib;..\OpenAL\libs\Win64</AdditionalLibraryDirectories>
|
||||||
<BaseAddress>0x200000000</BaseAddress>
|
<BaseAddress>0x200000000</BaseAddress>
|
||||||
<FixedBaseAddress>true</FixedBaseAddress>
|
<FixedBaseAddress>true</FixedBaseAddress>
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue