diff options
Diffstat (limited to 'docs/manual/adding-packages-generic.txt')
-rw-r--r-- | docs/manual/adding-packages-generic.txt | 62 |
1 files changed, 33 insertions, 29 deletions
diff --git a/docs/manual/adding-packages-generic.txt b/docs/manual/adding-packages-generic.txt index b05043a44..6c1c35eb7 100644 --- a/docs/manual/adding-packages-generic.txt +++ b/docs/manual/adding-packages-generic.txt @@ -151,11 +151,11 @@ information is (assuming the package name is +libfoo+) : * +LIBFOO_PATCH+ may contain the name of a patch, that will be downloaded from the same location as the tarball indicated in +LIBFOO_SOURCE+. If +HOST_LIBFOO_PATCH+ is not specified, it - defaults to +LIBFOO_PATCH+. Also note that another mechanism is - available to patch a package: all files of the form - +packagename-packageversion-description.patch+ present in the - package directory inside Buildroot will be applied to the package - after extraction. + defaults to +LIBFOO_PATCH+. Note that patches that are included + in Buildroot itself use a different mechanism: all files of the + form +<packagename>-*.patch+ present in the package directory inside + Buildroot will be applied to the package after extraction (see + xref:patch-policy[patching a package]). * +LIBFOO_SITE+ provides the location of the package, which can be a URL or a local filesystem path. HTTP, FTP and SCP are supported URL @@ -175,8 +175,8 @@ information is (assuming the package name is +libfoo+) : Examples: + +LIBFOO_SITE=http://www.libfoosoftware.org/libfoo+ + +LIBFOO_SITE=http://svn.xiph.org/trunk/Tremor/+ + - +LIBFOO_SITE=git://github.com/kergoth/tslib.git+ - +LIBFOO_SITE=/opt/software/libfoo.tar.gz+ + +LIBFOO_SITE=git://github.com/kergoth/tslib.git+ + + +LIBFOO_SITE=/opt/software/libfoo.tar.gz+ + +LIBFOO_SITE=$(TOPDIR)/../src/libfoo/+ * +LIBFOO_SITE_METHOD+ determines the method used to fetch or copy the @@ -221,7 +221,7 @@ information is (assuming the package name is +libfoo+) : name) that are required for the current target package to compile. These dependencies are guaranteed to be compiled and installed before the configuration of the current package starts. In - a similar way, +HOST_LIBFOO_DEPENDENCIES+ lists the dependency for + a similar way, +HOST_LIBFOO_DEPENDENCIES+ lists the dependencies for the current host package. * +LIBFOO_INSTALL_STAGING+ can be set to +YES+ or +NO+ (default). If @@ -251,9 +251,6 @@ information is (assuming the package name is +libfoo+) : use the same string to make the manifest file uniform. Otherwise, describe the license in a precise and concise way, avoiding ambiguous names such as +BSD+ which actually name a family of licenses. - If the root filesystem you generate contains non-opensource packages, you - can define their license as +PROPRIETARY+: Buildroot will not save any - licensing info or source code for this package. This variable is optional. If it is not defined, +unknown+ will appear in the +license+ field of the manifest file for this package. @@ -265,6 +262,11 @@ information is (assuming the package name is +libfoo+) : to let you know, and +not saved+ will appear in the +license files+ field of the manifest file for this package. +* +LIBFOO_REDISTRIBUTE+ can be set to +YES+ (default) or +NO+ to indicate if + the package source code is allowed to be redistributed. Set it to +NO+ for + non-opensource packages: Buildroot will not save the source code for this + package when collecting the +legal-info+. + The recommended way to define these variables is to use the following syntax: @@ -275,46 +277,45 @@ LIBFOO_VERSION = 2.32 Now, the variables that define what should be performed at the different steps of the build process. -* +LIBFOO_CONFIGURE_CMDS+, used to list the actions to be performed to - configure the package before its compilation +* +LIBFOO_CONFIGURE_CMDS+ lists the actions to be performed to + configure the package before its compilation. -* +LIBFOO_BUILD_CMDS+, used to list the actions to be performed to - compile the package +* +LIBFOO_BUILD_CMDS+ lists the actions to be performed to + compile the package. -* +HOST_LIBFOO_INSTALL_CMDS+, used to list the actions to be performed +* +HOST_LIBFOO_INSTALL_CMDS+ lists the actions to be performed to install the package, when the package is a host package. The package must install its files to the directory given by +$(HOST_DIR)+. All files, including development files such as headers should be installed, since other packages might be compiled on top of this package. -* +LIBFOO_INSTALL_TARGET_CMDS+, used to list the actions to be +* +LIBFOO_INSTALL_TARGET_CMDS+ lists the actions to be performed to install the package to the target directory, when the package is a target package. The package must install its files to the directory given by +$(TARGET_DIR)+. Only the files required for - 'documentation' and 'execution' of the package should be - installed. Header files should not be installed, they will be copied - to the target, if the +development files in target filesystem+ - option is selected. + 'execution' of the package have to be + installed. Header files, static libraries and documentation will be + removed again when the target filesystem is finalized. -* +LIBFOO_INSTALL_STAGING_CMDS+, used to list the actions to be +* +LIBFOO_INSTALL_STAGING_CMDS+ lists the actions to be performed to install the package to the staging directory, when the package is a target package. The package must install its files to the directory given by +$(STAGING_DIR)+. All development files should be installed, since they might be needed to compile other packages. -* +LIBFOO_CLEAN_CMDS+, used to list the actions to perform to clean up +* +LIBFOO_CLEAN_CMDS+, lists the actions to perform to clean up the build directory of the package. -* +LIBFOO_UNINSTALL_TARGET_CMDS+, used to list the actions to +* +LIBFOO_UNINSTALL_TARGET_CMDS+ lists the actions to uninstall the package from the target directory +$(TARGET_DIR)+ -* +LIBFOO_UNINSTALL_STAGING_CMDS+, used to list the actions to +* +LIBFOO_UNINSTALL_STAGING_CMDS+ lists the actions to uninstall the package from the staging directory +$(STAGING_DIR)+. -* +LIBFOO_INSTALL_INIT_SYSV+ and +LIBFOO_INSTALL_INIT_SYSTEMD+, used - to install init scripts either for the systemV-like init systems +* +LIBFOO_INSTALL_INIT_SYSV+ and +LIBFOO_INSTALL_INIT_SYSTEMD+ list the + actions to install init scripts either for the systemV-like init systems (busybox, sysvinit, etc.) or for the systemd units. These commands will be run only when the relevant init system is installed (i.e. if systemd is selected as the init system in the configuration, only @@ -352,11 +353,14 @@ using the autotools infrastructure described below. However, since they are provided by the generic infrastructure, they are documented here. The exception is +LIBFOO_POST_PATCH_HOOKS+. Patching the package and producing legal info are not user definable, so -+LIBFOO_POST_PATCH_HOOKS+ and +LIBFOO_POST_LEGAL_INFO_HOOKS+ will be -userful for generic packages. ++LIBFOO_POST_PATCH_HOOKS+ and +LIBFOO_POST_LEGAL_INFO_HOOKS+ are +useful for generic packages. The following hook points are available: +* +LIBFOO_POST_DOWNLOAD_HOOKS+ +* +LIBFOO_POST_EXTRACT_HOOKS+ +* +LIBFOO_PRE_PATCH_HOOKS+ * +LIBFOO_POST_PATCH_HOOKS+ * +LIBFOO_PRE_CONFIGURE_HOOKS+ * +LIBFOO_POST_CONFIGURE_HOOKS+ |