Note that there are some explanatory texts on larger screens.

plurals
  1. POPython based build tools
    primarykey
    data
    text
    <p>I've been lately looking at build systems and I can't find anything close to what I want. I consider too low end, I don't like the syntax of <strong>bjam</strong> and <strong>CMake</strong>, and I really don't like that they are only for C/C++. <strong>Ant</strong> and <strong>NAnt</strong> are also too language oriented.</p> <p>I really like the idea of a build tool that uses a real programming language and Python fits in really nice. I've been looking at <strong>Scons</strong> and <strong><a href="http://code.google.com/p/waf/" rel="noreferrer">waf</a></strong>, and from these 2 I find <strong>waf</strong> as the closest one to what I want, but still I see a lot of work that has to be done to support everything planned, when I should focus on coding.</p> <p>Here is what I want:</p> <ul> <li><p>includes and libraries (for C/ C++, Java, C#, Python)</p></li> <li><p>I want to use different versions of compilers and support different target OS and CPU architectures:</p> <ul> <li>for C / C++: MSVC, gcc(cygwin, mingw, linux version), llvm-gcc, DragonEgg, Clang</li> <li>for C#: .Net compiler, Mono (for windows and linux) - all of these for different .Net versions (like NAnt's: 'net-2.0', 'net-3.5', 'net-4.0', 'mono-2.0', 'mono-3.5' ...)</li> </ul></li> <li><p>I want to use <strong>SWIG</strong> to support wrapper generation for C#, Python, Lua, Java etc.</p></li> <li><p>I want more then just Debug and Release configurations - just like Visual Studio supports this really easily. Example: shared library project built MSVC for C# wrapping, and built with mingw for Python wrapping, different versions of release versions - with non-optimized, fully optimized, production, obfuscated ...</p></li> <li><p>I want it to consider project tracking. Explained: if I have a shared library project using SWIG, and a different C# project that loads that SWIG wrapping, building this solution/environment/workspace would imply copying the resulting shared library, copying other shared libraries that that shared library uses in the working directory, and the C# generated wrappers to the C# project, and then build the C# project</p></li> <li><p>Nice-to-have: deployment on other machines for network testing</p></li> <li><p>Nice-to-have: I don't really care for IDE project file generation (e.g. like CMake does for Visual Studio), because IDEs versions and compatibily change, and there are a ton of nice IDEs out there (e.g. for C/C++ CodeBlocks, CodeLite, Eclipse CDT - all of these are portable on thumb drive, VS is not), but Nice-to-have would be makefile integration - a makefile that that simply calls this Build tool's own makefile/script - seen something similar for Scons</p></li> </ul> <p>Looking over what I wrote I think I asked too much :), but I think this will serve more then me</p> <p>edit: forgot to say, but I think it is implied from the use of Python: I want the tool to be cross-platform</p> <p>edit: perhaps what I am looking for isn't implemented yet, but it might exits a waf extension to all of this, or Scons maybe</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload