-
Notifications
You must be signed in to change notification settings - Fork 95
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ardu waf rebase on waf 2.0.23 from gitlab #11
base: master
Are you sure you want to change the base?
Conversation
is there some issue this fixes? |
Its only built if gfortran is used at least with version 6.
Also build a main program that uses the parent module.
Signed-off-by: Mickaël Schoentgen <[email protected]>
…o input files generated during build
…n build Most of the ant_globs used are explicitly and knowingly on build directory (ie. javadoc, jar re) so the warning is quite spurious. The only one that may be in doubt is the source re one: I added also here because if you use a code generator (ie. protoc) then it is also correct to glob on builds and the warning is misleading.
The previous patches to workaround http://support.microsoft.com/kb/830473 drastically over estimated the number of characters in commands by treating the repr() version of the command array as a reasonable estimator of commandline length. This caused commands attempt to write argsfiles before they should have. The new calculation calculates the number characters in the command array and adds the number of spaces that would be added by ' '.join(cmd) this provides a much closer estimate of the commandline length. This also limits the CLI-length on non windows platforms to 200kB. This prevents us hitting the much larger argument limits on Linux/BSD/MacOS platforms.
This patch addresses the bug described in issue #2225 where in using posix paths and an empty PREFIX value can result in files being installed to the root of the drive specified by destdir instead of to the desired prefix value. This is a bug in the assumption that user specified paths that are strings will contain directory separators that match the target operating system.
Not all tools executed by tasks support the '@argsfile' syntax for shunting commandline arguments to a file. This means that if such commands are shunted to a file early, he command will not work. On windows the rc.exe command is such an example, but some tools on linux have similar limitations. In the posix case, we artifically limit our commandline size because it is difficult/variable to caluclate what the actual limit is (it is partially dependent on environment size). This could artifically cause commands to fail due to commandline length when they otherwise wouldn't. This patch fixes this issue by adding the 'allow_argsfile' flag to the task. This way certain task instances will be able to specify if they are compatible with the '@argsfile' syntax or not.
TypeError: can only concatenate list
This patch attempts to detects if, when we are running from within an MSYS2 environement (MSYSTEM is set) we are also executing inside an MSYS2 provided version of python. It does this by assuming that if we are not in a cygwin environment and we are building on windows, If the value of sys.executable is /usr/bin or /bin or /usr/local/bin (somethign unixy) then we are running in an MSYS2 python interpreter and shoudl compensate for msys2 root paths. Otherwise we shouldn't be doing extra path manipulation.
…Task class #2216 The class waflib.Tools.winres.rc_parser is not a subclass of waflib.Task.Task: rc_parser -> c_preproc.c_parser -> object
…nt contains UTF-8 chars
Rename some local variables to clarify their purpose and to align with msvcdeps.py.
Move the scan() method down in the file to match msvcdeps' method ordering. This makes it easier to compare gccdeps.py and msvcdeps.py to keep them in sync.
Rework how gccdeps' cached_nodes lock is used so acquiring the lock is only necessary on a cache miss. Also use a "with" context manager to simplify management of the lock lifecycle. Ported from 8b5a2a2
Handles presence of \r in module name (ie. DOS mode swig .i files) Should fix #2350
In the current implementation if a project is using build variants it's not possible to use the clang_compilation_database plugin because it strips the variant information from the build object.
Add automatic generation of editor language settings for C and C++, so the automatic code correction uses the correct compiler and compiler flags, including for example the correct C/C++ standard so construct from such standards are correctly managed by the IDE. Correct compiler and flags are automatically generated using the build environment data gathered during configure phase. The playground example has been modified to contain some code that is standard specific to demonstrate the new feature when run under Eclipse.
Make sure just unique include paths (both system and local) are added to prevent overcrowding with useless redundant include paths that grow up a lot the generated XML file and make the usage of the GUI messy. The filter was already there for Java/Python.
Make it easy to add custom target executions in the automatic eclipse configuration generation, for example to call other standard waf targets from other tools or with specific options.
Where default compiler is gcc
__xrange()__ was removed in Python 3 in favor of a reworked version of __range()__. Discovered via ArduPilot/ardupilot#10278
52e41bd
to
f60daab
Compare
did double rebase and got rid of conflicts. needs testing. |
Hey there, I'd like to request this be finished up. A user on python 3.11 has ran into Reference: ArduPilot/ardupilot#22522 Let me know if there is anything I can do to help. Thanks! |
its actually only 8 commits at the bottom that are the rebase, the rest is from the fact that waf moved to gitlab at https://gitlab.com/ita1024/waf/
not sure how to do this less messily?