Skip to content

๐Ÿ“š | Helpful abstractions & libraries for sabine compiler

License

Notifications You must be signed in to change notification settings

sabine-lang/libsabine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

11 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Sabine's {Library}

A toy compiler named after Sabine.

Top Used Language Test CI

Motivation

C is raw and it needs lotta abstractions to ease the development. Therefore, this repo was created to utilize all necessary implementations as a static library. Currently, the followings are implemented and can be used from your repo:

Development

The project primarily utilizes Nix package manager for development. You need to have Nix package manager installed on your machine. Lowkey, you migth try running project with your distro's coreutils dev toolchain but I'm not going to guarantee you anything.

# This will use your current NixOS'es nixpkgs
nix-shell

# Utilize flake's locked nixpkgs version
nix develop -c $SHELL

Compiling

There used to be gnu makefile support, now it's gone. Maybe will be back in the future, but I'm not planning to support further. My bad...

The manual shown below uses LLVM for compilation and development environment has been set up accordingly.

nix run / nix build

nix build .

Manual

mkdir -p ./build
cd ./build
cmake ..
cmake --build .
ls -la ./buld # there should be libsabine.a

License

This project is licensed under WTFPL license which grants you what the fuckever you want. Just don't roast me posting shit on X. I'm not that nerd of geek as you may think.

Sabine's {Library}

About

๐Ÿ“š | Helpful abstractions & libraries for sabine compiler

github:sabine-lang/libsabine#default

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published