# Conflicts:
#	indra/newview/CMakeLists.txt
This commit is contained in:
Liru Færs
2019-10-22 01:03:45 -04:00
14 changed files with 75 additions and 124 deletions

View File

@@ -915,50 +915,6 @@
<key>version</key> <key>version</key>
<string>2.00.03.192211300</string> <string>2.00.03.192211300</string>
</map> </map>
<key>fontconfig</key>
<map>
<key>copyright</key>
<string>Copyright (C) 2000,2001,2002,2003,2004,2006,2007 Keith Packard, 2005 Patrick Lam, 2009 Roozbeh Pournader, 2008,2009 Red Hat, Inc., 2008 Danilo Šegan, 2012 Google, Inc.</string>
<key>description</key>
<string>Fontconfig is a library for configuring and customizing font access.</string>
<key>license</key>
<string>bsd</string>
<key>license_file</key>
<string>LICENSES/fontconfig.txt</string>
<key>name</key>
<string>fontconfig</string>
<key>platforms</key>
<map>
<key>linux</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>2843c48e6c84a51e3d6aa05dace4c8c0</string>
<key>url</key>
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-fontconfig-update/rev/290569/arch/Linux/installer/fontconfig-2.11.0-linux-20140602.tar.bz2</string>
</map>
<key>name</key>
<string>linux</string>
</map>
<key>linux64</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>25726244f5bcd05f412514b030098c3c</string>
<key>hash_algorithm</key>
<string>md5</string>
<key>url</key>
<string>http://depot.alchemyviewer.org/pub/linux64/lib-trusty/fontconfig-2.11.0-linux64-201603241804.tar.bz2</string>
</map>
<key>name</key>
<string>linux64</string>
</map>
</map>
<key>version</key>
<string>2.11.0</string>
</map>
<key>fonts</key> <key>fonts</key>
<map> <map>
<key>copyright</key> <key>copyright</key>
@@ -1065,32 +1021,6 @@
<key>name</key> <key>name</key>
<string>darwin</string> <string>darwin</string>
</map> </map>
<key>linux</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>52f87a65cc61ec4b05721c079d015b19</string>
<key>url</key>
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-freetype-update/rev/290557/arch/Linux/installer/freetype-2.4.4-linux-20140602.tar.bz2</string>
</map>
<key>name</key>
<string>linux</string>
</map>
<key>linux64</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>b10ba0775b9f1033daf580a2cb55789d</string>
<key>hash_algorithm</key>
<string>md5</string>
<key>url</key>
<string>http://depot.alchemyviewer.org/pub/linux64/lib-trusty/freetype-2.6.3-linux64-201603241755.tar.bz2</string>
</map>
<key>name</key>
<string>linux64</string>
</map>
<key>windows</key> <key>windows</key>
<map> <map>
<key>archive</key> <key>archive</key>
@@ -2945,10 +2875,10 @@
<key>build</key> <key>build</key>
<map> <map>
<key>command</key> <key>command</key>
<string>make</string> <string>ninja</string>
<key>options</key> <key>options</key>
<array> <array>
<string>-j 7</string> <string>-v</string>
</array> </array>
</map> </map>
<key>configure</key> <key>configure</key>
@@ -2956,7 +2886,7 @@
<key>options</key> <key>options</key>
<array> <array>
<string>-G</string> <string>-G</string>
<string>Unix Makefiles</string> <string>Ninja</string>
</array> </array>
</map> </map>
<key>default</key> <key>default</key>
@@ -2969,10 +2899,10 @@
<key>build</key> <key>build</key>
<map> <map>
<key>command</key> <key>command</key>
<string>make</string> <string>ninja</string>
<key>options</key> <key>options</key>
<array> <array>
<string>-j 7</string> <string>-v</string>
</array> </array>
</map> </map>
<key>configure</key> <key>configure</key>
@@ -2980,7 +2910,7 @@
<key>options</key> <key>options</key>
<array> <array>
<string>-G</string> <string>-G</string>
<string>Unix Makefiles</string> <string>Ninja</string>
</array> </array>
</map> </map>
<key>name</key> <key>name</key>
@@ -3001,10 +2931,10 @@
<key>build</key> <key>build</key>
<map> <map>
<key>command</key> <key>command</key>
<string>make</string> <string>ninja</string>
<key>options</key> <key>options</key>
<array> <array>
<string>-j 7</string> <string>-v</string>
</array> </array>
</map> </map>
<key>configure</key> <key>configure</key>
@@ -3012,7 +2942,7 @@
<key>options</key> <key>options</key>
<array> <array>
<string>-G</string> <string>-G</string>
<string>Unix Makefiles</string> <string>Ninja</string>
<string>-DWORD_SIZE:STRING=64</string> <string>-DWORD_SIZE:STRING=64</string>
</array> </array>
</map> </map>
@@ -3026,10 +2956,10 @@
<key>build</key> <key>build</key>
<map> <map>
<key>command</key> <key>command</key>
<string>make</string> <string>ninja</string>
<key>options</key> <key>options</key>
<array> <array>
<string>-j 7</string> <string>--v</string>
</array> </array>
</map> </map>
<key>configure</key> <key>configure</key>
@@ -3037,7 +2967,7 @@
<key>options</key> <key>options</key>
<array> <array>
<string>-G</string> <string>-G</string>
<string>Unix Makefiles</string> <string>Ninja</string>
<string>-DWORD_SIZE:STRING=64</string> <string>-DWORD_SIZE:STRING=64</string>
</array> </array>
</map> </map>

