[squeak-dev] A Bounty for CMake-ifying stack/Cog vm build process

Tom Rushworth tom.b.rushworth at gmail.com
Fri Nov 29 19:32:56 UTC 2013


I've used both scons and its re-write waf.

I consider them to be the true "next generation" build tools.  As far
ahead of all the various "make" flavors as git and hg are ahead of cvs.

They both have decent docs and user communities, but there is a bit of a
learning curve :(.

On 13-11-28 17:47 , gettimothy wrote:
> While upgrading my Slackware to 14.1 so I could install Bochs and re-compiling my apps I saw that esr's gpsd requires something called scons for  its build system:
> 
> http://www.scons.org
> 
> Here is an example from the docs:
> 
> 
>  Here's the famous "Hello, World!" program in C: 
>  int main() { printf("Hello, world!\n"); }  And here's how to build it using SCons. Enter the following into a file named SConstruct: 
>  Program('hello.c')  This minimal configuration file gives SCons two pieces of information: what you want to build (an executable program), and the input file from which you want it built (the hello.c file). Program is a builder_method, a Python call that tells SCons that you want to build an executable program. 
>  That's it. Now run the scons command to build the program. On a POSIX-compliant system like Linux or UNIX, you'll see something like: 
>  % scons scons: Reading SConscript files ... scons: done reading SConscript files. scons: Building targets ... cc -o hello.o -c hello.c cc -o hello hello.o scons: done building targets.  On a Windows system with the Microsoft Visual C++ compiler, you'll see something like: 
>  C:\>scons scons: Reading SConscript files ... scons: done reading SConscript files. scons: Building targets ... cl /Fohello.obj /c hello.c /nologo link /nologo /OUT:hello.exe hello.obj embedManifestExeCheck(target, source, env) scons: done building targets.  
> Has anybody poked around this thing?

Not I.  Do you have specific questions?
> 
> tty
> 
Regards,

-- 
Tom Rushworth


More information about the Squeak-dev mailing list