http://www.vtk.org/Wiki/CMake_Cross_Compilinghttp://www.cmake.org/cmake/help/v3.0/manual/cmake-toolchains.7.html
.
The official way that cmake does cross compiling is via the use of a
CMAKE_TOOLCHAIN_FILE. This has to be given by the user and can't be
included from within a Cmake file since setting up the toolchain has
to be the first thing that happens.
.
After the file is given and validated cmake behaves nicely and all the
workarounds and hacks are not really needed anymore.
.
The consequence of this change is that without this file cmake will
try to build for the HOST architecture as expected and with the file
it will build for the TARGET architecture of the given toolchain. Due to
this remove 64BIT_BUILD_DONT_WORK and just ERROR out if the user tries
in the same way as before.
EGL sometimes is not found. Checklib 1st does
.
string(TOLOWER ${lib} lower_lib)
pkg_search_module(${var} QUIET ${lower_lib})
.
Therefore this part should be equivalent since we always compare lower.
.
This part seems to not find anything and then it does.
.
find_library(${var}_LIBRARIES ${lib})
.
Here it also does not find anything since it tries to find libegl
while the library is called libEGL therefore I changed the name to upper.
to avoid
_internal_message("-- ${lib} not found (miss lib)")
.
It could fail in the unlikely event that someone renamed libEGL to libegl.
This bug is triggered when you combine crosscompiling from amd64 to
i386 with Debian multiarch paths. For other distros it should work with
pkg_search_module normally.
Description: Building with SDL2_API=TRUE is incomplete
SDL_FOUND does not imply SDL2_FOUND
Use check_libs for detection
Only include ${SDL_INCLUDE_DIR} when needed
Use SDL2_LIBRARIES
Author: Miguel A. Colón Vélez
Gregory: add back SDL_BUILDING_LIBRARY
Move build configuration from CMakeLists to cmake/BuildParameters.cmake where it belongs
Use option syntax for on/off option
Complete a bit previous commit to force all 64bits path detections (likely done by cmake)
By default the cmake build will still cross compile a 32bit binary and spout a message about it if not enabled.
This doesn't fix the 64bit build issues, just makes it easier for someone to test 64bit builds in the future.
Look towards a bright future instead of a dark and gloomy past
* avoid compilation failure when git -C isn't supported
* don't print missing dependency when EXTRA_PLUGINS isn't activated
* sed /endif(.*)/endif/ because I don't like it
* use gles header file, disable opengl code (mainly GLX, ARB_sso, geometry shader)
* Define properly the function pointer, GLES use basic linking whereas GL must get the symbol dynamically
* cmake: properly search and set libglesv2.so
* don't use dual source blending => HW renderer work (only miss unimportant FBA)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5701 96395faa-99c1-11dd-bbfe-3dabce05a288
gsdx:
* move gl function loading into GSwnd. Clean the header and avoid to rely on macro.
* Always require libegl for GSdx. You still need to select the API at compilation.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5670 96395faa-99c1-11dd-bbfe-3dabce05a288
* EGL is the interface between the window and opengl. The purpose is to replace GLX/WGL in a crossplatform way.
Unfortunately so far only opensource driver use it (need not yet released mesa 9.0)
* clean most of the legacy GSopen1 window management. Only keep a basic window for debug with replayer.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5422 96395faa-99c1-11dd-bbfe-3dabce05a288
cmake: take the opportunity to drop the support of 3rdparty compilation. Distributions have got a more recent version of zlib/soundtouch anyway.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5376 96395faa-99c1-11dd-bbfe-3dabce05a288
* drop hack for of Natty and use the std FindGtk2 module, time to upgrade to Precise.
* Bump cmake requirement to 2.8.5 to avoid multiarch issue
* Create new cmake variable GLSL_SHADER_DIR for glsl file. Default value /usr/share/games/pcsx2
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5200 96395faa-99c1-11dd-bbfe-3dabce05a288
* Add 2 new dev options: REBUILD_SHADER (nvidia cg) & BUILD_REPLAY_LOADERS
* zzogl-pg-cg will use the shader of zzogl-pg.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5190 96395faa-99c1-11dd-bbfe-3dabce05a288
* new memory management
* asm was replaced by intrinsic
* new GLSL backend (AMD only) Cmake is probably broken anyway with the 2 plugins...
* and lots of others stuff that I forgot about it ;)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5166 96395faa-99c1-11dd-bbfe-3dabce05a288
* new dev option CMAKE_BUILD_PO: control regeneration of po file. By default true in release build
* Add a hack for multiarch version of wxwidget
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4951 96395faa-99c1-11dd-bbfe-3dabce05a288
cmake:
* disable fomit-frame-pointer which cause crash with gcc-4.6 (it was not enabled by default but now I'm sure people will not enable it ;) )
* Try harder to pick the 32bits configuration for wx in a 64bits environment (opensuse/fedora).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4641 96395faa-99c1-11dd-bbfe-3dabce05a288
Note: to install them, you must call "make install" with root access. Files will be install into /usr/local/share/locales...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4238 96395faa-99c1-11dd-bbfe-3dabce05a288
Note: last gtk version moves the gdk-pixbuf module into another place.
Technically cmake needs an update of the FINDGTK2 module. For the moment I add a small work-around.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3589 96395faa-99c1-11dd-bbfe-3dabce05a288
* Print a fatal_error when users do not source the good CMakeLists file.
* Do not search system libraries if the user force the internal libraries
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3269 96395faa-99c1-11dd-bbfe-3dabce05a288
* add some check on libsparsehash
* print more informative message when a depency miss
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3256 96395faa-99c1-11dd-bbfe-3dabce05a288
[cmake]:
* Update to use the above patch.
* Remove a52. Need to use system version.
* Remove stub file. Append pcsx2 to 3rparty library to ease futur support.
Important Note: codeblock will probably need some update. (add 3rdparty/soundtouch_linux_include in include path)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3200 96395faa-99c1-11dd-bbfe-3dabce05a288
[spu2x]: explain why one inline fail on linux
[cmake]: Prepare some include directory updates
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3185 96395faa-99c1-11dd-bbfe-3dabce05a288
* Better separation between pcsx2/plugins/3rdparty => no need anymore to download everythings :)
* Drop build dependency on unused libBPM (from soundtouch)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3180 96395faa-99c1-11dd-bbfe-3dabce05a288
* align cmake flags with codeblock one. (note spu2x may still fail to compile with inline problem)
* Some final cleaning. You must be able to see your reflection now ;)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3169 96395faa-99c1-11dd-bbfe-3dabce05a288
* Add missing file
* Use a default option for FORCE_INTERNAL_SOUNDTOUCH instead of a hardcoded one
* Some cleaning
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3156 96395faa-99c1-11dd-bbfe-3dabce05a288
* Select automatically module (include pcsx2, libutilities&libx86emitter) to build based on dependency available.
* rewrite SearchForStuff. More clean and it will better support mix between library and 3rdparty on linux. (see issue 736)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3153 96395faa-99c1-11dd-bbfe-3dabce05a288
* remove the dependency on libportaudiocpp as codeblock. (issue 721)
* Improve build on 64 bit system
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3151 96395faa-99c1-11dd-bbfe-3dabce05a288