Age | Commit message (Collapse) | Author |
|
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.
|
|
|
|
|
|
|
|
Linking should be added in the order of dependencies.
Modified linking logic to check global lib dir if pkg-config
fails (missing package, pkg-config is not installed or any other reason),
also required for Windows.
|
|
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.
|
|
Directories such as:
~/.sibs
~/.sibs/archive
~/.sibs/lib
And directories for each specific library.
Also fix bug in getFileContent and fileOverwrite if file already exists
|
|
Using libcurl and libarchive
|
|
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).
|
|
Option "-p" can be passed to specify another project path
|
|
|
|
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
|