forked from github/server
Merge pull request #570 from ennorehling/develop
improved versioning through version.c
This commit is contained in:
commit
7e0abeb9fc
|
@ -60,7 +60,7 @@ CONFIGURE_FILE (
|
|||
${CMAKE_CURRENT_SOURCE_DIR}/autoconf.h.in
|
||||
${CMAKE_BINARY_DIR}/include/autoconf.h)
|
||||
INCLUDE_DIRECTORIES (${CMAKE_BINARY_DIR}/include)
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DUSE_AUTOCONF")
|
||||
add_definitions(-DUSE_AUTOCONF)
|
||||
|
||||
add_subdirectory (cutest)
|
||||
add_subdirectory (cJSON)
|
||||
|
|
|
@ -20,6 +20,6 @@ $ROOT/$BUILD/eressea/eressea -v0 scripts/run-tests.lua
|
|||
$ROOT/$BUILD/eressea/eressea -v0 scripts/run-tests-e2.lua
|
||||
$ROOT/$BUILD/eressea/eressea -v0 scripts/run-tests-e3.lua
|
||||
$ROOT/$BUILD/eressea/eressea -v0 scripts/run-tests-e4.lua
|
||||
rm -rf data reports orders.txt score score.alliances
|
||||
rm -rf data reports orders.txt score score.alliances datum turn
|
||||
|
||||
cd $OLDWPD
|
||||
|
|
|
@ -3,6 +3,8 @@ local autoseed = {}
|
|||
-- minimum required resources in the 7-hex neighborhood:
|
||||
local peasants = 10000
|
||||
local trees = 800
|
||||
-- minimum resources in the region itself:
|
||||
local min_peasants = 2000
|
||||
-- number of starters per region:
|
||||
local per_region = 2
|
||||
|
||||
|
@ -23,6 +25,7 @@ local function select_regions(regions, peasants, trees)
|
|||
local sel = {}
|
||||
for r in regions do
|
||||
if not r.plane and r.terrain~="ocean" and not r.units() then
|
||||
if r:get_resource("peasant") >= min_peasants then
|
||||
sp = score(r, "peasant")
|
||||
st = score(r, "tree")
|
||||
if sp >= peasants then
|
||||
|
@ -32,6 +35,7 @@ local function select_regions(regions, peasants, trees)
|
|||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return sel
|
||||
end
|
||||
|
||||
|
|
|
@ -13,14 +13,16 @@ include_directories (${BSON_INCLUDE_DIR})
|
|||
include_directories (${INIPARSER_INCLUDE_DIR})
|
||||
|
||||
IF(DEFINED ERESSEA_VERSION)
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DERESSEA_VERSION=\\\"${ERESSEA_VERSION}\\\"")
|
||||
set_source_files_properties(kernel/version.c PROPERTIES
|
||||
COMPILE_DEFINITIONS ERESSEA_VERSION="${ERESSEA_VERSION}")
|
||||
ENDIF()
|
||||
|
||||
IF(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_CLANG)
|
||||
# SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wconversion -Wno-sign-conversion")
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pedantic -Wsign-compare -Wall -Werror -Wno-unknown-pragmas -Wstrict-prototypes -Wpointer-arith -Wno-char-subscripts -Wno-long-long")
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-error=unused-but-set-variable")
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99 -DHAVE__BOOL")
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99")
|
||||
add_definitions(-DHAVE__BOOL)
|
||||
ELSEIF(MSVC)
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /Wall /WX /MP")
|
||||
set(CMAKE_EXE_LINKER_FLAGS_DEBUG
|
||||
|
@ -171,8 +173,10 @@ set (SERVER_SRC ${SERVER_SRC}
|
|||
)
|
||||
endif(CURSES_FOUND)
|
||||
|
||||
add_library(version STATIC ${VERSION_SRC})
|
||||
add_library(game ${ERESSEA_SRC})
|
||||
add_executable(eressea ${SERVER_SRC})
|
||||
target_link_libraries(game version)
|
||||
target_link_libraries(eressea
|
||||
game
|
||||
${TOLUA_LIBRARIES}
|
||||
|
@ -251,18 +255,18 @@ install(TARGETS eressea DESTINATION "bin")
|
|||
|
||||
if (SQLITE3_FOUND)
|
||||
target_link_libraries(eressea ${SQLITE3_LIBRARIES})
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DUSE_SQLITE")
|
||||
add_definitions(-DUSE_SQLITE)
|
||||
endif(SQLITE3_FOUND)
|
||||
|
||||
if (CURSES_FOUND)
|
||||
include_directories (${CURSES_INCLUDE_DIR})
|
||||
target_link_libraries(eressea ${CURSES_LIBRARIES})
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DUSE_CURSES")
|
||||
add_definitions(-DUSE_CURSES)
|
||||
endif(CURSES_FOUND)
|
||||
|
||||
if (LIBXML2_FOUND)
|
||||
include_directories (${LIBXML2_INCLUDE_DIR})
|
||||
target_link_libraries(eressea ${LIBXML2_LIBRARIES})
|
||||
target_link_libraries(test_eressea ${LIBXML2_LIBRARIES})
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DUSE_LIBXML2")
|
||||
add_definitions(-DUSE_LIBXML2)
|
||||
endif (LIBXML2_FOUND)
|
||||
|
|
|
@ -1515,7 +1515,7 @@ report_computer(const char *filename, report_context * ctx, const char *charset)
|
|||
fprintf(F, "%d;Basis\n", 36);
|
||||
fprintf(F, "%d;Runde\n", turn);
|
||||
fprintf(F, "%d;Zeitalter\n", era);
|
||||
fprintf(F, "\"%s\";Build\n", ERESSEA_VERSION);
|
||||
fprintf(F, "\"%s\";Build\n", eressea_version());
|
||||
if (mailto != NULL) {
|
||||
fprintf(F, "\"%s\";mailto\n", mailto);
|
||||
fprintf(F, "\"%s\";mailcmd\n", LOC(f->locale, "mailcmd"));
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
cmake_minimum_required(VERSION 2.6)
|
||||
project(kernel C)
|
||||
|
||||
SET(_TEST_FILES
|
||||
|
@ -64,6 +65,8 @@ xmlreader.c
|
|||
jsonconf.c
|
||||
)
|
||||
|
||||
SET(VERSION_SRC ${PROJECT_NAME}/version.c PARENT_SCOPE)
|
||||
|
||||
FOREACH(_FILE ${_FILES})
|
||||
LIST(APPEND _SOURCES ${PROJECT_NAME}/${_FILE})
|
||||
ENDFOREACH(_FILE)
|
||||
|
|
|
@ -1858,12 +1858,6 @@ static void clear_npc_orders(faction *f)
|
|||
}
|
||||
}
|
||||
|
||||
int version_no(const char *str) {
|
||||
int maj = 0, min = 0, bld = 0;
|
||||
sscanf(str, "%d.%d.%d", &maj, &min, &bld);
|
||||
return (maj << 16) | (min << 8) | bld;
|
||||
}
|
||||
|
||||
int writegame(const char *filename)
|
||||
{
|
||||
int n;
|
||||
|
@ -1898,7 +1892,7 @@ int writegame(const char *filename)
|
|||
fstream_init(&strm, F);
|
||||
binstore_init(&store, &strm);
|
||||
|
||||
WRITE_INT(&store, version_no(ERESSEA_VERSION));
|
||||
WRITE_INT(&store, version_no(eressea_version()));
|
||||
n = write_game(&gdata);
|
||||
binstore_done(&store);
|
||||
fstream_done(&strm);
|
||||
|
|
|
@ -79,7 +79,6 @@ extern "C" {
|
|||
|
||||
int write_game(struct gamedata *data);
|
||||
int read_game(struct gamedata *data);
|
||||
int version_no(const char *str);
|
||||
|
||||
/* test-only functions that give access to internal implementation details (BAD) */
|
||||
void _test_write_password(struct gamedata *data, const struct faction *f);
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
#include <attributes/key.h>
|
||||
|
||||
#include "save.h"
|
||||
#include "version.h"
|
||||
#include "unit.h"
|
||||
#include "group.h"
|
||||
#include "ally.h"
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
#include "version.h"
|
||||
|
||||
#include <stdio.h>
|
||||
#ifndef ERESSEA_VERSION
|
||||
// the version number, if it was not passed to make with -D
|
||||
#define ERESSEA_VERSION "3.10.0-devel"
|
||||
#endif
|
||||
|
||||
const char *eressea_version(void) {
|
||||
return ERESSEA_VERSION;
|
||||
}
|
||||
|
||||
int version_no(const char *str) {
|
||||
int maj = 0, min = 0, bld = 0;
|
||||
sscanf(str, "%d.%d.%d", &maj, &min, &bld);
|
||||
return (maj << 16) | (min << 8) | bld;
|
||||
}
|
|
@ -1,16 +1,17 @@
|
|||
#pragma once
|
||||
/*
|
||||
+-------------------+
|
||||
| | Enno Rehling <enno@eressea.de>
|
||||
| Eressea PBEM host | Katja Zedel <katze@felidae.kn-bremen.de>
|
||||
| (c) 1998 - 2007 | Christian Schlittchen <corwin@amber.kn-bremen.de>
|
||||
| |
|
||||
| (c) 1998 - 2016 | Christian Schlittchen <corwin@amber.kn-bremen.de>
|
||||
| | https://github.com/eressea/server
|
||||
+-------------------+
|
||||
|
||||
This program may not be used, modified or distributed
|
||||
without prior permission by the authors of Eressea.
|
||||
*/
|
||||
|
||||
#ifndef ERESSEA_VERSION
|
||||
// the version number, if it was not passed to make with -D
|
||||
#define ERESSEA_VERSION "3.10.0-devel"
|
||||
#ifndef H_KERNEL_VERSION
|
||||
#define H_KERNEL_VERSION
|
||||
|
||||
const char *eressea_version(void);
|
||||
int version_no(const char *str);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -166,7 +166,7 @@ static int parse_args(int argc, char **argv, int *exitcode)
|
|||
printf("\n%s PBEM host\n"
|
||||
"Copyright (C) 1996-2005 C. Schlittchen, K. Zedel, E. Rehling, H. Peters.\n\n"
|
||||
"Compilation: " __DATE__ " at " __TIME__ "\nVersion: %s\n\n",
|
||||
game_name(), ERESSEA_VERSION);
|
||||
game_name(), eressea_version());
|
||||
#ifdef USE_CURSES
|
||||
}
|
||||
else if (strcmp(argi + 2, "color") == 0) {
|
||||
|
|
|
@ -11,4 +11,4 @@ SET SERVER=%BUILD%\eressea.exe
|
|||
%SERVER% ..\scripts\run-tests-e4.lua
|
||||
PAUSE
|
||||
RMDIR /s /q reports
|
||||
DEL score score.alliances
|
||||
DEL score score.alliances datum turn
|
||||
|
|
Loading…
Reference in New Issue