Re: [Scons-dev] Review scons.org/guidelines.php
On Mon, May 18, 2015 at 10:27 PM, Dirk Bächle tshor...@gmx.de wrote: On 18.05.2015 21:05, anatoly techtonik wrote: [...] I am not barring anybody from doing anything. I just don't want poor choices be made just because somebody did the work. As a result of last choices I don't like that the SCons repository is bloated and that it uses DocBook (so that nobody can edit the docs) and they are not automatically updated. But of course, we are all volunteers, and can do whatever we want with the project. Except integrating Parts. you're a nice guy, so I call this out with the greatest respect for you as a person and human being: you're starting to cross a line here, this is trolling at its best IMO. I won't take the bait, sorry... Sorry. On particularly bad days that happens. Thanks for not taking it too seriously. -- anatoly t. ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev
Re: [Scons-dev] Review scons.org/guidelines.php
Sometimes I idealize things too much, so I saw that new SCons site should be release together with new major SCons version. Getting activity stream would be helpful, yes. I often use this on GitHub to track the progress. But that requires aggregating data from mailing lists, repository and probably IRC. Sometimes the information is just too much and it should be transformed into visual items. BTW, the wiki is down, http://www.scons.org/wiki/DeveloperGuide/TestingMethodology#Working_with_fixtures ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev
Re: [Scons-dev] How to traverse the graph after files are read
So far I discovered Taskmaster. Taskmaster This is the main engine for walking the dependency graph and calling things to decide what does or doesn't need to be built. But it looks like it already needs a graph of nodes to process and I don't see where to get them. On Tue, May 19, 2015 at 10:51 AM, anatoly techtonik techto...@gmail.com wrote: No. I need a programmatic way to do this from Main.py There is a fs object after SCons read all files, but I don't understand how filesystem becomes a build graph. On Tue, May 19, 2015 at 1:03 AM, William Blevins wblevins...@gmail.com wrote: --tree=all plus --dry-run should work? On May 18, 2015 2:11 PM, anatoly techtonik techto...@gmail.com wrote: Hi, I am trying to get SCons build graph after files are read, but before the processing is started. I want it to be an alternative to build process and interactive mode: https://bitbucket.org/scons/scons/src/95b566e4baf0253e1b36b8a9e00a97cd84d22566/src/engine/SCons/Script/Main.py?at=default#cl-1091 How to start traversing nodes without building? -- anatoly t. ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev -- anatoly t. -- anatoly t. ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev
Re: [Scons-dev] Tutorial for Linux versioned libraries
SCons Install just copies files (and in this case makes symlinks). Building installers is a whole different thing. SCons can do it, but Install isn't what you're looking for. On Tue, May 19, 2015 at 8:51 AM, anatoly techtonik techto...@gmail.com wrote: On Tue, May 19, 2015 at 3:29 AM, William Blevins wblevins...@gmail.com wrote: Anatoly, I've sent a pull request with the changes: https://github.com/techtonik/RHVoice/pull/1 Thanks. I need to understand the issue better before merging it. 1. If RHVoice needs those version numbers at all? 2. Why it tries to load so.0 when there is .0.0.0? Here is my understanding of linux standards for shared libraries: Example: thing.so - thing.so.1 thing.so.1 - thing.so.1.2.3 thing.so.1.2.3 (the real file) GNU linkers (and others) embed shared library information into the final product in the form thing.so.1, so that the library can undergo patch updates (EG. 1.2.3 - 1.2.4) without requiring the application to be recompiled. That make it clear. Thanks. The only question is the Install stuff. The operating system knows better where to install things, no? It creates a package registry and tracks all the files. Is SCons Install just a development hack? ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev -- Gary ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev
Re: [Scons-dev] Tutorial for Linux versioned libraries
On Tue, May 19, 2015 at 12:32 AM, Alexandre Feblot alexan...@feblot.fr wrote: Hi, Anatoly, I may not understand what you’re after (and especially your 5 questions), but I build and install versioned shared libraries successfully with SCons 2.3.4 on Linux (and since 2.3.2, I think). This PR (merged for 2.3.5 or 2.4) lets me use it properly too on Solaris: https://bitbucket.org/scons/scons/pull-request/186/attempt-to-fix-versionned-shared-library/diff From that file there is an example: EnsureSConsVersion(2, 3, 3) env = Environment() env['SHLIBVERSION'] = '1.2.3' env.SharedLibrary('SharedVersionedLib', 'file.c') In RHVoice I have to build two versioned libs with different numbers. How to setup that SHLIBVERSION for them? ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev
Re: [Scons-dev] Review scons.org/guidelines.php
Wiki down almost guaranteed because someone DOS'd it and the hosting provider chmod'd the wiki's script to non-executable. This is like the 10+'th time this has happened. I'll see if we can resolve. -Bill On Tue, May 19, 2015 at 3:23 AM, anatoly techtonik techto...@gmail.com wrote: Sometimes I idealize things too much, so I saw that new SCons site should be release together with new major SCons version. Getting activity stream would be helpful, yes. I often use this on GitHub to track the progress. But that requires aggregating data from mailing lists, repository and probably IRC. Sometimes the information is just too much and it should be transformed into visual items. BTW, the wiki is down, http://www.scons.org/wiki/DeveloperGuide/TestingMethodology#Working_with_fixtures ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev
Re: [Scons-dev] Tutorial for Linux versioned libraries
On Tue, May 19, 2015 at 3:29 AM, William Blevins wblevins...@gmail.com wrote: Anatoly, I've sent a pull request with the changes: https://github.com/techtonik/RHVoice/pull/1 Thanks. I need to understand the issue better before merging it. 1. If RHVoice needs those version numbers at all? 2. Why it tries to load so.0 when there is .0.0.0? Here is my understanding of linux standards for shared libraries: Example: thing.so - thing.so.1 thing.so.1 - thing.so.1.2.3 thing.so.1.2.3 (the real file) GNU linkers (and others) embed shared library information into the final product in the form thing.so.1, so that the library can undergo patch updates (EG. 1.2.3 - 1.2.4) without requiring the application to be recompiled. That make it clear. Thanks. The only question is the Install stuff. The operating system knows better where to install things, no? It creates a package registry and tracks all the files. Is SCons Install just a development hack? ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev
Re: [Scons-dev] Tutorial for Linux versioned libraries
env = Environment() env.SharedLibrary('SharedVersionedLib', 'file.c', SHLIBVERSION = '1.2.3') env.SharedLibrary('OtherSharedVersionedLib', 'file.c', SHLIBVERSION = '2.3.4') creates libOtherSharedVersionedLib.so - libOtherSharedVersionedLib.so.2* libOtherSharedVersionedLib.so.2 - libOtherSharedVersionedLib.so.2.3.4* libOtherSharedVersionedLib.so.2.3.4* libSharedVersionedLib.so - libSharedVersionedLib.so.1* libSharedVersionedLib.so.1 - libSharedVersionedLib.so.1.2.3* libSharedVersionedLib.so.1.2.3* 2015-05-19 14:49 GMT+02:00 anatoly techtonik techto...@gmail.com: On Tue, May 19, 2015 at 12:32 AM, Alexandre Feblot alexan...@feblot.fr wrote: Hi, Anatoly, I may not understand what you’re after (and especially your 5 questions), but I build and install versioned shared libraries successfully with SCons 2.3.4 on Linux (and since 2.3.2, I think). This PR (merged for 2.3.5 or 2.4) lets me use it properly too on Solaris: https://bitbucket.org/scons/scons/pull-request/186/attempt-to-fix-versionned-shared-library/diff From that file there is an example: EnsureSConsVersion(2, 3, 3) env = Environment() env['SHLIBVERSION'] = '1.2.3' env.SharedLibrary('SharedVersionedLib', 'file.c') In RHVoice I have to build two versioned libs with different numbers. How to setup that SHLIBVERSION for them? ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev
Re: [Scons-dev] Tutorial for Linux versioned libraries
I think a little clarification is needed. SCons install() api makes an install sandbox. There is a list that holds all the install files. When you call Install() those files get added to the internal list. This information is used by the Package() and GetInstallFiles() api in SCons to allow a package to be created. One can get this to work. I find personally this setup in SCons works for simple cases, more complex stuff this can fall short on. I have added code to Parts ( that I have to officially release outside my dev branch) to address this with support for WIX,RPM,DEB and achieve (zip/tar.gz.. etc) based packages ( others setups have to be added such as mac, android apk). Anyways ( minus the Parts extension) I hope the understand that Install() setups an install sandbox that is used by the package() API to create some install package based on what was installed. Jason From: Scons-dev [mailto:scons-dev-boun...@scons.org] On Behalf Of Gary Oberbrunner Sent: Tuesday, May 19, 2015 9:21 AM To: SCons developer list Subject: Re: [Scons-dev] Tutorial for Linux versioned libraries SCons Install just copies files (and in this case makes symlinks). Building installers is a whole different thing. SCons can do it, but Install isn't what you're looking for. On Tue, May 19, 2015 at 8:51 AM, anatoly techtonik techto...@gmail.commailto:techto...@gmail.com wrote: On Tue, May 19, 2015 at 3:29 AM, William Blevins wblevins...@gmail.commailto:wblevins...@gmail.com wrote: Anatoly, I've sent a pull request with the changes: https://github.com/techtonik/RHVoice/pull/1 Thanks. I need to understand the issue better before merging it. 1. If RHVoice needs those version numbers at all? 2. Why it tries to load so.0 when there is .0.0.0? Here is my understanding of linux standards for shared libraries: Example: thing.so - thing.so.1 thing.so.1 - thing.so.1.2.3 thing.so.1.2.3 (the real file) GNU linkers (and others) embed shared library information into the final product in the form thing.so.1, so that the library can undergo patch updates (EG. 1.2.3 - 1.2.4) without requiring the application to be recompiled. That make it clear. Thanks. The only question is the Install stuff. The operating system knows better where to install things, no? It creates a package registry and tracks all the files. Is SCons Install just a development hack? ___ Scons-dev mailing list Scons-dev@scons.orgmailto:Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev -- Gary ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev