gbdev / gbdev/rgbds-live

Patches for few major rgbds releases with current html

Open
#96 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
58
Forks
16
PR merge metrics
No merged PRs in 30d

Description

Just for some tests I did set of patches for different rgbds version

With `build-rgbds.sh` like this

```sh
#!/bin/bash

set -eu

if [[ "$(which emmake)" == "" ]]; then
echo "I need emscripten sdk active, see https://emscripten.org/docs/getting_started/downloads.html"
exit 1
fi

cd rgbds

if ! [ -r ".rgbds_patched" ]; then
RGBDS_VERSION="$(git describe --tags --always 2>/dev/null)"
PATCH_FILE="../patches/rgbds${RGBDS_VERSION}.patch"
echo "${PATCH_FILE}"
if ! [ -r $PATCH_FILE ]; then
PATCH_FILE="../patches/rgbds.patch"
fi
if [ -r $PATCH_FILE ]; then
patch -p1 --no-backup-if-mismatch < $PATCH_FILE
>.rgbds_patched
fi
fi

MAKE_ARGS="Q= PNGCFLAGS= PNGLDFLAGS= PNGLDLIBS="
CXXFLAGS="-O3 -flto -DNDEBUG -s USE_LIBPNG"
LDFLAGS="-s EXPORT_ES6=1 -s ALLOW_MEMORY_GROWTH=1 -s ENVIRONMENT=web -s MODULARIZE=1 -s EXPORTED_RUNTIME_METHODS=['FS']"
emmake make ${MAKE_ARGS} CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS} -s 'EXPORT_NAME=createRgbAsm'" rgbasm
emmake make ${MAKE_ARGS} CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS} -s 'EXPORT_NAME=createRgbLink'" rgblink
emmake make ${MAKE_ARGS} CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS} -s 'EXPORT_NAME=createRgbFix'" rgbfix
```

and set of patches:

![Image](https://github.com/user-attachments/assets/7641204b-c4ec-4a0f-a42f-524741b62d71)

You can simply build rgbds-live for different versions
fx for `v0.9.2`
just call
```
cd rgbds && git clean -ffxd && git reset --hard && git checkout v0.9.2 && cd .. && ./build.sh
```

I can to PR if you wana (it doesn't distrupt github actions)

Contributor guide

No contributing guide indexed for this repository

Research direction

Review build-rgbds.sh, build.sh, and the patches directory, then try the documented checkout and build flow for rgbds v0.9.2. Clarify which major RGBDS releases need support and verify that rgbds-live builds for them without disrupting GitHub Actions.

Written by the indexing model from the issue text.

Assessment

Tech stack
shell
Domain
build-system, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.