olofson / eel

The Extensible Embeddable Language for scripting in realtime applications
http://eelang.org/
zlib License
46 stars 4 forks source link

libeel does not compile in visual studio (dirent.h missing) #88

Open schoetbi opened 8 years ago

schoetbi commented 8 years ago

EEL does not compile in visual studio, because dirent.h (POSIX API) is missing. Native Win32 API support needs to be added to eel_dir.[ch], to avoid relying on MinGW32 or similar. (/David)

olofson commented 8 years ago

dirent.h is a POSIX thing that I normally get from MinGW when building for Win32. You need a dirent.h implementation over the Win32 API (like this), or the offending EEL module needs to be ported to the Win32 API. (GetFullPathNameA(), FindFirstFileA() etc).

I think I prefer the latter (native Win32 code in the module), as it's probably only a few lines, and I don't want to add external dependencies without good reason. Besides, platform specific corner cases tend to be easier to handle as desired when dealing directly with native APIs, where all functionality is fully exposed.

schoetbi commented 8 years ago

Ok thanks, maybe I will have a look if a kind of OS abstraction layer can be built by me.

olofson commented 8 years ago

Ok! I'll probably incorporate Win32 code directly in eel_dir.[ch] at some point (should only be a few #ifdef'ed lines), but as I'm working on other things now, and exclusively develop on Linux, I'm not sure when that'll happen.