uttl.buildout
Utilities for zc.buildout as developed for Up There They Love.
Usage
The uttl.buildout package will be automatically installed from PyPi when you use it in your buildout configuration.
[buildout]
parts =
devenv
game
# find devenv executable from visual studio path
[devenv]
recipe = uttl.buildout:versioncheck
required-major = 2017
required-minor = 15
body = ... path = None
... args = [
... r'%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe',
... '-version',
... '%s.0' % (self.options['required-minor']),
... '-property',
... 'installationPath'
... ]
...
... try:
... with subprocess.Popen(args, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) as proc:
... for line in iter(proc.stdout.readline, b''):
... path = os.path.abspath(str(line.rstrip(), encoding='ascii'))
... break
... except FileNotFoundError:
... self.log.error('Visual Studio is not installed.')
... return (False, 0, 0, 0, '')
...
... if not path:
... self.log.error('Cannot find Visual Studio executable.')
... return (False, 0, 0, 0, '')
...
... path = os.path.abspath(path + r'\Common7\IDE\devenv.com')
... if not os.path.exists(path):
... self.log.error('Failed to find path to devenv.')
... return (False, 0, 0, 0, '')
...
... return (True, self.options['required-major'], self.options['required-minor'], 64, path)
# build game executable
[game]
recipe = uttl.buildout:devenv
executable = ${devenv:path}
solution = SSSG.sln
project = SSSG
build = Release
You can also clone the repository and use it directly as a package of recipes:
[buildout]
develop = C:\Downloads\uttl-buildout
Recipes
The following recipes (scripts) for zc.buildout are available in this package:
- uttl.buildout.cmake - Run CMake commands
- uttl.buildout.command - Run an executable with arguments
- uttl.buildout.copyfile - Copy files between directories
- uttl.buildout.devenv - Build projects with Visual Studio
- uttl.buildout.dotnet.restore - Restore .NET packages
- uttl.buildout.inklecate - Compile .ink files to JSON
- uttl.buildout.qmake - Run QMake commands
- uttl.buildout.qtdeploy - Deploy Qt libraries
- uttl.buildout.versioncheck - Get versioned executables
Check the source folders for detailed documentation about each recipe.
Building from source
Check that you're running at least Python 3.9:
D:\Projects\uttl-buildout>python --version
Python 3.9.5
Build and install egg on system:
python setup.py install
Create egg in dist/ folder:
python setup.py bdist_egg
Install on your system using easy_install:
python -m easy_install -a dist\uttl_buildout-1.0.0-py3.9.egg
Upload packaged egg to repository:
python -m twine upload --repository pypi dist/*
Changes
1.2.0
- All: Added optional artefacts and arguments options
- CMake: Made the path to source option mandatory to prevent user error
- Command: New recipe for calling executables
- CopyFile: Install files before copying them
1.1.0
- All: Changed all options from snake_case to kebab-case
- DotnetRestore: New recipe for invoking dotnet commands
- CMake: Fixed source path option
- CMake: Made target option a synonym for targets
- CopyFile: Copies files if they do not exist or if they were modified
- CopyFile: Added documentation
- Devenv: Cleaned up script
- Devenv: Added documentation
- QMake: Fixed files option throwing an error
- QMake: Expanded documentation
- QMake: Fixed typos in documentation
1.0.0
- Initial release
Metadata
Release files for uttl.buildout 1.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| uttl.buildout-1.2.0-py3.9.egg | Legacy Egg format | - | - | Details for uttl.buildout-1.2.0-py3.9.egg |
Release files / uttl.buildout-1.2.0-py3.9.egg
| Download URL | uttl.buildout-1.2.0-py3.9.egg |
|---|---|
| Size | 37.8 kB |
| Tags | Egg |
|
SHA-256 checksum How to use checksums |
6b235ca06264aca04caf6d73d8c78f3551b180da5d7d4b0508f1ddfdc3060cc8
|
|
BLAKE2b-256 checksum How to use checksums |
257f165a0c5cf78a72983d9b375639b29a69c83e8b0bf8ebd5b0e13d4ba46e18
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
|
Security for uttl.buildout 1.2.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.