I know a bit about development, but I rather use C# / js… So all this C++ black magic is fooling me !
I followed the steps here with success: I can build blender from within SV2017.
I am a bit confused though :
what is exactly “make” doing ?
It seems that the line “make full nobuild” creates a .sln solution so that I am able to work on the source from within VS2017
Is it a sort of “orchestra conductor”, managing the compiler of VS2017 ?
imagine I make some changes to the code in VS2017 and I am satisfied.
What if I want to update the sources ?
I can do a git pull, but that will only affect the files in blender-git/blender/source won’t it ?
What about the ones that VS uses, in the blender-git\build_windows_Full_x64_vc15_Release/source folder ?
How do I get these in sync with git ?
make.bat is merely a handy helper file, nothing it does isn’t something you can do your self by calling cmake, git or svn. when you call make full nobuild all it does it call cmake with some options to get you a visual studio project.
Blenders build system is based on CMake , it’s a tool where you describe the project structure in .txt files and based on that cmake can spit out a Visual Studio solution, make files for unix , and XCode projects for mac (among many many others) any changes to the build system have to be done in blenders CMakeLists.txt files pretty much available in every source directory. You change those, cmake will detect the changes and generate a new project for you.
You should never be doing any changes in the visual studio project that is generated for you (ie add files, change compiler options etc) next time cmake will run (and it will every time you do a build and it detects changes), it will blindly overwrite your changes with a fresh new project, if you want to add a file, look for the CMakeLists.txt for that project and add it there.
You should never be doing any changes in the visual studio project that is generated for you (ie add files, change compiler options etc) next time cmake will run (and it will every time you do a build and it detects changes), it will blindly overwrite your changes with a fresh new project, if you want to add a file, look for the CMakeLists.txt for that project and add it there.
But then, what is the point of having a Visual Studio solution if I can’t edit the source there ???
I am completely lost now
I thought I would be able to take advantage of the editor, the autocompletion, intellisense and so on… and build from there.
You can edit the source that’s no problem, just not the project. ie, you can edit source files but you can’t add a new source file, toss a source file out of the project, right click on a project and mess with the compiler options etc.