[Scons-dev] All at once compiling, and SCons direction
In the D community there is a low-volume, very long running debate about whether D should be compiled module by module (a module is a file in D just as in Python), package by package (slightly difference concept to Python, but structurally the same, a package is a collection of related modules), or all source at once. CMake, Meson, and SCons all support module at a time, or you use your own command line. Dub always does all source at once. For Chapel, I believe you always have to do all source at once, but I need to check this. As far as I know, whilst SCons always does file-by-file and then link (because of the C, C++, Fortran heritage, it does not stop builders doing all at once it's just that no-one has done this. Chapel is heading towards a Rust/Cargo type dependency/build system. Since Rust folk all just use Cargo, SCons, CMake, Meson do not have any language specific support. Nor are they likely to I suspect given the way these things generally pan out. Thus I wonder is there is any point in trying to support Chapel. It's a relatively small community, and SCons doesn't have the core code to handle dependencies in the Maven, Bintray, Artifactory, Herd, Cargo, Conan, Dub sense, i.e. a library of source or pre-compiled held centrally to be downloaded as part of the build. My feeling is that if Conan takes off, SCons must have integral support for it. I have no idea if CMake and Meson are planning anything. Clearly Maven and Gradle already do this for JVM artefacts, Cargo for Rust, Dub for D. Given SCons is supposed to support D, it now needs a story regarding the Dub repository. Dub the command has a dependency specification of name and version number (bounded or unbounded ranges) in the project specification file. It then gets the source from the Dub repository files it away and then compiles it to create the linkable library, or executable. Cargo does roughly the same sort of thing but it also allows an arbitrary Git repository to be accessed as a dependency. There is also the question of whether a dependency management system should allow for arbitrary DVCS repositories to be used as well as things from the central repository. Experience from Rust/Cargo and Ceylon/Herd shows that having this increases community activity. Go not having a central resource is I think missing a trick. There is a level of confidence about a curated central store that is very helpful. So should D support in SCons also support Dub, or go further than Dub. Dub does the wrong thing with compilation of dependencies, it adds the compiled into the source filestore cache in ~/.dub, which is just wrong. Cargo keeps only source in the source filestore cache, all compilation happens into the project filestore which is the right thing to do, particularly for keeping debug and release build going at the same time. The question is then whether a D specific infrastructure should be built, or whether this should be seen as an experiment for a more generalist solution? Is there a future for a generalist solution, or would it just be wasted effort? -- Russel. = Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.win...@ekiga.net 41 Buckmaster Roadm: +44 7770 465 077 xmpp: rus...@winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder signature.asc Description: This is a digitally signed message part ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev
Re: [Scons-dev] test/D/MixedDAndC/sconstest-dmd.py failing due to picking up wrong CC for linking
On Sun, 2017-04-09 at 11:21 -0400, Bill Deegan wrote: > Take a look at: > https://bitbucket.org/scons/scons/pull-requests/444/more-py2-py3-fixe > s-some-fixes-to-get-tests/diff > > If you add a MacPorts file to /etc/paths.d/ with /opt/local/bin in > it. and This is not a good strategy I blieve since /etc/path always precedes /etc/path.d/*, much better to edit /etc/paths to put the MacPorts paths earlier than the standard paths. > set SCONS_USE_MAC_PATHS=1 then it should pick up macports. I'll give it a go. But tomorrow. > I only see gcc5 as the newest via port search gcc. I spotted the later email, so gcc7 it is. :-) > I have gcc47 installed. Likely as a prereq for some other build. > (Maybe dmd?) I wouldn't have thought so. You need an existing D compiler to compile the recent DMD/LDC frontends (GDC isn't as up to date) but the backend just needs a C++ compiler so GCC7 should suffice. -- Russel. = Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.win...@ekiga.net 41 Buckmaster Roadm: +44 7770 465 077 xmpp: rus...@winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder signature.asc Description: This is a digitally signed message part ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev
Re: [Scons-dev] [Scons-users] Can we drop windows native installers if pip install works?
As a Windows user, I'd be very happy if pip install were the only proper way to install it going forward. Yes, sometimes I'd want to do it locally, but using pip is fine. On Mon, Apr 10, 2017 at 8:15 AM, Jonathon Reinhart < jonathon.reinh...@gmail.com> wrote: > > On Mon, Apr 10, 2017 at 3:36 AM, Alexandre Feblot < > alexandre.feb...@gmail.com> wrote: > >> And in some controlled environments, there might be no access to >> internet. A self contained installer is still the best solution in this >> situation. > > > That's not an issue. Pip will happily install from a zip file, tarball, > cloned git repo, etc. There is no internet access requirement to use Pip. > > A lot of Windows users will, out of habit, come looking for "setup.exe", > but considering Pip comes pre-installed with Python 2.7 and up these days, > it'd be trivial to 'pip install scons'. > > ___ > 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] [Scons-users] Can we drop windows native installers if pip install works?
On Mon, Apr 10, 2017 at 3:36 AM, Alexandre Feblot < alexandre.feb...@gmail.com> wrote: > And in some controlled environments, there might be no access to internet. > A self contained installer is still the best solution in this situation. That's not an issue. Pip will happily install from a zip file, tarball, cloned git repo, etc. There is no internet access requirement to use Pip. A lot of Windows users will, out of habit, come looking for "setup.exe", but considering Pip comes pre-installed with Python 2.7 and up these days, it'd be trivial to 'pip install scons'. ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev
Re: [Scons-dev] [Scons-users] Can we drop windows native installers if pip install works?
And in some controlled environments, there might be no access to internet. A self contained installer is still the best solution in this situation. -- Alexandre Féblot > Le 10 avr. 2017 à 09:31, Russel Winder a écrit : > >> On Sun, 2017-04-09 at 18:15 -0400, Bill Deegan wrote: >> Greetings, >> >> Assuming we can resolve issues with pip install, can we drop the >> windows >> (32 & 64bit) native installers? >> >> Thoughts. > > I am not a Windows user and therefore have no right to a view on this. > I will say though that the Groovy community continues to create a > Windows installer even though there are other ways of installing > Groovy. > > -- > Russel. > = > Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.win...@ekiga.net > 41 Buckmaster Roadm: +44 7770 465 077 xmpp: rus...@winder.org.uk > London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder > ___ > 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] [Scons-users] Can we drop windows native installers if pip install works?
On Sun, 2017-04-09 at 18:15 -0400, Bill Deegan wrote: > Greetings, > > Assuming we can resolve issues with pip install, can we drop the > windows > (32 & 64bit) native installers? > > Thoughts. I am not a Windows user and therefore have no right to a view on this. I will say though that the Groovy community continues to create a Windows installer even though there are other ways of installing Groovy. -- Russel. = Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.win...@ekiga.net 41 Buckmaster Roadm: +44 7770 465 077 xmpp: rus...@winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder signature.asc Description: This is a digitally signed message part ___ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev