Author: sveinung Date: Tue May 16 13:32:22 2017 New Revision: 35611 URL: http://svn.gna.org/viewcvs/freeciv?rev=35611&view=rev Log: freeciv-manual: split out fc_interface code.
Move freeciv-manual's implementation of fc_interface to the new module tools_fc_interface so other tools may use it too. See hrm Feature #660443 Added: branches/S3_0/tools/tools_fc_interface.c branches/S3_0/tools/tools_fc_interface.h Modified: branches/S3_0/tools/Makefile.am branches/S3_0/tools/civmanual.c Modified: branches/S3_0/tools/Makefile.am URL: http://svn.gna.org/viewcvs/freeciv/branches/S3_0/tools/Makefile.am?rev=35611&r1=35610&r2=35611&view=diff ============================================================================== --- branches/S3_0/tools/Makefile.am (original) +++ branches/S3_0/tools/Makefile.am Tue May 16 13:32:22 2017 @@ -93,7 +93,9 @@ $(TINYCTHR_LIBS) $(MAPIMG_WAND_LIBS) $(SERVER_LIBS) if FCMANUAL -freeciv_manual_SOURCES = \ +freeciv_manual_SOURCES = \ + tools_fc_interface.c \ + tools_fc_interface.h \ civmanual.c freeciv_manual_LDFLAGS = $(GGZDMOD_LDFLAGS) Modified: branches/S3_0/tools/civmanual.c URL: http://svn.gna.org/viewcvs/freeciv/branches/S3_0/tools/civmanual.c?rev=35611&r1=35610&r2=35611&view=diff ============================================================================== --- branches/S3_0/tools/civmanual.c (original) +++ branches/S3_0/tools/civmanual.c Tue May 16 13:32:22 2017 @@ -70,6 +70,9 @@ #include "sernet.h" #include "srv_main.h" #include "stdinhand.h" + +/* tools */ +#include "tools_fc_interface.h" enum manuals { MANUAL_SETTINGS, @@ -665,58 +668,6 @@ } /* manuals */ return TRUE; -} - -/*************************************************************************** - Unused but required by fc_interface_init() -***************************************************************************/ -static bool tool_player_tile_vision_get(const struct tile *ptile, - const struct player *pplayer, - enum vision_layer vision) -{ - log_error("Assumed unused function %s called.", __FUNCTION__); - return FALSE; -} - -/*************************************************************************** - Unused but required by fc_interface_init() -***************************************************************************/ -static int tool_player_tile_city_id_get(const struct tile *ptile, - const struct player *pplayer) -{ - log_error("Assumed unused function %s called.", __FUNCTION__); - return IDENTITY_NUMBER_ZERO; -} - -/*************************************************************************** - Unused but required by fc_interface_init() -***************************************************************************/ -static void tool_gui_color_free(struct color *pcolor) -{ - log_error("Assumed unused function %s called.", __FUNCTION__); -} - -/*************************************************************** - Initialize tool specific functions. -***************************************************************/ -static void fc_interface_init_tool(void) -{ - struct functions *funcs = fc_interface_funcs(); - - /* May be used when generating help texts */ - funcs->server_setting_by_name = server_ss_by_name; - funcs->server_setting_name_get = server_ss_name_get; - funcs->server_setting_type_get = server_ss_type_get; - funcs->server_setting_val_bool_get = server_ss_val_bool_get; - - /* Not used. Set to dummy functions. */ - funcs->player_tile_vision_get = tool_player_tile_vision_get; - funcs->player_tile_city_id_get = tool_player_tile_city_id_get; - funcs->gui_color_free = tool_gui_color_free; - - /* Keep this function call at the end. It checks if all required functions - are defined. */ - fc_interface_init(); } /************************************************************************** Added: branches/S3_0/tools/tools_fc_interface.c URL: http://svn.gna.org/viewcvs/freeciv/branches/S3_0/tools/tools_fc_interface.c?rev=35611&view=auto ============================================================================== --- branches/S3_0/tools/tools_fc_interface.c (added) +++ branches/S3_0/tools/tools_fc_interface.c Tue May 16 13:32:22 2017 @@ -0,0 +1,78 @@ +/*********************************************************************** + Freeciv - Copyright (C) 2017 - Freeciv Development Team + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. +***********************************************************************/ + +#ifdef HAVE_CONFIG_H +#include <fc_config.h> +#endif + +/* common */ +#include "fc_interface.h" + +/* server */ +#include "srv_main.h" + + +#include "tools_fc_interface.h" + + +/*************************************************************************** + Unused but required by fc_interface_init() +***************************************************************************/ +static bool tool_player_tile_vision_get(const struct tile *ptile, + const struct player *pplayer, + enum vision_layer vision) +{ + log_error("Assumed unused function %s called.", __FUNCTION__); + return FALSE; +} + +/*************************************************************************** + Unused but required by fc_interface_init() +***************************************************************************/ +static int tool_player_tile_city_id_get(const struct tile *ptile, + const struct player *pplayer) +{ + log_error("Assumed unused function %s called.", __FUNCTION__); + return IDENTITY_NUMBER_ZERO; +} + +/*************************************************************************** + Unused but required by fc_interface_init() +***************************************************************************/ +static void tool_gui_color_free(struct color *pcolor) +{ + log_error("Assumed unused function %s called.", __FUNCTION__); +} + +/*************************************************************** + Initialize tool specific functions. +***************************************************************/ +void fc_interface_init_tool(void) +{ + struct functions *funcs = fc_interface_funcs(); + + /* May be used when generating help texts */ + funcs->server_setting_by_name = server_ss_by_name; + funcs->server_setting_name_get = server_ss_name_get; + funcs->server_setting_type_get = server_ss_type_get; + funcs->server_setting_val_bool_get = server_ss_val_bool_get; + + /* Not used. Set to dummy functions. */ + funcs->player_tile_vision_get = tool_player_tile_vision_get; + funcs->player_tile_city_id_get = tool_player_tile_city_id_get; + funcs->gui_color_free = tool_gui_color_free; + + /* Keep this function call at the end. It checks if all required functions + are defined. */ + fc_interface_init(); +} Added: branches/S3_0/tools/tools_fc_interface.h URL: http://svn.gna.org/viewcvs/freeciv/branches/S3_0/tools/tools_fc_interface.h?rev=35611&view=auto ============================================================================== --- branches/S3_0/tools/tools_fc_interface.h (added) +++ branches/S3_0/tools/tools_fc_interface.h Tue May 16 13:32:22 2017 @@ -0,0 +1,27 @@ +/*********************************************************************** + Freeciv - Copyright (C) 2017 - Freeciv Development Team + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. +***********************************************************************/ + +#ifndef FC_TOOLS_FC_INTERFACE_H +#define FC_TOOLS_FC_INTERFACE_H + +#ifdef __cplusplus +extern "C" { +#endif /* __cplusplus */ + +void fc_interface_init_tool(void); + +#ifdef __cplusplus +} +#endif /* __cplusplus */ + +#endif /* FC_TOOLS_FC_INTERFACE_H */ _______________________________________________ Freeciv-commits mailing list Freeciv-commits@gna.org https://mail.gna.org/listinfo/freeciv-commits