any-howto – compilation of commands and tips to work with any engine.

Description

All examples are demonstrated with amd64 dataset, for single package the name hello-world-1.0 is taken.

Working directory

Creation of working directory with commands installed:
        any settle my_dir
        cd my_dir

Creation of working directory with no commands installed:

        /path/to/settle.sh my_dir
        cd my_dir

Use target packages, coming along with working directory:

        any/bin/deploy.sh --help
and follow format of deploy.sh.

Build

List all available packages:
        lspkg amd64

List the contents of somelist.src:

        lspkg amd64 somelist.src

Build the single package:

        any do amd64 hello-world-1.0

Build the list of packages somelist.src:

        any do amd64 somelist.src

View default available lists:

        cat ports/list/all.src

Dependencies

If any_pkg is not set, its default value is build/pack/amd64/.

Install the dependencies of hello-world-1.0 from /path/to/pkg and build hello-world-1.0 itself:

        any tree amd64 hello-world-1.0 any_pkg=/path/to/pkg

Install the dependencies for a package hello-world-1.0, absent in all.src:

        any tree amd64 hello-world-1.0 any_pkg=/path/to/pkg \
            any_list_all=all.src,hello-world-1.0

Install the dependencies, listed in needed-packs.src.

        any deploy amd64 needed-packs.src any_pkg=/path/to/pkg

Calculate full tree of dependencies for hello-world-1.0 and build everything:

        any buildtree amd64 hello-world-1.0

Configuration

Add any_parameter to build:
        any do amd64 hello-world-1.0 any_parameter=value

Store any_parameter permanently:

        echo '
[default]
any_parameter = value' >> $(rootrdd)/rdd.def

Store any_parameter for amd64 only:

        echo '
[amd64]
any_parameter = value' >> $(rootrdd)/rdd.def

Advanced build

See all output on terminal, no logs are created:

        any do amd64,output hello-world-1.0

Turn off dependency handling, use shared context:

        any do amd64,staticdeproot hello-world-1.0

Add packages to shared context:

        any deploy amd64,staticdeproot needed-packs.src any_pkg=/path/to/pkg

Check the sanity of binary files in build/image/amd64/hello-world-1.0/:

        any do amd64,sane hello-world-1.0

Paths

build/image/amd64/hello-world-1.0/
binary files of hello-world-1.0, installed after successfull build.

build/pack/amd64/
directory with installable binary packages.

build/srcstatic/
drop source tarballs here.

build/work/amd64/hello-world-1.0/
directory where build goes.

ports/packages/hello-world-1.0/
directory with anybuild and other dev resources.

ports/list/
lists with available packages and sets for current distro project.

ports/patch/hello-world-1.0/
drop patches for hello-world-1.0 here. Applied on top of sources from build/srcstatic/.

New package new-1.2.3

Create anybuild ports/packages/new-1.2.3/new-1.2.3.build
Drop sources new-1.2.3.tar.gz to build/srcstatic/
Drop patches to ports/patch/new-1.2.3/
Add new-1.2.3 to all.src

See also

any-workdir(7), any-do(1), any-map(7), anymods(7), rdd(1), any-settle(1), any-deploy(1), any-tree(1), any-buildtree(1)