Path to this page:
./
devel/samurai,
Ninja-compatible build tool written in C
Branch: CURRENT,
Version: 1.2,
Package name: samurai-1.2,
Maintainer: nikitasamurai is a ninja-compatible build tool written in C99 with a focus on
simplicity, speed, and portability.
samurai implements the ninja build language through version 1.9.0 except
for MSVC dependency handling (`deps = msvc`). It uses the same format
for `.ninja_log` and `.ninja_deps` as ninja, currently version 5 and 4
respectively.
It is feature-complete and supports most of the same options as ninja.
samurai requires various POSIX.1-2008 interfaces.
Required to build:[
pkgtools/cwrappers]
Master sites:
Filesize: 31.942 KB
Version history: (Expand)
- (2020-12-18) Updated to version: samurai-1.2
- (2020-06-13) Updated to version: samurai-1.1
- (2020-01-02) Updated to version: samurai-1.0
- (2019-12-12) Package added to pkgsrc.se, version samurai-0.7 (created)
CVS history: (Expand)
2023-11-16 10:39:48 by Nia Alarie | Files touched by this commit (2) |
Log message:
samurai: Fix overlapping definition with libc.
|
2021-10-26 12:20:11 by Nia Alarie | Files touched by this commit (3016) |
Log message:
archivers: Replace RMD160 checksums with BLAKE2s checksums
All checksums have been double-checked against existing RMD160 and
SHA512 hashes
Could not be committed due to merge conflict:
devel/py-traitlets/distinfo
The following distfiles were unfetchable (note: some may be only fetched
conditionally):
./devel/pvs/distinfo pvs-3.2-solaris.tgz
./devel/eclipse/distinfo eclipse-sourceBuild-srcIncluded-3.0.1.zip
|
2021-10-07 15:44:44 by Nia Alarie | Files touched by this commit (3017) |
Log message:
devel: Remove SHA1 hashes for distfiles
|
2020-12-17 23:01:04 by Michael Forney | Files touched by this commit (3) | |
Log message:
samurai: update to 1.2
## New features
- Subtools `list`, `query`, and `commands` are now implemented.
- Dry-run execution is now supported (`-n` flag).
- The `%o` specifier is now supported in `NINJA_STATUS`, used to
display the average rate of finished jobs.
## Bug fixes
- Fix version comparison when checking `ninja_required_version`
with a version that has multiple digits in some component.
## Other changes
- Work around POSIX.1-2008 conformance issue on SunOS-based operating
systems.
|
2020-11-12 02:24:36 by David H. Gutteridge | Files touched by this commit (2) |
Log message:
samurai: fix SunOS build
|
2020-06-13 19:50:40 by Nia Alarie | Files touched by this commit (2) |
Log message:
samurai: Update to 1.1
New features
The targets subtool is now implemented. This subtool prints targets built by \
the project, either by rule name or depth from the final outputs.
The compdb subtool is now implement. This subtool dumps a JSON compilation \
database, as specified in \
https://clang.llvm.org/docs/JSONCompilationDatabase.html, and allows integration \
with some IDEs and build tools.
The NINJA_STATUS environment variable is now honored, allowing control over \
what information is included in the status line.
The -l flag (scheduling based on load average) is now ignored for \
compatibility with ninja.
Bug fixes
When a job specified depfile and deps, but did not actually write the \
depfile (for example, D compilers with meson), we now write an empty dependency \
record to .ninja_deps. This matches ninja's behavior and prevents unwanted \
rebuilds.
When the manifest is dirty, but a restat = 1 action causes the manifest \
rebuild to be pruned, we now continue with the build. This prevents a manifest \
rebuild loop in these cases (for example with cmake using glob patterns), since \
the manifest is always dirty after reloading.
Cleanups
When no default line is present in build.ninja, we previously scheduled all \
targets for building rather than just the root targets (those with no \
dependents). This makes no difference is practice sin
ce we need to build all dependencies before a target anyway, but this was \
changed in order to implement the targets subtool.
We now do a better job at freeing memory when the manifest is rebuilt.
Some code style inconsistencies were fixed.
Acknowledgements
This release involved the help of a number of people who reported bugs and \
implemented features. Thanks to Brian Callahan, Daan De Meyer, Ethan Sommer, \
Rasmus Thomsen, Simon Zeni, and @angularorbit for your contributions!
|
2020-04-28 13:46:30 by Nikita | Files touched by this commit (29) |
Log message:
adjust maintainer to my new login
|
2020-01-01 02:04:28 by ng0 | Files touched by this commit (2) | |
Log message:
devel/samurai: Update to 1.0
Changelog picked from https://github.com/michaelforney/samurai/releases:
New features
* The -d keepdepfile and -d keeprsp debugging options are
now supported to allow inspection of the generated
dependency file and RSP file respectively.
Bug fixes
* Failed jobs weren't releasing their pool slot. This could
cause the build to terminate early when pool depth was 1,
and the failure limit (-k flag) had not yet been reached.
* Dependency files containing more than one output: input
line would have the first character of the output path
skipped on subsequent lines. This would result an error
since all lines in the dependency file must refer to the
same output path.
* Empty paths in build edges (e.g. expanded from an undefined
variable) were not getting rejected, causing a NUL byte to
be written past the end of the allocation for the path string
when it was canonicalized as ..
* Recursive rule variable definitions were not detected and
rejected, causing infinite recursion when attempting to expand them.
Cleanups
* Better error message for dependency log read failure,
differentiating unexpected EOF from read error.
* Standard output is now line buffered, even when redirected
to a pipe or regular file. This allows incremental progress
updates in cases where the output is being saved or piped
to another command.
* The Makefile now declares dependencies on header files, so
that during development, objects get rebuilt when the headers change.
|