Commit Graph

185 Commits

Author SHA1 Message Date
Campbell Barton 60d0446db3 GNUmakefile: use tar.xz instead of tar.gz
Also rename "make tgz" to "make source_archive" as it wasn't clear
this only archived the source, not binaries.

D6153 by @JRottm with minor edits
2019-10-31 00:19:05 +11:00
Brecht Van Lommel 64c8e9a219 macOS: don't require python3 to be installed to run "make update"
And fall back to python3 from our libraries for other commands, once checked
out with make update.
2019-09-30 10:51:17 +02:00
Brecht Van Lommel 6472662d66 Build: add "make test" command for Windows, output log file
Differential Revision: https://developer.blender.org/D5715
2019-09-12 20:23:03 +02:00
Brecht Van Lommel 464e545c72 Tests: move "make test" on macOS and Linux to Python script 2019-08-30 17:57:18 +02:00
Brecht Van Lommel 018fe9e006 Build: move "make update" on macOS and Linux to Python script
Differential Revision: https://developer.blender.org/D5545
2019-08-30 17:57:18 +02:00
Brecht Van Lommel 410cde82e3 Fix "make deps" error when building deps with make and Blender with ninja 2019-08-30 17:57:18 +02:00
Brecht Van Lommel 4815bd7748 Fix wrong detection in recent ninja build change 2019-08-12 17:28:01 +02:00
Brecht Van Lommel 102035373a Build: automatically detect ninja build system when running "make"
So that you don't have to specify "make ninja" every time.
2019-08-12 15:24:23 +02:00
Brecht Van Lommel afff94f09f Build: add ninja target to make wrapper
To use the ninja build tool which is typically faster than make, especially
for quick rebuilds.
2019-08-05 15:25:36 +02:00
Brecht Van Lommel 2d60a54649 Build: add config for developers
This has faster builds, error checks and tests. The number of cmake options
for this type of thing has grown over the years and it's convenient to be
able to point new developers to a single target.

Previously the combination of all these options did not work correctly, now
all tests should pass.

The easiest way to use this is with the make wrapper, for example:
make full developer debug

Or set it manually with CMake:
cmake -C ../blender/build_files/cmake/config/blender_developer.cmake .

