diff --git a/.gitmodules b/.gitmodules index f9be274..34d2872 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,48 @@ +#The TeaClient itself [submodule "client"] path = client url = https://git.did.science/WolverinDEV/TeaSpeak-Client.git + +#All third party libraries used by TeaSpeak +[submodule "third_party/boringssl"] + path = third_party/boringssl + url = https://boringssl.googlesource.com/boringssl +[submodule "third_party/breakpad"] + path = third_party/breakpad + url = https://github.com/google/breakpad.git +[submodule "third_party/DataPipes"] + path = third_party/DataPipes + url = https://github.com/WolverinDEV/DataPipes.git +[submodule "third_party/ed25519"] + path = third_party/ed25519 + url = https://github.com/WolverinDEV/ed25519.git +[submodule "third_party/libevent"] + path = third_party/libevent + url = https://github.com/libevent/libevent.git +[submodule "third_party/libfvad"] + path = third_party/libfvad + url = https://github.com/WolverinDEV/libfvad +[submodule "third_party/opus"] + path = third_party/opus + url = https://github.com/xiph/opus.git +[submodule "third_party/portaudio"] + path = third_party/portaudio + url = https://git.assembla.com/portaudio.git +[submodule "third_party/soxr"] + path = third_party/soxr + url = https://git.code.sf.net/p/soxr/code +[submodule "third_party/spdlog"] + path = third_party/spdlog + url = https://git.did.science/WolverinDEV/spdlog.git +[submodule "third_party/StringVariable"] + path = third_party/StringVariable + url = https://github.com/WolverinDEV/StringVariable.git +[submodule "third_party/Thread-Pool"] + path = third_party/Thread-Pool + url = https://git.did.science/WolverinDEV/Thread-Pool.git +[submodule "third_party/tomcrypt"] + path = third_party/tomcrypt + url = https://git.did.science/WolverinDEV/tomcrypt.git +[submodule "third_party/tommath"] + path = third_party/tommath + url = https://git.did.science/WolverinDEV/tommath.git diff --git a/cmake/FindBreakpad.cmake b/cmake/FindBreakpad.cmake new file mode 100644 index 0000000..971418d --- /dev/null +++ b/cmake/FindBreakpad.cmake @@ -0,0 +1,66 @@ +# - Try to find breakpad include dirs and libraries +# +# Usage of this module as follows: +# +# find_package(breakpad) +# +# Variables used by this module, they can change the default behaviour and need +# to be set before calling find_package: +# +# breakpad_ROOT_DIR Set this variable to the root installation of +# breakpad if the module has problems finding the +# proper installation path. +# +# Variables defined by this module: +# +# breakpad_FOUND System has breakpad, include and library dirs found +# breakpad_INCLUDE_DIR The breakpad include directories. +# breakpad_SOURCE_FILES The source files which have to be included. +# breakpad_HEADER_FIOLES Header files which might be included. + +find_path(breakpad_ROOT_DIR + NAMES src/client/minidump_file_writer.h src/common/language.h + HINTS ${breakpad_ROOT_DIR} +) + +find_path(breakpad_INCLUDE_DIR + NAMES client/minidump_file_writer.h common/language.h + HINTS ${breakpad_ROOT_DIR}/src/ +) + +set(breakpad_SOURCE_FILES "") +set(breakpad_HEADER_FIOLES "") + +#https://blog.inventic.eu/2012/08/qt-and-google-breakpad/ +if(WIN32) + set(breakpad_SOURCE_FILES ${breakpad_SOURCE_FILES} + ${breakpad_ROOT_DIR}/src/client/windows/handler/exception_handler.cc + ${breakpad_ROOT_DIR}/src/common/windows/string_utils.cc + ${breakpad_ROOT_DIR}/src/common/windows/guid_string.cc + ${breakpad_ROOT_DIR}/src/client/windows/crash_generation/crash_generation_client.cc + ) + set(breakpad_HEADER_FIOLES ${breakpad_HEADER_FIOLES} + ${breakpad_ROOT_DIR}/src/common/windows/string_utils-inl.h + ${breakpad_ROOT_DIR}/src/common/windows/guid_string.h + ${breakpad_ROOT_DIR}/src/client/windows/handler/exception_handler.h + ${breakpad_ROOT_DIR}/src/client/windows/common/ipc_protocol.h + ${breakpad_ROOT_DIR}/src/google_breakpad/common/minidump_format.h + ${breakpad_ROOT_DIR}/src/google_breakpad/common/breakpad_types.h + ${breakpad_ROOT_DIR}/src/client/windows/crash_generation/crash_generation_client.h + ${breakpad_ROOT_DIR}/src/processor/scoped_ptr.h + ) +else() + message(FATAL_ERROR "Unknown system") +endif() + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(breakpad DEFAULT_MSG + breakpad_INCLUDE_DIR +) + +mark_as_advanced( + breakpad_ROOT_DIR + breakpad_INCLUDE_DIR + breakpad_SOURCE_FILES + breakpad_HEADER_FIOLES +) \ No newline at end of file diff --git a/cmake/FindDataPipes.cmake b/cmake/FindDataPipes.cmake new file mode 100644 index 0000000..d759e93 --- /dev/null +++ b/cmake/FindDataPipes.cmake @@ -0,0 +1,53 @@ +# - Try to find DataPipes include dirs and libraries +# +# Usage of this module as follows: +# +# find_package(DataPipes) +# +# Variables used by this module, they can change the default behaviour and need +# to be set before calling find_package: +# +# DataPipes_ROOT_DIR Set this variable to the root installation of +# DataPipes if the module has problems finding the +# proper installation path. +# +# Variables defined by this module: +# +# DataPipes_FOUND System has DataPipes, include and library dirs found +# DataPipes_INCLUDE_DIR The DataPipes include directories. +# DataPipes_LIBRARIES_STATIC The DataPipes libraries. +# DataPipes_LIBRARIES_SHARED The DataPipes libraries. + +find_path(DataPipes_ROOT_DIR + NAMES include/buffer.h include/pipeline.h CMakeLists.txt + HINTS ${DataPipes_ROOT_DIR} +) + +find_path(DataPipes_INCLUDE_DIR + NAMES pipes/pipeline.h pipes/buffer.h + HINTS ${DataPipes_ROOT_DIR}/out/win32/include/ ${DataPipes_ROOT_DIR}/out/win32_amd64/include/ +) + +find_library(DataPipes_LIBRARIES_STATIC + NAMES DataPipes.lib libDataPipes.a + PATH_SUFFIXES out/win32_amd64/Release out/win32/Release out/win32_x64/Release + HINTS ${DataPipes_ROOT_DIR} ${DataPipes_ROOT_DIR}/build ${DataPipes_ROOT_DIR}/libs ${DataPipes_ROOT_DIR}/out/ +) + +find_library(DataPipes_LIBRARIES_SHARED + NAMES DataPipes.dll libDataPipes.so + PATH_SUFFIXES out/win32_amd64/Release out/win32/Release out/win32_x64/Release + HINTS ${DataPipes_ROOT_DIR} ${DataPipes_ROOT_DIR}/build ${DataPipes_ROOT_DIR}/libs ${DataPipes_ROOT_DIR}/out/ +) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(DataPipes DEFAULT_MSG + DataPipes_INCLUDE_DIR +) + +mark_as_advanced( + DataPipes_ROOT_DIR + DataPipes_INCLUDE_DIR + DataPipes_LIBRARIES_STATIC + DataPipes_LIBRARIES_SHARED +) \ No newline at end of file diff --git a/cmake/FindEd25519.cmake b/cmake/FindEd25519.cmake new file mode 100644 index 0000000..c8b9690 --- /dev/null +++ b/cmake/FindEd25519.cmake @@ -0,0 +1,55 @@ +# - Try to find ed25519 include dirs and libraries +# +# Usage of this module as follows: +# +# find_package(ed25519) +# +# Variables used by this module, they can change the default behaviour and need +# to be set before calling find_package: +# +# ed25519_ROOT_DIR Set this variable to the root installation of +# ed25519 if the module has problems finding the +# proper installation path. +# +# Variables defined by this module: +# +# ed25519_FOUND System has ed25519, include and library dirs found +# ed25519_INCLUDE_DIR The ed25519 include directories. +# ed25519_LIBRARIES_STATIC The ed25519 libraries. +# ed25519_LIBRARIES_SHARED The ed25519 libraries. + +find_path(ed25519_ROOT_DIR + NAMES include/ed25519.h CMakeLists.txt + HINTS ${ed25519_ROOT_DIR} +) + +#This NEEDS a fix! +find_path(ed25519_INCLUDE_DIR + NAMES ed25519/ed25519.h + PATH_SUFFIXES include + HINTS ${ed25519_ROOT_DIR} ${ed25519_ROOT_DIR}/build ${ed25519_ROOT_DIR}/libs ${ed25519_ROOT_DIR}/out/win32_amd64 +) + +find_library(ed25519_LIBRARIES_STATIC + NAMES ed25519.lib ed25519.a + PATH_SUFFIXES out/win32_amd64/Release out/win32/Release out/win32_x64/Release + HINTS ${ed25519_ROOT_DIR} ${ed25519_ROOT_DIR}/build ${ed25519_ROOT_DIR}/libs ${ed25519_ROOT_DIR}/out/ +) + +find_library(ed25519_LIBRARIES_SHARED + NAMES ed25519.dll ed25519.so + PATH_SUFFIXES out/win32_amd64/Release out/win32/Release out/win32_x64/Release + HINTS ${ed25519_ROOT_DIR} ${ed25519_ROOT_DIR}/build ${ed25519_ROOT_DIR}/libs ${ed25519_ROOT_DIR}/out/ +) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(ed25519 DEFAULT_MSG + ed25519_INCLUDE_DIR +) + +mark_as_advanced( + ed25519_ROOT_DIR + ed25519_INCLUDE_DIR + ed25519_LIBRARIES_STATIC + ed25519_LIBRARIES_SHARED +) \ No newline at end of file diff --git a/cmake/FindOpus.cmake b/cmake/FindOpus.cmake new file mode 100644 index 0000000..eafb67e --- /dev/null +++ b/cmake/FindOpus.cmake @@ -0,0 +1,54 @@ +# - Try to find opus include dirs and libraries +# +# Usage of this module as follows: +# +# find_package(opus) +# +# Variables used by this module, they can change the default behaviour and need +# to be set before calling find_package: +# +# opus_ROOT_DIR Set this variable to the root installation of +# opus if the module has problems finding the +# proper installation path. +# +# Variables defined by this module: +# +# opus_FOUND System has opus, include and library dirs found +# opus_INCLUDE_DIR The opus include directories. +# opus_LIBRARIES_STATIC The opus libraries. +# opus_LIBRARIES_SHARED The opus libraries. + +find_path(opus_ROOT_DIR + NAMES include/opus/opus.h + HINTS ${opus_ROOT_DIR} +) + +find_path(opus_INCLUDE_DIR + NAMES opus/opus.h opus/opus_defines.h + HINTS ${opus_ROOT_DIR}/include/ +) + +find_library(opus_LIBRARIES_STATIC + NAMES opus.a opus.lib + PATH_SUFFIXES lib/ + HINTS + ${opus_ROOT_DIR}/lib +) + +find_library(opus_LIBRARIES_SHARED + NAMES opus.dll opus.so + PATH_SUFFIXES lib bin + HINTS ${opus_ROOT_DIR} ${opus_ROOT_DIR}/build ${opus_ROOT_DIR}/libs ${opus_ROOT_DIR}/out/ +) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(opus DEFAULT_MSG + opus_INCLUDE_DIR +) + +mark_as_advanced( + opus_ROOT_DIR + opus_INCLUDE_DIR + opus_LIBRARIES_STATIC + opus_LIBRARIES_SHARED +) \ No newline at end of file diff --git a/cmake/FindPortAudio.cmake b/cmake/FindPortAudio.cmake new file mode 100644 index 0000000..2e2867c --- /dev/null +++ b/cmake/FindPortAudio.cmake @@ -0,0 +1,54 @@ +# - Try to find PortAudio include dirs and libraries +# +# Usage of this module as follows: +# +# find_package(PortAudio) +# +# Variables used by this module, they can change the default behaviour and need +# to be set before calling find_package: +# +# PortAudio_ROOT_DIR Set this variable to the root installation of +# PortAudio if the module has problems finding the +# proper installation path. +# +# Variables defined by this module: +# +# PortAudio_FOUND System has PortAudio, include and library dirs found +# PortAudio_INCLUDE_DIR The PortAudio include directories. +# PortAudio_LIBRARIES_STATIC The PortAudio libraries. +# PortAudio_LIBRARIES_SHARED The PortAudio libraries. + +find_path(PortAudio_ROOT_DIR + NAMES include/portaudio.h + HINTS ${PortAudio_ROOT_DIR} +) + +find_path(PortAudio_INCLUDE_DIR + NAMES portaudio.h + HINTS ${PortAudio_ROOT_DIR}/include/ +) + +find_library(PortAudio_LIBRARIES_STATIC + NAMES portaudio_static_x64.a portaudio_static_x64.lib + PATH_SUFFIXES lib/ + HINTS + ${PortAudio_ROOT_DIR}/lib +) + +find_library(PortAudio_LIBRARIES_SHARED + NAMES portaudio_shared_x64.dll portaudio_shared_x64.so + PATH_SUFFIXES lib bin + HINTS ${PortAudio_ROOT_DIR} ${PortAudio_ROOT_DIR}/build ${PortAudio_ROOT_DIR}/libs ${PortAudio_ROOT_DIR}/out/ +) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(PortAudio DEFAULT_MSG + PortAudio_INCLUDE_DIR +) + +mark_as_advanced( + PortAudio_ROOT_DIR + PortAudio_INCLUDE_DIR + PortAudio_LIBRARIES_STATIC + PortAudio_LIBRARIES_SHARED +) \ No newline at end of file diff --git a/cmake/FindSoxr.cmake b/cmake/FindSoxr.cmake new file mode 100644 index 0000000..85a31ad --- /dev/null +++ b/cmake/FindSoxr.cmake @@ -0,0 +1,58 @@ +# - Try to find soxr include dirs and libraries +# +# Usage of this module as follows: +# +# find_package(soxr) +# +# Variables used by this module, they can change the default behaviour and need +# to be set before calling find_package: +# +# soxr_ROOT_DIR Set this variable to the root installation of +# soxr if the module has problems finding the +# proper installation path. +# +# Variables defined by this module: +# +# soxr_FOUND System has soxr, include and library dirs found +# soxr_INCLUDE_DIR The soxr include directories. +# soxr_LIBRARIES_STATIC The soxr libraries. +# soxr_LIBRARIES_SHARED The soxr libraries. + +find_path(soxr_ROOT_DIR + NAMES src/Definitions.h CMakeLists.txt + HINTS ${soxr_ROOT_DIR} +) + +find_path(soxr_INCLUDE_DIR + NAMES soxr.h + HINTS ${soxr_ROOT_DIR}/include/ +) + +find_library(soxr_LIBRARIES_STATIC + NAMES soxr.a soxr.lib + PATH_SUFFIXES lib/ + HINTS + ${soxr_ROOT_DIR} + ${soxr_ROOT_DIR}/build + ${soxr_ROOT_DIR}/libs + ${soxr_ROOT_DIR}/out/ + ${soxr_ROOT_DIR}/cmake-build-release +) + +find_library(soxr_LIBRARIES_SHARED + NAMES soxr.dll soxr.so + PATH_SUFFIXES lib bin + HINTS ${soxr_ROOT_DIR} ${soxr_ROOT_DIR}/build ${soxr_ROOT_DIR}/libs ${soxr_ROOT_DIR}/out/ +) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(soxr DEFAULT_MSG + soxr_INCLUDE_DIR +) + +mark_as_advanced( + soxr_ROOT_DIR + soxr_INCLUDE_DIR + soxr_LIBRARIES_STATIC + soxr_LIBRARIES_SHARED +) \ No newline at end of file diff --git a/cmake/FindStringVariable.cmake b/cmake/FindStringVariable.cmake new file mode 100644 index 0000000..04c45f6 --- /dev/null +++ b/cmake/FindStringVariable.cmake @@ -0,0 +1,53 @@ +# - Try to find StringVariable include dirs and libraries +# +# Usage of this module as follows: +# +# find_package(StringVariable) +# +# Variables used by this module, they can change the default behaviour and need +# to be set before calling find_package: +# +# StringVariable_ROOT_DIR Set this variable to the root installation of +# StringVariable if the module has problems finding the +# proper installation path. +# +# Variables defined by this module: +# +# StringVariable_FOUND System has StringVariable, include and library dirs found +# StringVariable_INCLUDE_DIR The StringVariable include directories. +# StringVariable_LIBRARIES_STATIC The StringVariable libraries. +# StringVariable_LIBRARIES_SHARED The StringVariable libraries. + +find_path(StringVariable_ROOT_DIR + NAMES include/StringVariable.h CMakeLists.txt + HINTS ${StringVariable_ROOT_DIR} +) + +find_path(StringVariable_INCLUDE_DIR + NAMES StringVariable.h + HINTS ${StringVariable_ROOT_DIR}/include +) + +find_library(StringVariable_LIBRARIES_STATIC + NAMES StringVariablesStatic.lib StringVariablesStatic.a + PATH_SUFFIXES out/win32_amd64/Release out/win32/Release out/win32_x64/Release + HINTS ${StringVariable_ROOT_DIR} ${StringVariable_ROOT_DIR}/build ${StringVariable_ROOT_DIR}/libs ${StringVariable_ROOT_DIR}/out/ +) + +find_library(StringVariable_LIBRARIES_SHARED + NAMES StringVariable.dll StringVariable.so + PATH_SUFFIXES out/win32_amd64/Release out/win32/Release out/win32_x64/Release + HINTS ${StringVariable_ROOT_DIR} ${StringVariable_ROOT_DIR}/build ${StringVariable_ROOT_DIR}/libs ${StringVariable_ROOT_DIR}/out/ +) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(StringVariable DEFAULT_MSG + StringVariable_INCLUDE_DIR +) + +mark_as_advanced( + StringVariable_ROOT_DIR + StringVariable_INCLUDE_DIR + StringVariable_LIBRARIES_STATIC + StringVariable_LIBRARIES_SHARED +) \ No newline at end of file diff --git a/cmake/FindTeaSpeak_SharedLib.cmake b/cmake/FindTeaSpeak_SharedLib.cmake new file mode 100644 index 0000000..2524eba --- /dev/null +++ b/cmake/FindTeaSpeak_SharedLib.cmake @@ -0,0 +1,59 @@ +# - Try to find TeaSpeak_SharedLib include dirs and libraries +# +# Usage of this module as follows: +# +# find_package(TeaSpeak_SharedLib) +# +# Variables used by this module, they can change the default behaviour and need +# to be set before calling find_package: +# +# TeaSpeak_SharedLib_ROOT_DIR Set this variable to the root installation of +# TeaSpeak_SharedLib if the module has problems finding the +# proper installation path. +# +# Variables defined by this module: +# +# TeaSpeak_SharedLib_FOUND System has TeaSpeak_SharedLib, include and library dirs found +# TeaSpeak_SharedLib_INCLUDE_DIR The TeaSpeak_SharedLib include directories. +# TeaSpeak_SharedLib_LIBRARIES_STATIC The TeaSpeak_SharedLib libraries. +# TeaSpeak_SharedLib_LIBRARIES_SHARED The TeaSpeak_SharedLib libraries. + +find_path(TeaSpeak_SharedLib_ROOT_DIR + NAMES src/Definitions.h CMakeLists.txt + HINTS ${TeaSpeak_SharedLib_ROOT_DIR} +) + +#This NEEDS a fix! +find_path(TeaSpeak_SharedLib_INCLUDE_DIR + NAMES Definitions.h + HINTS ${TeaSpeak_SharedLib_ROOT_DIR}/src +) + +find_library(TeaSpeak_SharedLib_LIBRARIES_STATIC + NAMES TeaSpeak.a TeaSpeak.lib + PATH_SUFFIXES out/win32_amd64/RelWithDebInfo out/win32/Release + HINTS + ${TeaSpeak_SharedLib_ROOT_DIR} + ${TeaSpeak_SharedLib_ROOT_DIR}/build + ${TeaSpeak_SharedLib_ROOT_DIR}/libs + ${TeaSpeak_SharedLib_ROOT_DIR}/out/ + ${TeaSpeak_SharedLib_ROOT_DIR}/cmake-build-relwithdebinfo +) + +find_library(TeaSpeak_SharedLib_LIBRARIES_SHARED + NAMES TeaSpeak.dll TeaSpeak.so + PATH_SUFFIXES out/win32_amd64/RelWithDebInfo out/win32/Release + HINTS ${TeaSpeak_SharedLib_ROOT_DIR} ${TeaSpeak_SharedLib_ROOT_DIR}/build ${TeaSpeak_SharedLib_ROOT_DIR}/libs ${TeaSpeak_SharedLib_ROOT_DIR}/out/ +) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(TeaSpeak_SharedLib DEFAULT_MSG + TeaSpeak_SharedLib_INCLUDE_DIR +) + +mark_as_advanced( + TeaSpeak_SharedLib_ROOT_DIR + TeaSpeak_SharedLib_INCLUDE_DIR + TeaSpeak_SharedLib_LIBRARIES_STATIC + TeaSpeak_SharedLib_LIBRARIES_SHARED +) \ No newline at end of file diff --git a/cmake/FindThreadPool.cmake b/cmake/FindThreadPool.cmake new file mode 100644 index 0000000..c1726f9 --- /dev/null +++ b/cmake/FindThreadPool.cmake @@ -0,0 +1,55 @@ +# - Try to find ThreadPool include dirs and libraries +# +# Usage of this module as follows: +# +# find_package(ThreadPool) +# +# Variables used by this module, they can change the default behaviour and need +# to be set before calling find_package: +# +# ThreadPool_ROOT_DIR Set this variable to the root installation of +# ThreadPool if the module has problems finding the +# proper installation path. +# +# Variables defined by this module: +# +# ThreadPool_FOUND System has ThreadPool, include and library dirs found +# ThreadPool_INCLUDE_DIR The ThreadPool include directories. +# ThreadPool_LIBRARIES_STATIC The ThreadPool libraries. +# ThreadPool_LIBRARIES_SHARED The ThreadPool libraries. + +find_path(ThreadPool_ROOT_DIR + NAMES include/ThreadPool.h CMakeLists.txt + HINTS ${ThreadPool_ROOT_DIR} +) + +#This NEEDS a fix! +find_path(ThreadPool_INCLUDE_DIR + NAMES ThreadPool/ThreadPool.h + PATH_SUFFIXES include + HINTS ${ThreadPool_ROOT_DIR} ${ThreadPool_ROOT_DIR}/build ${ThreadPool_ROOT_DIR}/libs ${ThreadPool_ROOT_DIR}/out/win32_amd64 +) + +find_library(ThreadPool_LIBRARIES_STATIC + NAMES ThreadPoolStatic.lib ThreadPoolStatic.a + PATH_SUFFIXES out/win32_amd64/Release out/win32/Release out/win32_x64/Release + HINTS ${ThreadPool_ROOT_DIR} ${ThreadPool_ROOT_DIR}/build ${ThreadPool_ROOT_DIR}/libs ${ThreadPool_ROOT_DIR}/out/ +) + +find_library(ThreadPool_LIBRARIES_SHARED + NAMES ThreadPool.dll ThreadPool.so + PATH_SUFFIXES out/win32_amd64/Release out/win32/Release out/win32_x64/Release + HINTS ${ThreadPool_ROOT_DIR} ${ThreadPool_ROOT_DIR}/build ${ThreadPool_ROOT_DIR}/libs ${ThreadPool_ROOT_DIR}/out/ +) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(ThreadPool DEFAULT_MSG + ThreadPool_INCLUDE_DIR +) + +mark_as_advanced( + ThreadPool_ROOT_DIR + ThreadPool_INCLUDE_DIR + ThreadPool_LIBRARIES_STATIC + ThreadPool_LIBRARIES_SHARED +) \ No newline at end of file diff --git a/cmake/FindTomCrypt.cmake b/cmake/FindTomCrypt.cmake new file mode 100644 index 0000000..c9b408b --- /dev/null +++ b/cmake/FindTomCrypt.cmake @@ -0,0 +1,53 @@ +# - Try to find tomcrypt include dirs and libraries +# +# Usage of this module as follows: +# +# find_package(TomCrypt) +# +# Variables used by this module, they can change the default behaviour and need +# to be set before calling find_package: +# +# TomCrypt_ROOT_DIR Set this variable to the root installation of +# TomCrypt if the module has problems finding the +# proper installation path. +# +# Variables defined by this module: +# +# TomCrypt_FOUND System has TomCrypt, include and library dirs found +# TomCrypt_INCLUDE_DIR The TomCrypt include directories. +# TomCrypt_LIBRARIES_STATIC The TomCrypt libraries. +# TomCrypt_LIBRARIES_SHARED The TomCrypt libraries. + +find_path(TomCrypt_ROOT_DIR + NAMES src/headers/tomcrypt.h makefile LICENSE + HINTS ${TomCrypt_ROOT_DIR} +) + +find_path(TomCrypt_INCLUDE_DIR + NAMES tomcrypt.h tomcrypt_cfg.h + HINTS ${TomCrypt_ROOT_DIR}/src/headers +) + +find_library(TomCrypt_LIBRARIES_STATIC + NAMES libtomcrypt.lib libtomcrypt.a + PATH_SUFFIXES out/win32_amd64/Release out/win32/Release out/win32_x64/Release + HINTS ${TomCrypt_ROOT_DIR} ${TomCrypt_ROOT_DIR}/build ${TomCrypt_ROOT_DIR}/libs ${TomCrypt_ROOT_DIR}/out/ +) + +find_library(TomCrypt_LIBRARIES_SHARED + NAMES libtomcrypt.dll libtomcrypt.so + PATH_SUFFIXES out/win32_amd64/Release out/win32/Release out/win32_x64/Release + HINTS ${TomCrypt_ROOT_DIR} ${TomCrypt_ROOT_DIR}/build ${TomCrypt_ROOT_DIR}/libs ${TomCrypt_ROOT_DIR}/out/ +) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(TomCrypt DEFAULT_MSG + TomCrypt_INCLUDE_DIR +) + +mark_as_advanced( + TomCrypt_ROOT_DIR + TomCrypt_INCLUDE_DIR + TomCrypt_LIBRARIES_STATIC + TomCrypt_LIBRARIES_SHARED +) \ No newline at end of file diff --git a/cmake/FindTomMath.cmake b/cmake/FindTomMath.cmake new file mode 100644 index 0000000..3028e4a --- /dev/null +++ b/cmake/FindTomMath.cmake @@ -0,0 +1,53 @@ +# - Try to find tommath include dirs and libraries +# +# Usage of this module as follows: +# +# find_package(TomMath) +# +# Variables used by this module, they can change the default behaviour and need +# to be set before calling find_package: +# +# TomMath_ROOT_DIR Set this variable to the root installation of +# TomMath if the module has problems finding the +# proper installation path. +# +# Variables defined by this module: +# +# TomMath_FOUND System has TomMath, include and library dirs found +# TomMath_INCLUDE_DIR The TomMath include directories. +# TomMath_LIBRARIES_STATIC The TomMath libraries. +# TomMath_LIBRARIES_SHARED The TomMath libraries. + +find_path(TomMath_ROOT_DIR + NAMES include/tommath.h CMakeLists.txt LICENSE + HINTS ${TomMath_ROOT_DIR} +) + +find_path(TomMath_INCLUDE_DIR + NAMES tommath.h tommath_private.h + HINTS ${TomMath_ROOT_DIR}/include +) + +find_library(TomMath_LIBRARIES_STATIC + NAMES tommath.lib tommath.a + PATH_SUFFIXES out/win32_amd64/Release out/win32/Release out/win32_x64/Release + HINTS ${TomMath_ROOT_DIR} ${TomMath_ROOT_DIR}/build ${TomMath_ROOT_DIR}/libs ${TomMath_ROOT_DIR}/out/ +) + +find_library(TomMath_LIBRARIES_SHARED + NAMES tommath.dll tommath.so + PATH_SUFFIXES out/win32_amd64/Release out/win32/Release out/win32_x64/Release + HINTS ${TomMath_ROOT_DIR} ${TomMath_ROOT_DIR}/build ${TomMath_ROOT_DIR}/libs ${TomMath_ROOT_DIR}/out/ +) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(TomMath DEFAULT_MSG + TomMath_INCLUDE_DIR +) + +mark_as_advanced( + TomMath_ROOT_DIR + TomMath_INCLUDE_DIR + TomMath_LIBRARIES_STATIC + TomMath_LIBRARIES_SHARED +) \ No newline at end of file diff --git a/cmake/Findfvad.cmake b/cmake/Findfvad.cmake new file mode 100644 index 0000000..dffdf3b --- /dev/null +++ b/cmake/Findfvad.cmake @@ -0,0 +1,54 @@ +# - Try to find fvad include dirs and libraries +# +# Usage of this module as follows: +# +# find_package(fvad) +# +# Variables used by this module, they can change the default behaviour and need +# to be set before calling find_package: +# +# fvad_ROOT_DIR Set this variable to the root installation of +# fvad if the module has problems finding the +# proper installation path. +# +# Variables defined by this module: +# +# fvad_FOUND System has fvad, include and library dirs found +# fvad_INCLUDE_DIR The fvad include directories. +# fvad_LIBRARIES_STATIC The fvad libraries. +# fvad_LIBRARIES_SHARED The fvad libraries. + +find_path(fvad_ROOT_DIR + NAMES include/fvad.h + HINTS ${fvad_ROOT_DIR} +) + +find_path(fvad_INCLUDE_DIR + NAMES fvad.h + HINTS ${fvad_ROOT_DIR}/include/ +) + +find_library(fvad_LIBRARIES_STATIC + NAMES libfvad.a libfvad.lib + PATH_SUFFIXES lib/ + HINTS + ${fvad_ROOT_DIR}/lib +) + +find_library(fvad_LIBRARIES_SHARED + NAMES libfvad.dll libfvad.so + PATH_SUFFIXES lib bin + HINTS ${fvad_ROOT_DIR} ${fvad_ROOT_DIR}/build ${fvad_ROOT_DIR}/libs ${fvad_ROOT_DIR}/out/ +) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(fvad DEFAULT_MSG + fvad_INCLUDE_DIR +) + +mark_as_advanced( + fvad_ROOT_DIR + fvad_INCLUDE_DIR + fvad_LIBRARIES_STATIC + fvad_LIBRARIES_SHARED +) \ No newline at end of file diff --git a/cmake/libraries_wolverin_lap.cmake b/cmake/libraries_wolverin_lap.cmake new file mode 100644 index 0000000..37ae202 --- /dev/null +++ b/cmake/libraries_wolverin_lap.cmake @@ -0,0 +1,16 @@ +SET(TomMath_ROOT_DIR "C:/Users/WolverinDEV/TeaSpeak/third_party/tommath") +SET(TomCrypt_ROOT_DIR "C:/Users/WolverinDEV/TeaSpeak/third_party/tomcrypt") +SET(DataPipes_ROOT_DIR "C:/Users/WolverinDEV/TeaSpeak/third_party/DataPipes") +SET(StringVariable_ROOT_DIR "C:/Users/WolverinDEV/TeaSpeak/third_party/StringVariable") +SET(ThreadPool_ROOT_DIR "C:/Users/WolverinDEV/TeaSpeak/third_party/Thread-Pool") +SET(ed25519_ROOT_DIR "C:/Users/WolverinDEV/TeaSpeak/third_party/ed25519") +SET(LibEvent_ROOT_DIR "C:/Users/WolverinDEV/TeaSpeak/third_party/libevent/out/win32_amd64/cmake") +SET(soxr_ROOT_DIR "C:/Users/WolverinDEV/TeaSpeak/third_party/soxr/out/win32_amd64") +SET(PortAudio_ROOT_DIR "C:/Users/WolverinDEV/TeaSpeak/third_party/portaudio/out/win32_amd64") +SET(fvad_ROOT_DIR "C:/Users/WolverinDEV/TeaSpeak/third_party/libfvad/out/win32_amd64") +SET(opus_ROOT_DIR "C:/Users/WolverinDEV/TeaSpeak/third_party/opus/out/win32_amd64") +SET(breakpad_ROOT_DIR "C:/Users/WolverinDEV/TeaSpeak/third_party/breakpad") + +SET(TeaSpeak_SharedLib_ROOT_DIR "C:/Users/WolverinDEV/TeaSpeak/TeaSpeak-SharedLib") + +set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "C:/Users/WolverinDEV/TeaSpeak/third_party/spdlog/out/win32_amd64") \ No newline at end of file diff --git a/third_party/DataPipes b/third_party/DataPipes new file mode 160000 index 0000000..5e27345 --- /dev/null +++ b/third_party/DataPipes @@ -0,0 +1 @@ +Subproject commit 5e273451558ecffff56e7bcc5db158b821d6b7bc diff --git a/third_party/StringVariable b/third_party/StringVariable new file mode 160000 index 0000000..4d6788c --- /dev/null +++ b/third_party/StringVariable @@ -0,0 +1 @@ +Subproject commit 4d6788cb3d42dde4c5e6064dc2b79e99db4446d9 diff --git a/third_party/Thread-Pool b/third_party/Thread-Pool new file mode 160000 index 0000000..9ce5999 --- /dev/null +++ b/third_party/Thread-Pool @@ -0,0 +1 @@ +Subproject commit 9ce59992ee8a538aad54911d0b5883333be95d7e diff --git a/third_party/boringssl b/third_party/boringssl new file mode 160000 index 0000000..d6f9c35 --- /dev/null +++ b/third_party/boringssl @@ -0,0 +1 @@ +Subproject commit d6f9c359d219055a89c676cb8886421b145a08da diff --git a/third_party/breakpad b/third_party/breakpad new file mode 160000 index 0000000..9cafb37 --- /dev/null +++ b/third_party/breakpad @@ -0,0 +1 @@ +Subproject commit 9cafb376ebdf0d00a2fc2323e3eef26ccb27fa1d diff --git a/third_party/build_boringssl.txt b/third_party/build_boringssl.txt new file mode 100644 index 0000000..8858828 --- /dev/null +++ b/third_party/build_boringssl.txt @@ -0,0 +1,9 @@ +Windows AMD64: +cd DataPipes +if [[ ! -d out/win32_amd64 ]]; then + mkdir -p out/win32_amd64 +fi +cd out/win32_amd64 +cmake ../../ -G"Visual Studio 14 2015 Win64" -DOPENSSL_NO_ASM=ON +MSBuild.exe //p:Configuration=Release //p:Platform=x64 crypto/crypto.vcxproj +MSBuild.exe //p:Configuration=Release //p:Platform=x64 ssl/ssl.vcxproj diff --git a/third_party/build_breakpad.txt b/third_party/build_breakpad.txt new file mode 100644 index 0000000..de539ee --- /dev/null +++ b/third_party/build_breakpad.txt @@ -0,0 +1,7 @@ +Windows AMD64: +cd breakpad +if [[ ! -d out/win32_amd64 ]]; then + mkdir -p out/win32_amd64 +fi +cd out/win32_amd64 +#We dont build breakpad, we directly include that in out project \ No newline at end of file diff --git a/third_party/build_datapipes.txt b/third_party/build_datapipes.txt new file mode 100644 index 0000000..c1ded45 --- /dev/null +++ b/third_party/build_datapipes.txt @@ -0,0 +1,9 @@ +Windows AMD64: +cd DataPipes +if [[ ! -d out/win32_amd64 ]]; then + mkdir -p out/win32_amd64 +fi +cd out/win32_amd64 +cmake ../../ -G"Visual Studio 14 2015 Win64" -DMSVC_RUNTIME=static -DBUILD_TESTS=OFF -DBUILD_WEBRTC=OFF -DCrypto_ROOT_DIR="C:\Users\WolverinDEV\TeaSpeak\third_party\boringssl" -DBUILD_SHARED=OFF -DBUILD_STATIC=ON -DCMAKE_INSTALL_PREFIX=. +MSBuild.exe //p:Configuration=Release //p:Platform=x64 DataPipes-Static.vcxproj +MSBuild.exe //p:Configuration=Release //p:Platform=x64 INSTALL.vcxproj \ No newline at end of file diff --git a/third_party/build_ed25519.txt b/third_party/build_ed25519.txt new file mode 100644 index 0000000..ff2b1b2 --- /dev/null +++ b/third_party/build_ed25519.txt @@ -0,0 +1,9 @@ +Windows AMD64: +cd ed25519 +if [[ ! -d out/win32_amd64 ]]; then + mkdir -p out/win32_amd64 +fi +cd out/win32_amd64 +cmake ../../ -G"Visual Studio 14 2015 Win64" -DCMAKE_INSTALL_PREFIX=. -DUSE_OPENSSL=OFF +MSBuild.exe //p:Configuration=Release //p:Platform=x64 ed25519.vcxproj +MSBuild.exe //p:Configuration=Release //p:Platform=x64 INSTALL.vcxproj \ No newline at end of file diff --git a/third_party/build_fvad.txt b/third_party/build_fvad.txt new file mode 100644 index 0000000..fa67376 --- /dev/null +++ b/third_party/build_fvad.txt @@ -0,0 +1,8 @@ +Windows AMD64: +cd libfvad +if [[ ! -d out/win32_amd64 ]]; then + mkdir -p out/win32_amd64 +fi +cd out/win32_amd64 +cmake ../../ -G"Visual Studio 14 2015 Win64" -DBUILD_TESTS=OFF -DBUILD_SHARED=OFF -DBUILD_STATIC=ON -DBUILD_EXAMPLES=OFF -DCMAKE_INSTALL_PREFIX=. +MSBuild.exe //p:Configuration=Release //p:Platform=x64 INSTALL.vcxproj diff --git a/third_party/build_libevent.txt b/third_party/build_libevent.txt new file mode 100644 index 0000000..854a165 --- /dev/null +++ b/third_party/build_libevent.txt @@ -0,0 +1,11 @@ +Windows AMD64: +cd libevent +if [[ ! -d out/win32_amd64 ]]; then + mkdir -p out/win32_amd64 +fi +cd out/win32_amd64 + +cmake ../../ -G"Visual Studio 14 2015 Win64" -DEVENT_INSTALL_CMAKE_DIR=cmake -DCMAKE_INSTALL_PREFIX=. -DEVENT__DISABLE_BENCHMARK=ON -DEVENT__LIBRARY_TYPE=BOTH -DEVENT__MSVC_STATIC_RUNTIME=ON -DEVENT__DISABLE_TESTS=ON -DEVENT__DISABLE_SAMPLES=ON -DEVENT__DISABLE_OPENSSL=ON +#MSBuild.exe //p:Configuration=Release //p:Platform=x64 event_shared.vcxproj +MSBuild.exe //p:Configuration=Release //p:Platform=x64 event_static.vcxproj +MSBuild.exe //p:Configuration=Release //p:Platform=x64 INSTALL.vcxproj diff --git a/third_party/build_opus.txt b/third_party/build_opus.txt new file mode 100644 index 0000000..6421763 --- /dev/null +++ b/third_party/build_opus.txt @@ -0,0 +1,9 @@ +Windows AMD64: +cd opus +if [[ ! -d out/win32_amd64 ]]; then + mkdir -p out/win32_amd64 +fi +cd out/win32_amd64 +cmake ../../ -G"Visual Studio 14 2015 Win64" -DCMAKE_C_FLAGS="/arch:SSE" -DCMAKE_INSTALL_PREFIX=. -DOPUS_X86_PRESUME_AVX=OFF -DOPUS_X86_PRESUME_SSE4_1=OFF +sed -i 's/AdvancedVectorExtensions/NoExtensions/g' *.vcxproj +MSBuild.exe //p:Configuration=RelWithDebInfo //p:Platform=x64 INSTALL.vcxproj diff --git a/third_party/build_portaudio.txt b/third_party/build_portaudio.txt new file mode 100644 index 0000000..c195883 --- /dev/null +++ b/third_party/build_portaudio.txt @@ -0,0 +1,8 @@ +Windows AMD64: +cd portaudio +if [[ ! -d out/win32_amd64 ]]; then + mkdir -p out/win32_amd64 +fi +cd out/win32_amd64 +cmake ../../ -G"Visual Studio 14 2015 Win64" -DPA_BUILD_SHARED=OFF -DPA_BUILD_STATIC=ON -DPA_BUILD_EXAMPLES=OFF -DCMAKE_INSTALL_PREFIX=. +MSBuild.exe //p:Configuration=Release //p:Platform=x64 INSTALL.vcxproj diff --git a/third_party/build_soxr.txt b/third_party/build_soxr.txt new file mode 100644 index 0000000..7e9f4ca --- /dev/null +++ b/third_party/build_soxr.txt @@ -0,0 +1,8 @@ +Windows AMD64: +cd soxr +if [[ ! -d out/win32_amd64 ]]; then + mkdir -p out/win32_amd64 +fi +cd out/win32_amd64 +cmake ../../ -G"Visual Studio 14 2015 Win64" -DBUILD_SHARED_RUNTIME=OFF -DWITH_OPENMP=OFF -DBUILD_TESTS=OFF -DBUILD_SHARED_LIBS=OFF -DBUILD_EXAMPLES=OFF -DCMAKE_INSTALL_PREFIX=. +MSBuild.exe //p:Configuration=Release //p:Platform=x64 INSTALL.vcxproj \ No newline at end of file diff --git a/third_party/build_spdlog.txt b/third_party/build_spdlog.txt new file mode 100644 index 0000000..a9de27c --- /dev/null +++ b/third_party/build_spdlog.txt @@ -0,0 +1,8 @@ +Windows AMD64: +cd spdlog +if [[ ! -d out/win32_amd64 ]]; then + mkdir -p out/win32_amd64 +fi +cd out/win32_amd64 +cmake ../../ -G"Visual Studio 14 2015 Win64" -DSPDLOG_BUILD_EXAMPLES=OFF -DSPDLOG_BUILD_TESTS=OFF -DCMAKE_INSTALL_PREFIX=. +MSBuild.exe //p:Configuration=Release //p:Platform=x64 INSTALL.vcxproj diff --git a/third_party/build_stringvariable.txt b/third_party/build_stringvariable.txt new file mode 100644 index 0000000..1c8b81b --- /dev/null +++ b/third_party/build_stringvariable.txt @@ -0,0 +1,8 @@ +Windows AMD64: +cd StringVariable +if [[ ! -d out/win32_amd64 ]]; then + mkdir -p out/win32_amd64 +fi +cd out/win32_amd64 +cmake ../../ -G"Visual Studio 14 2015 Win64" -DMSVC_RUNTIME=static -DCMAKE_INSTALL_PREFIX=. +MSBuild.exe //p:Configuration=Release //p:Platform=x64 INSTALL.vcxproj diff --git a/third_party/build_threadpool.txt b/third_party/build_threadpool.txt new file mode 100644 index 0000000..c0d880f --- /dev/null +++ b/third_party/build_threadpool.txt @@ -0,0 +1,9 @@ +Windows AMD64: +cd ThreadPool +if [[ ! -d out/win32_amd64 ]]; then + mkdir -p out/win32_amd64 +fi +cd out/win32_amd64 +cmake ../../ -G"Visual Studio 14 2015 Win64" -DMSVC_RUNTIME=static -DCMAKE_INSTALL_PREFIX=. +MSBuild.exe //p:Configuration=Release //p:Platform=x64 ThreadPoolStatic.vcxproj +MSBuild.exe //p:Configuration=Release //p:Platform=x64 INSTALL.vcxproj diff --git a/third_party/build_tomcrypt.txt b/third_party/build_tomcrypt.txt new file mode 100644 index 0000000..c882487 --- /dev/null +++ b/third_party/build_tomcrypt.txt @@ -0,0 +1,11 @@ +Windows AMD64: +cd tomcrypt +if [[ ! -d out/win32_amd64 ]]; then + mkdir -p out/win32_amd64 +fi +cd out/win32_amd64 +cmake ../../ -G"Visual Studio 14 2015 Win64" -DMSVC_RUNTIME=static -DCMAKE_C_FLAGS="-DLTM_DESC -DUSE_LTM -I../../../tommath/include/" +MSBuild.exe //p:Configuration=Release //p:Platform=x64 libtomcrypt.vcxproj + + +Notice: THe MSBuild step has to been executed twice because it does no find the headers in the first step! \ No newline at end of file diff --git a/third_party/build_tommath.txt b/third_party/build_tommath.txt new file mode 100644 index 0000000..14914e4 --- /dev/null +++ b/third_party/build_tommath.txt @@ -0,0 +1,9 @@ +Windows AMD64: +cd tommath +if [[ ! -d out/win32_amd64 ]]; then + mkdir -p out/win32_amd64 +fi +cd out/win32_amd64 +cmake ../../ -G"Visual Studio 14 2015 Win64" -DMSVC_RUNTIME=static +MSBuild.exe //p:Configuration=Release //p:Platform=x64 TomMath_Static.vcxproj +MSBuild.exe //p:Configuration=Release //p:Platform=x64 TomMath_Shared.vcxproj diff --git a/third_party/ed25519 b/third_party/ed25519 new file mode 160000 index 0000000..ad72bc7 --- /dev/null +++ b/third_party/ed25519 @@ -0,0 +1 @@ +Subproject commit ad72bc7f729ebf046bc074eb4ec925e594926f82 diff --git a/third_party/libevent b/third_party/libevent new file mode 160000 index 0000000..5388a00 --- /dev/null +++ b/third_party/libevent @@ -0,0 +1 @@ +Subproject commit 5388a002f5ad3bdfc756584dc58485fc3db135d0 diff --git a/third_party/libfvad b/third_party/libfvad new file mode 160000 index 0000000..1a47fef --- /dev/null +++ b/third_party/libfvad @@ -0,0 +1 @@ +Subproject commit 1a47fef4b715323b32295e6ba234818ed408c8fe diff --git a/third_party/opus b/third_party/opus new file mode 160000 index 0000000..ad8fe90 --- /dev/null +++ b/third_party/opus @@ -0,0 +1 @@ +Subproject commit ad8fe90db79b7d2a135e3dfd2ed6631b0c5662ab diff --git a/third_party/portaudio b/third_party/portaudio new file mode 160000 index 0000000..c5d2c51 --- /dev/null +++ b/third_party/portaudio @@ -0,0 +1 @@ +Subproject commit c5d2c51bd6fe354d0ee1119ba932bfebd3ebfacc diff --git a/third_party/soxr b/third_party/soxr new file mode 160000 index 0000000..945b592 --- /dev/null +++ b/third_party/soxr @@ -0,0 +1 @@ +Subproject commit 945b592b70470e29f917f4de89b4281fbbd540c0 diff --git a/third_party/spdlog b/third_party/spdlog new file mode 160000 index 0000000..96e8401 --- /dev/null +++ b/third_party/spdlog @@ -0,0 +1 @@ +Subproject commit 96e840155393fce947c427aa2faf5ba0ef100a22 diff --git a/third_party/tomcrypt b/third_party/tomcrypt new file mode 160000 index 0000000..4dd5300 --- /dev/null +++ b/third_party/tomcrypt @@ -0,0 +1 @@ +Subproject commit 4dd53007569b454b9af44d64abbf54dc75cbfa41 diff --git a/third_party/tommath b/third_party/tommath new file mode 160000 index 0000000..fe6cc64 --- /dev/null +++ b/third_party/tommath @@ -0,0 +1 @@ +Subproject commit fe6cc64884b2b408b607389f46266d44fd942a79