Skip to content

bramtechs/wolfpack

Repository files navigation

wolfpack

Simple and async vcpkg-like package manager for downloading CMake dependencies.

Install

git clone https://github.com/bramtechs/wolfpack
cd wolfpack
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=.
cmake --build build --parallel --target install

Now add the generated bin folder to your $PATH.

Configuration

Create a wolfpack.json file next to your project's CMakeLists.txt.

{
  "version": 1,
  "libs": {
    "fmtlib/fmt": {
      "tag": "11.0.2"
    }
  }
}

By default, dependencies are pulled from Github. You can specify the repo address explicitly.

{
  "version": 1,
  "libs": {
    "fmtlib/fmt": {
      "tag": "11.0.2",
	  "url": "bram@nas:/volume1/git/third-party/fmtlib/fmt"
    }
  }
}

Tag can also be set to a branch (like 'main' or 'master') or a commit id.

Finally, add to your project's CMakeLists.txt.

add_subdirectory(.wolfpack/fmtlib/fmt)

# ... snip ...

target_link_libraries(${PROJECT_NAME} PRIVATE fmt)

wolfpack will clone repos to the .wolfpack directory, which you should add to your .gitignore file.

echo .wolfpack >> .gitignore

Usage

wolfpack && cmake ...

To pull the latest versions of the dependencies:

wolfpack --pull && cmake ...

Limitations

  • Source builds of dependencies only
  • Dependencies must use CMake.

About

Simple async vcpkg-like package manager for CMake C/C++

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors