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
1 change: 1 addition & 0 deletions games/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -402,6 +402,7 @@ SUBDIR+= stone-soup
SUBDIR+= stone-soup-sdl
SUBDIR+= stratagus
SUBDIR+= sudoku-cli
SUBDIR+= suika3
SUBDIR+= supertux
SUBDIR+= supertuxkart
SUBDIR+= svb
Expand Down
4 changes: 4 additions & 0 deletions games/suika3/DESCR
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Suika3 is a high-performance cross-platform 2D game engine with
DSL for visual novels.

This package provides the core engine and tools for game development.
47 changes: 47 additions & 0 deletions games/suika3/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
DISTNAME= suika3-26.04.9
CATEGORIES= games
MASTER_SITES= ${MASTER_SITE_GITHUB:=awemorris/}
GITHUB_PROJECT= suika3
GITHUB_TAG= ${PKGVERSION_NOREV}

MAINTAINER= awe@noctvm.io
HOMEPAGE= https://github.com/awemorris/suika3
COMMENT= 2D game engine with DSL for visual novels
LICENSE= zlib

USE_LANGUAGES= c c++
USE_TOOLS+= pkg-config
USE_CMAKE= yes

DEPENDS+= noto-fonts-[0-9]*:../../fonts/noto-fonts

.include "options.mk"

CMAKE_CONFIGURE_ARGS+= -DSUIKA_DIR_DOCS="share/doc/suika3"
CMAKE_CONFIGURE_ARGS+= -DSUIKA_DIR_GAME="share/examples/suika3"
CMAKE_CONFIGURE_ARGS+= -DSUIKA_ENABLE_AOTCOMP=ON
CMAKE_CONFIGURE_ARGS+= -DSUIKA_ENABLE_BYTECOMP=ON
CMAKE_CONFIGURE_ARGS+= -DSUIKA_ENABLE_DIST=ON
CMAKE_CONFIGURE_ARGS+= -DSUIKA_ENABLE_I18N=ON
CMAKE_CONFIGURE_ARGS+= -DSUIKA_ENABLE_INSTALL=ON
CMAKE_CONFIGURE_ARGS+= -DSUIKA_ENABLE_PACK=ON

INSTALLATION_DIRS+= share/examples/suika3/game/system/font

# Create a symlink to NotoSans.
post-build:
${MKDIR} ${DESTDIR}${PREFIX}/share/examples/suika3/game/system/font
${LN} -s ${PREFIX}/share/fonts/X11/TTF/NotoSans-Regular.ttf \
${DESTDIR}${PREFIX}/share/examples/suika3/game/system/font/rounded-l-mplus-1c-bold.ttf

.include "../../archivers/brotli/buildlink3.mk"
.include "../../graphics/freetype2/buildlink3.mk"
.include "../../graphics/libjpeg-turbo/buildlink3.mk"
.include "../../graphics/png/buildlink3.mk"
.include "../../graphics/libwebp/buildlink3.mk"
.include "../../multimedia/libogg/buildlink3.mk"
.include "../../audio/libvorbis/buildlink3.mk"
.include "../../x11/libX11/buildlink3.mk"
.include "../../x11/libXext/buildlink3.mk"
.include "../../x11/libXpm/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
186 changes: 186 additions & 0 deletions games/suika3/PLIST
Original file line number Diff line number Diff line change
@@ -0,0 +1,186 @@
@comment $NetBSD$
bin/suika3
bin/suika3-aotc
bin/suika3-bcc
bin/suika3-pack
man/man1/suika3-aotc.1
man/man1/suika3-bcc.1
man/man1/suika3-pack.1
man/man1/suika3.1
share/doc/suika3/docs/anime.md
share/doc/suika3/docs/aot.md
share/doc/suika3/docs/build.md
share/doc/suika3/docs/config.md
share/doc/suika3/docs/eye-blink.md
share/doc/suika3/docs/getting-started.md
share/doc/suika3/docs/gui.md
share/doc/suika3/docs/index.md
share/doc/suika3/docs/intro.md
share/doc/suika3/docs/lip-sync.md
share/doc/suika3/docs/novelml-syntax.md
share/doc/suika3/docs/novelml-tags.md
share/doc/suika3/docs/plugin.md
share/doc/suika3/docs/ray-2d-api.md
share/doc/suika3/docs/ray-syntax.md
share/doc/suika3/docs/ray-vn-api.md
share/doc/suika3/docs/srs.md
share/doc/suika3/docs/sysmenu.md
share/examples/suika3/game/bg/black.png
share/examples/suika3/game/bg/school.png
share/examples/suika3/game/bg/white.png
share/examples/suika3/game/bgm/afternoon2.ogg
share/examples/suika3/game/ch/midori/eye/midori-normal.png
share/examples/suika3/game/ch/midori/eye/midori-positive.png
share/examples/suika3/game/ch/midori/eye/midori-smile.png
share/examples/suika3/game/ch/midori/lip/combined.png
share/examples/suika3/game/ch/midori/lip/midori-happy.png
share/examples/suika3/game/ch/midori/lip/midori-normal.png
share/examples/suika3/game/ch/midori/lip/midori-positive.png
share/examples/suika3/game/ch/midori/lip/midori-smile.png
share/examples/suika3/game/ch/midori/midori-happy.png
share/examples/suika3/game/ch/midori/midori-normal.png
share/examples/suika3/game/ch/midori/midori-smile.png
share/examples/suika3/game/ch/xiaoling/eye/xiaoling-normal.png
share/examples/suika3/game/ch/xiaoling/eye/xiaoling-smile.png
share/examples/suika3/game/ch/xiaoling/lip/xiaoling-happy.png
share/examples/suika3/game/ch/xiaoling/lip/xiaoling-normal.png
share/examples/suika3/game/ch/xiaoling/lip/xiaoling-smile.png
share/examples/suika3/game/ch/xiaoling/xiaoling-happy.png
share/examples/suika3/game/ch/xiaoling/xiaoling-normal.png
share/examples/suika3/game/ch/xiaoling/xiaoling-smile.png
share/examples/suika3/game/config.ini
share/examples/suika3/game/system/font/rounded-l-mplus-1c-bold.ttf
share/examples/suika3/game/main.ray
share/examples/suika3/game/rule/mask.png
share/examples/suika3/game/rule/suika.png
share/examples/suika3/game/se/click.ogg
share/examples/suika3/game/start.novel
share/examples/suika3/game/system/choose/button.ogg
share/examples/suika3/game/system/choose/hover.anime
share/examples/suika3/game/system/choose/hover.png
share/examples/suika3/game/system/choose/idle.anime
share/examples/suika3/game/system/choose/idle.png
share/examples/suika3/game/system/config/config-bar-hover.png
share/examples/suika3/game/system/config/config-bar-idle.png
share/examples/suika3/game/system/config/config-bar-knob.png
share/examples/suika3/game/system/config/config-base.png
share/examples/suika3/game/system/config/config-lang-en-active.png
share/examples/suika3/game/system/config/config-lang-en-hover.png
share/examples/suika3/game/system/config/config-lang-en-idle.png
share/examples/suika3/game/system/config/config-lang-jp-active.png
share/examples/suika3/game/system/config/config-lang-jp-hover.png
share/examples/suika3/game/system/config/config-lang-jp-idle.png
share/examples/suika3/game/system/config/config-preview.png
share/examples/suika3/game/system/config/config.gui
share/examples/suika3/game/system/config/reset-hover.png
share/examples/suika3/game/system/config/reset-idle.png
share/examples/suika3/game/system/effect/rain/1.png
share/examples/suika3/game/system/effect/rain/rain.anime
share/examples/suika3/game/system/font/rounded-l-mplus-1c-bold.ttf
share/examples/suika3/game/system/emoji/heart.png
share/examples/suika3/game/system/emoji/sweat.png
share/examples/suika3/game/system/history/history-bar-hover.png
share/examples/suika3/game/system/history/history-bar-idle.png
share/examples/suika3/game/system/history/history-bar-knob.png
share/examples/suika3/game/system/history/history-base.png
share/examples/suika3/game/system/history/history-item-hover.png
share/examples/suika3/game/system/history/history-item-idle.png
share/examples/suika3/game/system/history/history.gui
share/examples/suika3/game/system/load/load-base.png
share/examples/suika3/game/system/load/load-item-hover.png
share/examples/suika3/game/system/load/load-item-idle.png
share/examples/suika3/game/system/load/load-page-1-active.png
share/examples/suika3/game/system/load/load-page-1-hover.png
share/examples/suika3/game/system/load/load-page-1-idle.png
share/examples/suika3/game/system/load/load-page-2-active.png
share/examples/suika3/game/system/load/load-page-2-hover.png
share/examples/suika3/game/system/load/load-page-2-idle.png
share/examples/suika3/game/system/load/load-page-3-active.png
share/examples/suika3/game/system/load/load-page-3-hover.png
share/examples/suika3/game/system/load/load-page-3-idle.png
share/examples/suika3/game/system/load/load-page-4-active.png
share/examples/suika3/game/system/load/load-page-4-hover.png
share/examples/suika3/game/system/load/load-page-4-idle.png
share/examples/suika3/game/system/load/load-page-5-active.png
share/examples/suika3/game/system/load/load-page-5-hover.png
share/examples/suika3/game/system/load/load-page-5-idle.png
share/examples/suika3/game/system/load/load-page-active.anime
share/examples/suika3/game/system/load/load-page-hover.anime
share/examples/suika3/game/system/load/load-page-idle.anime
share/examples/suika3/game/system/load/load.gui
share/examples/suika3/game/system/menu/large-hover.png
share/examples/suika3/game/system/menu/large-idle.png
share/examples/suika3/game/system/menu/small-hover.png
share/examples/suika3/game/system/menu/small-idle.png
share/examples/suika3/game/system/message/auto-hide.anime
share/examples/suika3/game/system/message/auto-show.anime
share/examples/suika3/game/system/message/auto.png
share/examples/suika3/game/system/message/click1.png
share/examples/suika3/game/system/message/click2.png
share/examples/suika3/game/system/message/msgbox-hide.anime
share/examples/suika3/game/system/message/msgbox-show.anime
share/examples/suika3/game/system/message/msgbox.png
share/examples/suika3/game/system/message/namebox-hide.anime
share/examples/suika3/game/system/message/namebox-show.anime
share/examples/suika3/game/system/message/namebox.png
share/examples/suika3/game/system/message/skip-hide.anime
share/examples/suika3/game/system/message/skip-show.anime
share/examples/suika3/game/system/message/skip.png
share/examples/suika3/game/system/plugins/testplugin/testplugin.ray
share/examples/suika3/game/system/save/save-base.png
share/examples/suika3/game/system/save/save-item-hover.png
share/examples/suika3/game/system/save/save-item-idle.png
share/examples/suika3/game/system/save/save-page-1-active.png
share/examples/suika3/game/system/save/save-page-1-hover.png
share/examples/suika3/game/system/save/save-page-1-idle.png
share/examples/suika3/game/system/save/save-page-1.png
share/examples/suika3/game/system/save/save-page-2-active.png
share/examples/suika3/game/system/save/save-page-2-hover.png
share/examples/suika3/game/system/save/save-page-2-idle.png
share/examples/suika3/game/system/save/save-page-2.png
share/examples/suika3/game/system/save/save-page-3-active.png
share/examples/suika3/game/system/save/save-page-3-hover.png
share/examples/suika3/game/system/save/save-page-3-idle.png
share/examples/suika3/game/system/save/save-page-3.png
share/examples/suika3/game/system/save/save-page-4-active.png
share/examples/suika3/game/system/save/save-page-4-hover.png
share/examples/suika3/game/system/save/save-page-4-idle.png
share/examples/suika3/game/system/save/save-page-4.png
share/examples/suika3/game/system/save/save-page-5-active.png
share/examples/suika3/game/system/save/save-page-5-hover.png
share/examples/suika3/game/system/save/save-page-5-idle.png
share/examples/suika3/game/system/save/save-page-5.png
share/examples/suika3/game/system/save/save-page-active.anime
share/examples/suika3/game/system/save/save-page-hover.anime
share/examples/suika3/game/system/save/save-page-idle.anime
share/examples/suika3/game/system/save/save.gui
share/examples/suika3/game/system/sysbtn/anime-appear.anime
share/examples/suika3/game/system/sysbtn/anime-fadein.anime
share/examples/suika3/game/system/sysbtn/anime-fadeout.anime
share/examples/suika3/game/system/sysbtn/anime-hover.anime
share/examples/suika3/game/system/sysbtn/anime-out.anime
share/examples/suika3/game/system/sysbtn/sysbtn-hover.png
share/examples/suika3/game/system/sysbtn/sysbtn-idle.anime
share/examples/suika3/game/system/sysbtn/sysbtn-idle.png
share/examples/suika3/game/system/sysmenu/auto-hover.png
share/examples/suika3/game/system/sysmenu/auto-idle.png
share/examples/suika3/game/system/sysmenu/base.png
share/examples/suika3/game/system/sysmenu/config-hover.png
share/examples/suika3/game/system/sysmenu/config-idle.png
share/examples/suika3/game/system/sysmenu/item-hover.anime
share/examples/suika3/game/system/sysmenu/item-idle.anime
share/examples/suika3/game/system/sysmenu/load-hover.png
share/examples/suika3/game/system/sysmenu/load-idle.png
share/examples/suika3/game/system/sysmenu/log-hover.png
share/examples/suika3/game/system/sysmenu/log-idle.png
share/examples/suika3/game/system/sysmenu/save-hover.png
share/examples/suika3/game/system/sysmenu/save-idle.anime
share/examples/suika3/game/system/sysmenu/save-idle.png
share/examples/suika3/game/system/sysmenu/skip-hover.png
share/examples/suika3/game/system/sysmenu/skip-idle.png
share/examples/suika3/game/system/sysmenu/sysmenu.gui
share/examples/suika3/game/voice/001.ogg
share/examples/suika3/game/voice/002.ogg
share/examples/suika3/game/voice/003.ogg
share/examples/suika3/game/voice/004.ogg
share/examples/suika3/game/voice/005.ogg
5 changes: 5 additions & 0 deletions games/suika3/distinfo
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
$NetBSD$

