My reply is at the bottom.  Please put your reply there too.
On Thu, 19 Dec 2019, David Griffith wrote:

My reply is at the bottom.  Please put your reply there too.
On Thu, 19 Dec 2019, Marcin Cieslak wrote:
On Thu, 19 Dec 2019, David Griffith wrote:


My reply is at the bottom.  Please put your reply there too.
On Wed, 18 Dec 2019, Marcin Cieslak wrote:
On Mon, 16 Dec 2019, David Griffith wrote:


I released version 2.50 of Frotz last month. Would someone please update ports to install this version?

I have never used that software but I gave it a try and:

* moved it to Gitlab
* applied fix for a https://gitlab.com/DavidGriffith/frotz/issues/180
* I think we do not need to generate soundcard.h manually anymore?

Now I am getting:

===>  Building for frotz-2.50
gmake[2]: Entering directory '/usr/home/saper/sw/FreeBSD/ports/games/frotz/work/frotz-9867a1f14da1e9c0707492d2ac74d1e8ffdd3a64-9867a1f14da1e9c0707492d2ac74d1e8ffdd3a64'
** Generating src/common/defs.h
** Generating src/common/git_hash.h
** ERROR UTF-8 support only works with ncursesw!
exit 2
gmake[2]: *** [Makefile:391: src/curses/ux_defines.h] Error 2

but then second "make" works just fine...

The OSS interface is deprecated for now. There's no need to go hunting around for soundcard.h anymore in favor of libao. I've resisted removing ux_audio_oss.c entirely because I'd like to someday reenable that for older machines and massage it into something for older Sun workstations.

Thank you. Is there any quick way to test if sound is working?

I have a couple sound-using games that should suffice.
https://661.org/proj/if/uninvited/uninvited.zblorb
https://661.org/proj/if/oldcode/soundtest.blb

