Hi Pete,

(I am not a ntfs-3g maintainer, but) Your project is quite
interesting! A few comments from just some rando on the list follows.

> * Patches 0049-0051, with 0050 being the one that adds generic static
> assert support to ntfs-3g, have to do with ensuring that MVSC does pack
> the layout structures properly.

Regarding the change to compat.h:
* I don't think you need that ifdef for _MSC_VER to get the comparison
to work, since unknown values are assumed to be 0.[1]
* _Static_assert is relatively new to C, so you should probably also
add an #elif for __STDC_VERSION__ < 201112L.

  [1]: https://stackoverflow.com/a/5085425

> * Patch 0064... though of course this means that we need to convey that the
> this library is under a different license (which the patch does).
> Despite the additional license, considering that not having this patch
> makes EDK2 compilation on Windows impossible for X64 and IA32, I would
> very much like to see it integrated.

Including BSD-2 code does not actually put the whole library "under a
different license" (which would require every contributor to agree);
it's just whatever the part that prints licenses needs to also print
the BSD license disclaimer. If the UEFI driver has an about or version
string, you might need to worry about it a bit.

Personally I find it a bit odd that you need to copy code from EDK2
libc when compiling stuff for EDK2, but a quick search indicates that
it's by design due to the presence of some fancy shell-related things.

> * Patch 0065 adds gnu-efi as a submodule. gnu-efi [2] is a much leaner
> alternative to EDK2, that can make the process of building UEFI
> executables a lot less daunting for people who don't already have
> experience with tianocore/EDK2.

If you do have clang on the Linux environment you are testing with, it
might also be a good idea to see how clang does with gnu-efi and
./configure (with appropriate CFLAGS and LDFLAGS). Clang can be a bit
easier to set up since there's no need for a cross-compile compiler to
be enabled.

PS: Until now I didn't know that EDK2, like gnu-efi, also relied on
turning ELF output into PE on Linux. The more you know...
PPS: On that note, I should probably try cloning and building with the
EDK2 CLANGPDB toolchain too.

--
Mingye Wang (Artoria2e5)


_______________________________________________
ntfs-3g-devel mailing list
ntfs-3g-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ntfs-3g-devel

Reply via email to