Commit Graph

522 Commits

Author SHA1 Message Date
Campbell Barton
d17e6c10df Cleanup: quiet minilzo warnings 2015-03-06 17:47:23 +11:00
Sergey Sharybin
eb16b04b9d CMake: Need to find pugixml.hpp instead of pugixml.h
That's how file is actually called in the upstream.
2015-03-05 17:23:23 +05:00
Campbell Barton
30d6589069 CMake: mark lib/debug options advanced 2015-03-05 15:42:01 +11:00
Campbell Barton
7293291a40 cleanup: typos 2015-02-27 15:57:59 +11:00
Campbell Barton
1da5e8df6f error in last commit 2015-02-25 18:19:39 +11:00
Campbell Barton
83caabebd2 CMake: error making get_blender_version a function
Incorrect use of PARENT_SCOPE meant the vars would be used uninitialized elsewhere.
2015-02-25 18:15:54 +11:00
Campbell Barton
ee9ac4e4fc CMake: remove expression in endif(...) 2015-02-19 07:45:59 +11:00
Sybren A. Stüvel
9a10b208ba Ensure CMake finds SDL 2.0
CMake 2.8 doesn't search /usr/include/SDL2, which is the include directory
for SDL 2.x on Ubuntu Linux (and possibly others). This results in SDL 1.2
headers being found when WITH_SDL_DYNLOAD=OFF, and our shipped SDL 2.0
headers when WITH_SDL_DYNLOAD=ON. This patch ensures that in both
cases the correct SDL headers are used.

Reviewers: sergey, campbellbarton

Projects: #bf_blender

Differential Revision: https://developer.blender.org/D1112
2015-02-16 09:27:50 +01:00
Sergey Sharybin
a439c8026a CMake: Add search path for jemalloc which corresponds to own and studio setup 2015-02-14 12:29:48 +05:00
Campbell Barton
616eb6818f cleanup 2015-02-13 16:17:00 +11:00
Sergey Sharybin
53c4033b5b CMake cleanup: Move OSL detection code into FindOpenShadingLanguage.cmake
Should be no functional changes.
2015-02-10 02:45:59 +05:00
Sergey Sharybin
40f237675f Some tweaks to support upcoming OSL-1.6
Doesn't mean we're 100% ready for the transition, but need to start somewhere
anyway. Changes:

- OSL is no longer supporting cpp and requires usage of Boost Wave.
  So now Wave component of Boost is optionally demanded when looking for the
  Boost libraries if OSL is enabled.

  Only did this for Linux, MSVC seems already using Wave. Not sure about OSX.

- Because of the same reason OSL should be moved prior Boost for linker.

- Whole archive trick makes it so linking fails with duplicated symbols, so
  removed it for the new OSL. Didn't see issues with this so far.

- Added some code to check OSL version on Linux. Would need to move all that
  to FindOpenShadingLanguage.cmake which we can get from Cycles standalone
  repository.

  So in theory no affect on current stup would be made at all.

- Added some tweaks to buildbot files. It now seems to be happy with the new
  OSL libraries, but again, those tweaks are not in action yet.

All this was tested on Linux only. Win/OSX might still need some tweaks to
support new OSL.

P.S. This doesn't mean we're pushing OSL update yet, just making some
preliminary tweaks to avoid entropy of PITA when we'll actually want to
switch.
2015-02-06 14:57:32 +05:00
Campbell Barton
bec7d62218 CMake: add PLATFORM_LINKFLAGS to CMAKE_(SHARED|MODULE)_LINKER_FLAGS
D750 by @leszekswirski

Need for compiling Blender as a Python module in Windows.
2015-02-05 19:49:46 +11:00
Sergey Sharybin
66f85d3487 Added default install location from install_deps.sh to FindOpenEXR.cmake
Patch by Oliver Weissbarth, thanks!

Differential Revision: https://developer.blender.org/D907
2015-01-28 23:36:51 +05:00
Sergey Sharybin
90f2febbf4 CMake: Auto-detect path to idiff application in FindOpenImageIO.cmake
Not used at this moment, but will be real soon with new ctests.
2015-01-22 15:53:15 +05:00
Lukas Tönne
5322def57c Moved the cloth solver code into a new subfolder/library inside Blender
code.

The implicit solver itself should remain agnostic to the specifics of
the Blender data (cloth vs. hair). This way we could avoid the bloated
data conversion chain from particles/hair to derived mesh to cloth
modifier to implicit solver data and back. Every step in this chain adds
overhead as well as rounding errors and a possibility for bugs, not to
speak of making the code horribly complicated.

