Packages
    
        You may find yourself using Adaptive Framework Core in order to 
        build something of your own. There's nothing that prevents you from 
        setting up your own project to use Adaptive Framework, but you may 
        find that the afwdev provides some convenient 
        helper commands to get you started and to maintain your project. A 
        project that uses afwdev to build and maintain 
        is called a Package.
    
    
        Packages are Git repositories that hold one or more commands, 
        extensions, configurations, objects or layouts using Adaptive 
        Framework and maintained using the afwdev 
        tool. The following illustrates the file system layout of a typical 
        package:
    
<AFW package root directory>
|-- doc/                         # Generated docs                   
|-- generated/                   # Produced by generate subcommand
|   |-- *.cmake                  # Generated cmake files
|-- src/                         # Commonly src/ contains source directories
|   |-- <SRCDIR>/                # One or more command, extension, or server
|       |-- generate/            # Processed by generate subcommand
|       |-- generated/           # Produced by generate subcommand
|       |   |-- c source         # Generated *.h and .c files
|       |   |-- *.cmake          # Generated cmake files
|       |   |-- ...              # Other generated files and directories
|       |-- c source             # <SRCDIR>_*.h and .c files
|       |-- CMakeLists.txt       # CMakeLists.txt for <SRCDIR>
|       |-- ...                  # Other source files and directories
|-- .editorconfig                # Source editor coding style
|-- .gitattributes               # Command git attributes for pathnames
|-- .gitignore                   # Command git files to ignore
|-- afw-package.json             # AFW package file managed by the afwdev
|-- CMakeLists.txt               # Root CMakeLists.txt for afw package
|-- COPYING                      # Licensing information.
|-- Doxyfile                     # Doxygen configuration file
|-- LICENSE                      # The license.
|-- package.json                 # Used to build a JavaScript package
|-- <PACKAGE_ID>_git_info.sh     # Used to produce <PACKAGE_ID>_git_info.h
|-- <PACKAGE_ID>_git_info.h      # Header file containing git information
|-- README.md                    # Repository README.md
|-- miscellaneous directories    # Other directories
|-- miscellaneous files          # Other filesCreating a New Package
    
            New Package are created using the 
            afdev make-afw-package subcommand.
        
afwdev make-afw-package <implementation_id> <afw_package_dir_path>