Merge remote-tracking branch 'origin/master'

This commit is contained in:
Kelsi 2026-02-21 22:01:32 -08:00
commit 863a786c48
5 changed files with 63 additions and 1 deletions

View file

@ -88,6 +88,12 @@ sudo pacman -S sdl2 glew glm openssl cmake base-devel \
stormlib # for asset_extract
```
### Container build
You can use podman to build application in separate container.
- Install podman
- Then run `container/build-in-container.sh`
- Artifacts can be found in `/tmp/wowee.[random value].[commit hash]`
### Game Data
This project requires WoW client data that you extract from your own legally obtained install.

19
container/build-in-container.sh Executable file
View file

@ -0,0 +1,19 @@
#!/bin/bash
set -eu
set -o pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "${SCRIPT_DIR}/.." && pwd)"
podman build \
-f "${SCRIPT_DIR}/builder-ubuntu.Dockerfile" \
-t wowee-builder-ubuntu
BUILD_DIR="$(mktemp --tmpdir -d wowee.XXXXX \
--suffix=".$(cd "${PROJECT_ROOT}"; git rev-parse --short HEAD)")"
podman run \
--mount "type=bind,src=${PROJECT_ROOT},dst=/WoWee-src,ro=true" \
--mount "type=bind,src=${BUILD_DIR},dst=/build" \
localhost/wowee-builder-ubuntu \
./build-wowee.sh

14
container/build-wowee.sh Executable file
View file

@ -0,0 +1,14 @@
#!/bin/bash
set -eu
set -o pipefail
cp -r /WoWee-src /WoWee
pushd /WoWee
./build.sh
popd
pushd /WoWee/build
cmake --install . --prefix=/build
popd

View file

@ -0,0 +1,23 @@
FROM ubuntu:24.04
RUN apt-get update && \
apt install -y \
cmake \
build-essential \
pkg-config \
git \
libsdl2-dev \
libglew-dev \
libglm-dev \
libssl-dev \
zlib1g-dev \
libavformat-dev \
libavcodec-dev \
libswscale-dev \
libavutil-dev \
libstorm-dev && \
rm -rf /var/lib/apt/lists/*
COPY build-wowee.sh /
ENTRYPOINT ./build-wowee.sh

View file

@ -54,7 +54,7 @@ if [ -d "${OUTPUT_DIR}/expansions" ]; then
fi
# Quick sanity check: look for any .MPQ files
if ! ls "$MPQ_DIR"/*.MPQ "$MPQ_DIR"/*.mpq 2>/dev/null | head -1 > /dev/null 2>&1; then
if ! compgen -G "$MPQ_DIR"/*.MPQ > /dev/null 2>&1 && ! compgen -G "$MPQ_DIR"/*.mpq > /dev/null 2>&1; then
echo "Error: No .MPQ files found in: $MPQ_DIR"
echo "Make sure this is the WoW Data/ directory (not the WoW root)."
exit 1