Re: Question over the use of powershell in env['SHELL'] or some way to force relative paths
Bill Deegan <[email protected]>
| Newsgroups | gmane.comp.programming.tools.scons.user |
|---|---|
| Message-ID | <CAEyG4CErn74aQO9xtS1gwm5nLYS0UTCAWpVVFJiDaWig98r=Yw@mail.gmail.com> |
Take a read of: https://github.com/SCons/scons/wiki/LongCmdLinesOnWin32 Also, why are you using full paths? And/or can't you place your SConstruct at the top of your tree? On Thu, Sep 20, 2018 at 10:10 PM RW via Scons-users <[email protected]> wrote: > Hi, > I've got another question > I've recently run into an issue whereby the command I'm trying to run > within scons / windows exceeds the 8192 path limit > This is partially due to scons using absolute paths during the build > phase, possibly due to the way I have the scripts setup > > This leaves me with two options > > 1. Try to force the use of relative paths within scons > 2. Try to use powershell as the shell since it seems to not have this issue > > The full setup is here > https://github.com/Grbd-Forks/micropython/tree/scons2 > with the top level script being run under > micropthon/ports/minimal (this is the only port I've tried setting up so > far) > > The powershell approach nearly works, but seems to ignore the windows PATH > when searching for the arm gcc compiler I have installed > ``` > import distutils.spawn > powershell_path = distutils.spawn.find_executable("powershell.exe") > env.Replace(SHELL=powershell_path) > ``` > > The other approach migh be to force scons to change the absolute path to a > relative one > with the below example D:\SourceCode\GitRepos.Forks\micropython\py\mpz.c > to ..\..\py\mpz.c > but I'm unsure if theres a way to do that > > To give an example of the sort of command line I'm ending up with > ``` > arm-none-eabi-gcc -E -std=c99 -DNO_QSTR -mthumb -mtune=cortex-m4 > -mabi=aapcs-linux -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard > -fsingle-precision-constant -Wdouble-promotion -Wall -Werror -nostdlib -Os > -fdata-sections -ffunction-sections -DNDEBUG -I. > -ID:\SourceCode\GitRepos.Forks\micropython -Ibuild > D:\SourceCode\GitRepos.Forks\micropython\py\mpstate.c > D:\SourceCode\GitRepos.Forks\micropython\py\nlr.c > D:\SourceCode\GitRepos.Forks\micropython\py\nlrx86.c > D:\SourceCode\GitRepos.Forks\micropython\py\nlrx64.c > D:\SourceCode\GitRepos.Forks\micropython\py\nlrthumb.c > D:\SourceCode\GitRepos.Forks\micropython\py\nlrxtensa.c > D:\SourceCode\GitRepos.Forks\micropython\py\nlrsetjmp.c > D:\SourceCode\GitRepos.Forks\micropython\py\malloc.c > D:\SourceCode\GitRepos.Forks\micropython\py\gc.c > D:\SourceCode\GitRepos.Forks\micropython\py\pystack.c > D:\SourceCode\GitRepos.Forks\micropython\py\qstr.c > D:\SourceCode\GitRepos.Forks\micropython\py\vstr.c > D:\SourceCode\GitRepos.Forks\micropython\py\mpprint.c > D:\SourceCode\GitRepos.Forks\micropython\py\unicode.c > D:\SourceCode\GitRepos.Forks\micropython\py\mpz.c > D:\SourceCode\GitRepos.Forks\micropython\py\reader.c > D:\SourceCode\GitRepos.Forks\micropython\py\lexer.c > D:\SourceCode\GitRepos.Forks\micropython\py\parse.c > D:\SourceCode\GitRepos.Forks\micropython\py\scope.c > D:\SourceCode\GitRepos.Forks\micropython\py\compile.c > D:\SourceCode\GitRepos.Forks\micropython\py\emitcommon.c > D:\SourceCode\GitRepos.Forks\micropython\py\emitbc.c > D:\SourceCode\GitRepos.Forks\micropython\py\asmbase.c > D:\SourceCode\GitRepos.Forks\micropython\py\asmx64.c > D:\SourceCode\GitRepos.Forks\micropython\py\emitnx64.c > D:\SourceCode\GitRepos.Forks\micropython\py\asmx86.c > D:\SourceCode\GitRepos.Forks\micropython\py\emitnx86.c > D:\SourceCode\GitRepos.Forks\micropython\py\asmthumb.c > D:\SourceCode\GitRepos.Forks\micropython\py\emitnthumb.c > D:\SourceCode\GitRepos.Forks\micropython\py\emitinlinethumb.c > D:\SourceCode\GitRepos.Forks\micropython\py\asmarm.c > D:\SourceCode\GitRepos.Forks\micropython\py\emitnarm.c > D:\SourceCode\GitRepos.Forks\micropython\py\asmxtensa.c > D:\SourceCode\GitRepos.Forks\micropython\py\emitnxtensa.c > D:\SourceCode\GitRepos.Forks\micropython\py\emitinlinextensa.c > D:\SourceCode\GitRepos.Forks\micropython\py\formatfloat.c > D:\SourceCode\GitRepos.Forks\micropython\py\parsenumbase.c > D:\SourceCode\GitRepos.Forks\micropython\py\parsenum.c > D:\SourceCode\GitRepos.Forks\micropython\py\emitglue.c > D:\SourceCode\GitRepos.Forks\micropython\py\persistentcode.c > D:\SourceCode\GitRepos.Forks\micropython\py\runtime.c > D:\SourceCode\GitRepos.Forks\micropython\py\runtime_utils.c > D:\SourceCode\GitRepos.Forks\micropython\py\scheduler.c > D:\SourceCode\GitRepos.Forks\micropython\py\nativeglue.c > D:\SourceCode\GitRepos.Forks\micropython\py\stackctrl.c > D:\SourceCode\GitRepos.Forks\micropython\py\argcheck.c > D:\SourceCode\GitRepos.Forks\micropython\py\warning.c > D:\SourceCode\GitRepos.Forks\micropython\py\map.c > D:\SourceCode\GitRepos.Forks\micropython\py\obj.c > D:\SourceCode\GitRepos.Forks\micropython\py\objarray.c > D:\SourceCode\GitRepos.Forks\micropython\py\objattrtuple.c > D:\SourceCode\GitRepos.Forks\micropython\py\objbool.c > D:\SourceCode\GitRepos.Forks\micropython\py\objboundmeth.c > D:\SourceCode\GitRepos.Forks\micropython\py\objcell.c > D:\SourceCode\GitRepos.Forks\micropython\py\objclosure.c > D:\SourceCode\GitRepos.Forks\micropython\py\objcomplex.c > D:\SourceCode\GitRepos.Forks\micropython\py\objdeque.c > D:\SourceCode\GitRepos.Forks\micropython\py\objdict.c > D:\SourceCode\GitRepos.Forks\micropython\py\objenumerate.c > D:\SourceCode\GitRepos.Forks\micropython\py\objexcept.c > D:\SourceCode\GitRepos.Forks\micropython\py\objfilter.c > D:\SourceCode\GitRepos.Forks\micropython\py\objfloat.c > D:\SourceCode\GitRepos.Forks\micropython\py\objfun.c > D:\SourceCode\GitRepos.Forks\micropython\py\objgenerator.c > D:\SourceCode\GitRepos.Forks\micropython\py\objgetitemiter.c > D:\SourceCode\GitRepos.Forks\micropython\py\objint.c > D:\SourceCode\GitRepos.Forks\micropython\py\objint_longlong.c > D:\SourceCode\GitRepos.Forks\micropython\py\objint_mpz.c > D:\SourceCode\GitRepos.Forks\micropython\py\objlist.c > D:\SourceCode\GitRepos.Forks\micropython\py\objmap.c > D:\SourceCode\GitRepos.Forks\micropython\py\objmodule.c > D:\SourceCode\GitRepos.Forks\micropython\py\objobject.c > D:\SourceCode\GitRepos.Forks\micropython\py\objpolyiter.c > D:\SourceCode\GitRepos.Forks\micropython\py\objproperty.c > D:\SourceCode\GitRepos.Forks\micropython\py\objnone.c > D:\SourceCode\GitRepos.Forks\micropython\py\objnamedtuple.c > D:\SourceCode\GitRepos.Forks\micropython\py\objrange.c > D:\SourceCode\GitRepos.Forks\micropython\py\objreversed.c > D:\SourceCode\GitRepos.Forks\micropython\py\objset.c > D:\SourceCode\GitRepos.Forks\micropython\py\objsingleton.c > D:\SourceCode\GitRepos.Forks\micropython\py\objslice.c > D:\SourceCode\GitRepos.Forks\micropython\py\objstr.c > D:\SourceCode\GitRepos.Forks\micropython\py\objstrunicode.c > D:\SourceCode\GitRepos.Forks\micropython\py\objstringio.c > D:\SourceCode\GitRepos.Forks\micropython\py\objtuple.c > D:\SourceCode\GitRepos.Forks\micropython\py\objtype.c > D:\SourceCode\GitRepos.Forks\micropython\py\objzip.c > D:\SourceCode\GitRepos.Forks\micropython\py\opmethods.c > D:\SourceCode\GitRepos.Forks\micropython\py\sequence.c > D:\SourceCode\GitRepos.Forks\micropython\py\stream.c > D:\SourceCode\GitRepos.Forks\micropython\py\binary.c > D:\SourceCode\GitRepos.Forks\micropython\py\builtinimport.c > D:\SourceCode\GitRepos.Forks\micropython\py\builtinevex.c > D:\SourceCode\GitRepos.Forks\micropython\py\builtinhelp.c > D:\SourceCode\GitRepos.Forks\micropython\py\modarray.c > D:\SourceCode\GitRepos.Forks\micropython\py\modbuiltins.c > D:\SourceCode\GitRepos.Forks\micropython\py\modcollections.c > D:\SourceCode\GitRepos.Forks\micropython\py\modgc.c > D:\SourceCode\GitRepos.Forks\micropython\py\modio.c > D:\SourceCode\GitRepos.Forks\micropython\py\modmath.c > D:\SourceCode\GitRepos.Forks\micropython\py\modcmath.c > D:\SourceCode\GitRepos.Forks\micropython\py\modmicropython.c > D:\SourceCode\GitRepos.Forks\micropython\py\modstruct.c > D:\SourceCode\GitRepos.Forks\micropython\py\modsys.c > D:\SourceCode\GitRepos.Forks\micropython\py\moduerrno.c > D:\SourceCode\GitRepos.Forks\micropython\py\modthread.c > D:\SourceCode\GitRepos.Forks\micropython\py\vm.c > D:\SourceCode\GitRepos.Forks\micropython\py\bc.c > D:\SourceCode\GitRepos.Forks\micropython\py\showbc.c > D:\SourceCode\GitRepos.Forks\micropython\py\repl.c > D:\SourceCode\GitRepos.Forks\micropython\py\smallint.c > D:\SourceCode\GitRepos.Forks\micropython\py\frozenmod.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\moductypes.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\modujson.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\modure.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\moduzlib.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\moduheapq.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\modutimeq.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\moduhashlib.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\moducryptolib.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\modubinascii.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\virtpin.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\machine_mem.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\machine_pinbase.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\machine_signal.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\machine_pulse.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\machine_i2c.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\machine_spi.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\modussl_axtls.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\modussl_mbedtls.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\modurandom.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\moduselect.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\modwebsocket.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\modwebrepl.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\modframebuf.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\vfs.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\vfs_reader.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\vfs_posix.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\vfs_posix_file.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\vfs_fat.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\vfs_fat_diskio.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\vfs_fat_file.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\utime_mphal.c > D:\SourceCode\GitRepos.Forks\micropython\extmod\uos_dupterm.c > D:\SourceCode\GitRepos.Forks\micropython\lib\embed\abort_.c > D:\SourceCode\GitRepos.Forks\micropython\lib\utils\printf.c > > build\genhdr\qstr.i.last > ``` > > Many Thanks > Richard > > _______________________________________________ > Scons-users mailing list > [email protected] > https://pairlist4.pair.net/mailman/listinfo/scons-users > _______________________________________________ Scons-users mailing list [email protected] https://pairlist4.pair.net/mailman/listinfo/scons-users