Build: control.info incompatibilities

The control.info file must be a valid control file, although it supports field names with a slash followed by a sub-package name which a regular control file does not support.

The control.info file must also include a Sub-Packages field with the list of sub-packages that are to be built with that .info file.

If the command line did not include a path to the package data, then the control.info file must include an ROOT_TREE variable with the path or you get an error.

The list of sub-packages must specify each sub-package exactly once. If a sub-package is defined 2 or more times, then an error occurs.

Only one sub-package name can be hidden. If more than one sub-package ends with an asterisk then an error is raised.

Sub-package names are comma separated. If an entry does not include a name (two commas one after another) or is just the asterisk (*) then an error is raised.

Each sub-package must represent a valid directory under the ROOT_TREE or second parameter after the --build command line option. If no such directory exists (or it is inaccessible) then an error is raised.

Each sub-pakcage directory must allow wpkg to create the necessary files under a WPKG or DEBIAN sub-directory (if a DEBIAN directory exists, it is used instead of creating a WPKG directory, although if WPKG already exists, it has priority over the DEBIAN directory.) If neither directory exists, wpkg needs to have permission to create the WPKG directory. If that fails, an error is raised. Similarly, wpkg will create files under that directory (i.e. the control file) and if that fails, then wpkg raises an error.

If a file named WPKG or DEBIAN exists and is not a directory, then wpkg raises an error. The file can be a soft link to a directory although it is not recommended.

The control.info file must have the Package and Architecture fields defined. Although the Package name is not necessary if only a Source package is being created (in which case a .info file may not be very useful!) If those fields are missing, an error is raised.

Note that other fields may cause problems. See the Build: control file validation for additional information in that realm.