View File

@@ -5,6 +5,7 @@
if(NOT DEFINED ${CMAKE_CURRENT_LIST_FILE}_INCLUDED) if(NOT DEFINED ${CMAKE_CURRENT_LIST_FILE}_INCLUDED)
set(${CMAKE_CURRENT_LIST_FILE}_INCLUDED "YES") set(${CMAKE_CURRENT_LIST_FILE}_INCLUDED "YES")
include(CheckCCompilerFlag)
include(Variables) include(Variables)
# Portable compilation flags. # Portable compilation flags.
@@ -194,10 +195,13 @@ if (LINUX)
# End of hacks. # End of hacks.
if (NOT STANDALONE) CHECK_C_COMPILER_FLAG(-fstack-protector-strong HAS_STRONG_STACK_PROTECTOR)
# this stops us requiring a really recent glibc at runtime if (${CMAKE_BUILD_TYPE} STREQUAL "Release")
add_definitions(-fno-stack-protector) if(HAS_STRONG_STACK_PROTECTOR)
endif (NOT STANDALONE) add_compile_options(-fstack-protector-strong)
endif(HAS_STRONG_STACK_PROTECTOR)
endif (${CMAKE_BUILD_TYPE} STREQUAL "Release")
if (${ARCH} STREQUAL "x86_64") if (${ARCH} STREQUAL "x86_64")
add_definitions(-pipe) add_definitions(-pipe)
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -ffast-math") set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -ffast-math")

View File

@@ -9,7 +9,7 @@ include(Variables)
# building in an IDE, it probably isn't. Set it explicitly using # building in an IDE, it probably isn't. Set it explicitly using
# run_build_test.py. # run_build_test.py.
add_custom_command(OUTPUT packages-info.txt add_custom_command(OUTPUT packages-info.txt
COMMENT Generating packages-info.txt for the about box COMMENT "Generating packages-info.txt for the about box"
MAIN_DEPENDENCY ${CMAKE_SOURCE_DIR}/../autobuild.xml MAIN_DEPENDENCY ${CMAKE_SOURCE_DIR}/../autobuild.xml
DEPENDS ${CMAKE_SOURCE_DIR}/../scripts/packages-formatter.py DEPENDS ${CMAKE_SOURCE_DIR}/../scripts/packages-formatter.py
${CMAKE_SOURCE_DIR}/../autobuild.xml ${CMAKE_SOURCE_DIR}/../autobuild.xml

View File

@@ -86,6 +86,11 @@ if(WINDOWS)
set(release_files ${release_files} libtcmalloc_minimal.dll) set(release_files ${release_files} libtcmalloc_minimal.dll)
endif(NOT DISABLE_TCMALLOC) endif(NOT DISABLE_TCMALLOC)
if(OPENAL)
set(debug_files ${debug_files} alut.dll OpenAL32.dll)
set(release_files ${release_files} alut.dll OpenAL32.dll)
endif(OPENAL)
if (FMODSTUDIO) if (FMODSTUDIO)
set(debug_files ${debug_files} fmodL.dll) set(debug_files ${debug_files} fmodL.dll)
set(release_files ${release_files} fmod.dll) set(release_files ${release_files} fmod.dll)
@@ -179,16 +184,10 @@ elseif(LINUX)
libatk-1.0.so libatk-1.0.so
libexpat.so libexpat.so
libexpat.so.1 libexpat.so.1
libfreetype.so.6.12.3
libfreetype.so.6
libfreetype.so
libGLOD.so libGLOD.so
libgmodule-2.0.so libgmodule-2.0.so
libgobject-2.0.so libgobject-2.0.so
libopenal.so libopenal.so
libfontconfig.so.1.8.0
libfontconfig.so.1
libfontconfig.so
) )
if (USE_TCMALLOC) if (USE_TCMALLOC)

