aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2019-08-22 20:27:06 +0200
committerdec05eba <dec05eba@protonmail.com>2020-07-06 07:39:58 +0200
commit6bf7948842d8190348f9c616f058527276b22157 (patch)
tree9e51ee38f5fa585aaf9125081c4b07074874a667 /README.md
parent15e05a321c6c0f92a6cf5b01704b80ac15022f60 (diff)
Better readme
Diffstat (limited to 'README.md')
-rw-r--r--README.md23
1 files changed, 10 insertions, 13 deletions
diff --git a/README.md b/README.md
index 00ae762..55ce683 100644
--- a/README.md
+++ b/README.md
@@ -4,16 +4,7 @@ Make shell scripts portable. Currently they only work with bash... Use shellchec
# Simple Build System for Native Languages
Sibs is still in very early testing phase, use with caution. New releases can have changes that are not backwards compatible.
-Sibs is inspired by [Cargo](https://github.com/rust-lang/cargo/), you can think of it like a C/C++/Zig version of Cargo.
-Zig support has not been tested properly yet and currently always links to c library.
-You can run zig tests with `sibs test --file filepath` or `sibs test --all-files`.
-Currently zig tests are cached because ninja build system is used, which means if source files do not change between runs.
-Currently zig files generate header files and include exported functions into `sibs-build/<platform>/generated-headers/zig` and the generated headers
-are usable from c/c++ by using including: `#include <zig/INSERT_ZIG_HEADER_FILE_NAME_HERE>`.
-If your project contains zig files then it will currently only run on Linux, Windows and MacOS as zig doesn't support more platforms at the moment.
-
-The CMakeLists.txt should only be used during development or when installing sibs for the first time.
-To compile under windows you can use vcpkg to install dependencies and then generate visual studio project using cmake.
+Sibs is inspired by [Cargo](https://github.com/rust-lang/cargo/), you can think of it like a C/C++/Zig version of Cargo. Sibs can build cmake projects as well, so you can use sibs with existing cmake projects with minimal work.
List of packages can be found at https://gitlab.com/DEC05EBA/sibs_packages/raw/master/packages.json
@@ -28,16 +19,22 @@ List of packages can be found at https://gitlab.com/DEC05EBA/sibs_packages/raw/m
Linux is the primary platform, the platform which master branch is guaranteed to compile on.
# Dependencies
-`libcurl, libarchive, libgit2, curl, ninja, cmake`
+`libcurl, libarchive, libgit2, ninja, cmake`
# Installation
## Posix (Linux, MacOS, OpenBSD, Haiku)
`./cmake/install.sh`
## Windows
-You need to create a project (Visual Studio) and add all the source files and dependencies and build yourself. You can use vcpkg to install the dependencies.
+Use vcpkg to install the required dependencies and then generate visual studio (or another system) build files using CMakeLists.txt
# Usage
After you have installed sibs, execute `sibs` without any arguments and you will get a list of commands and description for them. For debug builds, the created binary/library files will be located under `sibs-build/<platform>/debug`. For example on linux x86_64, the path for binaries would be: `sibs-build/linux_x86_64/debug`.
-
+# Quirks
+Zig support has not been tested properly yet and currently always links to c library.
+You can run zig tests with `sibs test --file filepath` or `sibs test --all-files`.
+Currently zig tests are cached because ninja build system is used, which means if source files do not change between runs.
+Currently zig files generate header files and include exported functions into `sibs-build/<platform>/generated-headers/zig` and the generated headers
+are usable from c/c++ by using including: `#include <zig/INSERT_ZIG_HEADER_FILE_NAME_HERE>`.
+If your project contains zig files then it will currently only run on Linux, Windows and MacOS as zig doesn't support more platforms at the moment.
# Package
Sibs supports creating a redistributable packages of projects (currently only on Linux, run `sibs package --bundle`). Packaging is in testing phase and may not work for all projects. Currently you need to have python3 and ldd installed and also set the environment variable SIBS_SCRIPT_DIR to scripts sub directory which is in sibs root directory (the directory that contains package.py).
Currently a script file is generated which should be used to run the project. The name of the script file is the same as project. This script file will most likely to be removed later. Do NOT run the executable called "program".