aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-12-16Modify ninja interface to build after creating build filedec05eba
This setup is needed because we need to build the project before building tests
2017-12-16Fix build when not specifying absolute pathdec05eba
2017-12-16Remove unnecessary include dir in builddec05eba
2017-12-16Add support for sub project (unit tests)dec05eba
2017-12-14Add support for dynamic libraries (shared objects)dec05eba
2017-12-13Change linking order for pkg-configdec05eba
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.
2017-12-13Fix linking issue (linking in wrong order)dec05eba
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.
2017-12-12Lazily create directories that are neededdec05eba
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
2017-12-12Download and extract missing dependencies from githubdec05eba
Using libcurl and libarchive
2017-12-11Add package type to project.confdec05eba
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).
2017-12-11Fix WEXITSTATUS compile error on openbsd (and ubuntu)dec05eba
I noticed that WEXITSTATUS was failing when compiling sibs on ubuntu. WEXITSTATUS uses address of input which fails if the input is directly passed by return of a function call. Also added error checking if the process was stopped/killed by receiving a signal or if it failed in any other way.
2017-12-10Do not build dependency as library if it's header only librarydec05eba
2017-12-10Remove frivilous debugging statementsdec05eba
2017-12-10Change program arguments to use current path as project pathdec05eba
Option "-p" can be passed to specify another project path
2017-12-10Add installer for unix-like systemsdec05eba
2017-12-10Add support for recursive global lib dependenciesdec05eba
2017-12-10Add support for dependencies in global lib dirdec05eba
Global lib dir is located at ~/.sibs/lib TODO: If global lib dir doesn't exist, download it from github/server
2017-12-09Add project compilation after ninja file is createddec05eba
2017-12-09Add support for dependencies (including version check)dec05eba
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.
2017-12-09Updated readmedec05eba
2017-12-09Added ninja backend, very simple project worksdec05eba
2017-12-09Finished project config file parsingdec05eba
2017-12-08Added loading of project file and file validationsdec05eba
Next up: parse project.conf file
2017-12-07Initial commitdec05eba