Lex Library

Miscellaneous stuff for Rust and C development.

NOTE: currently being made compatible with Rust.

contains small things that could be useful in some regular basis.

lexlib also works on C++ without hassle.

Rust

for C functions that have a equivalent in the standard Rust library are not expected to be wrapped around a safe interface.
lexlib file and str utils are probably not going to be wrapped.

right now a rust compiler is not necessary but in the future it might.

Documentation

documentation is available in "(project_root)/documentation" in html.
or as a download in the releases page. it's not the prettiest but does the work.

Building

lexlib uses CMake as "build system".

linux

for linux in the root of the project is a script, it can compile binaries for linux and mingw (windows) 32 and 64 bits.

for arch based distros a PKGBUILD is available, see bellow.

by using the linux script the build files are created at "(projectroot)/build/linux";
mingw builds at "(project
root)/build/mingw32" and "(project_root)/build/mingw64"

it will try to install the mingw version at /usr/mingwfolders.
you can change the destination folders modifying the script.

for mingw builds is required to have it installed.

compiled binaries can be found in the releases page.

mingw install

arch: pacman -S mingw-w64-gcc debian: apt install mingw-w64 mingw-w64-x86-64-dev

usage

``` // linux ./linux.sh cmake linux ./linux.sh build ./linux.sh install

// mingw ./linux.sh cmake windows64 // and/or ./linux.sh cmake windows32 ./linux.sh build ./linux.sh install ```

PKGBUILD for arch based distros

mkdir lexlib cd lexlib wget https://gitlab.com/alexevier/lexlib-c/-/raw/main/resources/archPackage/PKGBUILD makepkg -si

windows

step 1: follow your IDE/cmake instructions. (i don't have a windows machine)

License

Licensed under the zlib license.

Changelog

1.5.0

1.4.0

1.3.1

1.3.0

1.2.0

1.1.0

For the full Changelog check CHANGELOG.md at the project root.