freeciv, bump version (#2161)

This commit is contained in:
Schrijvers Luc
2018-02-14 01:33:56 +01:00
committed by waddlesplash
parent d147521504
commit f2698d55f8
2 changed files with 356 additions and 0 deletions

View File

@@ -0,0 +1,125 @@
SUMMARY="A free Civilization-like game"
DESCRIPTION="Freeciv is a free Civilization-like game, primarily \
for X under Unix. It has support for multiplayer games locally or \
over a network, and an AI which gives most people a run for their money.
Freeciv aims to be mostly rule-compatible with Civilization II [tm], \
published by Sid Meier and Microprose [tm]. A few rules are different \
where we think it makes more sense, and we have lots and lots of \
adjustable parameters to make customizing games possible.
Freeciv has been implemented completely independently of Civilization; \
you do not need to own Civilization to play Freeciv."
HOMEPAGE="http://www.freeciv.org/"
COPYRIGHT="1996-2018 The Freeciv Team"
LICENSE="GNU GPL v2"
REVISION="1"
SOURCE_URI="https://downloads.sourceforge.net/freeciv/freeciv-$portVersion.tar.bz2"
CHECKSUM_SHA256="c8a14156562dce2f0a7b96390c2d5a35314f1124c448782a6a47b0c51cfcb302"
PATCHES="freeciv-$portVersion.patchset"
ADDITIONAL_FILES="freeciv.rdef.in"
ARCHITECTURES="!x86_gcc2 x86 x86_64"
SECONDARY_ARCHITECTURES="x86"
commandSuffix=$secondaryArchSuffix
commandBinDir=$binDir
if [ -z "${ARCHITECTURES##*!$targetArchitecture*}" ]; then
commandSuffix=
commandBinDir=$prefix/bin
fi
GLOBAL_WRITABLE_FILES="
settings/freeciv/database.lua keep-old
"
PROVIDES="
freeciv$secondaryArchSuffix = $portVersion
app:FreeCiv = $portVersion
cmd:freeciv_manual$commandSuffix
cmd:freeciv_sdl$commandSuffix
cmd:freeciv_server$commandSuffix
lib:libfreeciv$secondaryArchSuffix
lib:libfreeciv_srv$secondaryArchSuffix
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libbz2$secondaryArchSuffix
lib:libcurl$secondaryArchSuffix
lib:libcrypto$secondaryArchSuffix
lib:libfreetype$secondaryArchSuffix
lib:libGL$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:liblua$secondaryArchSuffix
lib:liblzma$secondaryArchSuffix
lib:libreadline$secondaryArchSuffix
lib:libsdl_1.2$secondaryArchSuffix
lib:libsdl_gfx$secondaryArchSuffix
lib:libsdl_image_1.2$secondaryArchSuffix
lib:libsdl_mixer_1.2$secondaryArchSuffix
lib:libsdl_ttf_2.0$secondaryArchSuffix
lib:libssl$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libbz2$secondaryArchSuffix
devel:libcurl$secondaryArchSuffix
devel:libfreetype$secondaryArchSuffix
devel:libiconv$secondaryArchSuffix
devel:libintl$secondaryArchSuffix
devel:liblua$secondaryArchSuffix >= 5.2
devel:liblzma$secondaryArchSuffix
devel:libreadline$secondaryArchSuffix
devel:libsdl$secondaryArchSuffix
devel:libsdl_gfx$secondaryArchSuffix
devel:libsdl_image$secondaryArchSuffix
devel:libsdl_mixer$secondaryArchSuffix
devel:libsdl_ttf$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:aclocal
cmd:autoconf
cmd:find
cmd:gcc$secondaryArchSuffix
cmd:libtoolize$secondaryArchSuffix
cmd:make
cmd:pkg_config$secondaryArchSuffix
"
BUILD()
{
autoreconf -vfi
CFLAGS="-O2 -pipe" runConfigure --omit-dirs binDir ./configure \
--bindir=$commandBinDir --enable-client=sdl --enable-fcmp=no \
--enable-sys-lua --enable-shared --disable-static
make $jobArgs
}
INSTALL()
{
make install
mkdir -p $appsDir
ln -s $commandBinDir/freeciv-sdl $appsDir/Freeciv
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
local MINOR="`echo "$portVersion" | cut -d. -f3`"
local INTERNAL="0"
sed \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@MIDDLE@|$MIDDLE|" \
-e "s|@MINOR@|$MINOR|" \
-e "s|@INTERNAL@|$INTERNAL|" \
$portDir/additional-files/freeciv.rdef.in > freeciv.rdef
addResourcesToBinaries freeciv.rdef \
$appsDir/Freeciv
addAppDeskbarSymlink $appsDir/Freeciv
mv $prefix/share/* $dataRootDir
rmdir $prefix/share
rm -f $libDir/*.a $libDir/*.la
}

View File

@@ -0,0 +1,231 @@
From f682f43e7f5c0e770033d1ef0b57bebf870349b1 Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Sun, 5 Mar 2017 09:18:33 +0100
Subject: move ~/.freeciv to ~/config/settings/freeciv on Haiku.
diff --git a/configure.ac b/configure.ac
index b65af70..294c4ca 100644
--- a/configure.ac
+++ b/configure.ac
@@ -154,6 +154,7 @@ AM_CONDITIONAL(SERVER, test x$server = xyes)
dnl Host type variable defaults
MINGW32=no
AMIGA=no
+HAIKU=no
dnl Settings specific to host OS
case "$host_os" in
@@ -161,6 +162,9 @@ case "$host_os" in
*mingw32*)
dnl Windows-specific settings
MINGW32=yes ;;
+ *haiku*)
+ dnl Haiku-specific settings
+ HAIKU=yes ;;
esac
dnl Networking headers
@@ -1252,9 +1256,15 @@ if test x"$MINGW32" = xyes; then
fi
else
FC_CONF_PATH="$sysconfdir/freeciv"
- DEFAULT_DATA_PATH=".:data:~/.freeciv/$DATASUBDIR:$datadir/freeciv"
- DEFAULT_SAVE_PATH=".:~/.freeciv/saves"
- DEFAULT_SCENARIO_PATH=".:data/scenarios:~/.freeciv/$DATASUBDIR/scenarios:~/.freeciv/scenarios:$datadir/freeciv/scenarios"
+ if test x"$HAIKU" = xyes; then
+ DEFAULT_DATA_PATH=".:data:~/config/settings/freeciv/$DATASUBDIR:$datadir/freeciv"
+ DEFAULT_SAVE_PATH=".:~/config/settings/freeciv/saves"
+ DEFAULT_SCENARIO_PATH=".:data/scenarios:~/config/settings/freeciv/$DATASUBDIR/scenarios:~/config/settings/freeciv/scenarios:$datadir/freeciv/scenarios"
+ else
+ DEFAULT_DATA_PATH=".:data:~/.freeciv/$DATASUBDIR:$datadir/freeciv"
+ DEFAULT_SAVE_PATH=".:~/.freeciv/saves"
+ DEFAULT_SCENARIO_PATH=".:data/scenarios:~/.freeciv/$DATASUBDIR/scenarios:~/.freeciv/scenarios:$datadir/freeciv/scenarios"
+ fi
fi
CPPFLAGS="$CPPFLAGS -DFC_CONF_PATH=\"\\\"$FC_CONF_PATH\\\"\""
CPPFLAGS="$CPPFLAGS -DDEFAULT_DATA_PATH=\"\\\"$DEFAULT_DATA_PATH\\\"\""
--
2.16.1
From a0fc0b5f2b7ae56cc7ad2e9d8e6ba337f72e16f4 Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Sun, 5 Mar 2017 10:19:43 +0100
Subject: .freeciv => config/settings/freeciv
diff --git a/client/connectdlg_common.c b/client/connectdlg_common.c
index 0cb630b..95c1152 100644
--- a/client/connectdlg_common.c
+++ b/client/connectdlg_common.c
@@ -298,9 +298,17 @@ bool client_start_server(void)
argv[argc++] = "1";
argv[argc++] = "-e";
argv[argc++] = "--saves";
+#ifdef __HAIKU__
+ argv[argc++] = "~/config/settings/freeciv/saves";
+#else
argv[argc++] = "~/.freeciv/saves";
+#endif
argv[argc++] = "--scenarios";
+#ifdef __HAIKU__
+ argv[argc++] = "~/config/settings/freeciv/scenarios";
+#else
argv[argc++] = "~/.freeciv/scenarios";
+#endif
argv[argc++] = "-A";
argv[argc++] = "none";
if (logfile) {
@@ -435,10 +443,18 @@ bool client_start_server(void)
free(savefile_in_local_encoding);
}
+#ifdef __HAIKU__
+ interpret_tilde(savesdir, sizeof(savesdir), "~/config/settings/freeciv/saves");
+#else
interpret_tilde(savesdir, sizeof(savesdir), "~/.freeciv/saves");
+#endif
internal_to_local_string_buffer(savesdir, savescmdline, sizeof(savescmdline));
+#ifdef __HAIKU__
interpret_tilde(scensdir, sizeof(scensdir), "~/.freeciv/scenarios");
+#else
+ interpret_tilde(scensdir, sizeof(scensdir), "~/.freeciv/scenarios");
+#endif
internal_to_local_string_buffer(scensdir, scenscmdline, sizeof(scenscmdline));
fc_snprintf(options, sizeof(options),
@@ -596,7 +612,11 @@ void send_client_wants_hack(const char *filename)
/* get the full filename path */
interpret_tilde(challenge_fullname, sizeof(challenge_fullname),
+#ifdef __HAIKU__
+ "~/config/settings/freeciv/");
+#else
"~/.freeciv/");
+#endif
make_dir(challenge_fullname);
sz_strlcat(challenge_fullname, filename);
diff --git a/client/options.c b/client/options.c
index 8f0a1d5..6ad8626 100644
--- a/client/options.c
+++ b/client/options.c
@@ -19,6 +19,9 @@
#include <string.h>
#include <sys/stat.h>
#include <sys/types.h>
+#ifdef __HAIKU__
+ #include <libgen.h>
+#endif
/* utility */
#include "fcintl.h"
@@ -4617,7 +4620,11 @@ static void save_cma_presets(struct section_file *file)
/* Old rc file name. */
#define OLD_OPTION_FILE_NAME ".civclientrc"
/* New rc file name. */
-#define NEW_OPTION_FILE_NAME ".freeciv-client-rc-%d.%d"
+#ifdef __HAIKU__
+# define NEW_OPTION_FILE_NAME "config/settings/freeciv/freeciv-client-rc-%d.%d"
+#else
+# define NEW_OPTION_FILE_NAME ".freeciv-client-rc-%d.%d"
+#endif
#define MAJOR_NEW_OPTION_FILE_NAME MAJOR_VERSION
#if IS_DEVEL_VERSION && ! IS_FREEZE_VERSION
#define MINOR_NEW_OPTION_FILE_NAME (MINOR_VERSION + 1)
@@ -5337,6 +5344,13 @@ void options_save(option_save_log_callback log_cb)
/* insert global worklists */
global_worklists_save(sf);
+#ifdef __HAIKU__
+{
+ char path[PATH_MAX];
+ strcpy(path, name);
+ make_dir(dirname(path));
+}
+#endif
/* save to disk */
if (!secfile_save(sf, name, 0, FZ_PLAIN)) {
log_cb(LOG_ERROR, _("Save failed, cannot write to file %s"), name);
diff --git a/server/gamehand.c b/server/gamehand.c
index 35dcca5..9671dc6 100644
--- a/server/gamehand.c
+++ b/server/gamehand.c
@@ -1010,7 +1010,7 @@ static const char *get_challenge_fullname(struct connection *pc)
{
static char fullname[MAX_LEN_PATH];
- interpret_tilde(fullname, sizeof(fullname), "~/.freeciv/");
+ interpret_tilde(fullname, sizeof(fullname), "~/config/settings/freeciv/");
sz_strlcat(fullname, get_challenge_filename(pc));
return fullname;
diff --git a/server/sernet.c b/server/sernet.c
index 5bfbe3f..e17c8b4 100644
--- a/server/sernet.c
+++ b/server/sernet.c
@@ -42,6 +42,9 @@
#ifdef HAVE_LIBREADLINE
#include <readline/history.h>
#include <readline/readline.h>
+#ifdef __HAIKU__
+#include <libgen.h>
+#endif
#endif
#ifdef HAVE_SYS_SELECT_H
#include <sys/select.h>
@@ -163,7 +166,11 @@ static void handle_stdin_close(void)
#ifdef HAVE_LIBREADLINE
/****************************************************************************/
-#define HISTORY_FILENAME ".freeciv-server_history"
+#ifdef __HAIKU__
+# define HISTORY_FILENAME "config/settings/freeciv/server_history"
+#else
+# define HISTORY_FILENAME ".freeciv-server_history"
+#endif
#define HISTORY_LENGTH 100
static char *history_file = NULL;
@@ -517,6 +524,13 @@ enum server_events server_sniff_all_input(void)
strcpy(history_file, home_dir);
strcat(history_file, "/");
strcat(history_file, HISTORY_FILENAME);
+#ifdef __HAIKU__
+ {
+ char path[PATH_MAX];
+ strcpy(path, history_file);
+ make_dir(dirname(path));
+ }
+#endif
using_history();
read_history(history_file);
}
--
2.16.1
From 6e6f7b0388b559a91b35ff126973822ff6825b36 Mon Sep 17 00:00:00 2001
From: begasus <begasus@gmail.com>
Date: Sat, 10 Feb 2018 20:01:43 +0100
Subject: Fix header path to MagickWand.h
diff --git a/common/mapimg.c b/common/mapimg.c
index ad57fd0..9128e38 100644
--- a/common/mapimg.c
+++ b/common/mapimg.c
@@ -18,7 +18,7 @@
#include <stdarg.h>
#ifdef HAVE_MAPIMG_MAGICKWAND
- #include <wand/MagickWand.h>
+ #include <MagickWand/MagickWand.h>
#endif /* HAVE_MAPIMG_MAGICKWAND */
/* utility */
--
2.16.1