Re: [Patches] Portability, support for CloudABI, etc.
Moritz Bunkus <[email protected]> Wed, 18 Nov 2015 18:28:25 +0100
| Newsgroups | gmane.comp.multimedia.matroska.devel |
|---|---|
| Message-ID | <[email protected]> |
Hey, thanks for the contribution. > 1. Determinism I get the requirement for determinism but removing the variable causes an ABI break, and I'm not really willing to go there just for the sake of determinism. I would be OK with a configure option for that, though. Now that both libraries use autoconf this should be easy enough to implement. Problem is that a config.h that would define the appropriate preprocessor #defines would have to be shipped and included somehow, too, making the #requirement for a patch a bit larger. If you're willing to invest the work to create a patch for the following points then I'll apply it: 1. add option to configure, e.g. --without-build-timestamp 2. patch both the header and source files to exclude the variable depending on the configure option 3. rename config.h to something else (e.g. libebml_config.h), patch a central include file (e.g. EbmlConfig.h) to include libebml_config.h, and patch the Makefile.am to install the file upon "make install" It would be enough for libEBML; I could adjust it for libMatroska. A less invasive approach might be to keep the variable but to leave it empty. > 2. Missing include of <stdlib.h> That's fine, of course, I'll use it. > 3. Use of non-standard u_int*_t types Looks fine to me, too. There are several reasons why libEBML uses its own typedefs: back when it was started (around… 2002?) cross-platform support for the C99 types was abysmal, and we only received full autoconf support this year. Nowadays we can just include inttypes.h and use the C99 variants. What we cannot do is getting rid of our typedefs altogether (the ones without the _t suffixes) as that would break existing code. > 4. CloudABI specific: disable StdIOCallback Yeah, that's not acceptable as-is for upstreaming. However, if you're willing to implement what I've talked about in 1. (making the configure-generated config.h part of the libEBML installation) then I would definitely accept a patch that adds an option to configure for compiling without StdIOCallback. That's more work but it would allow your patch to be upstreamed. Kind regards, mosu _______________________________________________ Matroska-devel mailing list [email protected] http://lists.matroska.org/cgi-bin/mailman/listinfo/matroska-devel Read Matroska-Devel on GMane: http://dir.gmane.org/gmane.comp.multimedia.matroska.devel
signature.asc
(application/pgp-signature, 819 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAABCAAGBQJWTLU0AAoJEHSvAK3y4yyF9VwQAND8UZajwlk7+JuGqt/FE7Es 2/IW7Az3AJI3mwatlIV/GGG1ah6rFKencBi/d8EiVWFq7SwPcB5aXcL69H1grUdN LMsgaaJHaJHr1MSCs/306V+7BNlO3FX5r0aYvT4PS0teMWZ3/UTU+sGvQdKMJjkd s3TNnwyMOVIEyq/DvLhaUG879/k8J30SMMYDDx+wpL8D5SBM+NG/hV/WTwtvrctK Wq60IzV5vbAtxqbkxsElAvdD6r2Rqi7qQlX/XKefmVQXBHtBC33hKRhzJu3xzRgh 9uPGmPjzn6z5TPJlf6GC9KFd1tuGxsR70OtnsBcGDnmEo/Wb2JO/s68rHxqFdIEU jnjRg9cBQyiFoijvBOsuaAz56SEANYtR/C4xH3l5Bz2g+bUj79R/Ix8JBuaTd5tE z+e/b+96gtxA50Z0LUMC3RZmF4IRx0cYapFrBe12eoLLQOx+kFo8wM+Fv0pXOROK 7UnhGReTcCcKwFIbgmM4nsI4IgPLZOq5MiJkhgLn+qk+houJXcQawMzqI4ia5O4d 2dp5IPmkm9baMkiYz3fwbJbuKTdo8WY8vescf0lZdUUKEgVooUhTVyEGvmJPYKQy exTX2TciaKhsk9RL7uC7/Ry2wrRArW1t3j19NcghfeP9ynNSQrmZtqi8tbidWnhs rxVP/nPwykE2+0HHiwSr =pWcz -----END PGP SIGNATURE-----