(svn r7759) -Merge: makefile rewrite. This merge features:

- A proper ./configure, so everything needs to be configured only once, not for every make.
 - Usage of makedepend when available. This greatly reduces the time needed for generating the dependencies.
 - A generator for all project files. There is a single file with sources, which is used to generate Makefiles and the project files for MSVC.
 - Proper support for OSX universal binaries.
 - Object files for non-MSVC compiles are also placed in separate directories, making is faster to switch between debug and release compiles and it does not touch the directory with the source files.
 - Functionality to make a bundle of all needed files for for example a nightly or distribution of a binary with all needed GRFs and language files.

Note: as this merge moves almost all files, it is recommended to make a backup of your working copy before updating your working copy.
This commit is contained in:
rubidium
2007-01-02 19:19:48 +00:00
parent 3d32fd3f4b
commit 013df98f79
448 changed files with 8150 additions and 6127 deletions

47
src/network/core/game.h Normal file
View File

@@ -0,0 +1,47 @@
/* $Id$ */
#ifndef NETWORK_CORE_GAME_H
#define NETWORK_CORE_GAME_H
#ifdef ENABLE_NETWORK
/**
* @file game.h Information about a game that is sent between a
* game server, game client and masterserver.
*/
/**
* This is the struct used by both client and server
* some fields will be empty on the client (like game_password) by default
* and only filled with data a player enters.
*/
typedef struct NetworkGameInfo {
byte game_info_version; ///< Version of the game info
char server_name[NETWORK_NAME_LENGTH]; ///< Server name
char hostname[NETWORK_HOSTNAME_LENGTH]; ///< Hostname of the server (if any)
char server_revision[NETWORK_REVISION_LENGTH]; ///< The version number the server is using (e.g.: 'r304' or 0.5.0)
bool version_compatible; ///< Can we connect to this server or not? (based on server_revision)
bool compatible; ///< Can we connect to this server or not? (based on server_revision _and_ grf_match
byte server_lang; ///< Language of the server (we should make a nice table for this)
byte use_password; ///< Is set to != 0 if it uses a password
char server_password[NETWORK_PASSWORD_LENGTH]; ///< On the server: the game password, on the client: != "" if server has password
byte clients_max; ///< Max clients allowed on server
byte clients_on; ///< Current count of clients on server
byte companies_max; ///< Max companies allowed on server
byte companies_on; ///< How many started companies do we have
byte spectators_max; ///< Max spectators allowed on server
byte spectators_on; ///< How many spectators do we have?
Date game_date; ///< Current date
Date start_date; ///< When the game started
char map_name[NETWORK_NAME_LENGTH]; ///< Map which is played ["random" for a randomized map]
uint16 map_width; ///< Map width
uint16 map_height; ///< Map height
byte map_set; ///< Graphical set
bool dedicated; ///< Is this a dedicated server?
char rcon_password[NETWORK_PASSWORD_LENGTH]; ///< RCon password for the server. "" if rcon is disabled
struct GRFConfig *grfconfig; ///< List of NewGRF files used
} NetworkGameInfo;
#endif /* ENABLE_NETWORK */
#endif /* NETWORK_CORE_GAME_H */