[Scons-users] build dependencies question(s)

Nikola Radovanovic nikola.radovanovic at schneider-electric-dms.com
Tue Nov 27 10:50:59 EST 2012


thanks for the help - it help me to solve the problem. i had some few minor problems during the process of build (darn manifest files!). i have tested built dll with our software -i twent ok.

i have some other scons related question, but will start new topics, since it has nothing to do with question in this thread.

thanks people!

On 11/21/2012 08:11 AM, William Deegan wrote:

On Nov 20, 2012, at 1:13 AM, Nikola Radovanovic <nikola.radovanovic at schneider-electric-dms.com<mailto:nikola.radovanovic at schneider-electric-dms.com>> wrote:

sory for the rant :( i was desperate.

basically, we have (as i already say), huge source code base with various languages on different platforms. idea is to try to use SCons to improve build procedure (including regular daily builds) vi jenkins calling SCons. what i want to achieve it to replace Makefile's with SConstruct's.

Yes.. doing this is a big part of my consulting business.. :)


i did ok within first two weeks creating libs, dll, etc. but than i bump onto omniORB related source. omniORB has specific behaviour when packing skeleton and stub cpp files into dll on windows. stubs must be compiled first (with some special defines and lis), linked as static lib, than run some python script called makedef.py on that static lib to create def file, than link static lib together with def into dll.

Is this being done because of a circular dependency? (I'm familiar with this pattern)
Is this the process you're using? http://omniorb.sourceforge.net/omni41/omniORB/omniORB012.html (exporting symbols section)?

yes, that's the pattern


we already have this using bat file, bu i wanted to do it 'SCons' way. btw, im not python programmer, which does not make thing easier (i figured out that yesterday i missed one return statement which obstructed my whole day work :( )

moving files to other folders is just a legacy, but think of it as a good one: i dont want to 'pollute' my idls with stub/skeleton files.

You could use VariantDir()'s to ensure you don't write your output where your sources are.
That would probably be simpler.
Have you done a thorough read of the SCons user guide and the manpage?


anyway, i was VERY wrong not coming to help as soon as i get stucked. you actually helped me a lot: i pay closer attention to dependency tree and i think im on the right track now. will report what is happening. sorry one more time: i really want to add scons to our company (and its large one)

No problemo. Please don't be shy with questions.


:)


-Bill

On 11/19/2012 05:01 PM, Nikola Radovanovic wrote:
i give up...im just to dumb for this scons....

i will either create python script to build dll/so for omniORB idl-stub files and see what will happen
or will try with WAF
or maybe custom python build scripts.

i cant solve this problem for almost 1 month :(
and i tought it will be MUCH easier. i wish i started creating custom python build system-will be done so far. maybe its impossible to achieve with scons what i want :( :( is it so hard to create dependencies between different envs?!

devastated :(

On 11/19/2012 11:48 AM, Dirk Bächle wrote:
Hi Nikola,

On 19.11.2012 11:24, Nikola Radovanovic wrote:
10x. tried that.

why it fails when i run scons with ie -j 4? scons tries to Install before outNodes are ready? works with -j 1 (default). is that OK?


no, that's not okay, it should work with any number of jobs. My first guess would be that something is still not right with your dependencies.
You can try to check them by calling "scons -n --tree=derived" (have a look into the man page for more options like these).

also, how to delete outNodes? is Delete() ok or i need to create builder for that?


Deleting output files in SCons is done by calling "scons -c", this will delete all files that are usually built. If you want to mark additional files for cleanup, a simple env.Clean('file') should be sufficient.

Best regards,

Dirk




_______________________________________________
Scons-users mailing list
Scons-users at scons.org<mailto:Scons-users at scons.org>
http://four.pairlist.net/mailman/listinfo/scons-users



--
__________________________________________________________________________________________________________________

Nikola Radovanovic | Schneider Electric DMS NS | Smart Grid IT | SERBIA | CPASv2 team deputy
Phone: +381 (0)21 488 3633 | Fax: +381 (0)21 488 3789 | Mobile: +381 (0)64 29 74 528
Email: nikola.radovanovic at schneider-electric-dms.com<mailto:nikola.radovanovic at schneider-electric-dms.com> | Site: www.schneider-electric-dms.com<http://www.schneider-electric-dms.com/> | Address: Narodnog fronta 25A-D, 21000 Novi Sad
*** Please consider the environment before printing this e-mail




_______________________________________________
Scons-users mailing list
Scons-users at scons.org<mailto:Scons-users at scons.org>
http://four.pairlist.net/mailman/listinfo/scons-users



--
__________________________________________________________________________________________________________________

Nikola Radovanovic | Schneider Electric DMS NS | Smart Grid IT | SERBIA | CPASv2 team deputy
Phone: +381 (0)21 488 3633 | Fax: +381 (0)21 488 3789 | Mobile: +381 (0)64 29 74 528
Email: nikola.radovanovic at schneider-electric-dms.com<mailto:nikola.radovanovic at schneider-electric-dms.com> | Site: www.schneider-electric-dms.com<http://www.schneider-electric-dms.com/> | Address: Narodnog fronta 25A-D, 21000 Novi Sad
*** Please consider the environment before printing this e-mail

_______________________________________________
Scons-users mailing list
Scons-users at scons.org<mailto:Scons-users at scons.org>
http://four.pairlist.net/mailman/listinfo/scons-users




_______________________________________________
Scons-users mailing list
Scons-users at scons.org<mailto:Scons-users at scons.org>
http://four.pairlist.net/mailman/listinfo/scons-users



--
__________________________________________________________________________________________________________________

Nikola Radovanovic | Schneider Electric DMS NS | Smart Grid IT | SERBIA | CPASv2 team deputy
Phone: +381 (0)21 488 3633 | Fax: +381 (0)21 488 3789 | Mobile: +381 (0)64 29 74 528
Email: nikola.radovanovic at schneider-electric-dms.com<mailto:nikola.radovanovic at schneider-electric-dms.com> | Site: www.schneider-electric-dms.com<http://www.schneider-electric-dms.com/> | Address: Narodnog fronta 25A-D, 21000 Novi Sad
*** Please consider the environment before printing this e-mail

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://four.pairlist.net/pipermail/scons-users/attachments/20121127/8a16170b/attachment.htm>


More information about the Scons-users mailing list