scons

Implicit List of All Build Targets in SCONS?

I have an scons project that force includes several header files as a compiler flag. # Forced include files passed directly to the compiler env.Append(CCFLAGS = ['/FIinclude.h']) These files are not included by any files in the project. I need to add an explicit dependency for them. forced_include_headers = ['include.h'] # Trying ...

SCons for Java; Is there an analog for env.Program() ?

Hi. I need to create an executable file, run, that will call # java for my classes I am compiling my java project with SCons: libFiles = "lib/myLibs.jar" # Build the environment env = Environment(JAVACLASSPATH = libFiles, JAVASOURCEPATH = '.') env.Java(target = 'classes', source = 'src') All of the classes are stored in folder clas...

Alias dependencies

I have some complex aliases ex. Alias('build', [ Program(), Install()...]) Alias('test', [Program(), Install(), RunTest()] Alias('dist', [Install()]) and finally Alias('all', [ Alias('build'), Alias('test'), Alias('dist')]) Question: How to depend Alias('dist') on Alias('test') in Alias('all') ? I've tried Depends() variations but ...

Solution Filters with SCONS Visual Studio Solution Generation?

When generating a MSVS Solution file with SCONS, I end up with a flat list of projects in a solution file. Is there any way to specify solution filters through the solution builder? It does not appear so from the API or documentation. ...

SCons: How to put multiple output files in cache

Hi all, Our compiler produces a debug file in addition to the object file. This debug file is needed for the final debugging target. I already added this file as additional dependency for the target. But when using a CacheDir() this file should be stored together with the object file. I already tried to add the debug file as a SideEffe...

SCONS: making a special script builder depend on output of another builder

I hope the title clarifies what I want to ask because it is a bit tricky. I have a SCONS SConscript for every subdir as follows (doing it in linux, if it matters): src_dir compiler SConscript yacc srcs scripts legacy_script data SConscript data files for the yacc I use a variant_dir without copy, for example: SConscrip...

What are the mandatory steps to import a module ?

Hi, I'm new to python and I face an issue: I try to extend my SConstruct file and to import a module located in a sub-directory of my project. Here is my SConstruct file: import os, sys sys.path.append(os.path.abspath(os.path.join('.', 'custom_dir'))) import mymodule mymodule.foo() Here is the mymodule.py file, located into a subd...

SCons: expanding library dependencies recursively

I am currently using an SCons-based build system that I am not repsonsible for maintaining but can provide input to the maintainer. One of the problems it has is in dealing with dependencies between C++ source packages. In the system, each source package is built to a DLL on Windows or shared library on Linux. Let's say that packa...

Creating a Hierarchical Build with SCons

I have a library project that contains some samples in a subfolder. The library itself has a SConstruct file and each sample has its own folder and its own SConstruct file. I'd like to add a target to the main (root) SConstruct file which would allow me to compile the library as usual, and all the samples, at once. Is there an existin...

Force Scons output (exe, obj, lib & dll) to specific build directory

Hi All, I've been trying to get scons to output exe, obj, lib and dll files to a specific build directory. My file structure looks like this: /projectdir /build /bin /obj /source /subdirs /.. SConstruct Basically, what I get now is my source directory is getting polluted with obj files. I'd rather have it all ...

Crossplatform building Boost with SCons

I tried hard but couldn't find an example of using SCons (or any build system for that matter) to build on both gcc and mvc++ with boost libraries. Currently my SConstruct looks like env = Environment() env.Object(Glob('*.cpp')) env.Program(target='test', source=Glob('*.o'), LIBS=['boost_filesystem-mt', 'boost_system-mt', 'boost_progr...

SCons configuration file and default values

Hi, I have a project which I build using SCons (and MinGW/gcc depending on the platform). This project depends on several other libraries (lets call them libfoo and libbar) which can be installed on different places for different users. Currently, my SConstruct file embeds hard-coded path to those libraries (say, something like: C:\lib...

How can i use Scons to build SWIG lua example?

I am trying to write an SCons script to build lua/embed3 example distributed with swig. Build instructions by makefile as follows: swig -c++ -lua -external-runtime swigluarun.h swig -c++ -lua -module example -o example_wrap.cpp example.i g++ -o embed3 embed3.cpp example_wrap.cpp example.cpp \ -llua5.1 -I/usr/include/lua5.1 In Scon...

When will the "jar" command refuse to add a class to a .jar file?

Hi. I have 204 total classes (most of the classes are inner classes). For months, I have been building fine with SCons (SCons just calls the jar command). For some reason, it stopped adding the last inner class for a particular class. For example, suppose I have the following classes: class1 class2 class3 class4 class5 class6 ... cl...

SConscript StaticLibrary atribute error.

Hi, I couldn't find any information on the net, so I kindly ask you for one. I have my build environment set up properly, My compiler is 'cl' from VS express package. I try to build static library, when i set my tools to 'default' everything works, but when i set it to 'msvc' i have following error: scons: Reading SConscript files ......

what triggers scons to build files when I have a custom builder?

I'm going nuts trying to control when files are built in scons. I have a very simple example build tree (see below), with a Poem builder that just takes a .txt file and converts it to lower case in a corresponding .eectxt file. In my SConstruct and SConscript files, I declare dependencies of 3 .txt files. But I can't figure out what's...

How to set up vsvars32 environment variables?

Hi, I'm struggling with setting my scons environment variables for visual studio 2008. Normally I do following: %VS90COMNTOOLS%vsvars32.bat or call %VS90COMNTOOLS%vsvars32.bat And this works in my shell. I try to do that in python using subprocess subprocess.call([os.environ['VS90COMNTOOLS']+r"\vsvars32.bat"]) output: d:\N\wo...

Why the success of SCons build depends on variant_dir name?

I am bored to death with such behavior. So in SConstruct file we have the last string like this one: import compilers, os env = Environment(ENV = os.environ, TOOLS = ['default']) def set_compiler(compiler_name): env.Replace(FORTRAN = compiler_name) env.Replace(F77 = compiler_name) env.Replace(F90 = compiler_name) env.R...

Scons for C# setup question

I use Scons from time to time, and I see it's a good tool for building simple C# project. I guess there should be some modification of Scons for using C#. Can I get some help on how to do this? ...

Using latex2rtf with scons.

I have scons set up to run pdflatex nicely on my latex documents and stick the results in an output folder for me. However, I haven't been able to determine whether or not I can get it to use latex2rtf on my documents at the same time as well. Is there any way to have scons do this automatically? Or is it going to have to be something ...