Age | Commit message (Collapse) | Author |
|
Validate package name only contains safe characters.
TODO: Validate package name is allowed on windows, names such as NUL, AUX are not allowed
|
|
|
|
|
|
Sometimes it's not possible to build new sibs with older sibs because
of changes that break backwards compatbility.
If sibs installation fails with sibs, use cmake.
|
|
Fixed several bugs.
The windows implementation IS QUICK AND DIRTY! It links
things as static even if you wish to link as dynamic etc.....
NEED TO FIX THIS !!!
|
|
Add support for windows
|
|
|
|
|
|
|
|
Fix getRealPath returning corrupt path.
This allows you to specifying a list of include dirs under [package], like:
[package]
name = "blabla"
include_dirs = ["include"]
There are many libraries that include paths to header files like this,
so when including a header file, you dont have to specify relative path
to header files (which can be long), and you can use same path
no matter where you are including header from.
Currently include_dirs is not propagated to dependant packages
and im not sure if they should be, from the looks of it the reason
you want include_dirs is internal package setup.
|
|
|
|
Change program argument handling.
Add new program argument "new" to create a new sibs project which creates
a project with all necessary files and also uses git init
(ignores failure, for example if git is not installed).
Change build path from "build" to "sibs-build" to prevent name clashing
since "build" is a common name for directories.
|
|
Type can be either executable or library.
Executable: project compiles to an executable binary.
Library: project compiles to either a static or dynamic library,
depending on what how the dependent project wants the dependency
to compile.
With having type in project.conf, you cant include wrong type
of project (an executable including another executable,
conflicting main functions).
|
|
|
|
Global lib dir is located at ~/.sibs/lib
TODO: If global lib dir doesn't exist, download it from github/server
|
|
This currently only works using pkg-config and it only adds
linking flags. Need to check with a library that also includes
other types of flags.
TODO: Fallback to dependencies sub directory and github/server
if package not found in pkg-config.
|
|
|
|
|
|
Next up: parse project.conf file
|