diff --git a/distro-files/root/id1/pak0.pak b/distro-files/root/id1/pak0.pak new file mode 100644 index 00000000..88c2532d Binary files /dev/null and b/distro-files/root/id1/pak0.pak differ diff --git a/patches/tyrquake/jinx-working-patch.patch b/patches/tyrquake/jinx-working-patch.patch new file mode 100644 index 00000000..6dc859e0 --- /dev/null +++ b/patches/tyrquake/jinx-working-patch.patch @@ -0,0 +1,76 @@ +diff --git tyrquake-clean/Makefile tyrquake-workdir/Makefile +index 5709a79..9e492f9 100644 +--- tyrquake-clean/Makefile ++++ tyrquake-workdir/Makefile +@@ -14,12 +14,12 @@ DOC_DIR ?= doc + DIST_DIR ?= dist + DEBUG ?= N# Compile with debug info + OPTIMIZED_CFLAGS ?= Y# Enable compiler optimisations (if DEBUG != Y) +-USE_X86_ASM ?= $(I386_GUESS) +-USE_SDL ?= N# New (experimental) SDL video/sound/input targets +-LOCALBASE ?= /usr/local ++USE_X86_ASM ?= N ++USE_SDL ?= Y# New (experimental) SDL video/sound/input targets ++LOCALBASE ?= /usr/ + QBASEDIR ?= .# Default basedir for quake data files (Linux/BSD only) +-TARGET_OS ?= $(HOST_OS) +-TARGET_UNIX ?= $(if $(filter UNIX,$(TARGET_OS)),$(HOST_UNIX),) ++TARGET_OS ?= UNIX ++TARGET_UNIX ?= Astral + + # ============================================================================ + +@@ -134,6 +134,10 @@ ifeq ($(TARGET_UNIX),linux) + CD_TARGET ?= linux + SND_TARGET ?= pulseaudio + endif ++ifeq ($(TARGET_UNIX),Astral) ++CD_TARGET ?= null ++SND_TARGET ?= null ++endif + endif + + ifneq (,$(findstring $(TARGET_OS),WIN32 WIN64)) +@@ -349,9 +353,9 @@ QWSWDIR = $(BUILD_DIR)/qwsw + QWGLDIR = $(BUILD_DIR)/qwgl + QWSVDIR = $(BUILD_DIR)/qwsv + +-APPS = tyr-quake$(EXT) tyr-glquake$(EXT) \ +- tyr-qwcl$(EXT) tyr-glqwcl$(EXT) \ +- tyr-qwsv$(EXT) ++APPS = tyr-quake$(EXT) #tyr-glquake$(EXT) \ ++ #tyr-qwcl$(EXT) tyr-glqwcl$(EXT) \ ++ #tyr-qwsv$(EXT) + + default: all + +@@ -936,7 +940,7 @@ CL_CPPFLAGS += -DX11 + CL_OBJS += x11_core.o vid_x11_common.o + SW_OBJS += vid_x.o + GL_OBJS += vid_glx.o +-CL_LIBS += X11 Xext Xxf86vm ++CL_LIBS += X11 Xext Xxf86vm c + ifneq ($(X11BASE),) + CL_CPPFLAGS += -idirafter $(X11BASE)/include + CL_LFLAGS += $(call libdir-check,$(X11BASE)/lib) +diff --git tyrquake-clean/common/snd_dma.c tyrquake-workdir/common/snd_dma.c +index 8e4852b..06656c0 100644 +--- tyrquake-clean/common/snd_dma.c ++++ tyrquake-workdir/common/snd_dma.c +@@ -243,7 +243,7 @@ S_InitAmbients() + void + S_Init(void) + { +- if (COM_CheckParm("-nosound")) ++// if (COM_CheckParm("-nosound")) + return; + + if (COM_CheckParm("-simsound")) +@@ -279,6 +279,7 @@ S_Init(void) + void + S_ClearOverflow() + { ++ return; + S_StopAllSounds(true); + struct known_sfx *known = known_sfx->overflow; + diff --git a/recipes/tyrquake b/recipes/tyrquake new file mode 100644 index 00000000..60ad732f --- /dev/null +++ b/recipes/tyrquake @@ -0,0 +1,16 @@ +name=tyrquake +revision=1 +from_source=tyrquake +imagedeps="base-devel" +hostdeps="xgcc xbinutils" +deps="mlibc libx11 libxext libxxf86vm sdl2" + +build() { + cp -rp ${source_dir}/* . + make -j${parallelism} CC=x86_64-astral-gcc LFLAGS="-lc" V=1 LOCALBASE=${sysroot_dir} SDL_CFLAGS="-I${sysroot_dir}/${prefix}/include/SDL2" SDL_LFLAGS="-lSDL2" DEBUG=Y CD_TARGET=null CFLAGS=-msse2 +} + +package() { + mkdir -p ${dest_dir}/${prefix}/bin + cp -vf bin/* ${dest_dir}/${prefix}/bin/ +} diff --git a/source-recipes/tyrquake b/source-recipes/tyrquake new file mode 100644 index 00000000..b34df1f2 --- /dev/null +++ b/source-recipes/tyrquake @@ -0,0 +1,9 @@ +name=tyrquake +version=0.71 +source_method=tarball +tarball_url="https://disenchant.net/files/engine/tyrquake-${version}.tar.gz" +tarball_sha512=ecceeecb43866c10c0669b4362ce2eda7a790c502764b3d644566e7637ffbde0548676c9dcea07963db0d91d83c248e3497603c0a3a2e1a12a1418a82c07179a + +regenerate() { + true +} diff --git a/util/cmake b/util/cmake new file mode 100644 index 00000000..6d4d53e6 --- /dev/null +++ b/util/cmake @@ -0,0 +1,16 @@ +set(CMAKE_SYSTEM_NAME Astral) + +set(CMAKE_FIND_ROOT_PATH /sysroot) + +set(CMAKE_C_COMPILER x86_64-astral-gcc) +set(CMAKE_CXX_COMPILER x86_64-astral-g++) + +# search for programs in the build host directories +SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +# for libraries and headers in the target directories +SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) + +# flags for shared libraries +set(CMAKE_SHARED_LIBRARY_SONAME_C_FLAG "-Wl,-soname,") +set(CMAKE_PLATFORM_USES_PATH_WHEN_NO_SONAME 1)