Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 48 additions & 0 deletions .github/workflows/cd.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: CD

on:
push:
tags:
- 'v*'
workflow_dispatch:

defaults:
run:
shell: bash

# required for upload
permissions:
contents: write

jobs:
Linux:
runs-on: ${{ matrix.runner }}
strategy:
matrix:
runner: [ ubuntu-24.04, ubuntu-24.04-arm ]

steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: true

- name: Install dependencies
run: sudo apt update -y && sudo apt install -y build-essential libreadline-dev libsdl2-dev libsdl2-image-dev libsdl2-ttf-dev libsdl2-mixer-dev libglew-dev libpng-dev zip

- name: External submodule (Prism)
run: cd external/prism && make -f Makefile.linux

- name: Continuous Integration
run: make -f Makefile.linux

- name: Build zip
run: make -f Makefile.linux zip

- name: Create GitHub Release
uses: softprops/action-gh-release@v2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
files: |
*.zip
26 changes: 26 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: CI

on:
push:
branches: [ main, master ]
pull_request:
workflow_dispatch:

jobs:
Linux:
runs-on: ubuntu-latest

steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: true

- name: Install dependencies
run: sudo apt update -y && sudo apt install -y build-essential libreadline-dev libsdl2-dev libsdl2-image-dev libsdl2-ttf-dev libsdl2-mixer-dev libglew-dev libpng-dev

- name: External submodule (Prism)
run: cd external/prism && make -f Makefile.linux

- name: Continuous Integration
run: make -f Makefile.linux
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -73,4 +73,7 @@ tools/MakeYourOwnGameKitGui/.vs/*
*.ilk
*.psess
*.vspx
*.testdurations
*.testdurations
*.zip

Dolmexica_Infinite_Linux
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "external/prism"]
path = external/prism
url = https://github.com/humbertodias/prism.git
35 changes: 35 additions & 0 deletions Makefile.linux
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
include Makefile.common

TARGET = Dolmexica_Infinite_Linux
LIBPRISM_PATH = ./external/prism
CXXFLAGS += -DNDEBUG -Iinclude -I$(LIBPRISM_PATH)/include -I$(LIBPRISM_PATH)/external/imgui/inc `sdl2-config --cflags` -std=c++17 -O2
CXXLIBS += -L$(LIBPRISM_PATH) -lprism -lSDL2 -lSDL2_image -lSDL2_ttf -lSDL2_mixer -lSDL2main -lstdc++ -lm -lpng -lzstd -lpthread -lGL -lGLEW

OBJS += $(LIBPRISM_PATH)/external/imgui/src/imgui.o
OBJS += $(LIBPRISM_PATH)/external/imgui/src/imgui_widgets.o
OBJS += $(LIBPRISM_PATH)/external/imgui/src/imgui_impl_sdl2.o
OBJS += $(LIBPRISM_PATH)/external/imgui/src/imgui_draw.o
OBJS += $(LIBPRISM_PATH)/external/imgui/src/imgui_tables.o
OBJS += $(LIBPRISM_PATH)/linux/debugimgui_linux.o
OBJS += $(LIBPRISM_PATH)/external/imgui/src/imgui_impl_opengl3.o

ARCH := $(shell uname -m)
UNAME_S := $(shell uname -s)

all: $(TARGET)

$(TARGET): $(OBJS)
$(CC) -o $(TARGET) $(OBJS) `sdl2-config --cflags` $(CXXLIBS)

%.o : %.cpp
$(CC) -c $(CXXFLAGS) -o $@ $<

%.o : %.c
$(CC) -c -o $@ $<

clean:
-rm -f *.o
-rm -rf linux/*.o

zip:
zip -9 -r Dolmexica-Infinite-${UNAME_S}-${ARCH}.zip ${TARGET}
5 changes: 4 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
[![CI](https://github.com/CaptainDreamcast/DolmexicaInfinite/actions/workflows/ci.yml/badge.svg)](https://github.com/CaptainDreamcast/DolmexicaInfinite/actions/workflows/ci.yml)
[![CD](https://github.com/CaptainDreamcast/DolmexicaInfinite/actions/workflows/cd.yml/badge.svg)](https://github.com/CaptainDreamcast/DolmexicaInfinite/actions/workflows/cd.yml)

# Dolmexica Infinite
Something resembling a Mugen port for Sega Dreamcast.

[Get the current version of the engine here on itch.](https://captaindreamcast.itch.io/dolmexica-infinite)
[Get the current version of the engine here on itch.](https://captaindreamcast.itch.io/dolmexica-infinite)
1 change: 1 addition & 0 deletions external/prism
Submodule prism added at c11a03