- Fix unclosed OBJ in core.cc when target is OpenBSD
- `to_real_path` changes:
- Canonicalize result to mimic `realpath` behavior
- Partially implement `to_real_path` for OpenBSD
- Add more tests for `to_real_path`.
- Build system improvements:
- Use same i18n include/link logic for all platforms
- Replace `HAVE_SOME_SOUNDCARD_H` and `HAVE_LINUX_SOUNDCARD_H` with `HAVE_SOUNDCARD_H`
and use other defines (__linux__) to guard include
- Replace `<XXX>_LIBRARIES` with `<XXX>_LINK_LIBRARIES` for linking.
- Libraries weren't in default linker search path on OpenBSD
- OpenBSD specific:
- Fix bsdapm.cc
- Remove diskio stats stubs
- Stub get_battery_short_status
- Remove `-stdlib=libc++` build flag on OpenBSD
Signed-off-by: Tin Švagelj <tin.svagelj@live.com>
Co-authored-by: gmb <gmb@openbsd76.my.domain>
Co-authored-by: Tin Švagelj <tin.svagelj@live.com>
* It was difficult/too costly ensuring temporary this was correct when vecs contained in rects were accessed directly.
* Added semantics to `rect` and some utility functions.
Signed-off-by: Tin Švagelj <tin.svagelj@live.com>
You can now specify `BUILD_COLOUR_NAME_MAP=OFF` to disable building the
gperf-based colour map, which also removes the requirement for gperf at
build time.
- Separated displays so they don't have to all be included in build even when the features are disabled.
- Removed weird linker magic for display init and replaced it with straightforward (and faster) template functions that behave the same.
- Replaced `disabled_display_output` classes with log messages.
- Add explicit compiler errors when feature dependent headers get included where they shouldn't (wl, x11).
- Switch BUILD_MOUSE_EVENTS dependency from OWN_WINDOW to BUILD_X11.
- Other minor improvements to some existing code which shouldn't affect behavior.
- Improve documentation.
- Remove X11 from unrelated headers.
- This reaches 0% unneeded X11 polution in the sources.
- Reenabled parts of window_type which would work in Wayland.
- Remove unneeded guards.
- Display files are now no longer compiled if their features are disabled.
Signed-off-by: Tin Švagelj <tin.svagelj@live.com>
- Separate cairo-xlib.h Lua bindings from cairo.h
- This allows cairo.h to be used from Lua on Wayland without X11 as requirement.
- Add pango dependency for Wayland (adds pangocairo).
- Make graphics related bindings depend on BUILD_GUI.
- Remove BUILD_GUI guard around options in platform checks.
- Keeping only checks that **directly contain module requirements**
A way of creating surfaces in Lua that uses Shm allocated buffers should
be added in future. This commit only cleans up build options to avoid weird
errors.
Signed-off-by: Tin Švagelj <tin.svagelj@live.com>
* Add libXdamage to flake.nix
* Add TYPE_UTILITY as above-all alternative to TYPE_OVERRIDE
* Click-through for TYPE_UTILITY
* Added libxfixes to MacOS CI workflow
* Disable building of XFIXES on MacOS
* Fix build for xinerama/xfixes on macos.
* Update Lua version check.
* Tidy this up.
* Fix BUILD_XFIXES on Linux
* Sigh, fix this.
---------
Co-authored-by: tranquillity-codes <dev@itycodes.org>
Co-authored-by: Brenden Matthews <brenden@brndn.io>
* Add mouse events.
Signed-off-by: Tin Svagelj <tin.svagelj@live.com>
* Rename MOUSE_EVENTS flag to BUILD_MOUSE_EVENTS.
Signed-off-by: Tin Svagelj <tin.svagelj@live.com>
* Update NORM_ERR func argument from std::string to char*
Because func was previously char* I forgot to update NORM_ERR function
argument to `func.c_str()` not that it's std::string.
Previously func was pointing to std::string memory that was freed at
assignment.
Signed-off-by: Tin Svagelj <tin.svagelj@live.com>
Signed-off-by: Tin Svagelj <tin.svagelj@live.com>
Rather than piggybacking on the BUILD_DOCS flag, use BUILD_EXTRAS to
enable building the nano & vim syntax files. This is so that people can
generate the extras without having to install pandoc.
In commit bb8723d "add toluapp subtree" support for user defined FLAGS was removed. I do not see a reason why this should not be allowed, so it would be great if this could be added again.
Reference: https://bugs.gentoo.org/772176
* First commit!
* Import to git
* Droping down CMake requirement
* Corrected installation of libraries
* Adding travis build
* Updated cmake macros
* Fixed find package
* Updated travis hook
* Updated travis hook
* Patch to support Lua 5.3.
* Fix Lua header include directives in tolua++.h
Use angle bracket rather than double quotes when including Lua headers in the tolua++ header. This fixes a problem on systems that default to a Lua version newer than 5.1 and install the tolua++ header to the same directory as newer Lua headers.
As there are (usually) no Lua headers in the same directory when building tolua++ itself, the preprocessor will look to the include directories passed to the compiler, one of which would be the Lua 5.1 include directory, and tolua++ will build with those (correct) headers. Then the tolua++ header is usually installed in the default include directory, alongside the newer Lua headers, which you wouldn't expect to cause any trouble.
But it does cause trouble when trying to build other programs that include the tolua++ header, because now the preprocessor does find Lua headers in the same directory as the tolua++ header, which are the newer (incorrect) headers. Now the program will either fail to compile, because it doesn't support the newer headers, or fail to link with the tolua++ shared object because they were compiled against different Lua headers.
Using angle brackets instead of double quotes in the include directives will fix the problem, because then the preprocessor will look to the include directories passed to the compiler first.
See http://www.cegui.org.uk/forum/viewtopic.php?f=10&t=7195
* Remove email notifications.
* Update travis build.
* Build shared and static libs.
* Patch toluapp to support Lua 5.3.
With this change, support for Lua 5.1 is dropped.
This resolve #116.
* Add some comments to clarify the toluapp handling.
* Add minor sonar fix.
* Try to amend #31
* BUILD_WLAN should be available for all OS.
Keep BUILD_WLAN OFF by default for compatibility reasons.
* WLAN-related variables should be available for every OS.
There are some problems (probably null-dereference)
* Fix $wireless_essid crashing conky if no argument provided.
Conky wasn't parsing the argument of the variable as it should, thus wasn't allocating the `dev` member variable.
Also fix some documentation stuff.
* Improve `get_freq` #20
Using the Intel® Power Gadget API (https://software.intel.com/en-us/blogs/2012/12/13/using-the-intel-power-gadget-api-on-mac-os-x) we can now get actual Core frequency and not the constant factory one.
Though, for some weird reason the API gives the same freq for all Cores, thus the |cpu| arg becomes useless.
* Oops, this accidently slipped in
* Introduce BUILD_IPGFREQ build option
This build option has been introduced for one particular reason:
On macOS getting current core-frequency is not supported by the APIs. A solution is to install Intel's ® Power Gadget which comes with an .app, a Framework and a kernel-extension. Though, this may trouble some alot, thus introduce BUILD_IPGFREQ.
* Forgot static here.
* Some improvements for get_freq again.
Fix frequency not printing correctly (I wasn't using the divisor)
Add more guards.
* Setup cmake files and project code for Objective-C code #17
We want to use CoreWLAN framework.
* update_cpu_usage() now supports multiple cores
Also, some cleanup.
* Updated default conky config to monitor Mac Networking
* Made Mac Friendly BuildOptions and generic default conky configs
* Undid Xdamage config and cleaned up previous IF statements
* Re-Added XDamage fix
* Finish up the algorithm. I think its now correct. Closes: #33
* Cleanup macro and introduce a no-op free_cpu() function for ALL cpu-related variables
free_cpu() must be implemented for every OS and on all except macOS its a no-op function.
* Reformat, add empty comment.