// -*- mode:doc; -*- // vim: set syntax=asciidoc: [[migrating-from-ol-versions]] == Migrating from older Buildroot versions Some versions have introduced backward incompatibilities. This section explains those incompatibilities, and for each explains what to do to complete the migration. [[br2-external-converting]] === Migrating to 2016.11 Before Buildroot 2016.11, it was possible to use only one br2-external tree at once. With Buildroot 2016.11 came the possibility to use more than one simultaneously (for details, see xref:outside-br-custom[]). This however means that older br2-external trees are not usable as-is. A minor change has to be made: adding a name to your br2-external tree. This can be done very easily in just a few steps: * First, create a new file named +external.desc+, at the root of your br2-external tree, with a single line defining the name of your br2-external tree: + ---- $ echo 'name: NAME_OF_YOUR_TREE' >external.desc ---- + .Note Be careful when choosing a name: It has to be unique and be made with only ASCII characters from the set +[A-Za-z0-9_]+. * Then, change every occurence of +BR2_EXTERNAL+ in your br2-external tree with the new variable: + ---- $ find . -type f | xargs sed -i 's/BR2_EXTERNAL/BR2_EXTERNAL_NAME_OF_YOUR_TREE_PATH/g' ---- Now, your br2-external tree can be used with Buildroot 2016.11 onward. .Note: This change makes your br2-external tree incompatible with Buildroot before 2016.11. [[migrating-host-usr]] === Migrating to 2017.08 Before Buildroot 2017.08, host packages were installed in +$(HOST_DIR)/usr+ (with e.g. the autotools' +--prefix=$(HOST_DIR)/usr+). With Buildroot 2017.08, they are now installed directly in +$(HOST_DIR)+. Whenever a package installs an executable that is linked with a library in +$(HOST_DIR)/lib+, it must have an RPATH pointing to that directory. An RPATH pointing to +$(HOST_DIR)/usr/lib+ is no longer accepted.