1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-30 10:38:37 +00:00

Add devel/rgbds

RGBDS is a free GBZ80 assembler/linker package for the Game Boy and
Game Boy Color.  RGBDS additionally contains 2 extra tools to fix
ROM headers, and convert PNG files to the Game Boy's planar tile
format.

The binaries it provides are:
rgbasm(1) (assembler)
rgblink(1) (linker)
rgbfix(1) (checksum/header fixer)
rgbgfx(1) (PNG-to-Game Boy graphics converter)

WWW: https://rgbds.gbdev.io/

PR:		243645
Submitted by:	trigex@waifu.club (old version 0.3.9)
This commit is contained in:
Tobias Kortkamp 2021-03-10 06:26:22 +00:00
parent b79a15d92b
commit 50520900c9
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=567985
6 changed files with 78 additions and 0 deletions

View File

@ -5420,6 +5420,7 @@
SUBDIR += reproc
SUBDIR += resolv_wrapper
SUBDIR += revive
SUBDIR += rgbds
SUBDIR += rhtvision
SUBDIR += rinutils
SUBDIR += riscv32-unknown-elf-gcc

19
devel/rgbds/Makefile Normal file
View File

@ -0,0 +1,19 @@
# $FreeBSD$
PORTNAME= rgbds
DISTVERSION= 0.5.0-rc1
CATEGORIES= devel games
MASTER_SITES= https://github.com/gbdev/rgbds/releases/download/v${DISTVERSION}/
MAINTAINER= tobik@FreeBSD.org
COMMENT= Free assembler/linker for the Game Boy & Game Boy Color
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
LIB_DEPENDS= libpng.so:graphics/png
USES= bison dos2unix pkgconfig
WRKSRC= ${WRKDIR}/rgbds
.include <bsd.port.mk>

3
devel/rgbds/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1615356903
SHA256 (rgbds-0.5.0-rc1.tar.gz) = fcb894573a606880e2799b98962b4aba40757a9ddeb8f3163bf0db0a455f8e01
SIZE (rgbds-0.5.0-rc1.tar.gz) = 7920373

View File

@ -0,0 +1,30 @@
In file included from src/asm/charmap.c:22:
include/hashmap.h:18:15: error: expected parameter declarator
static_assert(HALF_HASH_NB_BITS * 2 == HASH_NB_BITS, "");
^
include/hashmap.h:17:27: note: expanded from macro 'HALF_HASH_NB_BITS'
#define HALF_HASH_NB_BITS 16
^
include/hashmap.h:18:15: error: expected ')'
include/hashmap.h:17:27: note: expanded from macro 'HALF_HASH_NB_BITS'
#define HALF_HASH_NB_BITS 16
^
include/hashmap.h:18:14: note: to match this '('
static_assert(HALF_HASH_NB_BITS * 2 == HASH_NB_BITS, "");
^
include/hashmap.h:18:1: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
static_assert(HALF_HASH_NB_BITS * 2 == HASH_NB_BITS, "");
^
1 warning and 2 errors generated.
--- Makefile.orig 2021-03-10 06:20:18 UTC
+++ Makefile
@@ -35,7 +35,7 @@ WARNFLAGS := -Wall
# Overridable CFLAGS
CFLAGS ?= -O3 -flto -DNDEBUG
# Non-overridable CFLAGS
-REALCFLAGS := ${CFLAGS} ${WARNFLAGS} -std=gnu11 -D_POSIX_C_SOURCE=200809L \
+REALCFLAGS := ${CFLAGS} ${WARNFLAGS} -std=gnu11 \
-Iinclude
# Overridable LDFLAGS
LDFLAGS ?=

12
devel/rgbds/pkg-descr Normal file
View File

@ -0,0 +1,12 @@
RGBDS is a free GBZ80 assembler/linker package for the Game Boy and
Game Boy Color. RGBDS additionally contains 2 extra tools to fix
ROM headers, and convert PNG files to the Game Boy's planar tile
format.
The binaries it provides are:
rgbasm(1) (assembler)
rgblink(1) (linker)
rgbfix(1) (checksum/header fixer)
rgbgfx(1) (PNG-to-Game Boy graphics converter)
WWW: https://rgbds.gbdev.io/

13
devel/rgbds/pkg-plist Normal file
View File

@ -0,0 +1,13 @@
bin/rgbasm
bin/rgbfix
bin/rgbgfx
bin/rgblink
share/man/man1/rgbasm.1.gz
share/man/man1/rgbfix.1.gz
share/man/man1/rgbgfx.1.gz
share/man/man1/rgblink.1.gz
share/man/man5/rgbasm.5.gz
share/man/man5/rgbds.5.gz
share/man/man5/rgblink.5.gz
share/man/man7/gbz80.7.gz
share/man/man7/rgbds.7.gz