Improve cmake, make release need less dependancy and clean up some file (#584)
* Update CMakeLists.txt * try something to use less dependancy * improve script * Delete addr_to_sym.py * restore dockerfile * move the docker for release and a script to execute it to script * Delete build.sh * move more script to script folder * add the new docker in the CI * Update vcpkg.json * fix windows and macos in theory
This commit is contained in:
parent
b2479390ba
commit
5b79a1c910
|
|
@ -54,3 +54,84 @@ jobs:
|
||||||
name: spaghetti-linux-x64-${{ matrix.config }}
|
name: spaghetti-linux-x64-${{ matrix.config }}
|
||||||
path: spaghetti-${{ matrix.config }}
|
path: spaghetti-${{ matrix.config }}
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
|
build-docker:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
config: [Release]
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
fetch-tags: true
|
||||||
|
submodules: recursive
|
||||||
|
|
||||||
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v3
|
||||||
|
|
||||||
|
- name: Cache Docker layers
|
||||||
|
uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
path: /tmp/.buildx-cache
|
||||||
|
key: ${{ runner.os }}-buildx-${{ hashFiles('script/Dockerfile', 'vcpkg.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-buildx-
|
||||||
|
|
||||||
|
- name: Build Docker image
|
||||||
|
uses: docker/build-push-action@v5
|
||||||
|
with:
|
||||||
|
context: .
|
||||||
|
file: ./script/Dockerfile
|
||||||
|
push: false
|
||||||
|
load: true
|
||||||
|
tags: spaghettikart-builder:latest
|
||||||
|
cache-from: type=local,src=/tmp/.buildx-cache
|
||||||
|
cache-to: type=local,dest=/tmp/.buildx-cache-new,mode=max
|
||||||
|
|
||||||
|
- name: Build project in Docker
|
||||||
|
run: |
|
||||||
|
docker run --rm \
|
||||||
|
-v "${{ github.workspace }}:/project" \
|
||||||
|
spaghettikart-builder:latest \
|
||||||
|
bash -c "
|
||||||
|
cp vcpkg.json /tmp/vcpkg.json && \
|
||||||
|
cd /tmp && \
|
||||||
|
\${VCPKG_ROOT}/vcpkg install --triplet x64-linux && \
|
||||||
|
cd /project && \
|
||||||
|
cmake -B build -G Ninja \
|
||||||
|
-DCMAKE_BUILD_TYPE=${{ matrix.config }} \
|
||||||
|
-DCMAKE_TOOLCHAIN_FILE=/opt/vcpkg/scripts/buildsystems/vcpkg.cmake \
|
||||||
|
-DVCPKG_TARGET_TRIPLET=x64-linux && \
|
||||||
|
cmake --build build --parallel
|
||||||
|
"
|
||||||
|
|
||||||
|
- name: Generate AppImage
|
||||||
|
run: |
|
||||||
|
docker run --rm \
|
||||||
|
-v "${{ github.workspace }}:/project" \
|
||||||
|
spaghettikart-builder:latest \
|
||||||
|
bash -c "
|
||||||
|
cd /project/build && \
|
||||||
|
cpack -G External || true
|
||||||
|
"
|
||||||
|
|
||||||
|
- name: Create Package
|
||||||
|
run: |
|
||||||
|
mkdir -p spaghetti-${{ matrix.config }}
|
||||||
|
cp build/Spaghettify spaghetti-${{ matrix.config }}/ || true
|
||||||
|
wget -O gamecontrollerdb.txt https://raw.githubusercontent.com/mdqinc/SDL_GameControllerDB/master/gamecontrollerdb.txt
|
||||||
|
mv gamecontrollerdb.txt spaghetti-${{ matrix.config }}/
|
||||||
|
cp build/*.appimage spaghetti-${{ matrix.config }}/ 2>/dev/null || true
|
||||||
|
|
||||||
|
- name: Publish packaged artifacts
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: spaghetti-linux-docker-x64-${{ matrix.config }}
|
||||||
|
path: spaghetti-${{ matrix.config }}
|
||||||
|
retention-days: 7
|
||||||
|
|
||||||
|
# Workaround for cache growing too large
|
||||||
|
- name: Move cache
|
||||||
|
run: |
|
||||||
|
rm -rf /tmp/.buildx-cache
|
||||||
|
mv /tmp/.buildx-cache-new /tmp/.buildx-cache || true
|
||||||
|
|
@ -126,7 +126,7 @@ jobs:
|
||||||
|
|
||||||
build-macos-intel:
|
build-macos-intel:
|
||||||
needs: generate-port-o2r
|
needs: generate-port-o2r
|
||||||
runs-on: macOS-13
|
runs-on: macOS-latest-intel
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
config: [Release, Debug]
|
config: [Release, Debug]
|
||||||
|
|
@ -344,18 +344,6 @@ jobs:
|
||||||
run: |
|
run: |
|
||||||
cmake -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE=${{ matrix.config }}
|
cmake -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE=${{ matrix.config }}
|
||||||
cmake --build build-cmake --config ${{ matrix.config }} -j3
|
cmake --build build-cmake --config ${{ matrix.config }} -j3
|
||||||
(cd build-cmake && cpack -G External)
|
|
||||||
wget -O gamecontrollerdb.txt https://raw.githubusercontent.com/mdqinc/SDL_GameControllerDB/master/gamecontrollerdb.txt
|
|
||||||
mv README.md readme.txt
|
|
||||||
mv build-cmake/*.appimage spaghetti.appimage
|
|
||||||
- name: Upload build
|
|
||||||
if: matrix.config == 'Release'
|
|
||||||
uses: actions/upload-artifact@v4
|
|
||||||
with:
|
|
||||||
name: spaghetti-linux-x64
|
|
||||||
path: |
|
|
||||||
spaghetti.appimage
|
|
||||||
gamecontrollerdb.txt
|
|
||||||
|
|
||||||
build-linux-docker:
|
build-linux-docker:
|
||||||
needs: generate-port-o2r
|
needs: generate-port-o2r
|
||||||
|
|
@ -383,6 +371,87 @@ jobs:
|
||||||
- name: Build spaghetti
|
- name: Build spaghetti
|
||||||
run: docker run --rm -v ${PWD}:/project spaghetti cmake --build build-cmake --config ${{ matrix.config }} -j$(nproc)
|
run: docker run --rm -v ${PWD}:/project spaghetti cmake --build build-cmake --config ${{ matrix.config }} -j$(nproc)
|
||||||
|
|
||||||
|
build-docker:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
config: [Release]
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
fetch-tags: true
|
||||||
|
submodules: recursive
|
||||||
|
|
||||||
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v3
|
||||||
|
|
||||||
|
- name: Cache Docker layers
|
||||||
|
uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
path: /tmp/.buildx-cache
|
||||||
|
key: ${{ runner.os }}-buildx-${{ hashFiles('script/Dockerfile', 'vcpkg.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-buildx-
|
||||||
|
|
||||||
|
- name: Build Docker image
|
||||||
|
uses: docker/build-push-action@v5
|
||||||
|
with:
|
||||||
|
context: .
|
||||||
|
file: ./script/Dockerfile
|
||||||
|
push: false
|
||||||
|
load: true
|
||||||
|
tags: spaghettikart-builder:latest
|
||||||
|
cache-from: type=local,src=/tmp/.buildx-cache
|
||||||
|
cache-to: type=local,dest=/tmp/.buildx-cache-new,mode=max
|
||||||
|
|
||||||
|
- name: Build project in Docker
|
||||||
|
run: |
|
||||||
|
docker run --rm \
|
||||||
|
-v "${{ github.workspace }}:/project" \
|
||||||
|
spaghettikart-builder:latest \
|
||||||
|
bash -c "
|
||||||
|
cp vcpkg.json /tmp/vcpkg.json && \
|
||||||
|
cd /tmp && \
|
||||||
|
\${VCPKG_ROOT}/vcpkg install --triplet x64-linux && \
|
||||||
|
cd /project && \
|
||||||
|
cmake -B build -G Ninja \
|
||||||
|
-DCMAKE_BUILD_TYPE=${{ matrix.config }} \
|
||||||
|
-DCMAKE_TOOLCHAIN_FILE=/opt/vcpkg/scripts/buildsystems/vcpkg.cmake \
|
||||||
|
-DVCPKG_TARGET_TRIPLET=x64-linux && \
|
||||||
|
cmake --build build --parallel
|
||||||
|
"
|
||||||
|
|
||||||
|
- name: Generate AppImage
|
||||||
|
run: |
|
||||||
|
docker run --rm \
|
||||||
|
-v "${{ github.workspace }}:/project" \
|
||||||
|
spaghettikart-builder:latest \
|
||||||
|
bash -c "
|
||||||
|
cd /project/build && \
|
||||||
|
cpack -G External || true
|
||||||
|
"
|
||||||
|
|
||||||
|
- name: Create Package
|
||||||
|
run: |
|
||||||
|
mkdir -p spaghetti-${{ matrix.config }}
|
||||||
|
cp build/Spaghettify spaghetti-${{ matrix.config }}/ || true
|
||||||
|
wget -O gamecontrollerdb.txt https://raw.githubusercontent.com/mdqinc/SDL_GameControllerDB/master/gamecontrollerdb.txt
|
||||||
|
mv gamecontrollerdb.txt spaghetti-${{ matrix.config }}/
|
||||||
|
cp build/*.appimage spaghetti-${{ matrix.config }}/ 2>/dev/null || true
|
||||||
|
|
||||||
|
- name: Publish packaged artifacts
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: spaghetti-linux-x64
|
||||||
|
path: spaghetti-${{ matrix.config }}
|
||||||
|
|
||||||
|
# Workaround for cache growing too large
|
||||||
|
- name: Move cache
|
||||||
|
run: |
|
||||||
|
rm -rf /tmp/.buildx-cache
|
||||||
|
mv /tmp/.buildx-cache-new /tmp/.buildx-cache || true
|
||||||
|
|
||||||
build-switch:
|
build-switch:
|
||||||
needs: generate-port-o2r
|
needs: generate-port-o2r
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
|
||||||
|
|
@ -128,3 +128,4 @@ cmake-build-*/
|
||||||
build*/
|
build*/
|
||||||
.DS_Store
|
.DS_Store
|
||||||
.cache/
|
.cache/
|
||||||
|
_packages/
|
||||||
|
|
|
||||||
|
|
@ -173,6 +173,10 @@ else()
|
||||||
set(CMAKE_CXX_FLAGS_DEBUG "-g -DNDEBUG ${COMMON_CXX_FLAGS}")
|
set(CMAKE_CXX_FLAGS_DEBUG "-g -DNDEBUG ${COMMON_CXX_FLAGS}")
|
||||||
set(CMAKE_C_FLAGS_RELEASE "-O3 -DNDEBUG ${COMMON_C_FLAGS}")
|
set(CMAKE_C_FLAGS_RELEASE "-O3 -DNDEBUG ${COMMON_C_FLAGS}")
|
||||||
set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG ${COMMON_CXX_FLAGS}")
|
set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG ${COMMON_CXX_FLAGS}")
|
||||||
|
set(CMAKE_C_FLAGS_MINSIZEREL "-Os -DNDEBUG ${COMMON_C_FLAGS}")
|
||||||
|
set(CMAKE_CXX_FLAGS_MINSIZEREL "-Os -DNDEBUG ${COMMON_CXX_FLAGS}")
|
||||||
|
set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g -DNDEBUG ${COMMON_C_FLAGS}")
|
||||||
|
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g -DNDEBUG ${COMMON_CXX_FLAGS}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Set game compilation version
|
# Set game compilation version
|
||||||
|
|
|
||||||
|
|
@ -61,4 +61,4 @@ RUN wget https://github.com/nih-at/libzip/releases/download/v1.10.1/libzip-1.10.
|
||||||
cd ../.. && \
|
cd ../.. && \
|
||||||
rm -rf libzip-1.10.1.tar.gz libzip-1.10.1
|
rm -rf libzip-1.10.1.tar.gz libzip-1.10.1
|
||||||
|
|
||||||
WORKDIR /project
|
WORKDIR /project
|
||||||
|
|
@ -1,20 +0,0 @@
|
||||||
import re
|
|
||||||
|
|
||||||
# Define the regex query to match the hex values
|
|
||||||
regex_query = r'0x07[0-9a-fA-F]{6}'
|
|
||||||
|
|
||||||
# Define a function to process each match
|
|
||||||
def process_match(match):
|
|
||||||
offset = int(match.group(0)[4:], 16)
|
|
||||||
return f"d_course_big_donut_packed_dl_{hex(offset)[2:].upper()}"
|
|
||||||
|
|
||||||
# Open the input file
|
|
||||||
with open("courses/big_donut/packed.inc.c", "r") as f:
|
|
||||||
# Read the file contents
|
|
||||||
file_content = f.read()
|
|
||||||
|
|
||||||
# Use re.sub() to find and replace all matches in the file content
|
|
||||||
modified_content = re.sub(regex_query, process_match, file_content)
|
|
||||||
|
|
||||||
# Print the modified content to console
|
|
||||||
print(modified_content)
|
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
FROM ubuntu:22.04
|
||||||
|
|
||||||
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
|
ENV VCPKG_ROOT=/opt/vcpkg
|
||||||
|
ENV PATH="${VCPKG_ROOT}:${PATH}"
|
||||||
|
|
||||||
|
# Install base dependencies
|
||||||
|
RUN apt-get update -y && apt-get -y upgrade && \
|
||||||
|
apt-get -y install \
|
||||||
|
build-essential \
|
||||||
|
gcc \
|
||||||
|
g++ \
|
||||||
|
git \
|
||||||
|
ninja-build \
|
||||||
|
curl \
|
||||||
|
zip \
|
||||||
|
unzip \
|
||||||
|
tar \
|
||||||
|
pkg-config \
|
||||||
|
wget \
|
||||||
|
file \
|
||||||
|
autoconf \
|
||||||
|
automake \
|
||||||
|
libtool \
|
||||||
|
python3 \
|
||||||
|
libx11-dev \
|
||||||
|
libxrandr-dev \
|
||||||
|
libxi-dev \
|
||||||
|
libxinerama-dev \
|
||||||
|
libxcursor-dev \
|
||||||
|
libgl1-mesa-dev \
|
||||||
|
libopengl-dev \
|
||||||
|
libwayland-dev \
|
||||||
|
libxkbcommon-dev \
|
||||||
|
libasound2-dev \
|
||||||
|
libpulse-dev \
|
||||||
|
libudev-dev \
|
||||||
|
libdbus-1-dev
|
||||||
|
|
||||||
|
# Install CMake 4.0.3
|
||||||
|
ENV DOCKER_CMAKE_VERSION="4.0.3"
|
||||||
|
RUN wget https://github.com/Kitware/CMake/releases/download/v${DOCKER_CMAKE_VERSION}/cmake-${DOCKER_CMAKE_VERSION}-linux-x86_64.sh && \
|
||||||
|
chmod +x cmake-${DOCKER_CMAKE_VERSION}-linux-x86_64.sh && \
|
||||||
|
./cmake-${DOCKER_CMAKE_VERSION}-linux-x86_64.sh --prefix=/usr/local --skip-license && \
|
||||||
|
rm cmake-${DOCKER_CMAKE_VERSION}-linux-x86_64.sh
|
||||||
|
|
||||||
|
# Install vcpkg
|
||||||
|
RUN git clone https://github.com/microsoft/vcpkg.git ${VCPKG_ROOT} && \
|
||||||
|
cd ${VCPKG_ROOT} && \
|
||||||
|
./bootstrap-vcpkg.sh -disableMetrics
|
||||||
|
|
||||||
|
WORKDIR /project
|
||||||
|
|
@ -0,0 +1,56 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Script to build SpaghettiKart using Docker
|
||||||
|
# Usage: ./docker/build.sh [Release|Debug]
|
||||||
|
|
||||||
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
|
PROJECT_DIR="$(dirname "$SCRIPT_DIR")"
|
||||||
|
|
||||||
|
BUILD_TYPE="${1:-Release}"
|
||||||
|
BUILD_DIR="build-docker"
|
||||||
|
IMAGE_NAME="spaghettikart-builder"
|
||||||
|
USER_ID=$(id -u)
|
||||||
|
GROUP_ID=$(id -g)
|
||||||
|
|
||||||
|
cd "$PROJECT_DIR"
|
||||||
|
|
||||||
|
# Build Docker image
|
||||||
|
echo "Building Docker image..."
|
||||||
|
docker build -t "${IMAGE_NAME}" -f script/Dockerfile .
|
||||||
|
|
||||||
|
# Clean build directory if it contains incompatible cache
|
||||||
|
if [[ -f "${BUILD_DIR}/CMakeCache.txt" ]] && grep -q "/home/coco" "${BUILD_DIR}/CMakeCache.txt" 2>/dev/null; then
|
||||||
|
echo "Cleaning incompatible build cache..."
|
||||||
|
rm -rf "${BUILD_DIR}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Run build in Docker
|
||||||
|
echo "Building in Docker container..."
|
||||||
|
docker run --rm \
|
||||||
|
-v "$(pwd):/project" \
|
||||||
|
-e BUILD_TYPE="${BUILD_TYPE}" \
|
||||||
|
-e USER_ID="${USER_ID}" \
|
||||||
|
-e GROUP_ID="${GROUP_ID}" \
|
||||||
|
"${IMAGE_NAME}" \
|
||||||
|
bash -c "
|
||||||
|
# Copy vcpkg.json and install dependencies
|
||||||
|
cp vcpkg.json /tmp/vcpkg.json && \
|
||||||
|
cd /tmp && \
|
||||||
|
\${VCPKG_ROOT}/vcpkg install --triplet x64-linux && \
|
||||||
|
cd /project && \
|
||||||
|
cmake -B ${BUILD_DIR} -G Ninja \
|
||||||
|
-DCMAKE_BUILD_TYPE=${BUILD_TYPE} \
|
||||||
|
-DCMAKE_TOOLCHAIN_FILE=/opt/vcpkg/scripts/buildsystems/vcpkg.cmake \
|
||||||
|
-DVCPKG_TARGET_TRIPLET=x64-linux && \
|
||||||
|
cmake --build ${BUILD_DIR} --parallel && \
|
||||||
|
cp -f spaghetti.o2r ${BUILD_DIR}/ 2>/dev/null || true && \
|
||||||
|
cp -f mk64.o2r ${BUILD_DIR}/ 2>/dev/null || true && \
|
||||||
|
cd ${BUILD_DIR} && cpack -G External && \
|
||||||
|
chown -R ${USER_ID}:${GROUP_ID} /project/${BUILD_DIR} /project/logs 2>/dev/null || true
|
||||||
|
"
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "Build complete!"
|
||||||
|
echo "Executable: ${BUILD_DIR}/Spaghettify"
|
||||||
|
ls -1 "${BUILD_DIR}"/*.appimage 2>/dev/null && echo "AppImage generated successfully!" || echo "Note: AppImage generation may have failed"
|
||||||
|
|
@ -166,8 +166,8 @@ GameEngine::GameEngine() {
|
||||||
{ BTN_DDOWN, "DDown" },
|
{ BTN_DDOWN, "DDown" },
|
||||||
});
|
});
|
||||||
auto controlDeck = std::make_shared<LUS::ControlDeck>(std::vector<CONTROLLERBUTTONS_T>(), defaultMappings, buttonNames);
|
auto controlDeck = std::make_shared<LUS::ControlDeck>(std::vector<CONTROLLERBUTTONS_T>(), defaultMappings, buttonNames);
|
||||||
|
const std::string assets_path = Ship::Context::LocateFileAcrossAppDirs("spaghetti.o2r");
|
||||||
this->context->InitResourceManager({}, {}, 3); // without this line InitWindow fails in Gui::Init()
|
this->context->InitResourceManager({assets_path}, {}, 3); // without this line InitWindow fails in Gui::Init()
|
||||||
this->context->InitConsole(); // without this line the GuiWindow constructor fails in ConsoleWindow::InitElement()
|
this->context->InitConsole(); // without this line the GuiWindow constructor fails in ConsoleWindow::InitElement()
|
||||||
|
|
||||||
auto gui = std::make_shared<Ship::SpaghettiGui>(std::vector<std::shared_ptr<Ship::GuiWindow>>({}));
|
auto gui = std::make_shared<Ship::SpaghettiGui>(std::vector<std::shared_ptr<Ship::GuiWindow>>({}));
|
||||||
|
|
@ -176,7 +176,7 @@ GameEngine::GameEngine() {
|
||||||
// auto wnd = std::make_shared<Fast::Fast3dWindow>(std::vector<std::shared_ptr<Ship::GuiWindow>>({}));
|
// auto wnd = std::make_shared<Fast::Fast3dWindow>(std::vector<std::shared_ptr<Ship::GuiWindow>>({}));
|
||||||
// auto wnd = std::dynamic_pointer_cast<Fast::Fast3dWindow>(Ship::Context::GetInstance()->GetWindow());
|
// auto wnd = std::dynamic_pointer_cast<Fast::Fast3dWindow>(Ship::Context::GetInstance()->GetWindow());
|
||||||
|
|
||||||
this->context->Init({}, {}, 3, { 26800, 512, 1100 }, wnd, controlDeck);
|
this->context->Init({assets_path}, {}, 3, { 26800, 512, 1100 }, wnd, controlDeck);
|
||||||
|
|
||||||
#ifndef __SWITCH__
|
#ifndef __SWITCH__
|
||||||
Ship::Context::GetInstance()->GetLogger()->set_level(
|
Ship::Context::GetInstance()->GetLogger()->set_level(
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
"c:\Program Files\Blender Foundation\Blender 4.0\blender.exe" -b --python tools/blender_extension/blender_export.py -- courses/dks_jungle_parkway/course_data.inc.c d_course_dks_jungle_parkway_dl_E058
|
|
||||||
15
vcpkg.json
15
vcpkg.json
|
|
@ -8,7 +8,20 @@
|
||||||
"bzip2",
|
"bzip2",
|
||||||
"libzip",
|
"libzip",
|
||||||
"libpng",
|
"libpng",
|
||||||
"sdl2",
|
{
|
||||||
|
"name": "sdl2",
|
||||||
|
"features": ["x11", "alsa", "wayland"],
|
||||||
|
"platform": "linux",
|
||||||
|
"default-features": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "sdl2",
|
||||||
|
"platform": "windows"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "sdl2",
|
||||||
|
"platform": "osx"
|
||||||
|
},
|
||||||
"sdl2-net",
|
"sdl2-net",
|
||||||
"glew",
|
"glew",
|
||||||
"glfw3",
|
"glfw3",
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue