mirror of
https://github.com/ggerganov/ggwave.git
synced 2026-02-24 16:16:10 +08:00
add Windows build instructions with MSYS2 + MinGW
This commit is contained in:
13
README.md
13
README.md
@@ -71,7 +71,18 @@ Other projects using **ggwave** or one of its prototypes:
|
||||
|
||||
## Building
|
||||
|
||||
### Linux and Mac:
|
||||
### Dependencies for SDL-based examples
|
||||
|
||||
[Ubuntu]
|
||||
$ sudo apt install libsdl2-dev
|
||||
|
||||
[Mac OS with brew]
|
||||
$ brew install sdl2
|
||||
|
||||
[MSYS2]
|
||||
$ pacman -S git cmake make mingw-w64-x86_64-dlfcn mingw-w64-x86_64-gcc mingw-w64-x86_64-SDL2
|
||||
|
||||
### Linux, Mac, Windows (MSYS2):
|
||||
|
||||
```bash
|
||||
# build
|
||||
|
||||
3
examples/third-party/CMakeLists.txt
vendored
3
examples/third-party/CMakeLists.txt
vendored
@@ -1,5 +1,6 @@
|
||||
if (NOT EMSCRIPTEN)
|
||||
endif()
|
||||
add_subdirectory(imtui)
|
||||
|
||||
#add_subdirectory(imtui)
|
||||
add_subdirectory(imgui)
|
||||
add_subdirectory(ggsock)
|
||||
|
||||
2
examples/third-party/ggsock
vendored
2
examples/third-party/ggsock
vendored
Submodule examples/third-party/ggsock updated: 4f6b1c3b16...9934b3d949
65
examples/third-party/imgui/CMakeLists.txt
vendored
65
examples/third-party/imgui/CMakeLists.txt
vendored
@@ -32,7 +32,55 @@ target_link_libraries(imgui PRIVATE
|
||||
)
|
||||
|
||||
if (GGWAVE_SUPPORT_SDL2)
|
||||
if (NOT EMSCRIPTEN)
|
||||
if (MINGW)
|
||||
find_package(PkgConfig REQUIRED)
|
||||
pkg_search_module(SDL2 REQUIRED sdl2)
|
||||
|
||||
add_library(imgui-sdl2 ${GGWAVE_LIBRARY_TYPE}
|
||||
imgui/examples/libs/gl3w/GL/gl3w.c
|
||||
imgui-extra/imgui_impl.cpp
|
||||
imgui-extra/imgui_impl_sdl.cpp
|
||||
imgui-extra/imgui_impl_opengl3.cpp
|
||||
)
|
||||
|
||||
target_include_directories(imgui-sdl2 PUBLIC
|
||||
imgui/examples/libs/gl3w
|
||||
${SDL2_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
target_include_directories(imgui-sdl2 PRIVATE
|
||||
imgui
|
||||
imgui-extra
|
||||
)
|
||||
|
||||
target_link_libraries(imgui-sdl2 PUBLIC
|
||||
imgui
|
||||
opengl32
|
||||
${SDL2_LIBRARIES}
|
||||
stdc++
|
||||
)
|
||||
|
||||
target_link_libraries(imgui-sdl2 PRIVATE
|
||||
${CMAKE_DL_LIBS}
|
||||
${CMAKE_THREAD_LIBS_INIT}
|
||||
${ADDITIONAL_LIBRARIES}
|
||||
)
|
||||
elseif (EMSCRIPTEN)
|
||||
add_library(imgui-sdl2 ${GGWAVE_LIBRARY_TYPE}
|
||||
imgui-extra/imgui_impl.cpp
|
||||
imgui-extra/imgui_impl_sdl.cpp
|
||||
imgui-extra/imgui_impl_opengl3.cpp
|
||||
)
|
||||
|
||||
target_include_directories(imgui-sdl2 PRIVATE
|
||||
imgui
|
||||
imgui-extra
|
||||
)
|
||||
|
||||
target_link_libraries(imgui-sdl2 PUBLIC
|
||||
imgui
|
||||
)
|
||||
else()
|
||||
find_package(OpenGL REQUIRED)
|
||||
|
||||
add_library(imgui-sdl2 ${GGWAVE_LIBRARY_TYPE}
|
||||
@@ -63,20 +111,5 @@ if (GGWAVE_SUPPORT_SDL2)
|
||||
${CMAKE_THREAD_LIBS_INIT}
|
||||
${ADDITIONAL_LIBRARIES}
|
||||
)
|
||||
else()
|
||||
add_library(imgui-sdl2 ${GGWAVE_LIBRARY_TYPE}
|
||||
imgui-extra/imgui_impl.cpp
|
||||
imgui-extra/imgui_impl_sdl.cpp
|
||||
imgui-extra/imgui_impl_opengl3.cpp
|
||||
)
|
||||
|
||||
target_include_directories(imgui-sdl2 PRIVATE
|
||||
imgui
|
||||
imgui-extra
|
||||
)
|
||||
|
||||
target_link_libraries(imgui-sdl2 PUBLIC
|
||||
imgui
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
Reference in New Issue
Block a user