Differential Revision: https://developer.blender.org/D5149
2019-08-05 15:25:36 +02:00
Campbell Barton 760dbd1cbf Cleanup: misc spelling fixes
T68035 by @luzpaz
2019-08-01 14:02:41 +10:00
Brecht Van Lommel c553b790fc macOS: rename blender.app to Blender.app
Using a capitalized app name fits the platform guidelines. Since macOS file
systems are case insensitive by default this should not break scripts that
assume lowercase.
2019-06-21 23:37:40 +02:00
Dmitriy Efimov 8efc781ddc GNUMakeFile: Fix bad command line to generate QTCreator project.
Report with fix in D5035 by Dmitriy Efimov (@DarkDemiurg), thanks.
2019-06-07 14:27:46 +02:00
Campbell Barton 6b9ce24338 GNUMakefile: disable tab expansion for 'make format'
This was only needed for initial migration.
2019-04-21 04:36:16 +10:00
Campbell Barton 65aebd0c11 GNUmakefile: move clang format utility
Makes more sense to place in 'utils_maintenance'.
2019-04-16 16:49:32 +02:00
Campbell Barton d5a76451c0 GNUmakefile: add 'make format'
Convenience access to clang_format_paths.py utility.
2019-04-16 15:43:42 +02:00
Campbell Barton b1c3d91aed Makefile: icons target now uses make variables
Add examples in help text.
2019-02-28 10:37:49 +11:00
Campbell Barton c6681c65dd Makefile: use BLENDER_BIN variable if passed in
When the default build path isn't used,
it's still handy to be able to run utility commands.
2019-02-28 10:35:38 +11:00
Campbell Barton c702e57b3c Makefile: move help text to string literal
Editing text in @echo commands wasn't convenient.
2019-02-28 10:12:24 +11:00
Luca Rood ade4017293 GNUmakefile: fix deps directory
`uname -p` is unknown on some distros, use posix standard `uname -m`.
2019-02-09 17:00:57 +11:00
Brecht Van Lommel c9df453ce7 Update for moving blender2.8 to master. 2018-12-21 12:15:21 +01:00
Brecht Van Lommel 8e183a83b7 Fix "make update" on macOS/Linux not updating addons to the blender2.8 branch.
This will need to be removed once we merge into master.
2018-10-30 14:43:09 +01:00
Brecht Van Lommel 8f51308dba Build: allow overriding DEPS_BUILD_DIR and DEPS_INSTALL_DIR for make deps. 2018-09-24 15:48:50 +02:00
Campbell Barton 0a23d39b9f Merge branch 'master' into blender2.8 2018-09-13 16:21:56 +10:00
Campbell Barton 99e06af9c8 Cleanup: move 'make help_features' into own file 2018-09-13 16:20:02 +10:00
Campbell Barton a4e4dc1b75 Merge branch 'master' into blender2.8 2018-09-13 15:39:21 +10:00
Campbell Barton ffe5b92325 PyDoc: disable ASAN exit code for doc building
Prevented docs from building on any minor issue when ASAN was enabled.
2018-09-13 15:37:30 +10:00
Campbell Barton 8926aa6f67 Merge branch 'master' into blender2.8 2018-08-21 20:28:28 +10:00
Campbell Barton 45721499b3 Correct recent makefile OSX check 2018-08-21 20:27:36 +10:00
Campbell Barton 15acbbdc1e Merge branch 'master' into blender2.8 2018-08-21 19:25:49 +10:00
Campbell Barton 122ef17ab2 GNUmakefile: correct blender binary for macOS 2018-08-21 19:20:01 +10:00
Aaron Carlisle 12acf1e4f8 Cleanup: Update some links to new wiki 2018-08-13 21:55:30 -04:00
Aaron Carlisle 57e6359920 PyDoc: Remove hack to rename main doc from 'contents' to 'index' 2018-08-13 20:51:33 -04:00
Campbell Barton 5e2804a40b Merge branch 'master' into blender2.8 2018-07-13 18:20:10 +02:00
Campbell Barton 87535dd73d Makefile: add note about environment vars 2018-07-13 18:16:05 +02:00
Dalai Felinto dfd82b18df Merge remote-tracking branch 'origin/master' into blender2.8 2018-04-25 09:31:25 +02:00
Dalai Felinto 5285de16f3 Fix string comparison in GNUMakefile for linux systems 2018-04-25 09:30:55 +02:00
Campbell Barton 24bde1ca43 Add "make icons_geom" convenience target
Generates icons from the blend file in lib.
2018-04-24 12:09:31 +02:00
Brecht Van Lommel 6b3d85fa51 Build: auto detection of libraries built by "make deps" on Linux.
Use the libraries if they exist in ../lib/linux_x86_64 or similar, so
that you can run "make deps && make full" to get a full static build.
Note that install_deps.sh is still the only officially supported way to
build Blender dependencies on Linux, but this may be useful to some.

Differential Revision: https://developer.blender.org/D2980
2018-01-11 22:30:31 +01:00
Campbell Barton 04e8a09662 GNUmakefile: add back 'git pull'
Seems this was removed by accident.
2017-09-29 19:02:20 +10:00
Brecht Van Lommel c10ac1bb5c macOS: officially upgrade to 10.9 libraries from lib/darwin.
This removes a bunch of code that is no longer needed, and running
"make update" will now automatically download the new libraries.

Differential Revision: https://developer.blender.org/D2861
2017-09-28 20:53:06 +02:00
Campbell Barton 05be2a8c45 Cleanup: de-duplicate makefile OS checks 2017-08-10 22:37:35 +10:00
Brecht Van Lommel 3c14f02eac Build: add scripts to build dependencies for Windows and macOS.
Note these are intended for platform maintainers, we do not intend to
support users making their own builds with these. For that precompiled
libraries from lib/ should be used.

Implemented by Martijn Berger, Ray Molenkamp and Brecht Van Lommel.

Differential Revision: https://developer.blender.org/D2753
2017-08-07 17:54:26 +02:00
Campbell Barton b796ce0f26 CMake: Only set CMAKE_BUILD_TYPE_INIT when not set
Convenience makefile now uses CMAKE_BUILD_TYPE_INIT,
this means you can change the build type of an existing build
and it won't be overwritten when running `make`.

