Provided by: python3-project-generator_0.11.1-1_all bug

NAME

       progen - generate and manage project files for embedded development tools

SYNOPSIS

       progen [GLOBAL_ARGUMENT] COMMAND [ARGUMENTS]

DESCRIPTION

       progen  allows  you  to  define an embedded project in text (YAML) files and generate IDE-
       specific project files based on the rules defined in these records.

GLOBAL ARGUMENTS

       progen supports the following global arguments for all commands listed below:

       -v     increase verbosity of output (repeat for even more verbose output)

       -q     decrease verbosity of output (repeat for even less verbose output)

COMMANDS

   init
              progen init -p PROJECT -tar TARGET_NAME [-dir SCAN_DIR] -o OUTPUT_DIR [-v | -q]

       Add progen support to a project

       If you want progen support for a project, this is  the  command  to  use.   It  scans  the
       repository for files and creates 2 YAML files:

       1) the main project file (projects.yaml), and

       2) a project YAML file

       In  the  project  YAML  file,  there  are  all  sources/includes and other project-related
       settings which progen finds in the repository.  This creates a valid progen  project  file
       if  a  folder  contains  one  valid project.  In the case there are many, this command can
       serve at least as guidance - edit and move the YAML file accordingly to a folder structure
       to split projects.

       Arguments

       -p     project name

       -tar   target name for the project

       -dir   directory to scan (default: none; scan all in directory progen was executed in)

       -o     directory for generated files

       -v     increase verbosity of output (repeat for even more verbose output)

       -q     decrease verbosity of output (repeat for even less verbose output)

   generate
              progen generate -f FILE [-p PROJECT] [-t TOOL] [-b] [-c] [-o OPTIONS] [-j JOBS] [-v | -q]

       Export defined projects

       Arguments

       -f FILE
              path to projects.yaml file

       -p PROJECT
              name of the project to generate.  If not specified, all projects within projects in
              projects.yaml are exported

       -t TOOL
              tool name (uvision, iar, etc).  If not specified,  tools  are  checked  in  records
              (tool_supported).

       -b     build the exported project (note: not every tool supports building a project)

       -c     copy all files defined for a project to exported directory

       -o OPTIONS
              toolchain options

       -j     number  of  concurrent  jobs  to  use  for  generating  projects (default is 1; not
              supported by all tools)

       -v     increase verbosity of output (repeat for even more verbose output)

       -q     decrease verbosity of output (repeat for even less verbose output)

   build
              progen build -f FILE [-p PROJECT] [-t TOOL] [-c] [-k] [-o OPTIONS] [-x] [-j JOBS] [-v | -q]

       Export a project, then build it.  Note that not all tools support building.

       Arguments

       -f FILE
              path to projects.yaml file

       -p PROJECT
              name of the project to build (if not specified, all  projects  within  projects  in
              projects.yaml are built)

       -t TOOL
              build project files for specified tool

       -c     copy sources (as it exports first, this is used for exporting prior to building)

       -k     clean project before building

       -o OPTIONS
              toolchain options

       -x     stop on first failure

       -j     number of concurrent build jobs (default is 1; not supported by all tools)

       project
              specify projects to be generated and built

       -v     increase verbosity of output (repeat for even more verbose output)

       -q     decrease verbosity of output (repeat for even less verbose output)

   list
              progen list targets [-v | -q]

              progen list tools [-v | -q]

              progen list -f FILE projects [-v | -q]

       List targets, tools or projects

       Arguments

       targets
              list all supported targets

       tools  list all supported tools

       projects
              list all projects the repository supports (requires -f argument specified)

       -f FILE
              path to projects.yaml

       -v     increase verbosity of output (repeat for even more verbose output)

       -q     decrease verbosity of output (repeat for even less verbose output)

   clean
              progen clean -f FILE -p PROJECT [-t TOOL] [-v | -q]

       Remove progen files/folders

       This  command  removes  progen-related files/folders.  If progen generates data to various
       folders (for example, a per-project directory somewhere), this command will  remove  those
       folders.

       Arguments

       -f FILE
              path to projects.yaml file

       -p PROJECT
              the project name which should be cleaned (removed)

       -t TOOL
              the tool name (if not specified, tools are taken from tools_supported)

       project
              specify projects to be cleaned (removed)

       -v     increase verbosity of output (repeat for even more verbose output)

       -q     decrease verbosity of output (repeat for even less verbose output)

TOOLS

       progen supports generating projects for the following tools:

       • uVision4 and uVision5

       • IAR

       • Makefile (GCC ARM)

       • Makefile (ARMCC)

       • Cmake (GCC ARM)

       • CoIDE (GCC ARM)

       • Eclipse (Makefile with GCC ARM)

       • Sublime (Makefile with GCC ARM)

       • Visual studio (Makefile with GCC ARM)

EXAMPLES

       To generate a uvision project file for the k20d50m_blinky target:

              progen generate -f projects.yaml -p k20d50m_blinky -t uvision

COPYRIGHT

       Copyright 2014-15 Martin Kojtal

AUTHOR

       This  manual  page  is  based on the progen documentation.  It was created by Nick Morrott
       <nickm@debian.org> for the Debian GNU/Linux system, but may be used by others.

SEE ALSO

       valinor(1), progendef(1)

       Getting              Started              Guide:               https://github.com/project-
       generator/project_generator/wiki/Getting_started

       Project             Generator             examples:            https://github.com/project-
       generator/project_generator_mbed_examples