Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-12-14Cleanup: reorganize doxygen modulesCampbell Barton
- Nest compositor pages under the compositor module - Nest GUI, DNA/RNA & externformats modules under Blender. - Remove modules from intern which no longer exist. - Add intern modules (atomic, eigen, glew-mx, libc_compat, locale, numaapi, rigidbody, sky, utfconv). - Use 'intern_' prefix for intern modules since some of the modules use generic terms such as locale & atomic.
2021-11-01Cleanup: spelling, use C commentsCampbell Barton
2021-10-29Fix T88877: 2.93: Crash on recent OSX with a non-English locale.Ankit Meel
Looks like OSX changed the default format of its locale, which is not valid anymore for gettext/boost::locale. Solution based on investigations and patch by Kieun Mun (@kieuns), with some further tweaks by Ankit Meel (@ankitm), many thanks. Also add an exception catcher on `std::runtime_error` in `bl_locale_set()`, since in OSX catching the ancestor `std::exception` does not work with `boost::locale::conv::conversion_error` and the like for some reasons. Reviewed By: #platform_macos, brecht Maniphest Tasks: T88877 Differential Revision: https://developer.blender.org/D13019
2020-03-19Cleanup: `make format` after SortedIncludes changeDalai Felinto
2020-01-23CMake: Refactor external dependencies handlingSergey Sharybin
This is a more correct fix to the issue Brecht was fixing in D6600. While the fix in that patch worked fine for linking it broke ASAN runtime under some circumstances. For example, `make full debug developer` would compile, but trying to start blender will cause assert failure in ASAN (related on check that ASAN is not running already). Top-level idea: leave it to CMake to keep track of dependency graph. The root of the issue comes to the fact that target like "blender" is configured to use a lot of static libraries coming from Blender sources and to use external static libraries. There is nothing which ensures order between blender's and external libraries. Only order of blender libraries is guaranteed. It was possible that due to a cycle or other circumstances some of blender libraries would have been passed to linker after libraries it uses, causing linker errors. For example, this order will likely fail: libbf_blenfont.a libfreetype6.a libbf_blenfont.a This change makes it so blender libraries are explicitly provided their dependencies to an external libraries, which allows CMake to ensure they are always linked against them. General rule here: if bf_foo depends on an external library it is to be provided to LIBS for bf_foo. For example, if bf_blenkernel depends on opensubdiv then LIBS in blenkernel's CMakeLists.txt is to include OPENSUBDIB_LIBRARIES. The change is made based on searching for used include folders such as OPENSUBDIV_INCLUDE_DIRS and adding corresponding libraries to LIBS ion that CMakeLists.txt. Transitive dependencies are not simplified by this approach, but I am not aware of any downside of this: CMake should be smart enough to simplify them on its side. And even if not, this shouldn't affect linking time. Benefit of not relying on transitive dependencies is that build system is more robust towards future changes. For example, if bf_intern_opensubiv is no longer depends on OPENSUBDIV_LIBRARIES and all such code is moved to bf_blenkernel this will not break linking. The not-so-trivial part is change to blender_add_lib (and its version in Cycles). The complexity is caused by libraries being provided as a single list argument which doesn't allow to use different release and debug libraries on Windows. The idea is: - Have every library prefixed as "optimized" or "debug" if separation is needed (non-prefixed libraries will be considered "generic"). - Loop through libraries passed to function and do simple parsing which will look for "optimized" and "debug" words and specify following library to corresponding category. This isn't something particularly great. Alternative would be to use target_link_libraries() directly, which sounds like more code but which is more explicit and allows to have more flexibility and control comparing to wrapper approach. Tested the following configurations on Linux, macOS and Windows: - make full debug developer - make full release developer - make lite debug developer - make lite release developer NOTE: Linux libraries needs to be compiled with D6641 applied, otherwise, depending on configuration, it's possible to run into duplicated zlib symbols error. Differential Revision: https://developer.blender.org/D6642
2019-05-01Cleanup: comments (long lines) in various intern/ libsCampbell Barton
2019-04-17ClangFormat: apply to source, most of internCampbell Barton
Apply clang format as proposed in T53211. For details on usage and instructions for migrating branches without conflicts, see: https://wiki.blender.org/wiki/Tools/ClangFormat
2019-04-14CMake: prepare for BLENDER_SORTED_LIBS removalCampbell Barton
No functional change, this adds LIB definition and args to cmake files. Without this it's difficult to migrate away from 'BLENDER_SORTED_LIBS' since there are many platforms/configurations that could break when changing linking order. Manually add and enable WITHOUT_SORTED_LIBS to try building without sorted libs (currently fails since all variables are empty). This check will eventually be removed. See T46725.
2019-02-18doxygen: add newline after \fileCampbell Barton
While \file doesn't need an argument, it can't have another doxy command after it.
2019-02-06Cleanup: remove redundant doxygen \file argumentCampbell Barton
Move \ingroup onto same line to be more compact and make it clear the file is in the group.
2019-02-05Cleanup: remove contributors for CMake filesCampbell Barton
Following removal from C source code. See: 8c68ed6df16d8893
2019-02-01Cleanup: remove redundant, invalid info from headersCampbell Barton
BF-admins agree to remove header information that isn't useful, to reduce noise. - BEGIN/END license blocks Developers should add non license comments as separate comment blocks. No need for separator text. - Contributors This is often invalid, outdated or misleading especially when splitting files. It's more useful to git-blame to find out who has developed the code. See P901 for script to perform these edits.
2018-11-24Fix T56374, T57066, T58037: crash on startup on macOS when using translation.Brecht Van Lommel
2018-10-23I18n: tweak/fix exception catching code of pgettex() wrapper.Bastien Montagne
Related to T57066, rather unlikely to fix core of the issue, but may solve crash itself.
2017-04-24Add C internal version of msgfmt (similar to makesrna/dna binaries).Bastien Montagne
Fixes performance issues of C++ one with Windows MSVC debug builds... Merely a translation from msgfmt.cc code by @sergey, using BLI libs intead of C++'s stdlib. Reviewers: sergey, campbellbarton, LazyDodo Subscribers: sergey Differential Revision: https://developer.blender.org/D2605
2017-04-07Cleanup: Unused functionSergey Sharybin
2017-04-05Locales: Some optimization workSergey Sharybin
Mainly visible for MSVC debug builds and gives about 2x speedup.
2016-01-04Remove SCons building systemSergey Sharybin
While SCons building system was serving us really good for ages it's no longer having much attention by the developers and started to become quite a difficult task to maintain. What's even worse -- there started to be quite serious divergence between SCons and CMake which was only accumulating over the releases now. The fact that none of the active developers are really using SCons and that our main studio is also using CMake spotting bugs in the SCons builds became quite a difficult task and we aren't always spotting them in time. Meanwhile CMake became really mature building system which is available on every platform we support and arguably it's also easier and more robust to use. This commit includes: - Removal of actual SCons building system - Removal of SCons git submodule - Removal of documentation which is stored in the sources and covers SCons - Tweaks to the buildbot master to stop using SCons submodule (this change requires deploying to the server) - Tweaks to the install dependencies script to skip installing or mentioning SCons building system - Tweaks to various helper scripts to avoid mention of SCons folders/files as well Reviewers: mont29, dingto, dfelinto, lukastoenne, lukasstockner97, brecht, Severin, merwin, aligorith, psy-fi, campbellbarton, juicyfruit Reviewed By: campbellbarton, juicyfruit Differential Revision: https://developer.blender.org/D1680
2015-12-21Cleanup: warnings (msvc)Campbell Barton
Part of patch D1670 by @LazyDodo
2015-06-29Fix T45154: Translation binary file(blender.mo) for Japanese is too smallSergey Sharybin
The issue was caused by some changes made to msgfmt which were needed to make modified (cleaned-up, stripped-comments messages) working. Unfortunately that fix was merged into the release branch, so this fix is to be ported there as well and verified against rc1 translations.
2015-06-13Msgfmt: Fix for generating .mo files from .po without commentsSergey Sharybin
2015-05-05Workaround ld.gold failing with msgfmtCampbell Barton
2014-11-13Cleanup: cmakeCampbell Barton
2014-10-08Ghost Context RefactorJason Wilkins
https://developer.blender.org/D643 Separates graphics context creation from window code in Ghost so that they can vary separately.
2014-04-29Code cleanup: don't use unnecessary .exe extension in scons, simplify code.Lawrence D'Oliveiro
Reviewed By: brecht Differential Revision: https://developer.blender.org/D236
2014-04-02Fix bpy.so linking on Mac OS XCampbell Barton
D345 from Aleksandr Derbenev
2014-02-26Locale_wrapper: make the bad_cast catch more clear and fix the ↵Jens Verwiebe
std::exception message
2014-02-24OSX: add debug mesg to bl_locale_pgettext for later indeep investigationJens Verwiebe
2014-02-23Fix an uncaught exception on OSX, perhaps general with popupsJens Verwiebe
2014-02-19Code cleanup: styleCampbell Barton
2014-02-18OSX: more futurework for clang-openmp:Jens Verwiebe
- moved assumed location of omp lib to blender libs - prepared libiomp5 to link out of the box with cmake - changed according in scons - introduced a local var C_VENDOR, cause Apple clang 3.4 may not include omp support yet - added a linklibs for msgfmt ( may not be needed for other than OSX )
2013-11-23Fix scons build error compiling 32 bit OS X built on 64 bit.Brecht Van Lommel
2013-11-17OSX/scons: small reorder and spellingJens Verwiebe
2013-11-17OSX/scons: fix msgfmt binary linking and locale files distributionJens Verwiebe
2013-11-16Further tweak to .mo compilation on windowsSergey Sharybin
Was wrong dependency used for msgfmt custom command.
2013-11-16Attempt to fix compilation error on windowsSergey Sharybin
Seems simply need to add .exe to msgfmt executable when adding custom command to SCons. Don't have windows by hand atm, so can not test for sure.
2013-11-15Add functional and cctype headers to msgfmt.ccSergey Sharybin
Fixes compilation with MSVC compilers. Patch by leszekswirski (Lech Swirski) with some own tweaks. Differential Revision: http://developer.blender.org/D2
2013-11-15Fix for msgfmt leaving context from previous message stringSergey Sharybin
2013-11-09Be ready for changes in bf-translations repositorySergey Sharybin
Made it so if there's release/datafiles/locale/po folder, then all the .po files will be converted to .mo at blender compile time and installed to an appropriate location. Uses small own implementation msgfmt which is based on msgfmt.py from Python project, but also supports contexts. There's no functional changes for until we've switched to use source .po files instead of pre-compiled .mo. P.S. Well, there's one change which is msgfmt.cc being compiled even if it's not used, but would rather not clutter code with checks since pretty soon we'll use this program anyway.
2013-09-21style cleanup: whitespace & odd indentationCampbell Barton
2013-06-27Fix #35890: memory leak in OS X ghost locale detection.Brecht Van Lommel
2013-06-21Code cleanup: fix some vs2012 compiler warningsBrecht Van Lommel
2013-05-01Some minor cleanup/polish...Bastien Montagne
2013-05-01This should at least prevent crash in [#35172]...Bastien Montagne
2013-03-04OSX/locale: a further cleanupJens Verwiebe
2013-03-03OSX: Get the current locale in objC-styleJens Verwiebe
2013-01-20Python i18n API. Many thanks to Campbell and Brecht for the reviews and ↵Bastien Montagne
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.
2012-12-31Add try/catch around i18n locale setter code, just in case...Bastien Montagne
2012-12-17Added GPL header to sconscripts!Bastien Montagne
Also changed shebang to '#!/usr/bin/env python', this is more portable across unixes...
2012-12-04cmake was missing some header files.Campbell Barton