Skip to content
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

Support OMF object format #97

Open
tomsons26 opened this issue Aug 19, 2024 · 3 comments
Open

Support OMF object format #97

tomsons26 opened this issue Aug 19, 2024 · 3 comments
Labels
enhancement New feature or request

Comments

@tomsons26
Copy link

tomsons26 commented Aug 19, 2024

Supporting OMF would also open objdiff to being used with Borland, really old MSVC, and Watcom targets
There are probably a lot of other lesser used compilers that use OMF, probably everything very old aimed for dos uses OMF
https://web.archive.org/web/20200207210113/https://pierrelib.pagesperso-orange.fr/exec_formats/OMF_v1.1.pdf
is the specs
OmniBlade had to do support for it in a binutils fork so decompme has a usable objdump https://github.com/OmniBlade/binutils-gdb/tree/omf-binutils-2_22-branch

another reference point can be https://github.com/tomsons26/objconv/commits/omf_fixes/
which is my fork that sort of fixes objconv to handle 32 bit OMF records properly, its a bit of a ugly hack tho as it can only output core c/cpp functions, it strips away inlines/comdats/anything compiler generated

@OmniBlade
Copy link

Someone has ported the OMF support to a newer binutils and improved it at https://github.com/sillyc0n/binutils-gdb/tree/binutils-2_42-branch-omf-with-thread-support though I haven't tested it. Might be worth seeing if the upstream objects library that is being used is interested in adding omf support?

@OmniBlade
Copy link

Upstream repo looks like its https://github.com/gimli-rs/object though it was annoyingly hard to find given the generic name of the library?

@OmniBlade
Copy link

Added an upstream request at gimli-rs/object#736.

@encounter encounter added the enhancement New feature or request label Oct 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants