summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-11-09Darwin's ar is retarded. Workarounding.Pixel
2011-11-09Adding 'Output' objectPixel
2011-10-27Fixing a few oddities, and having the 'clean' target cleaning LuaJIT as well.Pixel
2011-10-26Adding Lua.Pixel
2011-10-26Protecting the IO class a bit more, and adding the raw filename paradigm for ↵Pixel
at least the Input class.
2011-10-25Adding the FileSystem global class with mkdir, and adding the writeString ↵Pixel
method to Handles. Also preparing the inclusion of Lua by adding LuaJIT.
2011-10-18Stopping the Task Manager when the Main Task exits, and having a switch to ↵Pixel
turn that off.
2011-10-18libcoro seems to be doing really spurious things when not using the standard ↵Pixel
functions. Switching out libcoro for the native Fibers interface for Win32. Switching out the asm version for the ucontext version for Linux.
2011-10-18Adding a few more asserts, and using the proper function calls (ntohs ↵Pixel
instead of htons - which should be fundamentally the same, but, *shrug*)
2011-10-18Why is Win32 so not Posix ... ?Pixel
2011-10-18Fixing Darwin compilation:Pixel
-) Using clang instead of gcc for the native target (*sigh*) -) Fixing libeio (*sigh*) -) "Fixing" the connect() call in Sockets because Darwin is stupid (*SIIIIIIIGH*) Although the Threads unit test isn't working properly.
2011-10-18And so kids, this is why we have unit tests.Pixel
2011-10-17Making some adjustments to get the Socket code compiling under mingw32. ↵Pixel
Doesn't work though; I'm guessing IPv6 isn't really mingw32 thing. At least, it's not WinXP's. Will try later to make something that switches between IPv4 and IPv6 intelligently.
2011-10-17Adding the Socket class, and a few tools that comes with it.Pixel
2011-10-17Tweaking a bit the main event loop to simplify it.Pixel
2011-10-17Adding the Async event, and tweaking the others a bit.Pixel
2011-10-17Removing the 'non-preemptible' madness before it could even be used.Pixel
2011-10-17Redefined how the IO class works. The ref counting should now work properly.Pixel
2011-10-17Adding an early version of the 'engine debug' facility.Pixel
2011-10-17Forgot test-Threads.ccPixel
2011-10-17Adding the debug / non-debug defines from the Makefile, and avoiding pointer ↵Pixel
aliasing.
2011-10-14Fixing a few bugs.Pixel
-) The IO class needed an assignment operator, as well as the ability to NOT contain a Handle. -) The Task Manager wasn't properly starting up pending tasks that got added during startup.
2011-10-14Further tweaks to the Task class: now a Task can declare being smart, and ↵Pixel
say it's okay to get a EAgain exception, if the operation is interruptible.
2011-10-14Tweaking the Task class a bit.Pixel
-) setPreemptible now returns the previous state -) Events may now not have an owner -) Events may now have a callback (even though it still needs an owner to get into the ev_loop, for these kind of watchers...) TODO: -) think about a way to start a watcher without requireing a Task -) add a few more things in the Tasks unit tests
2011-10-14Actually removing the asserts now.Pixel
2011-10-14Making sure that external task yields are able to complete their subactions. ↵Pixel
Hence removing a few now unnecessary asserts.
2011-10-14Adding a Thread and a Queue class.Pixel
2011-10-14The tasks can now set themselves to be non-preemptible. Also implemented a ↵Pixel
mechanism to re-arm an event.
2011-10-13Implementing a pthread TLSManager.Pixel
2011-10-13Having a template here is useless...Pixel
2011-10-12Enabling cross-compilation for Darwin. Haven't tested under the real thing ↵Nicolas "Pixel" Noble
yet though. The eprintf() thingy seems odd.
2011-10-12Mingw32 is braindead, and doesn't support _FILE_OFFSET_BITS. Disabling the ↵Pixel
stat watcher in libev, and adding a patch for people to fix their mingw32 distribution.
2011-10-12Yes, surprisingly enough, one can run wine to process these unit tests.Pixel
2011-10-12Forgot mingw32-config.h. Also fixed a couple of bugs:Pixel
WSAStartup has to be called in win32 at startup. The TLS environment needs to be cleared when created.
2011-10-11Updating the libeio project.Pixel
2011-10-11Making the project compile with mingw32, on the same Makefile. No more ↵Pixel
separate Makefiles insanity.
2011-10-11Input class seems to be done.Pixel
2011-10-10Adding a few more features to Input, and actually creating a slightly better ↵Pixel
ClassName system, when using gcc and libstdc++.
2011-10-10Adding the 'stats' call to Input.Pixel
Also fixing a bug with the Printer - va_args are vicious.
2011-10-10Adding the basic "Handle" structure, and adding an early version of Input.Pixel
Renamed suspend() to yield(). Fixed a couple of bugs, and reorganized slightly some code.
2011-10-09Adding basic locks from libpthread. Also, that 'pending' loop belongs after ↵Pixel
we activate the tasks.
2011-10-09Starting to integrate libev; timer event works.Pixel
2011-10-09Adding libev.Pixel
2011-10-09Adding libeio to the compilation blurb.Pixel
2011-10-09This wasn't intended.Nicolas "Pixel" Noble
2011-10-09More work on the Task manager.Pixel
Now "Main" is a Task, among the most important changes. Introduced the notion of Events, and managed a coherent task switch. Also, renamed a lot of the variables to have a more coherent naming scheme.
2011-10-07Simplifying Makefile, by offloading defines to config files, and using ↵Pixel
-imacros to load them.
2011-10-07Adding 'Sanity' test software, simplified Makefile, and turned 64 bits file ↵Pixel
offsets.
2011-10-07More work in the Task manager.Pixel
Also fixing a few bugs linked with the printer and TLS. Removed flto from compilation flags: this actually creates bad code (!)
2011-10-07Preliminary work for the Task manager.Pixel
Added libcoro submodule. Also refactored some pieces of code.