aboutsummaryrefslogtreecommitdiff

cleantools

Clean package manager and improved make script

Copyright © 2016 Camil Staps. Licensed under MIT: see the LICENSE file.

This project is currently still in alpha version.

Installation & Configuration

Install the project:

# pip3 install -e .

Initialise the installation directory and configuration file:

$ clmgr init [~/.clmgr]

You can further edit ~/.clmgr.cfg. In particular, it could be useful to set General.clean_home to the path to your Clean installation (e.g. /opt/clean), so that clim will also look in <clean_home>/lib.

Usage

Library management using clmgr

To install a new library:

$ clmgr clone camilstaps/CleanLogic

By default, clmgr will clone from GitHub using HTTPS. To give an absolute path, specify --abs.

$ clmgr clone --abs https://github.com/camilstaps/CleanLogic

By default, clmgr will intelligently guess the name of the library. If you want to specify the local name, add an argument:

$ clmgr clone --abs https://github.com/camilstaps/CleanLogic MyLocalName

Building Clean projects with clim

clim is an improved Clean make version. It is a wrapper for clm, and therefore specific to unix-like environments. In its simplest form, you can use it as a clm substitute:

$ clim -clm [clm arguments]

By adding -W ('with'), you can add libraries installed with clmgr to clm's include path:

$ clim -W CleanLogic -clm [clm arguments]
$ clim -W LibA LibB -clm [clm arguments]

To see a list of paths clim looks in when given -W arguments, run clmgr echo search_path.

Todo

  • Improved error handling.
  • Allow libraries to specify their include paths in a configuration file.
  • Allow libraries to add to the system path (e.g. for iClean)