2010-11-17 07:22:20 +00:00
|
|
|
# ***** 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): Jacques Beaurainm, Campbell Barton
|
|
|
|
#
|
|
|
|
# ***** END GPL LICENSE BLOCK *****
|
|
|
|
|
2010-12-08 08:43:06 +00:00
|
|
|
set(INC
|
2010-12-31 04:29:11 +00:00
|
|
|
..
|
2011-11-09 14:13:17 +00:00
|
|
|
../../blenfont
|
2011-07-17 09:11:13 +00:00
|
|
|
../../blenkernel
|
2010-11-17 07:22:20 +00:00
|
|
|
../../blenlib
|
2011-07-17 09:11:13 +00:00
|
|
|
../../blenloader
|
|
|
|
../../editors/include
|
2012-10-17 04:13:03 +00:00
|
|
|
../../gpu
|
2010-11-17 07:22:20 +00:00
|
|
|
../../makesdna
|
|
|
|
../../makesrna
|
|
|
|
../../windowmanager
|
2012-01-09 16:58:01 +00:00
|
|
|
../../../../intern/cycles/blender
|
2013-12-08 15:03:17 +06:00
|
|
|
../../../../intern/opencolorio
|
2010-11-17 07:22:20 +00:00
|
|
|
../../../../intern/guardedalloc
|
2011-05-31 01:15:44 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
set(INC_SYS
|
2011-01-25 14:43:13 +00:00
|
|
|
${PYTHON_INCLUDE_DIRS}
|
2010-11-17 07:22:20 +00:00
|
|
|
)
|
|
|
|
|
2010-12-08 08:43:06 +00:00
|
|
|
set(SRC
|
2011-12-28 12:35:58 +00:00
|
|
|
gpu.c
|
2010-11-17 07:22:20 +00:00
|
|
|
bpy.c
|
|
|
|
bpy_app.c
|
2012-12-18 18:02:20 +00:00
|
|
|
bpy_app_build_options.c
|
2015-02-19 07:15:55 +11:00
|
|
|
bpy_app_ffmpeg.c
|
2011-06-24 16:54:30 +00:00
|
|
|
bpy_app_handlers.c
|
2013-12-08 15:03:17 +06:00
|
|
|
bpy_app_ocio.c
|
|
|
|
bpy_app_oiio.c
|
2015-02-18 12:07:48 +01:00
|
|
|
bpy_app_sdl.c
|
Python i18n API. Many thanks to Campbell and Brecht for the reviews and suggestions!
This commit adds:
* A new bpy.app.translations module giving some info about locales/translation stuff (current active locale, all locales currently known by blender, all translation contexts currently defined, etc.).
* The ability for addons to feature translations, using the (un)register functions of above module.
* Also cleans up "translate py string when storing into RNA prop" by removing "PROP_TRANSLATE" string's subtype, and adding a PROP_STRING_PY_TRANSLATE flag instead (this way it is no more exposed to python...).
Addon translations work with py dictionaries: each addon features a dict {lang: {(context, message): translation, ...}, ...}, which is registered when the addon is enabled (and unregistered when disabled).
Then, when a key (context, message) is not found in regular mo catalog, a cache dict for current locale is built from all registered addon translations, and key is searched in it.
Note: currently addons writers have to do all the work by hand, will add something (probably extend "edit translation" addon) to automate messages extraction from addons soon(ish)! To get a look to expected behavior from addons, have a look at render_copy_settings/__init__.py and render_copy_settings/translations.py (rather stupid example currently, but...). Once we have a complete process, I'll also update relevant wiki pages.
2013-01-20 17:29:07 +00:00
|
|
|
bpy_app_translations.c
|
2010-11-17 07:22:20 +00:00
|
|
|
bpy_driver.c
|
|
|
|
bpy_interface.c
|
2011-09-20 12:22:19 +00:00
|
|
|
bpy_interface_atexit.c
|
2011-06-18 08:45:45 +00:00
|
|
|
bpy_intern_string.c
|
library loading api.
this is not well suited to RNA so this is a native python api.
This uses:
bpy.data.libraries.load(filepath, link=False, relative=False)
however the return value needs to use pythons context manager, this means the library loading is confined to a block of code and python cant leave a half loaded library state.
eg, load a single scene we know the name of:
with bpy.data.libraries.load(filepath) as (data_from, data_to):
data_to.scenes = ["Scene"]
eg, load all scenes:
with bpy.data.libraries.load(filepath) as (data_from, data_to):
data_to.scenes = data_from.scenes
eg, load all objects starting with 'A'
with bpy.data.libraries.load(filepath) as (data_from, data_to):
data_to.objects = [name for name in data_from.objects if name.startswith("A")]
As you can see gives 2 objects like 'bpy.data', but containing lists of strings which can be moved from one into another.
2011-03-12 16:06:37 +00:00
|
|
|
bpy_library.c
|
2010-11-17 07:22:20 +00:00
|
|
|
bpy_operator.c
|
|
|
|
bpy_operator_wrap.c
|
2013-01-04 03:47:37 +00:00
|
|
|
bpy_path.c
|
2010-11-17 07:22:20 +00:00
|
|
|
bpy_props.c
|
|
|
|
bpy_rna.c
|
2011-03-02 04:51:43 +00:00
|
|
|
bpy_rna_anim.c
|
2010-11-17 07:22:20 +00:00
|
|
|
bpy_rna_array.c
|
|
|
|
bpy_rna_callback.c
|
2011-02-22 11:32:29 +00:00
|
|
|
bpy_traceback.c
|
2010-11-17 07:22:20 +00:00
|
|
|
bpy_util.c
|
2014-06-17 16:03:40 +02:00
|
|
|
bpy_utils_units.c
|
2010-11-17 07:22:20 +00:00
|
|
|
stubs.c
|
2010-11-29 04:35:56 +00:00
|
|
|
|
2011-12-28 12:35:58 +00:00
|
|
|
gpu.h
|
2010-11-29 04:35:56 +00:00
|
|
|
bpy.h
|
|
|
|
bpy_app.h
|
2012-12-18 18:02:20 +00:00
|
|
|
bpy_app_build_options.h
|
2015-02-19 07:15:55 +11:00
|
|
|
bpy_app_ffmpeg.h
|
2011-06-24 16:54:30 +00:00
|
|
|
bpy_app_handlers.h
|
2013-12-08 15:03:17 +06:00
|
|
|
bpy_app_ocio.h
|
|
|
|
bpy_app_oiio.h
|
2015-02-19 07:15:55 +11:00
|
|
|
bpy_app_sdl.h
|
Python i18n API. Many thanks to Campbell and Brecht for the reviews and suggestions!
This commit adds:
* A new bpy.app.translations module giving some info about locales/translation stuff (current active locale, all locales currently known by blender, all translation contexts currently defined, etc.).
* The ability for addons to feature translations, using the (un)register functions of above module.
* Also cleans up "translate py string when storing into RNA prop" by removing "PROP_TRANSLATE" string's subtype, and adding a PROP_STRING_PY_TRANSLATE flag instead (this way it is no more exposed to python...).
Addon translations work with py dictionaries: each addon features a dict {lang: {(context, message): translation, ...}, ...}, which is registered when the addon is enabled (and unregistered when disabled).
Then, when a key (context, message) is not found in regular mo catalog, a cache dict for current locale is built from all registered addon translations, and key is searched in it.
Note: currently addons writers have to do all the work by hand, will add something (probably extend "edit translation" addon) to automate messages extraction from addons soon(ish)! To get a look to expected behavior from addons, have a look at render_copy_settings/__init__.py and render_copy_settings/translations.py (rather stupid example currently, but...). Once we have a complete process, I'll also update relevant wiki pages.
2013-01-20 17:29:07 +00:00
|
|
|
bpy_app_translations.h
|
2011-02-14 04:15:25 +00:00
|
|
|
bpy_driver.h
|
2011-06-18 08:45:45 +00:00
|
|
|
bpy_intern_string.h
|
2012-09-15 01:52:28 +00:00
|
|
|
bpy_library.h
|
2010-11-29 04:35:56 +00:00
|
|
|
bpy_operator.h
|
|
|
|
bpy_operator_wrap.h
|
2013-01-04 03:47:37 +00:00
|
|
|
bpy_path.h
|
2010-11-29 04:35:56 +00:00
|
|
|
bpy_props.h
|
|
|
|
bpy_rna.h
|
2011-03-02 04:51:43 +00:00
|
|
|
bpy_rna_anim.h
|
2010-11-29 04:35:56 +00:00
|
|
|
bpy_rna_callback.h
|
2011-02-22 11:32:29 +00:00
|
|
|
bpy_traceback.h
|
2010-11-29 04:35:56 +00:00
|
|
|
bpy_util.h
|
2014-06-17 16:03:40 +02:00
|
|
|
bpy_utils_units.h
|
2010-11-29 04:35:56 +00:00
|
|
|
../BPY_extern.h
|
2010-11-17 07:22:20 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
# only to check if buildinfo is available
|
2010-12-08 08:43:06 +00:00
|
|
|
if(WITH_BUILDINFO)
|
|
|
|
add_definitions(-DBUILD_DATE)
|
|
|
|
endif()
|
2010-11-17 07:22:20 +00:00
|
|
|
|
2011-02-20 23:39:29 +00:00
|
|
|
if(WITH_PYTHON_MODULE)
|
|
|
|
add_definitions(-DWITH_PYTHON_MODULE)
|
|
|
|
endif()
|
|
|
|
|
2011-03-03 12:00:35 +00:00
|
|
|
if(WITH_PYTHON_SAFETY)
|
|
|
|
add_definitions(-DWITH_PYTHON_SAFETY)
|
|
|
|
endif()
|
|
|
|
|
2012-12-18 18:02:20 +00:00
|
|
|
|
|
|
|
|
2011-06-23 09:27:56 +00:00
|
|
|
if(WITH_AUDASPACE)
|
|
|
|
add_definitions(-DWITH_AUDASPACE)
|
|
|
|
endif()
|
|
|
|
|
2012-12-18 18:02:20 +00:00
|
|
|
if(WITH_BULLET)
|
|
|
|
add_definitions(-DWITH_BULLET)
|
2011-08-16 16:15:34 +00:00
|
|
|
endif()
|
|
|
|
|
2012-12-18 18:02:20 +00:00
|
|
|
if(WITH_CODEC_AVI)
|
|
|
|
add_definitions(-DWITH_AVI)
|
2011-12-28 12:35:58 +00:00
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_CODEC_FFMPEG)
|
|
|
|
list(APPEND INC_SYS
|
|
|
|
${FFMPEG_INCLUDE_DIRS}
|
|
|
|
)
|
|
|
|
add_definitions(-DWITH_FFMPEG)
|
2011-09-21 13:53:35 +00:00
|
|
|
endif()
|
|
|
|
|
2012-12-18 18:02:20 +00:00
|
|
|
if(WITH_CODEC_QUICKTIME)
|
|
|
|
add_definitions(-DWITH_QUICKTIME)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_CODEC_SNDFILE)
|
|
|
|
add_definitions(-DWITH_SNDFILE)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_COMPOSITOR)
|
|
|
|
add_definitions(-DWITH_COMPOSITOR)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_CYCLES)
|
|
|
|
add_definitions(-DWITH_CYCLES)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_CYCLES_OSL)
|
|
|
|
add_definitions(-DWITH_CYCLES_OSL)
|
|
|
|
endif()
|
|
|
|
|
2012-12-20 07:57:26 +00:00
|
|
|
if(WITH_FREESTYLE)
|
|
|
|
list(APPEND INC
|
|
|
|
../../freestyle/intern/python
|
|
|
|
)
|
|
|
|
add_definitions(-DWITH_FREESTYLE)
|
|
|
|
endif()
|
|
|
|
|
2012-12-18 18:02:20 +00:00
|
|
|
if(WITH_GAMEENGINE)
|
|
|
|
add_definitions(-DWITH_GAMEENGINE)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_IMAGE_CINEON)
|
|
|
|
add_definitions(-DWITH_CINEON)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_IMAGE_DDS)
|
|
|
|
add_definitions(-DWITH_DDS)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_IMAGE_FRAMESERVER)
|
|
|
|
add_definitions(-DWITH_FRAMESERVER)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_IMAGE_HDR)
|
|
|
|
add_definitions(-DWITH_HDR)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_IMAGE_OPENEXR)
|
|
|
|
add_definitions(-DWITH_OPENEXR)
|
|
|
|
endif()
|
|
|
|
|
2013-10-12 23:56:21 +00:00
|
|
|
if(WITH_OPENIMAGEIO)
|
2013-10-11 23:14:01 +00:00
|
|
|
add_definitions(-DWITH_OPENIMAGEIO)
|
2013-10-08 21:17:24 +00:00
|
|
|
endif()
|
|
|
|
|
2012-12-18 18:02:20 +00:00
|
|
|
if(WITH_IMAGE_OPENJPEG)
|
|
|
|
add_definitions(-DWITH_OPENJPEG)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_IMAGE_REDCODE)
|
|
|
|
add_definitions(-DWITH_REDCODE)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_IMAGE_TIFF)
|
|
|
|
add_definitions(-DWITH_TIFF)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_INPUT_NDOF)
|
|
|
|
add_definitions(-DWITH_INPUT_NDOF)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_INTERNATIONAL)
|
|
|
|
add_definitions(-DWITH_INTERNATIONAL)
|
|
|
|
endif()
|
|
|
|
|
2013-01-04 04:43:49 +00:00
|
|
|
if(WITH_OPENAL)
|
|
|
|
add_definitions(-DWITH_OPENAL)
|
2012-12-18 18:02:20 +00:00
|
|
|
endif()
|
|
|
|
|
2013-01-04 04:43:49 +00:00
|
|
|
if(WITH_SDL)
|
2015-02-18 12:07:48 +01:00
|
|
|
list(APPEND INC_SYS
|
|
|
|
${SDL_INCLUDE_DIR}
|
|
|
|
)
|
2013-01-04 04:43:49 +00:00
|
|
|
add_definitions(-DWITH_SDL)
|
|
|
|
endif()
|
|
|
|
|
2015-02-18 12:07:48 +01:00
|
|
|
if(WITH_SDL_DYNLOAD)
|
|
|
|
list(APPEND INC
|
|
|
|
../../../../extern/sdlew/include
|
|
|
|
)
|
|
|
|
add_definitions(-DWITH_SDL_DYNLOAD)
|
|
|
|
endif()
|
|
|
|
|
2013-01-04 04:43:49 +00:00
|
|
|
if(WITH_JACK)
|
|
|
|
add_definitions(-DWITH_JACK)
|
2012-12-18 18:02:20 +00:00
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_LIBMV)
|
|
|
|
add_definitions(-DWITH_LIBMV)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_MOD_BOOLEAN)
|
|
|
|
add_definitions(-DWITH_MOD_BOOLEAN)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_MOD_FLUID)
|
|
|
|
add_definitions(-DWITH_MOD_FLUID)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_MOD_OCEANSIM)
|
|
|
|
add_definitions(-DWITH_OCEANSIM)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_MOD_REMESH)
|
|
|
|
add_definitions(-DWITH_MOD_REMESH)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_MOD_SMOKE)
|
|
|
|
add_definitions(-DWITH_SMOKE)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WITH_OPENCOLLADA)
|
|
|
|
add_definitions(-DWITH_COLLADA)
|
|
|
|
endif()
|
|
|
|
|
2013-01-04 04:43:49 +00:00
|
|
|
if(WITH_OPENCOLORIO)
|
|
|
|
add_definitions(-DWITH_OCIO)
|
|
|
|
endif()
|
|
|
|
|
2013-12-08 15:03:17 +06:00
|
|
|
if(WITH_OPENIMAGEIO)
|
|
|
|
add_definitions(-DWITH_OPENIMAGEIO)
|
|
|
|
list(APPEND INC
|
|
|
|
../../imbuf/intern/oiio
|
|
|
|
)
|
|
|
|
endif()
|
|
|
|
|
2012-12-18 18:02:20 +00:00
|
|
|
if(WITH_PLAYER)
|
|
|
|
add_definitions(-DWITH_PLAYER)
|
|
|
|
endif()
|
|
|
|
|
2014-10-07 15:46:19 -05:00
|
|
|
add_definitions(${GL_DEFINITIONS})
|
2012-12-18 18:02:20 +00:00
|
|
|
|
2011-05-31 01:15:44 +00:00
|
|
|
blender_add_lib(bf_python "${SRC}" "${INC}" "${INC_SYS}")
|