2012-12-17 08:01:43 +00:00
|
|
|
#!/usr/bin/env python
|
|
|
|
|
#
|
|
|
|
|
# ***** BEGIN GPL LICENSE BLOCK *****
|
|
|
|
|
#
|
|
|
|
|
# This program is free software; you can redistribute it and/or
|
|
|
|
|
# modify it under the terms of the GNU General Public License
|
|
|
|
|
# as published by the Free Software Foundation; either version 2
|
|
|
|
|
# of the License, or (at your option) any later version.
|
|
|
|
|
#
|
|
|
|
|
# This program is distributed in the hope that it will be useful,
|
|
|
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
|
# GNU General Public License for more details.
|
|
|
|
|
#
|
|
|
|
|
# You should have received a copy of the GNU General Public License
|
|
|
|
|
# along with this program; if not, write to the Free Software Foundation,
|
|
|
|
|
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
|
|
|
#
|
|
|
|
|
# The Original Code is Copyright (C) 2006, Blender Foundation
|
|
|
|
|
# All rights reserved.
|
|
|
|
|
#
|
|
|
|
|
# The Original Code is: all of this file.
|
|
|
|
|
#
|
|
|
|
|
# Contributor(s): Nathan Letwory.
|
|
|
|
|
#
|
|
|
|
|
# ***** END GPL LICENSE BLOCK *****
|
|
|
|
|
|
2011-09-19 15:18:58 +00:00
|
|
|
import os
|
2006-02-04 14:15:10 +00:00
|
|
|
Import ('env')
|
2004-02-29 21:40:48 +00:00
|
|
|
|
2006-02-04 14:15:10 +00:00
|
|
|
sources = env.Glob('intern/*.c')
|
2004-01-04 21:11:59 +00:00
|
|
|
|
2013-05-20 18:42:28 +00:00
|
|
|
incs = [
|
|
|
|
|
'.',
|
|
|
|
|
'#/intern/opencolorio',
|
|
|
|
|
'#/intern/ffmpeg',
|
|
|
|
|
'#/intern/guardedalloc',
|
|
|
|
|
'#/intern/memutil',
|
|
|
|
|
'../avi',
|
|
|
|
|
'../blenkernel',
|
|
|
|
|
'../blenlib',
|
|
|
|
|
'../blenloader',
|
|
|
|
|
'../makesdna',
|
|
|
|
|
'../makesrna',
|
|
|
|
|
env['BF_JPEG_INC'],
|
|
|
|
|
env['BF_PNG_INC'],
|
|
|
|
|
env['BF_TIFF_INC'],
|
|
|
|
|
env['BF_ZLIB_INC'],
|
|
|
|
|
]
|
|
|
|
|
incs = ' '.join(incs)
|
2004-01-04 21:11:59 +00:00
|
|
|
|
2006-02-04 14:15:10 +00:00
|
|
|
defs = []
|
2004-01-04 21:11:59 +00:00
|
|
|
|
2012-04-24 12:57:58 +00:00
|
|
|
if env['OURPLATFORM'] in ('win32-vc', 'win32-mingw', 'linuxcross', 'win64-vc', 'win64-mingw'):
|
Merge image related changes from the render branch. This includes the image
tile cache code in imbuf, but it is not hooked up to the render engine.
Imbuf module: some small refactoring and removing a lot of unused or old code
(about 6.5k lines).
* Added a ImFileType struct with callbacks to make adding an file format type,
or making changes to the API easier.
* Move imbuf init/exit code into IMB_init()/IMB_exit() functions.
* Increased mipmap levels from 10 to 20, you run into this limit already with
a 2k image.
* Removed hamx, amiga, anim5 format support.
* Removed colormap saving, only simple colormap code now for reading tga.
* Removed gen_dynlibtiff.py, editing this is almost as much work as just
editing the code directly.
* Functions removed that were only used for sequencer plugin API:
IMB_anim_nextpic, IMB_clever_double, IMB_antialias, IMB_gamwarp,
IMB_scalefieldImBuf, IMB_scalefastfieldImBuf, IMB_onethird, IMB_halflace,
IMB_dit0, IMB_dit2, IMB_cspace
* Write metadata info into OpenEXR images. Can be viewed with the command
line utility 'exrheader'
For the image tile cache code, see this page:
http://wiki.blender.org/index.php/Dev:2.5/Source/Imaging/ImageTileCache
2010-05-07 15:18:04 +00:00
|
|
|
incs += ' ' + env['BF_PTHREADS_INC']
|
2012-03-20 02:17:37 +00:00
|
|
|
incs += ' ../../../intern/utfconv'
|
Merge image related changes from the render branch. This includes the image
tile cache code in imbuf, but it is not hooked up to the render engine.
Imbuf module: some small refactoring and removing a lot of unused or old code
(about 6.5k lines).
* Added a ImFileType struct with callbacks to make adding an file format type,
or making changes to the API easier.
* Move imbuf init/exit code into IMB_init()/IMB_exit() functions.
* Increased mipmap levels from 10 to 20, you run into this limit already with
a 2k image.
* Removed hamx, amiga, anim5 format support.
* Removed colormap saving, only simple colormap code now for reading tga.
* Removed gen_dynlibtiff.py, editing this is almost as much work as just
editing the code directly.
* Functions removed that were only used for sequencer plugin API:
IMB_anim_nextpic, IMB_clever_double, IMB_antialias, IMB_gamwarp,
IMB_scalefieldImBuf, IMB_scalefastfieldImBuf, IMB_onethird, IMB_halflace,
IMB_dit0, IMB_dit2, IMB_cspace
* Write metadata info into OpenEXR images. Can be viewed with the command
line utility 'exrheader'
For the image tile cache code, see this page:
http://wiki.blender.org/index.php/Dev:2.5/Source/Imaging/ImageTileCache
2010-05-07 15:18:04 +00:00
|
|
|
|
2013-10-11 16:38:31 +00:00
|
|
|
if env['WITH_BF_OIIO']:
|
2013-10-11 21:37:25 +00:00
|
|
|
defs.append('WITH_OPENIMAGEIO')
|
2013-10-11 16:38:31 +00:00
|
|
|
|
2008-10-22 11:28:10 +00:00
|
|
|
if env['WITH_BF_OPENEXR']:
|
2006-02-04 14:15:10 +00:00
|
|
|
defs.append('WITH_OPENEXR')
|
2012-03-01 11:19:41 +00:00
|
|
|
else:
|
|
|
|
|
sources.append(os.path.join('intern', 'openexr', 'openexr_stub.cpp'))
|
2006-02-04 14:15:10 +00:00
|
|
|
|
2010-05-21 03:25:38 +00:00
|
|
|
if env['WITH_BF_TIFF']:
|
|
|
|
|
defs.append('WITH_TIFF')
|
2011-09-19 06:32:19 +00:00
|
|
|
else:
|
2013-03-15 19:00:21 +00:00
|
|
|
sources.remove(os.path.join('intern', 'tiff.c'))
|
2010-05-21 03:25:38 +00:00
|
|
|
|
2008-10-22 11:28:10 +00:00
|
|
|
if env['WITH_BF_DDS']:
|
2007-06-25 19:50:25 +00:00
|
|
|
defs.append('WITH_DDS')
|
|
|
|
|
|
2010-08-03 11:25:34 +00:00
|
|
|
if env['WITH_BF_CINEON']:
|
|
|
|
|
defs.append('WITH_CINEON')
|
|
|
|
|
|
|
|
|
|
if env['WITH_BF_HDR']:
|
|
|
|
|
defs.append('WITH_HDR')
|
2011-09-19 06:32:19 +00:00
|
|
|
else:
|
2013-03-15 19:00:21 +00:00
|
|
|
sources.remove(os.path.join('intern', 'radiance_hdr.c'))
|
2010-08-03 11:25:34 +00:00
|
|
|
|
2008-10-22 11:28:10 +00:00
|
|
|
if env['WITH_BF_FFMPEG']:
|
2006-02-06 00:50:21 +00:00
|
|
|
defs.append('WITH_FFMPEG')
|
2006-08-14 12:47:13 +00:00
|
|
|
incs += ' ' + env['BF_FFMPEG_INC']
|
2006-02-05 19:23:34 +00:00
|
|
|
|
2008-10-22 11:28:10 +00:00
|
|
|
if env['WITH_BF_OPENJPEG']:
|
2008-06-02 21:35:57 +00:00
|
|
|
defs.append('WITH_OPENJPEG')
|
|
|
|
|
incs += ' ' + env['BF_OPENJPEG_INC']
|
2011-09-19 06:32:19 +00:00
|
|
|
else:
|
2013-03-15 19:00:21 +00:00
|
|
|
sources.remove(os.path.join('intern', 'jp2.c'))
|
2008-06-02 21:35:57 +00:00
|
|
|
|
2008-10-22 11:28:10 +00:00
|
|
|
if env['WITH_BF_REDCODE']:
|
2008-06-02 21:35:57 +00:00
|
|
|
defs.append('WITH_REDCODE')
|
|
|
|
|
incs += ' ' + env['BF_REDCODE_INC']
|
|
|
|
|
|
2008-10-22 11:28:10 +00:00
|
|
|
if env['WITH_BF_QUICKTIME']:
|
2010-08-29 20:52:05 +00:00
|
|
|
incs += ' ../quicktime ' + env['BF_QUICKTIME_INC']
|
|
|
|
|
defs.append('WITH_QUICKTIME')
|
2006-02-04 14:15:10 +00:00
|
|
|
|
2009-09-05 01:58:02 +00:00
|
|
|
env.BlenderLib ( libname = 'bf_imbuf', sources = sources, includes = Split(incs), defines = defs, libtype=['core','player'], priority = [185,115] )
|