On Fri, Dec 28, 2018 at 11:17:33AM -0500, Brian Callahan wrote:
> 
> 
> On 12/26/18 6:52 PM, Brian Callahan wrote:
> > 
> > 
> > On 12/26/18 6:43 PM, Jonathan Gray wrote:
> > > On Wed, Dec 26, 2018 at 06:06:14PM -0500, Brian Callahan wrote:
> > > > 
> > > > On 12/26/18 6:00 PM, Jonathan Gray wrote:
> > > > > On Wed, Dec 26, 2018 at 09:24:18AM -0500, Brian Callahan wrote:
> > > > > > On 12/25/18 6:26 PM, Jonathan Gray wrote:
> > > > > > > On Tue, Dec 25, 2018 at 10:35:02AM -0500, Brian Callahan wrote:
> > > > > > > > Hi ports --
> > > > > > > > 
> > > > > > > > Attached is a new port, games/bstone. BStone is
> > > > > > > > a source port of Blake Stone
> > > > > > > > FPS game series engine.
> > > > > > > > 
> > > > > > > > ---
> > > > > > > > pkg/DESCR:
> > > > > > > > BStone is a source port of the Blake Stone game
> > > > > > > > series games Aliens of
> > > > > > > > Gold and Planet Strike.
> > > > > > > > 
> > > > > > > > Features:
> > > > > > > > * High resolution rendering of the world (extended vanilla 
> > > > > > > > engine)
> > > > > > > > * Modern and vanilla controls
> > > > > > > > * Customizable control bindings
> > > > > > > > * Separate volume control for sound effects and music
> > > > > > > > 
> > > > > > > > Note that while this package is open source, the
> > > > > > > > games are not. You must
> > > > > > > > purchase at least one of the games in order to use this package.
> > > > > > > Aliens of Gold shareware worked when I tried a while ago.
> > > > > > You're right. Minor wording tweaks to note that.
> > > > > > 
> > > > > > ~Brian
> > > > > Doesn't build on amd64 here
> > > > > 
> > > > > ===>?? Checking files for bstone-1.1.9.1
> > > > > `/usr/ports/distfiles/bstone-1.1.9.1-48c286fb.tar.gz' is up to date.
> > > > > > > (SHA256) bstone-1.1.9.1-48c286fb.tar.gz: OK
> > > > > ===> bstone-1.1.9.1 depends on: cmake-* -> cmake-3.10.2p1v0
> > > > > ===> bstone-1.1.9.1 depends on: ninja->=1.5.1 -> ninja-1.8.2p0
> > > > > ===> bstone-1.1.9.1 depends on: sdl2-* -> sdl2-2.0.8p1
> > > > > ===>?? Verifying specs:?? c++ c++abi pthread SDL2 c m
> > > > > ===>?? found c++.2.0 c++abi.0.1 pthread.25.1 SDL2.0.5 c.93.0 m.10.1
> > > > > ===>?? Extracting for bstone-1.1.9.1
> > > > > ===>?? Patching for bstone-1.1.9.1
> > > > > ===>???? Applying OpenBSD patch patch-src_CMakeLists_txt
> > > > > Hmm...?? Looks like a unified diff to me...
> > > > > The text leading up to this was:
> > > > > --------------------------
> > > > > |$OpenBSD$
> > > > > |
> > > > > |Install binary to the correct location.
> > > > > |We don't need to install these text files.
> > > > > |
> > > > > |Index: src/CMakeLists.txt
> > > > > |--- src/CMakeLists.txt.orig
> > > > > |+++ src/CMakeLists.txt
> > > > > --------------------------
> > > > > Patching file src/CMakeLists.txt using Plan A...
> > > > > Hunk #1 succeeded at 358.
> > > > > done
> > > > > ===>???? Applying OpenBSD patch patch-src_jm_free_cpp
> > > > > Hmm...?? Looks like a unified diff to me...
> > > > > The text leading up to this was:
> > > > > --------------------------
> > > > > |$OpenBSD$
> > > > > |
> > > > > |Prevent segfault during intro movies.
> > > > > |
> > > > > |Index: src/jm_free.cpp
> > > > > |--- src/jm_free.cpp.orig
> > > > > |+++ src/jm_free.cpp
> > > > > --------------------------
> > > > > Patching file src/jm_free.cpp using Plan A...
> > > > > Hunk #1 succeeded at 948.
> > > > > done
> > > > > ===>???? Applying OpenBSD patch patch-src_jm_tp_cpp
> > > > > Hmm...?? Looks like a unified diff to me...
> > > > > The text leading up to this was:
> > > > > --------------------------
> > > > > |$OpenBSD$
> > > > > |
> > > > > |Prevent segfault on level load.
> > > > > |
> > > > > |Index: src/jm_tp.cpp
> > > > > |--- src/jm_tp.cpp.orig
> > > > > |+++ src/jm_tp.cpp
> > > > > --------------------------
> > > > > Patching file src/jm_tp.cpp using Plan A...
> > > > > Hunk #1 succeeded at 3360.
> > > > > done
> > > > > ===>?? Compiler link: clang -> /usr/bin/clang
> > > > > ===>?? Compiler link: clang++ -> /usr/bin/clang++
> > > > > ===>?? Compiler link: cc -> /usr/bin/cc
> > > > > ===>?? Compiler link: c++ -> /usr/bin/c++
> > > > > ===>?? Generating configure for bstone-1.1.9.1
> > > > > ===>?? Configuring for bstone-1.1.9.1
> > > > > -- The CXX compiler identification is Clang 6.0.0
> > > > > -- Check for working CXX compiler:
> > > > > /usr/ports/pobj/bstone-1.1.9.1/bin/c++
> > > > > -- Check for working CXX compiler:
> > > > > /usr/ports/pobj/bstone-1.1.9.1/bin/c++ -- works
> > > > > -- Detecting CXX compiler ABI info
> > > > > -- Detecting CXX compiler ABI info - done
> > > > > -- Detecting CXX compile features
> > > > > -- Detecting CXX compile features - done
> > > > > -- Looking for C++ include pthread.h
> > > > > -- Looking for C++ include pthread.h - found
> > > > > -- Looking for pthread_create
> > > > > -- Looking for pthread_create - found
> > > > > -- Found Threads: TRUE
> > > > > -- Found SDL:
> > > > > /usr/local/lib/libSDL2main.a;/usr/local/lib/libSDL2.so.0.5
> > > > > -- Configuring done
> > > > > -- Generating done
> > > > > -- Build files have been written to:
> > > > > /usr/ports/pobj/bstone-1.1.9.1/build-amd64
> > > > > ===>?? Building for bstone-1.1.9.1
> > > > > [1/65] /usr/ports/pobj/bstone-1.1.9.1/bin/c++ 
> > > > > -I/usr/ports/pobj/bstone-1.1.9.1/bstone-48c286fb1012f6faa9dbf4b0f237e2b19ce01ac5/src/dosbox
> > > > > -O2 -pipe -DNDEBUG???? -std=c++11 -MD -MT
> > > > > CMakeFiles/bstone.dir/bstone_sha1.cpp.o -MF
> > > > > CMakeFiles/bstone.dir/bstone_sha1.cpp.o.d -o
> > > > > CMakeFiles/bstone.dir/bstone_sha1.cpp.o -c 
> > > > > /usr/ports/pobj/bstone-1.1.9.1/bstone-48c286fb1012f6faa9dbf4b0f237e2b19ce01ac5/src/bstone_sha1.cpp
> > > > > [2/65] /usr/ports/pobj/bstone-1.1.9.1/bin/c++ 
> > > > > -I/usr/ports/pobj/bstone-1.1.9.1/bstone-48c286fb1012f6faa9dbf4b0f237e2b19ce01ac5/src/dosbox
> > > > > -O2 -pipe -DNDEBUG???? -std=c++11 -MD -MT
> > > > > CMakeFiles/bstone.dir/bstone_sprite_cache.cpp.o -MF
> > > > > CMakeFiles/bstone.dir/bstone_sprite_cache.cpp.o.d -o
> > > > > CMakeFiles/bstone.dir/bstone_sprite_cache.cpp.o -c 
> > > > > /usr/ports/pobj/bstone-1.1.9.1/bstone-48c286fb1012f6faa9dbf4b0f237e2b19ce01ac5/src/bstone_sprite_cache.cpp
> > > > > [3/65] /usr/ports/pobj/bstone-1.1.9.1/bin/c++ 
> > > > > -I/usr/ports/pobj/bstone-1.1.9.1/bstone-48c286fb1012f6faa9dbf4b0f237e2b19ce01ac5/src/dosbox
> > > > > -O2 -pipe -DNDEBUG???? -std=c++11 -MD -MT
> > > > > CMakeFiles/bstone.dir/3d_agent.cpp.o -MF
> > > > > CMakeFiles/bstone.dir/3d_agent.cpp.o.d -o
> > > > > CMakeFiles/bstone.dir/3d_agent.cpp.o -c 
> > > > > /usr/ports/pobj/bstone-1.1.9.1/bstone-48c286fb1012f6faa9dbf4b0f237e2b19ce01ac5/src/3d_agent.cpp
> > > > > FAILED: CMakeFiles/bstone.dir/3d_agent.cpp.o
> > > > > /usr/ports/pobj/bstone-1.1.9.1/bin/c++ 
> > > > > -I/usr/ports/pobj/bstone-1.1.9.1/bstone-48c286fb1012f6faa9dbf4b0f237e2b19ce01ac5/src/dosbox
> > > > > -O2 -pipe -DNDEBUG???? -std=c++11 -MD -MT
> > > > > CMakeFiles/bstone.dir/3d_agent.cpp.o -MF
> > > > > CMakeFiles/bstone.dir/3d_agent.cpp.o.d -o
> > > > > CMakeFiles/bstone.dir/3d_agent.cpp.o -c 
> > > > > /usr/ports/pobj/bstone-1.1.9.1/bstone-48c286fb1012f6faa9dbf4b0f237e2b19ce01ac5/src/3d_agent.cpp
> > > > > In file included from 
> > > > > /usr/ports/pobj/bstone-1.1.9.1/bstone-48c286fb1012f6faa9dbf4b0f237e2b19ce01ac5/src/3d_agent.cpp:27:
> > > > > In file included from 
> > > > > /usr/ports/pobj/bstone-1.1.9.1/bstone-48c286fb1012f6faa9dbf4b0f237e2b19ce01ac5/src/3d_def.h:31:
> > > > > /usr/ports/pobj/bstone-1.1.9.1/bstone-48c286fb1012f6faa9dbf4b0f237e2b19ce01ac5/src/id_heads.h:45:10:
> > > > > fatal error: 'SDL.h' file not found
> > > > > #include "SDL.h"
> > > > > ???????????????????? ^~~~~~~
> > > > > 1 error generated.
> > > > > ninja: build stopped: subcommand failed.
> > > > > *** Error 1 in . (/usr/ports/devel/cmake/cmake.port.mk:39
> > > > > 'do-build': @cd /usr/ports/pobj/bstone-1.1.9.1/build-amd64
> > > > > && exec /usr/bin/env -i...)
> > > > > *** Error 1 in .
> > > > > (/usr/ports/infrastructure/mk/bsd.port.mk:2782
> > > > > '/usr/ports/pobj/bstone-1.1.9.1/build-amd64/.build_done')
> > > > > *** Error 1 in .
> > > > > (/usr/ports/infrastructure/mk/bsd.port.mk:2009
> > > > > '/usr/ports/packages/amd64/all/bstone-1.1.9.1.tgz')
> > > > > *** Error 1 in .
> > > > > (/usr/ports/infrastructure/mk/bsd.port.mk:2475
> > > > > '_internal-package')
> > > > > *** Error 1 in /usr/ports/ports-wip/games/bstone
> > > > > (/usr/ports/infrastructure/mk/bsd.port.mk:2454 'package')
> > > > Interesting. If you add this line to the port Makefile, does
> > > > that do the
> > > > trick:
> > > > CONFIGURE_ARGS =?????????????? -DCMAKE_CXX_FLAGS="${CXXFLAGS}
> > > > -I${LOCALBASE}/include/SDL2"
> > > It builds with
> > > 
> > > CONFIGURE_ARGS += \
> > > ???????? -DCMAKE_CXX_FLAGS="${CXXFLAGS} `pkg-config --cflags sdl2`" \
> > > ???????? -DCMAKE_EXE_LINKER_FLAGS="`pkg-config --libs sdl2`"
> > 
> > Cool. I'll add that. Odd that it picked that stuff up for me but
> > whatever I've learned not to ask questions about such things any more.
> > 
> > > But the shareware version fails at runtime with a window
> > > displaying "CRITICAL: Mismatch GFX header offset count".
> > > 
> > > The 1.1.8 (146910eeb7109dc4ccd2243bae7cfabeb258c2a7) build I had
> > > previously
> > > built myself works.
> > > 
> > > Shareware version obtained from
> > > ftp://ftp.3drealms.com/share/1bs30.zip
> > 
> > Looks like upstream did some "fixing" work on the shareware version
> > since the 1.1.8 version. I'll raise an issue upstream.
> > 
> > ~Brian
> > 
> 
> Turns out that in between my sending the port and now, upstream committed a
> large refactoring that fixes the problem with the shareware version.
> 
> So, new version of the port attached, which I've tested with the shareware
> version and the two GOG games.
> 
> ~Brian

This version works with the shareware here as well.

I'm curious what the segfault during the opening animation is but that
only occurs with the full version?

Is it worth mentioning that the registered versions of the game data are
also available on steam as part of the apogee throwback pack and as
distinct titles (which seems to be from the 3d realms anthology which
was discontinued when interceptor entertainment/3d realms lost the
rights to duke nukem).

Otherwise I'm ok with this.  Might be nice to put the binary in a libexec
dir and have a script in bin that runs the game with --data_dir 
${LOCALBASE}/share/bstone or set the default data directory in the code
to something other than the current directory.

Reply via email to