The new subfolder is named "physics" since it should be the start of a
somewhat "unified" physics systems combining all the various solvers in
the same place and managing things like synchronized time steps.
2015-01-20 09:30:00 +01:00
Campbell Barton
73955e2566 Fix for GTest 2015-01-09 23:33:02 +11:00
Antony Riakiotakis
e02af840e1 Fix gtest linking on ubuntu and do minor cleanup.
Generally for build systems, libraries that do not depend on other
libraries, such as system libraries, OpenGL etc always go at the end.

We could even get rid of some duplicate dependency libraries here but
auto duplication by build systems and differences between OSs make this
difficult.

GTest still duplicates all libraries twice to solve some issues which is
weird (maybe libs are not sorted correctly for some reason? needs
investigation)
2015-01-08 17:17:40 +01:00
Campbell Barton
0d7e8cc869 GTest was broken on Linux 2015-01-03 17:55:59 +11:00
Sergey Sharybin
e9596e5def Cycles: Post-reintegration tweaks to ensure things do compile
This commit contains all the tweaks which were missing in initial patch
re-integration from the standalone Cycles repository.

This commit also contains an utility cmake macro to help linking targets
with different libraries for release/debug builds, the name currently is

  target_link_libraries_decoupled

it gets a target and list of libraries and makes sure debug builds are
using libraries with "_d" suffix.

After all this changes it'll hopefully be easier to interchange patches
between blender and standalone repositories, because they're now quite
identical.
2015-01-01 01:31:08 +05:00
Sergey Sharybin
e0a809fb1d Cycles: Fix compilation error when OIIO is compiled with external PugiXML parser
Basic idea is to check whether OIIO is compiled with embedded PugiXML parser
and if so use PugiXML from OIIO, otherwise find a standalone PugiXML library.
2015-01-01 01:31:07 +05:00
Lukas Tönne
f392f56397 Small fix for QTCreator project script, by Sybren Stüvel.
Either ./blender-git or ~/blender-git should be used, but not
.~/blender-git. This patch fixes that, by choosing ~/blender-git,
in line with the last CLI argument.
2014-12-29 13:45:05 +01:00
Sergey Sharybin
e0cb67f740 CMake: Add check for whether OIIO has bundled pugixml library
Will become handy when we'll be re-integrating changes from Cycles standalone
repository back to blender.
2014-12-29 15:08:16 +05:00
Campbell Barton
3bd46904be Cleanup: warnings 2014-12-01 14:54:13 +01:00
Campbell Barton
3563276d70 Revert "OSX/cpack: add a dummy bg and ds_store for dmg"
This reverts commit 5f7b273236fc09ad4752529b964e0e1d6c681979.

Binary files for release should be added to svn lib from now on.
2014-11-18 11:40:16 +01:00
Jens Verwiebe
5f7b273236 OSX/cpack: add a dummy bg and ds_store for dmg 2014-11-18 10:31:22 +01:00
Campbell Barton
0b6631414b CMake: update lite config 2014-11-17 19:40:48 +01:00
Sergey Sharybin
80d1d624d3 Support dynamic loading of SDL libraries
This is mainly to address old issue when one need to have SDL library installed
in order to use our official builds. Some hip distros already installs SDL,
but it's not quite the same across all the variety of the distros.

We also now switching to SDL-2.0, most of the distros have it in repositories
already, so it shouldn't be huge deal to install it if needed.

Reviewers: campbellbarton

Reviewed By: campbellbarton

Differential Revision: https://developer.blender.org/D878
2014-11-17 17:43:18 +05:00
Campbell Barton
080c1d4567 Error in last commit 2014-11-16 13:28:12 +01:00
Campbell Barton
f283f57432 CMake: cleanup, namespace & unused vars
also add macro 'print_all_vars()', if(0)'d - debugging only.
2014-11-16 13:04:10 +01:00
Martijn Berger
a28c763b44 Cmake windows. Make sure we install blender player.
Add blenderplayer component so you can speicfy to install this in the
installer
2014-11-15 20:52:10 +01:00
Campbell Barton
b1ca5b30cf CMake: add 'make full' target 2014-11-13 19:41:33 +01:00
Martijn Berger
15a7a5a08c CMake buildbot change upload should work now
CPack generating NSIS and WiX installers should also work
2014-11-13 17:09:47 +01:00
Campbell Barton
5e0e175422 Cleanup: spelling (D831) 2014-11-03 23:28:16 +01:00
Campbell Barton
47faf618a6 Fix project-file generators (didn't close files) 2014-10-30 18:26:54 +01:00
Sergey Sharybin
4b8430ae8a CMake: Add a flag to explicitly disable SSE/SSE2 intrinsics
The flag is called WITH_CPU_SSE, it is ON by default so no one should
be affected by the change really.

This should hopefully fix https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=763755
2014-10-15 14:53:12 +06:00
Jason Wilkins
8d084e8c8f Ghost Context Refactor
https://developer.blender.org/D643
Separates graphics context creation from window code in Ghost so that they can vary separately.
2014-10-07 15:47:32 -05:00
Campbell Barton
90f75b8ce0 Cleanup: use static sets where possible 2014-09-18 17:45:31 +10:00
Campbell Barton
e56de9d9d5 Remove SVN references 2014-08-06 05:46:31 +10:00
Campbell Barton
ea9d94cf28 Spelling 2014-08-06 05:41:14 +10:00
Howard Trickey
4071719ae7 Fix to commit rB77b7e1fe9ab: need ${target} instead of blender in cmake macro. 2014-08-05 07:55:25 -04:00
Sergey Sharybin
77b7e1fe9a Deduplicate CUDA and OpenCL wranglers
For now it was mainly about OpenCL wrangler being duplicated
between Cycles and Compositor, but with OpenSubdiv work those
wranglers were gonna to be duplicated just once again.

This commit makes it so Cycles and Compositor uses wranglers
from this repositories:

  - https://github.com/CudaWrangler/cuew
  - https://github.com/OpenCLWrangler/clew

This repositories are based on the wranglers we used before
and they'll be likely continued maintaining by us plus some
more players in the market.

Pretty much straightforward change with some tricks in the
CMake/SCons to make this libs being passed to the linker
after all other libraries in order to make OpenSubdiv linked
against those wranglers in the future.

For those who're worrying about Cycles being less standalone,
it's not truth, it's rather more flexible now and in the future
different wranglers might be used in Cycles. For now it'll
just mean those libs would need to be put into Cycles repository
together with some other libs from Blender such as mikkspace.

This is mainly platform maintenance commit, should not be any
changes to the user space.

Reviewers: juicyfruit, dingto, campbellbarton

Reviewed By: juicyfruit, dingto, campbellbarton

Differential Revision: https://developer.blender.org/D707
2014-08-05 13:57:50 +06:00
Campbell Barton
d5b471eec1 CMake: add header 2014-08-02 19:16:00 +10:00
Campbell Barton
dfccfeb447 CMake: add glew-mx library 2014-07-29 03:53:15 +10:00
Campbell Barton
02b6ba8874 CMake: use our template for finding the glew library 2014-07-29 03:43:49 +10:00
Sergey Sharybin
c85265b455 Make requests python package to be detected in the same way as numpy
This solves missing requests package reported on the systems where it's
located in dist-packages rather than in site-packages.

To do this there's now a helper macros which handles both requests and
numpy now and could be used for more packages in the future.

Reviewers: campbellbarton

Reviewed By: campbellbarton

Differential Revision: https://developer.blender.org/D686
2014-07-28 20:53:02 +06:00
Antony Riakiotakis
17021171f1 Occlusion Query based selection.
This patch creates an interface for selection mechanisms in opengl. This
makes it possible to switch between occlusion query based or select
rendermode based selection transparently.

This is really useful on graphics drivers that do not accelerate the
select rendermode path (some ATI cards are notorious for this, and the
new path is used by default there), since occlusion queries are always
hardware accelerated due to their use in games.

The option can be found under system - selection. Auto just enables
occlusion queries for ATI users while the rest of the options enforce
one of the two methods always.

There is just one known change, previous code enforced nearest bone to
always get selected, even when mouse selecting near the same position, I
couldn't replicate the behaviour though.

patch by me with edits and review by Campbell.

Thanks!
2014-07-23 15:26:08 +02:00
Campbell Barton
21f15e2c45 CMake FindOpenEXR.cmake was using OPENEXR_VERSION unset 2014-07-20 00:01:51 +10:00
Campbell Barton
006b550f6f Fix the ABIFLAGS order for detecting Python debug builds
D631 by mva
2014-07-04 20:02:58 +10:00
Sergey Sharybin
72ac596e19 Update Ceres to latest upstream version
Brings new bounds limiting and also prepares build system
for the changes in the upstream.

Namely shared_ptr header and namespace is now being detected
by a build system rather than by hacks in the code.

This commit includes some changes to auto-detection flags
in SCons, presumably adding more consistency there. This
is main changes which are suppoed to be reviewed here.

Reviewers: campbellbarton

Differential Revision: https://developer.blender.org/D581
2014-06-27 14:08:27 +06:00
Howard Trickey
eaac6cbcd9 Add a bmesh_core_test, a start at testing bmesh functionality.
Needed to make the blender link libraries a global property
now that tests are parallel to source directory.
Current sort order for blender link libraries doesn't work
for tests that start with few defined symbols. Doubling the
lib list works, but a TODO to find a better way (probably
using CMake's own mechanism for tracking dependencies).
2014-06-19 11:53:55 -04:00
Sergey Sharybin
72b607ab74 Some WITH_TESTS weer not renamed to WITH_GTEST 2014-06-18 22:28:27 +06:00
Sergey Sharybin
306cbb82ec GTest unit testing framework
Currently covers only small set of functionality.
2014-06-19 02:09:16 +10:00
Sergey Sharybin
38d6841687 Need to consider blender-v* a release branch, not just blender-
This is because of blender-tiles branch we've got..
2014-06-16 15:16:18 +06:00
Sergey Sharybin
0125ae1eb2 Forgot this in previous commit 2014-06-16 15:13:01 +06:00
Sergey Sharybin
db750b9843 Add missing dependency to CMake's msgfmt
This could have lead to situation when CMake wouldn't re-generate
.mo file from changed .po file.
2014-06-16 14:04:46 +06:00
Campbell Barton
48a735d824 Update netbeans projectfile generator to v8 2014-05-18 15:55:00 +10:00
Campbell Barton
ccbac7862f CMake: use project name when generating project files 2014-05-11 16:21:38 +10:00
Campbell Barton
60c5887fe8 CMake: mark vars as advanced 2014-05-06 06:04:29 +10:00
Campbell Barton
b96d531bc9 Python: move to version 3.4x on all platforms 2014-04-30 23:19:16 +10:00
Campbell Barton
36defb7e66 Disable quicktime when in cmake's lite configuration 2014-04-18 23:22:09 +10:00
Campbell Barton
b64bdb2c1b Checker percentage calc was wrong, also cleanup 2014-03-29 11:25:44 +11:00
Campbell Barton
3eb2724c14 Update clang array checker for new clang py api 2014-03-29 11:08:24 +11:00
Lukas Tönne
bbfcb0b1e4 Build file macro for testing unordered_map C++ container support.
Using unordered_map and unordered_set C++ container types currently
requires careful testing or usage of boost, due to the various confusing
C++ version differences in include paths and namespaces.

Libmv defines tests for these cases in cmake and scons, such that ceres
can use any available implementation, or fall back too std::map/std::set
if none can be found.

This patch generalizes this buildfile code by providing a Blender macro.
* cmake: defines both the variables used by libmv at them moment as well
as 2 variables UNORDERED_MAP_INCLUDE_PREFIX and UNORDERED_MAP_NAMESPACE,
which can later be used in other C++ parts for convenience.
* scons: adds a tool script returning the include prefix and namespace.
Libmv checks these to define the appropriate definitions for ceres.

Differential Revision: https://developer.blender.org/D425
2014-03-25 09:25:00 +01:00
Sergey Sharybin
43b5f0af2d tweaks to buildinfo
We wouldn't really have release branches, building will happen
from annotated tags.

Made it so building tag revision equals to a master branch.
2014-03-07 18:27:16 +06:00
Lawrence D'Oliveiro
44d79c5ff8 patch cmake_linux_install.sh to do multithreaded build
The script ##cmake_linux_install.sh## is currently invoking ##make## in single-threaded mode; this patch changes it to take advantage of all available CPU threads.

Reviewers: mont29

Reviewed By: mont29

Differential Revision: https://developer.blender.org/D358
2014-02-27 16:00:26 +01:00
Sergey Sharybin
28f3cc3eb7 Fixes for buildinfo hash/branch detection
Branch name and hash didn't work properly when having disconnected
HEAD or when having current HEAD below upstream.
2014-02-20 21:43:30 +06:00
Dan Eicher
6ad9941c74 Add the date to the CPack rpm package version
Updating rpms built from 'make package' has issues using the git hash since it isn't in a set order like svn commits, this lets it use the date to determine if the rpm is newer than the installed version.

Also updates the license text.
2014-02-12 13:45:36 -07:00
Campbell Barton
c2da706a36 Code cleanup: remove references to svn and code style 2014-01-28 23:01:22 +11:00
Campbell Barton
8f2eec5a15 Build System: icon files now depend on UI_icons.h for CMake
Now changing UI_icons.h causes icons to be re-generated, without this
adding a new icon wouldn't automatically get into the generated PNG.
2014-01-27 17:25:29 +11:00
Thomas Dinges
21264f89ac Cycles: Add a cmake config to easily compile Cycles Standalone.
On Linux/Mac OS X, simply type "make cycles" inside the Blender source directory, to get a standalone build of the engine.

Reviewed by: Brecht
Differential Revision: https://developer.blender.org/D228
2014-01-20 20:44:39 +01:00
Campbell Barton
88f65fdddb CMake: add missing dependency for icon target 2014-01-17 01:50:33 +11:00
Bastien Montagne
839ddfbb65 Fix for rBec81feab6649: better to search for versionned libs first, else it can use your system ones instead of those built by install_deps! 2014-01-14 21:52:17 +01:00
IRIE Shinsuke
ec81feab66 CMake: Fix libname handling of OpenEXR 2.1. The library built with Autotools was not found.
Weird library names having version suffix (e.g. libIex-2_1.so) are used only
when the OpenEXR was built with CMake.  Building the library with the Autotools
doesn't add the version suffix.
2014-01-15 04:43:31 +09:00
Campbell Barton
4c9a3a53bd UI Icons: store icons in git as uncompressed pixmaps (D196)
this allows for updating icons without committing a new PNG each time
(which is inefficient with git). The data files are converted into a
PNG at builds time and used just as they were before.
2014-01-14 00:14:03 +11:00
Campbell Barton
a335137607 CMake: fix for OpenEXRConfig.h not being found on some Linux systems 2014-01-04 13:16:41 +11:00
Campbell Barton
fa4260ced9 Code Cleanup: use cmake case matching other find modules 2014-01-04 12:46:18 +11:00
Bastien Montagne
163df7ff43 Better handling of new libnames of OpenEXR 2.1 (same solution as one used in OIIO/OSL source). 2013-12-16 21:16:02 +01:00
Campbell Barton
a7ac6481ef CMake: report messages as status (else ccmake treats like an error) 2013-12-10 13:18:46 +11:00
Bastien Montagne
bac86a0825 Update install_deps.sh to OIIO 1.39 and OSL 1.4.0.
Note that I also updated OpenEXR to 2.1.0 (and updated our CMake openexr module as well).

Users will have to update their build settings as told by the script (also in BUILD_NOTES.txt generated file)!

Note I removed all ugly patches from this script, we are currently using custom git repo for OpenEXR/OIIO/OSL,
hopefully we will soon be able to use vanillia code from official repos!
2013-12-08 18:29:54 +01:00
Campbell Barton
a10cf5c99e CMake: check CMAKE_C_COMPILER_ID instead of CMAKE_CXX_COMPILER_ID
While its possible to have different C/C++ compilers, we dont support
this at the moment, so just check C compiler ID for now.
2013-12-02 11:36:33 +11:00
Sergey Sharybin
5f2400414a Buildinfo: suppress error prints when building local branches
Before this console output contained messages about branch is not
configured to use any upstream branch which is not useful information
at all.
2013-11-29 18:44:45 +06:00
Sergey Sharybin
af7a2a3b6a Fix buildinfo hash for cases there's no upstream set for the branch 2013-11-28 02:25:09 +06:00
Sergey Sharybin
1d2c4357d5 Fix for previous fix (tm) commit
Ok, this is nasty. SOURCE_DIR is somehow being defined
from CMakeLists.txt in source/creator by the looks of it
and actual issue as extra slash in the end of path which
was passing to EXISTS command.
2013-11-28 02:05:06 +06:00
Sergey Sharybin
cccee66290 Fixes for buildinfo
- It was using SOURCE_DIR which is undefined on windows.
  No idea why it was defined on Linux, could be some
  co-incident. Correct usage is CMAKE_SOURCE_DIR.

- Remove usages of SVN's revision.
2013-11-28 01:43:37 +06:00
Sergey Sharybin
551f3eef74 Show hash from latest pushed commit in buildinfo
Before this hash of latest local commit was used,
which is not so much useful since nobody can access
that commit hash.
2013-11-25 16:25:35 +06:00
Campbell Barton
2b4c68b902 CMake Build: option to compile without opennl/superlu. 2013-11-25 15:36:19 +11:00
Sergey Sharybin
50fbebe0a4 Buildinfo fixes
- Use -M suffix if working tree does have uncommitted
  modifications.
- Local commits are considered local changes as well
2013-11-19 22:22:21 +06:00
Sergey Sharybin
09ecfc318c Fixes for buildinfo of exported source tree
- Better to set branch/hash to "unknown" so
  it's clear build is done from exported tree.
- SCons used to reference undefined variable.
2013-11-17 00:02:27 +06:00
Sergey Sharybin
3e87abb4be Remove nested check for .git folder exists in buildinfo.cmake
Title says it all :)

Pointer by IRIE Shinsuke in the ML, thanks!
2013-11-16 19:40:26 +06:00
Sergey Sharybin
927dea436e Further tweaks to buildinfo
Summary:
Old idea with changes since previous release tag
didn't work good enough. In most of the cases tag
was done in a branch hence not actually reachable
from the master branch.

Now change since release is gone, and date of
the latest commit is used instead.

The date is displayed in format YYYY-MM-DD HH:mm
in the splash.

New bpy.app fields:

- build_commit_timestamp is an unix timestamp of
  the commit blender was build from.
- build_commit_date is a date of that commit.
- build_commit_time is a time of that commit.

Reviewers: campbellbarton

Differential Revision: http://developer.blender.org/D5
2013-11-15 18:05:27 +06:00
Sergey Sharybin
89e5c87538 Remove debug-only print from cmake macros
Left it there by an accident.
2013-11-15 12:19:47 +06:00
Sergey Sharybin
ac6d91b939 Be ready for changes in bf-translations repository
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-11-08 20:44:48 +00:00
Sergey Sharybin
2010c6ad6c Made buildinfo aware of builds from GIT
- Use commit number since last annotated tag as a
  revision number replacement. It'll eb followed
  by 'M' symbol if there're local modification in
  the source tree.

- Commit short SHA1 is included. Helps getting
  information about commit used to build blender
  with much faster.

- If build is not done from master branch, this also
  will be noticed in the splash screen.

This commit also replaces revision stored in the
files with git-specific fields (change and hash).
This is kind of breaks compatibility, meaning
files which were saved before this change wouldn't
display any information about which revision they
were saved with. When we'll finally switch to git,
we'll see proper hash and change number since
previous release in the files, for until then
svn version will be used as a change number and
hash will be empty.

Not a huge deal, since this field was only used
by developers to help torubleshooting things and
isn't needed for blender itself.

Some additional tweaks are probably needed :)
2013-11-04 13:21:39 +00:00
Campbell Barton
93edbf3510 add check for cmake that source files are not included multiple times 2013-10-25 06:21:38 +00:00
Campbell Barton
b6db417ee4 code cleanup: use const's for vector args. 2013-10-12 02:19:37 +00:00
Campbell Barton
124f32a206 rename LLVM_LIB_DIR to LLVM_LIBPATH to match other cmake vars. 2013-09-25 16:31:54 +00:00
Campbell Barton
203c6effd5 code cleanup: quiet rna warnings, remove remove_strict_flags() for cmake/rna.
also set_source_files_properties() wasn't working for rna_*_gen.c files,
set dna.c and generated data files with generated property too.
2013-09-20 06:35:28 +00:00
Campbell Barton
648f2102d8 update bmesh doxy docs, remove double-promotion warnings in remove-strict-flags cmake macro. 2013-09-08 06:55:58 +00:00
Campbell Barton
427317d8d8 use CMAKE_DL_LIBS rather then linking libdl directly.
added to cycles standalone too.
2013-08-30 20:26:57 +00:00
Campbell Barton
f75711db7f cmake: set python, llvm and osl libs as advanced. 2013-08-28 04:32:39 +00:00
Brecht Van Lommel
11cfc97e29 Fix cmake Inkscape auto generate of SVG on OS X giving an error popup, the binary
that is found by find_program is a shim that doesn't take command line arguments.
2013-08-26 14:13:04 +00:00
Bastien Montagne
e61c3beb48 Remove (comment out) auto-generating png form svg (r59382) in CMake, handy but gives nasty "false changes" in svn. Let's try not to forget to update PNGs when needed, then! 2013-08-26 12:16:23 +00:00
Bastien Montagne
29c8d3e20d Automatically re-generate png icon files from svg ones (CMake only for now)... Expects Inkscape program. 2013-08-22 13:51:00 +00:00
Campbell Barton
a62163ada3 remove unused auto-key struct-member from uiAfterFunc, add compiler defines to cppcheck utility script. 2013-08-10 23:27:42 +00:00
Campbell Barton
7cb1415530 pass compiler defines such as __FLT_MIN__ to smatch and sparse (they fail without them). 2013-08-08 01:53:02 +00:00
Campbell Barton
02ba328ca8 clang/cmake - quiet warnings for external libs and reference moto as a system include. 2013-07-15 08:26:16 +00:00
Campbell Barton
6ebfdd8dc3 remove reference to wrong python version in comments & pedantic style edit. 2013-07-10 09:40:49 +00:00
Brecht Van Lommel
2df82a2a2b Code cleanup: fix some vs2012 compiler warnings 2013-06-21 12:33:19 +00:00
Campbell Barton
970e9123b4 cmake: remove set_lib_path macro 2013-06-17 18:15:56 +00:00
Thomas Dinges
91d7df12ee CMake / vc2010:
* Remove vc2010 support from cmake. 