Useful if you want to add debug info to a release build for profiling.
2017-06-27 09:50:35 +10:00
Campbell Barton 5be8adf8c0 Makefile: set tab width=4 2017-03-11 20:48:12 +11:00
Campbell Barton 7faf76a618 Cleanup: line length 2016-07-15 01:26:26 +10:00
Campbell Barton 79d69bb9e3 Makefile: Use hidden FORCE target 2016-05-21 05:48:10 +10:00
Brecht Van Lommel d09a372acb Fix T48078: incorrect OS X command for retrieving number of CPUs on in Makefile. 2016-04-09 00:25:18 +02:00
Campbell Barton 236fabcc41 Minor edits to sync make.bat & makefile 2016-01-04 20:42:00 +11:00
Campbell Barton e4d016ce48 Makefile: show build dir when configuring 2015-09-22 00:16:53 +10:00
Campbell Barton 81b37f5e92 CMake: use functions instead of macros
Reduces issues with vars leaking into the parent scope.
2015-06-17 09:38:24 +10:00
Campbell Barton 208a917b73 CMake: note env var 2015-06-14 10:05:03 +10:00
Campbell Barton 424e5be046 Makefile support for using NPROCS as an env var 2015-06-14 08:27:29 +10:00
Campbell Barton f167f434d9 Support alternate python command 2015-06-11 04:14:43 +10:00
Campbell Barton 0737f59f62 tweaks to packman build
remove --asroot arg to makepkg
2015-03-24 07:49:17 +11:00
Campbell Barton 0025d90b98 Cleanup: use tabs 2015-03-21 16:40:43 +11:00
Campbell Barton 93c4ba7b70 Force phony targets to build (even if file exists)
This is a convenience makefile only,
files if they exist by accident shouldn't ever be used.
2014-12-20 02:15:14 +01:00
Campbell Barton 4e4ef13734 CMake: add 'full' to 'make help' 2014-11-14 00:19:53 +01:00
Campbell Barton 4b106ac1c9 Add 'help_features' make target (prints WITH_*** options) 2014-11-13 19:41:33 +01:00
Campbell Barton b1ca5b30cf CMake: add 'make full' target 2014-11-13 19:41:33 +01:00
Campbell Barton 13c5b0d546 Utility script to create release archive
- only include files known to git.
- includes all submodules.
- version extracted from BKE_blender.h for naming.
- MD5 checksum generated.
- 'make tbz' convenience target.

