summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorSam Thursfield <sam.thursfield@codethink.co.uk>2017-10-26 11:33:43 +0000
committerSam Thursfield <sam.thursfield@codethink.co.uk>2017-10-26 16:58:44 +0000
commit6c308c84ea817fc469ca34afedeb5183f46349f5 (patch)
tree3f2fef76093aac4b470a51ab69ecdf25be956c18 /README.md
parentcf331d6e5ba8ab2e50e9295db13482c167afd2a2 (diff)
downloaddefinitions-6c308c84ea817fc469ca34afedeb5183f46349f5.tar.gz
Rename README so it gets rendered as Markdown in gitlab.com
Diffstat (limited to 'README.md')
-rw-r--r--README.md53
1 files changed, 53 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 00000000..5300b874
--- /dev/null
+++ b/README.md
@@ -0,0 +1,53 @@
+Baserock reference system definitions
+=====================================
+
+Baserock is a system for developing embedded and appliance Linux systems. For
+more information, see <http://wiki.baserock.org>.
+
+These are some example definitions for use with Baserock tooling. You can fork
+this repo and develop your own systems directly within it, or use it as a
+reference point when developing your own set of definitions.
+
+The systems listed in the elements/systems/ directory are example systems
+that build and run at some point. The only ones we can be sure
+that still build in current master of definitions are the ones that
+we keep building in our ci system; they are listed in
+http://git.baserock.org/cgit/baserock/baserock/definitions.git/tree/clusters/ci.morph
+
+BuildStream conversions
+-----------------------
+
+It is possible to use BuildStream to build Baserock definitions. The
+BuildStream build tool uses a different definitions format, so a conversion
+needs to be done first.
+
+Run the `convert` script from the root of the repository and you will be
+rewarded with an autogenerated set of .bst files in the elements/ subdirectory
+which should be buildable using BuildStream.
+
+To run `convert`, you will need defs2bst and ybd. The following commands, run
+from the root of the repository, should be enough to do a conversion:
+
+ git clone https://gitlab.com/BuildStream/defs2bst/
+ git clone https://gitlab.com/baserock/ybd/
+ ./convert
+
+You can then build e.g. a devel-system using BuildStream:
+
+ bst build systems/devel-system-content.bst
+
+Some things are not supported by the BuildStream conversion tool, and will need
+to be manually dealt with.
+
+ * the build-essential stratum isn't automatically converted, the
+ elements/gnu-toolchain.bst element is its equivalent and needs to be
+ manually kept in sync with any changes
+
+ * .configure and .write extensions need to be rewritten as BuildStream
+ elements
+
+ * non-x86_64 systems aren't automatically converted; BuildStream supports
+ "arch conditionals" which should make it easier for a single tree of .bst
+ files to support many platforms, but it's not easy to automatically achieve
+ this in places like linux.bst where Baserock currently has many different
+ equivalents