The first is a reimplementation of Uninvited (https://en.wikipedia.org/wiki/Uninvited_(video_game)) and the second is intended to quickly and easily test all of Frotz's audio capabilities.

What about that ncursesw thing? I think it is NetBSD-specific?

It might be. The distinction between old BSD curses and ncurses has been a source of problems over the years. I'm puzzled as to why it would complain there because I went over curses stuff repeatedly with all the BSDs prior to releasing 2.50 and it still compiles fine outside of the ports system.

How is this patch supposed to be applied?

Just like as you did. Can you check if your ports tree is up to date?

The Makefile should have the following line:

# $FreeBSD: head/games/frotz/Makefile 442400 2017-06-02 15:43:42Z sunpoet $

If 442400 is a lower number, the ports tree needs updating, the way
to do it depends on the way you got it (I have used the portsnap method):

https://www.freebsd.org/doc/handbook/ports-using.html

That's the same top line that I have.  I updated it with Subversion.
After fixing them by hand, I noticed that the patch zeroed out patch-src_curses_ux__audio__oss.c instead of deleting it. That caused a complaint from the ports Makefile. After manually deleting that, I got the same error you did. So, now we're sort of on the same page. I'll prod at this over the next couple days. NetBSD already has 2.50 commited. Maybe borrowing from there will work.

I came up with a patch against the 2.44 ports entry that seems to work. Things have considerably changed since 2.44, so simply changing lines to point at Gitlab didn't work. The strange complaint about ncurses came about because the CURSES variable in the Makefile no longer contains LDFLAGS, but just a simple string: [curses|ncurses|ncursesw].

With this patch applied, you get both frotz without audio support and dumb frotz. For audio, some more libraries are required, but that should not pull in anything graphical. For the graphics-capable variant of Frotz, SDL2 is needed among other things.

I propose to add two additional ports entries for Frotz. One is "frotz-audio" which is simply curses Frotz with the audio subsystem compiled in and dumb Frotz along for the ride. This would be mutually-exclusive from the regular silent "frotz" entry for obvious reasons. The other would be "frotz-sdl" for the SDL interface.

For now, here's the patch for silent Frotz:

===cut here===
diff -ruP frotz-orig/Makefile frotz/Makefile
--- frotz-orig/Makefile 2017-06-02 08:43:42.000000000 -0700
+++ frotz/Makefile      2019-12-20 00:15:17.440596000 -0800
@@ -1,8 +1,8 @@
 # Created by: Andrey Zakhvatov
-# $FreeBSD: head/games/frotz/Makefile 442400 2017-06-02 15:43:42Z sunpoet $
+# $FreeBSD: tags/RELEASE_12_0_0/games/frotz/Makefile 442400 2017-06-02 
15:43:42Z sunpoet $

 PORTNAME=      frotz
-PORTVERSION=   2.44
+PORTVERSION=   2.50
 CATEGORIES=    games

 MAINTAINER=    po...@freebsd.org
@@ -11,31 +11,29 @@
 LICENSE=       GPLv2+
 LICENSE_FILE=  ${WRKSRC}/COPYING

-USE_GITHUB=    yes
-GH_ACCOUNT=    DavidGriffith
+USE_GITLAB=    yes
+GL_ACCOUNT=    DavidGriffith
+GL_COMMIT=     9867a1f14da1e9c0707492d2ac74d1e8ffdd3a64

 USES=          gmake ncurses

-MAKE_ARGS=     -e CURSES="${LDFLAGS} -lncurses"
 MAKE_ENV=      OPTS="${CFLAGS}" CONFIG_DIR="${PREFIX}/etc"

+ALL_TARGET=    nosound dumb
+INSTALL_TARGET=        frotz
+
 PLIST_FILES=   bin/frotz \
                man/man6/frotz.6.gz

-PORTDOCS=      AUTHORS BUGS ChangeLog HOW_TO_PLAY README
+PORTDOCS=      AUTHORS ChangeLog HOW_TO_PLAY README
 PORTEXAMPLES=  frotz.conf-big frotz.conf-small

-OPTIONS_DEFINE=                DOCS EXAMPLES DUMB OSS
-OPTIONS_DEFAULT=       OSS
+OPTIONS_DEFINE=                DOCS EXAMPLES DUMB
 DUMB_DESC=             Install dfrotz (dumb frotz)

-OSS_MAKE_ENV=          SOUND_DEFS='-DOSS_SOUND -DSOUND_DEV=\"/dev/dsp\"'
 DUMB_PLIST_FILES=      bin/dfrotz \
                        man/man6/dfrotz.6.gz
 DUMB_PORTDOCS= DUMB
-
-pre-build-OSS-on:
-       cd ${WRKSRC} && ${DO_MAKE_BUILD} soundcard.h

 do-install:
        ${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin/
diff -ruP frotz-orig/distinfo frotz/distinfo
--- frotz-orig/distinfo 2015-05-26 11:50:09.000000000 -0700
+++ frotz/distinfo      2019-12-19 17:34:11.328960000 -0800
@@ -1,2 +1,3 @@
-SHA256 (DavidGriffith-frotz-2.44_GH0.tar.gz) = 
dbb5eb3bc95275dcb984c4bdbaea58bc1f1b085b20092ce6e86d9f0bf3ba858f
-SIZE (DavidGriffith-frotz-2.44_GH0.tar.gz) = 276815
+TIMESTAMP = 1576709471
+SHA256 
(DavidGriffith-frotz-9867a1f14da1e9c0707492d2ac74d1e8ffdd3a64_GL0.tar.gz) = 
0fdbf055edd31e2f07b52f720a74a098d81b766a00a4103955edb2171d13b0d6
+SIZE (DavidGriffith-frotz-9867a1f14da1e9c0707492d2ac74d1e8ffdd3a64_GL0.tar.gz) 
= 346458
diff -ruP frotz-orig/files/patch-Makefile frotz/files/patch-Makefile
--- frotz-orig/files/patch-Makefile     1969-12-31 16:00:00.000000000 -0800
+++ frotz/files/patch-Makefile  2019-12-19 17:34:11.329550000 -0800
@@ -0,0 +1,11 @@
+--- Makefile.orig      2019-12-18 22:55:03 UTC
++++ Makefile
+@@ -297,7 +297,7 @@ ifneq ($(and $(wildcard $(GIT_DIR)),$(sh
+               $(NAME)src/doc/*.6 $(NAME)src/doc/frotz.conf* \
+               $(NAME)src/doc/Xresources  > /dev/null
+ else
+-        @echo "Not in a git repository or git command not found.  Cannot make a 
tarball."
++      @echo "Not in a git repository or git command not found.  Cannot make a 
tarball."
+ endif
+ + all: $(FROTZ_BIN) $(DFROTZ_BIN) $(SFROTZ_BIN)
Only in frotz-orig/files: patch-src_curses_ux__audio__oss.c
===cut here===

--
David Griffith
d...@661.org

A: Because it fouls the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing in e-mail?
_______________________________________________
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"

Reply via email to