Commit Graph

80 Commits

Author SHA1 Message Date
Miguel A. Colón Vélez 553536f9cb Fix build in Fedora and print a confimation of cross compilation.
- Fedora only needs --arch if cross compiling.
  + It's only used to select libdir so i386=i686=i986
- Messages are nice to debug build logs.
.
Everything seems to work unless some other distro broke. Other
distros need to add CMAKE_TOOLCHAIN_FILE or --cross-multilib if
they cross compiled amd64 -> i686.
2015-01-03 14:51:04 +01:00
Miguel A. Colón Vélez d6d06d243c Begin cleaning up the cross build code.
http://www.vtk.org/Wiki/CMake_Cross_Compiling
http://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.
2015-01-03 14:51:04 +01:00
Miguel A. Colón Vélez 6dd3094802 Fix the rare case in which EGL is not found.
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.
2014-12-24 11:41:04 -05:00
Gregory Hainaut d00666a4d9 cmake: regression to select SDL/GTK + 64bits fix 2014-12-22 19:31:32 +01:00
Gregory Hainaut 800262fc14 cmake: add a new GTK3.0 option
Thanks #micove for the patch
2014-12-10 22:07:48 +01:00
Gregory Hainaut 0a4f9e43d9 cmake: clean sdl management
* sdl is mandatory for spu2x
* cmake will include either /usr/include/SDL or /usr/include/SDL2 so no
  need to add extra ifdef
2014-12-07 21:06:21 +01:00
Gregory Hainaut 9e8b0b59ba cmake: remove a duplicated line 2014-12-07 12:47:35 +01:00
Gregory Hainaut c945aead54 cmake: better support of SDL2
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
2014-12-07 12:19:14 +01:00
Gregory Hainaut 9c81272278 cmake: oups forget to change the usage of 64BIT_BUILD variable 2014-09-13 14:22:41 +02:00
uyjulian e8d13090b0 Look for GLESv3 header instead of GLESv2 header 2014-09-05 20:16:50 +02:00
uyjulian 1290d0b1a3 Remove unneeded comments 2014-09-05 20:14:09 +02:00
uyjulian 53e57766c9 Use CheckLib for some libs 2014-09-05 20:14:09 +02:00
aga c963e0b62b "!64BIT_BUILD" is a variable name. Changed to "NOT 64BIT_BUILD" which is
the negation of the 64BIT_BUILD variable defined in
BuildParameters.cmake.
2014-08-16 12:00:50 -06:00
Gregory Hainaut cc0b9bbca9 cmake: drop gtk workaround for ubuntu 10.10
Note: remove also FIND_LIBRARY_USE_LIB64_PATHS that is alredy set in build parameter
2014-07-30 09:21:49 +02:00
Gregory Hainaut 0706564215 remove sparsehash from 3rdparty
small deps but the less the merrier

Note: could someone check windows builds :p
2014-07-29 21:06:31 +02:00
Gregory Hainaut d09fee90ad wx3.0: add cmake support (2.8 by default)
use ./build.sh --wx30 for wx3.0
2014-07-29 20:45:43 +02:00
Gregory Hainaut e8b3532658 cmake: clean main file and option
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)
2014-07-05 14:54:56 +02:00
Ryan Houdek 35979bb5a6 Add a CMake compile time option for building a 64bit binary.
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
2014-07-05 05:09:17 -05:00
Gregory Hainaut c37d9c10f7 cmake: git compilation issue + useless warning message
* 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
2014-04-17 20:26:16 +02:00
Gregory Hainaut ca8c5b041d cmake: drop sparsehash_new module
It was a workaround for a buggy version of the lib.
2014-04-12 10:25:40 +02:00
Gregory Hainaut 70d1719b7d cmake: handle gracefully wxwidget 3.0-dev
1/ print a nice message
2/ replace 3.0 to 2.8 so it could still compile on system that both version
   are installed but wrongly configured
2014-03-26 11:37:49 +01:00
Gregory Hainaut 4496093cf8 cmake version:
Use same version as window based on git
drop subversion code
use lld on onepad
2014-03-25 17:29:47 +01:00
gregory.hainaut 916a091f8a gsdx ogl: GLes
* 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
2013-07-13 11:39:45 +00:00
gregory.hainaut 9b037a3813 pcsx2: increase a bit the minimum size of the plugin dialogs (GSdx name is too long)
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
2013-06-16 08:43:50 +00:00
gregory.hainaut 2ae4c62a41 cmake: update wx-config option order for fedora
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5581 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-03-05 12:38:22 +00:00
gregory.hainaut 9421e105bd cmake: Use non standard arch parameter on Fedora's wxconfig. Close issue 1368
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5495 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-01-02 13:34:38 +00:00
gregory.hainaut db1cd9a5c5 async-iso:
* add cmake plumbing for libaio
* add Native EOL style on cmake file


git-svn-id: http://pcsx2.googlecode.com/svn/branches/async-iso@5479 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-12-13 16:11:53 +00:00
gregory.hainaut 1cc654e9bf zzogl: some experiences to EGL (on linux). It can be enabled with -DEGL_API=TRUE
* 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
2012-09-23 18:52:44 +00:00
gregory.hainaut 226b2d63b8 gsdx: remove completely the SDL backend. Let's hope I didn't break too much VS
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
2012-08-15 10:22:19 +00:00
gregory.hainaut 75484d3059 cmake: apply some updated pathes of Micove
* 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
2012-05-07 16:29:06 +00:00
gregory.hainaut bce948d820 cmake: add a bunch of Micove patch. Thanks.
* 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
2012-05-01 10:54:52 +00:00
gregory.hainaut fa4b9cb1a8 zzogl: bump the version to 0.4 because of the previous merge
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5167 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-19 21:53:00 +00:00
gregory.hainaut e3c741bb2a zzogl: painfully merge the zzogl-dev branch
* 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
2012-04-19 21:22:08 +00:00
gregory.hainaut 6a0953ab94 cmake: sparsehash moves header file in newer version! Detect the 2 include pathes and add a define. Fix issue 1222
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5117 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-06 19:42:59 +00:00
gregory.hainaut c9b1e3c1aa cmake:
* 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
2011-10-31 10:25:24 +00:00
gregory.hainaut b19e31a1be cmake: fix some linking issue with gold linker (AFAIK only fedora use it for the moment)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4913 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-09-06 19:07:55 +00:00
gregory.hainaut@gmail.com 3eef469dfb cmake: be sure wx is present before fiddling with the include path
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4804 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-10 08:52:16 +00:00
gregory.hainaut@gmail.com b5b32b4f53 cmake: ubuntu moves file and become incompatible with current cmake version...
For the moment I import cmake file and do a small fix.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4666 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-23 21:34:45 +00:00
gregory.hainaut@gmail.com 8702685f73 onepad: remember the pad selected (more user expected behavior)
cmake: CDVDiso need gtk2, remove fatal error for 64bits fedora users


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4649 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-14 11:03:02 +00:00
gregory.hainaut@gmail.com 6f9ad58cdf cmake: * properly detect 64 bits stuff...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4644 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-10 16:22:28 +00:00
gregory.hainaut@gmail.com 827dcfaf6f pcsx2: linux: take some margins for the height of font (avoid top/bottom cut)
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
2011-05-10 09:26:39 +00:00
gregory.hainaut@gmail.com 6926e32466 cmake: fix a subtle bug which lead to a bad selection of wxwidget configuration. Impact fedora users
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4638 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-09 20:32:50 +00:00
gregory.hainaut@gmail.com 4bd5322dc6 cmake: WIP to build sdl and GSdx
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4373 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-26 20:02:22 +00:00
gregory.hainaut@gmail.com 4dac657c9b cmake: force the unicode build of wxwidget
Note: requiere cmake 2.8.3 or above (no impact otherwise)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4302 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-15 14:37:30 +00:00
gregory.hainaut@gmail.com 2382c35b83 cmake: (WIP) rule to compile translation file on linux.
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
2011-01-20 20:45:07 +00:00
gregory.hainaut@gmail.com 9d2f81d142 GregMiscellaneous: sync with trunk (3805:3982)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/GregMiscellaneous@3983 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-30 11:24:03 +00:00
gregory.hainaut@gmail.com d84d8e8a2a GregMiscellaneous: sync with trunk (3805-3918)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/GregMiscellaneous@3919 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-15 09:32:41 +00:00
gregory.hainaut@gmail.com dc49a995d6 GregMiscellaneous: zzogl: Fix fullscreen setting & remove useless library
Major issue left: widescreen.


git-svn-id: http://pcsx2.googlecode.com/svn/branches/GregMiscellaneous@3734 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-05 22:08:55 +00:00
gregory.hainaut 76cc1bcd37 cmake: Fix include path issue with gtk > 2.21.3 (ubuntu 10.10)
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
2010-08-02 07:33:11 +00:00
gregory.hainaut 85e061d4fb [cmake] Fix a long standing typo
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3284 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-23 15:45:05 +00:00