/*
 * OpenClonk, http://www.openclonk.org
 *
 * Copyright (c) 2001-2002  Peter Wortmann
 * Copyright (c) 2005, 2009  Günther Brammer
 * Copyright (c) 2009  Matthes Bender
 * Copyright (c) 2001-2009, RedWolf Design GmbH, http://www.clonk.de
 *
 * Portions might be copyrighted by other authors who have contributed
 * to OpenClonk.
 *
 * Permission to use, copy, modify, and/or distribute this software for any
 * purpose with or without fee is hereby granted, provided that the above
 * copyright notice and this permission notice appear in all copies.
 * See isc_license.txt for full license and disclaimer.
 *
 * "Clonk" is a registered trademark of Matthes Bender.
 * See clonk_trademark_license.txt for full license.
 */
#ifndef C4VERSION_H

#define C4VERSION_H

// These are filled in automatically by CMake. When in doubt, edit 
// Version.txt instead!

#define C4CFG_Company         "@C4PROJECT@"
#define C4COPYRIGHT_YEAR      "@C4COPYRIGHT_YEAR@"
#define C4COPYRIGHT_COMPANY   "@C4PROJECT@"

#define C4ENGINENAME          "@C4ENGINENAME@"
#define C4ENGINENICK          "@C4ENGINENICK@"

#define C4EDITORCAPTION       "Clonk Editor"
#define C4ENGINEID            "@C4ENGINEID@"

#define C4XVER1               @C4XVER1@
#define C4XVER2               @C4XVER2@
#define C4XVER3               @C4XVER3@
#define C4XVER4               @C4XVER4@
#define C4VERSIONBUILDNAME    "@C4VERSIONBUILDNAME@"
#define C4VERSIONEXTRA        "@C4VERSIONEXTRA@"
#define C4REVISION            "@C4REVISION@"

// Build Options
#ifdef _DEBUG
#define C4BUILDDEBUG " dbg"
#else
#define C4BUILDDEBUG
#endif
#define C4BUILDOPT C4BUILDDEBUG


// Prepend space to version extra
#ifdef C4VERSIONEXTRA
#define C4VERSIONEX " " C4VERSIONEXTRA
#else
#define C4VERSIONEX
#endif

#ifdef C4VERSIONBUILDNAME
#define C4ENGINEINFOLONG      C4ENGINENAME " " C4VERSIONBUILDNAME C4VERSIONEX
#define C4ENGINECAPTION       C4ENGINENAME " " C4VERSIONBUILDNAME
#else
#define C4ENGINEINFOLONG      C4ENGINENAME C4VERSIONEX
#define C4ENGINECAPTION       C4ENGINENAME
#endif

#if C4XVER4 < 10
#define C4XVER4S "00" C4XVERTOC4XVERS(C4XVER4)
#elif C4XVER4 < 100
#define C4XVER4S "0" C4XVERTOC4XVERS(C4XVER4)
#else
#define C4XVER4S C4XVERTOC4XVERS(C4XVER4)
#endif

#define C4XVERTOC4XVERS(s) C4XVERTOC4XVERS2(s)
#define C4XVERTOC4XVERS2(s) #s
#define C4VERSION            C4XVERTOC4XVERS(C4XVER1) "." C4XVERTOC4XVERS(C4XVER2)  "." C4XVERTOC4XVERS(C4XVER3) " [" C4XVER4S "]" C4VERSIONEX C4BUILDOPT

#endif
