Skip to content
This repository has been archived by the owner on Nov 21, 2020. It is now read-only.

Commit

Permalink
Updated README
Browse files Browse the repository at this point in the history
  • Loading branch information
dd86k committed Nov 29, 2018
1 parent a9190eb commit 4f5a371
Showing 1 changed file with 20 additions and 11 deletions.
31 changes: 20 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,28 +2,37 @@

ff aims to be a simple, fast, and easy-to-understand binary file scanner.

![ff screenshot](https://dd86k.github.io/imgs/ff0.png)
```
$ ff *.exe -s
putty.exe: PE32+ Windows GUI Executable for x86-64 machines, LARGE_ADDRESS_AWARE
FuckingClippy.exe: PE32 Windows GUI .NET Executable for x86 machines, LARGE_ADDRESS_AWARE
$ ff 1542980533119.png -m
Portable Network Graphics image, 1160 x 1402 pixels, 32-bit RGBA
Default compression, Default filtering, No interlacing
$ ff bul-bul0000138.pdf
PDF-1.7 document
$ ff "XI - Blue Zenith Solo (EpreTroll).mid"
MIDI: Multiple tracks, 4 tracks at 96 ticks/quarter-note
```

# Compiling

The Makefile is **not** ready.
There is currently no Makefile at the moment.

To compile ff:
It's usually best to use `build-clang-cl.cmd` on Windows and `build-clang.sh` on Linux, as you can add additional arguments easily. Reminder that you should use `/Ot` on Widnows (cl) and `-O3` on Linux.

However, if you want to define your own arguments:

You **MUST**:
- Byte-align structs
- cl, clang-cl: `/Zp`
- clang, gcc: `-fpack-struct=1`

You **COULD**:
- Use one of the build scripts
- They usually includes the `TIMESTAMP` macro
- Windows: `%DATE% %TIME%`
- Linux: (To be defined)
- They require clang to be installed

## Windows Notes

### File Globbing

If you wish to include globbing, throw in `setargv.obj` alongside the build script. This object file is included with your Visual Studio install. Don't forget to use the proper target architecture.
If you wish to include file globbing, throw in `setargv.obj` alongside the build script. This object file is included with your Visual Studio install. Don't forget to use the proper target architecture.

0 comments on commit 4f5a371

Please # to comment.