summaryrefslogtreecommitdiffstats
path: root/drivers/unix/os_unix.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Use monotonic clock for get_ticks_usecFabio Alessandrelli2018-09-291-7/+38
| | | | | Static _clock_start and _clock_setup function. Use clock_gettime on Unix, mach_absolute_time on Mac.
* Properly initialize Winsock on startupFabio Alessandrelli2018-09-131-0/+2
| | | | Also fix typo in _get_last_error which caused Winsock connect to fail.
* Unify StreamPeerTCP/TCP_Server with NetSocket APIFabio Alessandrelli2018-09-121-4/+0
|
* Unify PacketPeerUDP using NetSocketFabio Alessandrelli2018-09-121-2/+2
|
* Make core/ includes absolute, remove subfolders from include pathRémi Verschelde2018-09-121-14/+12
| | | | | | This allows more consistency in the manner we include core headers, where previously there would be a mix of absolute, relative and include path-dependent includes.
* Revert "Try closing gracefully before terminating process"Rémi Verschelde2018-08-271-1/+1
|
* Try closing gracefully before terminating processMarcin Zawiejski2018-08-201-1/+1
| | | | | | | Use a Microsoft recommended way of process termination for the project process run from the editor. This allows loaded DLLs to receive and handle DLL_PROCESS_DETACH notification and cleanup any global state before the process actually exits.
* Fix Linux/X11 build on ARMs.bruvzg2018-05-111-1/+1
|
* Local debugger fixes and extensionsBlazej Floch2018-05-071-0/+17
| | | | | | | | | - Adds q/quit option to console debugging - Adds options (variable_prefix) - Breaks into debugger with Ctrl-C in local debug mode (Unix/Windows) - Added option to list all breakpoints - Fixes add/remove breakpoint bug (invalid path parsing) - Minor cleanup
* GDNative Unix: fix shared lib loading, dlopen expects leading ./ to ↵Robin Hübner2018-04-281-0/+6
| | | | interpret as relative path.
* Add RWLockDummy for NO_THREADS buildsLeon Krause2018-03-201-1/+2
|
* Clean and expose get_audio/video_driver_* funcs on OS classMarcelo Fernandez2018-03-041-9/+0
|
* Clean up some bad words from code commentsArtem Varaksa2018-02-171-1/+1
|
* Fix use of execvp, earlier fix was short sighted and only workedsambler2018-01-081-11/+13
| | | | | | when godot could be found in PATH. The correct fix is to use sysctl to get the path to the current executable this also fixes the ability to call external commands.
* Add missing copyright headers and fix formattingRémi Verschelde2018-01-051-0/+1
| | | | | | Using `misc/scripts/fix_headers.py` on all Godot files. Some missing header guards were added, and the header inclusion order was fixed in the Bullet module.
* Add support from properly exporting shared objects, needed for GDNative exportJuan Linietsky2018-01-041-1/+14
|
* Fix crash in OS::execute on FreeBSDRémi Verschelde2018-01-041-1/+1
| | | | | As spotted by @robfram, closes #15288. Also reviewed other uses of `if (String.find(.*))` for potential similar mistakes, found a wrong (and useless) one in ScriptEditorDialog.
* Update copyright statements to 2018Rémi Verschelde2018-01-011-2/+2
| | | | Happy new year to the wonderful Godot community!
* Drop unused OS_Unix::has_data and related logicRémi Verschelde2017-12-101-32/+2
| | | | Closes #5536.
* Style: Apply clang-format again on all filesRémi Verschelde2017-12-071-1/+1
| | | | | Fixes issues introduced by newer clang-format versions or commits pushed directly without using the clang-format pre-commit hook.
* Changed the dynamic library open function to allow setting the path of the ↵Juan Linietsky2017-11-301-1/+1
| | | | library to open extra libraries.
* Allow customizing user:// path (folder in OS::get_data_path())Rémi Verschelde2017-11-261-5/+9
| | | | | | | | This allows to specify any valid folder name (including with subfolders) to use as user:// on all platforms. The folder is constrained to the platform-specific OS::get_data_path() (typically what `XDG_DATA_HOME` resolves to). Fixes #13236.
* Return and repair file loggingRuslan Mustakov2017-11-211-9/+6
| | | | And make it configurable, too.
* Add initial support for the XDG Base Directory specRémi Verschelde2017-11-191-18/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Spec version 0.7 from https://standards.freedesktop.org/basedir-spec/basedir-spec-0.7.html (latest as of this commit). Three virtual methods are added to OS for the various XDG paths we will use: - OS::get_data_path gives XDG_DATA_HOME, or if missing: ~/.local/share on X11, ~/Library/Application Support/ on macOS and %APPDATA% on Windows - OS::get_config_path gives XDG_CONFIG_HOME, or if missing: ~/.config on X11, ~/Library/Application Support/ on macOS and %APPDATA% on Windows - OS::get_cache_path gives XDG_CACHE_HOME, or if missing: ~/.cache on X11, ~/Library/Caches on macOS and %APPDATA% on Windows So for Windows there are no changes, for Linux we follow the full split spec and for macOS stuff will move from ~/.godot to ~/Library/Application Support/Godot. Support for system-wide installation of templates on Unix was removed for now, as it's a bit hackish and I don't think anyone uses it. user:// will still be OS::get_data_path() + "/godot/app_userdata/$name" by default, but when using the application/config/use_shared_user_dir option it will now use XDG_DATA_HOME/$name, e.g. ~/.local/share/MyGame. For now everything still goes in EditorSettings::get_settings_dir(), but this will be changed in a later commit to make use of the new splitting where relevant. Part of #3513.
* Rename OS::get_data_dir to OS::get_user_data_dirRémi Verschelde2017-11-171-1/+1
| | | | | Will be needed to avoid confusion with system data path (XDG_DATA_HOME) and editor data dir in upcoming refactoring.
* Disable logging until the logs location is sorted outRémi Verschelde2017-10-291-1/+3
| | | | Temporary workaround for #12277.
* Use execvp instead of execv to allow OS.execute() to search through PATH.Elia Argentieri2017-10-111-1/+1
| | | | Fix #12003.
* OS::execute can now read from stderr too when executing with a pipeMarcelo Fernandez2017-10-031-2/+6
|
* Extract logging logicRuslan Mustakov2017-09-251-52/+41
| | | | | | | | | | | | | | | | | | | Previously logging logic was scattered over OS class implementations with plenty of duplication. Major changes in this commit: - Extracted logging logic into a separate Logger hierarchy. It allows easy configuration of logging mechanism depending on compile-time or run-time configuration. - Implemented RotatedFileLogger which is usually used with StdLogger, providing persistency of logs. It is often important to be able to obtain logs of the game even in production to be able to understand what happened prior to some problem. On mobile there previously was no way to obtain the logs aside from having the device connected to your machine. - flush() is not performed in release mode for every logged line. It is only performed for errors.
* Merge pull request #10552 from RandomShaper/improve-posixRémi Verschelde2017-08-291-1/+3
|\ | | | | Improve Mac/UNIX conformance/reliability
| * Make OS::delay_usec() more reliable on UNIXPedro J. Estébanez2017-08-241-1/+3
| | | | | | | | | | | | | | Implemented with `nanosleep()`. `usleep()` is deprecated. Also loops to ensure that __at least__ the requested time is waited, accounting for spurious interruptions. May help in situations like reattempting to connect to the debugger.
* | Use HTTPS URL for Godot's website in the headersRémi Verschelde2017-08-271-1/+1
|/
* Makes all Godot API's methods Lower CaseIndah Sylvia2017-08-071-1/+1
|
* added an optional parameter to OS symbol lookupKarroffel2017-07-271-3/+7
| | | | | | | | When looking up a symbol from a library, previously an error was shown when the symbol did not exist. That caused confusion when the lookup was completely optional. This adds a new parameter to that method so that those errors can be handled manually if needed.
* -Renamed GlobalConfig to ProjectSettings, makes more sense.Juan Linietsky2017-07-191-8/+3
| | | | -Added system for feature overrides, it's pretty cool :)
* -Reorganized all properties of project settings (Sorry, Again).Juan Linietsky2017-07-171-1/+1
| | | | | (Lot's of bloat accumulated, so it was time for clean up.) -Made EditorSettings and ProjectSettings search more useful (search in sections too)
* get_executable_path slight change to make it work under OpenBSDDavid Carlier2017-07-161-2/+2
|
* Add "Godot Engine contributors" copyright lineRémi Verschelde2017-04-081-0/+1
|
* [DLScript] fixed android builds nowKarroffel2017-04-061-1/+1
| | | | ... really.
* increased maximum number of scripting languagesKarroffel2017-04-031-8/+9
|
* Added methods for opening dynamic libraries to OSKarroffel2017-03-291-0/+30
|
* A Whole New World (clang-format edition)Rémi Verschelde2017-03-051-137/+114
| | | | | | | | | | | | | | | | | | | | | | | | I can show you the code Pretty, with proper whitespace Tell me, coder, now when did You last write readable code? I can open your eyes Make you see your bad indent Force you to respect the style The core devs agreed upon A whole new world A new fantastic code format A de facto standard With some sugar Enforced with clang-format A whole new world A dazzling style we all dreamed of And when we read it through It's crystal clear That now we're in a whole new world of code
* -renamed globals.h to global_config.cpp (this seems to have caused a few ↵Juan Linietsky2017-02-211-1/+1
| | | | | | modified files) -.pck and .zip exporting redone, seems to be working..
* Add a simple signal handler for SIGCHLD on UnixHein-Pieter van Braam2017-02-091-1/+15
| | | | This fixes #6631
* Several bugfixes, improving the import workflowJuan Linietsky2017-02-061-0/+8
|
* Memory pool vectors (DVector) have been enormously simplified in code, and ↵Juan Linietsky2017-01-071-5/+2
| | | | renamed to PoolVector
* -Changed memory functions, Memory::alloc_static*, simplified them, made them ↵Juan Linietsky2017-01-061-4/+1
| | | | | | aligned to 16 -Changed Vector<> template to fit this.
* -Changed most project settings in the engine, so they have major and minor ↵Juan Linietsky2017-01-051-2/+2
| | | | | | | | categories. -Changed SectionedPropertyEditor to support this -Renamed Globals singleton to GlobalConfig, makes more sense. -Changed the logic behind persisten global settings, instead of the persist checkbox, a revert button is now available
* Merge remote-tracking branch 'origin/gles3' into gles3-on-masterRémi Verschelde2017-01-021-0/+4
|\ | | | | | | | | Various merge conflicts have been fixed manually and some mistakes might have been made - time will tell :)
| * 2D Shaders are working again using the new syntax, though all is buggy in ↵Juan Linietsky2016-10-101-0/+4
| | | | | | | | general