Script by Dan McGrath with own minor edits.
2014-09-16 11:44:00 +10:00
Campbell Barton e5adeed40b Makefile: add 'update' convenience target 2014-09-15 14:11:14 +10:00
Campbell Barton 2dc139cd89 Source Checkers: Include intern/ libs we maintain in spelling checks 2014-07-25 15:17:29 +10:00
Campbell Barton 0eb060c7b4 Move tests into tests/ top-level dir 2014-06-18 22:03:46 +10:00
Jens Verwiebe 75135cfa9b OSX: fix T40413, automatic threads for compile throw wrong output 2014-05-29 11:15:32 +02:00
Campbell Barton 06a05e4dae BSD's was using too many build threads for convenience makefile
D431 from Aaron Peterson
2014-05-27 09:47:11 +10:00
Lawrence D'Oliveiro 49e21f6978 Found another place where nproc can be used
/proc/cpuinfo is a Linux-specific thing. Using GNU [[ http://www.gnu.org/software/coreutils/manual/html_node/nproc-invocation.html | nproc ]] should be more portable.

Reviewers: mont29

Reviewed By: mont29

Differential Revision: https://developer.blender.org/D377
2014-03-02 10:29:40 +01: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 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 64fc94e93f Code Cleanup: osl style 2014-01-06 13:58:33 +11:00
Campbell Barton c3788b60f4 Convenience Makefile: spaces in the build path would fail still. 2013-11-17 21:16:39 +11:00
Campbell Barton 4882cb6f28 convenience makefile: support spaces in paths
also update for new source/tools paths.
2013-11-17 18:54:03 +11:00
Campbell Barton 825b0e8bc4 support for paths with spaces in makefile 2013-11-15 18:59:50 +11:00
Campbell Barton b21b24573d lots of operator descriptions were incorrectly copy/pasted.
update some descriptions, others were removed and operators tagged as internal.

add a script to detect duplicate operator descriptions.
2013-09-30 05:50:41 +00:00
Campbell Barton d90d25ec78 add icons utility make target. 2013-08-27 10:03:37 +00:00
Bastien Montagne df059ac4c0 Fix a mismatch in help message (check_spelling_osl obviously checks OLS, and check_spelling_c, C code! :P ) 2013-05-14 14:37:51 +00:00
Campbell Barton c7e2a31bf2 correct too-big allocation in mesh beautify. 2013-04-01 07:57:33 +00:00
Campbell Barton 68e9fdeb81 code cleanup: comment unused members of bmesh operator slots and some osl style edits. 2012-11-20 14:31:58 +00:00
Campbell Barton cf6994b910 code cleanup: spelling,
also initialize bmesh-bevel settings struct to zero to avoid possible uninitialized memory later.
2012-11-12 07:33:01 +00:00
Campbell Barton fa06aab433 code cleanup: add check spelling osl 2012-10-17 01:53:29 +00:00
Campbell Barton aeda5142ef style cleanup: make OSL follow our C style convention. http://wiki.blender.org/index.php/Dev:Doc/CodeStyle 2012-10-17 01:47:37 +00:00
Campbell Barton 57004cfb5a style cleanup:
also add helper makefile targets:
* tbz - makes a tar.bz2 of an svn export
* test_style_qtc - outputs style checks in qtc task format.
2012-10-10 23:44:07 +00:00
Campbell Barton 1e2f475512 added simple checker for array sizes, uses clang to parse C/C++,
Warns if an array is passed to a function where the array is declared larger, eg float[2] argument is passed function defined as float[3], (or a greater size).

Existing free static checkers dont do this from what I can tell.
2012-10-06 12:36:21 +00:00
Campbell Barton c2a1dcf621 fix for error in recent commit (made function static that shouldn't have been), add extra gcc warnings to cmake. 2012-09-16 01:35:00 +00:00
Campbell Barton b31a88ccf0 add checking target `check_smatch` 2012-09-14 05:08:48 +00:00
Campbell Barton 121fd266b0 for the default make/cmake wrapper, use ../build_os rather then ../build/os 2012-08-15 22:59:23 +00:00
Bastien Montagne 558721ab59 More spell checking. 2012-07-04 15:04:38 +00:00
Campbell Barton 9978f97b12 cmake edits
- only show mingw option when building with mingw
- always run cmake configure with convenience build targets so failed configurations stop re-configuring.
- disable WITH_GHOST_XDND in 'make lite'
2012-05-27 10:03:13 +00:00
Campbell Barton 4f2c83f573 style cleanup: imbuf & icons 2012-05-13 22:05:51 +00:00
Campbell Barton c6051ea87b replace python3 command with python3.2, python3 isnt available on ubuntu. 2012-05-01 20:45:16 +00:00
Campbell Barton 4cfa761951 source code style checker to, (similar to pythons pep8 checker)
currently checks for brace placement and some whitespace use.

can be accessed with:
  make test_style
or...
  source/tools/check_style_c.py  source/blender

also style cleanup on bmo_primitives.c
2012-05-01 20:36:39 +00:00
Campbell Barton ea13ec1699 Spelling Cleanup 2012-03-01 12:20:18 +00:00
Campbell Barton d2cab3e8b0 move bmesh wiki docs into bmesh header and update doxygen.
also have doxygen ignore *.py files and fix some warnings.
2012-02-27 20:27:19 +00:00
Campbell Barton 1f74789d12 Correct mathutils documentation, also correct some python spelling errors and add makefile target `check_spelling` 2012-02-08 04:37:37 +00:00
Campbell Barton 28fb329419 minor changes
- avoid duplicate image enum definitions.
- move image UI format & bw/rgb/rgba onto 1 line.
- add 'make config' convenience target to run ccmake or cmake-gui
2011-11-23 17:14:29 +00:00
Campbell Barton 64ca81ef0f allow passing vars to cmake from our makefile 2011-11-13 14:29:17 +00:00
Campbell Barton 2a7ade9de2 remove po/ since the workflow for translations uses branches which isnt that useful to have within blenders source dir.
For now treat translations as binary files - just access from 'release/datafiles/locale'
2011-11-05 14:26:18 +00:00
Campbell Barton 885d1e6ed3 update path loactions for external po/ 2011-11-05 13:21:03 +00:00
Campbell Barton 057bf2a02b misc doc edits
- remove recently added sphinx reference workaround.
- tested doxygen, correct some warnings, set tab width and added pymathutils group.
- added convenience target 'make doc_doxy'
2011-11-05 01:48:10 +00:00
Bastien Montagne c49cdf5eec Another set of UI messages fixes and tweaks! No functional changes. 2011-10-23 19:54:06 +00:00