From 73d575c5c2fe6bf15e29055a438dae8ae7aa0489 Mon Sep 17 00:00:00 2001 From: Glenn Rice Date: Mon, 22 Feb 2010 00:39:38 +0000 Subject: [PATCH] On linux don't compile and link against lzo, soil, and sfml "Externals." Instead use system libraries liblzo2-dev, libsoil-dev, and libsfml-dev git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5105 8ced0084-cf51-0410-be5f-012b33b47a6e --- Externals/SFML/src/SConscript | 2 +- Externals/SOIL/SConscript | 2 +- SConstruct | 28 ++++++++++++++----- Source/Core/Core/Src/SConscript | 6 ++-- Source/Core/Core/Src/State.cpp | 4 +++ Source/Core/DolphinWX/Src/SConscript | 7 +++-- Source/Core/VideoCommon/Src/HiresTextures.cpp | 4 +++ Source/Plugins/Plugin_VideoOGL/Src/SConscript | 4 ++- .../Plugin_VideoSoftware/Src/SConscript | 4 ++- 9 files changed, 46 insertions(+), 15 deletions(-) diff --git a/Externals/SFML/src/SConscript b/Externals/SFML/src/SConscript index dde2295f4a..45d0c81db3 100644 --- a/Externals/SFML/src/SConscript +++ b/Externals/SFML/src/SConscript @@ -19,4 +19,4 @@ env_sfml = env.Clone( CXXFLAGS = env.filterWarnings(env['CXXFLAGS']), ) -env_sfml.StaticLibrary(env['local_libs'] + "sfml", files) +env_sfml.StaticLibrary(env['local_libs'] + "sfml-network", files) diff --git a/Externals/SOIL/SConscript b/Externals/SOIL/SConscript index be4a9721cc..c92b44156e 100644 --- a/Externals/SOIL/SConscript +++ b/Externals/SOIL/SConscript @@ -15,4 +15,4 @@ env_soil = env.Clone( parse_flags = ['-fPIC'] ) -env_soil.StaticLibrary(env['local_libs'] + "libsoil", files) +env_soil.StaticLibrary(env['local_libs'] + "libSOIL", files) diff --git a/SConstruct b/SConstruct index e5c6907aa1..618a77ec96 100644 --- a/SConstruct +++ b/SConstruct @@ -50,10 +50,7 @@ include_paths = [ basedir + 'Source/Core/Core/Src', basedir + 'Source/Core/DebuggerWX/Src', basedir + 'Externals/Bochs_disasm', - basedir + 'Externals/LZO', - basedir + 'Externals/SOIL', basedir + 'Externals/Lua', - basedir + 'Externals/SFML/include', basedir + 'Externals/WiiUseSrc/Src', basedir + 'Source/Core/VideoCommon/Src', basedir + 'Source/Core/InputCommon/Src', @@ -62,11 +59,15 @@ include_paths = [ basedir + 'Source/Core/DSPCore/Src', ] +if sys.platform == 'darwin': + include_paths += [ + basedir + 'Externals/LZO', # TODO: Macs have port of lzo, use that instead + basedir + 'Externals/SOIL', + basedir + 'Externals/SFML/include', + ] + dirs = [ 'Externals/Bochs_disasm', - 'Externals/LZO', - 'Externals/SOIL', - 'Externals/SFML/src', 'Externals/Lua', 'Externals/WiiUseSrc/Src', 'Source/Core/Common/Src', @@ -88,6 +89,13 @@ dirs = [ 'Source/Core/DebuggerWX/Src', ] +if sys.platform == 'darwin': + dirs += [ + 'Externals/LZO', # TODO: Macs have port of lzo, use that instead + 'Externals/SOIL', + 'Externals/SFML/src', + ] + builders = {} if sys.platform == 'darwin': from plistlib import writePlist @@ -338,7 +346,13 @@ if sys.platform == 'darwin': else: env['HAVE_X11'] = conf.CheckPKG('x11') env['HAVE_COCOA'] = 0 - + # SOIL + env['HAVE_SOIL'] = conf.CheckPKG('SOIL') + # LZO + env['HAVE_LZO'] = conf.CheckPKG('lzo2') + # sfml + env['HAVE_SFML'] = conf.CheckPKG('sfml-network') and conf.CheckCXXHeader("SFML/Network/Ftp.hpp") + # handling wx flags CCFLAGS should be created before wxmods = ['aui', 'adv', 'core', 'base'] diff --git a/Source/Core/Core/Src/SConscript b/Source/Core/Core/Src/SConscript index 5c2c2b2aae..d8e3760490 100644 --- a/Source/Core/Core/Src/SConscript +++ b/Source/Core/Core/Src/SConscript @@ -137,9 +137,11 @@ else: libs = [ 'bdisasm', 'inputcommon', - 'lua', - 'sfml' + 'lua' ] +if sys.platform == 'darwin': + libs = ['sfml-network'] + libs + env_core = env.Clone(); env_core.StaticLibrary(env['local_libs'] + 'core', files, LIBS=libs) diff --git a/Source/Core/Core/Src/State.cpp b/Source/Core/Core/Src/State.cpp index 85920c9e24..17933bde51 100644 --- a/Source/Core/Core/Src/State.cpp +++ b/Source/Core/Core/Src/State.cpp @@ -31,7 +31,11 @@ #include +#ifdef __linux__ +#include +#else #include "minilzo.h" +#endif // TODO: Move to namespace diff --git a/Source/Core/DolphinWX/Src/SConscript b/Source/Core/DolphinWX/Src/SConscript index 6dfeb54bf8..161f4ed4b7 100644 --- a/Source/Core/DolphinWX/Src/SConscript +++ b/Source/Core/DolphinWX/Src/SConscript @@ -11,10 +11,13 @@ files = [ ] libs = [ - 'core', 'minilzo', 'discio', 'bdisasm', 'videocommon', - 'inputcommon', 'common', 'lua', 'z', 'sfml' + 'core', 'discio', 'bdisasm', 'videocommon', + 'inputcommon', 'common', 'lua', 'z' ] +if sys.platform == 'darwin': + libs = ['sfml-network', 'minilzo'] + libs + if wxenv['HAVE_WX']: files += [ 'AboutDolphin.cpp', diff --git a/Source/Core/VideoCommon/Src/HiresTextures.cpp b/Source/Core/VideoCommon/Src/HiresTextures.cpp index 4539e54357..e973e8d49f 100644 --- a/Source/Core/VideoCommon/Src/HiresTextures.cpp +++ b/Source/Core/VideoCommon/Src/HiresTextures.cpp @@ -20,7 +20,11 @@ #include #include #include +#ifdef __linux__ +#include +#else #include "SOIL.h" +#endif #include "CommonPaths.h" #include "FileUtil.h" #include "FileSearch.h" diff --git a/Source/Plugins/Plugin_VideoOGL/Src/SConscript b/Source/Plugins/Plugin_VideoOGL/Src/SConscript index d670d8b1f8..d72fe0643e 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/SConscript +++ b/Source/Plugins/Plugin_VideoOGL/Src/SConscript @@ -31,8 +31,10 @@ compileFlags = [ linkFlags = [ ] libs = [ - 'videocommon', 'soil', 'common' + 'videocommon', 'common' ] +if sys.platform == 'darwin': + libs = ['SOIL'] + libs gfxenv = env.Clone() diff --git a/Source/Plugins/Plugin_VideoSoftware/Src/SConscript b/Source/Plugins/Plugin_VideoSoftware/Src/SConscript index 88f959d102..b9493cb3ef 100644 --- a/Source/Plugins/Plugin_VideoSoftware/Src/SConscript +++ b/Source/Plugins/Plugin_VideoSoftware/Src/SConscript @@ -42,8 +42,10 @@ compileFlags = [ linkFlags = [ ] libs = [ - 'videocommon', 'soil', 'common' + 'videocommon', 'common' ] +if sys.platform == 'darwin': + libs = ['SOIL'] + libs gfxenv = env.Clone()