View File

@@ -30,22 +30,21 @@ if (FMODSTUDIO)
optimized ${FMOD_LINK_LIBRARY_RELEASE} optimized ${FMOD_LINK_LIBRARY_RELEASE}
) )
set(FMOD_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include/fmodstudio) set(FMODSTUDIO_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include/fmodstudio)
endif(FMODSTUDIO) endif(FMODSTUDIO)
if(FMOD_LIBRARY_RELEASE AND FMOD_INCLUDE_DIR) if(FMOD_LIBRARY_RELEASE AND FMODSTUDIO_INCLUDE_DIR)
set(FMOD ON) set(FMOD ON)
if (NOT FMOD_LIBRARY_DEBUG) #Use release library in debug configuration if debug library is absent. if (NOT FMOD_LIBRARY_DEBUG) #Use release library in debug configuration if debug library is absent.
set(FMOD_LIBRARY_DEBUG ${FMOD_LIBRARY_RELEASE}) set(FMOD_LIBRARY_DEBUG ${FMOD_LIBRARY_RELEASE})
endif (NOT FMOD_LIBRARY_DEBUG) endif (NOT FMOD_LIBRARY_DEBUG)
else (FMOD_LIBRARY_RELEASE AND FMOD_INCLUDE_DIR) else (FMOD_LIBRARY_RELEASE AND FMODSTUDIO_INCLUDE_DIR)
message(STATUS "No support for FMOD Studio audio (need to set FMODSTUDIO_SDK_DIR?)") message(STATUS "No support for FMOD Studio audio (need to set FMODSTUDIO_SDK_DIR?)")
set(FMOD OFF) set(FMOD OFF)
set(FMODSTUDIO OFF) set(FMODSTUDIO OFF)
endif (FMOD_LIBRARY_RELEASE AND FMOD_INCLUDE_DIR) endif (FMOD_LIBRARY_RELEASE AND FMODSTUDIO_INCLUDE_DIR)
if (FMOD) if (FMOD)
message(STATUS "Building with FMOD Studio audio support") message(STATUS "Building with FMOD Studio audio support")
set(LLSTARTUP_COMPILE_FLAGS "${LLSTARTUP_COMPILE_FLAGS} -DLL_FMODSTUDIO=1")
endif (FMOD) endif (FMOD)

View File

@@ -1,14 +1,14 @@
# -*- cmake -*- # -*- cmake -*-
include(Prebuilt) include(Prebuilt)
if (STANDALONE) if (LINUX)
include(FindPkgConfig) include(FindPkgConfig)
pkg_check_modules(FREETYPE REQUIRED freetype2) pkg_check_modules(FREETYPE REQUIRED freetype2)
else (STANDALONE) else (LINUX)
use_prebuilt_binary(freetype) use_prebuilt_binary(freetype)
set(FREETYPE_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include/freetype2) set(FREETYPE_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include/freetype2)
set(FREETYPE_LIBRARIES freetype) set(FREETYPE_LIBRARIES freetype)
endif (STANDALONE) endif (LINUX)
link_directories(${FREETYPE_LIBRARY_DIRS}) link_directories(${FREETYPE_LIBRARY_DIRS})

