Skip to content

Loading…

Please do not use config.h #3

Closed
kmike opened this Issue · 1 comment

2 participants

@kmike

It is imported in ahtable.c. This causes issues because user of library have to use GNU build tools in order to generate this file from config.h.in and it makes it harder to use the library under Windows or to bundle it in a scripting language extension. I'm writing a Python wrapper for your library ( https://github.com/kmike/hat-trie ) and it is hard to make the code build with distutils because setup script have to generate config.h somehow. So config.h is just commented out in the bundled version.

If my understanding is correct, config.h import from ahtable.c is used for size_t, uint16_t, uint32_t and uint8_t if they are not available in <sys/types.h> and <sys/stdint.h>. Library builds under Mac OS if config.h import is just removed from ahtable.c because these int types are usually defined on *nix.

The library won't build under MSVC 2008 anyway because MSVC 2008 doesn't have stdint.h header :)

I think the best way to go forward is to remove config.h import, stdint.h imports and replace them with some portable stint.h header (such as http://www.azillionmonkeys.com/qed/pstdint.h )

What do you think?

By the way, thanks for the nice C implementation!

@dcjones dcjones closed this in adb268e
@dcjones
Owner

Thanks for the interest, and sorry for the slow response.

This should be OK now, but I'm also using stdbool.h. Will this cause issues with MSVC? I realize they don't really support C99, but bool seems trivial.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.