dependabot[bot]
36146e1982
chore(deps): update object requirement from 0.38.0 to 0.39.0
...
Updates the requirements on [object](https://github.com/gimli-rs/object ) to permit the latest version.
- [Changelog](https://github.com/gimli-rs/object/blob/main/CHANGELOG.md )
- [Commits](https://github.com/gimli-rs/object/compare/0.38.0...v0.39.0 )
---
updated-dependencies:
- dependency-name: object
dependency-version: 0.39.0
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-30 12:55:05 -04:00
dependabot[bot]
09b8353ea8
chore(deps): update sha2 requirement from 0.10.9 to 0.11.0
...
Updates the requirements on [sha2](https://github.com/RustCrypto/hashes ) to permit the latest version.
- [Commits](https://github.com/RustCrypto/hashes/compare/streebog-v0.11.0-pre.0...sha2-v0.11.0 )
---
updated-dependencies:
- dependency-name: sha2
dependency-version: 0.11.0
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-30 07:54:56 +00:00
dependabot[bot]
8a2716ad68
chore(deps): update zip requirement from 7.1.0 to 8.0.0
...
Updates the requirements on [zip](https://github.com/zip-rs/zip2 ) to permit the latest version.
- [Release notes](https://github.com/zip-rs/zip2/releases )
- [Changelog](https://github.com/zip-rs/zip2/blob/master/CHANGELOG.md )
- [Commits](https://github.com/zip-rs/zip2/compare/v7.1.0...v7.2.0 )
---
updated-dependencies:
- dependency-name: zip
dependency-version: 7.2.0
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-02-16 11:07:29 -05:00
dependabot[bot]
53ff23c3c5
chore(deps): update argfile requirement from 0.2.1 to 1.0.0
...
Updates the requirements on [argfile](https://github.com/rust-cli/argfile ) to permit the latest version.
- [Changelog](https://github.com/rust-cli/argfile/blob/main/CHANGELOG.md )
- [Commits](https://github.com/rust-cli/argfile/compare/v0.2.1...v1.0.0 )
---
updated-dependencies:
- dependency-name: argfile
dependency-version: 1.0.0
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-02-16 11:07:15 -05:00
Matt Ehrnschwender
dbc826f641
ci: change ci.yaml triggers
...
Use ignore patterns for triggers and add ignore pattern for
'dev-noci/**' branches
2026-02-01 14:31:55 -05:00
Matt Ehrnschwender
f6caf1a822
refactor: linker initialization
...
Remove builder structure and merge library search module in with the
linker module
2026-01-29 23:38:15 -05:00
Matt Ehrnschwender
79a1203354
refactor: remove unused code
...
Fixes lints and removes unused code
2026-01-29 22:59:50 -05:00
Matt Ehrnschwender
65edec7818
refactor: simplify error handling
...
Remove custom errors in places and use anyhow. Log errors instead of
propagating them back to main
2026-01-29 22:51:07 -05:00
Matt Ehrnschwender
11edee937e
test: save test data to target tmp dir
2026-01-29 13:41:35 -05:00
Matt Ehrnschwender
dca9814f88
refactor: move MinGW to query to separate function
2026-01-29 11:44:51 -05:00
Matt Ehrnschwender
69d116e708
refactor: move lexically_normalize_path to module
2026-01-29 11:44:39 -05:00
Matt Ehrnschwender
72ce90cdd8
refactor: merge lib.rs with main.rs
...
Make project a single command line program
2026-01-29 11:18:34 -05:00
Matt Ehrnschwender
2740cb74bf
feat: add '--error-limit' option
...
Configures threshold for number of error messages to print
2026-01-29 11:06:55 -05:00
Matt Ehrnschwender
d82e2f86ab
feat: normalize library search paths
...
Removes '..' and '.' to make files found through search paths clearer
in diagnostic messages
2026-01-28 23:25:50 -05:00
Matt Ehrnschwender
b9a8d2efc7
chore: refactor editorconfig
...
Change root indentation for C/C++ but keep current indentation in
examples
2026-01-28 23:09:29 -05:00
Matt Ehrnschwender
0c60713f00
feat: add --color-diagnostics argument
...
This flag will be used in place of '--color' to match lld. Usage of the
old '--color' command line flag will show a warning message about it
being slated for removal
2026-01-28 23:03:16 -05:00
Matt Ehrnschwender
ef2252d870
fix: add Win32 console for logging changes
2026-01-28 23:03:16 -05:00
Matt Ehrnschwender
29cac10c8a
refactor: move multi-line log handling to logger
...
Change areas where multi line log entries are emitted to defer
formatting details for the logger to handle
2026-01-28 22:33:39 -05:00
Matt Ehrnschwender
8f85509220
refactor: change logging implementation
...
Use new logging implementation which replaces termcolor for ANSI
coloring. Adds logger implementation for handling `--error-limit`
2026-01-28 22:22:03 -05:00
Matt Ehrnschwender
5091ce0965
refactor: move undname crate to module
...
Make this an in source module instead of a separate crate
2026-01-28 22:06:29 -05:00
Matt Ehrnschwender
1dd309c70d
refactor: remove jamcrc crate
...
Move jamcrc calculation for aux section checksum in where used
2026-01-28 21:51:11 -05:00
Matt Ehrnschwender
150df4276a
refactor: remove unused coffyaml crate
...
Crate was for building test data but is no longer used. Also remove the
`objs2yaml` crate since it was a small cli wrapper for coffyaml
2026-01-28 21:43:17 -05:00
Matt Ehrnschwender
5f7cd45e6e
ci: split up Windows/Linux tasks
...
Set test tools for the Linux runner to use later version of LLVM
2026-01-28 21:36:39 -05:00
Matt Ehrnschwender
0355e9f00a
ci: use clang-20 for tests
2026-01-28 21:28:54 -05:00
Matt Ehrnschwender
f6a97bed1e
ci: install clang and llvm
2026-01-28 21:15:36 -05:00
Matt Ehrnschwender
5270858125
test: migrate to Clang/LLVM tooling for test data
...
Change obj2yaml test data generation to use Clang with LLVM tooling with
tempfiles
2026-01-28 20:43:37 -05:00
Matt Ehrnschwender
1e472bc6a1
chore(release): v0.6.2
v0.6.2
2026-01-28 15:56:40 -05:00
Matt Ehrnschwender
ef27f214c8
fix: Beacon API i386 mangling
...
Add i386 prefix to Beacon API symbols
2026-01-27 22:04:13 -05:00
Matt Ehrnschwender
3284fc522f
fix: include mangling prefix for i386 imports
...
Adds the i386 underscore '_' mangling prefix at the expected spot
for DLL imported symbols
Fixes : #44
2026-01-27 20:50:30 -05:00
Matt Ehrnschwender
50b54f1131
fix: Beacon API symbol mangling
...
Include i386 mangling prefix in the public symbol name but not in the
import name.
Refactors API symbol generation to use an arena for saving strings
instead of keeping everything static
2026-01-27 20:37:48 -05:00
Matt Ehrnschwender
64fd0d095e
fix: missing stdcall suffix in MinGW i386 imports
...
The Hint/Name table from legacy MinGW i386 import members did not
include stdcall suffixes for symbols.
Use the public symbol name for setting the import name instead since it
is present there
2026-01-27 19:45:56 -05:00
Matt Ehrnschwender
230f490dbf
chore(release): v0.6.1
v0.6.1
2026-01-22 13:21:29 -05:00
Matt Ehrnschwender
00ac4edcc5
fix: handling of VA-based relocations
...
Virtual address based relocations were being treated as relative
relocations in cases where the relocation target was defined in the same
output section as the relocation. These should now be treated as
additional pending relocs for a loader to process.
Additional relative relocation types are also now handled properly when
applying intra-section relocations.
Fixes : #36
2026-01-22 12:20:56 -05:00
Matt Ehrnschwender
080fd0ae2e
test: remove dump link graph in .bss test
2026-01-21 23:36:37 -05:00
Matt Ehrnschwender
2f73fe9c1c
fix: COMDAT leader selection
...
Select the correct leader symbol instead of claiming all symbol
definitions for the COMDAT section
2026-01-20 22:51:02 -05:00
Matt Ehrnschwender
eecae6f9f8
refactor: output section creation
...
Moves creation of output sections to separate functions
2026-01-20 19:50:55 -05:00
Matt Ehrnschwender
42d6277e11
fix: typo in BeaconEnableBeaconGate symbol
...
Symbol name had an extra `:` at the end
2026-01-20 19:18:00 -05:00
Matt Ehrnschwender
42a08f2840
fix: git hash embedding in release builds
...
Git version information would not get embedded correctly in CI release
builds due to a detached head checkout. This changes the sourcing
logic to account for that
2026-01-20 19:12:18 -05:00
Matt Ehrnschwender
e51e5488ad
fix: panic at src/graph/output.rs:607
...
Program would panic if the size of an output section with uninitialized
data exceeded the total size of the output file.
Adds a check to only apply relocation fixups for output sections with
file-backed data.
2026-01-20 18:13:48 -05:00
dependabot[bot]
afa5db30ca
chore(deps): update zip requirement from 6.0.0 to 7.1.0
...
Updates the requirements on [zip](https://github.com/zip-rs/zip2 ) to permit the latest version.
- [Release notes](https://github.com/zip-rs/zip2/releases )
- [Changelog](https://github.com/zip-rs/zip2/blob/master/CHANGELOG.md )
- [Commits](https://github.com/zip-rs/zip2/compare/v6.0.0...v7.1.0 )
---
updated-dependencies:
- dependency-name: zip
dependency-version: 7.1.0
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-01-20 18:13:28 -05:00
Matt Ehrnschwender
bad4f37608
feat: add module definition parser
...
Parser for parsing Windows module definition files. Not integrated into
the main program
2026-01-20 15:25:37 -05:00
Matt Ehrnschwender
bfaec726c8
chore(release): v0.6.0
v0.6.0
2025-11-25 11:51:03 -05:00
Matt Ehrnschwender
45c16dcb9d
docs: rename xtask docs target
...
Change target name to `docs-man` instead of just `docs`.
2025-11-25 11:48:49 -05:00
Matt Ehrnschwender
ae03ef71e7
feat: add BeaconDownload builtin API symbol
...
New CS 4.12 release adds the `BeaconDownload` function to list of
Beacon API functions. This adds support for resolving that symbol when
using the builtin Beacon API symbols.
2025-11-25 11:11:16 -05:00
dependabot[bot]
faf2158eb5
chore(deps): update object requirement from 0.37.3 to 0.38.0
...
Updates the requirements on [object](https://github.com/gimli-rs/object ) to permit the latest version.
- [Changelog](https://github.com/gimli-rs/object/blob/master/CHANGELOG.md )
- [Commits](https://github.com/gimli-rs/object/compare/0.37.3...0.38.0 )
---
updated-dependencies:
- dependency-name: object
dependency-version: 0.38.0
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 11:05:56 -05:00
Matt Ehrnschwender
71908bdbca
docs: add basic man page
2025-11-25 11:05:56 -05:00
Matt Ehrnschwender
90cd07d03f
refactor: remove pathed item
...
Replace with just using tuples
2025-11-22 16:08:39 -05:00
Matt Ehrnschwender
5146c96b9e
refactor: merge pathed_item.rs into linker
...
This module does not need to be separate since it is only used by the
main linker module
2025-11-22 15:56:43 -05:00
Matt Ehrnschwender
0ae26ec0b4
refactor: move linker module to single file
...
Combine files related to linker module into a single file
2025-11-22 15:52:49 -05:00
Matt Ehrnschwender
582fdab0f6
refactor: merge bin files into 'src/'
...
Move main binary sources from 'src/bin/' into 'src/'
2025-11-22 15:40:53 -05:00