scons / scons-contrib Goto Github PK
View Code? Open in Web Editor NEWA repo for user contributed SCons Builders and other tools. These are not supported directly by the SCons project.
License: MIT License
A repo for user contributed SCons Builders and other tools. These are not supported directly by the SCons project.
License: MIT License
The package sconscontrib
is not currently installable from pip:
$ pip search sconscontrib -v
Starting new HTTPS connection (1): pypi.org:443
https://pypi.org:443 "POST /pypi HTTP/1.1" 200 108
The tool knows how to make a .pyc
or .pyo
file, depending on a construction variable $CPYTHON_PYC
. However:
PEP 3147 introduced .pyc
directories and versioning as of Python 3.2. That is, instead of foo.py
being compiled to foo.pyc
, it by default becomes __pycache__/foo.cpython-311.pyc
IFF the compiler version is CPython 3.11.
Then PEP 488 eliminated pyo
files entirely as of Python 3.5. They now use an encoding on the .pyc
filename, so that foo.py
compiled with optimization level 1 yields a filename __pycache__/foo.cpython-311.opt-1.pyc
by default.
To be useful in a modern Python environment, those changes need to be accounted for.
A simpleminded test with just creating an env specifying the tool showed some issues with the current contrib set:
The following tools have the problem with the transition from SCons.Warnings.Warning
to SCons.Warnings.SConsWarning
: gob2, IDL, jal, kotlin, noweb, ProC, rest. Plus, from local branches, not merged yet - qt4/qt5 have the same issue.
These other tools failed due to missing Python modules:
lyx:
KeyError: 'PDF': from
...
File "/home/mats/Work/scons.contrib/contrib/site_scons/site_tools/lyx/__init__.py", line 79:
env["BUILDERS"]["PDF"].add_src_builder(lyx_builder
sip:
ModuleNotFoundError: No module named 'sipconfig':
...
File "/home/mats/Work/scons.contrib/contrib/site_scons/site_tools/sip/__init__.py", line 57:
import sipconfig
sphinx4scons:
ModuleNotFoundError: No module named 'sphinx.util':
...
File "/home/mats/Work/scons.contrib/contrib/site_scons/site_tools/sphinx4scons/__init__.py", line 54:
from sphinx.util.matching import patfilter, compile_matchers
I have moved to scons 3.1.2 and it seems like doxygen is not compatible with scons3.1.2 Can someone please confirm if is that so?
Hi,
when trying to use the cuda tool, I got:
File "scons-contrib/sconscontrib/SCons/Tool/cuda/__init__.py", line 91
print 'scons: CUDA Toolkit found in ' + path
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print('scons: CUDA Toolkit found in ' + path)?
While I can patch this myself, I wonder what are the general plans regarding Python 3 support
On Tue, 9 Jun 2020 at 08:34, Dirk Bächle wrote:
Hi Carnë,
On 09.06.20 01:55, Carnë Draug wrote:
On Mon, 8 Jun 2020 at 22:17, Dirk Bächle wrote:
[...]
I'm glad to hear you're interested on it. I'm not maintaining the
SCons-perl5 tool anymore. If you are willing to take it over to
scons-contrib, you're welcome to do so.I have already made the conversion to git and merged it in the
scons-contrib repo, just pull my master branch from
https://github.com/carandraug/scons-contribcan I ask you to also create the pull request against
SCons/scons-contrib for it? I could probably do this myself, but it
might look as if I'm "robbing" the Tool from you. ;)
Having you initiate the merge gives us maintainers (me in this case)
less to explain down the road, I guess.Thanks a lot for contributing to the SCons project!
The reason I didn't made a pull request was that I already made the merge on the master branch. It's already finalized so I see no point on starting a pull request for you to finish it and have github adding pointless merge commit.
We just upgraded to scons-4.3.0 (using python-3.10.2) and also updated the qt4 tool as well. I'm getting many errors such as:
scons: *** [build/linux_x86_64_rhel7/Optimized/gui/moc_GUBase.cc] TypeError `_defines() missing 2 required positional arguments: 'target' and 'source'' trying to evaluate `${_defines(QT4_MOCDEFPREFIX, CPPDEFINES, QT4_MOCDEFSUFFIX, __env__)}'
Is there something obvious that I can fix? We are using qt-4.8.7.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.