From 4c8d32b4bf624bd70a4c2b20a9c971ae92e8f8a3 Mon Sep 17 00:00:00 2001 From: Nathan Letwory Date: Tue, 25 Aug 2009 10:56:01 +0000 Subject: [PATCH] == SCons == * Add sndfile support (False by default). Note: for this to work, make sure that FFMPEG-support is disabled. --- config/linux2-config.py | 23 ++++++----------------- config/win32-mingw-config.py | 25 ++++++------------------- config/win32-vc-config.py | 28 ++++++---------------------- intern/audaspace/SConscript | 5 +++++ tools/Blender.py | 4 ++++ tools/btools.py | 15 +++++++++++---- 6 files changed, 38 insertions(+), 62 deletions(-) diff --git a/config/linux2-config.py b/config/linux2-config.py index a5ac9f4e00e..757b8210e49 100644 --- a/config/linux2-config.py +++ b/config/linux2-config.py @@ -33,6 +33,12 @@ BF_JACK_INC = '${BF_JACK}/include/jack' BF_JACK_LIB = 'jack' BF_JACK_LIBPATH = '${BF_JACK}/lib' +WITH_BF_SNDFILE = False +BF_SNDFILE = '/usr' +BF_SNDFILE_INC = '${BF_SNDFILE}/include/sndfile' +BF_SNDFILE_LIB = 'sndfile' +BF_SNDFILE_LIBPATH = '${BF_SNDFILE}/lib' + WITH_BF_SDL = True BF_SDL = '/usr' #$(shell sdl-config --prefix) BF_SDL_INC = '${BF_SDL}/include/SDL' #$(shell $(BF_SDL)/bin/sdl-config --cflags) @@ -85,23 +91,6 @@ BF_BULLET = '#extern/bullet2/src' BF_BULLET_INC = '${BF_BULLET}' BF_BULLET_LIB = 'extern_bullet' -#WITH_BF_NSPR = True -#BF_NSPR = $(LIBDIR)/nspr -#BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr -#BF_NSPR_LIB = - -# Uncomment the following line to use Mozilla inplace of netscape -#CPPFLAGS += -DMOZ_NOT_NET -# Location of MOZILLA/Netscape header files... -#BF_MOZILLA = $(LIBDIR)/mozilla -#BF_MOZILLA_INC = -I$(BF_MOZILLA)/include/mozilla/nspr -I$(BF_MOZILLA)/include/mozilla -I$(BF_MOZILLA)/include/mozilla/xpcom -I$(BF_MOZILLA)/include/mozilla/idl -#BF_MOZILLA_LIB = -# Will fall back to look in BF_MOZILLA_INC/nspr and BF_MOZILLA_LIB -# if this is not set. -# -# Be paranoid regarding library creation (do not update archives) -#BF_PARANOID = True - # enable freetype2 support for text objects BF_FREETYPE = '/usr' BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2' diff --git a/config/win32-mingw-config.py b/config/win32-mingw-config.py index cde41d6ffba..26fa0835255 100644 --- a/config/win32-mingw-config.py +++ b/config/win32-mingw-config.py @@ -3,14 +3,9 @@ LIBDIR = "${LCGDIR}" BF_PYTHON = LIBDIR + '/python' BF_PYTHON_VERSION = '3.1' -#BF_PYTHON_VERSION = '2.6' -#BF_PYTHON_VERSION = '2.6' WITH_BF_STATICPYTHON = False BF_PYTHON_INC = '${BF_PYTHON}/include/python${BF_PYTHON_VERSION}' BF_PYTHON_BINARY = 'python' -#BF_PYTHON_LIB = 'python25' -#BF_PYTHON_LIBPATH = '${BF_PYTHON}/lib/lib25_vs2005' -#BF_PYTHON_LIB_STATIC = '${BF_PYTHON}/lib/lib25_vs2005/libpython25.a' BF_PYTHON_LIB = 'python${BF_PYTHON_VERSION[0]}${BF_PYTHON_VERSION[2]}' BF_PYTHON_LIBPATH = '${BF_PYTHON}/lib' BF_PYTHON_LIB_STATIC = '${BF_PYTHON}/lib/libpython${BF_PYTHON_VERSION[0]}${BF_PYTHON_VERSION[2]}.a' @@ -37,6 +32,12 @@ BF_JACK_INC = '${BF_JACK}/include' BF_JACK_LIB = 'libjack' BF_JACK_LIBPATH = '${BF_JACK}/lib' +WITH_BF_SNDFILE = False +BF_SNDFILE = LIBDIR + '/sndfile' +BF_SNDFILE_INC = '${BF_SNDFILE}/include' +BF_SNDFILE_LIB = 'libsndfile' +BF_SNDFILE_LIBPATH = '${BF_SNDFILE}/lib' + WITH_BF_SDL = True BF_SDL = LIBDIR + '/sdl' BF_SDL_INC = '${BF_SDL}/include' @@ -99,20 +100,6 @@ BF_BULLET_LIB = 'extern_bullet' BF_WINTAB = LIBDIR + '/wintab' BF_WINTAB_INC = '${BF_WINTAB}/INCLUDE' -#WITH_BF_NSPR = True -#BF_NSPR = $(LIBDIR)/nspr -#BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr -#BF_NSPR_LIB = - -# Uncomment the following line to use Mozilla inplace of netscape -#CPPFLAGS += -DMOZ_NOT_NET -# Location of MOZILLA/Netscape header files... -#BF_MOZILLA = $(LIBDIR)/mozilla -#BF_MOZILLA_INC = -I$(BF_MOZILLA)/include/mozilla/nspr -I$(BF_MOZILLA)/include/mozilla -I$(BF_MOZILLA)/include/mozilla/xpcom -I$(BF_MOZILLA)/include/mozilla/idl -#BF_MOZILLA_LIB = -# Will fall back to look in BF_MOZILLA_INC/nspr and BF_MOZILLA_LIB -# if this is not set. - # enable freetype2 support for text objects BF_FREETYPE = LIBDIR + '/gcc/freetype' BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2' diff --git a/config/win32-vc-config.py b/config/win32-vc-config.py index 2c219633540..c50f41b6d4b 100644 --- a/config/win32-vc-config.py +++ b/config/win32-vc-config.py @@ -21,11 +21,6 @@ BF_OPENAL_INC = '${BF_OPENAL}/include ' BF_OPENAL_LIB = 'wrap_oal' BF_OPENAL_LIBPATH = '${BF_OPENAL}/lib' -# TODO - are these useful on win32? -# BF_CXX = '/usr' -# WITH_BF_STATICCXX = False -# BF_CXX_LIB_STATIC = '${BF_CXX}/lib/libstdc++.a' - WITH_BF_ICONV = True BF_ICONV = LIBDIR + '/iconv' BF_ICONV_INC = '${BF_ICONV}/include' @@ -43,6 +38,12 @@ BF_JACK_INC = '${BF_JACK}/include' BF_JACK_LIB = 'libjack' BF_JACK_LIBPATH = '${BF_JACK}/lib' +WITH_BF_SNDFILE = False +BF_SNDFILE = LIBDIR + '/sndfile' +BF_SNDFILE_INC = '${BF_SNDFILE}/include' +BF_SNDFILE_LIB = 'libsndfile-1' +BF_SNDFILE_LIBPATH = '${BF_SNDFILE}/lib' + WITH_BF_SDL = True BF_SDL = LIBDIR + '/sdl' BF_SDL_INC = '${BF_SDL}/include' @@ -108,23 +109,6 @@ BF_WINTAB_INC = '${BF_WINTAB}/INCLUDE' WITH_BF_BINRELOC = False -#WITH_BF_NSPR = True -#BF_NSPR = $(LIBDIR)/nspr -#BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr -#BF_NSPR_LIB = - -# Uncomment the following line to use Mozilla inplace of netscape -#CPPFLAGS += -DMOZ_NOT_NET -# Location of MOZILLA/Netscape header files... -#BF_MOZILLA = $(LIBDIR)/mozilla -#BF_MOZILLA_INC = -I$(BF_MOZILLA)/include/mozilla/nspr -I$(BF_MOZILLA)/include/mozilla -I$(BF_MOZILLA)/include/mozilla/xpcom -I$(BF_MOZILLA)/include/mozilla/idl -#BF_MOZILLA_LIB = -# Will fall back to look in BF_MOZILLA_INC/nspr and BF_MOZILLA_LIB -# if this is not set. -# -# Be paranoid regarding library creation (do not update archives) -#BF_PARANOID = True - # enable freetype2 support for text objects BF_WITH_FREETYPE = True BF_FREETYPE = LIBDIR + '/freetype' diff --git a/intern/audaspace/SConscript b/intern/audaspace/SConscript index caae070359a..0dfd0bb9e3a 100644 --- a/intern/audaspace/SConscript +++ b/intern/audaspace/SConscript @@ -26,4 +26,9 @@ if env['WITH_BF_JACK']: incs += ' jack ' + env['BF_JACK_INC'] defs.append('WITH_JACK') +if env['WITH_BF_SNDFILE']: + sources += env.Glob('sndfile/*.cpp') + incs += ' sndfile ' + env['BF_SNDFILE_INC'] + defs.append('WITH_SNDFILE') + env.BlenderLib ('bf_audaspace', sources, Split(incs), defs, libtype=['intern'], priority = [25] ) diff --git a/tools/Blender.py b/tools/Blender.py index 789a6981558..421a79454df 100644 --- a/tools/Blender.py +++ b/tools/Blender.py @@ -130,6 +130,8 @@ def setup_staticlibs(lenv): libincs += Split(lenv['BF_FFMPEG_LIBPATH']) if lenv['WITH_BF_JACK']: libincs += Split(lenv['BF_JACK_LIBPATH']) + if lenv['WITH_BF_SNDFILE']: + libincs += Split(lenv['BF_SNDFILE_LIBPATH']) if lenv['WITH_BF_OPENEXR']: libincs += Split(lenv['BF_OPENEXR_LIBPATH']) if lenv['WITH_BF_STATICOPENEXR']: @@ -191,6 +193,8 @@ def setup_syslibs(lenv): syslibs += Split(lenv['BF_OGG_LIB']) if lenv['WITH_BF_JACK']: syslibs += Split(lenv['BF_JACK_LIB']) + if lenv['WITH_BF_SNDFILE']: + syslibs += Split(lenv['BF_SNDFILE_LIB']) if lenv['WITH_BF_FFTW3']: syslibs += Split(lenv['BF_FFTW3_LIB']) if lenv['WITH_BF_SDL']: diff --git a/tools/btools.py b/tools/btools.py index 3e80ac453ce..1ae952adbc7 100755 --- a/tools/btools.py +++ b/tools/btools.py @@ -32,6 +32,7 @@ def validate_arguments(args, bc): 'WITH_BF_SDL', 'BF_SDL', 'BF_SDL_INC', 'BF_SDL_LIB', 'BF_SDL_LIBPATH', 'BF_LIBSAMPLERATE', 'BF_LIBSAMPLERATE_INC', 'BF_LIBSAMPLERATE_LIB', 'BF_LIBSAMPLERATE_LIBPATH', 'WITH_BF_JACK', 'BF_JACK', 'BF_JACK_INC', 'BF_JACK_LIB', 'BF_JACK_LIBPATH', + 'WITH_BF_SNDFILE', 'BF_SNDFILE', 'BF_SNDFILE_INC', 'BF_SNDFILE_LIB', 'BF_SNDFILE_LIBPATH', 'BF_PTHREADS', 'BF_PTHREADS_INC', 'BF_PTHREADS_LIB', 'BF_PTHREADS_LIBPATH', 'WITH_BF_OPENEXR', 'BF_OPENEXR', 'BF_OPENEXR_INC', 'BF_OPENEXR_LIB', 'BF_OPENEXR_LIBPATH', 'WITH_BF_STATICOPENEXR', 'BF_OPENEXR_LIB_STATIC', 'WITH_BF_DDS', @@ -171,13 +172,13 @@ def read_opts(cfg, args): (BoolVariable('WITH_BF_SDL', 'Use SDL if true', False)), ('BF_SDL', 'SDL base path', ''), - ('BF_SDL_INC', 'SDL include path', ''), #$(shell $(BF_SDL)/bin/sdl-config --cflags) - ('BF_SDL_LIB', 'SDL library', ''), #$(shell $(BF_SDL)/bin/sdl-config --libs) -lSDL_mixer + ('BF_SDL_INC', 'SDL include path', ''), + ('BF_SDL_LIB', 'SDL library', ''), ('BF_SDL_LIBPATH', 'SDL library path', ''), ('BF_LIBSAMPLERATE', 'libsamplerate aka SRC base path', ''), - ('BF_LIBSAMPLERATE_INC', 'libsamplerate aka SRC include path', ''), #$(shell $(BF_SDL)/bin/sdl-config --cflags) - ('BF_LIBSAMPLERATE_LIB', 'libsamplerate aka SRC library', ''), #$(shell $(BF_SDL)/bin/sdl-config --libs) -lSDL_mixer + ('BF_LIBSAMPLERATE_INC', 'libsamplerate aka SRC include path', ''), + ('BF_LIBSAMPLERATE_LIB', 'libsamplerate aka SRC library', ''), ('BF_LIBSAMPLERATE_LIBPATH', 'libsamplerate aka SRC library path', ''), (BoolVariable('WITH_BF_JACK', 'Enable jack support if true', True)), @@ -186,6 +187,12 @@ def read_opts(cfg, args): ('BF_JACK_LIB', 'jack library', ''), ('BF_JACK_LIBPATH', 'jack library path', ''), + (BoolVariable('WITH_BF_SNDFILE', 'Enable sndfile support if true', True)), + ('BF_SNDFILE', 'sndfile base path', ''), + ('BF_SNDFILE_INC', 'sndfile include path', ''), + ('BF_SNDFILE_LIB', 'sndfile library', ''), + ('BF_SNDFILE_LIBPATH', 'sndfile library path', ''), + ('BF_PTHREADS', 'Pthreads base path', ''), ('BF_PTHREADS_INC', 'Pthreads include path', ''), ('BF_PTHREADS_LIB', 'Pthreads library', ''),