There is some "if(MSVC10)" left in extern - ceres, but will leave that for Sergey. :)
2013-06-17 18:00:38 +00:00
Bastien Montagne
8e5cd99e0b Fix for building Blender with OSL, and no OpenEXR headers in standard paths (like /usr/include/OpenEXR).
As OSL headers mix #include <OpenEXR/foo.h> and #include <foo.h>, we need both /path/to/openexr/include and /path/to/openexr/include/OpenEXR include paths... :/

Issue investigated by doug65536 on IRC, thanks.
2013-06-16 18:59:50 +00:00
Campbell Barton
7781312346 code cleanup: rename bmesh operator files to be more consistent 2013-05-20 07:38:11 +00:00
Campbell Barton
417ca7b451 fix for finding openjpeg on some systems. 2013-05-15 09:57:17 +00:00
Campbell Barton
456f3b318a code cleanup: minor changes, clang checker option for exact size matches and use vector functions. 2013-04-14 12:01:12 +00:00
Campbell Barton
502ddd3128 code cleanup: warnings and style. 2013-04-12 00:50:40 +00:00
Campbell Barton
b14f68521e select-camera operator could select hidden cameras, also disable freestyle for make lite target. 2013-04-08 04:54:57 +00:00
Campbell Barton
c7e2a31bf2 correct too-big allocation in mesh beautify. 2013-04-01 07:57:33 +00:00
Sergey Sharybin
31eee77a45 Fix #33518: Jack sync doesn't work in 2.64, 2.64 or 2.65 stable versions
Added new build option WITH_JACK_DYNLOAD for CMake and
WITH_BF_JACK_DYNLOAD for SCons, which means there'll be
no build-time linking against libjack and getting symbols
from libjack will happen runtime using dlopen and dlsym
tricks.

