Commit Graph

314 Commits (45f69abb6e7ddf56fda60646f9880ace58248fed)

Author SHA1 Message Date
Günther Brammer 9941388526 Use pkg-config to get linker flags for SDL_mixer
This makes CMake use the dynamic library instead of the static library on
my system. The latter doesn't link on today's Debian unstable due to a
missing libmad.a.
2014-04-19 19:02:22 +02:00
Günther Brammer 22016e075f Replace some usages of C4ID with C4Def*
In particular those that made the c4script shell depend on C4Id.cpp.
2014-04-19 19:02:22 +02:00
Julius Michaelis 66d11b459c Default-deactivate gcc precompiled headers in CMakeLists 2014-04-02 20:53:12 +02:00
Nicolas Hake 3c80a745b0 MinGW: Use __mingw_vasprintf if available
Recent versions of MinGW do no longer declare vasprintf in <stdio.h>,
but they ship a compatible function called __mingw_vasprintf. Use this
function if vasprintf isn't available.
2014-03-25 23:20:34 +01:00
Nicolas Hake dde5556105 cmake: Correctly check for vasprintf and iconv
CheckFunctionExists only checks for the function to be linkable, it does
not require any declaration in a header. CheckSymbolExists requires a
declaration and also linking to succeed.
2014-03-25 23:16:01 +01:00
Julius Michaelis f04d1163b1 Fix gcc precompiled headers 2014-03-25 19:11:22 +01:00
Martin Plicht 90dec14601 cmake: mac: Re-add libs bundling, revert to LegacyFindFreeType for APPLE 2014-02-16 10:18:45 +01:00
Martin Plicht 59bc72f54e cmake: mac: Reorder compiler flag selection a bit 2014-02-16 10:18:45 +01:00
Tobias Zwick 44ffc5c470 add a note to CMakeLists.txt
(cherry picked from commit a0848af371d451e6ef69918bacf2dd42bf7a6202)
2014-02-07 21:53:06 +07:00
Nicolas Hake fe7d2de852 Add option to link Boost dynamically (#1025)
Distributions can guarantee the existence of a specific version of
the Boost libraries, so it makes less sense to link them statically.
2014-02-06 22:08:15 +01:00
Martin Plicht acceeb7291 mac: Add precompiled nib files to really not require Xcode … 2014-01-29 20:39:24 +01:00
Martin Plicht f1cc91055a cmake: mac: make install installs bundle 2014-01-29 14:12:22 +01:00
Martin Plicht c26ac97729 cmake: Insert hacks and hardcoded paths to make mac version compilable using Unix make 2014-01-27 14:22:22 +01:00
Martin Plicht b3c1706b1b mac: Clonk.icns is oc.icns 2014-01-27 14:22:22 +01:00
Martin Plicht 515aaf656d cmake: Only add StdSchedulerMac.mm when APPLE platform 2014-01-25 16:12:02 +01:00
Martin Plicht bf1f9037a8 Merge branch 'macscheduler' 2014-01-25 16:00:29 +01:00
Tobias Zwick 8e8653678e install icons of different sizes on linux 2014-01-24 16:54:47 +07:00
Martin Plicht 130660a544 Merge branch 'master' into macscheduler 2014-01-23 17:53:58 +01:00
Martin Plicht d504626a40 StdScheduler: Split into StdSchedulerWin32/StdSchedulerPoll/StdSchedulerMac 2014-01-23 17:53:40 +01:00
Philipp Kern e151b1de91 move the clonk binary to /usr/games
The FHS says that game binaries should be stored in /usr/games.
2014-01-23 00:14:32 +07:00
Nicolas Hake e0dc30c59a Update copyright notices
As discussed in http://forum.openclonk.org/topic_show.pl?tid=2917, I
have merged all copyright notices into a single file and referenced that
merged file from each source file.

For the updated source files, the timeline has been split into three
parts:
 1. Pre-RWD code (before 2001)
 2. RWD code (2001 through 2009)
 3. OpenClonk code (2009 and later)
All pre-RWD copyright notices have been left intact, as have RWD-era
copyright notices where the file did not have a RedWolf design copyright
notice but only individual author ones. All copyright notices of the
OpenClonk era have been replaced by a single notice ranging from the
first recorded year to the current year (2013). Mape code did not get a
OpenClonk Team copyright notice because it is somewhat separate from the
main OpenClonk codebase and has only been touched by Armin Burgmeier.
2013-12-23 13:03:19 +01:00
David Dormagen a10c9316ef renamed DynamicParticles* to Particles* and CreateParticleEx to CreateParticle 2013-12-17 22:32:01 +01:00
David Dormagen 02f54ba1eb removed the legacy particle system from the engine and docs 2013-12-17 22:32:01 +01:00
Tobias Zwick f5592a49e6 build fix 2013-12-08 04:05:56 +07:00
Tobias Zwick 4f416c3147 replace global function GetTime() with class function C4TimeMilliseconds::Now() 2013-12-07 21:28:06 +07:00
Tobias Zwick 94c618d153 add new type C4TimeMilliseconds for time measurements to solve problems when GetTime() overflows (#251)
The new type C4TimeMilliseconds behaves for the most part like a uint32_t but is overflow-proof in comparisons.
In some places, a 0-value (or uint_max) of the variable storing the time had the special meaning "not set yet". This has been resolved by having it as a pointer to C4TimeMilliseconds with NULL meaning that it has not been set yet.
2013-12-04 19:35:07 +07:00
Nicolas Hake 35f31a7c1d win32: Manually generate manifest to indicate Win7 compatibility
Telling Windows that we support Windows 7 means it will stop catching
unhandled exceptions that occur in a callback from kernel mode, and
allow our own crash handler to catch then.
2013-11-10 19:22:26 +01:00
Tim Blume 240193ad5a Remove remains of Direct3D support
Direct3D hasn't worked for more than a year now, and there don't seem to
be any efforts to revive it. Remove it and concentrate on better OpenGL
support.
2013-11-02 21:39:34 +01:00
Nicolas Hake 924e0538fc Fallback to Boost.Regex if <regex> is broken
A large number of g++ versions ship a <regex> that declares all of the
required functions, but don't actually implement them, making using them
result in a linker error.

Fallback to Boost.Regex if the host C++11 <regex> implementation is
broken; the interface is the same anyway, only differing in the
containing namespace.

Unfortunately, Boost.Regex is not a header-only library, but this is not
a big deal because all major Linux distributions ship it, and Visual
Studio implements <regex> since 2010 (the oldest version we still
support).
2013-10-29 16:59:38 +01:00
Nicolas Hake e753bf8168 Replace ResTable with a proper dictionary
ResTable (the main system string table) was a home-grown hashmap that
did not cope with collisions at all. Since we already have a proper
dictionary in C4LangStringTable, use that instead.
2013-10-19 19:28:54 +02:00
Nicolas Hake 759cf73704 cmake: Make Freetype mandatory for non-headless builds
OpenClonk fails to start without Freetype support, because it cannot
load required fonts.
2013-10-18 22:27:55 +02:00
Nicolas Hake 9e18ca3c9f cmake: Always use multiproc build in MSVC
Multicore processors have become the norm, and the minimal rebuild
setting only works on i386 anyway.
2013-10-18 14:20:09 +02:00
Nicolas Hake 8709b841bf cmake: Also look for static libraries 2013-10-08 22:02:39 +02:00
Nicolas Hake 59ee0ed090 cmake: Get FindFreetype to look for versioned libraries
Since FindFreetype.cmake already extracts the version of freetype
from its header files, I have no idea why they're not automatically
using that info to look for the proper library name in lieu of
hardcoding a single version.
2013-10-08 21:23:07 +02:00
David Dormagen 4032a161ea CMakeList: added entries for dynamic particle source files 2013-10-07 20:56:55 +02:00
Maikel de Vries 7f9f40a1f5 Renamed Settlement.ocf to Missions.ocf 2013-10-05 17:39:14 +02:00
Martin Plicht 31119f1b88 cmake: Add Worlds.ocf to OC_C4GROUPS 2013-10-05 13:19:59 +02:00
Nicolas Hake 9ceb69236b Remove unused Base64 codec 2013-08-04 18:10:10 +02:00
Martin Plicht 524fe879aa Make DEBUGREC define a commandline option 2013-05-25 22:51:32 +02:00
Martin Plicht 928ecc1892 mac: Lazy cmake fix 2013-05-25 20:11:21 +02:00
Nicolas Hake 7a8352e672 CMake: Allow dynamic linking of Ogg/Vorbis
Previously, MSVC builds did only allow static linking of libogg,
libvorbis and libvorbisfile. If there was a reason to do so, I have no
idea what it was, because it isn't documented in either VCS or a
comment. So I'll allow both dynamic and static linking.
2013-05-20 16:10:17 +02:00
Nicolas Hake 459fce0758 Replace std::auto_ptr with std::unique_ptr
std::auto_ptr has awkward copy semantics and is deprecated in C++11.
2013-03-26 15:43:01 +01:00
Sven Eberhardt 57e63a5275 Added support for scripted maps (Map.c) and documentation. 2013-03-19 00:36:06 +01:00
Günther Brammer 814f809885 cmake: USE_GTK3 defaults to off for now
The defaults should follow the settings the binary downloads use where
reasonable.
2013-03-12 02:12:26 +01:00
Günther Brammer 169b3750d4 cmake: Also search for freetype version 2.4.11 2013-03-10 14:01:38 +01:00
Günther Brammer 2ef47af689 cmake: Default to a deps folder in CMAKE_CURRENT_BINARY_DIR 2013-03-10 14:01:35 +01:00
Günther Brammer 1075822af3 cmake: Don't try to create openclonk.png without convert 2013-03-10 14:01:26 +01:00
Günther Brammer 12c8b31a10 cmake: Use CMAKE_DEPENDENT_OPTION to structure the various options 2013-03-10 14:01:15 +01:00
Günther Brammer 159cfb9885 cmake: Explicitly instead of indirectly link openclonk with pthread
In practice, other libraries pulled pthread in, except for the USE_CONSOLE
build. But since there are direct calls to pthread in our code, we really
shouldn't rely on that.

Also, this should fix the USE_CONSOLE build on windows.
2013-03-10 14:00:01 +01:00
Julius Michaelis 06d4db2d72 Remove need for freetype and jpeg libraries building with USE_CONSOLE 2013-03-03 15:22:48 +01:00