Its easy because it only requires two commands to set up.
Easy for new team members;
run git clone [yadiyadiyada]
type ./install.sh for mac and linux, type install.bat for windows
Easy for new users
run git clone [yadiyadiyada]
run ./installDependenciesInParent.sh for mac and linux, installDependenciesInParent.bat for windows
if users apply this method for a new project, the project will have its own correct versions of its dependencies
Easy for existing team members
in OgreJS/OgreJS the code resides under git source control
Directory structure after install
OgreJS
OgreJS // our project is not in the actual root, but in a sub folder
-> the current project structure is maintained, but dependencies are set as described
v8_version_x.y.z // dependencies such as v8, boost etc. are also in subfolders.
juice_version_x.y.z
boost_version...
Ogre_v...
nodejs_v...
The sub folder OgreJS is under git control, the other folders could be, but not under our repository.
building
During an irc discussion we concluded scons was better
Every OS has its own makefiles. Knowledge of makefiles is generally the greatest, and using 'platform independent' build tools will not work unless they can be tested. The makefiles aren't that much work to write for a specific OS (compared to coding) and if we don't have a developer for some OS we can't test building, so the user will have to change some params anyway.
always use #include style includes and a library search path
namespace
namespace OgreJS
nodejs
It is practical to include nodejs as a dependency, and to create code in such a way that OgreJS can be 'required' as a node module from the get go.
Features of proposed setup
Its easy because it only requires two commands to set up.
Easy for new team members;
Easy for new users
Easy for existing team members
Directory structure after install
The sub folder OgreJS is under git control, the other folders could be, but not under our repository.
building
During an irc discussion we concluded scons was better
Every OS has its own makefiles. Knowledge of makefiles is generally the greatest, and using 'platform independent' build tools will not work unless they can be tested. The makefiles aren't that much work to write for a specific OS (compared to coding) and if we don't have a developer for some OS we can't test building, so the user will have to change some params anyway.
always use #include style includes and a library search path
namespace
namespace OgreJS
nodejs
It is practical to include nodejs as a dependency, and to create code in such a way that OgreJS can be 'required' as a node module from the get go.