BLAKE2s (suika3-26.04.9.tar.gz) = cfc1a5d2700dcca04b06a2b826698985f0bbcf4da28ae0af25ab9285f117a7ed
SHA512 (suika3-26.04.9.tar.gz) = 4ddab321aee07449b3683a8c93feed30fb53031e7815fe9d374cd980d113d44adae9f022059b04cf10e72da063b1f727e13a87da91fa86d75f212c9ff99d7265
Size (suika3-26.04.9.tar.gz) = 62235499 bytes
59 changes: 59 additions & 0 deletions games/suika3/options.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
PKG_OPTIONS_VAR= PKG_OPTIONS.suika3
PKG_SUPPORTED_OPTIONS= opengl gstreamer jit
PKG_SUGGESTED_OPTIONS= opengl gstreamer jit
PKG_OPTIONS_VAR= PKG_OPTIONS.suika3

.include "../../mk/bsd.options.mk"
.include "../../mk/bsd.prefs.mk"

#
# Gstreamer support
#
.if !empty(PKG_OPTIONS:Mgstreamer)
CMAKE_CONFIGURE_ARGS+= -DSUIKA_ENABLE_GST=ON
.include "../../multimedia/gstreamer1/buildlink3.mk"
.include "../../multimedia/gst-plugins1-base/buildlink3.mk"
.else
CMAKE_CONFIGURE_ARGS+= -DSUIKA_ENABLE_GST=OFF
.endif

