From e4e25eaf4d0ebbec1230b3baf9c6f99a6c379c72 Mon Sep 17 00:00:00 2001 From: Tuukka Lehtonen Date: Wed, 6 Sep 2017 09:52:46 +0300 Subject: [PATCH] Improved target platform related README.md Added more information on the .tpd tool. Change-Id: Ic56ff8a1bd3603beed980d336c8f8db6acbb51b6 --- .../README.md | 34 ++++++++++++++++--- 1 file changed, 29 insertions(+), 5 deletions(-) diff --git a/releng/org.simantics.sdk.build.targetdefinition/README.md b/releng/org.simantics.sdk.build.targetdefinition/README.md index 978bb419b..f5b19fd73 100644 --- a/releng/org.simantics.sdk.build.targetdefinition/README.md +++ b/releng/org.simantics.sdk.build.targetdefinition/README.md @@ -1,8 +1,20 @@ # Target platform definitions -## org.simantics.sdk.build.targetdefinition.target +Simantics 1.31.0 migrated to Eclipse 4.7 Oxygen platform. -The platform definition that is used for building the Simantics SDK itself. +At the same time [Obeo's Target Platform Definition DSL and Generator tool](https://github.com/mbarbero/fr.obeo.releng.targetplatform) +was taken into use for target platform definition. + +Please read the detailed installation and basic use instructions from the tool's website. + +To summarize, the basic idea is that the `.tpd` files are the canonical source +files for the actual target definition `.target` files. Always modify the `.tpd` +files and use *ALT+R* in the `.tpd` file editor or *CTRL+R* to generate the new +.target file and take it into use immediately. + +## org.simantics.sdk.build.targetdefinition.tpd + +This is the platform definition used for building the Simantics SDK itself. It does not include any of the parts of the org.simantics.sdk feature which defines the contents of the Simantics SDK. @@ -12,10 +24,12 @@ external components required for building the Simantics SDK. See ../org.simantics.sdk.build.p2.site/ for how some of the external third-party libraries are bundled for use with the Simantics SDK. -## simantics.target +## simantics.tpd -Includes all the same components as *org.simantics.sdk.build.targetdefinition.target* -but also includes the Simantics SDK which is sourced from [http://www.simantics.org/download//sdk/](http://www.simantics.org/download//sdk/). +Includes *org.simantics.sdk.build.targetdefinition.tpd* +and the Simantics SDK (i.e. org.simantics.sdk.feature.group & org.simantics.sdk.source.feature.group) +which is sourced from [http://www.simantics.org/download//sdk/](http://www.simantics.org/download//sdk/), +where `` is `master`, `release/x.y.z`, etc. Each platform repository branch can have its own separate download location online, e.g: * [http://www.simantics.org/download/master/sdk/](http://www.simantics.org/download/master/sdk/) @@ -24,3 +38,13 @@ Each platform repository branch can have its own separate download location onli * ... which the simantics.target definition then references to get the SDK bundles. + +Notice that the download site root location, e.g. [http://www.simantics.org/download/master/](http://www.simantics.org/download/master/) contains these same `.tpd` and `.target` files to +enable sourcing both files directly from an HTTP URL. + +`.tpd` files can contain `include` statements that include other `.tpd` files from a URL. +This greatly simplifies target definition by removing duplication from the their definitions. This is why +publishing them online per platform branch is also highly useful. + +On the other hand legacy Buckminster builds can source `.target` files from a URL, which is why publishing them online +per platform branch is useful. \ No newline at end of file -- 2.47.1