Alternative would be to use weak linking, but it'll require
having wrapper for preloading libjack.

This new options are disabled by default and they only
intended to be used on linux. Other platforms shall not
be using this and there shall be no functional changes
on non-linux platforms at all.
2013-03-27 07:19:54 +00:00
Campbell Barton
d9c9209608 code cleanup: quiet some -Wshadow warnings, mix of obvious mistakes and harmless global/local naming conflict. 2013-03-15 22:55:10 +00:00
Campbell Barton
6a51379bf7 tweaks to clang so blender can build with -Werror 2013-03-14 07:25:54 +00:00
Campbell Barton
aff410b558 style cleanup: odd indentation 2013-03-14 05:52:30 +00:00
Campbell Barton
660be3da39 use gcc warning -Wredundant-decls, exposes some odd/duplicate declarations which have been removed. 2013-03-11 20:27:38 +00:00
Campbell Barton
0dd6988a1e add PHY headers to cmake's ketsji (else some IDE's won't show) 2013-02-26 23:08:42 +00:00
Brecht Van Lommel
4f3ca854e1 Fix various warnings with clang build, and adjust cmake clang warnings flags
to include a few more that gcc is using too.
2013-02-26 21:58:06 +00:00
Campbell Barton
a78cf854b4 add missing bullet header to cmake, quiet reports from 'make test_cmake' 2013-02-06 04:16:28 +00:00
Campbell Barton
43af754e4f cmake config files BOOL type was ignored by cmake. 2013-01-30 07:33:26 +00:00
Campbell Barton
8a60c7dc7d fix for missing initialization of vert data in ccgDM_copyFinalVertArray 2013-01-24 09:36:22 +00:00
Campbell Barton
a790c8c6f9 patch [#33969] fix for [#33968] Blenders Custom Project File Generator for QtCreator fails
from Philipp Oeser (lichtwerk)
2013-01-24 08:59:48 +00:00
Campbell Barton
769ab3eed8 code cleanup:
- cycles ui used 'cscene' for scene.cycles and scene.cycles_curves
- style cleanup
2013-01-15 23:17:45 +00:00
Campbell Barton
d22c8cfca3 add error check for qtcreator&netbeans project file generators to quit early if cmake fails. 2013-01-07 14:25:26 +00:00
Bastien Montagne
e0869db01f Patch from Ejner Fergo: enhancements to install_deps.sh.
Mostly, it:
* Adds numpy and opencollada
* Merges both Suse and Fedora/Redhat into a single func (not sure this is a good idea, but would have been to painful to undo this).

Notes:
* I changed a bit how numpy is handled, so that the script does not try to build it when py3.3 was installed from package!
* Bumped oiio 'magic number', as now trying to use libtiff5 means we have to rebuild everything using tiff!
* Only made a quick test on my own system, but Ejner made quite some extensive ones, so it should be safe.
* I’m not sure keeping on extending that horrible bash thing is a good idea. Shell scripts are nice for small, limited stuff, but I personnaly find that one (over 53ko!) unreadable and a pita to maintain. Further more, doing the same for windows would mean to rewrite everything in another language... I have started work to port this as a py3 script, so that we have a nice structure (classes...) easy to extend/tweak/implement in various OSs/etc.!
2013-01-03 15:35:46 +00:00
Campbell Barton
c2839bfe76 add option WITH_SYSTEM_BULLET to link against the bullet installation found on the system.
Note: this doesn't work yet for everything with latest stable bullet (2.81), need to look into why and likely apply some patches upstream.
However I managed to link blender by disabling some features, likely it can be made to work without too much trouble.
2013-01-03 00:23:52 +00:00
Campbell Barton
80ff313495 patch [#33331] Time To Start Moving To Stdbool
by Lawrence D'Oliveiro (ldo)

so BKE_utildefines.h allows use of C99's bool type and true/false.

currently scons wont try to use stdbool.h, and works as if its never found.
2013-01-01 12:47:58 +00:00
Campbell Barton
c9d16fd22c add ".hh" as an extension for source scripts. 2012-12-31 07:06:51 +00:00
Campbell Barton
7376fb2913 make cppcheck run with quiet flag when QUIET env var is set, make bpy.ops.image.project_apply() only use local images. 2012-12-09 14:17:33 +00:00
Campbell Barton
0a5d44588c switch verious references from py3.2 -> 3.3 or just 3. 2012-11-26 13:58:06 +00:00
Bastien Montagne
67031c1712 Fix when statically linking with distro's boost: in this case, we most likely also need to statically link against icu, as most boost packages are built with it. Without that, you get a bunch of errors at link time (when using boost_locale, or, in freestyle branch, boost_regex).
So when you enable Boost_USE_STATIC_LIBS, you should also set Boost_USE_ICU to True. Will add a note about that in build doc too.
2012-11-19 08:51:35 +00:00
Brecht Van Lommel
2324c80f50 Cycles OSL: windows build system changes to support static OSL/OIIO. 2012-11-15 17:16:27 +00:00
Campbell Barton
7c3db355b1 remove ifdef'd bevel code, current bevel works better then the previous code.
reduce strlen check in texttool_suggest_add()
use 'del list[:]' rather then 'list[:] = []' in python scripts which clear lists.
2012-11-14 09:45:15 +00:00
Sergey Sharybin
d3c3f07133 Initial implementation of a script for automatic dependencies installer/builder
This script will install all packages from the repositories and will compile
missing in repositories libraries.

It is supposed to replace pre-compiled libraries from our svn.

Tested script on Fedora 14 and 17, Ubuntu 10.04 and 12.10. All the dependencies
and manually built libraries seems to be fine. However, it's really annoying to
build blender in virtual machine to ensure there's no linking errors, i would
hope community will help testing and making needed tweaks to the script :)

To use the script, simple run it from your user name. It'll run installation
commands from a sudo, so you would likely be requested to type a password.

I've made tweaks to CMake FindLibs, so it should find OIIO, OCIO and python
libraries compiled by this script. Boost and FFmpeg would need to be specified
manually.

SCons currently would require manual paths specifications as well. Perhaps we
could make SCons smarter in the future.

All the parameters you need to pass to CMake/SCons would be printed when script
finishes to run.

Pretty much sure it's not production-ready script, but we need to start testing
at some point :)
2012-11-12 19:39:09 +00:00
Bastien Montagne
5ff3017900 Replacing gettext i18n backend by boost::locale one.
This commit adds a small and simplistic C wrapper around boost's locale library as intern/locale, and heavily simplifies/reduces Blender's own i18n code (under blenfont/ dir). And it adds back UI translation on windows' official builds (with msvc)!