#
# JIT support
#
.if !empty(PKG_OPTIONS:Mjit)
CMAKE_CONFIGURE_ARGS+= -DSUIKA_ENABLE_JIT=ON
.else
CMAKE_CONFIGURE_ARGS+= -DSUIKA_ENABLE_JIT=OFF
.endif

#
# OpenGL support
#

.if ${OPSYS} == "NetBSD"
.if !empty(PKG_OPTIONS:Mopengl)
CMAKE_CONFIGURE_ARGS+= -DSUIKA_TARGET_NETBSD=ON
.include "../../graphics/MesaLib/buildlink3.mk"
.else
CMAKE_CONFIGURE_ARGS+= -DSUIKA_TARGET_NETBSD_X11SOFT=ON
.endif
.endif

.if ${OPSYS} == "FreeBSD"
.if !empty(PKG_OPTIONS:Mopengl)
CMAKE_CONFIGURE_ARGS+= -DSUIKA_TARGET_FREEBSD=ON
.else
CMAKE_CONFIGURE_ARGS+= -DSUIKA_TARGET_FREEBSD_X11SOFT=ON
.endif
.endif

.if ${OPSYS} == "Linux"
.if !empty(PKG_OPTIONS:Mopengl)
CMAKE_CONFIGURE_ARGS+= -DSUIKA_TARGET_LINUX=ON
.else
CMAKE_CONFIGURE_ARGS+= -DSUIKA_TARGET_LINUX_X11SOFT=ON
.endif
.endif

# For other systems, leave it to the auto detection on CMakeLists.txt.