View File

@@ -94,7 +94,7 @@ macro(target_precompiled_header TARGET_NAME PRECOMPILED_HEADER PRECOMPILED_SOURC
# Add a custom target for building the precompiled header. # Add a custom target for building the precompiled header.
add_custom_command( add_custom_command(
OUTPUT ${OUTPUT_NAME} OUTPUT ${OUTPUT_NAME}
COMMAND ${CMAKE_CXX_COMPILER} @${PCH_FLAGS_FILE} ${COMPILER_FLAGS} -x c++-header -std=${CXX_STD} -o ${OUTPUT_NAME} ${PRECOMPILED_HEADER} COMMAND ${CMAKE_CXX_COMPILER} @${PCH_FLAGS_FILE} ${COMPILER_FLAGS} -x c++-header -o ${OUTPUT_NAME} ${PRECOMPILED_HEADER}
DEPENDS ${PRECOMPILED_HEADER}) DEPENDS ${PRECOMPILED_HEADER})
add_custom_target(${TARGET_NAME}_gch DEPENDS ${OUTPUT_NAME}) add_custom_target(${TARGET_NAME}_gch DEPENDS ${OUTPUT_NAME})
add_dependencies(${TARGET_NAME} ${TARGET_NAME}_gch) add_dependencies(${TARGET_NAME} ${TARGET_NAME}_gch)

View File

@@ -2,7 +2,6 @@
include(Linking) include(Linking)
include(Prebuilt) include(Prebuilt)
if(NOT FMOD)
if (LINUX) if (LINUX)
set(OPENAL ON CACHE BOOL "Enable OpenAL") set(OPENAL ON CACHE BOOL "Enable OpenAL")
else (LINUX) else (LINUX)
@@ -10,6 +9,7 @@ else (LINUX)
endif (LINUX) endif (LINUX)
if (OPENAL) if (OPENAL)
set(OPENAL_LIB_INCLUDE_DIRS "${LIBS_PREBUILT_DIR}/include/AL")
if (STANDALONE) if (STANDALONE)
include(FindPkgConfig) include(FindPkgConfig)
include(FindOpenAL) include(FindOpenAL)
@@ -18,15 +18,16 @@ if (OPENAL)
else (STANDALONE) else (STANDALONE)
use_prebuilt_binary(openal) use_prebuilt_binary(openal)
endif (STANDALONE) endif (STANDALONE)
if(WINDOWS)
set(OPENAL_LIBRARIES set(OPENAL_LIBRARIES
openal OpenAL32
alut alut
) )
set(OPENAL_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include) else()
endif (OPENAL) set(OPENAL_LIBRARIES
openal
if (OPENAL) alut
)
endif()
message(STATUS "Building with OpenAL audio support") message(STATUS "Building with OpenAL audio support")
set(LLSTARTUP_COMPILE_FLAGS "${LLSTARTUP_COMPILE_FLAGS} -DLL_OPENAL")
endif (OPENAL) endif (OPENAL)
endif(NOT FMOD)

View File

@@ -3,9 +3,6 @@ include(Prebuilt)
if (NOT STANDALONE) if (NOT STANDALONE)
use_prebuilt_binary(slvoice) use_prebuilt_binary(slvoice)
if(LINUX)
use_prebuilt_binary(fontconfig)
endif(LINUX)
else (NOT STANDALONE) else (NOT STANDALONE)
# Download there even when using standalone. # Download there even when using standalone.
set(STANDALONE OFF) set(STANDALONE OFF)
@@ -16,4 +13,9 @@ else (NOT STANDALONE)
set(STANDALONE ON) set(STANDALONE ON)
endif(NOT STANDALONE) endif(NOT STANDALONE)
if(LINUX)
include(FindPkgConfig)
pkg_check_modules(FONTCONFIG REQUIRED fontconfig)
endif(LINUX)
use_prebuilt_binary(fonts) use_prebuilt_binary(fonts)

View File

@@ -184,7 +184,7 @@ void LLWearable::createLayers(S32 te, LLAvatarAppearance *avatarp)
{ {
LLTexLayerSet *layer_set = NULL; LLTexLayerSet *layer_set = NULL;
const LLAvatarAppearanceDictionary::TextureEntry *texture_dict = LLAvatarAppearanceDictionary::getInstance()->getTexture((ETextureIndex)te); const LLAvatarAppearanceDictionary::TextureEntry *texture_dict = LLAvatarAppearanceDictionary::getInstance()->getTexture((ETextureIndex)te);
if (texture_dict->mIsUsedByBakedTexture) if (texture_dict && texture_dict->mIsUsedByBakedTexture)
{ {
const EBakedTextureIndex baked_index = texture_dict->mBakedTextureIndex; const EBakedTextureIndex baked_index = texture_dict->mBakedTextureIndex;
@@ -197,7 +197,7 @@ void LLWearable::createLayers(S32 te, LLAvatarAppearance *avatarp)
} }
else else
{ {
LL_ERRS() << "could not find layerset for LTO in wearable!" << LL_ENDL; LL_WARNS() << "could not find layerset for LTO in wearable!" << LL_ENDL;
} }
} }

View File

@@ -3,8 +3,6 @@
project(llaudio) project(llaudio)
include(00-Common) include(00-Common)
include(Audio)
include(LLAudio)
include(FMODSTUDIO) include(FMODSTUDIO)
include(OPENAL) include(OPENAL)
include(LLCommon) include(LLCommon)
@@ -12,10 +10,6 @@ include(LLMath)
include(LLMessage) include(LLMessage)
include(LLVFS) include(LLVFS)
if (FMOD)
include_directories(${FMOD_INCLUDE_DIR})
endif(FMOD)
include_directories( include_directories(
${LLAUDIO_INCLUDE_DIRS} ${LLAUDIO_INCLUDE_DIRS}
${LLCOMMON_INCLUDE_DIRS} ${LLCOMMON_INCLUDE_DIRS}
@@ -26,7 +20,7 @@ include_directories(
${VORBISENC_INCLUDE_DIRS} ${VORBISENC_INCLUDE_DIRS}
${VORBISFILE_INCLUDE_DIRS} ${VORBISFILE_INCLUDE_DIRS}
${VORBIS_INCLUDE_DIRS} ${VORBIS_INCLUDE_DIRS}
${OPENAL_INCLUDE_DIRS} ${OPENAL_LIB_INCLUDE_DIRS}
${FREEAULT_LIB_INCLUDE_DIRS} ${FREEAULT_LIB_INCLUDE_DIRS}
) )
@@ -50,6 +44,9 @@ set(llaudio_HEADER_FILES
) )
if (FMODSTUDIO) if (FMODSTUDIO)
include_directories(
${FMODSTUDIO_INCLUDE_DIR}
)
list(APPEND llaudio_SOURCE_FILES list(APPEND llaudio_SOURCE_FILES
llaudioengine_fmodstudio.cpp llaudioengine_fmodstudio.cpp
lllistener_fmodstudio.cpp lllistener_fmodstudio.cpp

View File

@@ -51,6 +51,10 @@ include(ZLIB)
include(URIPARSER) include(URIPARSER)
if(FMODSTUDIO)
include_directories(${FMODSTUDIO_INCLUDE_DIR})
endif(FMODSTUDIO)
if(USE_CRASHPAD) if(USE_CRASHPAD)
include_directories(${CRASHPAD_INCLUDE_DIRS}) include_directories(${CRASHPAD_INCLUDE_DIRS})
endif(USE_CRASHPAD) endif(USE_CRASHPAD)
@@ -77,6 +81,7 @@ include_directories(
${LLWINDOW_INCLUDE_DIRS} ${LLWINDOW_INCLUDE_DIRS}
${LLXML_INCLUDE_DIRS} ${LLXML_INCLUDE_DIRS}
${HUNSPELL_INCLUDE_DIR} ${HUNSPELL_INCLUDE_DIR}
${OPENAL_LIB_INCLUDE_DIRS}
${LLAPPEARANCE_INCLUDE_DIRS} ${LLAPPEARANCE_INCLUDE_DIRS}
${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
) )
@@ -1425,7 +1430,15 @@ if (WINDOWS)
list(APPEND viewer_SOURCE_FILES ${viewer_INSTALLER_FILES}) list(APPEND viewer_SOURCE_FILES ${viewer_INSTALLER_FILES})
endif (WINDOWS) endif (WINDOWS)
set_source_files_properties(llstartup.cpp PROPERTIES COMPILE_FLAGS "${LLSTARTUP_COMPILE_FLAGS}") if (OPENAL)
list(APPEND LLSTARTUP_COMPILE_DEFINITIONS "LL_OPENAL=1")
endif (OPENAL)
if (FMODSTUDIO)
list(APPEND LLSTARTUP_COMPILE_DEFINITIONS "LL_FMODSTUDIO=1")
endif (FMODSTUDIO)
set_source_files_properties(llstartup.cpp PROPERTIES COMPILE_DEFINITIONS "${LLSTARTUP_COMPILE_DEFINITIONS}")
if (LIBVLCPLUGIN) if (LIBVLCPLUGIN)
set_source_files_properties(llfloaterabout.cpp PROPERTIES COMPILE_DEFINITIONS "VLCPLUGIN=1") set_source_files_properties(llfloaterabout.cpp PROPERTIES COMPILE_DEFINITIONS "VLCPLUGIN=1")

View File

@@ -2892,6 +2892,8 @@ void LLVOAvatarSelf::requestLayerSetUpdate(ETextureIndex index )
if( mUpperBodyLayerSet ) if( mUpperBodyLayerSet )
mUpperBodyLayerSet->requestUpdate(); */ mUpperBodyLayerSet->requestUpdate(); */
const LLAvatarAppearanceDictionary::TextureEntry *texture_dict = LLAvatarAppearanceDictionary::getInstance()->getTexture(index); const LLAvatarAppearanceDictionary::TextureEntry *texture_dict = LLAvatarAppearanceDictionary::getInstance()->getTexture(index);
if (!texture_dict)
return;
if (!texture_dict->mIsLocalTexture || !texture_dict->mIsUsedByBakedTexture) if (!texture_dict->mIsLocalTexture || !texture_dict->mIsUsedByBakedTexture)
return; return;
const EBakedTextureIndex baked_index = texture_dict->mBakedTextureIndex; const EBakedTextureIndex baked_index = texture_dict->mBakedTextureIndex;
@@ -2908,7 +2910,7 @@ LLViewerTexLayerSet* LLVOAvatarSelf::getLayerSet(ETextureIndex index) const
case TEX_HEAD_BODYPAINT: case TEX_HEAD_BODYPAINT:
return mHeadLayerSet; */ return mHeadLayerSet; */
const LLAvatarAppearanceDictionary::TextureEntry *texture_dict = LLAvatarAppearanceDictionary::getInstance()->getTexture(index); const LLAvatarAppearanceDictionary::TextureEntry *texture_dict = LLAvatarAppearanceDictionary::getInstance()->getTexture(index);
if (texture_dict->mIsUsedByBakedTexture) if (texture_dict && texture_dict->mIsUsedByBakedTexture)
{ {
const EBakedTextureIndex baked_index = texture_dict->mBakedTextureIndex; const EBakedTextureIndex baked_index = texture_dict->mBakedTextureIndex;
return getLayerSet(baked_index); return getLayerSet(baked_index);

View File

@@ -477,6 +477,10 @@ class WindowsManifest(ViewerManifest):
if self.path("fmod.dll") == 0: if self.path("fmod.dll") == 0:
print "Skipping fmodstudio audio library(assuming other audio engine)" print "Skipping fmodstudio audio library(assuming other audio engine)"
# Get OpenAL dlls, continue if missing
if self.path("alut.dll","OpenAL32.dll") == 0:
print "Skipping OpenAL audio library (assuming other audio engine)"
# Vivox runtimes # Vivox runtimes
self.path("SLVoice.exe") self.path("SLVoice.exe")
if (self.address_size == 64): if (self.address_size == 64):