|
@@ -0,0 +1,54 @@
|
|
|
+// -*- mode:doc; -*-
|
|
|
+
|
|
|
+Tips and tricks
|
|
|
+~~~~~~~~~~~~~~~
|
|
|
+
|
|
|
+[[package-name-variable-relation]]
|
|
|
+Package name, config entry name and makefile variable relationship
|
|
|
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
+
|
|
|
+In Buildroot, there are some relation between:
|
|
|
+
|
|
|
+* the _package name_, which is the package directory name (and the
|
|
|
+ name of the +*.mk+ file);
|
|
|
+
|
|
|
+* the config entry name that is declared in the +Config.in+ file;
|
|
|
+
|
|
|
+* the makefile variable prefix.
|
|
|
+
|
|
|
+Thus, it is mandatory to keep consistency between all this stuff,
|
|
|
+matching the following rules:
|
|
|
+
|
|
|
+* the _make_ target name will be the _package name_ itself (e.g.:
|
|
|
+ +foo-bar_boo+);
|
|
|
+
|
|
|
+* the config entry is the upper case _package name_ with `.` and `-`
|
|
|
+ characters substituted with `_`, prefixed with +BR2_PACKAGE_+ (e.g.:
|
|
|
+ +BR2_PACKAGE_FOO_BAR_BOO+);
|
|
|
+
|
|
|
+* the +*.mk+ file variable prefix is the upper case _package name_
|
|
|
+ `.` and `-` characters substituted with `_` (e.g.:
|
|
|
+ +FOO_BAR_BOO_VERSION+).
|
|
|
+
|
|
|
+
|
|
|
+[[github-download-url]]
|
|
|
+How to add package from github
|
|
|
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
+
|
|
|
+If the package has no release version, or its version cannot be
|
|
|
+identified using tag, then the sha1 of the particular commit should be
|
|
|
+used to identify the version (the first 7 characters of the sha1 are
|
|
|
+enough):
|
|
|
+
|
|
|
+------------------------
|
|
|
+FOO_VERSION = 1234567
|
|
|
+FOO_SITE = http://github.com/<user>/<package>/tarball/<branch>
|
|
|
+------------------------
|
|
|
+
|
|
|
+If the package version matches a tag, then this tag should be used to
|
|
|
+identify the version:
|
|
|
+
|
|
|
+------------------------
|
|
|
+FOO_VERSION = v1.0
|
|
|
+FOO_SITE = http://github.com/<user>/<package>/tarball/$(FOO_VERSION)
|
|
|
+------------------------
|