Import games/julius, an open source re-implementation of the Caesar III

game engine.
ok sthen@

julius is an open source re-implementation of the Caesar III game
engine.

In Caesar III, players take on the role of a Roman governor, tasked with
building up a grand Roman city, in which they must ensure their citizens
have their needs met, that their city is safe and profitable, while
meeting various goals set for them and dealing with various disasters,
angry gods and hostile enemies.

While this package and the game engine are open source, one still needs
to provide the original game assets from Caesar III, which is not open
source. You will need to purchase the original game to use this package.
This commit is contained in:
bcallah 2018-05-11 15:07:02 +00:00
parent 89da268dd2
commit bade54a951
7 changed files with 119 additions and 0 deletions

23
games/julius/Makefile Normal file
View File

@ -0,0 +1,23 @@
# $OpenBSD: Makefile,v 1.1.1.1 2018/05/11 15:07:02 bcallah Exp $
# XXX: Use MASTER_SITES once a release comes out?
COMMENT = open source re-implementation of Caesar III game engine
DISTNAME = ${GH_PROJECT}-0.0.0.20180430
CATEGORIES = games x11
GH_ACCOUNT = bvschaik
GH_PROJECT = julius
GH_COMMIT = cb7ecdfdae9b4fbb6f61db6abb287a84dca2afb5
MAINTAINER = Brian Callahan <bcallah@openbsd.org>
# AGPLv3 only
PERMIT_PACKAGE_CDROM = Yes
WANTLIB += SDL2 SDL2_mixer c pthread
MODULES = devel/cmake
LIB_DEPENDS = devel/sdl2-mixer
.include <bsd.port.mk>

2
games/julius/distinfo Normal file
View File

@ -0,0 +1,2 @@
SHA256 (julius-0.0.0.20180430-cb7ecdfd.tar.gz) = JeX7CcYOMjPMYyH4+t9KllWE51WlyTkvhNEH6xjmDt4=
SIZE (julius-0.0.0.20180430-cb7ecdfd.tar.gz) = 2381827

View File

@ -0,0 +1,25 @@
$OpenBSD: patch-src_platform_julius_c,v 1.1.1.1 2018/05/11 15:07:02 bcallah Exp $
We're trying to get rid of libexecinfo.
Index: src/platform/julius.c
--- src/platform/julius.c.orig
+++ src/platform/julius.c
@@ -17,7 +17,7 @@
#include <stdio.h>
#include <stdlib.h>
-#if defined(__GNUC__) && !defined(__MINGW32__)
+#if defined(__GNUC__) && !defined(__MINGW32__) && !defined(__OpenBSD__)
#include <execinfo.h>
#endif
@@ -55,7 +55,7 @@ enum {
};
static void handler(int sig) {
-#if defined(__GNUC__) && !defined(__MINGW32__)
+#if defined(__GNUC__) && !defined(__MINGW32__) && !defined(__OpenBSD__)
void *array[100];
size_t size;

View File

@ -0,0 +1,25 @@
$OpenBSD: patch-test_sav_run_c,v 1.1.1.1 2018/05/11 15:07:02 bcallah Exp $
We're trying to get rid of libexecinfo.
Index: test/sav/run.c
--- test/sav/run.c.orig
+++ test/sav/run.c
@@ -3,7 +3,7 @@
#include "game/game.h"
#include "game/settings.h"
-#if defined(__GNUC__) && !defined(__MINGW32__)
+#if defined(__GNUC__) && !defined(__MINGW32__) && !defined(__OpenBSD__)
#include <execinfo.h>
#endif
@@ -22,7 +22,7 @@
static void handler(int sig)
{
-#if defined(__GNUC__) && !defined(__MINGW32__)
+#if defined(__GNUC__) && !defined(__MINGW32__) && !defined(__OpenBSD__)
void *array[100];
size_t size;

12
games/julius/pkg/DESCR Normal file
View File

@ -0,0 +1,12 @@
julius is an open source re-implementation of the Caesar III game
engine.
In Caesar III, players take on the role of a Roman governor, tasked with
building up a grand Roman city, in which they must ensure their citizens
have their needs met, that their city is safe and profitable, while
meeting various goals set for them and dealing with various disasters,
angry gods and hostile enemies.
While this package and the game engine are open source, one still needs
to provide the original game assets from Caesar III, which is not open
source. You will need to purchase the original game to use this package.

3
games/julius/pkg/PLIST Normal file
View File

@ -0,0 +1,3 @@
@comment $OpenBSD: PLIST,v 1.1.1.1 2018/05/11 15:07:02 bcallah Exp $
@bin bin/julius
share/doc/pkg-readmes/${FULLPKGNAME}

29
games/julius/pkg/README Normal file
View File

@ -0,0 +1,29 @@
$OpenBSD: README,v 1.1.1.1 2018/05/11 15:07:02 bcallah Exp $
+-----------------------------------------------------------------------
| Running ${FULLPKGNAME} on OpenBSD
+-----------------------------------------------------------------------
julius
======
julius requires the original game files from Caesar III to work
properly. These can come from an original CD or from GOG.com.
If using the GOG.com version, you must extract the files from
setup_caesar3_2.0.0.9.exe using the innoextract package. The files will
will be in a directory named app. You must keep this directory, though
it can be renamed and moved to a location of your choosing, and you can
delete everything else that is extracted from the exe, such as the tmp
directory.
The game can by run in two ways. First, it can be run from the app
directory itself, such as the following:
$ innoextract setup_caesar3_2.0.0.9.exe
$ cd app
$ julius
Or, it can be run as:
$ julius /path/to/app/
Note that in either case, save files will be saved to the app directory
so you must have write access to it.