Note to platform maintainers: iconv and gettext (libintl) can now be removed from precompiled libs (not gettext binaries, under windows, of course ;) ).

Note to MinGW32/64 users: boost_locale lib has not yet been uploaded for those build env, please disable WITH_INTERNATIONAL for now (hopefully will be fixed very soon, have contacted psy-fy).
2012-11-11 16:54:26 +00:00
Bastien Montagne
dcca228906 Another fix for finding python stuff... Should work for everyone now! (I hope...). 2012-11-09 20:38:09 +00:00
Bastien Montagne
3e004d3043 Use CMAKE_LIBRARY_ARCHITECTURE instead of hardcoded stuff like x86_64-linux-gnu! Now should work with any multiarch! 2012-11-07 16:51:09 +00:00
Bastien Montagne
5850e62262 Attempt to fix problems with local built py caused by own r51976. 2012-11-07 12:24:03 +00:00
Bastien Montagne
fff3f95768 Update to make it work with new debian-like py3.3 packages. A bit hackish (this arch-dependent stuff makes things a bit complex), and probably only working for amd64 arch, but at least should not create any regression... 2012-11-07 11:44:39 +00:00
Campbell Barton
5cf9d5e4ca for utility checkers, use QUIET env var, not to print progress. 2012-11-07 01:00:27 +00:00
Campbell Barton
004f8d78ed default to Python3.3 on Linux for SCons and CMake, warn when building with python 3.2x or older.
also remove casts to keep Python3.2 warning quiet.
2012-11-05 13:48:42 +00:00
Campbell Barton
226a5ee834 remove LOD_Decimator (c++ decimator), now replaced by bmesh decimator. also remove CTR c++ classes that are no longer used. 2012-10-22 02:39:26 +00:00
Campbell Barton
f3ece5a108 style cleanup: trailing tabs & expand some non prefix tabs into spaces. 2012-10-21 05:46:41 +00:00