Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/janet-lang/jpm
Janet Project Manager
https://github.com/janet-lang/jpm
Last synced: 3 months ago
JSON representation
Janet Project Manager
- Host: GitHub
- URL: https://github.com/janet-lang/jpm
- Owner: janet-lang
- License: mit
- Created: 2021-06-14T23:52:00.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-03-24T18:11:02.000Z (7 months ago)
- Last Synced: 2024-06-08T10:32:23.821Z (5 months ago)
- Language: Janet
- Size: 199 KB
- Stars: 64
- Watchers: 8
- Forks: 21
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# jpm
JPM is the Janet Project Manager tool. It is for automating builds and downloading
dependencies of Janet projects. This project is a port of the original `jpm` tool
(which started as a single file script) to add more functionality, clean up code, make
more portable and configurable, and
refactor `jpm` into independent, reusable pieces that can be imported as normal Janet modules.This also introduces parallel builds, possible MSYS support, a `jpm` configuration file, and more
CLI options. Other improvements are planned such as parallel dependency downloading, more
out of the box support for non-C toolchains and pkg-config, installation from sources besides git
such as remote tarballs, zipfiles, or local directories, and more.## Self Installation (Bootstrapping)
clone this repo, and from its directory, run
```
$ [sudo] janet bootstrap.janet
```There are also several example config files in the `configs` directory, and you can use the environment
variable `JANET_JPM_CONFIG` to use a configuration file. The config files can be either `janet` or `jdn`
files. To override/set the default configuration, replace the contents of default-config.janet with a
customized config file before installing. To select a configuration file to use to override the default
when installing, pass in a config file argument to the `bootstrap.janet` script, for example:```
$ [sudo] janet bootstrap.janet configs/msvc_config.janet
```The bootstrapping process can also be configured by setting PREFIX to install to a different system directory.
Generally, you will want to install to the same directory that Janet was installed to so jpm can find the
required headers and libraries for compiling C libraries.```
$ [sudo] PREFIX=/usr janet bootstrap.janet
```## Updating
If you aleady have an installation of jpm configured, you can update `jpm` with
```
$ [sudo] jpm install jpm
```which should automatically update to the latest `jpm`.